From f1aafcf87fd9661e848c5e2265ae1474a7d5053a Mon Sep 17 00:00:00 2001 From: Antoine-Averland Date: Wed, 29 Nov 2023 19:50:24 +0100 Subject: [PATCH 1/2] Add pyDOE3 designs as sampling methods (#477) * Implement BoxBehnken and Gsd doe * Add new sampling methods and corresponding tests * Add docstrings * Improve comments * Add nt default 2*nx * Raise an error if xlimits not specified * Add test for scaled samplings * Fix MisedIntegerSamplingMethod initialization * Add pydoe samplin doc * Add ConfigSpace in doc build requirements * Add pydoe sampling methods test * Fix doc directive for sampling_methods * Add default value for Gsd reduction * Add tests for code examples * Update doc with pydoe samplings --------- Co-authored-by: relf --- doc/_src_docs/sampling_methods.rst | 7 +- doc/_src_docs/sampling_methods.rstx | 7 +- .../sampling_methods/full_factorial.rstx | 2 +- ...full_factorial_Test_run_full_factorial.png | Bin 0 -> 12610 bytes doc/_src_docs/sampling_methods/lhs.rstx | 4 +- .../sampling_methods/lhs_Test_run_lhs.png | Bin 0 -> 14094 bytes doc/_src_docs/sampling_methods/pydoe.rst | 266 ++++++++++++++++++ doc/_src_docs/sampling_methods/pydoe.rstx | 83 ++++++ .../pydoe_Test_run_box_behnken.png | Bin 0 -> 82785 bytes .../pydoe_Test_run_factorial.png | Bin 0 -> 89369 bytes .../sampling_methods/pydoe_Test_run_gsd.png | Bin 0 -> 85860 bytes .../pydoe_Test_run_plackett_burman.png | Bin 0 -> 80954 bytes doc/_src_docs/sampling_methods/random.rstx | 2 +- .../random_Test_run_random.png | Bin 0 -> 15281 bytes .../sampling_methods_Test_run_random.png | Bin 0 -> 15573 bytes .../sampling_methods_Test_test_random.png | Bin 15694 -> 15915 bytes .../directive_embed_options.py | 13 +- doc/index.rst | 1 - doc/requirements.txt | 1 + smt/applications/mixed_integer.py | 3 +- smt/sampling_methods/__init__.py | 1 + smt/sampling_methods/pydoe.py | 146 ++++++++++ smt/sampling_methods/sampling_method.py | 39 ++- smt/sampling_methods/tests/test_pydoe.py | 118 ++++++++ .../tests/test_sampling_method_examples.py | 110 +++++++- .../tests/test_scaled_sampling_methods.py | 25 ++ 26 files changed, 796 insertions(+), 32 deletions(-) create mode 100644 doc/_src_docs/sampling_methods/full_factorial_Test_run_full_factorial.png create mode 100644 doc/_src_docs/sampling_methods/lhs_Test_run_lhs.png create mode 100644 doc/_src_docs/sampling_methods/pydoe.rst create mode 100644 doc/_src_docs/sampling_methods/pydoe.rstx create mode 100644 doc/_src_docs/sampling_methods/pydoe_Test_run_box_behnken.png create mode 100644 doc/_src_docs/sampling_methods/pydoe_Test_run_factorial.png create mode 100644 doc/_src_docs/sampling_methods/pydoe_Test_run_gsd.png create mode 100644 doc/_src_docs/sampling_methods/pydoe_Test_run_plackett_burman.png create mode 100644 doc/_src_docs/sampling_methods/random_Test_run_random.png create mode 100644 doc/_src_docs/sampling_methods_Test_run_random.png create mode 100644 smt/sampling_methods/pydoe.py create mode 100644 smt/sampling_methods/tests/test_pydoe.py create mode 100644 smt/sampling_methods/tests/test_scaled_sampling_methods.py diff --git a/doc/_src_docs/sampling_methods.rst b/doc/_src_docs/sampling_methods.rst index 0ba338c28..499dfcb7f 100644 --- a/doc/_src_docs/sampling_methods.rst +++ b/doc/_src_docs/sampling_methods.rst @@ -12,6 +12,7 @@ These are listed below. sampling_methods/random sampling_methods/lhs sampling_methods/full_factorial + sampling_methods/pydoe Usage ----- @@ -40,12 +41,12 @@ Usage (50, 2) -.. figure:: sampling_methods_Test_test_random.png +.. figure:: sampling_methods_Test_run_random.png :scale: 80 % :align: center -Problem class API ------------------ +Sampling method class API +------------------------- .. autoclass:: smt.sampling_methods.sampling_method.SamplingMethod diff --git a/doc/_src_docs/sampling_methods.rstx b/doc/_src_docs/sampling_methods.rstx index b96f956da..5eed89abf 100644 --- a/doc/_src_docs/sampling_methods.rstx +++ b/doc/_src_docs/sampling_methods.rstx @@ -12,14 +12,15 @@ These are listed below. sampling_methods/random sampling_methods/lhs sampling_methods/full_factorial + sampling_methods/pydoe Usage ----- -.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , test_random , 80 +.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , run_random , 80 -Problem class API ------------------ +Sampling method class API +------------------------- .. autoclass:: smt.sampling_methods.sampling_method.SamplingMethod diff --git a/doc/_src_docs/sampling_methods/full_factorial.rstx b/doc/_src_docs/sampling_methods/full_factorial.rstx index 5d3e1c938..d9023af78 100644 --- a/doc/_src_docs/sampling_methods/full_factorial.rstx +++ b/doc/_src_docs/sampling_methods/full_factorial.rstx @@ -4,7 +4,7 @@ Full-factorial sampling Usage ----- -.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , test_full_factorial , 80 +.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , run_full_factorial , 80 Options ------- diff --git a/doc/_src_docs/sampling_methods/full_factorial_Test_run_full_factorial.png b/doc/_src_docs/sampling_methods/full_factorial_Test_run_full_factorial.png new file mode 100644 index 0000000000000000000000000000000000000000..18b6d822ed3870f234d747f23165e31364625bcb GIT binary patch literal 12610 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 sbq6tSD_z!~WFDU&B>&T2$8*;eWdOV literal 0 HcmV?d00001 diff --git a/doc/_src_docs/sampling_methods/lhs.rstx b/doc/_src_docs/sampling_methods/lhs.rstx index 64328a13f..1e1956bac 100644 --- a/doc/_src_docs/sampling_methods/lhs.rstx +++ b/doc/_src_docs/sampling_methods/lhs.rstx @@ -14,14 +14,14 @@ The LHS method uses the pyDOE package (Design of Experiments for Python) [1]_. F The four first criteria are the same than in pyDOE (for more details, see [1]_). The last criterion, ESE, is implemented by the authors of SMT (more details about such method could be found in [2]_). -.. [1] https://pythonhosted.org/pyDOE/index.html +.. [1] https://pydoe3.readthedocs.io/en/stable .. [2] Jin, R. and Chen, W. and Sudjianto, A. (2005), "An efficient algorithm for constructing optimal design of computer experiments." Journal of Statistical Planning and Inference, 134:268-287. Usage ----- -.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , test_lhs , 80 +.. embed-test-print-plot :: smt.sampling_methods.tests.test_sampling_method_examples , Test , run_lhs , 80 Options ------- diff --git a/doc/_src_docs/sampling_methods/lhs_Test_run_lhs.png b/doc/_src_docs/sampling_methods/lhs_Test_run_lhs.png new file mode 100644 index 0000000000000000000000000000000000000000..f73628918f298023419e69993cbc51d3c2a9e53b GIT binary patch literal 14094 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 QODLvIvYHq+e(4YY2WzT)>;M1& literal 0 HcmV?d00001 diff --git a/doc/_src_docs/sampling_methods/pydoe_Test_run_factorial.png b/doc/_src_docs/sampling_methods/pydoe_Test_run_factorial.png new file mode 100644 index 0000000000000000000000000000000000000000..2d737dc92ef1e758d48c188a8ea7334f0c15001c GIT binary patch literal 89369 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 T5mQ?#{Or@z)ksk@^Zma7*M3jQ literal 0 HcmV?d00001 diff --git a/doc/_src_docs/sampling_methods/pydoe_Test_run_gsd.png b/doc/_src_docs/sampling_methods/pydoe_Test_run_gsd.png new file mode 100644 index 0000000000000000000000000000000000000000..585e5816bc827e8ce58f28c7a78464ff498d011d GIT binary patch literal 85860 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 F{|_q7m^lCd literal 0 HcmV?d00001 diff --git a/doc/_src_docs/sampling_methods/pydoe_Test_run_plackett_burman.png b/doc/_src_docs/sampling_methods/pydoe_Test_run_plackett_burman.png new file mode 100644 index 0000000000000000000000000000000000000000..1d1982122befd82564f46bc0e2335b82f44ada19 GIT binary patch literal 80954 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 literal 0 HcmV?d00001 diff --git a/doc/_src_docs/sampling_methods_Test_run_random.png b/doc/_src_docs/sampling_methods_Test_run_random.png new file mode 100644 index 0000000000000000000000000000000000000000..0f10cf336b118dfb5472c715c6045bfe690a5728 GIT binary patch literal 15573 zcmeIZc_3En-#)q?6eS@$3L%P;Df2cy$xM+UW5_%dnPq&cUC2~2OUSGclFZr}GS5V! zNHTlOv-4Th9{Zm6eb4(l=dbfeJ=S>N>t6T$`CQlaxt71`MLDwlwEGbRAybf-Rzna% zCIlhSCfN&nVq9+DfS+HTWVD^s?aZBAuR53^7p^+pxMt^c&B~a`#mvFc%FdRLOMvSv z2a~0f(+x)vZtm-UoWN!0V8Q+V>RcJzWZw;W9Y+Kqzl#3Dq)Vn*A&8iig7i5Jx5rZ- zeXd;@iDTPpDIhGGRQCLk{Ak5oKA<7t7n6bqtsDlJ{Ohd8TMLXdg3Qq;k4leQrv$PlhaZpF&^pK;D7jXz8(nyb~oo zM_uA@UgbV+IsU^FRgx{6i|z{D-x%UQ+;s4KF|#ffKRRz3dP0E!L74Vj2xovkw+a(c zz?J|334%PJ#SkHgd=LW1lVuSMf~c|J;G7IfEP~)VNth4>YyJP9{{O|uQP54r?$VvAfK2OLaTc7Eld{2yV^Rx=xpheFlm12sn~LUu9FXEAjl`) zi;smVwG6$SQ+zKyB6`4{cda+i??^?Wo~|yt7%hTu35to)+jKvVUg@uy+{dJutl`qt z-p&kfTI1}J%*+W(Te1xxSNNt zNVSfLqi0?rl+yUVW{4i1O}` zJUy-0qk#lOTNS-(xU+ZcZLNMYVZs{BY>lAshCEVt2Bb?4!6aCtU0l@{OtpCx>yNk9 zrt6DH`;`Nset-~QyDV+%tD3Wy{QOQIPhN1h&??!)BGyrGM6v4n&Bpuv={sme|UB~Rg<8QnVl2G-n9RvU*@ zT53@6$>J{v(n*2&EvBo-&<`H<)Gu9mo5OxJ5@hc1rpV`-8 zh*iJbXR)`ORd&BafEdXVQCK%;E*xZ!bgCn&x zR4GusEpwso-y=33@C(9~;3eKwb$~>`W_QqH6!+qkUhA)~DF+tj40aBT+nvgwz@}Tl zEc#aJB9r2aK{RayrzSQpoFs!8gN#QlEo#s~G)oA!f|k(uHLjiEwdwRsl=tianbNxZ z&V298Ra;;4i#jCrGAHd21U8&V8ni1-!-3%TqCJp;7-&h+*P~7rW(3jje-#HG@VZR( z9cJ8KsWs`%Gs|@tsee8C#A9f&$FSmy$I{FoW3;k)eNT?};{Afm!<+-2fc&@?FQ)WDmItQ2G`dna^w$Sf0da+wCDJjXMZ+>poQw(24mFvB^ChR(`FE-!Emuo*<^S;7o`(-|BiObae z>FMceS`kFxX-)+N%*0Elf|cnTM)Pv>pNYS6`f^5?7k4)j!W>J4((CQ5_2Jdg_z*3F znBS{K78*)s|LP(LJv*>14ZM z;{?~1$>Y_EZP(>)XDJemhj8M%5eJE!raOn8E3N!aQ%=z$zN}xm(5{q!kdczIu-`$c z6kkKv;q5clp3>Id&O1hmt2rwYA?-R-88%BvNmX0yK^$g+ah5?&vnYhReY!tJG@n08~wrMvmZ0EfiZjBh$M`9aU@yEL_Aq^p9Di4J|KdxT%;P?3|aN(zyn?a_C<(0}7Cnf=zr>bJ2me{qkc zswd(e>`OCZvOHa4lQ8E8Kf!F0z82P31}8v+QDa+t;7(xoxeE z4riB4E84ur2IV0|_F4K7S6b0K%6!wTddg}kM$IJj3SzwNW=+6Z4f@k12TxE@W))p4 zoeNiqp}fQXdA@H$hmb(^I5ks8f0#eScS^j$H;&U~1HD~bo(PO2CY^%xfxqATzlQ^x zy$8~jx^akx-=242*T&w}rY>C$BEj8b+TEp}4gn^vCp&$C2ceET#DUwt8;~Z$`nE%r z16|+tL40buim7}GS%$rez!afRck z5`ARmUP0pZn=x+*v^CIU@{a1PE-nRf(#rder}RKyr--F=&up6l?Urn4qeCkflF87a8l44m!EQw}{bBK6tS(>?ae73}l+DRJ z^QCKJHRC5m*9N%iw+Av`V75eKFgW&Bm@CaTS{m+0G>RIgjy>|nmzh8Y-Ty*^(*`2C z^>1Y+>BP`IY|snW1B+M)*6EZ>!HEpogarAfiKmcowLVevbYV4@WAdyuqUpV&_pDiQ zl^m8HB-oSTOToR}jwg62A4&PaZ4N8GFuJFBot)cXL+Ed#-72r>QTy^MYot!W*F1p_ zw|i3W2UQ;+X~ezqMKm699$S6iIiO2(@=YcwZOBoID9m+oOuAr7naOlHzA$ON@2~)! zga!>i1BS>P`{C`laVA5;(v|FDCgalL%9)k5BqGwC{a0bXL}O}k0$edh7ARw}m&iP! zbLmEL-IQ{m4@vjZ4g2U!;&eu6B@!XvQ?>RuLa8q0_sVySN0VID5L)1Z7Sb6$FmxXZ zf?O9ce!IqujHFRYyg>Z9KShDLj?&WymP{9)u`QW; zCG5UnDYh~D7GKTneRgTG_tDTh47G1s1%L4_F6HO7!PbBKSz`C-T^8F~8OFaM_vT^n zT4?k0d%d+bF+BVEE&d%#NL8BT=2$fYZ{^dug-F>#Skzw}djUj;#qDeS4%lv3nPbfp zv^iv@tL8>Jw$*-hn>D&NP`TDYXVKi7&e5{-R zd;$Jspd7wBEVUC9II+G*DX?6S6yKM7dGxzaWVN-mot?UQ{`~n|>#j_N+RItGhiA&y zZA$?wm<{IJ^khT6qcQ|8qSKm7$Pw1wF*qinYi3+Z7m-%cnUAinGUqF>`iQ5x^#xt* zuB1`XH$FJ@ykRHlj!JIdES;-A6DcnAD0(C9SB22LS|yjs_mm$B?c&|U#l$#%Lo_oM z7F>7nC;K@(j6hxr3uA1b-qddg=b3Q&ko{-xx=k024vj<_1_R7m3mtv+>Qzl^YiqJe z+Qqp0CzT?q?jJr=Uv2?lAlGTEeGeUXr7^qsW||-)J zp>W6$FvXCZ5bc59oulp;HGW$)-fdDO^2cRTi?%4i;Fa=jcQ+;)YQy) z6|52os8aRv@tx`_)uR&2MSgxO{i6~z+q2}`6zj_~@he-m2#JRheHrc>Zp}sJx-X8e z)N7R=TK?!d7`VNCkepnOD>A@1_XsB^=lm)gf~{WVd7NFoB?VlAH|4^OG4-IkbEI!a z3s$MHnSOM%IQP$QZxq9-eZ5G>eX-=KrB!^WR{5L)pXxjs4t=uWb)(|R~VYY$QUVyd&*Sl{b8e>?ic0r5a6l9$ls2kkY++Wa^C1H@Tkh$b617E z&P1AV`?Pa3->E)-_Hxzzf(B9j}QIvdy!oVcS`BUO>F*PaXn=_EN;&?jXjWA zwN)h!Xw^gndrl4%bLl!hvWU=i)VWfd&fYhBnezHaB%N&ulW`zcl8Y<8=c@{m!E9@Z zj0cgw?WBWkJB1WtfZ;iRQoBq)P*YS#8c$qOK?w%CIVahoEJ`rgQ7Q*nJ#~^p@~;`^ zO+P#oqG`FC-%s^$rhn(O3sg^EkuYI3X^$xleTq#R?loZ>hTqLwduW>z-|(rMOK^or zOD77WI51i0lr{puNmH(j4-24hm%?@Zet<+((>i0ImxJs@)Mc&)gRNwp$HY6k1-P_k z9{c0nM=wle9k!FSirA}t4Tek(=s0l6-ob!qKg*_|!Y_AqjrS6z(-x@B=qu&(W2daY z591MXIvREq&l%u}d3p38qX<|h4(MpnGF{LUnalNZFvE6cAOo-bgSZL3J=~`3MPkh`Yp;2$3$pOHnLWtPrCm4k>u2 zKjG&8&y}zkplOgTPeLk0$@XIr(L*qSP0oLq18qUWU0Zb-?w#;?VUgx3$Qk>qANres z7y$sR76xdK+}=faMx<5sKS9KECXifl_jWl8_JmpakCipjj8NZ(`N$vm6NuPqgf@B= zI^(qx)o` ze;m4NgPx{Eok)mw9K%Bc2OU%4V1CMf!1}o)#}K23@M1)&-^euLl!wv8ke!{aUFPm= z${W1`$iTC1e)+F_-D&RuL?axcVE$2f8N-VEb6&IhlP-9d7GW zg~KL{>)K*V?@jXE2PbkW817149hxYf$kt1yBtW_{0T6v~4~AvTJGP=~f8y05J*AYT zrQ(ZJ`_VYpnmE^iUniEc^ow{0mdlqpH*g3phG&PGqOUnpTAGy^VyUsZ$1?{G+R&p9 z_PBIh5R#FI4+)|Zs!`%D(-`}VAg4w7-OTG7YySp)G^-B0Bd8ml2jZ?$wYE4h++XB~ zZ{%yKstKYq+1}c;hptC@wG=sy4#5$s9A97G4q7hch5W_1I0?_j5wUb3f_DTuB`(*W zUny}Ja<;Ircr0ws%y9F|Lo32}*;h)QmXwHQ9Vb9eYwygab7hxq7x>v0jYPN&2MMKa zZUNtYs?BlHGY+n*Zo?n}S7AB48_hfWaXeUA`itW*=gmaQeM|x0zO^NROp&&^)t;gR z3)rlk22uS00RmMIn2i-lc37n?MubdhUpN2OSp3%Mt?8L9+o8ozpN!~5T{t4R4H+0W zJ`tPL1|PGZ`%>q&HkJmQxJ`~R$R@jp6(zjFK3kp(3kxW_Hg0($9=^tg09gX$0CP0} zu%rTMyWWoY#-JyX>Vw_4coB)N`TW**m@0mys%m2DLm^Q1vgH9fA3Ti@lI%|!a5F_k%e`thUp$ehN`mxsRMs9Ax z4n_LE1jvj4!q$8TQ7V7$pE7+7Ek*j(BoqHWVf$#P9*f<~Yd?Q`kE`WuV_0+u=}AhEajGB@jgjp~jPAiDlfC(D7oUh7B^R5;Zgd%L zYU(>S3G7T`a_`wYZZMzO#l^HK(wZ+aN_=%-K(H}zk+k%4?Of*ag%s}Uwj{aX*2MF8 z(TaIdd~b`l;N={HW8~rss;E2@&cNK*@Lh~#y5LNMRos79YVu==(9-lrx~8Tkd+2C2 zx6f*WrJY@fc_rJrJ4=9Gh9~x!C4Sh{Z9cU=JA31cL(wVf0Fa{8#y+bOPX2Zf8JoL#eG5jb zQ$&a#!8*^QTh?Si%~U`BD=S^NQt5wAeFyUVG{z&w|);37o1yqk04P(C$(=p z{EpvFdrC`#l4}fT`P&4yhNUTj6sRD#NFf%YLdA$+?df9^pwhRU{V<9kjdu|O8sVP= z5=2#wh~jnS56pp7ni7!c8;#^m-hM*-edGJWzLNj(FCq=nNroZfLMcBg4*|QCA6snB zc3Hm#Z9(p!`H8mvtj`Mz;8J+y>zLcp`#SiwiYrENnWijKr$9_W)%Nbji{At<5+T+y ztO|!h6rNT6b2wQP>DUZ57#&WtYtBC>Lpo_uRJV`1lZTFt04b0~Zqb?#OCt&0peYD6 z*7##N0e)GV2OWDcO9TrKZfzZudK3riZ0B!<46B;zlq5)uP_H-vOYt!6(Fd#;BI~Fi zs$05=R(n;MaoC_|U9eU26t;}XNIGxneh{X#6pJxOP7;uG`u_zZHG3XeleAkY$$4=EMhCkylaDV)ut1wFp?FOpurm>naI-s5g6DRt-T>VZ?L z4a$hoakJ19I#F^djUWE`5(pLP_P|T9KTR8zg5d6s05>@O<~FT!Q4j%3jnIDmbO#QQ zIE}-<{w@U|L!e&v77~{KKBb7q&>Wi}+k1)v7Z9%K$nA|4_#2Y;fLC-$a6i!}DMiPO z!_d`JbbAPHB=&}Vy&SrD8hxXgFE4$9YSKghsD-KqxNA@vwW4E|%5eb7o&0dJs@haa zQFoduU|#FTK?E2-w;X=gABqyAs^(MvWrqoM-m~QrW-zuDhGdm+;jP_Q$oxYB^1eyP zpP*)CE3K@C%qTo0?FU2c1U1$cZB( zQ}P6&Q3zKSq<>vJoeYbSJDJ*;hO=k)rMKZ+8k+VVi`lmpapl$Q3s=CjKeL|%c) z;09!MIID1gefXt@yu+fcQLhdVshKU>G z0U&@dOJ&G*@v-*8Sv65bPEr=Y6FbdlLNiv^uLprhuTXn2PUNss1cyK90(L|%K@>nM z4hwr|;IWZ(A?if#2R|eHml7{sB8T#Z3CxtZRt&C~2}UO#0Lst|02EdO@`DF!a!qQD zSLa4{v>a5)Kvnp(cyAGA=IN4|a<|FcT4SgK;a6LHBn~o&9Z`{3HT7IB8O-XGyd|P$ ztwVySPQdG;m+%yp!27ExmkxjqBQ4$UF;fOW1W$A6)GtFT_+hF+I~$t-8UwfE4DR0& zSC$GZjy==L3AXc^(9@kIKq~iuP>{lZSP06*pg!EMe!2)W`#I!+dS~@dyW%X8ZV$L( zr)Y~WYqFXzx;8m!-SgtN%p_831WPtC!HrgFAN>wEXcxu$LzcNKyB9PPtaPBtN5(&e zW2eC2jAo*Ammk<;@cj<<@J>_L1fZWfjj`_hC%yfaD&GZxjjXv-96KfQUDIYFBOu}D zQC~*7u4bFP06s;tASQq35Qn7^+=Jat!tBLg_^hwO4?b&sbuSTZRE7txKF03oweLE2 zmD~H*s^9aEswNS|?ma9L>x~NG1pi;3MRDHezff^x4Ft5nye+k40wp*JHOrbj3L zV6g({kXw5%#}p6#P@18c>Vj6Y7flzAPAsPHQ+$!|Cc2n7{eamEes(@4930-Sx>qUb z5Ekdh<4pcQ5Z#XotB0Q+h>$e}*q3lS>`l8R8a(!^?^R-fW`Anc(EjaUvaJ(G+teO} zHVh$1Mrp<03vE{_JP=C+ICv+pOf=^!d}d)bP8U9evJXR_L@5?R1g()~966?hlF(4z z!85z*Ki9zmK^CDjss`Nk-_TD!4%!>~QCml>AHgOR{ddxTC!|98>Yvsb5H*mJGk#WD zPiTfYV~sAH-Er49?}}-tfl|RFApt^GDf=5X^Uqb4a1Kr$-_hiz?kkcLB0wI0(|`*4 z6Hh{fp9k|B`nd2sM(yTKyOjFbCNb1_sS_XF|Bi#q*e3r`J?G!Y#8JE}Q!$^OFKf>Q z3UK7u8CUQRElML-+t4E4zpCd6%tRE_AOC2g z>bWz?up{%hQTEt}X>1$l>)v;!ZXOXaia(O;%Bz*=4A*fl$>9 z0tQ0%yXhtxMThx zSm%Py%r9idF3u4}1)5sIeNZ8PE@e1E2?R+{gyTP*gm;RdScYV_?#lTO!&VK(v|VSg zfx+RTgqe^hlg&XVyJPnx*din@5Pp~Bs6HKnl2F9%0Fx)cdU;?{9Yg2 z_7+?DbO&FMKlz?WMsQIG-^@V$BlFJghD=173AIWM5ZLkF7i=HddYXtOlDv zBjT99tK&yy_u8Vm2S}YyzP>OT013G{UXn4VY)N-Vz{f)ZtyS?^>rg6RPK~v_?k)_0%4IWoS=et1p)q%fWInB>610rxYqa&jhJnVOG+b94*X@7=psU(Oca zQcI;GM(MFM>Cd<|>zfOvhWD@SO-eWB8alSNe}#Jg0djJcwcGAV_l_D(|8&(#UC5*S zeA1NnQT(YB3cMrQb$takCR2R{R5_xeqQh1GR6BKxslq{nCGqcWfxC1(8pq+m=ktHa z_ZL6%5USM>OU&M~w6%T0`@w#^GvjnVbEHE9XJHkcUFq4WWmia`)yDQi6L3pM20o2v ziak6wo1~q0{(;YaCl+WrAb%7b24>FwgHQS$GE!UqI z1gFi`N2r+vVi2_mg;42pPX8+3rt6?qkoeVkEpCqiS4kfwuro2=rNpRmdm6+_2DIKP zPFmzfG`KND>7u&Z1lUE$YsKng-4#gX0?>@IO5Dbg5-5OfxNO%1$Uf~d;;x9vDJXkerSCG`F4mwQ)!?UI0KWa;(; zy8P2`W`A5VZ7l%;lBMN$)ui3G@9$=+K+@G;yT~y_2^hdb_OneL_{rQy=r6RP;V!Rw z7y=;*iyXFP!h)Tb53bmy{=V^eJOITZE|Jf+bN-U0bs1&>}Umnml<(f*^H#&B!Z}a} zSVX^>@dkNe=$<3nH%ch08%X9IgaCW~ z1@S?wGf3r@BukZ;^n*|@;WK_CQqasG%pN4`Qf84{>}7 zRlKgmZBQ!uH=;S&8%1f}0%yc{LEWpoT_YCI0&0foa5=~x{v5TzxLYe z?~Ayo)dhA$u2X#x1f6U?#M%c4NO-c;KD7Hq&DF|%P{XZ_&L9EjKrv8&jhe4B24-L!c1a`L@9OasxD|N?XM4fuIz*)y zRd+SPD~w^vfs(5+(+Wo`Jx?v_(EnN0@^N9+sTaCd>UYKH{Cnw~ZARUSZ zhViwGDptvSChSL%nkG|j|LvL8TPr@2&R)`|7BepAk3ErDq`;=)H)nh#89Zm-tn~Gi zQ_F=g1bwhA;hZj=Zx;66aO<5XCMHJhX7|y(D5fHp+_>S14=@Y_$6K=4+*mX`m_1+C zez$Eqj;<{_YHiT=K1fI4TeepvL!2kNtHI^Q7JLOf8}?xBtAgS~>f`P39M6+az{{~> zw>?#Hfgb4e`jCa>x(>aV+YQ-mNvLPAL^jCeY6nI{M67PJaPf*nRAmji;q%n%ay&;K zJz+vrdr%)r`9hgVr1(tB)?$$Ta!^HXf$%!cNqMnM8_K^y5R1iMmt)#9=caCnry%mU0S05*~(U5^#<{W;F-kz7}3mEgaqb1k89$rwwg zrBGZw1-AY*I5JE&*A{c_2Fq7A2e&ua!r%aAib8p zef85|8YGHN6Z1ggzr;$Vp5s3}kyUQB&uSSwI9}NeGQ@9hj1GT#a|i$BkxGqg#rj9Z zEj|R-pn4b?I|S3s*Js7oer;h4mF=P4c3eb6Wauu9fgdXJQ$pF|7uKnL?cLqfC|D9( zXg!agvhxu|WwgPy?!uvt_$?;@Mxd=bPZFxhEQIex(rwWYE?5dR-2cV*5Ia@i8HLaj z%*`T3!q*1K{b%A}wb7$^jxrhZ=kmCFJ(H8n%1 z@1H~O6$fv0^-RxqtmkAcFo{NcZBkk&FgA@IS8IqZa8vyzzACv$MmNwqJdGmTAyJQI63ohZBx8#!ah8sgP zCQx}g9U|tHUv~K<^u+y_{dfIy;6$zzO0DJ(b`{4M*WcF;<<>I9wynZ*$TV)bhx7N9 zIe)6WwPTU)(lQJJ6LvK$GrCwIyI?SUd-N^y&y@*8PH47UE_cHT$F}j3TeZTTD>rro z!qqyJ8u0ZTgMuV?!;`^x%U#!UG!>FQs?)50sM!4AHssGXl*G9C?PQD17Z00(L)JC- z$ml}Xr%UYGb3;78u+(V*Va^-f_T8Rk3`KW53f?U7S)K{ivn?`ftI_5(_sBAEA4@sG z913xH+hTvxGXu(p8{gz4i@*E|&v4}$YfnR&z;tJZx`Olx(5a)A=$E@a%pJ=5^=59u zIL2?JZ7;;vd$)KA^rmEod$21sKM{}B2j#i0+-p5_aP#Bf1+-9j!6VzlX1WpA>4%aV z)b0)=@Wjb;{%aE+7VpbR570`5M>hWAW@~;LRM7s_AxqJ=cr5kZ=sfCAcN{g6zD5(ElfQQ2Kj;9=I>4Ji` z{YSVfHXLZrXP-u=U%1B^_y*|j4!h|rd%iM*AWyr^A({%m!HuTDz!as(8n5M#G?Hs= zAy3Q7$|j3~ybYVa>I%$>AEv~Y&3JJK)Bk!1_;n1-C~vza)LMz_tpi$azy_@R{YW#n zYbgUW2WX2=0Yo>_~t zUDJlUz+71Y$OFPIliC|O+lv)wb=7{RY`F$JW~rM-AJI#*HCYDLL2&ou_8L>lb)6Xi ze8J~!$TFxme|2xNtmh{}M!&CLzn)f^Rf!W3IO!Gn^3|&dai6--lev(FWaw;CnnrZP z9lw+Q+}5|xZo(LGCd(EVg0qji%CSY9hP!M*P2X#=D^jedOrT^!^I}rJ9!mB%nrAjH z_Iu7Z<)ZQ6eXRtw&yt1D<)wbviX3ytta__3k8w1cL;kAbZ{Na}`Pa$>7zyNq{+jv}YL`Jr*d8+62*{fmo1BFFKTzf|{594t_)PX|Gn(KqJ;GhSVhn=Sl_ha_w@oAN;T*1wM>=@0^D-&m6d%cY11#ezpNM7-sNM2;!YllOf|~8)G$86rL6p-K_WM*PB;; zm@?B?2gZ@IFZa)6%Rlj)t1~q+V!Ao|hWOFoO3C8bX{3IbEVcjDYiD<~%hwIQfzTzg88s7(-#WbI_v^q3keyP}A-hQ&M zyv$~}Ij;4{Pag7^dWMgbHM)Ay=lvC|u7@b=Q040j$SQRpeo3+_43!tZzm|hW-Vd*? zD?y^mgQ%XYdP>=Ib7p(9g00!!uFQg~2UcemK$sKgir^I%j@sB5l~iHyUiqAyk#V}W z#MLhJ#Pl=L-54zp7f@nUR7f3+sF{>+PT8?BuC@Axp2;cY)hV?7m`okCJm6tBS5mQF z@~C+bR6qwX%bY}KhC`D;&k0BX7jIUD^TpaM2HAPC6fO1HJh~_4Pij`VE^_;RpfYU07N zp-jJyuELsdErX*T%hOq(-XZCGqfaQnx+lP`&HYZwU4`aBunVgUvoNm8_rv!<_zV>< zcGOg?NKS^^4^pi5FUx~IJ`i6vE_gzLF(iI-(gI)TvtIbH$^48s2f_}vIipJ(@!Ru0 zPm_{Z&~Sl5UUXiBGaN!RD}jMiR|6^>tj+P+oH#;97vQr|>+^i!29kaVAc6Lc(U$lS zGCIMkAfbUHjH~bDhGGXd%ppTo_(6$J)7=u$fKTlzZ?7+JZw=O>6L1BrA=DMCu@y(b ze8Xl8u30?#eM`ndE0WFwf;UI{=K69i`T)>5Ky`i~?7lWvP3iZSZS zzv+8FoF2emHnq8Sc%$V$-MJo%0q%lgCuyTcH-mp`#jcS#SMw&{%^!LG2%4{ zZ9Sp|i@c9Nz9Xe-yh=Ww-Dk8@m+z#lr(U+ZIM|K-YcUXj# z8q0Y4j9nFy4{!cKovmzTYE;>>zHqgvA2ZYHmaVE$YYiNd;0$uJ!5#k zjBKsGyBoJQ7hM@_@Z{`CzIy^5UI_ABD}vW$V{Q5QVy}HlPIJN9EgEe7TQU4{!}E=m zDb0a>2y)S7vOV+pOxcviKu91jAu=4jyn1QJ05mr|h#;3sKYjXyo_%<>F9t*MI9N;T zg`I-~0}OtB%$K=6Hp8s{JA?k%KPM;0`^SqR#ZsOtK0ZEc9cJqtj2O4i?~}WqyI3AQ zdbB!3W{@Qev*E4ratA`FKS*G38Sv<;;oSJdSsTuyI{Y@Ahxm%x?}*a(Wa=7i{7T!S zX$lGo%hkncmpXQ@>U_((;c!)sfIA#l`LABRsyic#Adw}|AL^O%XLdb!@L;%dqid73 z@`q2Q%(Q*t+UVht(ustiXfwYnbKTAH@*}Cy=L0u3He~T(&;f5R7M$T{c$A;-qQ0^Z zsrukjS?sNXy(lgx$7;5@(lzq>)}GeE!SjWu@OZq#K$%B<{)^cP`OpKhbh(uqE5Z21 znjmINZ*TAVJqVH&i%8r+Z%B+PDL-^J$7H{}*G#ZY!WBN_bLWDJ*;!cwi|o5j%NBc1 z_j-?n$P5>CosT2>eC;a{d)D)HbZTWP*X%`+bLaf8D)e+P2E9q^$(lRo2@87?Vw6tk{81N*gOz>>(dBu?*xKdZ^rzWMY zw(?Y1qe=PjFw+6mkvU>$@@uuPlS-_n^3s$C^;28(d8w!qf+QzYEt;}!clUo_Sn!a< zB&DwG;&O}RRW~X3&i~xi+t-&;QsPygzrOmTF6~s@@Z^)+(7=dbKB zOiJ9`5&mzLm2GCR4z`Xtlk?bV@kv#2QZ?Ezg*ml;w-!a0^@Xmw<@t$`DYMP12Nb-I ztgNhXTlh}4e`!k}$xKfO^d|-yhAA%Mpl{@r=EB32VOSNGNAD4fa<64aVs>JUvTE2O z-rSf-TPu&&uIs7&B+lg3zmFL$;?FjM$2Zv>dXtV&g^r{UIQM6YfVFI zr@k*N)I^D##BNFe_^=;Y}A)boiAmEiE%&kmU*6xp2~CSa%c?Gggag=&|+w zdss6VJ3LR2wp0DE53<<@?Z(C2F4Q62iyfoGBI8y2oR^Q>+LQEb7Z*}+`OP^cnE955 zKU!@K3UBY`$$zq%aVr~P#4-vKgkqk5dg)6s8^AVLLBCA5@N_Xa^iXS$yiVcG+3Nh} z!RsvS1%^)@8f~i9yng@Fr(hv^rgk+OrG$ zIlfvi++hEQNY5@DsbJG@(==GZgEJ0g9a<6o$Gko*Tv{n&BvLbrmVOc;TkweO?rUXz zQ5L4cXHh?EH7xDntokIbbNAy92ilqR@(2%(w7Ea&>Gzo`q9s0I>)++%t!a7goM@S+ zga7!~_A}|@4maq^88uR6GZa;@ge`K}xB! zFn%sItNXhk^lIIsvHJ8viFQ5`@{FtV*}B$O4VDWomCEsF?=4bCNU{b^>Pw{8djppm zohyVM6m)q!`(QB7svWz)i; zLgOWV%K{POP!_X71-at85oC`YMe#BQ4{l5X_L2H+xpVSJ;>ia6op_n##TXdLy<_Ku z;ERrTL#HxC;6e5D3$h%TL=45?1Wz~tTN8sTRA_S}Y6Tms z$WG?NSI>;dNU=5OCs*`GUi8O%0=WNE;MI7Rt`~xP{!ei{R@Z9}Vy;3;shr0=g@hlWn z2mECQy?KhA23VOzO=1=ba?9s5M(3B`bv4NhJv<(kc__tF-F=ZtS$EW)zD~}E!ovM2 zZVy8EAhF|#e?>)wz-;B*{oLvYQuf2Dn3XgAS0>^O*S?~MUHJ8`=zOopAl>ZBV+!6* zy>IK{4$+2-1y_H1<<{!gHfcReja2zka=Gd7GjMZ1%FMLwES~Dh4GRwszvSo`(&9TV zNxV+&YhL<7byuY8dQI%SpHE>?QB${QbVCijwgRo9 zq9QTd`I^wL+)}G+MpPj?f_)H7XdHe;!5PfCxl~77 zhrAFtjb1p_nH}dlG&snSemXv|1-~&bdAhH+#M#W<(^J$IZ*;yOyYg-I(n^p>c2k2i zySvsn4J<0g>r<~P%N51UMEt(|v=S%!Gvv^YTo`HE$}9_@|xLFbWu-R(=wr{gbnJaqKWVQ2eFrh5Se4EO~H1)nwd z@0C~2?vUi?NlozF)A5$!DfiaQna6C-doT9bSaxI?h#x)5Kug=>Ae~b>{=lDw^X0K? zEA9#l?RvDd#Lp>VwfkiHX-fKCHBHLg1J4SJUfiJFVp}A4AaXus}C#DCN5PUj>=Sx3<_9a{u$^)QWlsS?;L)jvr%u|E27V4 zk2OztT4^p2dEz&+kM;Go@Etu5S02)7mWNAtdVE=^#I{67gq#M)H6@1It9>?kE!J~S z!y5)+0$q&vGr2ZLO}^SE7p^?poeIqfEAnt5hd#a&)Te55x?pP^Q5xyX&G<+D?vA9f zyLk0lD{l#?jrOXn`fl zlYi0RgoBf9;7XZR=8GMNP)aO(?|+JJH$I5(fC#w%d;HtFoS788*Q(0ZIv037Jvc+Q zFvVUCO<>A6i+_qi8BRc}tLWtaHMD&3*j;}USax1@^TR}0U*X5>`t(4(%>%NHI`SS* zCp|!!xu(O@YzygnFu zcJ;c>y{}}X`ui3Zue<&Pd0MMpnLU-7?I^kAppFXoD?Q3@AGjVUamIOb4*#AnLBw;q z`y<9DiTCTx^QQf|A_)LohMUehW9UZ~7E21HSG76SOt+z)>7*03CvPWthWF$&8Fma% zN?`h+5~5E9umk;6m5XybUP=#N%ban>XB^RWXIF!1)|^p7tuNn!WRj-*%l(nru3|?}$Y?Yf_Vu00mrZfFhaVLg~2G zz3mT|^~v<o5|3 z{%U}g!V2Cx`58eBj>D&|A5X%i{kyoN?A(Qk?&P4Hz~_uvWhKZpX%4u^25IQ|v-2ll z8k}WH?uvnV(cN*)z1J!8#I11nbQA!pX1gSU*j-0-Pi%7?|Hp5;_(DAvsj5HY@|h4M z&zn?jpX@(O6ol}Ao6vsu7imC{`9lPTeCMGG?^&NAwkKz^1EuUct6%;YWP`L=|1?qF z{j-ik|8sFxR@UKKHs|0vPQ1dc!RCPn2Kx$R9;nJANQ@ZCWB(I(sA|Zl6=*PPpQuNw zu9Fer+-k@xC>@scyLkEXkz(f|4zGR})dTXL!W>sd!@WNz-+2U~u_nQ+=NIj;cmXi* zc2Q}nK$8;*qH{t*Jp$*V5LCIjS{a5uR`Q8E!_D%u!oB1764$I0e)PK$=NiPcIr>W7 zY|6iX&}tR-W~WP+_&ak<<;S{vi|m275BhhV_YrX|{UWmnqC`-0bMv9ud550>IQ~5eq85)x z1W|DM9`Rcn;jH^nxw&rCcTqym`Qzb>C8mD9uOVYv{FoWIH+$#Koe`AvD?3l*02P~- z$v!>iLxNP1ll(R7RxDYdS=Z2^ufPAmi4!OELgQuK_;Si7vv4oVmO?flCt8lx-`DIk zBiv$T*9;CMy}KI*kym{(Iq!hEBo%eRlOF4@|~E=W#KPq+5YJEfEucJHwE=?Z6C+klBgyb=|M z0!zu@ReRqVx5OZ^YhN^pfC8U0U`VT;{#-g1Mcs$Dmrjh`G$PEdmlqh*(8<4*D%pKD zSBE%N!#GTDbC3wXM0tLQZ@Cd2?ec520~`wJmv$hUwUm_D5IHx$@o)KeJ&_~Kq;P0l zkab~EW&RQc;&zaLv}ZJloC=3t(yH-9!vqSS9t@Bs)dRYh%G#pT#ys3w4@kT};YbCUMwpvH86=yf>kj_ATIXn-iCdXlK!`Y&ig%3iU& zODUECio6IxmKIAmiJ~l^uRu!q!p5HM%P&dk5bZ^*-=5&nIE9cfJ%y1*6V&Llk)II= zcplAhq~8CIN+g**maqd&AO&9L#!LSG?=0hAl8MWmeYyj&jq|?ref%3R#5*e6c)SQ? zV5U)&1#bqt{G%76&!;2&^(T1hL1hqr`wR4%FMD57Mjvm75peC zN3*R-@xhB(aS;K;TOr#z1#Iv|ykQH%x&~Kl6^AA2K&`XSwvSEw- zxPzaEgZ0d52sZp)I()FydE%N>l6CxRYio7AD8?Jp&La0;DRBi&_&E~E?@A2+z7vUx zyQ2~`0>@u(QbC-WoRUD{y{^{{){CGo{GoiqSX4#i6(ccwARXh5cHAeFNnym5E24w zfys-gt}bg(zdAHqPbLL|vVlld=Zs-9;URQ*z8X_Sl0n0EH%%L^yK)f_Y)GEHtPT}C zMFy>>2*p1N;>5E{qqTKQ;_oY76SLRYB%7urua*5k;1Ikq74B zpsV9U!zXCdx_s(%VR!4RzkR!GRnP;0y%mJ($r&W_RzS$S=w^%E@YxxSAZNQWvylH|~Hj5=ur5`Cly+XRWB z1wN_XijxMZ@2#%A5%GGU9Slza z$Pa}uoB0AJ0_fMi-9yCWbDIWR0t1278d^0pAQ@d-p3nD~>U_RD9ydb0@sWD?`+-DVq3@R8?$w&4F2uY8)B$eInNAe(x?+KGQzp(y|y-i5%XXMxWTnbW>Ar} zhl_r0+4t*EC1!DUh;w0KA^+Oy;?fswJZpA#HnB#`&!w}a5;$gSYb!0}HAgFn*rmmi z%4;=?sBEdlCpo=Pkhty;;Kz+1U#az%vjhp{;2NOX^XB5vMxXa;-w+3$$c(2&IVcZk zpPNgZn>^^vv@z@MzKaEk@e3_wmp>gZpHQ3)sN?W)IDgH1?7kt$q}mlu70ctdHjW{P zN$pmbERwt%a}}4CW~yB8t7N}J%^3>9sfTeKs=E8Fcj2#fVy4jk@tG;L8N7xoxY+b? z!xurA(5thvNZ&G7F4Zjk*xVRWJ@KZ|ZDVkyv!wRp$B)kzF08LCh)YP&p)VcV;>)M> z?K-t^-w#qG!=SI%H6OI94J=~@v~camfZ?;*_=d6JfWry?A#5_WAn}iUNly%YF;gal z<{z)YD>mCeLiBw3v1LDR?_=3Bq=hKf2!Cmo@y+v2PA{g5g`(C6K(J@ned}FUre3=4S9Y-2S}5O2$a#Lnjk-#T z{cgN1wM*1+kRVvwU0jk&s4~A~wmF4ARl#}SK=4Rin5v$h-r5v?J=d}&LD6O9`xo!Y z%ye$<;Z{}75H_dh2c1gCqMo~d(RKIoQiXZ<{rmUGNmX$Ap79VGKZ5C^Cy1K{S)7}D zrgC#*Y0|Kgb=gi6C6y|_66UYy>=NlW`Tkc}$`6>G&zk*$RT!@i!I5Yn3exZRZ0eE)uu z>k=~HxgYeU)qBJNR06G`yYG~%_<&g(} zB|*i?`u?A(?uP4;zPIPAm)<6P!J$FtxXejwHE_^i*s^2_WmdUDS&>XI*0mZdLWebH zDrjmAWl2oQw&FWtR!>WYwr|vE6DnQh+kJ^4<0L6%l^1Qo|q|b4#`t!Yp*Y>=9Kq#M~B0o|{#u zG*V;%ENzp$K?U9fej(U(!CZl%*3)=Du?>~{F`BO#g!wID4uW_jouKF^2Q$XL-~$8fZc8{d`53@Z*0uEfh{gpl z&wALJQrH`nVMdKWQ>l5dE?j$V+s4hDhG}G6y)})31bGSASR(mug6_YO{yp!Fj>1F@ zKCFX8*8hn{sY`+VplDPuSa_GUcXFea!u8&5?}jPGhjd4kYhPy+DiwMjx9PEp;60;} zuCRB9)^4hX{(qBiw$fF=%KqnNCN7VgW?^7l7^KF&2_8gR!-l1_4Au%^H zqBJ#zC=c&=;;2pf=>ofEY5rGxB5z7@A;Lm?k~Ldu)3AU|QHFjz`VJ^RkjTp*yC2!H zhcIS+@F?QUM?mtP3g6uMu?f9N{H^yL|B7Nng?RjA^y%!ueY^vn5#%f2%AAuf`F}J!b5l)qKEd~2SA2g zwBmU;H|BLB71#t}e~;QT-{k?FOceC}d5P6dF`$d??(WrKF0;jI@l~u(JGZRFqKv*a zge@gG`JhudvDSNySQlNHg5(7|@ETRDIc4aB3oL5#oM!e)i_dU=9Y>tr>Z@0;P%W|_ zTz8kR-TB_5;i|*QcQ^tQ5)!Ou1Q1~{HuWg6N;bjpYuItFd+(|xTNLPj4EoFlJ1Q-| z)7}=0E7#^m^W){cYBj}PGOVw!yR9ezsM2XxsiT9d1uEmdqjN<*Su7kJ`EKyGBQ3p# zu6b=)vVeZ-Ity9(&WDvE7vY7{$hG=gnsdB z5B;s<7v?-5Pg~FOKs7;x08aC9X{jtQ-LwPpZsS@e9vuexS3QUaTki`Q)&k#d`^;ey zUit>X8k65W^Z|7CmoH!Hg-!#=l6LIXcVDN74EiM*elnCF8{Y~o1`7;``McQPrEWm( z#s@;mt|N}r@mQ2M&cNT1(RcS~#g(p2Zn5dU{|7eh&N=>go5#h|fiJ#oZC(NyGCIQs zK?(K6%cF0@ag~18o|;v{38>Y8dJ~&-W*eHy%BVqdgpRiL!w0$+%%(4D!8pBK=v?Zb zP+~S)`4Bz)hI8Yx`U-WyHWlOw?D&*$tg}a+CdE?FgACEEQ{u8#HnsiG4rb`m^ycCl zqrPj?JS76tl*ne-w&E)_*|;3O6|s;i6Wq(wK^jK!mQ2Xdx8YHhA8kl6~P>^vP9r@FreeiU#aGT>~hmfE=TW0~D0dA7U_l6m{ zt3+}$Lal)HzMVFLjGaIZde|DK7^@W>9=l3{MBPD-XYpm7G36kK|3&IvPXyR$|J2!k zh@PERFFlVC#!_}OWvUmjc0d+D(S=P|Vkk;@X^g-M$E75Cpjo(Ymid*fwJ}o zX8G0r^s`M&cO}F*?rtTD9Y`LQlrmF2g|)*X&0C;r50ba0^@>}n!8F7!U#~oJY6pS? zKA0Jsp(52bnyMA7egCSPRMv7#3#E#9{Q@Z>j3K$%uBD$62ukl`9Q^OTMP$77z0q3Q z9^ro#gEQ6W4f41HosS*sI>RKNOor5;3mK}2o+m}$j&CH1N~Dl#7eoX6ZYBep(ll?9 zBh5EB%*BHVk+cC1j3)vFBP(O2edA~K4Kwu7$VW-3!=!NL)|^b=?c7+Fp>G~wCf}i` z3Xc4=L&Iq}U~-I2or+P#0-XHM^5J4U;A1#UTk73%bgD67SpL3It z^9yL}CqIK8`Z>#1bdqHIlE}r59IpRHdPs_>>;cd7R$0p^cm`hRFk1y_&;_2?5*C(h zcCjGsWRU;)W;+PIa5w9eZJAHhLk1yOTm72}Qp-w{)%h7`@tY)qjitqAXlRs?B9Vvn z@-pN=a)IiF&yn9~X~C%b3!Fl*NOIP8=>koSXV=4@>vVC59O2(Vax=@-`&)luc$mx| znb{@Aki&^>aB+-#mZ8fom7iA$E^9pf1ST0w~q9 z9tR*qmmC~~J-oOK=-JfHZ%}_wwmN!s2UhknRB3^ZG!r6cK zmG!Hg5r__(gED30J~lN{>;f19&vebA0~X`XMwhW6RT8MJ^Ph?x4Zn?v;bo1DjUPcq zm3Hc983J?rqJs|zt#7R)+RkHEds=kAibJo+kXY>;TB?;9w&YyJ`L47jhFaEz*06i^ z(}Liw{ZQe`TwtQlU+Hk<)x8jZw2|0X%oX2mExjCCeYq62NyOB?7+lEl{@$vJO2%PO zWhdn41WtNuf4{IfWn@$2^aVp_OQ;0DybpIUPA--<1=RoSgh95vVw^nqIpafWrv*&&2O- z+I6O01B|FJAU|7P@Yx0kFbibohrSpEg>rWcIlS*d(5}JGkNlw?p(QVU;XgBBQPVpl zNK#|$?*`RAPhOT{%B{isdy}z=;rX>L+pnJJ`>8C}Wx4?_; zf)_>0*4Sj6g2^bTv}FB0R$cdoQIMIyOmyd4hBu5|TwD2N7jISP3E(8VU;23U1H#C+ zZA-i4>>PGD!J8W>?pC3mKe08aEnT}#Pg@bJ+c2e-OZ}JM?A!8XQ#GR>y?7xHzAtzj z=};#I@5u<`TDfqpk`W#)1T9?%Z<$ER&K60)Z!B+VBDA#2zJB!yT+yPYfp<9lj-5_a zV(&6>JJs*nAVQ3v^*sz8%K0qLWII63F5cfvph$=gRK9AkPcm|aDx@h8!dwKfY5|YK zEHb}Lkl(-HBq0F)i@qyWT-2lhMW5yZXcV@`X0ZIv(ZW23oJR2VHcvU@@Z9OAB)R`R z8NzQvO3C;M)pL0`|3**{Wc(D8%neVt#YzxF;{+T&-SQ(r$=FA7Gw>%FiOKACLS14| zC^ZVsAxPsrij<7xZz}`29zFfadU4ABj)u=dfPRgQrXdmEKvy?^yn=` zq;J&ouhxr75s)6lu77(rgflGn{w#bG>LeWpxfIE80fu^tZP~kkmm6wFp$ta!<>@m; zz&Qx4UgK+xpDYhff7IAIL`9CTA>*x7Xzd_e__J6oHgNhPxUroutB<}oc^{|?Vuw}% zqOk5S9dYvz1aE}qUr3rVV39?V3-3^gn&8hueQ-;jZhnRmpa&9iQO{ph{Qd`9O9}*8 z8mhi1+3|`;7+MZs*e68Gm6nUZT7a89upk$JmnCF%ZWDeLub=%> z$L}<);Njk?6cUcjXU{tdua_kFbF#PvFsLh!?%{z2+wbbN$1VW@;V%`8q?}`OXBuPY z=k2K*q3{d7yLB^QYi^JW2cGL3&Gn^2ge@$Gn^)+ivcglbf$Ki`!AvY27F ztz^pnS#P^DnM?zSb;fVt55yCq zN>R5b%R|S%PL`e6Y#OZjF0>;6^?QScj277d@Bm3$3w%egjJN_#?{5`ZnUnyr*2^;w zi0M3D`fn!3cs*I3LolI=?nw46jmtl$5n_H2N>6y(j58Rvy$%FNNkYzKtJG$k6uB*! z9T^FIAIp*`{e0U}*0KC`!LMo~agm!^#z-O)<3Bx4lYD0pQpajLYR;GfMbG5r}xGizR9rfL3o{xk+pGfc-2IhFO zkD7|Ac5%9IBvgLJA4M2EVG4BAir;lW=Y8Do22t7!YHTBPy&fG{kHgP9TfDiw4~mqe zu6#9}y=vI+Gy4)P8?c?m{0Huy@JD$Ml;@5N;~}s_MQ*V@-D*gYTLpAmMe@Y#b0xLZ zfI1!}ewm$3?A!o{B9uopv>HhG`R`kN9*Ro@!~lL=g!1j&my5>1p`o>4ucsd{d*SK0 zci%q7^~U$_by^qynaTUv`XTU2dZcd|!LJaQy~i8t=}^2_6RO?)7a^Ug#}ZC*Mt4z+ zeRg#AIoICRrOh^d%x%1}@J#5grlzKoeP&zKeqr)aqS3E%cDa2}22w?-Mk{po>6QU- zos1&w0Os;XZ29c9S)rBK#l=P2=^tQl#7R2_KFO`P+Oq>mSOW)8iD z0#MXGf_eyGVAsON10D_l3fPFwF8jOn`mvOKGS$7pu7g#T>Hu zmidVmRb^Z-_?+X-i5SivhvN2u3^mm4f{JTmgV~0}*=%D2_fIR}yP4qE7r?y`@JOF{ zD;tNIaM*ZQuBHRaK$VC&UPO-<2yg@R&x2Z!&}uN7o% z<|iIDCAvxDn|od#bN+cC$-^1MQ~cL;!e|9m4EbKO=Y8%p-q<>OZR=8z;Cb{?I1rZE z_7Tw7`H#Dm?n=!611`_$-guvUBHv}C_R^(G{vZyCbKuvAkynkC#@(7xM<-V6V(*j< zX4NQAQ8XKzJ=p#sH{5HV8=}QWKeVw}VzaK5ZDupCXj9}DKm9*cvPw)%*e%PQdn@~7 zVM>_$(UT`agHXSy?G)1m@(_N(5bsgb(mvS%nAnY8WI&h2zU01MHr9kvMGGb%5 zjy`#u&XX=9&CBWZwi!77xzVFhmBpV znD}~&`Mer8_wpUM3&T~z4Q}o$_s@)nVO=7%^dpPja8wOY8_LPGO6btzKr=_Ls?|a^y_MkyF?xP%= z%)f333W29AeORz7M=~k`(d9euGhM{O&K|P0!KVUrNETLB!IfB)MokaFW*_hAqOPdy z+%b!T6T<(Y(AU=M6Te}h_y1+zg68(AIN+<59}YBMr^6-HnLEiJAK z;|znXLHJidyT8cID7N~oG0S?uLvV-cg z{F=GqE(#cy!R-&{4VZcwvz$<1T-glM^gh&9jDCD|LtQB`(RY1la}|FWo%P1sVN5;3 z3cTcZL1Gm#d#R}S&?#|GmE#I;=94FyVDKmYY)i6hf5UHxfFyqIFg~Ij3ITKVg{iK?kXO~5pw!_p1j#Xu=t1A+9?tbv&O(0^3OY`NZwt*b|W zk1QIU52;72-P!!c$+x+_8NE4Y#s`V0Yc$0D=Vfm3`3EG_=QhupK>`t$1heM9bEVNL z;D6f~8`VCvxjv-o=H|BcigWGNXny5#Tx9^G(AjDzuG8$6MCyNoZMKiwSQXH zo4miIMsLL$-;ZRR{;-F%#%yEEZ2L?oh!W1cK|x)c5~jq87JER2rV3<#h4t@k=w<{= vSy`FJfFh#N2;0A)j0!5o|Npk7cmwZt`W1Bo^A!geU_|}oY2}>b=D+_hyqr7@ literal 15694 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. - .. code-block:: none @article{SMT2ArXiv, diff --git a/doc/requirements.txt b/doc/requirements.txt index 0bf29edaa..7d97a1523 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -5,4 +5,5 @@ scikit-learn pyDOE3 numpydoc matplotlib +ConfigSpace~=0.6.1 git+https://github.com/hwangjt/sphinx_auto_embed.git # for doc generation \ No newline at end of file diff --git a/smt/applications/mixed_integer.py b/smt/applications/mixed_integer.py index e9076c274..0462b524d 100644 --- a/smt/applications/mixed_integer.py +++ b/smt/applications/mixed_integer.py @@ -42,7 +42,6 @@ def __init__(self, sampling_method_class, design_space, **kwargs): "MixedIntegerSamplingMethod has been deprecated, use DesignSpace.sample_valid_x instead!", category=DeprecationWarning, ) - self._design_space = design_space self._unfolded_xlimits = design_space.get_unfolded_num_bounds() self._output_in_folded_space = kwargs.get("output_in_folded_space", True) @@ -50,7 +49,7 @@ def __init__(self, sampling_method_class, design_space, **kwargs): self._sampling_method = sampling_method_class( xlimits=self._unfolded_xlimits, **kwargs ) - super().__init__() + super().__init__(xlimits=self._unfolded_xlimits) def _compute(self, nt): doe = self._sampling_method(nt) diff --git a/smt/sampling_methods/__init__.py b/smt/sampling_methods/__init__.py index 5247e7b89..08552f6b4 100644 --- a/smt/sampling_methods/__init__.py +++ b/smt/sampling_methods/__init__.py @@ -1,3 +1,4 @@ from .random import Random from .lhs import LHS from .full_factorial import FullFactorial +from .pydoe import BoxBehnken, PlackettBurman, Factorial, Gsd diff --git a/smt/sampling_methods/pydoe.py b/smt/sampling_methods/pydoe.py new file mode 100644 index 000000000..ab0a2abd9 --- /dev/null +++ b/smt/sampling_methods/pydoe.py @@ -0,0 +1,146 @@ +""" +Author: Antoine Averland and Rémi Lafage + +This package is distributed under New BSD license. + +pyDOE3 sampling methods +""" +from pyDOE3 import doe_box_behnken +from pyDOE3 import doe_gsd +from pyDOE3 import doe_factorial +from pyDOE3 import doe_plackett_burman +import numpy as np + +from smt.sampling_methods.sampling_method import SamplingMethod + + +class PyDoeSamplingMethod(SamplingMethod): + """ + Base class adapting pyDOE3 designs to SMT SamplingMethod interface + See https://pydoe3.readthedocs.io/ + """ + + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.nx = self.options["xlimits"].shape[0] + self.levels = None + + def _compute(self, nt: int = None): + """ + Use pydoe3 design to produce [nsamples, nx] matrix + where nsamples depends on the pyDOE3 method and nx is the dimension of x. + Warning: In pyDOE3 design setting user requested number of points nt is not used + """ + xlimits = self.options["xlimits"] + levels = self.levels + + # Retrieve indices from pyDOE3 design + doe = np.array(self._compute_doe(), dtype=int) + + # Compute scaled values for each x components + values = np.zeros((self.nx, max(levels))) + for i in range(self.nx): + values[i, 0 : levels[i]] = np.linspace( + xlimits[i, 0], + xlimits[i, 1], + num=levels[i], + ) + + # Use indices to shape the result array and fill it with values + res = np.zeros(doe.shape) + i = 0 + for idx in doe: + for j in range(self.nx): + res[i, j] = values[j, idx[j]] + i = i + 1 + + return res + + def _compute_doe(): + """Returns a matrix (nsamples, nx) of indices. + + Each indices takes a value in [0, nlevels_i-1] where nlevels_i is + the number of levels of the ith component of x. + This method has to be overriden by subclasses""" + raise NotImplementedError( + "You have to implement DOE computation method _compute_doe()" + ) + + +class BoxBehnken(PyDoeSamplingMethod): + """See https://pydoe3.readthedocs.io/en/latest/rsm.html#box-behnken""" + + def __init__(self, **kwargs): + super().__init__(**kwargs) + + # Box Behnken design has 3 levels [-1, 0, 1] + self.levels = [3] * self.nx # for + + def _compute_doe(self): + # Increment Box Behnken levels to get indices [0, 1, 2] + return doe_box_behnken.bbdesign(self.nx) + 1 + + +class Gsd(PyDoeSamplingMethod): + """See https://pydoe3.readthedocs.io/en/latest/rsm.html#gsd""" + + def __init__(self, **kwargs): + super().__init__(**kwargs) + + self.levels = self.options["levels"] + + def _initialize(self, **kwargs): + self.options.declare( + "levels", + types=list, + desc="number of factor levels per factor in design", + ) + self.options.declare( + "reduction", + types=int, + default=2, + desc="Reduction factor (bigger than 1). Larger `reduction` means fewer experiments in the design and more possible complementary designs", + ) + + def _compute_doe(self): + levels = self.options["levels"] + reduction = self.options["reduction"] + + return doe_gsd.gsd(levels, reduction) + + +class Factorial(PyDoeSamplingMethod): + """See https://pydoe3.readthedocs.io/en/latest/factorial.html#general-full-factorial""" + + def __init__(self, **kwargs): + super().__init__(**kwargs) + + self.levels = self.options["levels"] + + def _initialize(self, **kwargs): + self.options.declare( + "levels", + types=list, + desc="number of factor levels per factor in design", + ) + + def _compute_doe(self): + levels = self.options["levels"] + return doe_factorial.fullfact(levels) + + +class PlackettBurman(PyDoeSamplingMethod): + """See https://pydoe3.readthedocs.io/en/latest/factorial.html#plackett-burman""" + + def __init__(self, **kwargs): + super().__init__(**kwargs) + + # Plackett Burman design has 2 levels [-1, 1] + self.levels = [2] * self.nx + + def _compute_doe(self): + doe = doe_plackett_burman.pbdesign(self.nx) + # Change -1 level to get indices [0, 1] + doe[doe < 0] = 0 + + return doe diff --git a/smt/sampling_methods/sampling_method.py b/smt/sampling_methods/sampling_method.py index 7a311a73a..1d4ce84df 100644 --- a/smt/sampling_methods/sampling_method.py +++ b/smt/sampling_methods/sampling_method.py @@ -7,6 +7,7 @@ """ from abc import ABCMeta, abstractmethod import numpy as np +import warnings from smt.utils.options_dictionary import OptionsDictionary @@ -15,8 +16,9 @@ class SamplingMethod(metaclass=ABCMeta): def __init__(self, **kwargs): """ Constructor where values of options can be passed in. + xlimits keyword argument is required. - For the list of options, see the documentation for the problem being used. + For the list of options, see the documentation for the sampling method being used. Parameters ---------- @@ -37,6 +39,8 @@ def __init__(self, **kwargs): ) self._initialize(**kwargs) self.options.update(kwargs) + if self.options["xlimits"] is None: + raise ValueError("xlimits keyword argument is required") def _initialize(self, **kwargs) -> None: """ @@ -54,16 +58,17 @@ def _initialize(self, **kwargs) -> None: """ pass - def __call__(self, nt: int) -> np.ndarray: + def __call__(self, nt: int = None) -> np.ndarray: """ - Compute the requested number of sampling points. + Compute the samples. + Depending on the concrete sampling method the requested number of samples nt may not be enforced. The number of dimensions (nx) is determined based on `xlimits.shape[0]`. Arguments --------- nt : int - Number of points requested. + Number of points hint. Returns ------- @@ -73,9 +78,10 @@ def __call__(self, nt: int) -> np.ndarray: return self._compute(nt) @abstractmethod - def _compute(self, nt: int) -> np.ndarray: + def _compute(self, nt: int = None) -> np.ndarray: """ - Implemented by sampling methods to compute the requested number of sampling points. + Implemented by sampling methods to compute the samples. + Depending on the concrete sampling method the requested number of samples nt may not be enforced. The number of dimensions (nx) is determined based on `xlimits.shape[0]`. @@ -83,6 +89,7 @@ def _compute(self, nt: int) -> np.ndarray: --------- nt : int Number of points requested. + Depending on the concrete sampling method this requested number of samples may not be enforced. Returns ------- @@ -93,20 +100,25 @@ def _compute(self, nt: int) -> np.ndarray: class ScaledSamplingMethod(SamplingMethod): - """This class describes an sample method which generates samples in the unit hypercube. + """This class represents sample methods which generates samples in the unit hypercube [0, 1]^nx. The __call__ method does scale the generated samples accordingly to the defined xlimits. + Implementation notes: + * When nt is None, it defaults to 2 * nx. + * xlimits is presence is checked. ValueError is raised if not specified. """ - def __call__(self, nt: int) -> np.ndarray: + def __call__(self, nt: int = None) -> np.ndarray: """ - Compute the requested number of sampling points. + Compute the samples. + Depending on the concrete sampling method the requested number of samples nt may not be enforced. + When nt is None, it defaults to 2 * nx. The number of dimensions (nx) is determined based on `xlimits.shape[0]`. Arguments --------- - nt : int + nt : int (optional, default 2*nx) Number of points requested. Returns @@ -114,10 +126,13 @@ def __call__(self, nt: int) -> np.ndarray: ndarray[nt, nx] The sampling locations in the input space. """ - return _scale_to_xlimits(self._compute(nt), self.options["xlimits"]) + xlimits = self.options["xlimits"] + if nt is None: + nt = 2 * xlimits.shape[0] + return _scale_to_xlimits(self._compute(nt), xlimits) @abstractmethod - def _compute(self, nt: int) -> np.ndarray: + def _compute(self, nt: int = None) -> np.ndarray: """ Implemented by sampling methods to compute the requested number of sampling points. diff --git a/smt/sampling_methods/tests/test_pydoe.py b/smt/sampling_methods/tests/test_pydoe.py new file mode 100644 index 000000000..73dfdf5a7 --- /dev/null +++ b/smt/sampling_methods/tests/test_pydoe.py @@ -0,0 +1,118 @@ +import unittest +import numpy as np + +from smt.sampling_methods import pydoe + + +class TestPyDOE3(unittest.TestCase): + def test_bbdesign(self): + xlimits = np.array([[2.0, 5], [-5, 1], [0, 3]]) + sampling = pydoe.BoxBehnken(xlimits=xlimits) + actual = sampling() + self.assertEqual((15, 3), actual.shape) + print(actual) + expected = [ + [2.0, -5.0, 1.5], + [5.0, -5.0, 1.5], + [2.0, 1.0, 1.5], + [5.0, 1.0, 1.5], + [2.0, -2.0, 0.0], + [5.0, -2.0, 0.0], + [2.0, -2.0, 3.0], + [5.0, -2.0, 3.0], + [3.5, -5.0, 0.0], + [3.5, 1.0, 0.0], + [3.5, -5.0, 3.0], + [3.5, 1.0, 3.0], + [3.5, -2.0, 1.5], + [3.5, -2.0, 1.5], + [3.5, -2.0, 1.5], + ] + + np.testing.assert_allclose(actual, expected) + + def test_gsd1(self): + xlimits = np.array([[5, 11], [0, 6], [-3, 4]]) + sampling = pydoe.Gsd(xlimits=xlimits, levels=[3, 4, 6], reduction=4) + actual = sampling() + self.assertEqual((18, 3), actual.shape) + print(actual) + expected = [ + [5, 0, -3], + [5, 0, 2.6], + [5, 2, -1.6], + [5, 2, 4], + [5, 4, -0.2], + [5, 6, 1.2], + [8, 0, -1.6], + [8, 0, 4], + [8, 2, -0.2], + [8, 4, 1.2], + [8, 6, -3], + [8, 6, 2.6], + [11, 0, -0.2], + [11, 2, 1.2], + [11, 4, -3], + [11, 4, 2.6], + [11, 6, -1.6], + [11, 6, 4], + ] + + np.testing.assert_allclose(actual, expected) + + def test_factorial(self): + xlimits = np.array([[4, 10], [-3, 3], [5, 7]]) + sampling = pydoe.Factorial(xlimits=xlimits, levels=[2, 4, 3]) + actual = sampling() + self.assertEqual((24, 3), actual.shape) + print(actual) + expected = [ + [4.0, -3.0, 5.0], + [10.0, -3.0, 5.0], + [4.0, -1.0, 5.0], + [10.0, -1.0, 5.0], + [4.0, 1.0, 5.0], + [10.0, 1.0, 5.0], + [4.0, 3.0, 5.0], + [10.0, 3.0, 5.0], + [4.0, -3.0, 6.0], + [10.0, -3.0, 6.0], + [4.0, -1.0, 6.0], + [10.0, -1.0, 6.0], + [4.0, 1.0, 6.0], + [10.0, 1.0, 6.0], + [4.0, 3.0, 6.0], + [10.0, 3.0, 6.0], + [4.0, -3.0, 7.0], + [10.0, -3.0, 7.0], + [4.0, -1.0, 7.0], + [10.0, -1.0, 7.0], + [4.0, 1.0, 7.0], + [10.0, 1.0, 7.0], + [4.0, 3.0, 7.0], + [10.0, 3.0, 7.0], + ] + np.testing.assert_allclose(actual, expected) + + def test_plackett_burman(self): + xlimits = np.array([[2, 5], [-5, 1], [0, 3], [4, 8], [-1, 2]]) + sampling = pydoe.PlackettBurman(xlimits=xlimits) + actual = sampling() + self.assertEqual((8, 5), actual.shape) + print(actual) + expected = [ + [2.0, -5.0, 3.0, 4.0, 2.0], + [5.0, -5.0, 0.0, 4.0, -1.0], + [2.0, 1.0, 0.0, 4.0, 2.0], + [5.0, 1.0, 3.0, 4.0, -1.0], + [2.0, -5.0, 3.0, 8.0, -1.0], + [5.0, -5.0, 0.0, 8.0, 2.0], + [2.0, 1.0, 0.0, 8.0, -1.0], + [5.0, 1.0, 3.0, 8.0, 2.0], + ] + + np.testing.assert_allclose(actual, expected) + + +if __name__ == "__main__": + unittest.main() diff --git a/smt/sampling_methods/tests/test_sampling_method_examples.py b/smt/sampling_methods/tests/test_sampling_method_examples.py index 6e5224017..b84c26040 100644 --- a/smt/sampling_methods/tests/test_sampling_method_examples.py +++ b/smt/sampling_methods/tests/test_sampling_method_examples.py @@ -10,8 +10,8 @@ class Test(unittest.TestCase): - @unittest.skipIf(NO_MATPLOTLIB, "Matplotlib not installed") - def test_random(self): + @staticmethod + def run_random(): import numpy as np import matplotlib.pyplot as plt @@ -30,8 +30,8 @@ def test_random(self): plt.ylabel("y") plt.show() - @unittest.skipIf(NO_MATPLOTLIB, "Matplotlib not installed") - def test_lhs(self): + @staticmethod + def run_lhs(): import numpy as np import matplotlib.pyplot as plt @@ -50,8 +50,8 @@ def test_lhs(self): plt.ylabel("y") plt.show() - @unittest.skipIf(NO_MATPLOTLIB, "Matplotlib not installed") - def test_full_factorial(self): + @staticmethod + def run_full_factorial(): import numpy as np import matplotlib.pyplot as plt @@ -70,6 +70,104 @@ def test_full_factorial(self): plt.ylabel("y") plt.show() + @staticmethod + def run_box_behnken(): + import numpy as np + import matplotlib.pyplot as plt + + from smt.sampling_methods import BoxBehnken + + xlimits = np.array([[0.0, 4.0], [0.0, 3.0], [-6.0, 1.0]]) + sampling = BoxBehnken(xlimits=xlimits) + + x = sampling() + + print(x.shape) + + ax = plt.axes(projection="3d") + ax.plot3D(x[:, 0], x[:, 1], x[:, 2], "o") + + ax.set_xlabel("x0") + ax.set_ylabel("x1") + ax.set_zlabel("x2") + plt.show() + + @staticmethod + def run_plackett_burman(): + import numpy as np + import matplotlib.pyplot as plt + + from smt.sampling_methods import PlackettBurman + + xlimits = np.array([[0.0, 4.0], [0.0, 3.0], [-6.0, 1.0]]) + sampling = PlackettBurman(xlimits=xlimits) + + x = sampling() + + print(x.shape) + + ax = plt.axes(projection="3d") + ax.plot3D(x[:, 0], x[:, 1], x[:, 2], "o") + + ax.set_xlabel("x0") + ax.set_ylabel("x1") + ax.set_zlabel("x2") + plt.show() + + @staticmethod + def run_factorial(): + import numpy as np + import matplotlib.pyplot as plt + + from smt.sampling_methods import Factorial + + xlimits = np.array([[0.0, 4.0], [0.0, 3.0], [-6.0, 1.0]]) + sampling = Factorial(xlimits=xlimits, levels=[3, 6, 4]) + + x = sampling() + + print(x.shape) + + ax = plt.axes(projection="3d") + ax.plot3D(x[:, 0], x[:, 1], x[:, 2], "o") + + ax.set_xlabel("x0") + ax.set_ylabel("x1") + ax.set_zlabel("x2") + plt.show() + + @staticmethod + def run_gsd(): + import numpy as np + import matplotlib.pyplot as plt + + from smt.sampling_methods import Gsd + + xlimits = np.array([[0.0, 4.0], [0.0, 3.0], [-6.0, 1.0]]) + sampling = Gsd(xlimits=xlimits, levels=[3, 6, 4]) + + x = sampling() + + print(x.shape) + + ax = plt.axes(projection="3d") + ax.plot3D(x[:, 0], x[:, 1], x[:, 2], "o") + + ax.set_xlabel("x0") + ax.set_ylabel("x1") + ax.set_zlabel("x2") + plt.show() + + @unittest.skipIf(NO_MATPLOTLIB, "Matplotlib not installed") + def test_sampling_methods_examples(self): + self.run_lhs() + self.run_full_factorial() + self.run_random() + self.run_plackett_burman + self.run_box_behnken() + self.run_factorial() + self.run_gsd() + if __name__ == "__main__": unittest.main() diff --git a/smt/sampling_methods/tests/test_scaled_sampling_methods.py b/smt/sampling_methods/tests/test_scaled_sampling_methods.py new file mode 100644 index 000000000..ee029c48f --- /dev/null +++ b/smt/sampling_methods/tests/test_scaled_sampling_methods.py @@ -0,0 +1,25 @@ +import os +import unittest +import numpy as np + +from smt.sampling_methods import LHS, FullFactorial, Random + +SCALED_SAMPLINGS = [LHS, FullFactorial, Random] + + +class TestScaledSamplingMethods(unittest.TestCase): + def test_xlimits_missing_error(self): + for method in SCALED_SAMPLINGS: + with self.assertRaises(ValueError) as context: + method() + self.assertEqual( + "xlimits keyword argument is required", str(context.exception) + ) + + def test_default_nt(self): + for method in SCALED_SAMPLINGS: + xlimits = np.array([[-5.5, 3.0], [2.0, 3]]) + nx = xlimits.shape[0] + sampling = method(xlimits=xlimits) + doe = sampling() + self.assertEqual(doe.shape, (2 * nx, nx)) From d47f6f3ed84b2fe98ee15903af4227b1c50a9bb0 Mon Sep 17 00:00:00 2001 From: Saves Paul Date: Wed, 29 Nov 2023 19:57:15 +0100 Subject: [PATCH 2/2] Add classification example and engineering applications notebook (#483) * add battery * add manufacturing --- .../NotebookRunTestCases_Paper_SMT_v2.ipynb | 346 +--- tutorial/README.md | 7 +- ...plication.ipynb => SMT_MixedInteger.ipynb} | 383 +---- ...ixedInteger_Engineering_applications.ipynb | 1443 +++++++++++++++++ tutorial/additive_manufacturing.csv | 71 + ..._properties.csv => composite_material.csv} | 0 tutorial/lithium_ion_data.csv | 340 ++++ 7 files changed, 1932 insertions(+), 658 deletions(-) rename tutorial/{SMT_MixedInteger_application.ipynb => SMT_MixedInteger.ipynb} (96%) create mode 100644 tutorial/SMT_MixedInteger_Engineering_applications.ipynb create mode 100644 tutorial/additive_manufacturing.csv rename tutorial/{VTF_properties.csv => composite_material.csv} (100%) create mode 100644 tutorial/lithium_ion_data.csv diff --git a/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb b/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb index 68a4ce0c1..1634beb30 100644 --- a/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb +++ b/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb @@ -46,24 +46,10 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "6f6d2d12", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Requirement already satisfied: smt in d:\\bartoli\\anaconda3\\lib\\site-packages (2.0b3)\n", - "Requirement already satisfied: pyDOE2 in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.3.0)\n", - "Requirement already satisfied: scikit-learn in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.0.2)\n", - "Requirement already satisfied: scipy in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.9.1)\n", - "Requirement already satisfied: numpy in d:\\bartoli\\anaconda3\\lib\\site-packages (from pyDOE2->smt) (1.21.6)\n", - "Requirement already satisfied: joblib>=0.11 in d:\\bartoli\\anaconda3\\lib\\site-packages (from scikit-learn->smt) (1.1.0)\n", - "Requirement already satisfied: threadpoolctl>=2.0.0 in d:\\bartoli\\anaconda3\\lib\\site-packages (from scikit-learn->smt) (3.1.0)\n" - ] - } - ], + "outputs": [], "source": [ "#to have the latest version\n", "!pip install smt --pre " @@ -71,7 +57,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "fff43855", "metadata": {}, "outputs": [], @@ -139,19 +125,10 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "ccc49c3b", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Pred_RMSE on the training points 7.397754468383895e-10\n", - "Var_RMSE on the training points 4.657514467135904e-10\n" - ] - } - ], + "outputs": [], "source": [ "def f_neu(x1, x2, x3):\n", " return 2 * x1 + x2 - 0.5 * x3\n", @@ -195,8 +172,7 @@ "\n", "# Perform the mixed integer sampling - LHS DOE\n", "n_doe = 100 \n", - "sampling = MixedIntegerSamplingMethod (LHS , design_space, criterion =\"ese\", random_state =42)\n", - "Xt = sampling (n_doe)\n", + "Xt, _ = design_space.sample_valid_x(n_doe)\n", "Yt = f(Xt)\n", "\n", "# Build the surrogate \n", @@ -209,8 +185,8 @@ " corr=\"abs_exp\",\n", " n_start=5,\n", " print_global=False))\n", - "sm. set_training_values (Xt , Yt)\n", - "sm. train ()\n", + "sm.set_training_values (Xt , Yt)\n", + "sm.train()\n", "\n", "\n", "# Check prediction and variance accuracy \n", @@ -226,21 +202,10 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "9fc88694", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 0.48244912 -0.71338317 -16.70103644] [ 0.48244912 -0.71338317 -16.70103644]\n", - "The outputs must be similar (inactive variables have no effect) 0.0\n", - "[-2.01682311] [9.98277891]\n", - "The outputs must be different (active variables have effect) 11.99960201467982\n" - ] - } - ], + "outputs": [], "source": [ "#To check of some inactive variables have no effect on the output\n", "xv1=np.array([\n", @@ -269,22 +234,10 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "id": "c122b735", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Activation function ['ISRLU', 'SELU', 'ReLU ']\n", - "Batch size [3, 4, 5]\n", - "Number of hidden neurons -1st layer [2, 2, 2]\n", - "Number of hidden neurons -2nd layer [0, 1, 1]\n", - "Number of hidden neurons -3rd layer [0, 0, 5]\n" - ] - } - ], + "outputs": [], "source": [ "#To have access to the \"real\" values of the input space variables\n", "x2_decoded = design_space.decode_values(xv1, i_dv=2)\n", @@ -342,28 +295,10 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "1b3c3727", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Name: numba\n", - "Version: 0.55.1\n", - "Summary: compiling Python code using LLVM\n", - "Home-page: https://numba.pydata.org\n", - "Author: \n", - "Author-email: \n", - "License: BSD\n", - "Location: d:\\bartoli\\anaconda3\\lib\\site-packages\n", - "Requires: llvmlite, numpy, setuptools\n", - "Required-by: datashader\n", - "\"Numba used or not in your environment=\" 1\n" - ] - } - ], + "outputs": [], "source": [ "#to check if numba is available\n", "!pip show numba\n", @@ -373,19 +308,10 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "b2d505b5", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "for 15 points time is = 0.0020842552185058594\n", - "for 150 points time is = 0.0029900074005126953\n" - ] - } - ], + "outputs": [], "source": [ "#compare the CPU time to build a DOE with 15 or 150 points\n", "problem = HierarchicalGoldstein()\n", @@ -465,38 +391,10 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "34f618b6", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Initial DOE given\n", - "Internal optimization succeeded at EGO iter = 0.0\n", - "Internal optimization succeeded at EGO iter = 1.0\n", - "Internal optimization succeeded at EGO iter = 2.0\n", - "Internal optimization succeeded at EGO iter = 3.0\n", - "Internal optimization succeeded at EGO iter = 4.0\n", - "Internal optimization succeeded at EGO iter = 5.0\n", - "Internal optimization succeeded at EGO iter = 6.0\n", - "Internal optimization succeeded at EGO iter = 7.0\n", - "Internal optimization succeeded at EGO iter = 8.0\n", - "Internal optimization succeeded at EGO iter = 9.0\n", - "Internal optimization succeeded at EGO iter = 10.0\n", - "Internal optimization succeeded at EGO iter = 11.0\n", - "Internal optimization succeeded at EGO iter = 12.0\n", - "Internal optimization succeeded at EGO iter = 13.0\n", - "Internal optimization succeeded at EGO iter = 14.0\n", - "Internal optimization succeeded at EGO iter = 15.0\n", - "Internal optimization succeeded at EGO iter = 16.0\n", - "Internal optimization succeeded at EGO iter = 17.0\n", - "Internal optimization succeeded at EGO iter = 18.0\n", - "Internal optimization succeeded at EGO iter = 19.0\n" - ] - } - ], + "outputs": [], "source": [ "def f_obj(X):\n", " \"\"\"\n", @@ -602,87 +500,20 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "a8c7967e", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Final results: [1. 1.] [-0.49903471] 6 [[ 8.51755996e-01 8.00000000e+00]\n", - " [ 7.49080238e-02 7.00000000e+00]\n", - " [ 7.89777107e-01 6.00000000e+00]\n", - " [ 3.93981970e-01 5.00000000e+00]\n", - " [ 4.58428930e-01 0.00000000e+00]\n", - " [ 0.00000000e+00 3.00000000e+00]\n", - " [ 1.00000000e+00 1.00000000e+00]\n", - " [ 6.15146961e-01 1.00000000e+00]\n", - " [ 2.55670161e-01 0.00000000e+00]\n", - " [ 1.00000000e+00 7.00000000e+00]\n", - " [ 6.24565300e-01 8.00000000e+00]\n", - " [ 8.96012593e-01 6.00000000e+00]\n", - " [ 1.00000000e+00 0.00000000e+00]\n", - " [ 7.78892358e-01 3.00000000e+00]\n", - " [ 6.21147886e-01 3.00000000e+00]\n", - " [ 0.00000000e+00 4.00000000e+00]\n", - " [-1.38777878e-17 2.00000000e+00]\n", - " [ 5.00000000e-02 4.00000000e+00]\n", - " [ 4.50000000e-01 1.00000000e+00]\n", - " [ 5.50000000e-01 1.00000000e+00]\n", - " [ 2.50000000e-01 3.00000000e+00]\n", - " [ 1.50000000e-01 2.00000000e+00]\n", - " [ 3.50000000e-01 0.00000000e+00]\n", - " [ 9.05436256e-01 7.00000000e+00]\n", - " [ 4.66293670e-15 6.00000000e+00]] [[ 7.75846253e-01]\n", - " [ 1.94629117e+00]\n", - " [ 1.71003723e-01]\n", - " [ 1.84039447e+00]\n", - " [-3.86204555e-01]\n", - " [ 0.00000000e+00]\n", - " [-4.99034713e-01]\n", - " [ 3.68040264e+00]\n", - " [-1.05907676e-01]\n", - " [ 1.50000000e+00]\n", - " [ 9.52481879e-01]\n", - " [-3.34498595e-01]\n", - " [ 3.09016994e-01]\n", - " [-4.67697665e-01]\n", - " [-2.65971458e-01]\n", - " [ 0.00000000e+00]\n", - " [ 1.00000000e+00]\n", - " [-1.25000000e-03]\n", - " [ 3.07458112e+00]\n", - " [ 3.63947848e+00]\n", - " [ 5.46413837e-02]\n", - " [ 6.62785252e-01]\n", - " [ 3.32287251e-01]\n", - " [ 2.37084501e+00]\n", - " [ 1.00000000e+00]]\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Final results:\", x_opt, y_opt, dnk, x_data, y_data)" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "fc71d62e", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkMAAAHFCAYAAADxOP3DAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABYMElEQVR4nO3deVxU1f8/8NewI8IgOwiCO7hvKWDlGqLiUpaahuKWpeaCZpqZaPlxyzU1zV1T81sumRVKbpmIK2SJkZlrggLKoKjIcn5/+JvJkQFmYGbuDLyej8c8Hs6Zc+9937navDr33HtlQggBIiIiokrKQuoCiIiIiKTEMERERESVGsMQERERVWoMQ0RERFSpMQwRERFRpcYwRERERJUawxARERFVagxDREREVKkxDBEREVGlxjBEJKGrV69CJpNh48aNZVo+ICAAUVFReq2JyFjK+vf34cOHiImJwZEjR/ReE1VOVlIXQFSZeXt748SJE6hdu3aZlt+9ezecnJz0XBWRaXv48CFmzpwJAGjfvr20xVCFwDBEJCFbW1sEBweXefnmzZvrsRoypIKCAuTn58PW1lbqUojoOTxNRlQOMTExkMlkOH/+PN544w3I5XK4uLggOjoa+fn5SElJQXh4OBwdHREQEID58+erLa/pNJlynRcuXMCbb74JuVwOT09PDB06FAqFQm35508zHDlyBDKZDNu2bcMHH3wAb29vVK1aFT169MDt27dx//59vP3223Bzc4ObmxuGDBmCBw8elFiPkkwmQ0xMjN72vTiFhYX4/PPP0axZM9jb28PZ2RnBwcHYu3evWp/58+cjMDAQtra28PDwwKBBg3Dz5k21dbVv3x6NGjXC6dOn8dJLL6FKlSqoVasW5s6di8LCQgBAeno6bGxsMH369CK1/Pnnn5DJZFi2bJmqLS0tDSNHjoSvry9sbGxQs2ZNzJw5E/n5+UW+x/nz5+PTTz9FzZo1YWtri8OHDwMAvvvuOzRp0gS2traoVasWli5dqvo+nyWEwMqVK1XfRbVq1fD666/jn3/+0Xk/lbKysjBx4kTUqlVL9d1169YNf/75p6rPkydP8Omnn6q+X3d3dwwZMgTp6emlHr+oqChUrVoVFy5cQKdOneDg4AB3d3eMGTMGDx8+LHX569ev46233oKHhwdsbW0RFBSEhQsXqvbj6tWrcHd3BwDMnDkTMpkMMpmMp4upfAQRldmMGTMEAFG/fn3xySefiLi4ODF58mQBQIwZM0YEBgaKZcuWibi4ODFkyBABQOzcuVO1/JUrVwQAsWHDBo3r/Pjjj0VcXJxYtGiRsLW1FUOGDFHbvr+/vxg8eLDq/eHDhwUA4e/vL6KiokRsbKxYtWqVqFq1qujQoYN45ZVXxKRJk8SBAwfEvHnzhKWlpXjvvfdKrEcJgJgxY4be9r04kZGRQiaTieHDh4vvvvtO/PTTT2L27Nli6dKlqj5vv/22ajvKfXR3dxd+fn4iPT1d1a9du3bC1dVV1K1bV6xatUrExcWJUaNGCQBi06ZNqn6vvvqq8PPzEwUFBWq1TJ48WdjY2IiMjAwhhBCpqanCz89P+Pv7i9WrV4uff/5ZfPLJJ8LW1lZERUUV+R6rV68uOnToIL799ltx4MABceXKFfHTTz8JCwsL0b59e7F7927xzTffiDZt2oiAgADx/H+SR4wYIaytrcXEiRNFbGys2LZtmwgMDBSenp4iLS1N5/3Mzs4WDRs2FA4ODmLWrFli//79YufOnWLcuHHi0KFDQgghCgoKRHh4uHBwcBAzZ84UcXFxYu3ataJ69eqiQYMG4uHDhyUev8GDBwsbGxtRo0YNMXv2bHHgwAERExMjrKysREREhFrf5//+3rlzR1SvXl24u7uLVatWidjYWDFmzBgBQLz77rtCCCEeP34sYmNjBQAxbNgwceLECXHixAnx999/l1gXUUkYhojKQRkIFi5cqNberFkzAUDs2rVL1ZaXlyfc3d3Fa6+9pmorKQzNnz9fbZ2jRo0SdnZ2orCwUNVWXBjq0aOH2rLjx48XAMTYsWPV2nv37i1cXFxKrEepuDBU1n3X5JdffhEAxLRp04rtc/HiRQFAjBo1Sq395MmTAoD48MMPVW3t2rUTAMTJkyfV+jZo0EB06dJF9X7v3r0CgDhw4ICqLT8/X/j4+Ig+ffqo2kaOHCmqVq0qrl27pra+zz77TAAQFy5cEEL89z3Wrl1bPHnyRK3vCy+8IPz8/ERubq6q7f79+8LV1VUtDJ04cULj93vjxg1hb28vJk+erPN+zpo1SwAQcXFxojjbt2/XGFxPnz4tAIiVK1cWu6wQT8MQALXwKoQQs2fPFgDEr7/+qmp7/u/vlClTNO7Hu+++K2QymUhJSRFCCJGenl7k7yNRefA0GZEeREREqL0PCgqCTCZD165dVW1WVlaoU6cOrl27ptU6e/bsqfa+SZMmePz4Me7cuVOmegCge/fuRdrv3r2rdqpMV/rc959++gkAMHr06GL7KE81PX9apHXr1ggKCsLBgwfV2r28vNC6dWu1tiZNmqjV0rVrV3h5eWHDhg2qtv379+PWrVsYOnSoqm3fvn3o0KEDfHx8kJ+fr3op9/Xo0aNq2+nZsyesra1V73NycnDmzBn07t0bNjY2qnblqcxn7du3DzKZDG+99Zbatry8vNC0adMiV1Jps58//fQT6tWrh86dO6M4+/btg7OzM3r06KG23WbNmsHLy0vrK7gGDhyo9n7AgAEA/jt+mhw6dAgNGjQosh9RUVEQQuDQoUNabZtIV5xATaQHLi4uau9tbGxQpUoV2NnZFWnPzs7Wap2urq5q75UTbx89elSmekpqf/z4MapWrapVXdpsq6z7np6eDktLS3h5eRXbJzMzE8DTK/Ge5+PjUyRwPf89Ak+/y2e/RysrK0RGRuLzzz9HVlYWnJ2dsXHjRnh7e6NLly6qfrdv38b333+vFnCelZGRofb++Rrv3bsHIQQ8PT2LLPt82+3bt4vtCwC1atXSeT/T09NRo0YNjet7drtZWVlqYe1Zz++jJlZWVkXqUR5T5fHTJDMzEwEBAUXafXx8Sl2WqDwYhohIRRlgcnNz1dqN9SPk7u6OgoICpKWlaQw7wH8/+qmpqfD19VX77NatW3BzcyvTtocMGYIFCxbg66+/Rr9+/bB3716MHz8elpaWqj5ubm5o0qQJZs+erXEdyh9tpecnRFerVg0ymQy3b98usmxaWpraezc3N8hkMhw7dkzjFWhluSrN3d29yCTz57m5ucHV1RWxsbEaP3d0dCx1O/n5+cjMzFQLRMr90xTalFxdXZGamlqk/datW6raiAyBp8mISMXT0xN2dnY4f/68Wvt3331nlO0rTzd98cUXxfbp2LEjAOCrr75Saz99+jQuXryITp06lWnbQUFBaNOmDTZs2IBt27YhNzcXQ4YMUesTERGBP/74A7Vr10arVq2KvJ4PQ89zcHBAq1atsGfPHjx58kTV/uDBA+zbt6/ItoQQ+PfffzVuq3HjxjrvY9euXfHXX3+VeLopIiICmZmZKCgo0Ljd+vXra7WtrVu3qr3ftm0bgJLvC9SpUyckJyfj3Llzau2bN2+GTCZDhw4dAOg2SkqkDY4MEZGKco7K+vXrUbt2bTRt2hSnTp1S/ZAZ2ksvvYTIyEh8+umnuH37NiIiImBra4vExERUqVIF7733HurXr4+3334bn3/+OSwsLNC1a1dcvXoV06dPh5+fHyZMmFDm7Q8dOhQjR47ErVu3EBoaWuSHf9asWYiLi0NoaCjGjh2L+vXr4/Hjx7h69Sp+/PFHrFq1qsho1fNmzZqF7t27o0uXLhg3bhwKCgqwYMECVK1aFXfv3lX1a9u2Ld5++20MGTIEZ86cwcsvvwwHBwekpqbi119/RePGjfHuu+/qtH/jx4/Hjh070KtXL0yZMgWtW7fGo0ePcPToUURERKBDhw7o378/tm7dim7dumHcuHFo3bo1rK2tcfPmTRw+fBi9evXCq6++WuJ2bGxssHDhQjx48AAvvPAC4uPj8emnn6Jr16548cUXi11uwoQJ2Lx5M7p3745Zs2bB398fP/zwA1auXIl3330X9erVA/B0dMrf3x/fffcdOnXqBBcXF7i5uWk8xUakDYYhIlKzcOFCAMD8+fPx4MEDdOzYEfv27TPaD83GjRvRokULrFu3Dhs3boS9vT0aNGiADz/8UNXniy++QO3atbFu3TqsWLECcrkc4eHhmDNnTomnYUrTv39/jB8/Hjdv3sSMGTOKfO7t7Y0zZ87gk08+wYIFC3Dz5k04OjqiZs2aCA8PR7Vq1UrdRnh4OHbu3ImPP/4Y/fr1g5eXF0aNGoVbt25hy5Ytan1Xr16N4OBgrF69GitXrkRhYSF8fHzQtm3bIpOMteHo6Ihff/0VMTEx+PLLLzFz5kxUq1YNL7zwAt5++20AgKWlJfbu3YulS5diy5YtmDNnDqysrODr64t27dppNSJlbW2Nffv2YezYsfj0009hb2+PESNGYMGCBSUu5+7ujvj4eEydOhVTp05FdnY2atWqhfnz5yM6Olqt77p16/D++++jZ8+eyM3NxeDBg8v8WBsimRBCSF0EEVFllpeXh2bNmqF69eo4cOCA1OWUS1RUFL799ttyXaFIZGwcGSIiMrJhw4bhlVdegbe3N9LS0rBq1SpcvHgRS5culbo0okqJYYiIyMju37+PSZMmIT09HdbW1mjRogV+/PHHEu//Q0SGw9NkREREVKnx0noiIiKq1BiGiIiIqFIzuzC0cuVK1KxZE3Z2dmjZsiWOHTtWbN9du3bhlVdegbu7O5ycnBASEoL9+/cbsVoiIiIydWY1Z2jHjh2IjIzEypUr0bZtW6xevRpr165FcnKyxuftjB8/Hj4+PujQoQOcnZ2xYcMGfPbZZzh58iSaN2+u1TYLCwtx69YtODo6Frm1PhEREZkmIQTu378PHx8fWFiUMvZT/gffG0/r1q3FO++8o9YWGBgopkyZovU6GjRoIGbOnKl1/xs3bggAfPHFF1988cWXGb5u3LhR6m+92Vxa/+TJE5w9exZTpkxRaw8LC0N8fLxW6ygsLMT9+/eLPGX7Wbm5uWoPqRT/f+Dsxo0bcHJyKkPlREREZGzZ2dnw8/PT6uHCZhOGMjIyUFBQAE9PT7V2T0/PIk97Ls7ChQuRk5ODvn37Fttnzpw5mDlzZpF2JycnhiEiIiIzo80UF7ObQP38TgkhtNrR7du3IyYmBjt27ICHh0ex/aZOnQqFQqF63bhxo9w1ExERkekym5EhNzc3WFpaFhkFunPnTpHRouft2LEDw4YNwzfffFPqHV5tbW1ha2tb7nqJiIjIPJjNyJCNjQ1atmyJuLg4tfa4uDiEhoYWu9z27dsRFRWFbdu2oXv37oYuk4iIiMyM2YwMAUB0dDQiIyPRqlUrhISE4Msvv8T169fxzjvvAHh6iuvff//F5s2bATwNQoMGDcLSpUsRHBysGlWyt7eHXC6XbD+IiCqzgoIC5OXlSV0GmTlra2tYWlrqZV1mFYb69euHzMxMzJo1C6mpqWjUqBF+/PFH+Pv7AwBSU1Nx/fp1Vf/Vq1cjPz8fo0ePxujRo1XtgwcPxsaNG41dPhFRpSaEQFpaGrKysqQuhSoIZ2dneHl5lfs+gGZ100UpZGdnQy6XQ6FQ8GoyIqJySE1NRVZWFjw8PFClShXeyJbKTAiBhw8f4s6dO3B2doa3t3eRPrr8fpvVyBAREZmngoICVRBydXWVuhyqAOzt7QE8vZDKw8OjXKfMzGYCNRERmS/lHKEqVapIXAlVJMq/T+Wdg8YwRERERsNTY6RP+vr7xDBERERElRrDEBERkZk4dOgQAgMDUVhYKHUpBpWbm4saNWrg7NmzRtkewxAREVExoqKiIJPJirzCw8PV+iUmJqJfv37w9vaGra0t/P39ERERge+//x7PX7S9adMmtG7dGg4ODnB0dMTLL7+Mffv2aVXP5MmTMW3aNFhYPP35LigowJw5cxAYGAh7e3u4uLggODgYGzZsKLIPynvyPWvUqFGQyWSIiooCAI37+uxL2U/T99S7d+8i7UeOHIFMJlPdTuH5988KCAjAkiVLADx9GsSkSZPwwQcfaPW9lBfDkEQeP36Ma9euITU1VepSiIioBOHh4UhNTVV7bd++XfX5d999h+DgYDx48ACbNm1CcnIyvvnmG/Tu3RsfffQRFAqFqu+kSZMwcuRI9O3bF7/99htOnTqFl156Cb169cLy5ctLrCM+Ph6XLl3CG2+8oWqLiYnBkiVL8MknnyA5ORmHDx/GiBEjcO/ePbVl/fz88PXXX+PRo0eqtsePH2P79u2oUaOGqu3ZfVyyZAmcnJzU2pYuXVrm71FXAwcOxLFjx3Dx4kWDb4uX1ktk9uzZ+PTTTzFq1CisWLFC6nKIiKgYtra28PLy0vhZTk4Ohg0bhu7du2PXrl2q9tq1a6N169YYPny4amQoISEBCxcuxLJly/Dee++p+s6ePRuPHz9GdHQ0evXqBT8/P43b+vrrrxEWFgY7OztV2/fff49Ro0apBaSmTZsWWbZFixb4559/sGvXLgwcOBAAsGvXLvj5+aFWrVqqfs/up1wuh0wmK3bfDc3V1RWhoaHYvn07Zs2aZdBtcWRIIh4eHgCe3h+BiKgyEkIgJyfH6C993mv4wIEDyMzMxOTJk4vto7ziafv27ahatSpGjhxZpM/EiRORl5eHnTt3FrueX375Ba1atVJr8/LywqFDh5Cenl5qrUOGDFE7fbZ+/XoMHTq01OWk1Lp1axw7dszg2+HIkETc3d0BQKu/wEREFdHDhw9RtWpVo2/3wYMHcHBw0Lr/vn37itT5wQcfYPr06fjrr78AAPXr11d9dvr0aXTo0EH1/uuvv0ZERAT++usv1K5dGzY2NkW24ePjA7lcrlqfJlevXoWPj49a26JFi/D666/Dy8sLDRs2RGhoKHr16oWuXbsWWT4yMhJTp07F1atXIZPJcPz4cXz99dc4cuSIVt9DaTR9TwUFBRr7+vr6Fml7+PBhkbbq1avj6tWreqmvJAxDEuHIEBGReejQoQO++OILtTYXF5di+zdp0gRJSUkAgLp16yI/P1+r7QghSrxvzqNHj9ROkQFAgwYN8Mcff+Ds2bP49ddf8csvv6BHjx6IiorC2rVr1fq6ubmhe/fu2LRpE4QQ6N69O9zc3LSqTRuavqeTJ0/irbfeKtL32LFjcHR0VGtr3759kX729vYaQ5K+MQxJhGGIiCq7KlWq4MGDB5JsVxcODg6oU6eOxs/q1q0LAEhJSUFwcDCAp3OMNPWvV68efv31Vzx58qTI6NCtW7eQnZ2tWp8mbm5uRSZGA4CFhQVeeOEFvPDCC5gwYQK++uorREZGYtq0aahZs6Za36FDh2LMmDEAoPf5qpq+p5s3b2rsW7NmTTg7O6u1WVkVjSR3795VnUkxJIYhiSjDUGZmJvLz8zX+JSAiqshkMplOp6tMUVhYGFxcXDBv3jzs3r27xL79+/fHsmXLsHr1arUJ1ADw2WefwdraGn369Cl2+ebNmyM5ObnUmho0aADg6eTu54WHh+PJkycAgC5dupS6Lqn98ccfaN68ucG3w19gibi6ukImk0EIgczMTHh6ekpdEhERaZCbm4u0tDS1NisrK7i5uaFq1apYu3Yt+vXrh+7du2Ps2LGoW7cuHjx4gNjYWABQPUA0JCQE48aNw/vvv48nT56gd+/eyMvLw1dffYWlS5diyZIlxV5JBjwNL5s2bVJre/3119G2bVuEhobCy8sLV65cwdSpU1GvXj0EBgYWWYelpaXqUvXyPNjUWI4dO4ZPPvnE4Nvh1WQSsbS0VD25mafKiIhMV2xsLLy9vdVeL774ourzV199FfHx8ahSpQoGDRqE+vXro2PHjjh06JBq8rTSkiVLsHLlSnz99ddo3LgxWrZsiaNHj2LPnj1FRoue99ZbbyE5ORkpKSmqti5duuD7779Hjx49UK9ePQwePBiBgYE4cOBAsWccnJyc4OTkVM5vxfBOnDgBhUKB119/3eDbkgl9XmNYAWVnZ0Mul0OhUOj9L0/Dhg2RnJyMn3/+GZ06ddLruomITMnjx49x5coV1KxZs8gkYNLe5MmToVAosHr1aqlLMbg33ngDzZs3x4cfflhsn5L+Xuny+82RIQlxEjUREeli2rRp8Pf3L/aS9YoiNzcXTZs2xYQJE4yyPc4ZkhDvNURERLqQy+UljpRUFLa2tvjoo4+Mtj2ODEmII0NERETSYxiSEMMQERGR9BiGJKQ8TcYwRESVBa/ZIX3S198nhiEJKUeGOGeIiCo6a2trAJqfP0VUVsq/T8q/X2XFCdQS4mkyIqosLC0t4ezsrPrvXZUqVUp8DhdRSYQQePjwIe7cuQNnZ+dy30CSYUhCDENEVJl4eXkB4H/zSH+cnZ1Vf6/Kg2FIQso5Q9nZ2cjNzYWtra3EFRERGY5MJoO3tzc8PDyQl5cndTlk5qytrfX2SBGGIQk5OzvDysoK+fn5SE9Ph6+vr9QlEREZnKWlpVk8F4sqD06glpCFhQWvKCMiIpIYw5DEOG+IiIhIWgxDEuPIEBERkbQYhiTGew0RERFJi2FIYjxNRkREJC2GIYkxDBEREUmLYUhiyjlDPE1GREQkDYYhiXFkiIiISFoMQxJjGCIiIpIWw5DEGIaIiIikxTAkMeWcoUePHiEnJ0fiaoiIiCofhiGJVa1aFXZ2dgA4OkRERCQFhiGJyWQyniojIiKSkNmFoZUrV6JmzZqws7NDy5YtcezYsWL7pqamYsCAAahfvz4sLCwwfvx44xWqA4YhIiIi6ZhVGNqxYwfGjx+PadOmITExES+99BK6du2K69eva+yfm5sLd3d3TJs2DU2bNjVytdrjvYaIiIikY1ZhaNGiRRg2bBiGDx+OoKAgLFmyBH5+fvjiiy809g8ICMDSpUsxaNAgyOVyI1erPY4MERERScdswtCTJ09w9uxZhIWFqbWHhYUhPj5eoqr0g2GIiIhIOlZSF6CtjIwMFBQUwNPTU63d09MTaWlpettObm4ucnNzVe+zs7P1tu7iMAwRERFJx2xGhpRkMpnaeyFEkbbymDNnDuRyuerl5+ent3UXh3OGiIiIpGM2YcjNzQ2WlpZFRoHu3LlTZLSoPKZOnQqFQqF63bhxQ2/rLg5HhoiIiKRjNmHIxsYGLVu2RFxcnFp7XFwcQkND9bYdW1tbODk5qb0MjWGIiIhIOmYzZwgAoqOjERkZiVatWiEkJARffvklrl+/jnfeeQfA01Gdf//9F5s3b1Ytk5SUBAB48OAB0tPTkZSUBBsbGzRo0ECKXdBIGYbS09P1ftqPiIiISmZWYahfv37IzMzErFmzkJqaikaNGuHHH3+Ev78/gKc3WXz+nkPNmzdX/fns2bPYtm0b/P39cfXqVWOWXiLlnKG8vDwoFAo4OztLWxAREVElIhNCCKmLMGXZ2dmQy+VQKBQGPWXm5OSE+/fvIyUlBfXq1TPYdoiIiCoDXX6/zWbOUEXHeUNERETSYBgyEQxDRERE0mAYMhG81xAREZE0GIZMBEeGiIiIpMEwZCIYhoiIiKTBMGQiGIaIiIikwTBkIjhniIiISBoMQyaCI0NERETSYBgyEQxDRERE0mAYMhHK02QZGRkoKCiQuBoiIqLKg2HIRLi5uQEAhBC4e/euxNUQERFVHgxDJsLa2houLi4AeKqMiIjImBiGTAjnDRERERkfw5AJ4eX1RERExscwZEI4MkRERGR8DEMmhGGIiIjI+BiGTAjDEBERkfExDJkQzhkiIiIyPoYhE8KRISIiIuNjGDIhDENERETGxzBkQhiGiIiIjI9hyIQo5wxlZWXhyZMnEldDRERUOTAMmRAXFxdYWDw9JBkZGRJXQ0REVDkwDJkQCwsL1egQT5UREREZB8OQieG8ISIiIuNiGDIxvNcQERGRcTEMmRiODBERERkXw5CJYRgiIiIyLoYhE8MwREREZFwMQyaGc4aIiIiMi2HIxHBkiIiIyLgYhkwMwxAREZFxMQyZGIYhIiIi42IYMjHKOUM5OTl4+PChxNUQERFVfAxDJsbJyQk2NjYAOImaiIjIGBiGTIxMJuOpMiIiIiNiGDJBDENERETGwzBkgnivISIiIuNhGDJBHBkiIiIyHrMLQytXrkTNmjVhZ2eHli1b4tixYyX2P3r0KFq2bAk7OzvUqlULq1atMlKlZccwREREZDxmFYZ27NiB8ePHY9q0aUhMTMRLL72Erl274vr16xr7X7lyBd26dcNLL72ExMREfPjhhxg7dix27txp5Mp1wzBERERkPGYVhhYtWoRhw4Zh+PDhCAoKwpIlS+Dn54cvvvhCY/9Vq1ahRo0aWLJkCYKCgjB8+HAMHToUn332mZEr1w3nDBERERmP2YShJ0+e4OzZswgLC1NrDwsLQ3x8vMZlTpw4UaR/ly5dcObMGeTl5Rms1vLiyBAREZHxWEldgLYyMjJQUFAAT09PtXZPT0+kpaVpXCYtLU1j//z8fGRkZMDb27vIMrm5ucjNzVW9z87O1kP1umEYIiIiMh6zGRlSkslkau+FEEXaSuuvqV1pzpw5kMvlqpefn185K9bds6fJlPUSERGRYZhNGHJzc4OlpWWRUaA7d+4UGf1R8vLy0tjfysoKrq6uGpeZOnUqFAqF6nXjxg397IAOlGEoNzcX9+/fN/r2iYiIKhOzCUM2NjZo2bIl4uLi1Nrj4uIQGhqqcZmQkJAi/Q8cOIBWrVrB2tpa4zK2trZwcnJSexmbg4MDHBwcAPBUGRERkaGZTRgCgOjoaKxduxbr16/HxYsXMWHCBFy/fh3vvPMOgKejOoMGDVL1f+edd3Dt2jVER0fj4sWLWL9+PdatW4dJkyZJtQta47whIiIi4zCbCdQA0K9fP2RmZmLWrFlITU1Fo0aN8OOPP8Lf3x8AkJqaqnbPoZo1a+LHH3/EhAkTsGLFCvj4+GDZsmXo06ePVLugNXd3d1y5coWX1xMRERmYWYUhABg1ahRGjRql8bONGzcWaWvXrh3OnTtn4Kr0jyNDRERExmFWp8kqE4YhIiIi42AYMlEMQ0RERMbBMGSi+EgOIiIi42AYMlEcGSIiIjIOhiETxTBERERkHAxDJophiIiIyDgYhkyUcs5QRkYGCgsLJa6GiIio4mIYMlHKMFRQUIB79+5JXA0REVHFxTBkomxsbODs7AyAp8qIiIgMiWHIhHHeEBERkeExDJkw3muIiIjI8BiGTBhHhoiIiAyPYciEMQwREREZHsOQCWMYIiIiMjyGIRPGOUNERESGxzBkwjgyREREZHgMQyaMYYiIiMjwGIZMGMMQERGR4TEMmTDlnKG7d+8iPz9f4mqIiIgqJoYhE+bq6gqZTAbg6QNbiYiISP8YhkyYpaUl3NzcAPBUGRERkaEwDJk4zhsiIiIyLIYhE8d7DRERERlWmcLQ5cuX8dFHH+HNN99UjVjExsbiwoULei2OODJERERkaDqHoaNHj6Jx48Y4efIkdu3ahQcPHgAAzp8/jxkzZui9wMqOYYiIiMiwdA5DU6ZMwaeffoq4uDjY2Nio2jt06IATJ07otTj6LwzxNBkREZFh6ByGfv/9d7z66qtF2t3d3ZGZmamXoug/yjlDHBkiIiIyDJ3DkLOzM1JTU4u0JyYmonr16nopiv7D02RERESGpXMYGjBgAD744AOkpaVBJpOhsLAQx48fx6RJkzBo0CBD1FipMQwREREZls5haPbs2ahRowaqV6+OBw8eoEGDBnj55ZcRGhqKjz76yBA1Vmq8tJ6IiMiwZEIIUZYFL1++jMTERBQWFqJ58+aoW7euvmszCdnZ2ZDL5VAoFHBycjL69u/duwcXFxcAwKNHj2BnZ2f0GoiIiMyNLr/fVmXdSO3atVG7du2yLk5acnZ2hpWVFfLz85Geng4/Pz+pSyIiIqpQdA5DQ4cOLfHz9evXl7kYKkomk8HDwwO3bt3CnTt3GIaIiIj0TOcwdO/ePbX3eXl5+OOPP5CVlYWOHTvqrTD6j7u7O27dusV5Q0RERAagcxjavXt3kbbCwkKMGjUKtWrV0ktRpI5XlBERERmOXh7UamFhgQkTJmDx4sX6WB09h2GIiIjIcPT21PrLly8jPz9fX6ujZzAMERERGY7Op8mio6PV3gshkJqaih9++AGDBw/WW2H0H95riIiIyHB0DkOJiYlq7y0sLODu7o6FCxeWeqUZlQ1HhoiIiAxH5zB0+PBhQ9RBJWAYIiIiMhy9zRkytHv37iEyMhJyuRxyuRyRkZHIysoqcZldu3ahS5cucHNzg0wmQ1JSklFq1TeGISIiIsPRamSoefPmkMlkWq3w3Llz5SqoOAMGDMDNmzcRGxsLAHj77bcRGRmJ77//vthlcnJy0LZtW7zxxhsYMWKEQeoyhmfnDAkhtD4WREREVDqtwlDv3r0NXEbJLl68iNjYWCQkJKBNmzYAgDVr1iAkJAQpKSmoX7++xuUiIyMBAFevXjVWqQahHBl69OgRcnJyULVqVYkrIiIiqji0CkMzZswwdB0lOnHiBORyuSoIAUBwcDDkcjni4+OLDUNlkZubi9zcXNX77Oxsva27rBwcHGBvb49Hjx7hzp07DENERER6ZBZzhtLS0lSjI8/y8PBAWlqaXrc1Z84c1bwkuVxuEs8CUz6fDOC8ISIiIn3TOQwVFBTgs88+Q+vWreHl5QUXFxe1ly5iYmIgk8lKfJ05cwYANM6TMcT8malTp0KhUKheN27c0Ov6y4r3GiIiIjIMnS+tnzlzJtauXYvo6GhMnz4d06ZNw9WrV7Fnzx58/PHHOq1rzJgx6N+/f4l9AgICcP78edy+fbvIZ+np6fD09NRpm6WxtbWFra2tXtepDxwZIiIiMgydw9DWrVuxZs0adO/eHTNnzsSbb76J2rVro0mTJkhISMDYsWO1Xpebmxvc3NxK7RcSEgKFQoFTp06hdevWAICTJ09CoVAgNDRU110wSwxDREREhqHzabK0tDQ0btwYAFC1alUoFAoAQEREBH744Qf9Vvf/BQUFITw8HCNGjEBCQgISEhIwYsQIREREqE2eDgwMxO7du1Xv7969i6SkJCQnJwMAUlJSkJSUpPd5RsbAMERERGQYOochX19fpKamAgDq1KmDAwcOAABOnz5t0NNLW7duRePGjREWFoawsDA0adIEW7ZsUeuTkpKiCmcAsHfvXjRv3hzdu3cHAPTv3x/NmzfHqlWrDFanoXDOEBERkWHofJrs1VdfxcGDB9GmTRuMGzcOb775JtatW4fr169jwoQJhqgRAODi4oKvvvqqxD5CCLX3UVFRiIqKMlhNxsSRISIiIsPQOQzNnTtX9efXX38dfn5+OH78OOrUqYOePXvqtTj6D8MQERGRYegchh4+fIgqVaqo3rdp00btZohkGAxDREREhqHznCEPDw+89dZb2L9/PwoLCw1RE2nw/PPJiIiISD90DkObN29Gbm4uXn31Vfj4+GDcuHE4ffq0IWqjZyjDUH5+PrKysqQthoiIqALROQy99tpr+Oabb3D79m3MmTMHFy9eRGhoKOrVq4dZs2YZokYCYGdnBycnJwA8VUZERKRPZX42maOjI4YMGYIDBw7gt99+g4ODA2bOnKnP2ug5ynlDvLyeiIhIf8ochh4/foz/+7//Q+/evdGiRQtkZmZi0qRJ+qyNnqM8VcaRISIiIv3R+WqyAwcOYOvWrdizZw8sLS3x+uuvY//+/WjXrp0h6qNn8IoyIiIi/dM5DPXu3Rvdu3fHpk2b0L17d1hbWxuiLtKAYYiIiEj/dA5DaWlpqom8ZFycM0RERKR/Os8ZYhCSDucMERER6V+ZJ1CT8fE0GRERkf4xDJkRhiEiIiL9YxgyI5wzREREpH9lDkN///039u/fj0ePHgEAn5dlBMo5QxkZGSgoKJC4GiIioopB5zCUmZmJzp07o169eujWrRtSU1MBAMOHD8fEiRP1XiD9x83NDcDT4JmZmSlxNURERBWDzmFowoQJsLKywvXr11GlShVVe79+/RAbG6vX4kidlZUVXF1dAXDeEBERkb6U6Q7U+/fvh6+vr1p73bp1ce3aNb0VRpq5u7sjMzOT84aIiIj0ROeRoZycHLURIaWMjAzY2trqpSgqHq8oIyIi0i+dw9DLL7+MzZs3q97LZDIUFhZiwYIF6NChg16Lo6IYhoiIiPRL59NkCxYsQPv27XHmzBk8efIEkydPxoULF3D37l0cP37cEDXSMxiGiIiI9EvnkaEGDRrg/PnzaN26NV555RXk5OTgtddeQ2JiImrXrm2IGukZysvrOWeIiIhIP3QeGQIALy8vzJw5U9+1kBY4MkRERKRfOo8M1axZE9OnT0dKSooh6qFSMAwRERHpl85h6L333kNsbCyCgoLQsmVLLFmyRHXjRTI8hiEiIiL90jkMRUdH4/Tp0/jzzz8RERGBL774AjVq1EBYWJjaVWZkGJwzREREpF8yoYeHiiUkJODdd9/F+fPnK9wzs7KzsyGXy6FQKODk5CR1OcjMzFQ9liM3Nxc2NjYSV0RERGR6dPn9LtMEaqVTp05h27Zt2LFjBxQKBV5//fXyrI60UK1aNVhaWqKgoADp6emoXr261CURERGZNZ1Pk/3111+YMWMG6tati7Zt2yI5ORlz587F7du3sWPHDkPUSM+wsLBQnSrjvCEiIqLy03lkKDAwEK1atcLo0aPRv39/eHl5GaIuKoG7uzvS0tI4b4iIiEgPdA5Df/75J+rVq2eIWkhLvKKMiIhIf3Q+TcYgJD2GISIiIv3RamTIxcUFf/31F9zc3FCtWjXIZLJi+969e1dvxZFmDENERET6o1UYWrx4MRwdHVV/LikMkeHxXkNERET6o1UYGjx4sOrPUVFRhqqFtMSRISIiIv3Rec6QpaWlxh/hzMxMWFpa6qUoKhnDEBERkf7oHIaKu2E174ZsPMowxNNkRERE5af1pfXLli0DAMhkMqxduxZVq1ZVfVZQUIBffvkFgYGB+q+QiuBNF4mIiPRH6zC0ePFiAE9HhlatWqV2SszGxgYBAQFYtWqV/iukIpQjQzk5OcjJyYGDg4PEFREREZkvrU+TXblyBVeuXEG7du3w22+/qd5fuXIFKSkp2L9/P9q0aWOwQu/du4fIyEjI5XLI5XJERkYiKyur2P55eXn44IMP0LhxYzg4OMDHxweDBg3CrVu3DFajsTg6OsLW1hYAT5URERGVl85zhg4fPoxq1aoZopYSDRgwAElJSYiNjUVsbCySkpIQGRlZbP+HDx/i3LlzmD59Os6dO4ddu3bhr7/+Qs+ePY1YtWHIZDLOGyIiItITnR/H8frrr6NVq1aYMmWKWvuCBQtw6tQpfPPNN3orTunixYuIjY1FQkKCavRpzZo1CAkJQUpKCurXr19kGblcjri4OLW2zz//HK1bt8b169dRo0YNvddpTO7u7rhx4wbnDREREZWTziNDR48eRffu3Yu0h4eH45dfftFLUc87ceIE5HK52mm44OBgyOVyxMfHa70ehUIBmUwGZ2fnYvvk5uYiOztb7WWKeHk9ERGRfugchh48eKDxEnpra2uDBYe0tDTVj/+zPDw8kJaWptU6Hj9+jClTpmDAgAFwcnIqtt+cOXNU85Lkcjn8/PzKXLchMQwRERHph85hqFGjRtixY0eR9q+//hoNGjTQaV0xMTGQyWQlvs6cOQMAGh8BIoTQ6tEgeXl56N+/PwoLC7Fy5coS+06dOhUKhUL1unHjhk77ZCycM0RERKQfOs8Zmj59Ovr06YPLly+jY8eOAICDBw9i+/btOs8XGjNmDPr3719in4CAAJw/fx63b98u8ll6ejo8PT1LXD4vLw99+/bFlStXcOjQoRJHhQDA1tZWdaWWKeO9hoiIiPRD5zDUs2dP7NmzB//73//w7bffwt7eHk2aNMHPP/+Mdu3a6bQuNzc3uLm5ldovJCQECoUCp06dQuvWrQEAJ0+ehEKhQGhoaLHLKYPQpUuXcPjwYbi6uupUnynjaTIiIiL90DkMAUD37t01TqI2lKCgIISHh2PEiBFYvXo1AODtt99GRESE2pVkgYGBmDNnDl599VXk5+fj9ddfx7lz57Bv3z4UFBSo5he5uLiY/aNDGIaIiIj0Q+c5QwCQlZWFtWvX4sMPP8Tdu3cBAOfOncO///6r1+KetXXrVjRu3BhhYWEICwtDkyZNsGXLFrU+KSkpUCgUAICbN29i7969uHnzJpo1awZvb2/VS5cr0EwV5wwRERHph84jQ+fPn0fnzp0hl8tx9epVDB8+HC4uLti9ezeuXbuGzZs3G6JOuLi44Kuvviqxz7MPkQ0ICCj2obIVwbNzhrSdSE5ERERF6TwyFB0djaioKFy6dAl2dnaq9q5duxrsPkNUlDIMPXnyxGTvhURERGQOdA5Dp0+fxsiRI4u0V69eXet7/lD5ValSBVWrVgXAeUNERETloXMYsrOz0zgSkZKSohqtIONQft+cN0RERFR2OoehXr16YdasWcjLywPw9GaI169fx5QpU9CnTx+9F0jF4xVlRERE5adzGPrss8+Qnp4ODw8PPHr0CO3atUOdOnXg6OiI2bNnG6JGKgbDEBERUfnpfDWZk5MTfv31Vxw6dAjnzp1DYWEhWrRogc6dOxuiPioBwxAREVH5lemmiwDQsWNH1eM4SBqcM0RERFR+WoWhZcuW4e2334adnR2WLVtWYt+qVauiYcOGaNOmjV4KpOJxZIiIiKj8tApDixcvxsCBA2FnZ4fFixeX2Dc3Nxd37tzBhAkTsGDBAr0USZoxDBEREZWfVmHoypUrGv9cnLi4OAwYMIBhyMAYhoiIiMqvTM8mK82LL76Ijz76yBCrpmdwzhAREVH5lSkMHTx4EBEREahduzbq1KmDiIgI/Pzzz6rP7e3tMW7cOL0VSZo9+7DWwsJCiashIiIyTzqHoeXLlyM8PByOjo4YN24cxo4dCycnJ3Tr1g3Lly83RI1UDDc3NwBAYWEh7t69K3E1RERE5kkmdHy0e/Xq1TF16lSMGTNGrX3FihWYPXs2bt26pdcCpZadnQ25XA6FQgEnJyepyynCxcUF9+7dw4ULF9CgQQOpyyEiIjIJuvx+6zwylJ2djfDw8CLtYWFhfHq6BDhviIiIqHx0DkM9e/bE7t27i7R/99136NGjh16KIu3xijIiIqLy0fqmi0pBQUGYPXs2jhw5gpCQEABAQkICjh8/jokTJxqmSioWwxAREVH5aH3TxWdVq1YNycnJSE5OVrU5Oztj/fr1vKTeyJ69ooyIiIh0p/NNF8m0KOcMcWSIiIiobMp808WMjAxkZmbqsxYqA54mIyIiKh+dwlBWVhZGjx4NNzc3eHp6wsPDA25ubhgzZgyysrIMVCKVhGGIiIiofLQ6TQYAd+/eRUhICP79918MHDgQQUFBEELg4sWL2LhxIw4ePIj4+HhUq1bNkPXSczhniIiIqHy0DkOzZs2CjY0NLl++DE9PzyKfhYWFYdasWaU+1Z70i3OGiIiIykfr02R79uzBZ599ViQIAYCXlxfmz5+v8f5DZFjKkaG7d+8iLy9P4mqIiIjMj9ZhKDU1FQ0bNiz280aNGiEtLU0vRZH2XFxcYGHx9DBmZGRIXA0REZH50ToMubm54erVq8V+fuXKFbi6uuqjJtKBpaWl6oGtnDdERESkO63DUHh4OKZNm4YnT54U+Sw3NxfTp0/X+MwyMjzOGyIiIio7rSdQz5w5E61atULdunUxevRoBAYGAgCSk5OxcuVK5ObmYsuWLQYrlIrn4eGBCxcuMAwRERGVgdZhyNfXFydOnMCoUaMwdepUCCEAADKZDK+88gqWL18OPz8/gxVKxeO9hoiIiMpO6zAEADVr1sRPP/2Ee/fu4dKlSwCAOnXqwMXFxSDFkXZ4ryEiIqKy0ykMKVWrVg2tW7fWdy1URpwzREREVHZlfjYZmQ6eJiMiIio7hqEKgGGIiIio7BiGKgDOGSIiIio7hqEKgHOGiIiIyo5hqAJQjgzdv38fjx49krgaIiIi88IwVAHI5XJYW1sD4KkyIiIiXTEMVQAymUx1qoxhiIiISDcMQxUErygjIiIqG7MJQ/fu3UNkZCTkcjnkcjkiIyORlZVV4jIxMTEIDAyEg4MDqlWrhs6dO+PkyZPGKdjIGIaIiIjKxmzC0IABA5CUlITY2FjExsYiKSkJkZGRJS5Tr149LF++HL///jt+/fVXBAQEICwsrEKeSmIYIiIiKpsyPY7D2C5evIjY2FgkJCSgTZs2AIA1a9YgJCQEKSkpqF+/vsblBgwYoPZ+0aJFWLduHc6fP49OnToZvG5j4pwhIiKisjGLkaETJ05ALperghAABAcHQy6XIz4+Xqt1PHnyBF9++SXkcjmaNm1abL/c3FxkZ2ervcwBR4aIiIjKxizCUFpamurH/lkeHh5IS0srcdl9+/ahatWqsLOzw+LFixEXFwc3N7di+8+ZM0c1L0kul8PPz6/c9RsDwxAREVHZSBqGYmJiIJPJSnydOXMGwNPLx58nhNDY/qwOHTogKSkJ8fHxCA8PR9++fUsMDFOnToVCoVC9bty4Ub6dNBKGISIiorKRdM7QmDFj0L9//xL7BAQE4Pz587h9+3aRz9LT0+Hp6Vni8g4ODqhTpw7q1KmD4OBg1K1bF+vWrcPUqVM19re1tYWtra32O2EiOGeIiIiobCQNQ25ubiWeslIKCQmBQqHAqVOn0Lp1awDAyZMnoVAoEBoaqtM2hRDIzc0tU72m7NmRIW1GzIiIiOgps5gzFBQUhPDwcIwYMQIJCQlISEjAiBEjEBERoXYlWWBgIHbv3g0AyMnJwYcffoiEhARcu3YN586dw/Dhw3Hz5k288cYbUu2KwSjD0OPHj/HgwQOJqyEiIjIfZhGGAGDr1q1o3LgxwsLCEBYWhiZNmmDLli1qfVJSUqBQKAAAlpaW+PPPP9GnTx/Uq1cPERERSE9Px7Fjx9CwYUMpdsGgHBwcUKVKFQCcN0RERKQLmRBCSF2EKcvOzoZcLodCoYCTk5PU5ZQoICAA165dw4kTJxAcHCx1OURERJLR5ffbbEaGqHS8ooyIiEh3DEMVCMMQERGR7hiGKhBlGOLl9URERNpjGKpAlPca4sgQERGR9hiGKhCeJiMiItIdw1AFwjBERESkO4ahCoRzhoiIiHTHMFSBcM4QERGR7hiGKpBnR4YKCwslroaIiMg8MAxVIMqRofz8fGRlZUlbDBERkZlgGKpAbG1tIZfLAXDeEBERkbYYhioYzhsiIiLSDcNQBcPL64mIiHTDMFTBMAwRERHphmGoguG9hoiIiHTDMFTBcM4QERGRbhiGKhieJiMiItINw1AFwzBERESkG4ahCoZzhoiIiHTDMFTBcM4QERGRbhiGKhjlyFBmZiby8/MlroaIiMj0MQxVMK6urpDJZBBCIDMzU+pyiIiITB7DUAVjZWUFFxcXAJw3REREpA2GoQqIV5QRERFpj2GoAmIYIiIi0h7DUAXEMERERKQ9hqEKSHl5PecMERERlY5hqALiyBAREZH2GIYqIIYhIiIi7TEMVUAMQ0RERNpjGKqAOGeIiIhIewxDFRBHhoiIiLTHMFQBKcOQQqFAbm6uxNUQERGZNoahCsjZ2RlWVlYAgIyMDImrISIiMm0MQxWQhYUF3NzcAPBUGRERUWmspC6ADMPDwwNpaWkYNWqUKhjpW6tWrfDxxx9DJpMZZP1ERETGwDBUQdWvXx/nz59HQkKCwbaxb98+dO7cGW3btjXYNoiIiAyNYaiCWrlyJSIiIpCfn2+Q9X/77bf46aefsHz5coYhIiIyazIhhJC6CFOWnZ0NuVwOhUIBJycnqcsxGYmJiWjRogWsra1x/fp1eHl5SV0SERGRii6/32YzgfrevXuIjIyEXC6HXC5HZGQksrKytF5+5MiRkMlkWLJkicFqrEyaN2+O0NBQ5OXlYc2aNVKXQ0REVGZmE4YGDBiApKQkxMbGIjY2FklJSYiMjNRq2T179uDkyZPw8fExcJWVy+jRowEAq1atQl5ensTVEBERlY1ZhKGLFy8iNjYWa9euRUhICEJCQrBmzRrs27cPKSkpJS7777//YsyYMdi6dSusra2NVHHl0KdPH3h4eODWrVv47rvvpC6HiIioTMwiDJ04cQJyuRxt2rRRtQUHB0MulyM+Pr7Y5QoLCxEZGYn3338fDRs21Gpbubm5yM7OVnuRZra2tnj77bcBACtWrJC4GiIiorIxizCUlpamesTEs5T30inOvHnzYGVlhbFjx2q9rTlz5qjmJcnlcvj5+ZWp5spi5MiRsLS0xJEjR/DHH39IXQ4REZHOJA1DMTExkMlkJb7OnDkDABpv7CeEKPaGf2fPnsXSpUuxceNGnW4KOHXqVCgUCtXrxo0bZdu5SsLX1xe9evUC8PRyfiIiInMj6aX1GRkZpT47KyAgANu2bUN0dHSRq8ecnZ2xePFiDBkypMhyS5YsQXR0NCws/st7BQUFsLCwgJ+fH65evapVjby0vnSHDx9Gx44d4eDggH///RdyuVzqkoiIqJLT5fdb0psuurm5afWoiJCQECgUCpw6dQqtW7cGAJw8eRIKhQKhoaEal4mMjETnzp3V2rp06YLIyEiN4YnKrn379mjQoAGSk5OxefNmvPfee1KXREREpDWzmDMUFBSE8PBwjBgxAgkJCUhISMCIESMQERGB+vXrq/oFBgZi9+7dAABXV1c0atRI7WVtbQ0vLy+1Zaj8ZDKZ6jL7FStWgPfxJCIic2IWYQgAtm7disaNGyMsLAxhYWFo0qQJtmzZotYnJSUFCoVCogort8jISDg6OiIlJQUHDx6UuhwiIiKt8XEcpeCcIe2NGTMGK1asQO/evVUjdERERFKokI/jINOnPFW2d+9eXL9+XeJqiIiItMMwRHoTFBSEjh07orCwEKtWrZK6HCIiIq0wDJFeKUeH1qxZg8ePH0tcDRERUekYhkivevbsCV9fX2RkZOCbb76RuhwiIqJSMQyRXllZWeGdd94BwOeVERGReWAYIr0bMWIEbGxscPLkSdXjVIiIiEwVwxDpnYeHB9544w0AHB0iIiLTxzBEBqGcSL19+3ZkZmZKXA0REVHxGIbIIIKDg9GiRQvk5uZi3bp1UpdDRERULIYhMohnn1f2xRdfoKCgQOKKiIiINGMYIoN588034eLigqtXr+Knn36SuhwiIiKNGIbIYOzt7TF06FAAwPLlyyWuhoiISDOGITKod999FzKZDPv378elS5ekLoeIiKgIhiEyqFq1aqFbt24Ans4dIiIiMjUMQ2RwyonU69evR05OjsTVEBERqWMYIoPr0qULateuDYVCgW3btkldDhERkRqGITI4CwsLjBo1CsDTidRCCIkrIiIi+g/DEBnFkCFDYG9vj/Pnz+P48eNSl0NERKTCMERGUa1aNQwcOBAAn1dGRESmhWGIjEY5kfrbb79FamqqxNUQERE9xTBERtOsWTOEhoYiPz8fa9askbocIiIiAAxDZGRjxowBAKxatQp5eXkSV0NERMQwREbWp08feHp6IjU1FXv27JG6HCIiIoYhMi4bGxuMGDECACdSExGRaWAYIqMbOXIkLC0tcfToUfz+++9Sl0NERJUcwxAZna+vL3r37g0AWLlypbTFEBFRpccwRJJQTqTesmULFAqFxNUQEVFlxjBEkmjXrh0aNmyInJwcbNq0SepyiIioEmMYIknIZDLV88pWrFiBwsJCiSsiIqLKimGIJBMZGQlHR0f89ddfOHjwoNTlEBFRJcUwRJJxdHTE4MGDAfAyeyIikg7DEElK+byy77//HteuXZO4GiIiqowYhkhSgYGB6NSpEwoLC7Fq1SqpyyEiokqIYYgkpxwdWrt2LR4/fixxNUREVNkwDJHkevToAT8/P2RkZOCbb76RuhwiIqpkGIZIclZWVnjnnXcAAMuXL5e4GiIiqmwYhsgkDB8+HDY2Njh16hROnz4tdTlERFSJMAyRSfDw8EDfvn0B8DJ7IiIyLoYhMhnKidRff/01MjIyJK6GiIgqC7MJQ/fu3UNkZCTkcjnkcjkiIyORlZVV4jJRUVGQyWRqr+DgYOMUTDpr06YNWrZsidzcXKxfv17qcoiIqJIwmzA0YMAAJCUlITY2FrGxsUhKSkJkZGSpy4WHhyM1NVX1+vHHH41QLZWFTCZTjQ6tXLkSBQUFEldERESVgZXUBWjj4sWLiI2NRUJCAtq0aQMAWLNmDUJCQpCSkoL69esXu6ytrS28vLyMVSqVU//+/TFp0iRcu3YN27Ztw8svvyx1SUREZGBOTk6oVq2aZNs3izB04sQJyOVyVRACgODgYMjlcsTHx5cYho4cOQIPDw84OzujXbt2mD17Njw8PIrtn5ubi9zcXNX77Oxs/ewEacXe3h7Dhg3DggULMGjQIKnLISIiI5g6dSr+97//SbZ9swhDaWlpGgOMh4cH0tLSil2ua9eueOONN+Dv748rV65g+vTp6NixI86ePQtbW1uNy8yZMwczZ87UW+2ku7Fjx2LXrl34999/pS6FiIiMwMpK2jgi6dZjYmJKDR7Ke87IZLIinwkhNLYr9evXT/XnRo0aoVWrVvD398cPP/yA1157TeMyU6dORXR0tOp9dnY2/Pz8SqyR9MvX1xd///231GUQEVElIWkYGjNmDPr3719in4CAAJw/fx63b98u8ll6ejo8PT213p63tzf8/f1x6dKlYvvY2toWO2pEREREFY+kYcjNzQ1ubm6l9gsJCYFCocCpU6fQunVrAMDJkyehUCgQGhqq9fYyMzNx48YNeHt7l7lmIiIiqljM4tL6oKAghIeHY8SIEUhISEBCQgJGjBiBiIgItcnTgYGB2L17NwDgwYMHmDRpEk6cOIGrV6/iyJEj6NGjB9zc3PDqq69KtStERERkYswiDAHA1q1b0bhxY4SFhSEsLAxNmjTBli1b1PqkpKRAoVAAACwtLfH777+jV69eqFevHgYPHox69erhxIkTcHR0lGIXiIiIyATJhBBC6iJMWXZ2NuRyORQKBZycnKQuh4iIiLSgy++32YwMERERERkCwxARERFVagxDREREVKkxDBEREVGlxjBERERElRrDEBEREVVqDENERERUqTEMERERUaXGMERERESVmqQPajUHyht0Z2dnS1wJERERaUv5u63NgzYYhkpx//59AICfn5/ElRAREZGu7t+/D7lcXmIfPpusFIWFhbh16xYcHR0hk8mkLscgsrOz4efnhxs3blTo569xPyuWyrCflWEfAe5nRWMq+ymEwP379+Hj4wMLi5JnBXFkqBQWFhbw9fWVugyjcHJyqtD/QJW4nxVLZdjPyrCPAPezojGF/SxtREiJE6iJiIioUmMYIiIiokqNYYhga2uLGTNmwNbWVupSDIr7WbFUhv2sDPsIcD8rGnPcT06gJiIiokqNI0NERERUqTEMERERUaXGMERERESVGsMQERERVWoMQxXcnDlz8MILL8DR0REeHh7o3bs3UlJSSlzmyJEjkMlkRV5//vmnkarWXUxMTJF6vby8Slzm6NGjaNmyJezs7FCrVi2sWrXKSNWWXUBAgMZjM3r0aI39zeVY/vLLL+jRowd8fHwgk8mwZ88etc+FEIiJiYGPjw/s7e3Rvn17XLhwodT17ty5Ew0aNICtrS0aNGiA3bt3G2gPtFPSfubl5eGDDz5A48aN4eDgAB8fHwwaNAi3bt0qcZ0bN27UeIwfP35s4L3RrLRjGRUVVaTW4ODgUtdrTscSgMZjIpPJsGDBgmLXaWrHUpvfj4ryb5NhqII7evQoRo8ejYSEBMTFxSE/Px9hYWHIyckpddmUlBSkpqaqXnXr1jVCxWXXsGFDtXp///33YvteuXIF3bp1w0svvYTExER8+OGHGDt2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Op9dr5IQQqcr55S1//DDD2r1JCcnq+YNAU9PE23btg3A01NkXbp0gZubGwDg2rVr6NatGxo1aoSdO3fi7NmzWLFiBQDN3yug3THo0aMHMjMzsWbNGpw8eRInT54EoNuEcuU2tPmenj22zx4v4Ok8swsXLqB79+44dOgQGjRogN27d2tdB5GpYxgiqqDmzJmD77//HvHx8Wrt7u7uSEtLU/sx1ue9gRISElR/zs/Px9mzZ1WjPy1atMCFCxcQEBCAOnXqqL20DUAA4OTkBB8fH/z6669q7fHx8QgKCtJ6PQ0aNICtrS2uX79epB4/Pz9VvwEDBuD333/H2bNn8e2332LgwIGqz86cOYP8/HwsXLgQwcHBqFevHm7dulXidt3d3ZGamqrW9uwxyMzMxMWLF/HRRx+hU6dOCAoKKnKFoI2NDQCgoKCg2O3UqVMHNjY2at9TXl4ezpw5o9P3BAD16tXDhAkTcODAAbz22mvYsGGDTssTmTKGIaIKqkmTJhg4cCA+//xztfb27dsjPT0d8+fPx+XLl7FixQr89NNPetvuihUrsHv3bvz5558YPXo07t27p5qMO3r0aNy9exdvvvkmTp06hX/++QcHDhzA0KFDS/xR1+T999/HvHnzsGPHDqSkpGDKlClISkrCuHHjtF6Ho6MjJk2ahAkTJmDTpk24fPkyEhMTsWLFCmzatEnVr2bNmggNDcWwYcOQn5+PXr16qT6rXbs28vPz8fnnn+Off/7Bli1bilx99ryOHTvizJkz2Lx5My5duoQZM2bgjz/+UH1erVo1uLq64ssvv8Tff/+NQ4cOITo6Wm0dHh4esLe3V01CVygURbbj4OCAd999F++//z5iY2ORnJyMESNG4OHDhxg2bJhW39GjR48wZswYHDlyBNeuXcPx48dx+vRpncMUkSljGCKqwD755JMip2OCgoKwcuVKrFixAk2bNsWpU6eKvdKqLObOnYt58+ahadOmOHbsGL777jvVKSUfHx8cP34cBQUF6NKlCxo1aoRx48ZBLperzU/SxtixYzFx4kRMnDgRjRs3RmxsLPbu3Yu6devqtJ5PPvkEH3/8MebMmYOgoCB06dIF33//vWqOjtLAgQPx22+/4bXXXoO9vb2qvVmzZli0aBHmzZuHRo0aYevWrSXe2gAAunTpgunTp2Py5Ml44YUXcP/+fQwaNEj1uYWFBb7++mucPXsWjRo1woQJE7BgwQK1dVhZWWHZsmVYvXo1fHx81ALas+bOnYs+ffogMjISLVq0wN9//439+/ejWrVqWn0/lpaWyMzMxKBBg1CvXj307dsXXbt2xcyZM7VansgcyMTz/6UkIiIiqkQ4MkRERESVGsMQERERVWoMQ0RERFSpMQwRERFRpcYwRERERJUawxARERFVagxDREREVKkxDBEREVGlxjBERERElRrDEBEREVVqDENERERUqTEMERERUaX2/wCiC3yv4E57GwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "

" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "\n", "%matplotlib inline\n", @@ -730,18 +561,10 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "id": "00fab0cb", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Optimal point found [9.24399028 2.7837277 ] [0.76323137]\n" - ] - } - ], + "outputs": [], "source": [ "#Branin function with a integer variable and a continuous variable\n", "fun = Branin(ndim=2)\n", @@ -773,38 +596,10 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "id": "a5ff0799", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[9.24399028 2.7837277 ] [0.76323137]\n" - ] - }, - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'Mixed Branin - optimization process')" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGxCAYAAADCo9TSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABgm0lEQVR4nO3de1xT9f8H8NccMC5yUVEBx7h4Qc37JRVMwETTMPv21X6piZeyLCvNtLKL2kUp0zIrK7uofDWz8pJhlsvwgmLitbw0U9CBYqQJ88r18/tjbTHYuG5nY7yej8eynet748BeO+fz+RyZEEKAiIiISCKN7F0AERERNSwMH0RERCQphg8iIiKSFMMHERERSYrhg4iIiCTF8EFERESSYvggIiIiSTF8EBERkaQYPoiIiEhSDB9UpZUrV0Imk0Emk2HHjh0V5gsh0KZNG8hkMsTExJjMk8lkmDdvniR1lhUTE1OhFnNCQ0ONr00mk8Hd3R1t2rTBjBkzcOnSJdsXWkVtEyZMsGsN1nTixAnMmzcPZ8+erTBvwoQJCA0Nter+bLHNspYtW4aVK1dWmH727FnIZDKz84hIz8XeBVD94e3tjc8++6zCh/rOnTtx5swZeHt7V1gnLS0NSqVSogprJyoqCosWLQIA3Lx5EwcOHMC8efOwa9cuHDhwwG51bdy4ET4+Pnbbv7WdOHECr7zyCmJiYiqEgpdffhnTpk2z6v5ssc2yli1bBn9//woBMTAwEGlpaWjdurXN9k1U3zF8ULX93//9H9asWYMPPvjA5EPxs88+Q79+/aDT6Sqs07dvXylLrBU/Pz+TOmNjY3H16lW89tprOHXqFNq1a2dx3Rs3bsDT09MmdXXv3t0m23VEtvigtteHv0KhqBfHfXlCCNy6dQseHh72LoUaAF52oWobPXo0AGDt2rXGafn5+Vi/fj0mTZpkdp2yl12EEBg2bBiaNWsGrVZrXObGjRu47bbb0KFDB1y/ft247LJly9CtWzd4eHigSZMmGDlyJDIyMky2L4TAwoULERISAnd3d/To0QNbt26t82v19fUFALi6uhqnTZgwAY0bN8Zvv/2GwYMHw9vbG3feeScAQK1WY8SIEVAqlcZLN48++miFSzfz5s2DTCbD8ePHMXr0aPj6+qJly5aYNGkS8vPzTZYtf9llx44dkMlkWLt2LV588UUEBQXBx8cHgwYNgkajqfNrLu/vv//G448/jlatWsHNzQ3h4eF48cUXUVBQYLKcTCbDE088gY8//hjt2rWDQqFAx44d8eWXXxqXWblyJUaNGgVAH+4Ml7kMlybMXSIxbHfFihWIiIiAh4cHevXqhX379kEIgbfeegthYWFo3LgxBg4ciNOnT5usX36bhvfe3KPs+/zKK6+gT58+aNq0KXx8fNCjRw989tlnKHsPztDQUBw/fhw7d+40bsOwL0uXXVJTU3HnnXfC29sbnp6eiIyMxJYtW0yWMVziTElJwWOPPQZ/f380a9YM9913Hy5cuFDVj8x4jB4/fhx33nknvLy80Lx5czzxxBO4ceOG2ff3o48+QocOHaBQKLBq1apq1woA58+fxyOPPILg4GC4ubkhKCgII0eOxJ9//mlcRqfTYebMmQgLC4ObmxtatWqF6dOnG3/XDb7++mv06dMHvr6+8PT0RHh4uMnfldLSUrz++uvGY8HPzw9dunTBu+++W+X7Qg5IEFVhxYoVAoBIT08X48aNE7fffrtx3ocffii8vLyETqcTt912m4iOjjZZF4CYO3eu8fmlS5eEUqkUffr0EYWFhUIIIcaPHy88PDzEr7/+alxu8uTJwtXVVTzzzDPihx9+EF988YVo3769aNmypbh48aJxublz5woA4qGHHhJbt24Vy5cvF61atRIBAQEVajEnJCREDBs2TBQVFYmioiJx9epV8fPPPwulUimioqJMlh0/frxwdXUVoaGhIjExUWzfvl38+OOPxvchMTFRbN68WezcuVOsWrVKdO3aVURERBhfZ9l6IyIixJw5c4RarRZvv/22UCgUYuLEiRVqGz9+vPF5SkqKACBCQ0PF2LFjxZYtW8TatWuFSqUSbdu2FcXFxVW+3uq6efOm6NKli/Dy8hKLFi0S27ZtEy+//LJwcXERw4YNM1kWgAgODhYdO3YUa9euFZs3bxZ33XWXACC+/vprIYQQubm5YsGCBQKA+OCDD0RaWppIS0sTubm5xvc2JCSkwnZDQkJEZGSk2LBhg9i4caNo166daNq0qXj66afFiBEjRHJyslizZo1o2bKl6NKliygtLTWuX36bWVlZxv0aHrNmzRIAxMKFC43LTZgwQXz22WdCrVYLtVotXnvtNeHh4SFeeeUV4zKHDh0S4eHhonv37sZtHTp0SAghRGZmpgAg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qVOnEBISYu1dERERUT1k9fDx9NNPY9++fViwYAFOnz6NL774AsuXL8fUqVOtvSsiIiKqh6wePnr37o2NGzdi7dq16NSpE1577TUsWbIEY8eOtfauiIiIqB6yeoPTuuI4H0RERPWPXRucEhEREVWG4YOIiIgkxfBBREREkmL4ICIiIkkxfBAREZGkGD6IiIhIUgwfREREJCmGDyIiIpIUwwcREZETU6vVFm/uaqDVaqFWqyWqiOGDiIjIaanVasTHxyM2NtZiANFqtYiNjUV8fLxkAYThg4iIyElFRERAqVQiIyPDbAAxBI+MjAwolUpERERIUhfDBxERkZNSqVRISUlBeHh4hQBSNniEh4cjJSUFKpVKkroYPiTgiNfbiIioYTAXQPbs2WO34AEwfNico15vIyKihqN8AOnfv7/dggfA8GFzjnq9jYiIGhaVSoWkpCSTaUlJSZIHD4Dhw+Yc9XobERE1LFqtFgkJCSbTEhISqmwWYAsMHxJwxOttRETUcJT/spuammr2S7FUZEIIIekeq6DT6eDr64v8/Hz4+PjYuxyrKvvDN2DwICIiW7J0lt3aZ99r8vnNMx8ScqTrbURE5PwqCxiVNQuwNYYPCTnS9TYiInJ+Go0G2dnZFs9slA0g2dnZ0Gg0ktTF8CERR7veRkREzi8uLg7JycmVXlIxBJDk5GTExcVJUhfbfEhAquttRERE9sI2Hw7EUa+3ERER2QvDh4056vU2IiIie+FlFwmo1WpERERUeklFq9VCo9FIdr2NiIjImmry+c3wQURERHXGNh9ERETksBg+iIiISFIMH0RERCQphg+SlFqtrrI7sVarhVqtlqgiIiKSGsMHSUatViM+Pr7S8UwM46LEx8czgBAROSmGD5JMREQElEqlxQHVyg7IplQqERERYadKiYjIlhg+SDKVjejKoeaJiBoOhg+SlLkAsmfPHgYPIqIGxObhIzExETKZDNOnT7f1rqieKB9A+vfvz+BBRNSA2DR8pKenY/ny5ejSpYstd0P1kEqlQlJSksm0pKQkBg8iogbAZuHj2rVrGDt2LD755BM0adLEVruhekqr1SIhIcFkWkJCAu/qS0TUANgsfEydOhV33303Bg0aVOlyBQUF0Ol0Jg9ybuUbl6ampppthEpERM7JJuHjyy+/xMGDB5GYmFjlsomJifD19TU+goODbVES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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# 3 optimal points possible in the continuous Branin function: [-pi, 12.275], [pi, 2.275], [9.42478, 2.475] \n", "#for the modified integer Branin function\n", @@ -825,21 +620,10 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "id": "a6115410", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", @@ -977,7 +761,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "id": "6d5dc782", "metadata": {}, "outputs": [], @@ -988,38 +772,10 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "id": "fbbe62cc", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Initial DOE given\n", - "Internal optimization succeeded at EGO iter = 0.0\n", - "Internal optimization succeeded at EGO iter = 1.0\n", - "Internal optimization succeeded at EGO iter = 2.0\n", - "Internal optimization succeeded at EGO iter = 3.0\n", - "Internal optimization succeeded at EGO iter = 4.0\n", - "Internal optimization succeeded at EGO iter = 5.0\n", - "Internal optimization succeeded at EGO iter = 6.0\n", - "Internal optimization succeeded at EGO iter = 7.0\n", - "Internal optimization succeeded at EGO iter = 8.0\n", - "Internal optimization succeeded at EGO iter = 9.0\n", - "Internal optimization succeeded at EGO iter = 10.0\n", - "Internal optimization succeeded at EGO iter = 11.0\n", - "Internal optimization succeeded at EGO iter = 12.0\n", - "Internal optimization succeeded at EGO iter = 13.0\n", - "Internal optimization succeeded at EGO iter = 14.0\n", - "Internal optimization succeeded at EGO iter = 15.0\n", - "Internal optimization succeeded at EGO iter = 16.0\n", - "Internal optimization succeeded at EGO iter = 17.0\n", - "Internal optimization succeeded at EGO iter = 18.0\n", - "Internal optimization succeeded at EGO iter = 19.0\n" - ] - } - ], + "outputs": [], "source": [ "#Build the initial DOE\n", "rseed = 42 #seed for the sampling\n", @@ -1054,21 +810,10 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "id": "f2078a02", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Optimal points [ 0. 0. 100. 20.02801089 50.\n", - " 50. 26.61557871 2. 0. 0.\n", - " 2. ] [33.14003586]\n", - "Optimal design variables in the initial space [0, 0, 99.99999999999999, 20.02801089116878, 50.0, 50.0, 26.61557871013431, 2.0, 0.0, 0.0, 2.0]\n" - ] - } - ], + "outputs": [], "source": [ " print(\"Optimal points\",x_opt, y_opt)\n", "print(\"Optimal design variables in the initial space\", design_space.decode_values(x_opt))\n" @@ -1076,21 +821,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "d43ac3eb", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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RFBQkNpt3L59GyYm/7uS17ZtW2zduhUzZ87ErFmz4OXlhZ9//hmtW7eujC4QOAJERESGRyaEEFIXoW/S09OhUCiQlpYGuVwudTl678qVK/Dx8YFcLkdaWprU5RARkZHS5PNb8knQZPiKRoDS09ORl5cncTVEREQvxwBE5Va9enXl76mpqZLVQUREpC4GICo3MzMzKBQKAJwHREREhoEBiCoEJ0ITEZEhYQCiCsEAREREhoQBiCoEAxARERkSBiCqEAxARERkSBiAqEIwABERkSFhAKIKwQBERESGhAGIKgQDEBERGRIGIKoQfCAqEREZEgYgqhAcASIiIkPCAEQVggGIiIgMCQMQVQgGICIiMiQMQFQhigJQamoqCgoKJK6GiIiobAxAVCHs7e0BAEIIpKWlSVwNERFR2RiAqEJYWFjA1tYWAC+DERGR/mMAogrDeUBERGQoGICowjAAERGRoWAAogrDAERERIaCAYgqDAMQEREZCq0C0LVr1zBz5ky89957SE5OBgBERkbi/PnzFVocGRYGICIiMhQaB6AjR46gSZMmiImJwfbt2/H06VMAwLlz5zB79uwKL5AMR9HzwBiAiIhI32kcgKZNm4Z58+YhKioKFhYWyuWdO3fGyZMnK7Q4MixFI0B8ICoREek7jQNQQkIC3njjjWLLnZyc+MFn5HgJjIiIDIXGAah69epITEwstjw+Ph5ubm4VUhQZJgYgIiIyFBoHoEGDBuHTTz9FUlISZDIZCgsLcfz4cUyePBlDhgypjBrJQDAAERGRodA4AM2fPx+1a9eGm5sbnj59Cj8/P3To0AFt27bFzJkzK6NGMhAMQEREZChkQgihzY7Xrl1DfHw8CgsL0bx5czRo0KCia5NMeno6FAoF0tLSIJfLpS7HYNy/fx9ubm4wMTFBXl4eTEz4NVNERKQ7mnx+m2l7EC8vL3h5eWm7O1VBRU+ELywsREZGBhQKhcQVERERlUzjADRixIgy1//www9aF0OGzdraGtbW1nj27BkeP37MAERERHpL4wD05MkTldd5eXn466+/kJqaii5dulRYYWSYatSogXv37uHx48eoW7eu1OUQERGVSOMAFBERUWxZYWEhRo8ejXr16lVIUWS4ng9ARERE+qpCZqmamJhgwoQJWLp0aUU0RwaMd4IREZEhqLDbdK5du4b8/PyKao4MFJ8H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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", @@ -1105,14 +839,6 @@ "plt.ylabel(\"Objective value\")\n", "plt.show()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0882ac1f", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -1131,7 +857,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.8.12" } }, "nbformat": 4, diff --git a/tutorial/README.md b/tutorial/README.md index d1a8d8f50..adc899fd9 100644 --- a/tutorial/README.md +++ b/tutorial/README.md @@ -29,7 +29,12 @@ These tutorials introduce to use the opensource Surrogate Modeling Toolbox where ## Mixed-Integer Gaussian Process and Bayesian Optimization to solve unconstrained problems with mixed variables (continuous, discrete, categorical) -[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SMTorg/smt/blob/master/tutorial/SMT_MixedInteger_application.ipynb) +[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SMTorg/smt/blob/master/tutorial/SMT_MixedInteger.ipynb) + +## Mixed-Integer Gaussian Process and Bayesian Optimization for Engineering application + +[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SMTorg/smt/blob/master/tutorial/SMT_MixedInteger_Engineering_applications.ipynb) + ## DesignSpace to variables (continuous, discrete, categorical, hierarchical) diff --git a/tutorial/SMT_MixedInteger_application.ipynb b/tutorial/SMT_MixedInteger.ipynb similarity index 96% rename from tutorial/SMT_MixedInteger_application.ipynb rename to tutorial/SMT_MixedInteger.ipynb index 3b097955b..579fe9daa 100644 --- a/tutorial/SMT_MixedInteger_application.ipynb +++ b/tutorial/SMT_MixedInteger.ipynb @@ -7,7 +7,7 @@ "id": "view-in-github" }, "source": [ - "\"Open" + "\"Open" ] }, { @@ -168,7 +168,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 282, "metadata": { "id": "-Y8Vi-hsmu35" }, @@ -1243,346 +1243,6 @@ "\n" ] }, - { - "cell_type": "markdown", - "metadata": { - "id": "SfVsrEH0nolz" - }, - "source": [ - "# Gower mixed based surrogate model 4D function" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "id": "8BHCEbw3nwQ9" - }, - "source": [ - "The database is available at https://www.sciencedirect.com/science/article/abs/pii/S1359835X11000224\n", - "\n", - "The aim is to build a surrogate model for mixed variables in a hybrid composite problem. The trained surrogate model is able to predict the composites characteristics. \n", - "This is a tutorial for the following paper: A mixed-categorical data-driven approach for prediction and\n", - "optimization of hybrid discontinuous composites performance. \n", - "\n", - "The function inputs are:\n", - "\n", - "\n", - "\n", - "> 4 continuous variables **[lf Vc SmAvg G GiicmAvg]**\n", - "\n", - "\n", - "> 2 categorical variables **[Carbon fibres Glass Fibres]** with 16 labels.\n", - "\n", - "\n", - "The possible outputs are **[Initial_stiffness\tUltimate_strain\tPseudo_ductile_strain\tUltimate_strength\tYield_strength]**\n", - "\n", - "In this example, only the most influent continuous inputs are being used (**lf** and **Vc**), and the predicted variable is the **Initial Stiffness**\n", - "\n", - "**lf:** length of the fibre. \n", - "\n", - "**Vc:** Percentage of carbon fibre in the mixture. " - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "id": "6UlDaf1S65MH" - }, - "outputs": [], - "source": [ - "import numpy as np\n", - "import pandas as pd\n", - "import matplotlib.pyplot as plt\n", - "from smt.surrogate_models import KRG\n", - "from smt.applications.mixed_integer import MixedIntegerSurrogateModel\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.metrics import r2_score\n", - "from scipy.optimize import curve_fit\n", - "from sklearn.preprocessing import StandardScaler\n", - "plt.rcParams.update({'legend.labelspacing':1.0})" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "id": "xq3a-3gyC-v_" - }, - "outputs": [], - "source": [ - "try :\n", - " from pydrive.auth import GoogleAuth\n", - " from pydrive.drive import GoogleDrive\n", - " from google.colab import auth\n", - " from oauth2client.client import GoogleCredentials\n", - "\n", - " # 1. Authenticate and create the PyDrive client.\n", - " auth.authenticate_user()\n", - " gauth = GoogleAuth()\n", - " gauth.credentials = GoogleCredentials.get_application_default()\n", - " drive = GoogleDrive(gauth)\n", - " json_import = drive.CreateFile({'id':'1fcB39mktJ2npTNqrF8dgZa7PWh3wU55X'})\n", - " json_import.GetContentFile('VTF_properties.json')\n", - " df = pd.read_csv(open('VTF_properties.json'))\n", - "except :\n", - " df = pd.read_csv(open('VTF_properties.csv'))" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 270 - }, - "id": "Jj2kyCk97HAq", - "outputId": "43fa3b18-3ed2-479f-e2dd-e16f0b6d3ef0" - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Carbon_fibreGlass_fibrelfVcSmAvgGGiicmAvgInitial_stiffnessUltimate_strainPseudo_ductile_strainUltimate_strengthYield_strength
0XN-90GF10533.4820400.96601782.3542291056.3708680.734474456482.19820.240.050521864.937397864.937397
1XN-90XN-057808.9466570.99647260.8488041741.2498590.849103466897.16570.240.040624930.878853930.878853
2XN-90GF9323.6783280.24294853.2693801523.6646760.671576169973.97480.180.033303249.346203249.346203
3P120JGF5788.7572080.45363279.6359121662.7670830.776173240985.51420.260.069889458.139055458.139055
4XN-90XN-0511435.5472800.83747261.7365931340.5667440.658034389829.41530.220.042216693.053223693.053223
\n", - "
" - ], - "text/plain": [ - " Carbon_fibre Glass_fibre lf Vc SmAvg G \\\n", - "0 XN-90 GF 10533.482040 0.966017 82.354229 1056.370868 \n", - "1 XN-90 XN-05 7808.946657 0.996472 60.848804 1741.249859 \n", - "2 XN-90 GF 9323.678328 0.242948 53.269380 1523.664676 \n", - "3 P120J GF 5788.757208 0.453632 79.635912 1662.767083 \n", - "4 XN-90 XN-05 11435.547280 0.837472 61.736593 1340.566744 \n", - "\n", - " GiicmAvg Initial_stiffness Ultimate_strain Pseudo_ductile_strain \\\n", - "0 0.734474 456482.1982 0.24 0.050521 \n", - "1 0.849103 466897.1657 0.24 0.040624 \n", - "2 0.671576 169973.9748 0.18 0.033303 \n", - "3 0.776173 240985.5142 0.26 0.069889 \n", - "4 0.658034 389829.4153 0.22 0.042216 \n", - "\n", - " Ultimate_strength Yield_strength \n", - "0 864.937397 864.937397 \n", - "1 930.878853 930.878853 \n", - "2 249.346203 249.346203 \n", - "3 458.139055 458.139055 \n", - "4 693.053223 693.053223 " - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "df = df.dropna()\n", - "df.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "id": "1r6uCxjML51v" - }, - "outputs": [], - "source": [ - "data = df.sample(n=1000,random_state = 10)\n", - "data.Carbon_fibre = pd.Categorical(data.Carbon_fibre)\n", - "data['Carbon_fibre'] = data.Carbon_fibre.cat.codes \n", - "data.Glass_fibre = pd.Categorical(data.Glass_fibre)\n", - "data['Glass_fibre'] = data.Glass_fibre.cat.codes \n", - "Xd = data.drop(['SmAvg','G','GiicmAvg','Initial_stiffness','Ultimate_strain','Pseudo_ductile_strain','Ultimate_strength',\n", - " 'Yield_strength'],axis = 1)\n", - "\n", - "yd = data.Initial_stiffness\n", - "\n", - "X_train, X_test, y_train, y_test = train_test_split(Xd, yd, test_size = 0.25, random_state = 42)\n", - "X = np.asarray(X_train)\n", - "y = np.asarray(y_train).astype(float)\n", - "\n", - "#to define the variables\n", - "design_space = DesignSpace ([\n", - " CategoricalVariable (['XN-90', 'P120J', 'T1000GB', 'C124', 'T800H', 'M60JB', 'C320',\n", - " 'M40B', 'P75S', 'K13D', 'T300', 'XN-05', 'FliteStrand_S_ZT',\n", - " 'HTA5131', 'GF', 'C100']), #16 choices\n", - " CategoricalVariable (['GF', 'XN-05', 'FliteStrand_S_ZT', 'C124', 'T300', 'T800H', 'C320',\n", - " 'P75S', 'C100', 'XN-90', 'HTA5131', 'T1000GB', 'P120J', 'M40B',\n", - " 'M60JB']), #15 choices\n", - " FloatVariable (501.5425023,11999.96175),\n", - " FloatVariable (2.849e-05,1.0),\n", - "])\n" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "id": "D6Psera9Oaeg" - }, - "outputs": [], - "source": [ - "sm=KRG(design_space = design_space, print_global=False, categorical_kernel=MixIntKernelType.GOWER)\n", - "sm.set_training_values(X, y)\n", - "sm.train()" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 503 - }, - "id": "FJKbqByvxLqf", - "outputId": "5af35de1-3cfc-418b-e8ce-1e593d2a3734" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "r2_score = 0.9926662329260849\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeIAAAHFCAYAAAAuQPotAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAACBq0lEQVR4nO3deVjUVdvA8e+wDYgwoiiIuKWVFS6luZXihprb+JhLaI6WLVZqvtpjaYu0ama2aNbTplk2WG5ZmYGVW+KGkqhp5b7hyuIGzDDn/ePI4AiaIjII9+e6uGB+c8/M+Z3Im7MblFIKIYQQQriFh7sLIIQQQpRlkoiFEEIIN5JELIQQQriRJGIhhBDCjSQRCyGEEG4kiVgIIYRwI0nEQgghhBtJIhZCCCHcSBKxEEII4UaSiIW4jmbOnInBYGDDhg1X/VqDwUBMTIzz8bZt24iJiWHPnj35YgcPHkytWrUKVcZree3lTJ8+nZkzZ+a7vmfPHgwGQ77n5syZwx133IGfnx8Gg4GkpCQApk6dSt26dfHx8cFgMJCWllbkZRXCnSQRC1FCJSQk8Mgjjzgfb9u2jZdffrnARPziiy+yYMGCYizdv7tUIq5atSoJCQl07drVee3YsWMMHDiQOnXqsGTJEhISErjllltISkpixIgRtG3bll9//ZWEhAQCAgKK8S6EuP683F0AIUTBmjdvfsWxderUuY4lKVpGozHfvf3111/YbDYefPBBIiMjnde3bt0KwKOPPkrTpk2LtZxCFBdpEQtRjAYPHkz58uX5559/6NKlC+XLl6d69eqMHj2arKwsl9gLu6ZnzpxJnz59AGjbti0Gg8Gle7eg7uUPPviA1q1bU6VKFfz9/alfvz6TJk3CZrNd833s2rWLBx54gLCwMIxGIyEhIbRv397ZnVyrVi22bt3K8uXLnWXNLd/FXdODBw/m3nvvBaBfv34YDAbatGlDmzZtePDBBwFo1qwZBoOBwYMHA9CmTRsiIiJYv349rVq1oly5ctx0001MnDgRh8PhUtaMjAyeeeYZateujY+PD9WqVWPkyJGcOXPGJe7bb7+lWbNmmEwm5/s9/PDDzucdDgevvfYat956K35+flSoUIEGDRrw3nvvXXN9irJNWsRCFDObzUaPHj0YMmQIo0ePZsWKFbz66quYTCZeeumlAl/TtWtX3njjDcaNG8cHH3zAXXfdBVy+Jbxz50769+/vTEB//PEHr7/+Otu3b+fzzz+/pnvo0qULOTk5TJo0iRo1anD8+HFWr17tHL9dsGABvXv3xmQyMX36dEC3hAvy4osv0rRpU5566ineeOMN2rZtS2BgIABWq5XXXnuNGTNmUK9ePSpXrux8XUpKCgMGDGD06NGMHz+eBQsWMHbsWMLCwrBYLACcPXuWyMhIDhw4wLhx42jQoAFbt27lpZdeIjk5maVLl2IwGEhISKBfv37069ePmJgYfH192bt3L7/++qvz8yZNmkRMTAwvvPACrVu3xmazsX37dhmzFtdOCSGumxkzZihArV+/Ximl1KBBgxSgvvnmG5e4Ll26qFtvvdXlGqDGjx/vfPztt98qQP3222/5PmfQoEGqZs2alyxHTk6OstlsatasWcrT01OdPHnyil97sePHjytAvfvuu5eNu+OOO1RkZGS+67t371aAmjFjhvPab7/9pgD17bffusReXH+5IiMjFaDWrl3rcv32229XnTp1cj6eMGGC8vDwyPf6uXPnKkAtXrxYKaXU5MmTFaDS0tIueT/dunVTjRo1uuw9C1EY0jUtRDEzGAx0797d5VqDBg3Yu3dvkX7Opk2b6NGjB5UqVcLT0xNvb28sFgs5OTn89ddfhX7fihUrUqdOHd566y2mTJnCpk2b8nUHF4fQ0NB848YX1+MPP/xAREQEjRo1wm63O786deqEwWBg2bJlANx9990A9O3bl2+++YaDBw/m+7ymTZvyxx9/8OSTT/Lzzz+TkZFx/W5OlCmSiIUoZuXKlcPX19flmtFoJDMzs8g+Y9++fbRq1YqDBw/y3nvvsXLlStavX88HH3wAwLlz5wr93gaDgV9++YVOnToxadIk7rrrLipXrsyIESM4depUUd3Cv6pUqVK+a0aj0eXejhw5wubNm/H29nb5CggIQCnF8ePHAWjdujULFy7EbrdjsVgIDw8nIiICq9XqfK+xY8cyefJk1qxZw3333UelSpVo3759oZamCXEhGSMWohRauHAhZ86cYf78+dSsWdN5PXcy1bWqWbMmn332GaBnPH/zzTfExMSQnZ3NRx99VCSfURSCg4Px8/O75Jh4cHCw82ez2YzZbCYrK4s1a9YwYcIE+vfvT61atWjRogVeXl6MGjWKUaNGkZaWxtKlSxk3bhydOnVi//79lCtX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B6BixYqA1AtATk4OsbGxnDlzhhYtWkidAE899RRdu3alQ4cOLtfLct38/fffhIWFUbt2bR544AF27dpV6utEEnExO378ODk5OYSEhLhcDwkJISUlxU2lKjq593C5+0tJScHHx4egoKDLxlSpUiXf+1epUsUl5uLPCQoKwsfH57IxuY+vV30rpRg1ahT33nsvERERLp9VFuslOTmZ8uXLYzQaGTp0KAsWLOD2228v03UCEBsbS2JiIhMmTMj3XFmtm2bNmjFr1ix+/vlnPvnkE1JSUmjZsiUnTpwo1XUipy+5Se7JS7mUUvmu3cgKc38XxxQUXxQx6vxkiutV38OGDWPz5s2sWrUq33NlsV5uvfVWkpKSSEtLY968eQwaNIjly5dfthylvU7279/P008/TVxcHL6+vpeMK2t1c9999zl/rl+/Pi1atKBOnTp88cUXNG/e/JLluNHrRFrExSw4OBhPT898fzEdPXo0319XN6LcGY6Xu7/Q0FCys7NJTU29bMyRI0fyvf+xY8dcYi7+nNTUVGw222Vjjh49CuT/y7ooDB8+nEWLFvHbb7+5HBpeluvFx8eHunXr0qRJEyZMmEDDhg157733ynSdJCYmcvToURo3boyXlxdeXl4sX76c999/Hy8vr0u2rMpC3VzI39+f+vXr8/fff5fq3xdJxMXMx8eHxo0bEx8f73I9Pj6eli1buqlURad27dqEhoa63F92djbLly933l/jxo3x9vZ2iTl8+DBbtmxxxrRo0YL09HTWrVvnjFm7di3p6ekuMVu2bOHw4cPOmLi4OIxGI40bN3bGrFixwmXZQVxcHGFhYdSqVavI7lspxbBhw5g/fz6//vortWvXdnm+rNZLQZRSZGVllek6ad++PcnJySQlJTm/mjRpwoABA0hKSuKmm24qs3VzoaysLP7880+qVq1aun9frmpqlygSucuXPvvsM7Vt2zY1cuRI5e/vr/bs2ePuol2RU6dOqU2bNqlNmzYpQE2ZMkVt2rTJufxq4sSJymQyqfnz56vk5GQVHR1d4BKD8PBwtXTpUrVx40bVrl27ApcYNGjQQCUkJKiEhARVv379ApcYtG/fXm3cuFEtXbpUhYeHuywxSEtLUyEhISo6OlolJyer+fPnq8DAwCJfdvHEE08ok8mkli1b5rL04uzZs86YslgvY8eOVStWrFC7d+9WmzdvVuPGjVMeHh4qLi6uzNbJpVw4a1qpslk3o0ePVsuWLVO7du1Sa9asUd26dVMBAQHOfxtLa51IInaTDz74QNWsWVP5+Piou+66y7nM5Ubw22+/KSDf16BBg5RSepnB+PHjVWhoqDIajap169YqOTnZ5T3OnTunhg0bpipWrKj8/PxUt27d1L59+1xiTpw4oQYMGKACAgJUQECAGjBggEpNTXWJ2bt3r+ratavy8/NTFStWVMOGDXNZTqCUUps3b1atWrVSRqNRhYaGqpiYmCJfjlJQfQBqxowZzpiyWC8PP/yw8/e8cuXKqn379s4kXFbr5FIuTsRlsW5y1wV7e3ursLAw1atXL7V169ZSXydyDKIQQgjhRjJGLIQQQriRJGIhhBDCjSQRCyGEEG4kiVgIIYRwI0nEQgghhBtJIhZCCCHcSBKxEEII4UaSiIUQbtemTRtGjhzp7mII4RaSiIW4ARkMhst+DR48uFjK0b1793xn6eZKSEjAYDCwcePGYimLEDcqOQZRiBvQhZvRz5kzh5deeokdO3Y4r/n5+bnE22w2vL29i7wcQ4YMoVevXuzdu5eaNWu6PPf555/TqFEj7rrrriL/XCFKE2kRC3EDCg0NdX6ZTCYMBoPzcWZmJhUqVOCbb76hTZs2+Pr68tVXXxETE0OjRo1c3ufdd9/Nd1LMjBkzuO222/D19aVevXpMnz79kuXo1q0bVapUYebMmS7Xz549y5w5cxgyZAgnTpwgOjqa8PBwypUrR/369bFarZe9P4PBwMKFC12uVahQweVzDh48SL9+/QgKCqJSpUqYzWb27NnjfH7ZsmU0bdoUf39/KlSowD333MPevXsv+7lCuIMkYiFKqWeffZYRI0bw559/0qlTpyt6zSeffMLzzz/P66+/zp9//skbb7zBiy++yBdffFFgvJeXFxaLhZkzZ3LhtvXffvst2dnZDBgwgMzMTBo3bswPP/zAli1beOyxxxg4cCBr164t9L2dPXuWtm3bUr58eVasWMGqVasoX748nTt3Jjs7G7vdTs+ePYmMjGTz5s0kJCTw2GOPFekh9kIUFemaFqKUGjlyJL169bqq17z66qu8/fbbztfVrl2bbdu28b///Y9BgwYV+JqHH36Yt956i2XLltG2bVtAd0v36tWLoKAggoKCeOaZZ5zxw4cPZ8mSJXz77bc0a9asUPcWGxuLh4cHn376qTO5zpgxgwoVKrBs2TKaNGlCeno63bp1o06dOgDcdttthfosIa43ScRClFJNmjS5qvhjx46xf/9+hgwZwqOPPuq8brfbMZlMl3xdvXr1aNmyJZ9//jlt27Zl586drFy5kri4OABycnKYOHEic+bM4eDBg2RlZZGVlYW/v3/hbgxITEzkn3/+ISAgwOV6ZmYmO3fupGPHjgwePJhOnToRFRVFhw4d6Nu3L1WrVi30ZwpxvUgiFqKUujjReXh4cPGppzabzfmzw+EAdPf0xS1VT0/Py37WkCFDGDZsGB988AEzZsygZs2atG/fHoC3336bd955h3fffZf69evj7+/PyJEjyc7OvuT7GQyGfy1r48aNmT17dr7XVq5cGdAt5BEjRrBkyRLmzJnDCy+8QHx8PM2bN7/svQhR3CQRC1FGVK5cmZSUFJRSzu7cpKQk5/MhISFUq1aNXbt2MWDAgKt67759+/L000/z9ddf88UXX/Doo486P2PlypWYzWYefPBBQCfRv//++7JdxZUrV3aZGf73339z9uxZ5+O77rqLOXPmUKVKFQIDAy/5PnfeeSd33nknY8eOpUWLFnz99deSiEWJI5O1hCgj2rRpw7Fjx5g0aRI7d+7kgw8+4KeffnKJiYmJYcKECbz33nv89ddfJCcnM2PGDKZMmXLZ9y5fvjz9+vVj3LhxHDp0yGUdc926dYmPj2f16tX8+eefPP7446SkpFz2/dq1a8e0adPYuHEjGzZsYOjQoS7LrwYMGEBwcDBms5mVK1eye/duli9fztNPP82BAwfYvXs3Y8eOJSEhgb179xIXF8dff/0l48SiRJJELEQZcdtttzF9+nQ++OADGjZsyLp161wmUQE88sgjfPrpp8ycOZP69esTGRnJzJkzqV279r++/5AhQ0hNTaVDhw7UqFHDef3FF1/krrvuolOnTrRp04bQ0FB69ux52fd6++23qV69Oq1bt6Z///4888wzlCtXzvl8uXLlWLFiBTVq1KBXr17cdtttPPzww5w7d47AwEDKlSvH9u3buf/++7nlllt47LHHGDZsGI8//vjVVZoQxcCgLh6IEUIIIUSxkRaxEEII4UaSiIUQQgg3kkQshBBCuJEkYiGEEMKNJBELIYQQbiSJWAghhHAjScRCCCGEG0kiFkIIIdxIErEQQgjhRpKIhRBCCDeSRCyEEEK4kSRiIYQQwo3+HzJHT6NGRF1rAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "y_pred2 =sm.predict_values(np.asarray(X_test))\n", - "y_pred2[y_pred2<0]=0\n", - "\n", - "print(\"r2_score = \", r2_score(y_test, y_pred2))\n", - "\n", - "plt.scatter(y_test, y_pred2, s=30, facecolors='none', edgecolors='r')\n", - "plt.xlabel('True Values')\n", - "plt.ylabel('Predictions')\n", - "plt.title('Initial_stiffness')\n", - "plt.axis('equal')\n", - "plt.axis('square')\n", - "plt.grid()\n", - "_ = plt.plot([-500000, 500000], [-500000, 500000],'b')" - ] - }, { "cell_type": "markdown", "metadata": { @@ -1594,7 +1254,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 482, "metadata": { "id": "Pq98b6w6mu4J", "outputId": "fcf8d847-9d9f-4533-f85a-ab2691cee161" @@ -1627,9 +1287,38 @@ "Internal optimization succeeded at EGO iter = 15.0\n", "Internal optimization succeeded at EGO iter = 16.0\n", "Internal optimization succeeded at EGO iter = 17.0\n", - "Internal optimization succeeded at EGO iter = 18.0\n", - "Internal optimization succeeded at EGO iter = 19.0\n", - "[ 2. 0. 0. -5.] [-15.]\n" + "Internal optimization succeeded at EGO iter = 18.0\n" + ] + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_2090/1613752696.py\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 54\u001b[0m )\n\u001b[1;32m 55\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 56\u001b[0;31m \u001b[0mx_opt\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my_opt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0m_\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0m_\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my_data\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mego\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptimize\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfun\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mfunction_test_mixed_integer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 57\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 58\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx_opt\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my_opt\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/applications/ego.py\u001b[0m in \u001b[0;36moptimize\u001b[0;34m(self, fun)\u001b[0m\n\u001b[1;32m 145\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mp\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mn_parallel\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 146\u001b[0m \u001b[0;31m# find next best x-coord point to evaluate\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 147\u001b[0;31m x_et_k, success = self._find_best_point(\n\u001b[0m\u001b[1;32m 148\u001b[0m \u001b[0mx_data\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my_data\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"enable_tunneling\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 149\u001b[0m )\n", + "\u001b[0;32m~/smt/smt/applications/ego.py\u001b[0m in \u001b[0;36m_find_best_point\u001b[0;34m(self, x_data, y_data, enable_tunneling)\u001b[0m\n\u001b[1;32m 361\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 362\u001b[0m opt_all.append(\n\u001b[0;32m--> 363\u001b[0;31m minimize(\n\u001b[0m\u001b[1;32m 364\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mobj_k\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mflat\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 365\u001b[0m \u001b[0mx_start\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mii\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m:\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_minimize.py\u001b[0m in \u001b[0;36mminimize\u001b[0;34m(fun, x0, args, method, jac, hess, hessp, bounds, constraints, tol, callback, options)\u001b[0m\n\u001b[1;32m 703\u001b[0m **options)\n\u001b[1;32m 704\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mmeth\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'slsqp'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 705\u001b[0;31m res = _minimize_slsqp(fun, x0, args, jac, bounds,\n\u001b[0m\u001b[1;32m 706\u001b[0m constraints, callback=callback, **options)\n\u001b[1;32m 707\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mmeth\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'trust-constr'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_slsqp_py.py\u001b[0m in \u001b[0;36m_minimize_slsqp\u001b[0;34m(func, x0, args, jac, bounds, constraints, maxiter, ftol, iprint, disp, eps, callback, finite_diff_rel_step, **unknown_options)\u001b[0m\n\u001b[1;32m 372\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 373\u001b[0m \u001b[0;31m# ScalarFunction provides function and gradient evaluation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 374\u001b[0;31m sf = _prepare_scalar_function(func, x, jac=jac, args=args, epsilon=eps,\n\u001b[0m\u001b[1;32m 375\u001b[0m \u001b[0mfinite_diff_rel_step\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mfinite_diff_rel_step\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 376\u001b[0m bounds=new_bounds)\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_optimize.py\u001b[0m in \u001b[0;36m_prepare_scalar_function\u001b[0;34m(fun, x0, jac, args, bounds, epsilon, finite_diff_rel_step, hess)\u001b[0m\n\u001b[1;32m 330\u001b[0m \u001b[0;31m# ScalarFunction caches. Reuse of fun(x) during grad\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 331\u001b[0m \u001b[0;31m# calculation reduces overall function evaluations.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 332\u001b[0;31m sf = ScalarFunction(fun, x0, args, grad, hess,\n\u001b[0m\u001b[1;32m 333\u001b[0m finite_diff_rel_step, bounds, epsilon=epsilon)\n\u001b[1;32m 334\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_differentiable_functions.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, fun, x0, args, grad, hess, finite_diff_rel_step, finite_diff_bounds, epsilon)\u001b[0m\n\u001b[1;32m 175\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 176\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_grad_impl\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mupdate_grad\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 177\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_grad\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 178\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 179\u001b[0m \u001b[0;31m# Hessian Evaluation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_differentiable_functions.py\u001b[0m in \u001b[0;36m_update_grad\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 254\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_update_grad\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 255\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mg_updated\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 256\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_grad_impl\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 257\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mg_updated\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 258\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_differentiable_functions.py\u001b[0m in \u001b[0;36mupdate_grad\u001b[0;34m()\u001b[0m\n\u001b[1;32m 171\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_fun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 172\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mngev\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 173\u001b[0;31m self.g = approx_derivative(fun_wrapped, self.x, f0=self.f,\n\u001b[0m\u001b[1;32m 174\u001b[0m **finite_diff_options)\n\u001b[1;32m 175\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_numdiff.py\u001b[0m in \u001b[0;36mapprox_derivative\u001b[0;34m(fun, x0, method, rel_step, abs_step, f0, bounds, sparsity, as_linear_operator, args, kwargs)\u001b[0m\n\u001b[1;32m 503\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 504\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0msparsity\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 505\u001b[0;31m return _dense_difference(fun_wrapped, x0, f0, h,\n\u001b[0m\u001b[1;32m 506\u001b[0m use_one_sided, method)\n\u001b[1;32m 507\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_numdiff.py\u001b[0m in \u001b[0;36m_dense_difference\u001b[0;34m(fun, x0, f0, h, use_one_sided, method)\u001b[0m\n\u001b[1;32m 574\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mx0\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mh_vecs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 575\u001b[0m \u001b[0mdx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mx0\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;31m# Recompute dx as exactly representable number.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 576\u001b[0;31m \u001b[0mdf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mf0\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 577\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mmethod\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'3-point'\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0muse_one_sided\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 578\u001b[0m \u001b[0mx1\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mx0\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mh_vecs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_numdiff.py\u001b[0m in \u001b[0;36mfun_wrapped\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 454\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 455\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mfun_wrapped\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 456\u001b[0;31m \u001b[0mf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matleast_1d\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 457\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 458\u001b[0m raise RuntimeError(\"`fun` return value has \"\n", + "\u001b[0;32m~/miniconda3/lib/python3.8/site-packages/scipy/optimize/_differentiable_functions.py\u001b[0m in \u001b[0;36mfun_wrapped\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 135\u001b[0m \u001b[0;31m# Overwriting results in undefined behaviour because\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 136\u001b[0m \u001b[0;31m# fun(self.x) will change self.x, with the two no longer linked.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 137\u001b[0;31m \u001b[0mfx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcopy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 138\u001b[0m \u001b[0;31m# Make sure the function returns a true scalar\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 139\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0misscalar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/applications/ego.py\u001b[0m in \u001b[0;36m\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 362\u001b[0m opt_all.append(\n\u001b[1;32m 363\u001b[0m minimize(\n\u001b[0;32m--> 364\u001b[0;31m \u001b[0;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mobj_k\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mflat\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 365\u001b[0m \u001b[0mx_start\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mii\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m:\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 366\u001b[0m \u001b[0mmethod\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmethod\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/applications/ego.py\u001b[0m in \u001b[0;36m\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 347\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 348\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mcriterion\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"EI\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 349\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mobj_k\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;34m-\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mEI\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matleast_2d\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0menable_tunneling\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx_data\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 350\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mcriterion\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"SBO\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 351\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mobj_k\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mSBO\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matleast_2d\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/applications/ego.py\u001b[0m in \u001b[0;36mEI\u001b[0;34m(self, points, enable_tunneling, x_data)\u001b[0m\n\u001b[1;32m 190\u001b[0m \u001b[0mf_min\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0my_data\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margmin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my_data\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 191\u001b[0m \u001b[0mpred\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgpr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpredict_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpoints\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 192\u001b[0;31m \u001b[0msig\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msqrt\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgpr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpredict_variances\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpoints\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 193\u001b[0m \u001b[0margs0\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mf_min\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mpred\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0msig\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 194\u001b[0m \u001b[0margs1\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mf_min\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mpred\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mnorm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcdf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0margs0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/applications/mixed_integer.py\u001b[0m in \u001b[0;36mpredict_variances\u001b[0;34m(self, x, is_acting)\u001b[0m\n\u001b[1;32m 273\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mpredict_variances\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndarray\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_acting\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m->\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndarray\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 274\u001b[0m \u001b[0mx_corr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_acting\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_x_for_surrogate_model\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 275\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_surrogate\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpredict_variances\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx_corr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_acting\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mis_acting\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 276\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 277\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mpredict_variances_all_levels\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndarray\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_acting\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m->\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndarray\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/surrogate_models/krg_based.py\u001b[0m in \u001b[0;36mpredict_variances\u001b[0;34m(self, x, is_acting)\u001b[0m\n\u001b[1;32m 1475\u001b[0m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mshape\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1476\u001b[0m \u001b[0mx2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcopy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1477\u001b[0;31m \u001b[0ms2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_predict_variances\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_acting\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mis_acting\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1478\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0ms2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreshape\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mny\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1479\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/surrogate_models/krg_based.py\u001b[0m in \u001b[0;36m_predict_variances\u001b[0;34m(self, x, is_acting)\u001b[0m\n\u001b[1;32m 1499\u001b[0m \u001b[0m_\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mij\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcross_distances\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mX_train\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1500\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_continuous\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1501\u001b[0;31m dx = gower_componentwise_distances(\n\u001b[0m\u001b[1;32m 1502\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1503\u001b[0m \u001b[0mx_is_acting\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mis_acting\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/utils/kriging.py\u001b[0m in \u001b[0;36mgower_componentwise_distances\u001b[0;34m(X, x_is_acting, design_space, hierarchical_kernel, y, y_is_acting)\u001b[0m\n\u001b[1;32m 319\u001b[0m \u001b[0;31m# X_cat( not(x_cat_is_acting)) = 0 ###IMPUTED TO FIRST VALUE IN LIST (index 0)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 320\u001b[0m \u001b[0mD_cat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcompute_D_cat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mX_cat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mY_cat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 321\u001b[0;31m D_num, ij = compute_D_num(\n\u001b[0m\u001b[1;32m 322\u001b[0m \u001b[0mX_num\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 323\u001b[0m \u001b[0mY_num\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/smt/smt/utils/kriging.py\u001b[0m in \u001b[0;36mcompute_D_num\u001b[0;34m(X_num, Y_num, x_num_is_acting, y_num_is_acting, num_is_decreed, y, hierarchical_kernel)\u001b[0m\n\u001b[1;32m 396\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0my\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 397\u001b[0m \u001b[0ml2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mk2\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mk1\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 398\u001b[0;31m \u001b[0mD_num\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mindD\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mabs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mX_num\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mk1\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mY_num\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0ml2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 399\u001b[0m \u001b[0mindD\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 400\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " ] } ], @@ -1937,7 +1626,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.8.12" } }, "nbformat": 4, diff --git a/tutorial/SMT_MixedInteger_Engineering_applications.ipynb b/tutorial/SMT_MixedInteger_Engineering_applications.ipynb new file mode 100644 index 000000000..b1bd51889 --- /dev/null +++ b/tutorial/SMT_MixedInteger_Engineering_applications.ipynb @@ -0,0 +1,1443 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "view-in-github" + }, + "source": [ + "\"Open" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "mDCpNW2-mu3w" + }, + "source": [ + "
\n", + " \n", + "This tutorial describes how to perform a mixed optimization using the SMT toolbox for engineering applications.\n", + "
\n", + " \n", + " May 2023 - version SMT 2.0 \n", + " \n", + " Paul Saves and Raul Carreira Rufato and Joseph Morlier" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "

Some updates

\n", + "
    - EGO applied to mixed integer problems (1D, 2D and 4D) using continuous relaxation
\n", + "
    - Manipulation of mixed integer DOE
\n", + "
    - Gower distance to build surrogate model of mixed integer functions (2D and 4D)
\n", + "
    - EGO applied to mixed integer problems (4D) using Gower distance
\n", + "
    - EGO applied to mixed integer problems using Homoscedastic or Heteroscedastic kernel
\n", + "
" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "gDeEbi7nmu32" + }, + "source": [ + "

\n", + "To use SMT models, please follow this link : https://github.com/SMTorg/SMT/blob/master/README.md. The documentation is available here: http://smt.readthedocs.io/en/latest/\n", + "

\n", + "\n", + "The reference paper is available \n", + "here https://www.sciencedirect.com/science/article/pii/S0965997818309360?via%3Dihub \n", + "\n", + "or as a preprint: http://mdolab.engin.umich.edu/content/python-surrogate-modeling-framework-derivatives" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "uU32V-7bmu33" + }, + "source": [ + "For mixed integer with continuous relaxation, the reference paper is available here https://www.sciencedirect.com/science/article/pii/S0925231219315619" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 1000 + }, + "id": "EweBFT9Ap8Ay", + "outputId": "4c016eb0-6a75-46f7-d2db-c4ff17ec284a" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0mRequirement already satisfied: ConfigSpace in /stck/psaves/miniconda3/lib/python3.8/site-packages (0.7.1)\n", + "Requirement already satisfied: numpy in /stck/psaves/miniconda3/lib/python3.8/site-packages (from ConfigSpace) (1.23.5)\n", + "Requirement already satisfied: pyparsing in /stck/psaves/miniconda3/lib/python3.8/site-packages (from ConfigSpace) (3.0.4)\n", + "Requirement already satisfied: scipy in /stck/psaves/miniconda3/lib/python3.8/site-packages (from ConfigSpace) (1.10.1)\n", + "Requirement already satisfied: typing-extensions in /stck/psaves/miniconda3/lib/python3.8/site-packages (from ConfigSpace) (4.7.1)\n", + "Requirement already satisfied: more-itertools in /stck/psaves/miniconda3/lib/python3.8/site-packages (from ConfigSpace) (9.0.0)\n", + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m22.0.4\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m23.3.1\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0mRequirement already satisfied: numba in /stck/psaves/miniconda3/lib/python3.8/site-packages (0.58.1)\n", + "Requirement already satisfied: llvmlite<0.42,>=0.41.0dev0 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from numba) (0.41.1)\n", + "Requirement already satisfied: numpy<1.27,>=1.22 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from numba) (1.23.5)\n", + "Requirement already satisfied: importlib-metadata in /stck/psaves/miniconda3/lib/python3.8/site-packages (from numba) (4.13.0)\n", + "Requirement already satisfied: zipp>=0.5 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from importlib-metadata->numba) (3.16.2)\n", + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m22.0.4\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m23.3.1\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0mRequirement already satisfied: smt in /stck/psaves/miniconda3/lib/python3.8/site-packages (2.0)\n", + "Requirement already satisfied: scikit-learn in /stck/psaves/miniconda3/lib/python3.8/site-packages (from smt) (1.0.2)\n", + "Requirement already satisfied: pyDOE2 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from smt) (1.3.0)\n", + "Requirement already satisfied: scipy in /stck/psaves/miniconda3/lib/python3.8/site-packages (from smt) (1.10.1)\n", + "Requirement already satisfied: numpy in /stck/psaves/miniconda3/lib/python3.8/site-packages (from pyDOE2->smt) (1.23.5)\n", + "Requirement already satisfied: joblib>=0.11 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from scikit-learn->smt) (1.2.0)\n", + "Requirement already satisfied: threadpoolctl>=2.0.0 in /stck/psaves/miniconda3/lib/python3.8/site-packages (from scikit-learn->smt) (3.1.0)\n", + "\u001b[33mWARNING: Ignoring invalid distribution -umpy (/stck/psaves/miniconda3/lib/python3.8/site-packages)\u001b[0m\u001b[33m\n", + "\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m22.0.4\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m23.3.1\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + } + ], + "source": [ + "#to install smt\n", + "!pip install ConfigSpace\n", + "!pip install numba\n", + "!pip install smt\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "id": "-Y8Vi-hsmu35" + }, + "outputs": [], + "source": [ + "%matplotlib inline \n", + "\n", + "from math import exp\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from matplotlib import colors\n", + "from mpl_toolkits.mplot3d import Axes3D\n", + "from scipy.stats import norm\n", + "from scipy.optimize import minimize\n", + "import scipy\n", + "import six\n", + "from smt.applications import EGO\n", + "from smt.surrogate_models import KRG\n", + "from smt.sampling_methods import FullFactorial\n", + "from smt.sampling_methods import LHS\n", + "from sklearn import gaussian_process\n", + "from sklearn.gaussian_process.kernels import Matern, WhiteKernel, ConstantKernel\n", + "import matplotlib.font_manager\n", + "# Import necessary libraries\n", + "import pandas as pd\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.linear_model import LinearRegression\n", + "from sklearn.neural_network import MLPRegressor\n", + "from sklearn.metrics import r2_score\n", + "from sklearn.preprocessing import LabelEncoder, StandardScaler\n", + "\n", + "from smt.surrogate_models import MixIntKernelType\n", + "from smt.applications.mixed_integer import MixedIntegerKrigingModel, MixedIntegerSurrogateModel\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.metrics import r2_score\n", + "from scipy.optimize import curve_fit\n", + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "#to ignore warning messages\n", + "import warnings\n", + "warnings.filterwarnings(\"ignore\")\n", + "\n", + "from smt.applications.mixed_integer import MixedIntegerSamplingMethod\n", + "\n", + "\n", + "from smt.utils.design_space import (\n", + " DesignSpace,\n", + " FloatVariable,\n", + " IntegerVariable,\n", + " OrdinalVariable,\n", + " CategoricalVariable,\n", + ")\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "haRq-u4bmu37" + }, + "source": [ + "Definition of the plot function " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "SfVsrEH0nolz" + }, + "source": [ + "# Modeling a 4D structural problem" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "8BHCEbw3nwQ9" + }, + "source": [ + "__Background__: Hybrid composite problem involves the integration of different types of composite materials in a structural or functional application. Composites are materials made from two or more distinct constituents with different properties, combined to achieve enhanced performance. In a hybrid composite problem, the challenge lies in optimizing the combination of materials, such as fiber-reinforced polymers, metal matrix composites, or ceramic matrix composites, to achieve specific desired characteristics, such as strength, weight reduction, or thermal resistance. \n", + "\n", + "\n", + "The database is available at https://www.sciencedirect.com/science/article/abs/pii/S1359835X11000224\n", + "\n", + "The aim is to build a surrogate model for mixed variables in a hybrid composite problem. The trained surrogate model is able to predict the composites characteristics. \n", + "This is a tutorial for the following paper: A mixed-categorical data-driven approach for prediction and\n", + "optimization of hybrid discontinuous composites performance. \n", + "\n", + "The function inputs are:\n", + "\n", + "\n", + "\n", + "> 4 continuous variables **[lf Vc SmAvg G GiicmAvg]**\n", + "\n", + "\n", + "> 2 categorical variables **[Carbon fibres Glass Fibres]** with 16 levels.\n", + "\n", + "\n", + "The possible outputs are **[Initial_stiffness\tUltimate_strain\tPseudo_ductile_strain\tUltimate_strength\tYield_strength]**\n", + "\n", + "In this example, only the most influent continuous inputs are being used (**lf** and **Vc**), and the predicted variable is the **Initial Stiffness**\n", + "\n", + "**lf:** length of the fibre. \n", + "\n", + "**Vc:** Percentage of carbon fibre in the mixture. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "6UlDaf1S65MH" + }, + "outputs": [], + "source": [ + "plt.rcParams.update({'legend.labelspacing':1.0})" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "xq3a-3gyC-v_" + }, + "outputs": [], + "source": [ + "try :\n", + " from pydrive.auth import GoogleAuth\n", + " from pydrive.drive import GoogleDrive\n", + " from google.colab import auth\n", + " from oauth2client.client import GoogleCredentials\n", + "\n", + " # 1. Authenticate and create the PyDrive client.\n", + " auth.authenticate_user()\n", + " gauth = GoogleAuth()\n", + " gauth.credentials = GoogleCredentials.get_application_default()\n", + " drive = GoogleDrive(gauth)\n", + " json_import = drive.CreateFile({'id':'1fcB39mktJ2npTNqrF8dgZa7PWh3wU55X'})\n", + " json_import.GetContentFile('VTF_properties.json')\n", + " df = pd.read_csv(open('VTF_properties.json'))\n", + "except :\n", + " df = pd.read_csv(open('composite_material.csv'))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 270 + }, + "id": "Jj2kyCk97HAq", + "outputId": "43fa3b18-3ed2-479f-e2dd-e16f0b6d3ef0" + }, + "outputs": [], + "source": [ + "df = df.dropna()\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "1r6uCxjML51v" + }, + "outputs": [], + "source": [ + "data = df.sample(n=1000,random_state = 10)\n", + "data.Carbon_fibre = pd.Categorical(data.Carbon_fibre)\n", + "data['Carbon_fibre'] = data.Carbon_fibre.cat.codes \n", + "data.Glass_fibre = pd.Categorical(data.Glass_fibre)\n", + "data['Glass_fibre'] = data.Glass_fibre.cat.codes \n", + "Xd = data.drop(['SmAvg','G','GiicmAvg','Initial_stiffness','Ultimate_strain','Pseudo_ductile_strain','Ultimate_strength',\n", + " 'Yield_strength'],axis = 1)\n", + "\n", + "yd = data.Initial_stiffness\n", + "\n", + "X_train, X_test, y_train, y_test = train_test_split(Xd, yd, test_size = 0.25, random_state = 42)\n", + "X = np.asarray(X_train)\n", + "y = np.asarray(y_train).astype(float)\n", + "\n", + "#to define the variables\n", + "design_space = DesignSpace ([\n", + " CategoricalVariable (['XN-90', 'P120J', 'T1000GB', 'C124', 'T800H', 'M60JB', 'C320',\n", + " 'M40B', 'P75S', 'K13D', 'T300', 'XN-05', 'FliteStrand_S_ZT',\n", + " 'HTA5131', 'GF', 'C100']), #16 choices\n", + " CategoricalVariable (['GF', 'XN-05', 'FliteStrand_S_ZT', 'C124', 'T300', 'T800H', 'C320',\n", + " 'P75S', 'C100', 'XN-90', 'HTA5131', 'T1000GB', 'P120J', 'M40B',\n", + " 'M60JB']), #15 choices\n", + " FloatVariable (501.5425023,11999.96175),\n", + " FloatVariable (2.849e-05,1.0),\n", + "])\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "D6Psera9Oaeg" + }, + "outputs": [], + "source": [ + "sm=KRG(design_space = design_space, print_global=False, categorical_kernel=MixIntKernelType.GOWER)\n", + "sm.set_training_values(X, y)\n", + "sm.train()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 503 + }, + "id": "FJKbqByvxLqf", + "outputId": "5af35de1-3cfc-418b-e8ce-1e593d2a3734" + }, + "outputs": [], + "source": [ + "y_pred2 =sm.predict_values(np.asarray(X_test))\n", + "y_pred2[y_pred2<0]=0\n", + "\n", + "print(\"r2_score = \", r2_score(y_test, y_pred2))\n", + "\n", + "plt.scatter(y_test, y_pred2, s=30, facecolors='none', edgecolors='r')\n", + "plt.xlabel('True Values')\n", + "plt.ylabel('Predictions')\n", + "plt.title('Initial_stiffness')\n", + "plt.axis('equal')\n", + "plt.axis('square')\n", + "plt.grid()\n", + "_ = plt.plot([-500000, 500000], [-500000, 500000],'b')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Modeling a complex system" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "SfVsrEH0nolz" + }, + "source": [ + "__Background__: Lithium-ion batteries are commonly used for portable electronics, electric vehicles, and aerospace applications. During discharge, Lithium ions move from the negative electrode through an electrolyte to the positive electrode to create a voltage and current. During recharging, the ions migrate back to the negative electrode. The crystal structure (monoclinic, orthorhombic, triclinic) is available for 339 different chemicals that contain Li-ion.\n", + "\n", + "The database is available at [Lithium-ion Chemical Properties and Crystal Structure Data](https://apmonitor.com/pds/uploads/Main/lithium_ion.txt)\n", + "\n", + "\n", + "__Objective__: Predict the crystal structure type (monoclinic, orthorhombic, triclinic) from Lithium-ion physical and chemical compound information.\n", + "\n", + "This tutorial covers the following:\n", + "- Categorical transformation techniques\n", + "- Feature creation\n", + "- Feature selection\n", + "\n", + "\n", + "The function inputs are:\n", + "\n", + "> 5 continuous variables **[Formation Energy (eV) \tE Above Hull (eV) \tBand Gap (eV) \tNsites \tDensity (gm/cc) \tVolume]**\n", + "\n", + "> 1 ordinal variable **[Nsites]**\n", + "\n", + "> 4 categorical variables **[Materials Id \tFormula \tSpacegroup \tHas Bandstructure]** with respectively: 339, 114 and 44 levels.\n", + "\n", + "\n", + "The relaxed dimension by one-hot-encoding is 503\n", + "# => REALLY HIGH CATEGORICAL DIMENSION" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Materials IdFormulaSpacegroupFormation Energy (eV)E Above Hull (eV)Band Gap (eV)NsitesDensity (gm/cc)VolumeHas BandstructureCrystal System
0mp-849394Li2MnSiO4Pc-2.6990.0063.462162.993178.513Truemonoclinic
1mp-783909Li2MnSiO4P21/c-2.6960.0082.879322.926365.272Truemonoclinic
2mp-761311Li4MnSi2O7Cc-2.7750.0123.653282.761301.775Truemonoclinic
3mp-761598Li4Mn2Si3O10C2/c-2.7830.0133.015382.908436.183Truemonoclinic
4mp-767709Li2Mn3Si3O10C2/c-2.7470.0162.578363.334421.286Truemonoclinic
\n", + "
" + ], + "text/plain": [ + " Materials Id Formula Spacegroup Formation Energy (eV) \\\n", + "0 mp-849394 Li2MnSiO4 Pc -2.699 \n", + "1 mp-783909 Li2MnSiO4 P21/c -2.696 \n", + "2 mp-761311 Li4MnSi2O7 Cc -2.775 \n", + "3 mp-761598 Li4Mn2Si3O10 C2/c -2.783 \n", + "4 mp-767709 Li2Mn3Si3O10 C2/c -2.747 \n", + "\n", + " E Above Hull (eV) Band Gap (eV) Nsites Density (gm/cc) Volume \\\n", + "0 0.006 3.462 16 2.993 178.513 \n", + "1 0.008 2.879 32 2.926 365.272 \n", + "2 0.012 3.653 28 2.761 301.775 \n", + "3 0.013 3.015 38 2.908 436.183 \n", + "4 0.016 2.578 36 3.334 421.286 \n", + "\n", + " Has Bandstructure Crystal System \n", + "0 True monoclinic \n", + "1 True monoclinic \n", + "2 True monoclinic \n", + "3 True monoclinic \n", + "4 True monoclinic " + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "try:\n", + " import chemparse\n", + " import smt\n", + "except:\n", + " !pip install chemparse\n", + " print('May need to restart kernel to use chemparse')\n", + "# Import libraries and data\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "from sklearn.preprocessing import LabelEncoder, MinMaxScaler\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.feature_extraction import FeatureHasher\n", + "from sklearn.metrics import confusion_matrix,plot_confusion_matrix\n", + "\n", + "from sklearn.datasets import make_circles, make_classification, make_moons\n", + "from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis\n", + "from sklearn.ensemble import AdaBoostClassifier, RandomForestClassifier\n", + "from sklearn.gaussian_process import GaussianProcessClassifier\n", + "from sklearn.gaussian_process.kernels import RBF\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.naive_bayes import GaussianNB\n", + "from sklearn.neighbors import KNeighborsClassifier\n", + "from sklearn.neural_network import MLPClassifier\n", + "from sklearn.pipeline import make_pipeline\n", + "from sklearn.preprocessing import StandardScaler\n", + "from sklearn.svm import SVC\n", + "from sklearn.tree import DecisionTreeClassifier\n", + "\n", + "from smt.utils.design_space import FloatVariable, IntegerVariable, OrdinalVariable,CategoricalVariable\n", + "import pandas as pd \n", + "import numpy as np\n", + "from smt.applications.mixed_integer import (\n", + " MixedIntegerContext,\n", + " MixedIntegerSamplingMethod,\n", + " MixedIntegerKrigingModel\n", + ")\n", + "from smt.surrogate_models import (\n", + " KRG,\n", + " GEKPLS,\n", + " KPLS,\n", + " QP,\n", + " MixIntKernelType,\n", + " MixHrcKernelType,\n", + ")\n", + "# Load and display data\n", + "url = 'http://apmonitor.com/pds/uploads/Main/lithium_ion.txt'\n", + "data = pd.read_csv(url)\n", + "datatype = data.dtypes\n", + "data.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "indy = 10 #Crystal\n", + "design_space_battery = []\n", + "catlists=[]\n", + "for indi,i in enumerate(datatype) : \n", + " if indi != 8 :\n", + " if i == \"object\" or i == \"bool\" : \n", + " ilist =list(np.unique(np.array(data[data.columns[indi]]))) \n", + " if i == \"object\" : \n", + " catlists.append(ilist)\n", + " design_space_battery.append(CategoricalVariable(ilist))\n", + " elif i == \"int64\" : \n", + " ilist =list(np.unique(np.array(data[data.columns[indi]]))) \n", + " design_space_battery.append(IntegerVariable(min(ilist),max(ilist)))\n", + " elif i == \"float64\" : \n", + " ilist =list(np.unique(np.array(data[data.columns[indi]]))) \n", + " design_space_battery.append(FloatVariable(min(ilist)-1e-9,max(ilist)+1e-9))\n", + "\n", + "Training_data=data.sample(int(339*0.3),random_state=42)\n", + "Val_data = pd.concat([data,Training_data]).drop_duplicates(keep=False)\n", + "index_train = np.array(list(enumerate(Training_data.T))).T[1]\n", + "index_val = np.array(list(enumerate(Val_data.T))).T[1]\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Separate into numerical features that don't need preprocessing, and categorical features that need to be transformed\n", + "num_feat = data.select_dtypes(include=['int64','float64']).columns\n", + "cat_feat = data.select_dtypes(include=['object','bool']).columns" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Count elements to transform data to ordinal values\n", + "ord_feat = ['Formation Energy (eV)','E Above Hull (eV)','Band Gap (eV)',\n", + " 'Nsites','Density (gm/cc)','Volume','Has Bandstructure',\n", + " 'Spacegroup (ordinal)','Formula (#)' ]\n", + "\n", + "hash_feat = ['Formation Energy (eV)','E Above Hull (eV)','Band Gap (eV)',\n", + " 'Nsites','Density (gm/cc)','Volume','Has Bandstructure',\n", + " 'Spacegroup0','Spacegroup1','Spacegroup2',\n", + " 'Formula (#)'\n", + " ]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## USING A RANDOM FOREST CLASSIFIER\n", + "\n", + "#### 1. Original Numerical features only\n", + "Method: Ignore categorical variables and treat only the continuous ones.\n", + "\n", + "Pros: Simple and quick. We can use directly the continuous models\n", + "\n", + "Cons: Lose a lot of information. \n", + "\n", + "#### 2. Encode to ordinal variables\n", + "Method: assign each unique value to a unique number. The categorical variables representative of molecules are separated by atom types to help.\n", + "\n", + "Example: Spacegroup = Pc is assigned to 0, Spacegroup = P21/c is assigned to 1, etc. \n", + "\n", + "Pros: simple and quick, 1 column in -> 1 column out\n", + "\n", + "Cons: residual \"structure\" (number assigned is arbitrary, and it leads algorithms to assume that a Spacegroup with a value of 20 is higher value than a Spacegroup of value 1)\n", + "\n", + "#### 3. Feature Hashing\n", + "Method: Encode each unique category into a non-binary vector. The categorical variables representative of molecules are separated by atom types to help.\n", + "\n", + "Example: Spacegroup = Pc is assigned to [1,0,0], Spacegroup = P21/c is assigned to [1,2,-1], etc. Specify number of columns (length of vector)\n", + "\n", + "Pros: low dimensionality so really efficient.\n", + "\n", + "Cons: potential collisions (for example the 1st value in example has both Spacegroups sharing a '1'); hashed features aren't interpretable so can't be used in feature importance. \n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Save new features in dataframe\n", + "data.to_csv('lithium_ion_data.csv',index=False)\n", + "\n", + "# Option 2: Ordinal number encoding\n", + "data['Spacegroup (ordinal)'] = pd.factorize(data['Spacegroup'])[0]\n", + "\n", + "# Can also order by most common to least common\n", + "data['Spacegroup'].rank(method=\"dense\").astype(int)\n", + "\n", + "# Option 2: Ordinal number encoding\n", + "data['Formula (#)'] = pd.factorize(data['Formula'])[0]\n", + "\n", + "\n", + "\n", + "# Option 3: Feature Hashing\n", + "n = 3\n", + "fh = FeatureHasher(n_features=n, input_type='string')\n", + "hashed_tag = fh.fit_transform(data['Spacegroup']).toarray()\n", + "ht_df = pd.DataFrame(hashed_tag)\n", + "ht_df.columns = ['Spacegroup'+str(i) for i in range(n)]\n", + "\n", + "data = data.join(ht_df)\n", + "# Encode Crystal System to ordinal values for multi-class problem\n", + "labelencoder = LabelEncoder() #initializing an object of class LabelEncoder\n", + "data['Crystal System (#)'] = labelencoder.fit_transform(data['Crystal System']) \n", + "\n", + "\n", + "# For a multi-label problem, use one-hot encoding\n", + "data[['monoclinic','orthorhombic','triclinic']] = pd.get_dummies(data['Crystal System'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# All new numerical features (Crystal System excluded, since it's int32)\n", + "features = list(data.select_dtypes(include=['int64','float64']).columns.values)\n", + "\n", + "ord_feat = ['Formation Energy (eV)','E Above Hull (eV)','Band Gap (eV)',\n", + " 'Nsites','Density (gm/cc)','Volume','Has Bandstructure',\n", + " 'Spacegroup (ordinal)','Formula (#)'\n", + " ]\n", + "\n", + "hash_feat = ['Formation Energy (eV)','E Above Hull (eV)','Band Gap (eV)',\n", + " 'Nsites','Density (gm/cc)','Volume','Has Bandstructure',\n", + " 'Spacegroup0','Spacegroup1','Spacegroup2',\n", + " 'Formula (#)'\n", + " ]\n", + "\n", + "labels = ['Crystal System (#)']\n", + "\n", + "plt.figure(figsize=(16,5))\n", + "\n", + "titles = ['Original Numerical Features Only',\n", + " 'With Encoded Features\\n(Ordinal Spacegroup)',\n", + " 'With Encoded Features\\n(Hashed Spacegroup)'\n", + " ]\n", + "\n", + "for i, feat in enumerate([num_feat,ord_feat,hash_feat]):\n", + " X = data[feat]\n", + " y = data[labels]\n", + "\n", + " # 80% training data and 20% testing\n", + " Xtrain = X.iloc[list(index_train)]\n", + " Xtest = X.iloc[list(index_val)]\n", + " ytrain = y.iloc[list(index_train)]\n", + " ytest = y.iloc[list(index_val)]\n", + " \n", + " dtree = RandomForestClassifier( max_depth=5, n_estimators=10, max_features=1, random_state=42)\n", + " dtree.fit(Xtrain,ytrain)\n", + " yp = dtree.predict(Xtest)\n", + " \n", + " # Plot confusion matrix\n", + " plt.subplot(1,3,i+1)\n", + " cm = confusion_matrix(ytest,yp)\n", + " sns.heatmap(cm,annot=True)\n", + " plt.title(titles[i])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4. Mixed integer Kriging by Continuous relaxation and Gower distance\n", + "Method: Build a mixed integer Kriging model for prediction based on Gower distance.\n", + "\n", + "Pros: Simple to use thanks to SMT. Fast to build. No need to treat the data (black-box). Perfect predictions.\n", + "\n", + "Cons: None" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Feat = ['Materials Id','Formula', 'Spacegroup', 'Formation Energy (eV)', 'E Above Hull (eV)', 'Band Gap (eV)', 'Nsites', 'Density (gm/cc)', 'Volume', 'Has Bandstructure']\n", + "data= data[Feat]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Ydata = Training_data[Training_data.columns[indy]]\n", + "Yt = np.array(Ydata)\n", + "Yt2 = np.copy(Yt)\n", + "indi=0\n", + "for yt in Yt :\n", + " if yt ==\"triclinic\" :\n", + " Yt2[indi] = 2\n", + " elif yt ==\"orthorhombic\" :\n", + " Yt2[indi] = 1\n", + " elif yt ==\"monoclinic\" :\n", + " Yt2[indi] = 0\n", + " indi = indi+1\n", + "Yt = Yt2\n", + "Yt=Yt.astype(float)\n", + "\n", + "Training_data.drop(Training_data.columns[indy], axis=1, inplace=True)\n", + "Xtd=np.array(Training_data)\n", + "Xt = np.copy(Xtd)\n", + "indcat=-1\n", + "for i in range(np.shape(Xtd)[1]) : \n", + " if type(Xtd[0,i]) == str :\n", + " indcat = indcat+1\n", + " for j in range(np.shape(Xtd)[0]) :\n", + " Xt[j,i]=np.float64(catlists[indcat].index(Xtd[j,i]))\n", + " elif type(Xtd[0,i]) == bool :\n", + " for j in range(np.shape(Xtd)[0]) :\n", + " if Xtd[j,i] ==True :\n", + " Xt[j,i]=1\n", + " else : \n", + " Xt[j,i] = 0\n", + " else : \n", + " for j in range(np.shape(Xtd)[0]) :\n", + " Xt[j,i]=np.float64(Xtd[j,i])\n", + "Xt=Xt.astype(float)\n", + "\n", + "\n", + "sm = MixedIntegerKrigingModel (\n", + " surrogate =KRG( design_space = design_space_battery, \n", + " categorical_kernel = MixIntKernelType.GOWER,\n", + " theta0=[1e-2],\n", + " corr=\"squar_exp\",\n", + " n_start=30,\n", + " ))\n", + "sm.set_training_values (Xt , Yt)\n", + "sm.train()\n", + "\n", + "Yvalid = np.array(Val_data[Val_data.columns[indy]])\n", + "Yt2 = np.copy(Yvalid)\n", + "indi=0\n", + "for yt in Yvalid :\n", + " if yt ==\"triclinic\" :\n", + " Yt2[indi] = 2\n", + " elif yt ==\"orthorhombic\" :\n", + " Yt2[indi] = 1\n", + " elif yt ==\"monoclinic\" :\n", + " Yt2[indi] = 0\n", + " indi = indi+1\n", + "Yvalid = Yt2\n", + "Yvalid=Yvalid.astype(float)\n", + "\n", + "Val_data.drop(Val_data.columns[indy], axis=1, inplace=True)\n", + "Xtv=np.array(Val_data)\n", + "\n", + "Xvalid = np.copy(Xtv)\n", + "indcat=-1\n", + "for i in range(np.shape(Xtv)[1]) : \n", + " if type(Xtv[0,i]) == str :\n", + " indcat = indcat+1\n", + " for j in range(np.shape(Xtv)[0]) :\n", + " Xvalid[j,i]=np.float64(catlists[indcat].index(Xtv[j,i]))\n", + " elif type(Xtv[0,i]) == bool :\n", + " for j in range(np.shape(Xtv)[0]) :\n", + " if Xtv[j,i] ==True :\n", + " Xvalid[j,i]=1\n", + " else : \n", + " Xvalid[j,i] = 0\n", + " else : \n", + " for j in range(np.shape(Xtd)[0]) :\n", + " Xvalid[j,i]=np.float64(Xtv[j,i])\n", + "Xvalid=Xvalid.astype(float)\n", + "\n", + "plt.figure()\n", + "cm = confusion_matrix(np.atleast_2d(np.abs(np.around(sm.predict_values(Xvalid).T,0)))[0],Yvalid)\n", + "sns.heatmap(cm,annot=True)\n", + "plt.plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Additive Manufacturing\n", + "\n", + "Additive manufacturing is the process of building from a computer controlled 3-dimensional printer. The material can be polymer (plastic), ceramic, metallic powder, liquid, or any material that is joined together through deposition, solidification, or fusion. It speeds the development of prototypes by precisely converting a computer aided design (CAD) drawing into a physical device. Additive manufacturing can be either a prototype or scaled up to full product production, but typically for applications that require customization or with low production volumes.\n", + "\n", + "Background: A 3D print data set of additive manufacturing test conditions is available for Polylactic Acid (PLA) and Acrylonitrile Butadiene Styrene (ABS). PLA can print at lower temperatures of 180°C compared to 250°C for ABS. PLA is more brittle than ABS and is not typically suitable for high strength applications. The data was collected by researchers in the Mechanical Engineering department at Selçuk Üniversitesi on a Ultimaker S5 3D printer. The study focused on how the parameters in a specific 3D printer affects the print quality, accuracy and final part strength. This work is based on the settings and PLA or ABS filaments. Material and strength tests were carried out on a Sincotec GMBH tester capable of pulling 20 kN.\n", + "Nine parameters were adjusted for the Ultimaker S5 3D printer.\n", + "\n", + "\n", + "* Layer Height (mm)\n", + "* Wall Thickness (mm)\n", + "* Infill Density (%)\n", + "* Infill Pattern (Honeycomb or Grid)\n", + "* Nozzle Temperature (ºC)\n", + "* Bed Temperature (ºC)\n", + "* Print Speed (mm/s)\n", + "* Material (PLA or ABS)\n", + "* Fan Speed (%)\n", + "* After the part was manufactured, three parameters were measured for each product.\n", + "* Roughness (µm)\n", + "* Tension Strength (MPa)\n", + "* Elongation (%)\n", + "\n", + "\n", + "\n", + "The labeled data is a combination of PLA and ABS material, print patterns, and conditions with 66 samples from a first repository and 50 samples from a second repository. The combined set is 70 samples with the duplicates removed and one outlier added. The label associated with each filament is pla or abs. The print pattern is grid or honeycomb. One-hot encoding translates character labels into a binary representation (0 or 1) for classification." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Layer HeightWall ThicknessInfill DensityInfill PatternNozzle TemperatureBed TemperaturePrint SpeedMaterialFan SpeedRoughnessTension StrengthElongation
00.028.090grid2206040abs025181.2
10.027.090honeycomb2256540abs2532161.4
20.021.080grid2307040abs504080.8
30.024.070honeycomb2407540abs7568100.5
40.026.090grid2508040abs1009250.7
\n", + "
" + ], + "text/plain": [ + " Layer Height Wall Thickness Infill Density Infill Pattern \\\n", + "0 0.02 8.0 90 grid \n", + "1 0.02 7.0 90 honeycomb \n", + "2 0.02 1.0 80 grid \n", + "3 0.02 4.0 70 honeycomb \n", + "4 0.02 6.0 90 grid \n", + "\n", + " Nozzle Temperature Bed Temperature Print Speed Material Fan Speed \\\n", + "0 220 60 40 abs 0 \n", + "1 225 65 40 abs 25 \n", + "2 230 70 40 abs 50 \n", + "3 240 75 40 abs 75 \n", + "4 250 80 40 abs 100 \n", + "\n", + " Roughness Tension Strength Elongation \n", + "0 25 18 1.2 \n", + "1 32 16 1.4 \n", + "2 40 8 0.8 \n", + "3 68 10 0.5 \n", + "4 92 5 0.7 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Load data from URL\n", + "url = \"https://apmonitor.com/pds/uploads/Main/manufacturing.txt\"\n", + "data = pd.read_table(url, delimiter=',')\n", + "\n", + "# Change and store variable names\n", + "parameters = [\"Layer Height\", \"Wall Thickness\", \"Infill Density\",\n", + " \"Infill Pattern\", \"Nozzle Temperature\", \"Bed Temperature\",\n", + " \"Print Speed\", \"Material\", \"Fan Speed\",\n", + " \"Roughness\", \"Tension Strength\", \"Elongation\"]\n", + "data.columns = parameters\n", + "\n", + "data.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# Save new features in dataframe\n", + "data.to_csv('additive_manufacturing.csv',index=False)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1. Surrogate Modeling Toolbox -> Kringing method with mixed variables" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "# Decode the data back to its original form\n", + "label_encoder_infill = LabelEncoder()\n", + "label_encoder_material = LabelEncoder()\n", + "data['Infill Pattern'] = label_encoder_infill.fit_transform(data['Infill Pattern'])\n", + "data['Material'] = label_encoder_material.fit_transform(data['Material'])\n", + "data.head()\n", + "X = data.drop('Tension Strength', axis=1)\n", + "y = data['Tension Strength']\n", + "#scaler = StandardScaler()\n", + "#X = scaler.fit_transform(X)\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)\n", + "data['Infill Pattern'] = label_encoder_infill.inverse_transform(data['Infill Pattern'])\n", + "data['Material'] = label_encoder_material.inverse_transform(data['Material'])\n", + "data['Infill Pattern']= pd.Categorical(data['Infill Pattern'])\n", + "data['Infill Pattern'] = data['Infill Pattern'].cat.codes\n", + "\n", + "data['Material']= pd.Categorical(data['Material'])\n", + "data['Material'] = data['Material'].cat.codes\n", + "\n", + "X = data.drop('Tension Strength', axis=1)\n", + "y = data['Tension Strength']\n", + "\n", + "# Identify the indices of the non-categorical columns\n", + "non_categorical_indices = [0,1,2,4,5,6,8,9,10]\n", + "\n", + "# Extract the non-categorical features\n", + "X_non_categorical = X.iloc[:, non_categorical_indices]\n", + "\n", + "# Apply StandardScaler only to the non-categorical features\n", + "#scaler = StandardScaler()\n", + "#X_non_categorical_scaled = scaler.fit_transform(X_non_categorical)\n", + "\n", + "# Replace the non-categorical features in the original matrix with the scaled values\n", + "X.iloc[:, non_categorical_indices] = X_non_categorical\n", + "X_ = np.asarray(X)\n", + "y_ = np.asarray(y).astype(float)\n", + "X_train, X_test, y_train, y_test = train_test_split(X_, y_, test_size=0.3, random_state=42)\n", + "# Create the design space\n", + "design_space = DesignSpace(\n", + " [\n", + " FloatVariable (data[\"Layer Height\"].min(),data[\"Layer Height\"].max()), # Layer Height\n", + " FloatVariable (data[\"Wall Thickness\"].min(),data[\"Wall Thickness\"].max()), # Wall Thickness\n", + " FloatVariable (data[\"Infill Density\"].min(),data[\"Infill Density\"].max()), # Infill Density\n", + " CategoricalVariable(list(label_encoder_infill.classes_)), # Infill Pattern\n", + " FloatVariable (data[\"Nozzle Temperature\"].min(),data[\"Nozzle Temperature\"].max()), # Nozzle Temperature\n", + " FloatVariable (data[\"Bed Temperature\"].min(),data[\"Bed Temperature\"].max()), # Bed Temperature\n", + " FloatVariable (data[\"Print Speed\"].min(),data[\"Print Speed\"].max()), # Layer Height\n", + " CategoricalVariable(list(label_encoder_material.classes_) ), # Material\n", + " FloatVariable (data[\"Fan Speed\"].min(),data[\"Fan Speed\"].max()), # Fan Speed\n", + " FloatVariable (data[\"Roughness\"].min(),data[\"Roughness\"].max()), # Roughness\n", + " FloatVariable (data[\"Elongation\"].min(),data[\"Elongation\"].max()), # Layer Height\n", + " ]\n", + ")\n", + "\n", + "# Initialize the mixed-integer kriging model\n", + "sm=KRG(design_space = design_space, \n", + " corr=\"abs_exp\",\n", + " n_start=30,\n", + " print_global=False,\n", + " categorical_kernel=MixIntKernelType.HOMO_HSPHERE)\n", + "sm.set_training_values(X_train, np.atleast_2d(y_train).T)\n", + "sm.train()\n", + "# Predict on train and test sets\n", + "y_train_pred_smt = sm.predict_values(X_train).T[0]\n", + "y_test_pred_smt = sm.predict_values(X_test).T[0]\n", + "\n", + "# Calculate R2 scores\n", + "r2_train_smt = r2_score(y_train, y_train_pred_smt)\n", + "r2_test_smt = r2_score(y_test, y_test_pred_smt)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data Preprocessing for continuous models" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Encode categorical variables (Infill Pattern and Material)**" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "label_encoder_infill = LabelEncoder()\n", + "label_encoder_material = LabelEncoder()\n", + "data['Infill Pattern'] = label_encoder_infill.fit_transform(data['Infill Pattern'])\n", + "data['Material'] = label_encoder_material.fit_transform(data['Material'])\n", + "data.head()\n", + "X = data.drop('Tension Strength', axis=1)\n", + "y = data['Tension Strength']\n", + "scaler = StandardScaler()\n", + "X = scaler.fit_transform(X)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2. Linear model" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# Initialize the model\n", + "linear_model = LinearRegression()\n", + "\n", + "# Fit the model\n", + "linear_model.fit(X_train, y_train)\n", + "\n", + "# Predict on train and test sets\n", + "y_train_pred_linear = linear_model.predict(X_train)\n", + "y_test_pred_linear = linear_model.predict(X_test)\n", + "\n", + "# Calculate R2 scores\n", + "r2_train_linear = r2_score(y_train, y_train_pred_linear)\n", + "r2_test_linear = r2_score(y_test, y_test_pred_linear)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3. Neural Network (Deep Learning)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "# Initialize the model\n", + "nn_model = MLPRegressor(hidden_layer_sizes=(100,), max_iter=500)\n", + "\n", + "# Fit the model\n", + "nn_model.fit(X_train, y_train)\n", + "\n", + "# Predict on train and test sets\n", + "y_train_pred_nn = nn_model.predict(X_train)\n", + "y_test_pred_nn = nn_model.predict(X_test)\n", + "\n", + "# Calculate R2 scores\n", + "r2_train_nn = r2_score(y_train, y_train_pred_nn)\n", + "r2_test_nn = r2_score(y_test, y_test_pred_nn)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 4. Surrogate Modeling Toolbox -> KPLS with automatic number of component" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# Initialize the model\n", + "sm_model_Q = KPLS(eval_n_comp=True,print_global = False)\n", + "sm_model_Q.set_training_values(np.array(X_train), np.array(y_train).reshape(-1,1))\n", + "\n", + "# Fit the model\n", + "sm_model_Q.train()\n", + "\n", + "# Predict on train and test sets\n", + "y_train_pred_KPLS = sm_model_Q.predict_values(np.array(X_train)).T[0] \n", + "y_test_pred_KPLS = sm_model_Q.predict_values(np.array(X_test)).T[0]\n", + "\n", + "# Calculate R2 scores\n", + "r2_train_KPLS = r2_score(y_train, y_train_pred_KPLS)\n", + "r2_test_KPLS = r2_score(y_test, y_test_pred_KPLS)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Results 3D printing" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Linear Regression:\n", + "Train R2: 0.8080\n", + "Test R2: 0.6566\n", + "\n", + "Neural Network:\n", + "Train R2: -1.8152\n", + "Test R2: -1.9407\n", + "\n", + "SMT KPLS cont:\n", + "Train R2: 1.0000\n", + "Test R2: 0.7156\n", + "\n", + "SMT KRG Mixed:\n", + "Train R2: 1.0000\n", + "Test R2: 0.7592\n", + "\n" + ] + } + ], + "source": [ + "# Print R2 scores for each model on train and test sets\n", + "print(\"Linear Regression:\")\n", + "print(f\"Train R2: {r2_train_linear:.4f}\")\n", + "print(f\"Test R2: {r2_test_linear:.4f}\\n\")\n", + "\n", + "print(\"Neural Network:\")\n", + "print(f\"Train R2: {r2_train_nn:.4f}\")\n", + "print(f\"Test R2: {r2_test_nn:.4f}\\n\")\n", + "\n", + "print(\"SMT KPLS cont:\")\n", + "print(f\"Train R2: {r2_train_KPLS:.4f}\")\n", + "print(f\"Test R2: {r2_test_KPLS:.4f}\\n\")\n", + "\n", + "print(\"SMT KRG Mixed:\")\n", + "print(f\"Train R2: {r2_train_smt:.4f}\")\n", + "print(f\"Test R2: {r2_test_smt:.4f}\\n\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Parity Plot\n", + "A parity plot is a scatter plot with predicted versus measured. A parity plot of the training and test data is a good way to see the overall fit of tension strength." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxUAAAL9CAYAAABdfUtRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd1wT5x8H8E/ChrBEEJApKooTcaHiZKh1Va1atcXR1l/dtbXa1mprh1Xb2tZarbaitbVad4cW3OJCRXChiANEUUTZe+T5/fE0gZAACUlIgO/79cpLc3e5e+4S7nvPFjDGGAghhBBCCCGkloS6TgAhhBBCCCGkfqNMBSGEEEIIIUQtlKkghBBCCCGEqIUyFYQQQgghhBC1UKaCEEIIIYQQohbKVBBCCCGEEELUQpkKQgghhBBCiFooU0EIIYQQQghRC2UqCCGEEEIIIWqhTAUhhNSCh4cHBAKBzMvExARubm4YP348IiMj6ywtU6ZMgUAgwJYtW+rsmFXZsmWL3HURCoWwtrZG9+7d8dlnnyE3N1fuc5JtCSGE1E+UqSCEEDX07t0boaGhCA0NxZAhQyAWi/HHH3+gX79++Prrr3WaNskD/pQpU+r82BYWFtLrMmnSJLRv3x7R0dFYsmQJ/Pz8kJqaqrVjJyYmQiAQwMPDQ2vHIIQQIstQ1wkghJD67LXXXpN5aC8sLMSMGTPwyy+/4N1338WwYcPQunVrraZhxYoVWLx4MZycnLR6HFU0bdpUrubkwoULGDRoEG7fvo2FCxfil19+0U3iCCGEaBzVVBBCiAaZmppi3bp1sLCwQFlZGfbu3av1Yzo5OaFNmzawtrbW+rHU0b17d7z99tsAgL1796K0tFTHKSKEEKIplKkghBANE4lE8Pb2BsCb4gBAWloavvvuOwwdOhSenp4wMzODlZUVunbtipUrV6KwsFDhvir2NQgLC4O/vz+sra0hEAik+1bUp8LDwwNTp04FAGzdulWmj0P//v0hFovRokULCAQCnDt3rspzmTlzJgQCAd599101rwrn5+cHAMjLy8OzZ8+U+kx6ejref/99tGvXDubm5rC0tISfnx9WrVqFgoICmW2nTJkCT09PAEBSUpJc/w4JsViMjRs3onfv3rCxsYGRkREcHBzQqVMnzJkzR3ptCSGEKIeaPxFCiBZkZ2cDAExMTAAA4eHhmDdvHpo3b46WLVuiZ8+eSEtLQ1RUFBYvXowDBw7g+PHj0u0rmzNnDn744Qf06tULL7zwAu7du1dtx+axY8fi/PnzOHPmDLy8vNCnTx/pujZt2kAoFGL27Nl4++238f3338Pf31/hOWzbtg1CoRAzZ85U53LI7FOiqnOt6N69exg4cCCSkpJgb2+PoUOHoqSkBMePH8eiRYuwc+dOHDlyBLa2tgCAPn36IDc3F3v27IGFhQXGjh2rcL+vvfYawsLCYGpqij59+sDe3h7p6em4d+8evv/+ewwaNIj6ZBBCiCoYIYQQlbm7uzMALCwsTG7dlStXmFAoZADY5s2bGWOMxcXFsXPnzsltm56ezoKDgxkAtmrVKrn1ABgAZmVlpfDzjDEWGhqqMC1hYWEMAAsNDVX4uczMTGZhYcGMjY3ZkydP5NavXbuWAWDDhw9X+HlFJMd0d3dXuH7s2LEMAHNzc5NZLjnPynr06MEAsBEjRrDc3Fzp8qdPn7IuXbowAGzixIkyn7l//361aUhKSmIAmIuLC3v8+LHc+ri4OJaUlFTDmRJCCKmImj8RQoiGZGVl4eDBgxg9ejTEYjGcnZ0xbtw4AEDbtm3Rs2dPuc/Y2tpi7dq1AIBdu3ZVue933nlH4efVYW1tjdDQUBQXF2PTpk1y69etWwcAmD17tlrHKSsrw507dzB//nzs3r0bADB//vwaP3f69GlERUXB3NwcGzduhIWFhXSdvb09Nm7cCADYsWMHHj58qHR6JCNPdenSBY6OjnLr27ZtCzc3N6X3RwghhJo/EUKIWqZOnSrtu1CRl5eXtAmORFlZGU6cOIGzZ8/i8ePHKCgoAGMMjDEAQHx8fJXHqaoZj7rmzp2L9evX48cff8TixYthaMjDwtGjR3Hr1i14e3sjKChI5f1K+jNUJhQKMX/+fKUyFSdOnAAADB48GM2aNZNb7+fnh06dOuHKlSs4efIkJk2apFTa2rRpA0tLSxw8eBCfffYZJk6cKO2HQQghpHYoU0EIIWro3bs3WrZsCQAwNjaGg4MDevbsicGDB0sf0AEgISEBL774Im7cuFHlvir2N6hMW+37vb29ERwcjPDwcOzfv1+aeZHUUkg6aquqYn8GgUAAkUiE1q1bY9iwYUo/wD969AgAqt3ey8sLV65ckW6rDEtLS4SFhWHq1KlYsmQJlixZAicnJ+n3NnHiRIhEIqX3RwghhDIVhBCilsrzVFRl7NixuHHjBoYNG4Z3330XPj4+sLKygpGREYqLi2vstGxmZqahFMubN28ewsPDsW7dOowdOxbJycn4888/IRKJaj1xnqJ5KvTJmDFjEBgYiD///BORkZE4c+YM9u3bh3379mHp0qU4fPgwOnTooOtkEkJIvUF9KgghRMtu3bqFq1evwsHBAfv27UNAQADs7OxgZGQEgNdi6NLgwYPRunVrnDhxAjdu3MCGDRtQVlaGV155BVZWVjpLV/PmzQHwEaCqIlkn2VYV1tbWeOWVV7Bx40bcuHEDDx48wMiRI5Gamqp2PxJCCGlsKFNBCCFalp6eDgBwdnaWaRIl8euvv2rluMbGxgBQ4yRzAoEAc+bMAQB8/fXX+OmnnwCo30FbXf379wcA/Pvvv9LO1RXFxMQgNjYWQqEQffv2lS5X9rwrc3V1xccffwwAiI2NrV2iCSGkkaJMBSGEaFnr1q1hYGCAa9euSTsfS/z1119Ys2aNVo7r4uICAIiLi6tx2ylTpsDa2hqbN2/G06dPMWDAAPj4+GglXcrq06cPevTogYKCAsyYMQP5+fnSdc+ePcOMGTMAABMmTICrq6t0nb29PYyNjfHkyRNphq6imJgY7Ny5U27iPIB/HwDg7u6u6dMhhJAGjfpUEEKIljVt2hSzZ8/Gt99+i0GDBiEgIADOzs6Ij4/H5cuXsWTJEnz66acaP27Pnj3h7OyMmJgYdOnSBR06dICRkRG8vb2xcOFCmW1FIhGmTp2Kb775BoDuaykktm/fjoEDB+LAgQPw9PRE3759pZPfZWdno0uXLvj+++9lPmNkZIQRI0Zg9+7d6Ny5M/r06QNzc3MAwE8//YSkpCRMmDABZmZm6NKlC1xdXVFaWopr164hPj4exsbGWLVqlS5OlxBC6i2qqSCEkDqwZs0a/Pzzz/D19UV0dDQOHjwIc3Nz7NixA5988olWjmlsbIzw8HCMGDECDx8+xK+//oqff/4Z//zzj8LtQ0JCAPBmQCNHjtRKmlTVokULXL58Ge+99x7s7Ozw999/4/Dhw/Dy8sIXX3yB06dPS2fTrujHH3/EjBkzIBAIsHv3bvz888/4+eefAfDM1hdffIEBAwYgJSUFf/75JyIiImBgYIBZs2bh6tWrGDx4cF2fKiGE1GsCJhkgnRBCSKM2efJk/Pbbb/j888/x3nvv6To5hBBC6hHKVBBCCMG1a9fQpUsXmJqaIikpCU2aNNF1kgghhNQj1KeCEEIasddeew15eXk4dOgQSktLsWTJEspQEEIIURnVVBBCSCMmEAggFArh6uqK1157DR988EGtZtAmhBDSuFFNBSGENGJUrkQIIUQTaPQnQgghhBBCiFooU0EIIYQQQghRC2UqCCGEEEIIIWqhTAUhhBBCCCFELZSpIIQQQgghhKiFMhWEEEIIIYQQtVCmghBCCCGEEKIWylQQQgghhBBC1EKZCkIIIYQQQohaKFNBCCGEEEIIUQtlKgghhBBCCCFqoUwFIYQQQgghRC2UqSCEEEIIIYSohTIVhBBCCCGEELVQpoIQQgghhBCiFspUEEIIIYQQQtRCmQpCCCGEEEKIWihTQQghhBBCCFELZSoIIYQQQgghaqFMBSGEEEIIIUQtlKkghBBCCCGEqIUyFYQQQgghhBC1UKaCEEIIIYQQohbKVBBCCCGEEELUQpkKQgghhBBCiFooU0EIIYQQQghRC2UqCCGEEEIIIWqhTAUhhBBCCCFELZSpIIQQQgghhKiFMhWEEEIIIYQQtVCmghBCCCGEEKIWylQQQgghhBBC1EKZCkIIIYQQQohaKFNBCCGEEEIIUQtlKgghhBBCCCFqoUwFIYQQQgghRC2UqSCEEEIIIYSohTIVhBBCCCGEELVQpoIQQgghhBCiFspUEEIIIYQQQtRCmQpCCCGEEEKIWihTQQghhBBCCFELZSoIIYQQQgghaqFMBSGEEEIIIUQtlKkghBBCCCGEqIUyFYQQQgghhBC1UKaCEEIIIYQQohbKVBBCCCGEEELUQpkKQgghhBBCiFooU0EIIYQQQghRC2UqCCGEEEIIIWqhTAUhhBBCCCFELZSpIIQQQgghhKiFMhUEiYmJEAgE2LJli66TQtQwZcoUeHh46Oz4Fy5cgLGxMZKSkur0uAKBAB999JHKnyspKYGrqyt++OEHzSeKkAaK4kXD0FjjRXUoJqiPMhUN3JYtWyAQCHDp0iVdJ0VrPvroIwgEAunLyMgIHh4emDt3LjIzM3WdvEbjgw8+wMsvvwx3d3fp766mly6DmpGRERYsWIDPPvsMhYWFOksHIfqC4kWmrpPXaOgyXpw9exYfffSR3PdNMUF9hrpOANE9d3d3FBQUwMjISNdJUcv69eshEomQl5eHo0ePYu3atbh8+TJOnz6t66TViU2bNkEsFuvk2LGxsThy5AjOnj0LAOjbty+2bdsms81rr72G7t2744033pAuE4lEah+7oKAAhoa1u5VNnToVixcvxvbt2zFt2jS100JIQ0fxomForPEC4JmKjz/+GFOmTIGNjY3MOooJ6qFMBYFAIICpqamuk1Gt/Px8mJubV7vN2LFj0bRpUwDAjBkzMGHCBOzcuRMXLlxA9+7d6yKZAACxWIzi4uI6v6a6DPJhYWFwc3NDz549AQAtWrRAixYtZLb53//+hxYtWmDy5MlV7qe0tBRisRjGxsZKH1ud62xjY4Pg4GBs2bKFAgghSqB4oVkUL2ofL7SBYoJ6qPkTUdhGdsqUKRCJRHj06BFGjRoFkUgEe3t7vPPOOygrK5P5vFgsxjfffIN27drB1NQUzZo1w4wZM5CRkSGz3YEDB/DCCy/A2dkZJiYm8PLywieffCK3v/79+6N9+/aIjo5G3759YW5ujvfff1/l8woICAAA3L17V2Z5VFQUBg8eDGtra5ibm6Nfv344c+aM3OdPnDiBrl27wtTUFF5eXvjxxx+lVecVCQQCzJ49G7/99hvatWsHExMT/PvvvwCAR48eYdq0aWjWrBlMTEzQrl07bN68We5Ya9euRbt27WBubg5bW1t07doV27dvl67PycnB/Pnz4eHhARMTEzg4OCAoKAiXL1+WbqOojWxeXh7efvttuLq6wsTEBN7e3vjyyy/BGFN4Dvv370f79u2laZWcR03279+PgQMHyl2b6kh+d19++SW++eYbeHl5wcTEBHFxcSguLsbSpUvh5+cHa2trWFhYICAgAMePH5fbT+U+FZLv6M6dO9KSKGtra0ydOhX5+flynw8KCsLp06eRnp6udNoJaawoXlC80EW8ADRzfT766CMsXLgQAODp6SltWpWYmCj9PMWE2qOaClKlsrIyhISEoEePHvjyyy9x5MgRfPXVV/Dy8sKbb74p3W7GjBnYsmULpk6dirlz5+L+/fv4/vvvERMTgzNnzkhLRLZs2QKRSIQFCxZAJBLh2LFjWLp0KbKzs7F69WqZYz9//hxDhgzBhAkTMHnyZDRr1kzl9EtuEra2ttJlx44dw5AhQ+Dn54dly5ZBKBQiLCwMAwcORGRkpLSEKiYmBoMHD4aTkxM+/vhjlJWVYfny5bC3t1d4rGPHjuGPP/7A7Nmz0bRpU3h4eCA1NRU9e/aU3oDt7e1x6NAhTJ8+HdnZ2Zg/fz4AXg09d+5cjB07FvPmzUNhYSGuXr2KqKgoTJw4EQAvtdm9ezdmz54NHx8fPH/+HKdPn8bNmzfRpUsXhWlijGHEiBE4fvw4pk+fjs6dOyM8PBwLFy7Eo0ePsGbNGpntT58+jb1792LmzJmwtLTEd999hzFjxuDBgwews7Or8jo/evQIDx48qDIdNQkLC0NhYSHeeOMNmJiYoEmTJsjOzsZPP/2El19+Ga+//jpycnLw888/IyQkBBcuXEDnzp1r3O+4cePg6emJFStW4PLly/jpp5/g4OCAlStXymzn5+cHxhjOnj2LYcOG1eocCGnsKF5QvNBmvNDU9Rk9ejRu376N33//HWvWrJHWVlX8rigmqIGRBi0sLIwBYBcvXqxym/v37zMALCwsTLosNDSUAWDLly+X2dbX15f5+flJ30dGRjIA7LfffpPZ7t9//5Vbnp+fL3fsGTNmMHNzc1ZYWChd1q9fPwaAbdiwQalzXLZsGQPA4uPjWVpaGktMTGSbN29mZmZmzN7enuXl5THGGBOLxaxVq1YsJCSEicVimXR5enqyoKAg6bLhw4czc3Nz9ujRI+myhIQEZmhoyCr/2QBgQqGQ3bhxQ2b59OnTmZOTE3v27JnM8gkTJjBra2vp9Rg5ciRr165dtedobW3NZs2aVe02oaGhzN3dXfp+//79DAD79NNPZbYbO3YsEwgE7M6dOzLnYGxsLLPsypUrDABbu3Zttcc9cuQIA8D++uuvarezsLBgoaGh0veS352VlRV7+vSpzLalpaWsqKhIZllGRgZr1qwZmzZtmsxyAGzZsmXS95LfQ+XtXnzxRWZnZyeXrpSUFAaArVy5str0E9LQUbygeKGv8UKT12f16tUMALt//77C9RQTao+aP5Fq/e9//5N5HxAQgHv37knf79q1C9bW1ggKCsKzZ8+kLz8/P4hEIpnmKmZmZtL/5+Tk4NmzZwgICEB+fj5u3bolcxwTExNMnTpVpbR6e3vD3t4eHh4emDZtGlq2bIlDhw5J29bGxsYiISEBEydOxPPnz6VpzcvLw6BBg3Dq1CmIxWKUlZXhyJEjGDVqFJydnaX7b9myJYYMGaLw2P369YOPj4/0PWMMe/bswfDhw8EYk7k2ISEhyMrKklZF29jY4OHDh7h48WKV52ZjY4OoqCikpKQofT0OHjwIAwMDzJ07V2b522+/DcYYDh06JLM8MDAQXl5e0vcdO3aElZWVzPetyPPnzwHIlvCpYsyYMXIlegYGBtJ+FWKxGOnp6SgtLUXXrl1lqvCro+i3+/z5c2RnZ8ssl6T72bNntUo/IYSjeEHxQhvxQtPXpyYUE2qPmj+RKpmamso97Nna2sq0fU1ISEBWVhYcHBwU7uPp06fS/9+4cQNLlizBsWPH5B7ssrKyZN43b95cpc66ALBnzx5YWVkhLS0N3333He7fvy8TmBISEgAAoaGhVe4jKysLhYWFKCgoQMuWLeXWK1oG8LaZFaWlpSEzMxMbN27Exo0bFX5Gcm0WLVqEI0eOoHv37mjZsiWCg4MxceJE9O7dW7rtqlWrEBoaCldXV/j5+WHo0KF49dVX5Tq3VZSUlARnZ2dYWlrKLG/btq10fUVubm5y+6j8fVeHVWp3q6zK105i69at+Oqrr3Dr1i2UlJTUuH1llc9HEigyMjJgZWUlXS5Jt6rtewkh5SheULzQVrzQ9PVRNm0UE1RHmQpSJQMDgxq3EYvFcHBwwG+//aZwvSTIZGZmol+/frCyssLy5cvh5eUFU1NTXL58GYsWLZIb2q7izV1Zffv2lbaPHD58ODp06IBJkyYhOjoaQqFQeozVq1dX2SZfJBLVanzqyumVHGvy5MlVBqWOHTsC4Dft+Ph4/P333/j333+xZ88e/PDDD1i6dCk+/vhjALx/QEBAAPbt24eIiAisXr0aK1euxN69e6ssDVNVVd93TTd/SftZZYNJZYq+619//RVTpkzBqFGjsHDhQjg4OMDAwAArVqyQ60hZFWXPR5JuyW+HEKI6ihfKo3ihWrzQ9PWpCcWE2qNMBVGLl5cXjhw5gt69e1d7Yz9x4gSeP3+OvXv3om/fvtLl9+/f10q6RCIRli1bhqlTp+KPP/7AhAkTpFW1VlZWCAwMrPKzDg4OMDU1xZ07d+TWKVqmiL29PSwtLVFWVlbtsSQsLCwwfvx4jB8/HsXFxRg9ejQ+++wzvPfee9KhBp2cnDBz5kzMnDkTT58+RZcuXfDZZ59VGSTc3d1x5MgR5OTkyJQ+SZoOuLu7K3UuNWnTpg0AzX6Xu3fvRosWLbB3716Z0qJly5Zp7BgSknRLSuQIIdpB8UIxihfV0/T1qakGgmJC7VGfCqKWcePGoaysDJ988oncutLSUumMlZJSjYqlGMXFxfjhhx+0lrZJkybBxcVFOtqPn58fvLy88OWXXyI3N1du+7S0NGlaAwMDsX//fpk2qXfu3JFrV1oVAwMDjBkzBnv27MH169erPBZQ3sZUwtjYGD4+PmCMoaSkBGVlZXLV/Q4ODnB2dkZRUVGVaRg6dCjKysrw/fffyyxfs2YNBAKBxkqsmjdvDldXV43Owqvo9xIVFYVz585p7BgS0dHREAgE8Pf31/i+CSHlKF4oRvGiepq8PgDPdACocgZ1igm1RzUVjcTmzZsVjiE9b948tfbbr18/zJgxAytWrEBsbCyCg4NhZGSEhIQE7Nq1C99++y3Gjh2LXr16wdbWFqGhoZg7dy4EAgG2bdtW63b4yjAyMsK8efOwcOFC/Pvvvxg8eDB++uknDBkyBO3atcPUqVPRvHlzPHr0CMePH4eVlRX++usvAHws64iICPTu3Rtvvvmm9Gbbvn17xMbGKnX8L774AsePH0ePHj3w+uuvw8fHB+np6bh8+TKOHDkiHQM7ODgYjo6O6N27N5o1a4abN2/i+++/xwsvvABLS0tkZmbCxcUFY8eORadOnSASiXDkyBFcvHgRX331VZXHHz58OAYMGIAPPvgAiYmJ6NSpEyIiInDgwAHMnz9fppOdukaOHIl9+/aBMaaRdqjDhg3D3r178eKLL+KFF17A/fv3sWHDBvj4+CgM8Oo4fPgwevfuXe0wiIQ0JhQvKF7oW7zQ1PUBeIYRAD744ANMmDABRkZGGD58uDSzQTFBDXU2zhTRCckQgVW9kpOTqxwi0MLCQm5/kuH4Ktu4cSPz8/NjZmZmzNLSknXo0IG9++67LCUlRbrNmTNnWM+ePZmZmRlzdnZm7777LgsPD2cA2PHjx6Xb9evXr8Yh4RSlKS0tTW5dVlYWs7a2Zv369ZMui4mJYaNHj2Z2dnbMxMSEubu7s3HjxrGjR4/KfPbo0aPM19eXGRsbMy8vL/bTTz+xt99+m5mamspsB6DK4ftSU1PZrFmzmKurKzMyMmKOjo5s0KBBbOPGjdJtfvzxR9a3b19pery8vNjChQtZVlYWY4yxoqIitnDhQtapUydmaWnJLCwsWKdOndgPP/wgc6zKQwQyxlhOTg576623mLOzMzMyMmKtWrViq1evlhkisbpzcHd3lxnWryqXL19mAFhkZGSV21Q1pOzq1avlthWLxezzzz9n7u7uzMTEhPn6+rK///5b4TmiiiFlK/8eJH8LFYcRzMzMZMbGxuynn36q8RwJaegoXlC80Nd4oanrI/HJJ5+w5s2bM6FQKBMXKCaoR8CYFrP+hDQwo0aNwo0bN6Qjg5BygwYNgrOzM7Zt26brpCjtm2++wapVq3D37t1adfYkhJCqULyomr7GC4oJ6lEpU5GZmYl9+/YhMjISSUlJyM/Ph729PXx9fRESEoJevXppM62E1KmCggK5IQbbtWuH0NBQbNq0SYcp009RUVEICAhAQkKCxjr1aVNJSQm8vLywePFizJw5U9fJaRAoRpDGiuKFavQxXlBMUJ9SmYqUlBQsXboUv/32G5ydndG9e3c4OzvDzMwM6enpuH79OqKjo+Hu7o5ly5Zh/PjxdZF2QrTKyckJU6ZMQYsWLZCUlIT169ejqKgIMTExaNWqla6TR4jeoBhBGjuKF4Qo2VHb19cXoaGhiI6OlpkFsqKCggLs378f33zzDZKTk/HOO+9oNKGE1LXBgwfj999/x5MnT2BiYgJ/f398/vnnFCAIqYRiBGnsKF4QomRNxfPnz1XqBa/q9oQQQuovihGEEEKoozYhhBBCCCFELbWepyIuLg4PHjxAcXGxzPIRI0aonShCCCH1G8UIQghpXFTOVNy7dw8vvvgirl27BoFAIJ2MRjKBSVlZmWZTqCaxWIyUlBRYWlpqZFIuQghpaBhjyMnJgbOzM4RCoVr7qk8xguIDIYTUTOkYoerEFsOGDWMjR45kaWlpTCQSsbi4OBYZGcm6d+/OTp06pZnZMzQoOTm52sl86EUvetGLXvyVnJys9j23PsUIig/0ohe96KX8q6YYoXJNxblz53Ds2DE0bdoUQqEQQqEQffr0wYoVKzB37lzExMSoukutkkzLnpycDCsrKx2nRvdKSkoQERGB4OBgGBkZ6To5DQ5dX+3Th2t85QqwfTtw+zZQWAiYmgKtWwMTJwKdOukkSWrJzs6Gq6ur9H6pjvoUIxprfNCHv6HGiK67btB1V5+yMULlTEVZWZl0p02bNkVKSgq8vb3h7u6O+Pj42qVWiyRV2lZWVo0qaFSlpKQE5ubmsLKyoj8uLaDrq326vsYxMcDXXwPPngEuLoCFBZCXB1y/zpcvXQr4+tZ5sjRCE02A6lOMaKzxQdd/Q40VXXfdoOuuOTXFCJUzFe3bt8eVK1fg6emJHj16YNWqVTA2NsbGjRvRokWLWieUEEL0nVgMbN3KMxRt2wKS+6uVFX9/8ybwyy+8tkLNrgnKe/YM+O03IDwc+PRToEuXOjqwYhQjCCFEjxw9CuzfD5SVAT/8oNVDqZypWLJkCfLy8gAAy5cvx7BhwxAQEAA7Ozvs3LlT4wkkhBB9cecOzzi4uJRnKCQEAr48Lo5v17q1lhLBmOzBMzOB+fP5/3v31nmmgmIEIYToSOX4AABhYbzgydwcWLMGMDHR2uFVzlT0798fpaWlAICWLVvi1q1bSE9Ph62tLY2eQQhp0LKyeB8KCwvF683NgZQUvp3GlJQA588DERG8NiI4mNdISHh5AZ6ewP37wKVLGjxw7VCMIIToC7GYF/IA/F9v7zqsRa4rKSk8PkREACdPArduARX7PgQH80xFcTFvp+vnp7WkKH1p09LSMGTIEIhEIlhZWaFnz56489831aRJEwoWhJAGz9qad8r+ryBeTn4+X29tzd+Lxbwz98WL/F+xWMkD3b0LrF8PjBoF2NkBffvyjMTFi8ChQ7LbCgTAxo3AtWvA3r21PTW1UYwghOiTmBhgwQJg4UL+fuFC/l6PxoqonYICnoF4+22gQwegeXNg6lTg9995BuPECdnthw7lzZ+eP9dqhgJQoaZi0aJFiI2NxfLly2Fqaooff/wRr7/+Oo4fP67N9BFCiN5o2ZL3nYiOlu1TAfBa54cPga5d+XYxMbz/xc2b5SNEtW0LhIZW0ZE7NpZnDsLDgXv3qk5EaSlQVCRbhR0YqKlTrDWKEYQQfRETAyxfzruceXjwZba2/N6dlFQPB9RgjDddCg8HTp3iQUURS0vg8WPZZU2bAiNHaj+NUCFTcfjwYWzZsgUhISEAgGHDhqFt27YoKiqCiRbbZxFCGgdJNXVWFi/pb9lS/6qphUKeKUhKKu9bYW7OaygePuT37ldf5UPOSgJaxRGipAHtgzL4diwDjI3Ld56UxGsnKrO3B4KCeBV2UBDg7Fx3J6wCihGEEH1QeUANyYBPOh1QQ1WSkigJgQDYto0XPlUkFALduvH4EBwM9OhRfsI6oHSmIiUlBZ0qDMDeqlUrmJiY4PHjx/CQZAMJIaQWVC7V1yFfX17KJUlvSgpPb9euPEPRqROvYq88QpS7MBlDBOFwOR2B1n2OQLxpLYSvTCrf8YABgIEBDxJ9+pQHic6d9TjylaMYQQipSV0UHunFgBqqKi4Gzp7lNREREUBODm8zW1FwMM9UuLoCISH8/aBBQJMmOkmyIip11DYwMJB7zxjTaIIIIY1LxWpqhaX6elhN7evLMw+KguPt2zygeTnmoUPySfg8jIDPw3A4Zd6S2Uf2nnBYVcxUWFnxTnadOgEiUR2fkWZQjCCEVKWuCo90MqCGqhjjwULSwfr4cfnOevfuARWH4Z45k/ed8PaWzy3pCaUzFYwxtG7dWqazXW5uLnx9fSGskM1MT0/XbAoJIQ2WXs77AOVK04RCxaVcBrt34vMLG9Ex+zSMxMUK959jaINCQxHkplvr3Vsj6dcFihGEkKrUZeFRxQE1FM1pWXlAjTr17Bnw/vs8I5GUVPV2vr7A06eymQp3d+2nT01KZyrCwsK0mQ5CSCOkj9XUKpWmPXkCODjI5Dis0+7AK/OYzGZlAgPcd+iBOJcQXLQNxiV0xbefG8KhDs6nrlCMIIQoUteFR5UH1Kio8oAaWlVaCqSn8xghYWnJh3fNz5fd1tGxvMlrYCDQrJmWE6cdSmcqQkNDtZkOQkgjpG/V1DWVpi1bVIjOuaeBiAiw8HAIrl7F9V9jYNyts7Q2o8nLIcA3S5Bi4oEEzxDEuYYg3nkACkxswBgPoHUS0OoYxQhCiCJ1XXhUeUANSZeu7GwgMbF8QA2t1H7fv18+p9DRo7yv3P795etNTPiyI0eAgIDyvhEdOuhtkyZVqDz5HSGEaIo+VVMrLE1jDN5lN/FiaTjcTkbA5++TQGkBAEBy+z/9YQT2tepcXpvRtQvi9t/GB2Et8ey5AC52gLkBkJ8tO0JUPeh7TQghatNF4VHFATUkk99lZJQPqKGxPhw5OXxeCEkH64QEmdXs2DEISkpkR2Rav57PP2RurqFE6A+lMxUtKrbrqsa96sZXJ4SQClSZ90HbKpemjT7/Lrrd/R1N8h4q3F4MAe438YOxiwOaNKnYNlgI35GtsNSt6hGi9K3juSZQjCCEKKKrwiPJgBrx8bxP9OrVGpxROzqaD/N39ixv5qRAtlET3HEKglFkJjoMtC9f4eqqgQToJ6UzFYmJiXB3d8fEiRPh4NCQWgITQnRF2XkftFqqX1wM3LyJrOJOMqVptnkP5TIUacbOuN48BCeNg5HdPRB5Zk0BAFaQbxtc3QhRDRHFCEKIIrosPBIK+X5v31bj/vvwIR/u28mpfJmlJZ+EroJSgSGuW/rjqmMIrjQLxm1RF2RkG8B+LbDUtmEWJlWmdKZi586d2Lx5M77++msMGTIE06ZNw9ChQ2VG9SCEEFXVNO+Dxm/EjAF375ZXVx87BhQVwSYqHaamImlpWpxLMDon7kOCUz/EuQTjgm0IzmX5AAIBXF0BKzPZ3SpqG1zVCFENEcUIQogielF4pIr8fCAysjxG3LjBR2z67LPybVq14qMxGRmBBQXjp4ch2JrYH1nMCpmZQGkCYGgI2NjwGhq9n2xPQ5Q+vZdeegmHDh3CnTt34Ofnh7feeguurq5YvHgxEiq1ISOEEFX4+gJffw2sXQt8+SX/96uvNJihyMoC9u0D3nwT8PLiAWH2bODPP4HcXKCkBF4PT6JtWx7kGAMueY3HgtB0fDf0XxzusADnc9rBzV0AobD6tsGFhToe/1xHNB0j1q9fj44dO8LKygpWVlbw9/fHoUOHpOsLCwsxa9Ys2NnZQSQSYcyYMUhNTdXkKRFCNERSeOTnxwdEunOH/9u1q/xwsmIxr1m4eJH/KxZrOXGMAVev8uATFMQnkxs8GFizhmcoAJ65qEgg4CN7JCQgYf46bE4bgcR0K6SlAcbGvGDK2BhIS+Ov8+fL+3Y0ZCrnmZo3b44PPvgACQkJ2L59O6KiotCmTRtkZGSofHAKGoQQCUmpfrdu5aX8aisq4iNs2NkBo0cDGzbw0TkqsrcHJk2C0KEpQkN5qdnNm8DzfDMUwAzZ2fx906bAuHGAmZn8HEUSOh3/XE9oKka4uLjgiy++QHR0NC5duoSBAwdi5MiRuPFfkH/rrbfw119/YdeuXTh58iRSUlIwevRobZwSIUQDlCk8ionhXRXmzAHeeYf/u2ABX64VW7cCzs68GmHhQj4qU1FR+XqhEOjZExg2jGc+KrK1BcA7gCcn864VNjY8MyEU8n9tbPjy5GS+XUNXq9GfCgsLsXv3bmzevBlRUVF46aWXYF6LXuySoNGqVSswxrB161aMHDkSMTExaNeuHd566y38888/2LVrF6ytrTF79myMHj0aZ86cqU2yCSFaoMxEcXUiOZm/evUqX2ZiwscRLCsrX2ZkBPTpUz6UX4U6aV9U3xSrUyc+0Ic+dCzXZ5qIEcOHD5d5/9lnn2H9+vU4f/48XFxc8PPPP2P79u0YOHAgAD5PRtu2bXH+/Hn07NlTY+dCCNGc6pqEanOCPEFJCQQnT/Kqkv8yAwB4lcKTJ7Ibu7ry+BASAgwcyGsuqpGZWT66laIhc01M+HlkZtYu7fWJSpmKqKgo/Pzzz/jjjz/QokULTJs2DXv27IFtxS9IBRQ0CKnfVJooTtPy8vjIG5J2r7du8WZNt2/LbhcczEueJJmIfv0AkajK3dbUwbpetQ2uY5qOERJlZWXYtWsX8vLy4O/vj+joaJSUlCAwMFC6TZs2beDm5oZz585RfCCkntH4BHmM8VgQEQGDf//F0GPHYFhYyCeemzixfLsBA/hBAgLKJ5/z9lZpzggbG55xKCpSPEpsURGPjTY2Su+y3lI6U9GuXTs8ffoUEydOxMmTJ9GpUyeNJoSCBiH1i6RUKS2NP3hLqnkvXVK/VEkhsRi4cgXCQ4fQa8cOGMbH85GbKkpI4M2bPD3Ll61YwccSVEF1pWl13rG8ntBGjLh27Rr8/f1RWFgIkUiEffv2wcfHB7GxsTA2NoZNpSjdrFkzPKlc6lhBUVERiio0bcjOzgYAlJSUoKSkRO301heSc21M56wP6LpX7c4d/vLwkJ3SQcLDg9/e4+OrqQnOyIDg2DEIjxyB4PBhCB48AMDb+UvyIeJ//0XZSy+Vf8bCgtdUGFZ4HK5iiNiqWFnxND16xAvXzM357kpLeYGTSAQ0b863q69fvbK/WaUzFTdv3oSFhQV++eUXbNu2rcrt0tPTld0lAAoadY1uatrVWK6vWAz8+ivw+DG/caam8n8NDXkG4/FjXiDk46OhUvu4OBgGB0Pw9CkMANhXWs0MDMB69AALDITY0FD+zq3h76N9e2DlSuDePd66ysoKaNGCn2t9/Oo18XvVRozw9vZGbGwssrKysHv3boSGhuLkyZO1TuOKFSvw8ccfyy2PiIioVRPe+u7w4cO6TkKjRNddsddfr3mb27flK6MBoOOGDfCIiICgil7dhba2eNq5Mx67uuLJwYNqplTeggU1b1NV2uuD/Px8pbZTOlMRFhZW68RUh4KGbtBNTbsaw/Xt25e/qvPvv6rtU1hcDLubN1FqYoKMNm3Kl5eUYEhmpswNK69ZMzz19UVa585I69ABpZIhmS5fVu2gGvDkSf0NFoDyAaM62ogRxsbGaPlfsaSfnx8uXryIb7/9FuPHj0dxcTEyMzNlCp5SU1Ph6OhY5f7ee+89LKgQ/bOzs+Hq6org4GBYKZqVq4EqKSnB4cOHERQUBCNFxcJEK+i6V+3OHd5P2tZW8QR52dm8o/M38+7D4/4JsClTZJooCWNjIagQcJiJCVhAAFhgIIr790fE48cICg6Gk5au+9WrvKDp2TNesGZgwLvyZWXxZrGLFgEdO2rl0HVCUkBfE6UzFaGhobVOTHUoaNQtuqlpV2O5vpcuAa+8wmsnrK3lOyxnZfFai23beLOgKjEGxMXhyS9HkLvvCDwfnIKpuADnmo3AqUkLMHFi+Y1YOGIExIWFKB04EKfMzNDrlVfgYmwMF62eaeOgbMCojrZiREVisRhFRUXw8/ODkZERjh49ijFjxgAA4uPj8eDBA/j7+1f5eRMTE5iYmMgtNzIyatB/r1VprOeta3Td5Xl78yZElQfBMCnOgXfKcThei0BAQQQc/vlveOoePXgHC4khQ4Bdu3ifiJAQCAICIPivINmwpAQ4eFCr193PD3jvPfk+hp06NYxmscpeN6UyFYwxCFTotKIOChp1g66HdjX065udzUeysLCQ79YA8LxCZibfTu4yPHvGh+2LiOCvR4/gWmmTTukn8N554N49o/K+Gbt2AeCjeOQdPAgjY+MGfY3rkrrXURsx4r333sOQIUPg5uaGnJwcbN++HSdOnEB4eDisra0xffp0LFiwAE2aNIGVlRXmzJkDf39/6m9HSD0kmSAvObEM7MJlDBJHoHNaBLxSz8KQKejjEBEhm6no3h24fr3uEqxATYN86FJdjdKoVKaiXbt2WLp0KUaPHg1jY+Mqt0tISMDXX38Nd3d3LF68uMb9UtAgpH6q9WgX27cDkyfLj/f9nwyL5rjhEoKbLsFo685w/XbjmYm0PtNGjHj69CleffVVPH78GNbW1ujYsSPCw8MRFBQEAFizZg2EQiHGjBmDoqIihISE4IcfftDoeRFC6o5vZ4bfrrSHaeItxRsYGgK9e/PaiGHD6jZxSqpukA9dqctRGpXKVKxduxaLFi3CzJkzERQUhK5du8LZ2RmmpqbIyMhAXFwcTp8+jRs3bmD27Nl48803lTo4BQ1C6idbW8DNjU8LIamxkIx2kZfL0BJ3McooHM2e9gXQofyDfn4yGQqxqRmiLfrhplsI7rUMxmMb2ckfXFyAuDhewqJvN2p9ouu5QrQRI37++edq15uammLdunVYt26dpk6DEFIX8vOBU6eAu3eBWbPKlwsEMO3ZGaiQqSj2aAWjocEQDA4B+vcHLC3rPLn1mTbn/lBEqUzFoEGDcOnSJZw+fRo7d+7Eb7/9hqSkJBQUFKBp06bw9fXFq6++ikmTJqk0HjkFDUL0W1UPqy1b8iathYV8tCNxRhZ65h/DgJJw9C+OgGsJn7Wanf8AGF4hU9G6NTB4MNChAxAcjMumffDOB6Zo1Yp3bKvM3JwP2ZqVVUcnXA/pdK6Q/2grRhBCGgDGgGvXyucUiozk1dnGxsCUKfxJV2LUKJl5hYwrDg9OVKLxuT+UoNLkd3369EGfPn00c2RCiEK6LnWWqPZhtUMp3vS9hB7hEWj3KBztcqNgwMrk9iE4HAF89mmFBQLg0CHpW6vbfL95ebwAKjub99EwNuY3vvx8vt7aui7OuP6p61KomlCMIIQA4OOMHznCMxKHD8vPWg3wm/3Jk8DQoeXLxo/nL6K2O3fKJ2lVNNO3NloCqJSpIIRolz6UOkvSUd3D6o+mC+C9Yy28FXy21MAYBV36wHLsfzNYV6NlS35+J0/yGo+sLNn5LoyMeI13lZMdNWK6KIUihJAapaUBTk5V9p0rcXZDRvcQlA4MgaN/bzSk25O+FAoCPA2FhTx+MyZfaKeNlgCUqSBET+hLqbPkYTUvNRfjrE6i3bVw/O23FAZWTaUPq3/b9Mc0rJV+psirLTK6BaNsYDCcJvSDpaVFNUcoJxTyZlR//AHk5vK+GpaWvPb7wQM+E2n37vRQrIguSqEIIQQAf0qNj+c1EebmsjPX2dvzGUKvXePvLSyAAQOQ7BOMX56E4NTjVihMF8D0b6Dt3bovNNMWfSkUlLC25ml4+JDP9p2ZWV5oZ2PDZ/nWdEsAylQQogf0otRZLAZiY/F8ewSm/hKOdllnYCjmMy3fbdYLl1pOkD6s/p06EC8NfonXRgQFwcTNDVXPHlN16Y1YDERFAc2aAXZ2/KaXk8Nveu7u/N8LF3htOGUsZFUshVKE+qMQQjQqPR04erS8b0RyMl/u7S0/Hfbrr/MbUEgI4O+PmDgTvSg00xZ9KRSsqGVLHlfDw3mtv0jE01VayiuTUlJ4F0dNtgSgTAUhekBnpc4pKby9a0QE/zctDfYA7Ctt1u5hOC61nADgv4fVMhvcWv4HunWr+RDVld5YWPDlbdrwGoqsrPLqWWtrnsGg0nbFJKVQeXmKZ6Cl/iiEELWUlPBSn4gI/mR68aLiJk3x8fzJ2d29fNmcOdL/6kWhmRbVl/NjrPylLZSpIEQP6KzUefx44PRphatSLTxxyy0EN1xDEO88QLpclYdVSelNWhrf3saGl5JcusRj0Jgx5ectEMjPa0Gl7VWT9EepPAMtwIPGw4d8NnPqj0IIqZVTp4DAQMXrTEyAvn2lM1jDza3K3TT0ppr6en537gDPnwPdupU3f8rP5y0AHBwAZ2eeEarzjtrZ2dlK79BKUZEZIaRaWit1Zgy4cYOXNF28yCefq3jXCw4uz1RYWgIDB0IcFIzPLoYg4q6XWg+rktKbxESekUhKkm3PmZfHBwcxMaHS9tqQzECblFQe0MzN+TV7+BBo2hR49dW6KRmjGEFIPZWdDRw/zmNE//7ASy+Vr+vdGzAzAwoK+Pv27XnMCA7mGQozM6UO0dCbaurr+UnS1aoVz/NVbglQVlbeLFlTlMpU2NjYQFA5+1WFsjL5YSUJIdXTaKlzWhp/Wo+I4K+UlPJ177/P54iQGDWK32WCg4GePQEjIwgBDIsBLi9X72H1zh1ec56WxjMTFhZ8P5L2nIaGwK1bvDnuvXtU2l4bvr68ra6keVlKCs+Ede3Kv6O6asNLMYKQeqKsjAcaSXw4d47flAE+7GvFTIWpKb/BODoCQUG8Z28tNPSmmvp6fpXTVbklgDbSpVSm4vjx49L/JyYmYvHixZgyZQr8/f0BAOfOncPWrVuxYsUKzaWMkEZErVLnsjJe2yDpPHf5ctWNJk+elM1UdOgg+/4/mnhYzcjg/fhKS/nNTPLMaWzMO41lZvJzmzmTF5bpurS9vvL15W11dTmMIcUIQvTY48fAwYM8Phw5wjtcKxIZyauYK948Fi9W+/ANvammvp6fLtKlVKaiX79+0v8vX74cX3/9NV5++WXpshEjRqBDhw7YuHEjQkNDNZc6QhoRtR7kR49WHCjMzHiVtqTKum1bldLToQMf7OPJE15YNWgQr2FQRmambH+JigSC8mZPzZrpR2l7fSYU6rYtMsUIQvTYzp3AW28pXte6dXl86N9fK6UR+tRUUxv09fx0kS6VO2qfO3cOGzZskFvetWtXvPbaaxpJFCGNVZWlztmZwJ6jvKSpuBgICyv/kIEB70z3xx/8fadOvONccDBvE2tqWqu0KBq16dAh5cfctrHhGYeiIn4jq6yoiO/TxkY/StuJZlCMIKSOMQZcvVpeW/3pp7w5q0RISPn/ra15vAgO5k2aPD3rJIn60lRTW/T1/Oo6XSpnKlxdXbFp0yasWrVKZvlPP/0EV1dXjSWMNGz6NOukvhEKgdYtSv/rWP1fkIiK4hcN4E/q69bJPqnPnAkMH86DhWN1M0YoRxNjbtva8s5hycm81sLCgtdylJbyfRkaAq6ufDvpedfDkT+ILIoRhNSB1FQ+DHh4OP83NbV8Xa9espmKNm2AlSuBgAA+FJCy1c0a1tALj/T1/OoyXSr/stasWYMxY8bg0KFD6NGjBwDgwoULSEhIwJ49ezSeQNLw6Nusk3ojM5PXNoSH8zZHVQ3JwBifqfS/vz8AQIXmJ+rS1JjbLVvyJBYW8uHOs7LKMxN2drxfRc+e9bcdLVGMYgQhWnL2LHDgAI8RV65Uvd3Vq7LvBQLg3XdrfVhNFgI29MIjfT2/ukqXypmKoUOH4vbt21i/fj1u3boFABg+fDj+97//USkUqZE+zjqpN3JzgRkzFK9r27Z8PPC+faseu66C2gYCVcfcruo4FdtzpqUBHh68pVZZGc8/2dvX73a0RDGKEYRoSVgY8NNP8sstLIABA8qbvbZqpbFDUiEgUUWt6sBcXV3x+eefq33wFStWYO/evbh16xbMzMzQq1cvrFy5Et7e3tJtCgsL8fbbb2PHjh0oKipCSEgIfvjhBzRr1kzt45O6pY1ZJzVVglInzbHEYn6HlsxO2r07ULGJiIsL0K4dn1eiSZPydq/BwbydkArUCQSqjLld03Eqt+fMyeHbdOvWMNrREsU0ESMoPpBG5/lzXkstGaUpOppX60qEhJRnKvz8ygua/P35sHoaRoWARFW1ylRERkbixx9/xL1797Br1y40b94c27Ztg6enJ/r06aP0fk6ePIlZs2ahW7duKC0txfvvv4/g4GDExcXB4r8nmrfeegv//PMPdu3aBWtra8yePRujR4/GmTNnapN0okOannVSUyUoWi2JSUmRbff67Fn5utRU2UwFAKxZw3M1fn68WL8W1A0Eyo65/ehReSaxuuPoaztToj2aiBEUH0h9UetCqZIS3l9O0sH64kXZ4cCPHAHGjy9/HxjIJzANDORVvVqkjUJA0vCpnKnYs2cPXnnlFUyaNAmXL19GUVERACArKwuff/45Dh48qPS+/v33X5n3W7ZsgYODA6Kjo9G3b19kZWXh559/xvbt2zFw4EAAQFhYGNq2bYvz58+jZ8WOSETvVSwBZ4zPTSCZ3dHKSrVZJzVVgqKNkhjRw4cQLlrEA8K1a1VvWFLCL0LFJ/egINUOVokmAkHFsa3btOG1C5LvydKSD0Xn58cnYVX2OPrazpRonqZiBMUHUh/UplBK8PPPPCNx7BiPAYqYmvKbbUU2NkCFoZq1SdOFgKRxUDlT8emnn2LDhg149dVXsWPHDuny3r1749NPP1UrMVn/PU02adIEABAdHY2SkhIEBgZKt2nTpg3c3Nxw7tw5hUGjqKhIGsQAIPu/P9iSkhKUlJSolb6GQHINdHEtRCL+UJqayufiycriIwEZGvLSHScnvl4k4s/bVRGLgV9/5ffiDh3Kb3gmJnwkofh44LffAB+f6ktQKu6nfXv+b3Y270Dcvj1w+7YS+2GMn4SREQB+Xc3S0mCwZo38ppaWYAMGgAUFQRwYCHh54b8PKXH1lHPnDn95eEiTJMPDA0hI4Neoug7Sr7zCA8qxY/w6Mcavs1DIP9e/P6+FV/c4taHL33BDpclrqa0YQfFBc+hvSDOuXuWDKj1/Djg7lxdKXbsGrFgBLFoEdGxbIhMfAECwZQuvoaiEtW8PcVAQWGAgWJ8+fJ4hHX1HGRn83m9trbjS3MqKFyplZOgsiUqj37v6lL12AsaqmnpXMXNzc8TFxcHDwwOWlpa4cuUKWrRogXv37sHHxweFhYW1SrBYLMaIESOQmZmJ06dPAwC2b9+OqVOnygQBAOjevTsGDBiAlStXyu3no48+wscffyy3fPv27TBXNFg+ISoyzsqCfWwsHP573Xr5ZSQFB0vXC4uKMPSVVyAsKUFGq1ZI69wZTzt3Rkbr1mA6GsqPkOrk5+dj4sSJyMrKgpWiNm8q0EaMoPhA6o2yMtjcvQuHmBg4xMbC7NkzHN64Uaa43/v339Fm504UWVnhaefOSPvvVfhfhpkQfaNsjFD5CcfR0RF37tyBh4eHzPLTp0+jRYsWKidUYtasWbh+/bo0YNTWe++9hwULFkjfZ2dnw9XVFcHBwWoHy4agpKQEhw8fRlBQEIwUFTFrkVgMvP4674dmZMSbO0nmLcjP56UdgYHAxo3V1zBcvgwsWcIL+hWVoJSWAvfu8fl/unSpfj/z5/PZorOz5Uvkraz4lA/fri5Gl8JzEBw+DOHhwxDExMjsp+OTJ2g3dCiA8utb8uefMOjcGZZNmsASQO3/MlRz5w6wcCGvsVH0c8/O5iVLq1dXXYMgFgPvvw/ExvJq7exs/t0YGfF93r7N50t6/Jj3J6/tcWpLl7/hhiq7qiYYtaCNGEHxQbMa8t/Q1au820F8PJ9g08QE8PYGJk4EOnZUfX9iMY8nkpaqLVrw+FDxXusmSEbb5CNom3wY3g+PQVSULrOPoR4eQLt20uvuvnw5ShYsgLBTJzgKhVB/ZiFZmrgGFeOAt7dsEyjG+L59fYHPPtP/PhUN+fdeV5SNESpnKl5//XXMmzcPmzdvhkAgQEpKCs6dO4d33nkHH374ocoJBYDZs2fj77//xqlTp+Di4iJd7ujoiOLiYmRmZsLGxka6PDU1FY5VTPBlYmICExMTueVGRkb0Y6pAF9fj9m3e9KlDB97JNy2tvPmTvT3QvDl/wE9Kqr6Npq0tv4llZVX9QCsU8u2qO0VrayAxkVfhKqqvC8j8CzMfb0TXkOMQ5ucp3omZGYQmJhBWOpDBwIE6+b15e/OH+Oho2b4OAD/HxEQ+k6a3d9WB4PZt4Pp1wMGBBxaRqHydWMyXP3jAm6vdu1f746iL/qY1R5PXUdMxguKD9jS0846J4YVJkj5yjo68OdKFC/xepWofuer6S4gzsxEauxS98yLgnHmzyn0UuLWGWXq6TDAy9PTU2nXX5DWYPJl/5to1vi9zc14A+PAh0LQpMGkSz7DUFw3t916XlL1uKmcqFi9eDLFYjEGDBiE/Px99+/aFiYkJ3nnnHcyZM0elfTHGMGfOHOzbtw8nTpyAZ6Xp4v38/GBkZISjR49izJgxAID4+Hg8ePAA/v7+qiZd42hWaNVIOmrb2so/xDPGb9gZGTV31K7YkVjRA+3Dh/yBtqYScrGYZ0BKSwE7YQZyhVZgQgMwxtd5iu8guOhvuc/lte6Mon4hsBkXDGFAb5Xuqtr+zVScG0LSya5yIKhpbghlh5QNCgL27Kn9cUjDpKkYUd/jA6lbmh6tqOIgHq7NxbA3zMDTMjvpIB6hky0wOHUrLEszZT6XZ2yDW80H4XLTEESaBmHJTx511pFZ09eg8pDgKSk8TnftSkOCE8VUzlQIBAJ88MEHWLhwIe7cuYPc3Fz4+PhAVLE4U0mzZs3C9u3bceDAAVhaWuLJkycAAGtra5iZmcHa2hrTp0/HggUL0KRJE1hZWWHOnDnw9/fX+cgeNCGM6qyt+ShCly7xCdBEovLmT8+f8wnRXF35dtXRxIMzSkvxZO8FLC6MQCDC0V18AQMEkYhCL+kmh8H7SRRaN0N+n2D8UxqCvwsD8YQ1g2kS0PZvINRO+e+7rn4z6gYCZYeU7d6dT6tBAYdUpKkYUZ/jQ2OhTwVrmhytSCwG9v7wBH5xhxEojoBPdAQeNumEb1+IkD6cn4g0gLtHIDrc2YfEZj1w0yUYN1xCkGTfFWUCQ9y8CXT103zzz+poY8QmGhKcqELlTMW0adPw7bffwtLSEj4+PtLleXl5mDNnDjZv3qz0vtavXw8A6N+/v8zysLAwTJkyBQCwZs0aCIVCjBkzRmZyI11qyBPCaDNItGjBH6azs/lIGZKbnpERP1ZKCm//qUyz61o9OCcmlo8HfvQoBmZlYWCF1YHiCJxFLwgEPLNz19AHvqVXEfR6eyTcESAtk4/oZ/PfrNCXLin/fdf1b0adQKBKTZBQSAGHyNJUjKiv8aGx0LeCNVUm7VSosBA4cwYID0fxXxH45NYVmdWtnpyCUWkBSgzN4OLCz/vpwi8RemATHmTblBdu5equtlbta1AFGhKcKEvlTMXWrVvxxRdfwNLSUmZ5QUEBfvnlF5UyFcoMPGVqaop169Zh3bp1qiZVKxryhDDaDhL37vF9WlnxWgkLi/KaCkmpuIkJ306ZG5ivL++fcfQo74vh6AgMGsT3KeOTT4Bt2/gYp1W4KfRBjpEdzIzKO2oXFgpwQ9gBTjd4p+SSEp4BqDgMbl5ezd+3rn4ztQ0EqtYEUcAhFWkqRtTH+NBY6GPBmrI1rHI14Tdu8B7XJ04ABQUAANNKmxQaiRDvNACiwmfIELlKH86b+LrjnW76U1tb62tAiIYonanIzs4GYwyMMeTk5MDUtPzPrqysDAcPHoSDg4NWEqlPGuqEMHURJLKy+ARqXbsCd+/yjEV+Pn9Ad3DgNRTK9KmomOaKmSAzEzEu/3oLgxf4yKY1KUk+Q9GkCbJ7BGHZmWAcKAjGE0MXGBoCBkKeCSgu5qXykhqUZ8947YSFBX9JmmwZGADnz1f/fdfH3wy1pSWqohjROOhrwZoyNax92z1HS4tiAE7lK62sgEOHZPbFBALctvRDnEsw7rYIxr1m/igzMJaur/hw3rq1/tTW1qa/oT41YSP1n9KZChsbGwgEAggEArRW8OQjEAgUjv/d0GirelGXNB0kqrpJSUpRzMyAnj35CFD5+fyaNW8O5ObygiJlSlEkmSA8eoQXBRHwfRYBn4eHYV6cgSnpaVjwaZPyB9/gYH6CvXrx/wcHA126QCQwQOpk4Pk/AEp4RkFCIOBp7dKFj4RUVsY7mEsYGfGmUBkZQHIy/7cq9fU3Q21piSooRjQO+lpIoqiG1dK0BM4PzsMzIRwLcyLQ8swlCMzmARUnJ3V15YEuKwsICQGCg8EGBmL95035w7lTzQ/n+lJbq2ots741YSP1n9KZiuPHj4MxhoEDB2LPnj3SWU0BwNjYGO7u7nB2dtZKIvVJQ6xe1GSQqO4m1akT///Jk/wBPjOzvClRcjL/t3//Gjq2FRRAfOIUMj+IwFfx4WiRf0NuE497R/HLLy+VZ4KGD+fVCpW+MCF4rffjx3zM7ZISniESCnmmwdsbGDGCl/pUlSEwMeG/hczMqpNcn38z+hIsif6jGNE46HMhia8v8OmUO4j7JgIuR8PRMf04LMpyZDeKiJD/4MmT/In7vwAohAYGA9ERZWuZ9bEJG6n/lM5U9OvXDwBw//59uLm5QVD56bOR0NRwpvpEU0FCmZtUjx7AH3/wWglbW8DSknfOTkrio0F1717FjbqsDBg2DDh+HMKiIgxQsEmBkRVuNR8IIyd72UyQmRl/KeDrC3z9NbBlC09nXh5Pd9euPKgUF/MbclER30Xl77uoiK+vMEy+nIb4myGkMooRjYPeFpLs3g0sWoR29+6hXVXbdOjAayPKymRnTrW3l9tUlSag+taEqKZaZn1twkbqP5U7ah87dgwikQgvvfSSzPJdu3YhPz8foaGhGkucPtLIcKZ6RtUgoegGCtR8k9q6lT9EN2vGZ2LOygJycngNhZsbrx24cAEYP+AphIn3eBspCQMD3saoqEi6SCwQItG+G+JcghHnEoL7Dt0hFhqhtBQovKN8SVl1N+Dbt3nteHKy4s7lhoZ8fcWmUZU1xN8MIVVp7DGiodN5IYlk6D0vL37zlBCJ+CgfFdnb8wl1goP5vyrWlCnTBFRfmxBVV8usr03YSP2ncqZixYoV+PHHH+WWOzg44I033mgUAaOhdWJVJUhUdQPt37/mm9SlS/x9mza8hiI7m9cEmBkUo0vBGbS8FwGfn8Mh/CaGd7JITpbdWUgI8OgRsnqGYO3tECR6DYKBfRNUVpuSsqpuwC1b8tqVwsLyJluSzuX29vzfnj1rDqAN7TdDSFUaQ4zQt5LpuqSTQpIHD3izpfBwPtxfRgawaRPw2mvl2/Tty0uxunSR9o1A585qJ6S6h/P62oRIn5uwkfpN5UzFgwcP5GY2BQB3d3c8ePBAI4mqDxpSJ1Zlg8SVK1XfQGNjea2Dq6viY0j2xxhgYc7gmHUbAx+Gw+dhBFqnnIBpaZ7sBx494ompMM493n8f+OgjWDIBni0A4qOBtk21W1JW8dqkpfEaFYP/5qnIyuIZC2UDaEP6zRBSlYYeI/S1ZLouab2QJC+P93OQzCt065b8NhERspkKc3Pg6VPe0a0O1OcmRHrbhI3UeypnKhwcHHD16lV4eHjILL9y5Qrs7Ow0la56oSF1Yq0pSHTqBCxYwG+gbdrwDER6Oh8itk0bHmifPeN9JRTdiCSjPDkV3seKHf1hn1/1w0Whjy9MhwfLF6P8FyyEgrotKat8bXJz+bXp1k31ANqQfjOEKNKQY0R9LZnWBq0VkixezEdnKi5WvN7GBggMBEaNkl9XRxkKoH43IdJ5EzbSYKmcqXj55Zcxd+5cWFpaom/fvgCAkydPYt68eZgwYYLGE0jqTk19C27e5EH03Dk+2Zxk5CZHR95aKS2Nf7ZLF8CAlcLj6QVAIMBdB3/pTUpQ5grTWNk61SyzZohrHozDwhCU9AvExxua8eE3akhrXTYnoloGQpTTUGNEfS6Z1ha1CkmePAGOHAEmTJCdsdTeXjZDYWDA26BKmjR16ybbyVpH6nMTIurnR7RF5UzFJ598gsTERAwaNAiG/90IxGIxXn31VXz++ecaTyDRHEk7YID/6+0tf9OoKkhkZfFgmpTE/y8Wy6578gTobH0fQ7Ij4Lc3At2yj8KiJAtXHEMwu+W/aNqU38QAQ1zePwzmuam47R6M254huG3SAQ8fCdC0KbD0TeVvZHX9oE+1DITUrKHGiPpcMl2RMnFAKwoLgdOny/tGXL3Kl7dsKTsoR0gI8P335ZmIgQOrH15PR+p7EyLq50e0QeVMhbGxMXbu3IlPPvkEV65cgZmZGTp06AB3d3dtpI9oiKQd8J07wOuv8/kZWrZUvh2wpSXPUKSn8+pRAwNAxHLQH8cRWBqB4OcRaP08Qe5zbZ6ehP/YArw8zax8fOwD27D1FwFvk5xONzJCGpKGGiPqc8m0hLpxQCWM8adVSb+Ikyf57KaVhYfLZirateOjOOn5kMQNoQkR1cATTVM5UyHRunVrhbOmEt2objSSiu2AJc2cbW1VawdcWspHa2KMvx9a9if2YAyMUKpw+zIbO2R2D0JJ/2B8MYdBKCpf59tFgE6d1b+RUYdJQvRXQ4sR9b1kWhNxQCX+/kBUlOJ1AgHg58drI0aMkF9XDzSUJkRUA080SalMxYIFC/DJJ5/AwsICCxYsqHbbr7/+WiMJI8qraRbriu2AjYz4Z5RuB/zoERARgas3fVFW1lm6OBadZTIUJTDEWfSC0QvB6PVRCAx8fWFXTbtXdW9k1GGSEP3RGGJEfS6ZrtwfROU4UJWSEt7J7sYN4M03Zdf5+MhmKpydy5s0BQbKzjFRT1ETIkJkKZWpiImJQUlJifT/VVF1BtVTp05h9erViI6OxuPHj7Fv3z6MqjCiA2MMy5Ytw6ZNm5CZmYnevXtj/fr1aNWqlUrHqe+UrYVQ9HAdGqpiO+D8fODUKV5dHRHBgwUAr94LIBZ3ln42GW44iCG4D0+EIwQn0B85sMJnvYBeXbV/PajDJCH6Q1sxQp/U55JpjfUHYQy4e7e8SdOxY3w4PKGQd7iuOAvo8OH8KVuSkfDxqTe1EKqgJkSElFMqU3H8+HGF/1dXXl4eOnXqhGnTpmH06NFy61etWoXvvvsOW7duhaenJz788EOEhIQgLi4OpqamGkuHPlOlFkLRw/XOnbwZa5XtgM0YTJ9dg9m6CCAuHIiMlJm1WqLV/XAAXwHgxxEIgGHsIAQCHmckzaLqYsTIhtJhkpCGQlsxQt/U15JptfqDZGXxzIMkI3H/vvw2YjGflG7s2PJlL77IX40ANSEihKt1nwpNGDJkCIYMGaJwHWMM33zzDZYsWYKRI0cCAH755Rc0a9YM+/fvr9dDEypLlVoIgN/7i4v53BFWVnx5cjJfl5fHO1tLgkZWFg8kw89/gFE3VwCXFSRAKAS6dweCg3HZIATCj2VHfar8QC8U1s0gHQ2hwyQhpGb6WJtdH0uma90fJCcHcHCoes4Ie3teCxEcDPTvr+lkE0LqGaUyFYpqEaqyd+/eWiemovv37+PJkycIDAyULrO2tkaPHj1w7ty5Bp+pUKaJzx9/8FqIggLg+nUgM7N87ggbG8DLiwc6d8cimF48i+5ZEdgimgG8xJu6mpgAxkUBGIUV5Qd2cyuvrh40SFqdnbmbB52CgvKaCUktBcD/b2paN8OH1/cOk4Q0NNqKEfpam13fSqYr9gdp00a2cMnMDCi+8wBTbSLQ8mgZ0HpG+QctLYHOnYELF/h7IyOgT5/yGEFtTAkhFSiVqbCu8HTGGMO+fftgbW2Nrl154/no6GhkZmaqFFhq8uTJEwBAs2bNZJY3a9ZMuk6RoqIiFFVovpOdnQ0AKCkpkbb5rQ/u3OEvD4/yTnUVeXjwPtRFRTxDUVbGH7ANDYHSEgaH9Hh0eXwEQewwukadhFFxPgDggYkbAGeYmZXgyRPgmHkvPOzyApwmD4I4KIhHyopVEP9ds7Ztec1HRgZfVFJSnrEwMuIvW1u+nbYvs7s70L49EBvLj1m5w+TTp7w00d1d+2mpTPIbq0+/tfqGrrHmqXsttRUjqDZbMyT9Qa5cAQ4eBGwMczHb8xIG/XkEAQWH0bI0nm8Y7wr87w3Zm2poKB/yVVIbUVUVMSGk0VMqUxEWFib9/6JFizBu3Dhs2LABBv8VS5eVlWHmzJmwUlRsXMdWrFiBjz/+WG55REQEzM3NdZCi2nv9deW3NcrJgf3Vq7CPjYVDbCzM09IUbjfD4zdcwkJ88slh6bJo/Hegu3f5qwqrVtWcDklmSNv69uUvRUJC+L///qv9dFTl8OHDNW9E1ELXWHPy8/PV+rwuYkRtarMbSqGTysRimMRdweRHh+GTfgR+hWdg/GkJelbeLjkZJdeu8dIhicqBqCFfJy2jAhHdoOuuPmWvncp9KjZv3ozTp09LgwUAGBgYYMGCBejVqxdWr16t6i4VcnR0BACkpqbCyclJujw1NRWdO3eu8nPvvfeezJCG2dnZcHV1RXBwsEoBTSzm8+9kZ/MagBYt6raW984dPjGRra3iJj7Z2bymIi8PeP4c2PxoKLoVHlG4r2fGTrjpEogEz0BctuuHIMRi794gWFgYISeH1z6sXl3zUIhXrwLvv8/TJhaX11QIhfyzn38OdOyogZNX0tWrwPbtQHw8r7ExMeFV+y+/XLfpqKikpASHDx9GUFAQjBRVMRG10TXWPMnDtSbUVYyoTW12Qyp0UoXtrVvou3gxfBSsEwuFyPD2xtPOnfHU1xeZd+4o7oxNNIYKRHSDrnvtKVvwpHKmorS0FLdu3YK3t7fM8lu3bkFcsRevmjw9PeHo6IijR49KMxHZ2dmIiorCm5XHw67AxMQEJiYmcsuNjIyUfgDRh0nVvL35g3rFMdGbZt+Dz8MItHwciXcdf0FzNwM8fMibAl3IC0HfJzxTUQgTXBb1Rbx7CA6VBSPBpD38ugpgYAAYGpYAiIVIZITSUiMYG/O+eLm5iptZVeTnB3zxBbBlC09XXh6vCe/aVTcTzvn58WPqY4dJVX5vpHboGmuOJq9jXcWI2tBUoZM+unaxEBe/Po2mMUcQb94ZZ90nwNsbmDgRMG8RjLwln8OilGcen1l5IKdXGxwRTsEtp0F4WmTNC5eGAb30cJ6NhoIKRHSDrrv6lC14UjlTMXXqVEyfPh13795F9+7dAQBRUVH44osvMHXqVJX2lZubizsV2srcv38fsbGxaNKkCdzc3DB//nx8+umnaNWqlbQTnrOzs8zoH5qmL5OqCYXA1DHZaHb+OLz/ikDP7Ag455dfqx4u89BrXHesX8872mUHDMPfVx4j2i4YCU59YW5nhpwcICUZsIDmOjXr28gn9a3DJCENnSZjRHVqU5utiUInvcEYn0coIgLZuyPQLuokuogLAQDXXIbgWvtXcOECr3EfM8YIp1zeg4WTFW65BSPDzh3BwQcRGzFU5cIlor56+XtrAOi6156y103lTMWXX34JR0dHfPXVV3j8+DEAwMnJCQsXLsTbb7+t0r4uXbqEAQMGSN9LSpBCQ0OxZcsWvPvuu8jLy8Mbb7yBzMxM9OnTB//++6/WRvVQdVK16ialqxXGgEuXpOOBdzp3Dp1KSxVuOtHpGDqO6I4TJ3iGx7JtG/zVn88jYQHZGV4ZAy5flm0mC9R+Flh6kCeEVEWTMaI6ta3NrteePwcOHy6fMyIlBQBQubyoVWokbEQlsGxrhJs3gSNHgJRWi2Fn99+AHpBtH00j5hFCNEHlTIVQKMS7776Ld999V1odUttq4/79+4NJxiRVQCAQYPny5Vi+fHmt9q8qVSZVy8vTUhOpkSOB/wJxRaUCQ9xs0hvRdiGINAtGRoEvPrxS8wyvoaH88w8e8G08PPj77GwgMVG/Z4ElhNQ/mowR+librVN79gAzZihc9dzMBTfdghHnEoJbzQdBLDSCADwupKQATk681kJThUuEEFJZrSa/Ky0txYkTJ3D37l1MnDgRAJCSkgIrKyuIRCKNJrAuKTup2oUL/N5eqyZS+fnAqVO8pCk9nedMJAQCPmzff8ue2rRGpFkwHncIxm3n/igytgQAGDAg7b9ak6++Um6GV8k2kvickaH/s8ASQuonTcUIfavN1jrG+E06IoLHiAULZCeVCw4u/7+ZGdC/Px60CcaSyBAYd2wDA0OB3C4lcSsoiMctKlwihGiLypmKpKQkDB48GA8ePEBRURGCgoJgaWmJlStXoqioCBs2bNBGOuuEMpOqmZjw2mdlm0iBMT5MkSRIREaWz05qYAB8+63sNNTTpwO9euGeVxDeXOWJJk3k01K51kSZfg6SbeLjgdu3+WhP3t4URAghmqXJGKFvtdlakZkJHDtW3qQpMbF8nbe3bKbCw4MPs9e9O9C7N2BqisLbQOoNoEl+9f3muncH2rWjwiVCiPaonKmYN28eunbtiitXrsDOzk66/MUXX8TrqkysoIcqzjpaMcMAlFcRe3nxUp/qmkjdvZqH1K/2welaBA8SqamKDyjp7DBwYPmygAAgIADPLypXayKZGVWZfg6SoV9v39afUZIIIQ1LQ44RGhMbCxw4wDMSUVG8g54ily7JL3vvPZm3ysQtSdMmoZAKlwgh2qNypiIyMhJnz56FsbGxzHIPDw88evRIYwnTBcmso9X1UQgMBDZtqv5hP6+gAI6LXuV39Mrc3PjsbCEhPDNha6twP8rUmlDHOkKIvmnIMUJjwsKA776TX25sDPTpw5s5hYQoNeGOMnGrYtMmKlwihGiLypkKsViMsrIyueUPHz6EpaWlRhKlS76+1fdRsLAAtv3CYJ1yC90zI+DzMAKp1q2xq9caAPxGXmTZFEXt/GB6/RL/wIAB5UGiVSv5Kg4FVCl9IoQQfdHQY4RScnOBEyd4TXVEBHD0KNC8efn64ODyTEXbtvx9cDDQr1/VJVbVqCluUdMmQkhdUDlTERwcjG+++QYbN24EwNu05ubmYtmyZRg6dKjGE6gLCvsoNEmH8NgRsPAI7DgXAdvcZOn2Thk3sMv/azAIpA/7xm99BpgaA7168dInFala+kQIIfqgMcQIOWIxn+RIkok4cwYoqTBs6+HDwJQp5e/79wd++on3nnZz00gS9G0OIUJI41OreSoGDx4MHx8fFBYWYuLEiUhISEDTpk3x+++/ayONOiEUAq2N7gN/buZB4uJFgDEIAFRusGRYVgykpeHmM4fyh33fYEW7VQmVPhFC6pvGEiMAANu3A3//XT56hyIGBrKdrwFeGzF9usaTQ3MIEUJ0SeVMhaurK65cuYKdO3fiypUryM3NxfTp0zFp0iSYmZlpI4268+gR8Omn8stNTZHduS+OGQXjUGkwbhm2h2m+QCsP+1T6RAipTxpVjNi8mTdtqqxFC97cNTiYN3+lzm+EkEZApUxFSUkJ2rRpg7///huTJk3CpEmTtJUu/dCjB2BpCeTkAO3blweJgABYmZlhhBjwqYOHfSp9IoTUB40uRgQH80yFpSUwaFB53wgvL12njBBC6pxKmQojIyMUFhZqKy36x8gI2LePd6RzdpZbTQ/7hBBSrtHFiIkTeb+5Hj14vCCEkEZM5XL1WbNmYeXKlSgtLdVGevTPoEEKMxSEEELkNaoY4eLCh4ClDAUhhKjep+LixYs4evQoIiIi0KFDB1hUGv5u7969GkucJkhmY83OztZxSvRDSUkJ8vPzkZ2dDSMKhBpH11f76BprnuT+WN3s1cqqTzGiscYH+hvSDbruukHXXX3KxgiVMxU2NjYYM2ZM7VKlAzk5OQB450FCCCFVy8nJgbWanYrrU4yg+EAIIcqrKUYImCaKpvSYWCxGSkoKLC0tIVBi0rmGLjs7G66urkhOToaVoqm6iVro+mofXWPNY4whJycHzs7OEDaioeUaa3ygvyHdoOuuG3Td1adsjFC6pkIsFmP16tX4888/UVxcjEGDBmHZsmV6P0SgUCiEi4uLrpOhd6ysrOiPS4vo+mofXWPNUreGoj7GiMYeH+hvSDfouusGXXf1KBMjlC6S+uyzz/D+++9DJBKhefPm+PbbbzFr1iy1EkgIIaRhoBhBCCGNm9KZil9++QU//PADwsPDsX//fvz111/47bffIBaLtZk+Qggh9QDFCEIIadyUzlQ8ePAAQ4cOlb4PDAyEQCBASkqKVhJGtMPExATLli2DiYmJrpPSINH11T66xvqJYkT9QX9DukHXXTfoutcdpTtqGxgY4MmTJ7C3t5cus7S0xNWrV+Hp6am1BBJCCNF/FCMIIaRxU7qjNmMMU6ZMkcnpFRYW4n//+5/MOOT6NAY5IYSQukExghBCGjelMxWhoaFyyyZPnqzRxBBCCKmfKEYQQkjj1uDnqSCEEEIIIYRoV+OZ5YgQQgghhBCiFZSpaKBOnTqF4cOHw9nZGQKBAPv375dZzxjD0qVL4eTkBDMzMwQGBiIhIUE3ia2HVqxYgW7dusHS0hIODg4YNWoU4uPjZbYpLCzErFmzYGdnB5FIhDFjxiA1NVVHKa5f1q9fj44dO0onK/L398ehQ4ek6+naElIzigO6QfFBNyhu6B5lKhqovLw8dOrUCevWrVO4ftWqVfjuu++wYcMGREVFwcLCAiEhISgsLKzjlNZPJ0+exKxZs3D+/HkcPnwYJSUlCA4ORl5ennSbt956C3/99Rd27dqFkydPIiUlBaNHj9ZhqusPFxcXfPHFF4iOjsalS5cwcOBAjBw5Ejdu3ABA15YQZVAc0A2KD7pBcUMPMNLgAWD79u2TvheLxczR0ZGtXr1auiwzM5OZmJiw33//XQcprP+ePn3KALCTJ08yxvj1NDIyYrt27ZJuc/PmTQaAnTt3TlfJrNdsbW3ZTz/9RNeWkFqgOKA7FB90h+JG3aKaikbo/v37ePLkCQIDA6XLrK2t0aNHD5w7d06HKau/srKyAABNmjQBAERHR6OkpETmGrdp0wZubm50jVVUVlaGHTt2IC8vD/7+/nRtCdEAigN1h+JD3aO4oRtKDylLGo4nT54AAJo1ayazvFmzZtJ1RHlisRjz589H79690b59ewD8GhsbG8PGxkZmW7rGyrt27Rr8/f1RWFgIkUiEffv2wcfHB7GxsXRtCVETxYG6QfGhblHc0C3KVBCiplmzZuH69es4ffq0rpPSoHh7eyM2NhZZWVnYvXs3QkNDcfLkSV0nixBClEbxoW5R3NAtav7UCDk6OgKA3KgHqamp0nVEObNnz8bff/+N48ePw8XFRbrc0dERxcXFyMzMlNmerrHyjI2N0bJlS/j5+WHFihXo1KkTvv32W7q2hGgAxQHto/hQ9yhu6BZlKhohT09PODo64ujRo9Jl2dnZiIqKgr+/vw5TVn8wxjB79mzs27cPx44dg6enp8x6Pz8/GBkZyVzj+Ph4PHjwgK5xLYnFYhQVFdG1JUQDKA5oD8UH/UFxo25R86cGKjc3F3fu3JG+v3//PmJjY9GkSRO4ublh/vz5+PTTT9GqVSt4enriww8/hLOzM0aNGqW7RNcjs2bNwvbt23HgwAFYWlpK22RaW1vDzMwM1tbWmD59OhYsWIAmTZrAysoKc+bMgb+/P3r27Knj1Ou/9957D0OGDIGbmxtycnKwfft2nDhxAuHh4XRtCVESxQHdoPigGxQ39ICuh58i2nH8+HEGQO4VGhrKGOPDCX744YesWbNmzMTEhA0aNIjFx8frNtH1iKJrC4CFhYVJtykoKGAzZ85ktra2zNzcnL344ovs8ePHukt0PTJt2jTm7u7OjI2Nmb29PRs0aBCLiIiQrqdrS0jNKA7oBsUH3aC4oXsCxhiry0wMIYQQQgghpGGhPhWEEEIIIYQQtVCmghBCCCGEEKIWylQQQgghhBBC1EKZCkIIIYQQQohaKFNBCCGEEEIIUQtlKgghhBBCCCFqoUwFIYQQQgghRC2UqSCEEEIIIYSohTIVhCipf//+mD9/vq6ToZBAIMD+/fvr5Fh9+/bF9u3b6+RYiixevBhz5szR2fEJIUQRihEcxYjGizIVRGlTpkyBQCDA//73P7l1s2bNgkAgwJQpU+o+YXqgf//+EAgEVb769++v1eM/fvwYQ4YM0eoxAODPP/9EamoqJkyYIF3m4eEBgUCAHTt2yG3frl07CAQCbNmyRW57gUAACwsLdOnSBbt27VI6De+88w62bt2Ke/fuqXUuhBDNohhRNYoRFCMaA8pUEJW4urpix44dKCgokC4rLCzE9u3b4ebmpsOUKae4uFgr+927dy8eP36Mx48f48KFCwCAI0eOSJft3btXK8eVcHR0hImJiVaPAQDfffcdpk6dCqFQ9tbh6uqKsLAwmWXnz5/HkydPYGFhIbef5cuX4/Hjx4iJiUG3bt0wfvx4nD17Vqk0NG3aFCEhIVi/fn3tT4QQohUUIxSjGEExojGgTAVRSZcuXeDq6ipzA9y7dy/c3Nzg6+srs61YLMaKFSvg6ekJMzMzdOrUCbt375auLysrw/Tp06Xrvb298e2338rs48SJE+jevTssLCxgY2OD3r17IykpCQAvFRs1apTM9vPnz5cp8enfvz9mz56N+fPnS280AHD9+nUMGTIEIpEIzZo1wyuvvIJnz55JP5eXl4dXX30VIpEITk5O+Oqrr6q9Lk2aNIGjoyMcHR1hb28PALCzs5Mui4uLQ0BAAMzMzODq6oq5c+ciLy9P+nkPDw98/vnnmDZtGiwtLeHm5oaNGzdK1xcXF2P27NlwcnKCqakp3N3dsWLFCun6ylXb165dw8CBA2FmZgY7Ozu88cYbyM3Nla6XXLsvv/wSTk5OsLOzw6xZs1BSUlLlOaalpeHYsWMYPny43LpJkybh5MmTSE5Oli7bvHkzJk2aBENDQ7ntLS0t4ejoiNatW2PdunUwMzPDX3/9pdRvAgCGDx+usNSLEKJbFCMUoxhBMaIxoEwFUdm0adNkShw2b96MqVOnym23YsUK/PLLL9iwYQNu3LiBt956C5MnT8bJkycB8IDi4uKCXbt2IS4uDkuXLsX777+PP/74AwBQWlqKUaNGoV+/frh69SrOnTuHN954AwKBQKX0bt26FcbGxjhz5gw2bNiAzMxMDBw4EL6+vrh06RL+/fdfpKamYty4cdLPLFy4ECdPnsSBAwcQERGBEydO4PLly7W5XLh79y4GDx6MMWPG4OrVq9i5cydOnz6N2bNny2z31VdfoWvXroiJicHMmTPx5ptvIj4+HgAv/fnzzz/xxx9/ID4+Hr/99hs8PDwUHi8vLw8hISGwtbXFxYsXsWvXLhw5ckTueMePH8fdu3dx/PhxbN26FVu2bJGpgq7s9OnTMDc3R9u2beXWNWvWDCEhIdi6dSsAID8/Hzt37sS0adNqvD6GhoYwMjJCcXFxjb8Jie7du+Phw4dITEyscf+EkLpFMUI1FCOqRzGiHmGEKCk0NJSNHDmSPX36lJmYmLDExESWmJjITE1NWVpaGhs5ciQLDQ1ljDFWWFjIzM3N2dmzZ2X2MX36dPbyyy9XeYxZs2axMWPGMMYYe/78OQPATpw4UW16Kpo3bx7r16+f9H2/fv2Yr6+vzDaffPIJCw4OllmWnJzMALD4+HiWk5PDjI2N2R9//CFd//z5c2ZmZsbmzZtXZdol7t+/zwCwmJgYxhg/5zfeeENmm8jISCYUCllBQQFjjDF3d3c2efJk6XqxWMwcHBzY+vXrGWOMzZkzhw0cOJCJxWKFxwTA9u3bxxhjbOPGjczW1pbl5uZK1//zzz9MKBSyJ0+eMMb4tXN3d2elpaXSbV566SU2fvz4Ks9rzZo1rEWLFnLL3d3d2Zo1a9j+/fuZl5cXE4vFbOvWrdLrbm1tzcLCwuS2Z4yxoqIi9vnnnzMA7O+//1Z43Iq/CYmsrKxqfxuEkLpHMYJiBMWIxk2+zomQGtjb2+OFF17Ali1bwBjDCy+8gKZNm8psc+fOHeTn5yMoKEhmeXFxsUwV+Lp167B582Y8ePAABQUFKC4uRufOnQHw6uIpU6YgJCQEQUFBCAwMxLhx4+Dk5KRSev38/GTeX7lyBcePH4dIJJLb9u7du9J09OjRQ7q8SZMm8Pb2Vum4FY939epV/Pbbb9JljDGIxWLcv39fWqrTsWNH6XqBQABHR0c8ffoUAK+KDgoKgre3NwYPHoxhw4YhODhY4fFu3ryJTp06ybRT7d27N8RiMeLj49GsWTMAvIOcgYGBdBsnJydcu3atyvMoKCiAqalpletfeOEFzJgxA6dOncLmzZurLYFatGgRlixZgsLCQohEInzxxRd44YUXAFT/m5AwMzMDwEu7CCH6hWKEaihGyKMYUT9RpoLUyrRp06RVpevWrZNbL2mb+c8//6B58+Yy6ySdxXbs2IF33nkHX331Ffz9/WFpaYnVq1cjKipKum1YWBjmzp2Lf//9Fzt37sSSJUtw+PBh9OzZE0KhEIwxmX0rau9ZuRNYbm4uhg8fjpUrV8pt6+TkhDt37ihzCZSWm5uLGTNmYO7cuXLrKnZcNDIyklknEAggFosB8HbK9+/fx6FDh3DkyBGMGzcOgYGBMu2PVVXd8RRp2rQpMjIyqlxvaGiIV155BcuWLUNUVBT27dtX5bYLFy7ElClTpO2VJc0VlPlNAEB6ejoASNsmE0L0C8UI5VGMkEcxon6iTAWplcGDB6O4uBgCgUDasa0iHx8fmJiY4MGDB+jXr5/CfZw5cwa9evXCzJkzpcvu3r0rt52vry98fX3x3nvvwd/fH9u3b0fPnj1hb2+P69evy2wbGxsrdyOsrEuXLtizZw88PDwUdhDz8vKCkZERoqKipDf0jIwM3L59u8pzqel4cXFxaNmypcqfrcjKygrjx4/H+PHjMXbsWAwePBjp6elo0qSJzHZt27bFli1bkJeXJw2WZ86cgVAorHVJGsC/hydPniAjIwO2trYKt5k2bRq+/PJLjB8/vsptAB58FF0PZX8T169fh5GREdq1a1eLMyGEaBvFCOVRjJBHMaJ+oo7apFYMDAxw8+ZNxMXFyVSPSlhaWuKdd97BW2+9ha1bt+Lu3bu4fPky1q5dK+2o1apVK1y6dAnh4eG4ffs2PvzwQ1y8eFG6j/v37+O9997DuXPnkJSUhIiICCQkJEirggcOHIhLly7hl19+QUJCApYtWyYXQBSZNWsW0tPT8fLLL+PixYu4e/cuwsPDMXXqVJSVlUEkEmH69OlYuHAhjh07huvXr2PKlClyQ+Qpa9GiRTh79ixmz56N2NhYJCQk4MCBA3Kd4qrz9ddf4/fff8etW7dw+/Zt7Nq1C46OjrCxsZHbdtKkSTA1NUVoaCiuX7+O48ePY86cOXjllVek1dq14evri6ZNm+LMmTNVbtO2bVs8e/ZMbuhAZdX0m5CIjIyUjpRCCNE/FCOURzFCeRQj9BtlKkitWVlZwcrKqsr1n3zyCT788EOsWLECbdu2xeDBg/HPP//A09MTADBjxgyMHj0a48ePR48ePfD8+XOZ0gdzc3PcunULY8aMQevWrfHGG29g1qxZmDFjBgAgJCQEH374Id59911069YNOTk5ePXVV2tMt7OzM86cOYOysjIEBwejQ4cOmD9/PmxsbKRBYfXq1QgICMDw4cMRGBiIPn36yLW7VVbHjh1x8uRJ3L59GwEBAfD19cXSpUvh7Oys9D4sLS2xatUqdO3aFd26dUNiYiIOHjyoMIiZm5sjPDwc6enp6NatG8aOHYtBgwbh+++/r1X6JQwMDDB16lSZdr+K2NnZ1fpGXtNvQmLHjh14/fXXa3UMQkjdoBihHIoRyqMYod8ErHKDQ0IIqcKTJ0/Qrl07XL58Ge7u7jpJw6FDh/D222/j6tWrCpsmEEII0Q2KEY0b1VQQQpTm6OiIn3/+GQ8ePNBZGvLy8hAWFkbBghBC9AzFiMaNaioIIYQQQgghaqGaCkIIIYQQQohaKFNBCCGEEEIIUQtlKgghhBBCCCFqoUwFIYQQQgghRC2UqSCEEEIIIYSohTIVhBBCCCGEELVQpoIQQgghhBCiFspUEEIIIYQQQtRCmQpCCCGEEEKIWihTQQghhBBCCFELZSoIIYQQQgghaqFMBSGEEEIIIUQtlKkghBBCCCGEqIUyFYQQQgghhBC1UKaCNBiJiYkQCATYsmWLrpOiVz766CMIBAI8e/as1vtYtWoV2rRpA7FYrMGUVe/EiRMQCAQ4ceKEyp+Ni4uDoaEhrl+/rvmEEULqPYoXitXXeFETigl1gzIVBFu2bIFAIICpqSkePXokt75///5o3769DlKmHZKHVYFAgOjoaLn1U6ZMgUgkqtW+Dx48iI8++kjNFOqX7OxsrFy5EosWLYJQKMSUKVOk16+615QpU3SWZh8fH7zwwgtYunSpztJASENE8UIWxQtZuo4X27dvxzfffCO3nGJC3TDUdQKI/igqKsIXX3yBtWvX6jopdeajjz7CX3/9pbH9HTx4EOvWrWtQgWLz5s0oLS3Fyy+/DACYMWMGAgMDpevv37+PpUuX4o033kBAQIB0uZeXl1rH7du3LwoKCmBsbFyrz//vf//D0KFDcffuXbXTQgiRRfFCfRQvNBcvJLZv347r169j/vz5cusoJmgfZSqIVOfOnbFp0ya89957cHZ21nVyUFhYCGNjYwiF2qlQ69y5M/7++29cvnwZXbp00coxdCkvLw8WFhZq7ycsLAwjRoyAqakpAMDf3x/+/v7S9ZcuXcLSpUvh7++PyZMnayw9QqFQeszaCAwMhK2tLbZu3Yrly5fXej+EEHkULxoWfYsX2kAxQfuo+RORev/991FWVoYvvvhCqe1//fVX+Pn5wczMDE2aNMGECROQnJwss42Hh4fCas3+/fujf//+0veSKuYdO3ZgyZIlaN68OczNzZGdnY309HS888476NChA0QiEaysrDBkyBBcuXJFndPFnDlzYGtrq3Qp0aFDhxAQEAALCwtYWlrihRdewI0bN6Trp0yZgnXr1gGATLUuAHTp0gWjR4+W2V+HDh0gEAhw9epV6bKdO3dCIBDg5s2b0mUxMTEYMmQIrKysIBKJMGjQIJw/f15mX5ImCSdPnsTMmTPh4OAAFxeXKs8lKSkJLVu2RPv27ZGamlrldvfv38fVq1dlSpqUUV16kpKSMHPmTHh7e8PMzAx2dnZ46aWXkJiYKLMPRX0qJE0r4uLiMGDAAJibm6N58+ZYtWqVXBqMjIzQv39/HDhwQKW0E0JqRvGiehQvVBMVFYXBgwfD2toa5ubm6NevH86cOSOzTU5ODubPnw8PDw+YmJjAwcEBQUFBuHz5MgD+O/nnn3+QlJQkvZ4eHh7Sz1NM0D6qqSBSnp6eePXVV7Fp0yYsXry42tKnzz77DB9++CHGjRuH1157DWlpaVi7di369u2LmJgY2NjY1CoNn3zyCYyNjfHOO++gqKgIxsbGiIuLw/79+/HSSy/B09MTqamp+PHHH9GvXz/ExcXVupTMysoKb731FpYuXVpj6dO2bdsQGhqKkJAQrFy5Evn5+Vi/fj369OmDmJgYeHh4YMaMGUhJScHhw4exbds2mc8HBATg999/l75PT0/HjRs3IBQKERkZiY4dOwIAIiMjYW9vj7Zt2wIAbty4gYCAAFhZWeHdd9+FkZERfvzxR/Tv3x8nT55Ejx49ZI4zc+ZM2NvbY+nSpcjLy1N4Lnfv3sXAgQPRpEkTHD58GE2bNq3yvM+ePQsAtS6ZU5Seixcv4uzZs5gwYQJcXFyQmJiI9evXo3///oiLi4O5uXm1+8zIyMDgwYMxevRojBs3Drt378aiRYvQoUMHDBkyRGZbPz8/HDhwANnZ2bCysqrVORBC5FG8oHhRWW3jxbFjxzBkyBD4+flh2bJlEAqFCAsLw8CBAxEZGYnu3bsD4M2Xdu/ejdmzZ8PHxwfPnz/H6dOncfPmTXTp0gUffPABsrKy8PDhQ6xZswYA5Pq7UEzQMkYavbCwMAaAXbx4kd29e5cZGhqyuXPnStf369ePtWvXTvo+MTGRGRgYsM8++0xmP9euXWOGhoYyy93d3VloaKjcMfv168f69esnfX/8+HEGgLVo0YLl5+fLbFtYWMjKyspklt2/f5+ZmJiw5cuXyywDwMLCwqo9X8mxdu3axTIzM5mtrS0bMWKEdH1oaCizsLCQvs/JyWE2Njbs9ddfl9nPkydPmLW1tczyWbNmMUV/Vrt27WIAWFxcHGOMsT///JOZmJiwESNGsPHjx0u369ixI3vxxRel70eNGsWMjY3Z3bt3pctSUlKYpaUl69u3r3SZ5Dvs06cPKy0tlTn2smXLGACWlpbGbt68yZydnVm3bt1Yenp6tdeJMcaWLFnCALCcnJwqt7l48aLcda8uPZW/X8YYO3fuHAPAfvnlF+kyyfd0/Phx6bJ+/frJbVdUVMQcHR3ZmDFj5Pa7fft2BoBFRUXVeK6EkJpRvKB4UZXaxAuxWMxatWrFQkJCmFgslm6Xn5/PPD09WVBQkHSZtbU1mzVrVrVpeOGFF5i7u3uV6ykmaBc1fyIyWrRogVdeeQUbN27E48ePFW6zd+9eiMVijBs3Ds+ePZO+HB0d0apVKxw/frzWxw8NDYWZmZnMMhMTE2k72bKyMjx//hwikQje3t7Sas/asra2xvz58/Hnn38iJiZG4TaHDx9GZmYmXn75ZZnzNTAwQI8ePZQ6X0mHtFOnTgHgJUzdunVDUFAQIiMjAQCZmZm4fv26dNuysjJERERg1KhRaNGihXRfTk5OmDhxIk6fPo3s7GyZ47z++uswMDBQmIbr16+jX79+8PDwwJEjR2Bra1tjup8/fw5DQ8Naj26iKD0Vv9+SkhI8f/4cLVu2hI2NjVLfp0gkkmmLa2xsjO7du+PevXty20rOUZ3hEQkhilG8kEfxQrV4ERsbi4SEBEycOBHPnz+XXq+8vDwMGjQIp06dkg5Na2Njg6ioKKSkpCi9/8ooJmgXZSqInCVLlqC0tLTKtrIJCQlgjKFVq1awt7eXed28eRNPnz6t9bE9PT3llonFYqxZswatWrWCiYkJmjZtCnt7e1y9ehVZWVm1PpbEvHnzYGNjU2Vb2YSEBADAwIED5c43IiJCqfNt1qwZWrVqJQ0IkZGRCAgIQN++fZGSkoJ79+7hzJkzEIvF0iCRlpaG/Px8eHt7y+2vbdu2EIvFcm2SFV0/ieHDh8PS0hLh4eF1Vu2rKD0FBQVYunQpXF1dZb7PzMxMpb5PFxcXadtjCVtbW2RkZMhtyxgDALntCSGaQfFCFsUL1UiuV2hoqNz1+umnn1BUVCT93latWoXr16/D1dUV3bt3x0cffaSwMKk6FBO0i/pUEDktWrTA5MmTsXHjRixevFhuvVgshkAgwKFDhxSWclQspajqD7esrEzhZyuXOgHA559/jg8//BDTpk3DJ598giZNmkAoFGL+/PkamVxHUvr00UcfKSx9khxj27ZtcHR0lFtvaKjcn1GfPn1w9OhRFBQUIDo6GkuXLkX79u1hY2ODyMhI3Lx5EyKRCL6+vrU+F0XXT2LMmDHYunUrfvvtN8yYMUOp/dnZ2aG0tBQ5OTmwtLTUSHrmzJmDsLAwzJ8/H/7+/rC2toZAIMCECROU+j6rKlmTBIuKJBmN6toBE0Jqj+KFLIoXqsULyfVavXo1OnfurHAbyW9k3LhxCAgIwL59+xAREYHVq1dj5cqV2Lt3r1x/uqpQTNAuylQQhZYsWYJff/0VK1eulFvn5eUFxhg8PT3RunXravdja2uLzMxMueVJSUkyVbTV2b17NwYMGICff/5ZZnlmZqbGbgzz58/HN998g48//liu06BkPGsHB4caR7WorvQjICAAYWFh2LFjB8rKytCrVy8IhUL06dNHGiR69eolDZ729vYwNzdHfHy83L5u3boFoVAIV1dXpc9x9erVMDQ0xMyZM2FpaYmJEyfW+Jk2bdoA4KN6SDoHqmv37t0IDQ3FV199JV1WWFio8Heirvv370MoFNb4OyWE1B7Fi3IUL1SLF5LrZWVlpdSoUU5OTpg5cyZmzpyJp0+fokuXLvjss8+kmYqaaiAoJmgXNX8iCnl5eWHy5Mn48ccf8eTJE5l1o0ePhoGBAT7++GO50mHGGJ4/fy6zn/Pnz6O4uFi67O+//5arhq2OgYGB3HF27dqlcDbX2pKUPh04cACxsbEy60JCQmBlZYXPP/8cJSUlcp9NS0uT/l8yzreiwCippl65ciU6duwIa2tr6fKjR4/i0qVLMpMBGRgYIDg4GAcOHJAZbjU1NRXbt29Hnz59VKqWFggE2LhxI8aOHYvQ0FD8+eefNX5GMr74pUuXlD5OTRR9n2vXrkVZWZnGjiERHR2Ndu3aSa81IUTzKF6Uo3ihWrzw8/ODl5cXvvzyS+Tm5sqtl1yvsrIyueZrDg4OcHZ2RlFRkXSZhYVFtc3cKCZoF2UqSJU++OADlJSUyJV8eHl54dNPP5XeqFavXo0NGzZg0aJF8Pb2RlhYmHTb1157DampqRg8eDA2bNiAhQsX4vXXX1dpNsthw4bhxIkTmDp1KjZt2oS5c+fif//7n9IlV8qaN28erK2t5cYzt7Kywvr16xEZGSktFdm4cSOWLFkCX19ffPzxx9Jt/fz8AABz587Fb7/9hh07dkjXtWzZEo6OjoiPj5cJBn379kViYiKKi4tllgPAp59+CkNDQ/Tp0weff/45Vq1ahV69eqGoqEjh3Aw1EQqF+PXXXxEcHIxx48bh2LFj1W7fokULtG/fHkeOHFH5WFUZNmwYtm3bhvnz52Pjxo2YOnUqvvvuO9jZ2WnsGADvBH7y5EmMHDlSo/slhMijeMFRvFAtXgiFQvz0009ITk5Gu3bt8NFHH2HTpk346KOP0K9fP0ybNg0An6OiefPmmDJlCtasWYNNmzZh/PjxuHjxonT2boBf08zMTCxYsAC///67zAzoFBPqgC6GnCL6peIQgZWFhoYyADJDBErs2bOH9enTh1lYWDALCwvWpk0bNmvWLBYfHy+z3VdffcWaN2/OTExMWO/evdmlS5eqHCJw165dcscpLCxkb7/9NnNycmJmZmasd+/e7Ny5c3L7qM0QgZVJhtOrOERgxc+FhIQwa2trZmpqyry8vNiUKVPYpUuXpNuUlpayOXPmMHt7eyYQCOSGC3zppZcYALZz507psuLiYmZubs6MjY1ZQUGB3HEvX77MQkJCmEgkYubm5mzAgAHs7NmzMttU9x1WHCJQIj8/n/Xr14+JRCJ2/vz5aq4WY19//TUTiUQKh4JlrPohZRWlJyMjg02dOpU1bdqUiUQiFhISwm7duiU3nGRVQ8oq+i2GhobKDSN46NAhBoAlJCRUe36EEOVRvChH8UJebeIFY4zFxMSw0aNHMzs7O2ZiYsLc3d3ZuHHj2NGjRxljfOjwhQsXsk6dOjFLS0tmYWHBOnXqxH744QeZ/eTm5rKJEycyGxsbBkAmLlBM0D4BYwp6NxJCyH+ysrLQokULrFq1CtOnT9d1cpQ2atQoCAQC7Nu3T9dJIYSQRkGf4wXFBO2jTAUhpEYrV65EWFgY4uLipGPA67ObN2+iQ4cOiI2NRfv27XWdHEIIaTT0MV5QTKgbKmcqMjMzsW/fPkRGRiIpKQn5+fmwt7eHr68vQkJC0KtXL22llRBCiB6j+EAIIY2X0lnIlJQUvPbaa3BycsKnn36KgoICdO7cGYMGDYKLiwuOHz+OoKAg+Pj4YOfOndpMMyGEED1C8YEQQojS81T4+voiNDQU0dHR8PHxUbhNQUEB9u/fj2+++QbJycl45513NJZQQggh+oniAyGEEKWbPz1//lylIR9V3Z4QQkj9RPGBEEIIddQmhBBCCCGEqEXp5k+KxMXF4cGDBzKzXwLAiBEj1EoUIYSQ+o3iAyGENC61ylTcu3cPL774Iq5duwaBQABJZYdAIADAp1PXF2KxGCkpKbC0tJSmjxBCSDnGGHJycuDs7Kz2EJAUHwghpGFROkbUZsa8YcOGsZEjR7K0tDQmEolYXFwci4yMZN27d2enTp1Sf0o+DUpOTmYA6EUvetGLXjW8kpOT1b7nUnygF73oRa+G+aopRtSqpuLcuXM4duwYmjZtCqFQCKFQiD59+mDFihWYO3cuYmJiarNbrbC0tAQAJCcnw8rKSsep0b2SkhJEREQgODgYRkZGuk5Og0PXV/u0eY2vXAFWrgSePweaNwfMzYH8fODRI8DODli0COjUSaOH1AvZ2dlwdXWV3i/VQfFB/9F9SnOuXAG2bwdu3wYKCwFTU6B1a2DiRPl7BV133aDrrj5lY0StMhVlZWXSHTdt2hQpKSnw9vaGu7s74uPja7NLrZFUaVtZWTWqoFGVkpISmJubw8rKiv64tICur/Zp6xqLxcCePUBWFtChAyBpDWNmBjRpAty8CezdC/TuDejJJLEap4kmQBQf9B/dpzQjJgb4+mvg2TPAxQWwsADy8oDr1/nypUsBX9/y7em66wZdd82pKUbUKlPRvn17XLlyBZ6enujRowdWrVoFY2NjbNy4ES1atKhVQgkhRJfu3OEZBxeX8gyFhEDAl8fF8e1at9ZNGusDig+kMRCLga1beYaibdvye4aVFX9/8ybwyy+8tqKhFkIQPcUYEB/Pf5Te3nV66FplKpYsWYK8vDwAwPLlyzFs2DAEBATAzs6OZkslhNRLWVm8+YKFheL15uZASgrfjlSN4gNpDKgQguiNsjLeDi8yEjh1iv+blgZMmQKEhdVpUmqVqejfvz9KS0sBAC1btsStW7eQnp4OW1tbGkGDEFIvWVvz9tB5eby0sbL8fL7e2rru01afUHwgjQEVQhCdKSoCLl4sz0CcOQPk5Mhvd+pUnSdNpUq5tLQ0DBkyBCKRCFZWVujZsyfu3LkDAGjSpAkFDEJIvdWyJW+28PAhrz2uiDG+3MeHb0fkUXwgjUnFQghFqBCCaM033wABAcAHHwD//iufobC2BoYOBd54g9di1CGVMhWLFi1CbGwsli9fji+//BKZmZl4/fXXtZU20oCJxXy0jIsX+b9isa5TRBo7oRAIDQWaNuXNGrKzgdJS/u/Nm3z5q69S++iqUHwgjQkVQhCtefYM2L8fWLAA6NYNiI6WXR8QIPu+WTNg7Fjgu+/46AHPnwP//MOHKzQwqLNkAyo2fzp8+DC2bNmCkJAQAMCwYcPQtm1bFBUVwcTERCsJJA1PTAzv4HbzZvkQfG3b8ge6iiNlEFLXfH35iC2S32dKCv99du3KMxT0+6waxQfSmEgKIZKSyvtWSIagfviQCiGICpKTy5syRUbyzjgVnTwJ+PmVv+/aFZg6lQ9F2Lcvz7nqSU2wSpmKlJQUdKow8HKrVq1gYmKCx48fw8PDQ9NpIw1QTAywfLn8EHzR0fzmXHkIPkLqmq8vH7Hlzh3eHtramt+z6eGgehQfSGNDhRBELe+8A+zezR9+qpOYKPve2BjYvFlryVKHymHSoFJVioGBAVjlur9a+OKLLyAQCDB//nzpssLCQsyaNQt2dnYQiUQYM2YMUlNT1T4W0Y3KQ/BZWfGaOckQfM+e8SH4qCkU0TWhkI/Y0q0b/5cyFMrRVnwgRF/5+vI5KdauBb78kv/71VeUoSD/KSsDLl/mMyRWlpIin6EwMAC6d+cZjgMH+IPRd9/VTVo1QKWaCsYYWrduLdPhLjc3F76+vhBWiLrp6ekqJeLixYv48ccf0bFjR5nlb731Fv755x/s2rUL1tbWmD17NkaPHo0zZ86otH+iH2gIPkIaLm3FB0L0naQQgpAqR2YyNARGjABEovJtAwKAffsAf3/+/759gZ49qx5SrB5QKVMRpoXxbnNzczFp0iRs2rQJn376qXR5VlYWfv75Z2zfvh0DBw6UHr9t27Y4f/48evbsqfG0EO2qOAQfY7wDbHExr8mzsqIh+Aipz7QRHwghRK8VFfE+D5JMRFQUX1ZZaSlw/jwQGFi+LDQUmD6dPwQ1ECplKkJDQzWegFmzZuGFF15AYGCgTKYiOjoaJSUlCKzwBbRp0wZubm44d+5clZmKoqIiFFX4QrOzswHwadpLSko0nv76RnINdHEtRCLA0hJITQUeP+aZh9JSnoG3tgacnPh6kQior1+VLq9vY0HXWPM0cS21ER+I5onFvDYY4P96e1PzPlI9yW+G+piBN2eq2MwzNxf4b3AKhZo14zUQAQG8nXdF5ubaSaMO1WryO03ZsWMHLl++jIsXL8qte/LkCYyNjWFjYyOzvFmzZnjy5EmV+1yxYgU+/vhjueUREREwb4BfYG0dPnxYJ8dVZoTJ27f5qz7T1fVtTOgaa05+fr6uk0DqgGTkvTt3+L144UL+gEgj75GqNPrRGiuPzNSnD/Djj+Xr7eyAdu2AGzf4+xYteAZC0pxJj0ZmqgsqZSpatGih1Hb37t2rcZvk5GTMmzcPhw8fhqmpqSrJqNZ7772HBQsWSN9nZ2fD1dUVwcHBsFI0TW49IBYD9+7x5kJWVvw3W9tSgpKSEhw+fBhBQUEwMjLSbEJrIBbzQHb0KGBkxDPphoa8tiI/n9dOBAYCGzfW31IQXV7fxoKuseZJanTVocn4QDSv4sh7ksG4bG1p5D1StUY3WiNjvERTkok4dUq+I7WiyeSWLOH/BgQAzZtrP516TKVMRWJiItzd3TFx4kQ4ODiodeDo6Gg8ffoUXbp0kS4rKyvDqVOn8P333yM8PBzFxcXIzMyUqa1ITU2Fo6Njlfs1MTFROCa6kZFRvXwA0VYpgS6ux+3bvOlThw7Ao0dAZmZ58ydbW8DZGXjyhP8N1/dOb/X191af0DXWHE1cR03GB6JZlUfek3zdkpH3bt7kI+916lR/C3SIZlX+zUgK2xvsb+aPP4A5c4CnT6vexsAAsLEpfxiTmDBB68mrL1TKVOzcuRObN2/G119/jSFDhmDatGkYOnSozMgeyho0aBCuXbsms2zq1Klo06YNFi1aBFdXVxgZGeHo0aMYM2YMACA+Ph4PHjyAv7+/yserjxpaKYGko3arVoCbG38v6ahtbc0LACTtNvURtSsleqGoCLh6lY8wcukS/3fbNqBzZ50mS5PxgWgWjbxHVNUgfzNFRbwj9alTwLhxstOdOzjIZyhMTRvUyEx1QaVMxUsvvYSXXnoJjx49wpYtW/DWW29hxowZeOWVVzB9+nS0atVK6X1ZWlqiffv2MsssLCxgZ2cnXT59+nQsWLAATZo0gZWVFebMmQN/f/9GMfJTQywlsLbmf6N5efw8KnWXQX4+X29trZPkVavRtyslulFayn90Fy+WZyKuXJEfyeDCBZ1nKjQZH4hmVRx5TxEaeY9U1iB+Mzk5wNmzEJ44gd5//QXD8ePLR2aysgJmzy7ftkcPnrHo1q08E+Hn16BGZqoLtXocbd68OT744AMkJCRg+/btiIqKQps2bZCRkaHRxK1ZswbDhg3DmDFj0LdvXzg6OmLv3r0aPYa+UqWUoL5o2ZI/iD98yJsuVsQYX+7jI1t4oA8kNUbR0UCTJrympUkT/n75cr6eEK3w8QE6duTDDm7YwDMVlTMUBgZ8ODU9UVfxgSivYoGOIvpcoEN0o97+ZiIigAUL+LTmNjbA4MEw+OILNL1xA4KKQ72eOiX7OTMz3v7677+BRYt4DQVlKFRW69GfCgsLsXv3bmzevBlRUVF46aWX1B5d6cSJEzLvTU1NsW7dOqxbt06t/dZHDaKUoBKhkJfsJyWVZ5jMzfnN6eFDoGlT4NVX9avmpSHWGBHNUKs5nCQXLamBuHiRN3Q/dEh2Ox8fICGh/L1AwMcA7daNv7p25TUUZmaaOi2N0EZ8ILUnKdCJjpYf1VLyU+zaVf8KdIjuVP7NVCzcVOc3o9FmxGlpgL297LJNm4DduxVuzlq0gEAyMlP//vIbNKJRmrRF5UxFVFQUfv75Z/zxxx9o0aIFpk2bhj179sDW1lYb6dNr2mxjX7mpUGV6W0pQA19f3hdE0pQoJYWfR9euPEOhb02JGmS7UqI2lZvDPX1a3v9B8lLUfrekpLwXLQAMHsxLyySZiC5dFN8Q9ATFB/1UuUBHMvpTdjaQmKifBTpEt7RRCKhWM2JFIzNJJryq2Gk6IKA8U9G+PRAQgNJevXC0uBgDX3mFBvfQMpUyFe3atcPTp08xceJEnDx5Ep06ddJWunSupgyDttvYa6OUQF8mPfL15SX7+tTpuarvuyHWGBH1qDyAwr//AkOG1LxjGxv+h+3pWb7sf//jr3qgMcUHfVVd3KpYoCOJAxkZ+lugQ3RPk4WAKt83y8p4/zFJBuL0acUjM124wPs/SIwaxXPNvXvzOSQAsJISFB48WJtLQFSkUqbi5s2bsLCwwC+//IJt27ZVuV16erraCdOlmjIMdTEqk6ZLCfRt0iOhUH9K9qv7vhtqjZE+qg+ja1VuDmdclg+3tBi4p12Ce9pFOEdfxKmCD9Hp4OTytHfsKL8jW1semSs2Y2revF5XvzeW+KCvlCnokhToxMfzQt/Vq2lGbVI9TRQCqtyMODsbcHXl/1ZFMjJTZW5u/EV0QqVMRVhYmLbSoTdqyjAsWcJHb6yLNvaaKiWgSY+qpsz3rY12pURWvRhdq7gYyX9fQ4uIixhRdAmt4i7COeMGDJjsZEiimxdw587k8kyzszPw4ou8BkKSgfDyqtcZCEUaQ3zQV6oUdAmF/H51+7Z+ZtyJ/lG3EFBRM2KT4hx4pZ5FqyeR6A17bI+bV96M2MoKcHSUzVRYW/PZrGlkJr2mUqYiNDRUW+nQC8rkpteu5Q/3ddXGXt1SAl1MelQfSpwB5b7vX38FXnmlfnUur2/0cj4WxuT/wEePhvs//2BuNR8rERrDsDhfvjlcIxi1rqHHh4r06R5Hg0kQfZeVBZhkp6FP2Wl434hEq8en4Po8BkImBgAk23bAZst5svfNF18E7t3jGYiAAN4/wsBANydAlKZ0poIxBkEDK1mrTJlOubdu8aZ+VdWuaaONvTqlBHXd0bhelDj/R9lrY2lZvzqX1ycVH4jatOHDiqen8wKoNm3435vWH4gY48GrYifqO3d4rrHiQX19gX/+kb4tExggxbYdkuy7IdG+GxIduuGWQXukZRljbSNrDtcY4oOEvt3jaDAJoreuXAF++AEdj0biz7s3q9ysecZ12BlkwtrapnzhF19oP31E45TOVLRr1w5Lly7F6NGjYVxNlVNCQgK+/vpruLu7Y/HixRpJZF1RplNuWRnPLOtbG/u67Ghc1bH0ssS5Gqpcm27d9K9zeUMgeSCysADOnwcyM/l8b4aGvN9y8+ZaeCB69Eg2A3HpEu+xWtnt2zxnIzFwINi9+9j3sBsOZ3aDgV9nlBiVD5PKGJB0s3E2h2sM8QHQz3scDSZBdI4x3lHH3l7aORoA71i9cSNMFHzkkW17JDgFIMGxLw7mBMCjk02ju282REpnKtauXYtFixZh5syZCAoKQteuXeHs7AxTU1NkZGQgLi4Op0+fxo0bNzB79my8+eab2ky3VijTKdfWFnBy4gWb+tLGvi47Gld1rFdeqbu+Jpqi6rXRp87lDUVWFv/NPH/OJzq1sOCv0lK+PDubNzGr9QORpBRAIjFRdnSlqri7A6mpspmKAQMgGDAAnjHAk+XAswRqDifRGOKDvjYzosEkSJ2rPDJTZCSfM+LHH4E33ijfzt9fev/Na+uHw4V9cd4oAM/b9IbY1q78vtm8cd43GyKlMxWDBg3CpUuXcPr0aezcuRO//fYbkpKSUFBQgKZNm8LX1xevvvoqJk2aVG/HJFd2GNfJk4FPP9WPNvaSkrO0NB40bGz4A9mlS4o7GlekaiaoulK6GzeA3FzeEby+VMFra3IfojxLS/57ys/nfzsSRkb8t/zsGX9ZWiqxs+xs/mVWrIEYNw5YubJ8G3d3Ph16xRGImjUr70At+dfBocrD1Le5VupCY4gP+trMiO5jROuKivg9VZKBOHOGt1Wt7NQp2UyFSMSHgm3fHhYiEdxjgBNbgQc3gcLndN9siFSe/K5Pnz7o06ePNtKic8oO46ovDxWSkrPERJ6RSEqSbTqSlyff0bi2kx7V1Pb94kW+zsdH8ef1sQq+Ps7w3ZBV7hvNWNXbCouKIDh/nud0JZmI+Hj5DS9elH0vEAAzZvD/SzIRip4Sa6CPc63og4YcH/S1mRHdx3RPnzrua8XEidUPNiEZmalfP/l1PXtK/0v3zYZP5UxFQ6dshkEf/jju3AGiongtRWkpD3bm5vz/aWk8c3H+PPDmm+pPelRT23fJvF1PnvCgVpm+VsHrSwaxscrJ4Q89z57x35SFBf9NlZbyTLG5OeBoV4KcbEMA5Q/+bbdvh+GBA9Xv3NwcMDOTX/755xpJOzWHa1z0uZkR3cd0R9867tdKWhqvUYiM5A8Vx4/LDtfaq5dspsLRsXxoVxVHZmro980Gn8GsAWUqFFA2w6DrP46MDCA5mT+A2diUF7YaG/PmI5mZfH1GBtCjh3qTHinT9l0o5H1gK8/hpe9V8PqQQayoMd2UrK15psLenv92sjPK0Dz7NrqUXUR34UX4Fl6E18NYPMy9BcBD+rmMVq1kd2RkxL/Eis2Y2rblORRCNEDfmxnp232sMdDHjvtKefBAtj/EzUojM0VHy04sFxgITJnCMxABAfyH1UhGe1NFg8hgqokibhV0nWFQRmZmeXW8oja+Jib8BpeZyZepM+mRMm3fDQ35uvpYBa8v33ejuikxhpbC+3jZ4BJMrl5El7KLcHsWDbPSXLlNPdIuQiZT0bo1xKGhEPbowZ/kOnbkP3hCtKQ+NDPSl/tYY6CvHferVFQEvPYaz0g8eFD9ttevy2YqOnUCaHLLatXbDKaGUaaiHrOx4c9RRUU8uFVWVMQfSm1sNHvcqtq+GxsDM2fyexZVwStWXS1Eg78pFRTINkcSiyHs3BFT8vKq/VihWyuYlpXI7srBAWWbNkEomc2RkDpAzYyIhL523EdpKR+ZKTdXto+DiQlv4lQ5Q2FoyGenltRC9O4tOywsqVG9y2BqEWUq6jFbWz4JX3Ky4vbohoaAqyvfTl3/Z+++w5o63z6AfxMIeyMyZKk4wImIitZRpqNWq22t2oqj2oG27ta21l+rlapVa1urXaL2LWpt1S4VUBG3FRRHVRAEUREnewZy3j8eEwgJkEAmuT/XxaWcc3Ly5JCcO8+6H0XGvrdpw55v3TrqgpensV6IXr1a2U3p8WPpTEznzrHC799fe4yREQtmx45JNj0w88A1q0Bk2AeiskcgnnmnD3oO1c9sQaR10vdhRuKGDYD9q8wwWH2hiSGkOjNxv6JCOjPTqVMsYPfpw+7BdQ0ZwlJlDxhQOx9iwICGXwRRiM5WMLVA4UpFUVGRwie1kTeLjaicjw+bK1FRAQiF7OYlrkw4OrKhSQMGqGaMb/2x7wUFrNvf2Jhl33RzYz0WtrbUBS9PU70QkZF6fFMqKWEvJDm5tgJx86bscVVVst1ckZHAs88CgYEQ9emLgmJnWBQCg/Xsi5qhM7T4oK/3OHHDRkYGMHMmsGgR+5y1puGVmhpCqrWJ+yUlLKWruBJx9iy7t9aXmsomO9Yt3Nq1wA8/SE/CJi2mMxVMHaBwpcLOzg48BSfm1NTUNLtARHF1x/g+fMjSxRoZsXVpCgpYBUBVY3zrTlIcMIDdq6qq2L3Jxga4fl13J2KrSnNbvxTpGt21i40O0rWbksxrdq8A35gvHZR+/51N4muMjQ2b91BcLB3kpk+X/JcPoLOrSotPNITig+6r27AhTi1ub9+KhldCs0NINTZxv35DTFIS8NxzDR9fNzNTfXUnRBKV0eXMcJqmcKUiMTFR8v/s7Gy8//77mDp1KoKeTuY5ffo0tm3bhujoaNWXkjSo/hjf4mL25g0MVO0Y37oVmOvX2Q3bwYF9WK5f141JiurUktYvRbpGb99mv+vSTenCv0Ic2vAfBKnn0OFJMuxKz4ErvYzMdXvR8d06Qa1vX+kHmpuzixIYWPtD3Q6tmjriQ3R0NPbs2YPr16/D3NwcAwcOxKpVq9ClSxfJMRUVFViwYAF27tyJyspKRERE4Ntvv4Wzs7PqXlwrUL9hQzwVSW+HV8qh6XHtapu4Xz8z0+LF0o02gwaxFyeezNihQ+1QpiFDgI4dKTOThul6ZjhNUrhSMbTOhJ9PP/0U69atw8SJEyXbnn/+efTo0QPff/89IiMjVVtKHaUrqT81NcZXFycpauJv0NLWL0W6Rvl8lor3zh0t3pTS01lX+rlzKElKht+VC/AXVcgclrzpHIqGPFf7mrt2BaKiaisSfn6UytXAqCM+JCUlISoqCoGBgaiursYHH3yA8PBwXL16FZZPP0zz5s3DP//8g927d8PW1hazZ8/GuHHjcPLkSdW+QD1nCGO+tfEaWxwTOY7leRdXIORlZkpKkq5U2NkBy5ezYDB4MBt7LIeufD8xBPqQGU5TmhX5T58+jc2bN8ts79u3L15//fUWF0of6FrqT02N8dWlSYqq/BtUVwOHD7PF+1xcgJAQ9r1YFa1finSNmpsDEybUvh613pQ4jk2krt8V/uqrkhWoreQ8TAQe7tn74UGVHc7Ufc1GRsA336igYKQ1UFV8OHjwoNTvW7duRdu2bZGSkoIhQ4agsLAQP/30E2JjYxEcHAwAiImJga+vL86cOYMBdVbyNXSGMOZbW6+x2THxs8+ADRvY2OWGGBuzIFDfhx82empd+35iCHSx0VUbmlWp8PDwwA8//IDVq1dLbf/xxx/h4eGhkoLpstac+lOR1g1dmKQo/hs8fMgabszM2FyS5GTl/wY7dgCrV7MhSEIhGxrg4cF6nQMCWt76pWjX6PPPA15eargp5eXVTqAWT6Y2N5dtEQsMlFQqACDPqiNynAORZtUXaTaBuO3UB6aOViguBp6ooVWTWtZaB3XFh8Kn3wYdHBwAACkpKRAKhQgNDZUc07VrV3h6euL06dNyKxWVlZWorKyU/C6eYC4UCiEUCmWOby2srNhaQ5WVrGHDyIi9VvG/ZWVsv5UVuwfqo/qvsT51v8b27Wv/X1PDflBRAV5yMngnT0K0YAGET4csCYVC8DkORvUqFJy5ObgBA8ANGgRu8GBw/fqxLxhKFPjSJWDVKtZu5OZW+/3k8mUgOhp47z02vc1QiETAjRvs+qWlCdGpk/riSvfu7NrfvFk7R75DB/Z8+vq5ElP0/tisSsX69esxfvx4HDhwAP379wcA/Pvvv7hx4wZ+//335pxSb+hzPuKmUgnqS+uG+G+Qnc0+qLdusZ4GY2P2ZbS0VPG/wY4dwIIFLKGGvX3tuh+ZmWz722+3vPVLma7RFvcElZaylIJ1KxF37sg/9v59oO7Y8/HjATc3pNkEYsGOvjBu64DMTKDgMVB9HzDOYhW4jh3ZNVGmxa+pCoO+vPdI09QRH0QiEebOnYtBgwahe/fuAIC8vDyYmJjArt5CPM7OzsjLy5N7nujoaHzyyScy2+Pj42Ehb7GfVmTmTNltISEJUr+np7MffSXvNdanztdoXFYGh+vX4Xj1KhyuXoV9ejqMqqsBAMfNzVH4dPxqQkICHIyM0N/SEk98ffHYzw+Pu3VDQYcO4MQTXsrL2dCnZpg8ueF9d+40HBJau8zMBGRmau758vL0+/NUV5m8HjM5mlWpGDlyJNLT07Fp0yZcv34dADB69Gi8+eabrb6nQl/HpjaVSlDTvS8taZXOyGBD/x8+ZK1Blpbsp7qatc4YGQFnzjT9N6iuZj0UJSWsRUf897SwYA35ublAbCy7Hi2dQK1M16jCPUGlpexF1H3y69eB8PDGH+foyHolCgulKxXBwUBwMHjpwONY4Hay7PV99AjIz2c9OYpOGm+qwtCae/4MkTriQ1RUFK5cuYITJ060qGxLlizB/PnzJb8XFRXBw8MD4eHhrSLVbWPqtmB7egoxdmwC9u0LQ06OAI6OraMFu34rvbjxJjcX6nmNIhF4f/wB3smT4B8/Dly8CJ5IJPfQwRyHyrAwJCQkICwsDILhw4H58+HI50NVS81lZLDYbm8vP14VFbH795o1rX/SsCG83zVJ0bThzZ5N6eHhgZUrVzb34XpLH8emNpVK8KOPgJ9/1lzvS0tbpfPz2cidmhrphf0EAtaSnp/PhjLl5zd+nsOH2XH29vIriPb2rDG/SxfVTKBuUS9EZSW7S9ZdTO7aNWDFCmDJktrjevRg6V7FecutrdkYrsBAVtDAQPYmaCQ7SIcO7O9SVCRd2RIIWJlzc1lxOnRg21uySrim33tEM1QZH2bPno2///4bx44dg7u7u2S7i4sLqqqqUFBQINVbcf/+fbi4uMg9l6mpKUxNTWW2CwQCCFr56uwBAexWIW5cAoCHDwXo2VPQasZ8132NdeNLz54qGtdeUsLGT4lxHDB/Plu8SZ46mZmMwsIk7zF1vd9KSlgGSBcX1ghUn4kJ219SUpsBrDUSiVhcuXdPOtuZhYUAHTsKcO0a8H//x5btoLiiGEXfr82uVBw/fhzfffcdbt68id27d6Ndu3b4+eef0b59ezzzzDPNPa3O07d8xIqkEvz6a/ZFURO9L6polS4oYF9qG6rYmZqycxYUNH6evDw2fErOdwzJeQoKalvTVTGBWuFeiPR04MSJ2grEpUvyB2UmJ0v/bmLCKhrOzqwC0Yzlcm/eZO9hGxv5q6fb2LBrc/Mm+70lq4Rr8r1HNEcV8YHjOMyZMwd79+7F0aNH0b7uoHUAAQEBEAgEOHz4MMaPHw8ASEtLQ05OjiSVLZEmbthIS2O3mDVrWraiti7Og1JZMhF5mZnc3IDTp2uP4fFYpWHHDvZ7jx61qV3lZWZS88B6fft+oi76OqKkNWhWpeL333/Ha6+9hsmTJ+P8+fOSiW+FhYVYuXIl9u/fr9B59DEPub7lI1bkw3X9Omv19/SUfw5V9b6oaj6KeGJ2ZSUbplT/b1BZyfbXG2otw8WFVbIqK9lrrK+yku3v3x8YPVpNWR1EIlabqveFCatWAVu2NPw4Y2MWwHx9ZfctWtSCArG/s4kJe32ZmbKrp3fowHqB/v2XrXvXklXCNfXea+106cudquJDVFQUYmNj8ccff8Da2loyT8LW1hbm5uawtbXFjBkzMH/+fDg4OMDGxgZz5sxBUFAQZX5qBJ/P3h/p6S17n+jyPKhmJROprgYuXqytQJw4IZuZKTeX3eTqtmjNmQNMnMjWj3iaREBb9O37ibro44iS1qJZlYoVK1Zg8+bNmDJlCnbu3CnZPmjQIKxYsULh8+hjHnJ9y0esyIerpobNQ1C0daO5X2BU1Xpgb8/G9N++Lb8l3diY7a87NEqekBB2XGam/MpJfj57beL0si1u/eI4Vui6WZiSk9kJ8/Ola0GBgbWVCh6PrQVRdzG5nj1ZodVA3Nplbs5WT797l70HLCzYWholJez3hISWrxKu7HuPyNK1L3eqig+bNm0CAAwbNkxqe0xMDKY+zdu/fv168Pl8jB8/XqrRiahXq5sHdeoUMHw4GxvUEHNzICiIVTTq3tR0qFdM376fqAv12GhPsyoVaWlpGCJnCXhbW1sUNDXmpA59zUOuT/mIFflw2dsDrq5sOEtTrRst+QKjqtYDHx/We1BRwSoSdVvSnZzYvwMGNN0aY2zM0sYuWMCet272p/x8NnR20aLaddyUbv2qrAQOHaqtQJw7Bzx4IP/YlBRWexELDWVjEwIDgT592NwIDRG3diUl1V5fcXat27drK1hNDVtSZJVwZd57RJYufrlTVXzgxCsGN8LMzAwbN27Exo0blSkiaQG9zYBYVMQqD8ePA8OGAWFhtfs6d5atUNjZAc88UzucqU8f1oWr4/Tp+4m61O+xqYviino1q1Lh4uKCjIwMeItn/T514sQJdBDP3mwGVeQh1xRdWgSuMYp+uF59lQ3Fb6x14+LFln2BUVXrQd3WmIcP2dAZIyPW6l1YyCoWirbGiBf9Fa9TUVDAhjz5+LAKRZ1FgRtXUMCa8OsOy6uuZotPNJANBAD7Rh0YyF54XT4+wMKFCj65avH5rNL266+1qXbF+d9v3WKVLR8fICtLNauEK/Le07XPlS7Q1S936ooPRDfozXj1hw9ZBUI8nCk1tfZe/OiRdKWiTRvWqOPoWDsfont3vb3x6Mv3E3Wp32MjvhUVFbFU9BRX1KdZlYqZM2fi3XffxZYtW8Dj8ZCbm4vTp09j4cKFWLp0abMKoqo85Jpe3Ejugjc65rXXWGtFZiZLrQYAZWVC5OSw77SvvspG03z0EUuhmpbG7rmmpuzL5cSJgJ8f8MEH7EPZo0dtMDE1ZV8609KAX35hxzX0QfXyYvfp1FTZjEscxxrx/f3ZcU39qbp3ly5veTkry4ABrLzduys+J+7FF4GxY1nLvHjphqFDWYu83HOUloKXmsoWNUpJYf9mZED0yisQ/vQTgKcLxZiYwNjPD7wrV9hrdHAAFxDAfvr2Bde3r/REPh1ZHUckYp0rnp6sSEVF7F8TE6BTJ1bpys5mlYvGFpqysWGrhMfGsuBmaytd+VP0vVf/byn+HLfmxcoUkZHBfry95Wdy8fYGbtxg17SpFjlVXkt1xAeiO3R6vPrhw2zc5fHjbMJWQ44dk9126JD6yqUFurBIrTbV7bERZzvLzzesHhtt4HGK9DHXw3EcVq5ciejoaMmCGKampli4cCGWL1/erIK89dZbOHDgAE6cOCFJGxgbG4tp06ZJVRIAoF+/fnj22WexatUqmfP873//k7u4UWxsbKtf3Iioh+W9e3BKTYVdRgbsMjJgc/u23FzkJW5uOFxvPLfb07z6BT4+KHN2bjSVKyHaUlZWhkmTJqGwsLDF6zWoIz6oS1FREWxtbVXyuvWJUCjE/v37MXLkSKVTm6ans7nJDg4Nr4Xw5AnL7Ka2L7XizEydO0u3Yn36KbBsmfzHNJWZSQNact1J84hEbCXt9PT96Nx5JLp0EVAPRTMoeq9sVk8Fj8fDhx9+iEWLFiEjIwMlJSXw8/ODVd38zUpQZR5yQ17cqCni5eozMxPQsWMYOnVS/MN1/jxrTe7YkbU211ddzcbFr1jBhp425tKl2lbpykrWKt21K2uV1upiNDU1rK/Ux0dqOBJ/wwYYffddgw/jTEzA9eoF88BAhIWEIOHwYba4kUAAjBypiZLLJRKxv0lREQv+HToo1t2r6N86MhL488/GF5oCWCKrR49YGcQT6ouKWBd0cxYgEgqFtQtIGXBgVuVCV4oubKQIVccHolu0kmGoocxMFy9K30DEc3mMjdmiFeIKhA5kZiKMpjPVqSrbGVFMsyoV06dPx4YNG2BtbQ0/Pz/J9tLSUsyZMwdbGkuFWYc68pAb8uJGiujShQ2D6tJFuethb88+jIWFbNjL3btsyJG5eW1GID6fHdfUaQMCWNejVsd7chy7EOIJ1MnJ7Nt0aSkLWIMG1R5bd+6OkREbjyNeSC4wELzu3cF7OoFP8HQYibbfby2ZUF/3b93Ql1U+H+jXD+jWreGFpnr1YutCiRcgqvvlo21btHgBIm1fY23r0oV9bhr6cpedzd6miqxDoMrrqKr4QHSTRjIMVVSw+7K4EnHqlPzMTMeOSVcq+vdnw5gGDGh4fBbRGl3LVGdINFWZa1alYtu2bfj8889hXS8jTXl5ObZv365w0KA85PpD3Dp14ABrdS4tZW9SPp/du9u0YY3yirZOaWW85759bHEFcSWioUw0585JVyr69AG+/JJVInr3lr+ohQ5paUYgZVoi+fyGJwSmp+vJhE49pavpI1UVH4juUnuGoS5dgJychveLMzPVX+DG3Fw6ix7RGbqYqc5QaLIyp1SloqioCBzHgeM4FBcXw6zOEJGamhrs378fbdu2Vfh8lIdcMbqwsBWfzyYw37oFVFWxIUsCAStbfj67ObRtqyNdiw8fshnXTyf8SyxezGauNsTbm1Uc6teMLCyAd99VeTHVQRUZgZT9stpQBVGnJ3S2ErqUPlLV8YHothZlGHrwgPUIHz/Ogsf330vvDwyUrlS4ukrPh9DjzEyGSFcz1RkCTVfmlKpU2NnZgcfjgcfjobOcbxE8Hk/uJOmGUB7ypulKd2F1NUsxyuOxykRVVe0+gYBt371bel0HjSgsZMOWxMOYzp1jn5SePdl427r69q2tVLi41C4k17cv+3Fy0mDB1UNV6R5V8WW1tS9ApAuVfUB30keqOj4Q3adwj/OtW7VDmepnZjIxAb76Sjqt9tix7KYxeDD76diRklzoMb1JQ9zKaKMyp9TXv8TERHAch+DgYPz++++S9SQAwMTEBF5eXnDTQkaF1kqXugsPH2brEvB47M1XdzHnmhq2/eZNdlxERNPna/YXstu3gb17aysQaWnyj/vvv9ploMWiooCXX2bfjNu1a5VBSpW9Ay39sqqVCZ0aoiuVfTFdSB9J8YFIycoCli5llYjGhjJVVQGXL7MGHrFXX2U/pFWgXmvt0EZlTqlKxdChQwEAWVlZ8PT0BK8VfinTFbrWXZiby76jGxmxoU91//TGxiyLkzjzT1MU+kJWVQVcucLe9XWHTKSlNT4UydKSzYEIDGQzyetWKurOk2ilVN070JIvq7o65r+ldKmyr0soPhgocWYmKys2F0LM3JwtXlQfZWYyOK2911pXaaMy16yBKkeOHIGVlRVeeuklqe27d+9GWVkZIiMjVVI4Q6Zr3YXiZRn4fPnl4fNZj0Vji0cD8r+QlRXX4PGx6zh+PBnuPufglH2OBanKSmDTJuDNN2tPEBBQ+38TE1arqjuMyddXfh5UA6FrvQO6NOZfFXStsq+LKD60cuLMTOKhTOLMTFFRwDff1B7n4sJuNHfvsmxM4koEZWYyOMrGJV0ZWtoc1dVsxEZeHvsIhIRoeEh4HdqozDXrpUZHR+M7OXn727Zti1mzZlHQUAFd6y7082Pf4Ssra+dQiHFc7eTtOhkkZdT9Qvay5T/ocjUR3g/PwfPReZgJS9hB5+s9KDlZ+nd7e+Dnn9mdqUcPVigioYu9A7oy5l8VdK2yr4soPrQyxcWs4iCuRJw9Kz2pTkzeKtXx8WyoKd2nDZoycUnXhpYqY8cOYPVqNkpbKGTflTw8WI6YiRM1Xx5tNDI2q1KRk5Mjs6YEAHh5eSGnsbGTRGG61l3o6MgWT7txgz23qSm7AYhErKJhbMz2OzrWe+Ddu+xBw4ZJfSF75sxP8M/e2/ATdurEeh+Cg2X30VjbRuli74AujPlXBV2r7Osiig+tzKpVwGefNbxfnJlp2DD2TaXuNxc57wNimBSJS/o8tHTHDmDBArZml709+45UWcmWw1qwgB2j6YqFNhoZm1WpaNu2LS5dugRvb2+p7RcvXoSjzLdK0hy6NozFx4d9v6+slF2nwtqavTlHD3wMn4xzwK6n60CcO8dWPjMxAYqLUVhoIvlClu0UKKlUPLbyxK02fXHTMRAnqwLx2pcB6BNsp5kX1kq1pt4BXaJrlX1dRPFBz9TPzLRnDws6YkOGSFcqOnasHco0ZAhrTaL5M0QBjcUlfR5aWl3NeihKSgA3t9qyW1iwqUW5ucCaNcBLL2l+KJSmGxmb9fImTpyId955B9bW1hgyZAgAICkpCe+++y5eeeUVlRbQUOnaMJa65Xn4kH0wrCofY9SDLehcmIxud87B5bssQHbUg2TSta1tH8kXspQOL+GOY0/catMXxRbOANhKzU+eAFbumnlNrV1r6R3QJbpW2ddFFB90GMcB16+Dn5iIPr/+CuM5c9hYjbqOH5euVAQFsfkSQ4awBecogxdpgYbikj4PLT18mH2M7O3ll93eniVAUzQ7pqppspGxWZWK5cuXIzs7GyEhITB+Wu0SiUSYMmUKVq5cqdICGjKdGcZSUQGkpsLf1hYff+wrKY+gUoi3bi5u+HE2NqywgYGAnR18vGu/kFn7+uChbe03L/pCRvSBrlX2dRHFBx31+uvAH38Ajx7BCICHvGOMjdmQ1bqsraUnYBOiBvo8tDQvj82hMDWVv9/UFCgoYMdpi6YaGZtVqTAxMcGuXbuwfPlyXLx4Eebm5ujRowe8vLxUXT6Dp/FhLEIhW+NBvA5EcjLLIV5dDURFwf+bb+qUxwXC590hyLvD+vjEqVzFFYl6BeWDvpAR/aczlX0dRfFBi8SZmW7dkp179vAhG1tSB2duDl5QUO0ic5SZiWiJPg8tdXFhk7IrK6Wz2IuJE9y4uGi+bJrWotFdnTt3lrtyKlEttdcwjxwB9u1jwSg1lQUmec6dky3PzzFsHQk/P4UGC9IXMtIa0JyVplF80ICiIpaZ6fhx6cxM5uZsoc+6WZcGD2bzJp55BjUDB+KkkRGCoqIgoEqEQdOV9K36PLQ0JIRlecrMZB+9+mXPz2flDgnRXhk1ReFKxfz587F8+XJYWlpi/vz5jR67bt26FheMqBjHAbdugXfmjGx6v6Qk4Ouv5T+Oz2cVhsBAYOBA2f2hoUoXRZVfyHTlhmjIDPVvoEhl31CuDcUHDSktBeLiaidWp6bKXxyovBw4f571PIjNng3Mnw/w+RAJhcjfv59SvRo4XUrfqs9DS42NWdrYBQtYQ2nd7E/5+WxdyEWLtLdeBaC5WKTwS7xw4QKEQqHk/w2hVVR1xL17tRmYxMOYHj2CMQDr+hWIvn1r/+/jI72YnL8/+0SomCp6X3Tphmio6G/QMEO6NhQf1KSqSvqL/5MnwPjxDR9fNzNT/SZdMzP1lJHoJV1M36rPIxnE6WLF61QUFLAhTz4+rEKhjXUqxDQZixSuVCQmJsr9P9ERVVXAF1/UViLqT7arw+7GDekNgwezRYr69mVVbD2gizdEQyP+Gzx8CNjZsRtVTQ2rvxr638DQ3p8UH1TgaWYmSWrXY8eAF18E6vbseHgA3t5AdjYbY9GjR21qV8rMRBSky+lb9Xlo6cSJLG2srqyoDWg+FmnxpZJmKSlh3docBwwdWrtdIGDB5/Fj+Y9r0wYIDERNnz4odHKS3mdnB4SFqa3IqqbLN0RDIf4bZGezuf23brG5/MbGLAiUlhru34Den0Qh1dVs+JJ4PsTx4zITqeWuUh0dzXqPBw3Sm0Ygolt0PX2rPqdDNzbWTtpYebQRixSuVIwbN07hk+7Zs6dZhSH1VFQAFy9KD2O6dq22QnH0aO2xPB4bsnTwIHvHBARID2Py8gJ4PIiEQhTt36+1l6QKun5DNAQZGWxO6MOHrHfC0pL9VFezeq2REXDmjGH+DQzx/UnxQUk//gjMm8caiRpibg44OLAPmJFR7XZa64O0kD6nbyWK00YsUrhSYVsnjxfHcdi7dy9sbW3R9+l4/JSUFBQUFCgVXIgc//4LbNnCKhCXL7NmYHlSUmSDzapVwJdfAp06teomULohal9+PlvMp6ZGurFUIGAdX/n5bFxpfr7Wiqg1hvj+pPggR93MTLNmsYYdMVdX2QqFnR0bwiQeztSnD02kJmqhz+lbieK0EYsUrlTExMRI/v/ee+/h5ZdfxubNm2H09EttTU0N3n77bdjIe4cSaSIRcOMG64EIDQWcnWv33boFfCdvWWqwfrUePWp7IKqrpSsVPXuqt9w6gm6I2ldQwDJbNHSzMjVlf5+CAk2WSjcY4vuT4gNYt514GFP9zEw+PsC0abXHDhoEtGvH/hVPrO7evVU3BhHdoc/pW4nitBGLmjWnYsuWLThx4oQkYACAkZER5s+fj4EDB2LNmjUqK6De4zjWpCvOwHTuHPski6uGO3cCEybUHi/OxMTjsU+7eCG5wEA28I0yeNANUQeIJ2ZXVsrPy11Zyfbb2WmrhNpj6O9Pg4oPv//OklwcO8YmWTfk2DHpSoWdHevKo2xYRAv0OX0rUZw2YlGzKhXV1dW4fv06unTpIrX9+vXrEMnLmW2I1qxhcx7OnWMtWA1JTpauVHh7s3Uj/P0Ba2t1l1Iv0Q1R++ztWSIaceo8S0vWkVZdzVpFjI3ZfkOcR2ro70+Dig8//sjmsdVXNzOTeDiTvGMI0RJ9Tt9KFKONWNSsSsW0adMwY8YMZGZmol+/fgCAs2fP4vPPP8e0uq0xrV1BgWT9B5nJc/v3S0+krqtdu9oeiPBw6X08nvwARKTQDVG7fHyA/v3ZeM3qavZRKCtjlQknJ/bvgAGttzW+KYb8/jSo+DBkCKtUGBuzP664AkGZmYge0Of0rUQxmo5FzapUfPHFF3BxccHatWtx7949AICrqysWLVqEBQsWqLSAOqO0lCX8rbuYnHi9BwcH1ttQt+UpMJBVKhwdazMwiYcxubpq5SW0NnRD1J66LSAPHwKenmx6T00N+1s4ObXu1nhFGOr706Diw8SJrHbdv3/DE4wI0WH6nL6VKEaTsahZlQo+n4/Fixdj8eLFKCoqAoDWOQEvPR34/HNWibh6tXbSXX1PngBZWUCHDrXb5swB3nqLDWeibm61oRui9tRvASkpYS0ggYGtvzVeUYb4/jSY+ACw+7u3t7ZLQQghjdJULGr24nfV1dU4evQoMjMzMWnSJABAbm4ubGxsYGVlpbICalVNDVAnq4kUU1P2rUncA+HgIL3fw0P95SNEywy1NZ40ziDiAyGEECnNqlTcunULw4cPR05ODiorKxEWFgZra2usWrUKlZWV2Lx5s6rLqR1durDJ0mVltalcxZWI7t1ZUn5CDJwhtsaThhlMfCCEECKlWZWKd999F3379sXFixfh6Ogo2f7CCy9g5syZKiuc1vH5wOnTbFiTubm2S0MIITrPYOIDIYQQKc2qVBw/fhynTp2CSb3VPr29vXH37l2VFExndOum7RIQDRCJaAgPIapgUPGBtHoUGwhRXLM+GiKRCDU1NTLb79y5A2s1rK2wceNGeHt7w8zMDP3798e///6r8ucghuvCBWD+fDa3fuFC9u/8+Ww7IUQ5mo4PAMUIoh4UGwhRTrMqFeHh4fjyyy8lv/N4PJSUlGDZsmUYOXKkqsoGANi1axfmz5+PZcuW4fz58+jVqxciIiLw4MEDlT4PMUwXLgCffspWnHRwADp1Yv+mpLDtFDwIUY4m4wNAMYKoB8UGQpTXrErFF198gZMnT8LPzw8VFRWYNGmSpGt71apVKi3gunXrMHPmTEybNg1+fn7YvHkzLCwssGXLFpU+DzE8IhFLh/roEVvC3saGrbVgY8N+f/QI2L694UzChBBZmowPAMUIonoUGwhpnmbNqfDw8MDFixexa9cuXLx4ESUlJZgxYwYmT54McxVOaK6qqkJKSgqWLFki2cbn8xEaGorTp0/LfUxlZSUqKyslv4vzpAuFQgiFQpWVTV+JrwFdCzZONiODpZmXl8jL25utb5iWpvjK0HR91Y+useqp8lpqKj4AyscIig8MfYYap47YANB11xa67i2n6LXjcRzHKXvirl274u+//4avr2+zCqeo3NxctGvXDqdOnUJQUJBk++LFi5GUlISzZ8/KPOZ///sfPvnkE5ntsbGxsLCwUGt5CSFEH5WVlWHSpEkoLCxs0UJ1mowPgPIxguIDIYQoT9EYoXRPhUAgQEVFRYsKp05LlizB/PnzJb8XFRXBw8MD4eHhrXdVVyUIhUIkJCQgLCwMAgNfZyMjA1i0CLC3Z93a9RUVAfn5wJo1yvVU0PVVL7rGqidusW8pig/6gT5DjVNHbADoumsLXfeWUzRGNGv4U1RUFFatWoUff/wRxsbNXpS7SW3atIGRkRHu378vtf3+/ftwcXGR+xhTU1OYmprKbBcIBPRmqoOuB1vb0MeHTbzz9QV4vNp9HAdkZ7O1Drt0UT6FIF1f9aNrrDqqvI6aig+A8jGC4oM0Q33dTVFnbADoumsLXffmU/S6NeuOf+7cORw+fBjx8fHo0aMHLC0tpfbv2bOnOaeVYWJigoCAABw+fBhjx44FwNIVHj58GLNnz1boHOLRXapqidN3QqEQZWVlKCoqog8XgPHjWavU5ctAu3ZsjcPycuDuXcDRERg3DigpUfx8dH3Vj66x6onvj0qOhpVLU/EBaHmMMNT4QJ+hpqk6NgB03bWFrnvLKRojmlWpsLOzw/jx45vzUKXNnz8fkZGR6Nu3L/r164cvv/wSpaWlmDZtmkKPLy4uBsAmDxKirH/+0XYJCNGc4uJi2NratugcmowPQMtiBMUH0lwUG4ghaipGKD1RWxu++eYbrFmzBnl5eejduze++uor9O/fX6HHikQi5ObmwtraGry6fZgGSjyG+Pbt2wY1hlhT6PqqH11j1eM4DsXFxXBzcwNfD5cLbm6MMNT4QJ8h7aDrrh103VtO0RihVKVCJBJhzZo1+PPPP1FVVYWQkBAsW7ZM5WkCifoUFRXB1ta2xVleiHx0fdWPrrFuovigP+gzpB103bWDrrvmKNUk9dlnn+GDDz6AlZUV2rVrhw0bNiAqKkpdZSOEEKInKD4QQohhU6pSsX37dnz77beIi4vDvn378Ndff+GXX36BiJaVJIQQg0bxgRBCDJtSlYqcnByMHDlS8ntoaCh4PB5yc3NVXjCiHqampli2bJnctIqk5ej6qh9dY91E8UF/0GdIO+i6awddd81Rak6FkZER8vLy4OTkJNlmbW2NS5cuoX379mopICGEEN1H8YEQQgybUillOY7D1KlTpWp7FRUVePPNN6VykasyDzkhhBDdR/GBEEIMm1KVisjISJltr776qsoKQwghRD9RfCCEEMOmF+tUEEIIIYQQQnSX/q1yRBRy7NgxjB49Gm5ubuDxeNi3b5/Ufo7j8PHHH8PV1RXm5uYIDQ3FjRs3tFNYPRQdHY3AwEBYW1ujbdu2GDt2LNLS0qSOqaioQFRUFBwdHWFlZYXx48fj/v37Wiqxftm0aRN69uwJGxsb2NjYICgoCAcOHJDsp2tLSNMoDmgHxQftoLihfVSpaKVKS0vRq1cvbNy4Ue7+1atX46uvvsLmzZtx9uxZWFpaIiIiAhUVFRouqX5KSkpCVFQUzpw5g4SEBAiFQoSHh6O0tFRyzLx58/DXX39h9+7dSEpKQm5uLsaNG6fFUusPd3d3fP7550hJSUFycjKCg4MxZswY/PfffwDo2hKiCIoD2kHxQTsobugAjrR6ALi9e/dKfheJRJyLiwu3Zs0aybaCggLO1NSU27FjhxZKqP8ePHjAAeCSkpI4jmPXUyAQcLt375Ycc+3aNQ4Ad/r0aW0VU6/Z29tzP/74I11bQpqB4oD2UHzQHoobmkU9FQYoKysLeXl5CA0NlWyztbVF//79cfr0aS2WTH8VFhYCABwcHAAAKSkpEAqFUte4a9eu8PT0pGuspJqaGuzcuROlpaUICgqia0uIClAc0ByKD5pHcUM7lMr+RFqHvLw8AICzs7PUdmdnZ8k+ojiRSIS5c+di0KBB6N69OwB2jU1MTGBnZyd1LF1jxV2+fBlBQUGoqKiAlZUV9u7dCz8/P6SmptK1JaSFKA5oBsUHzaK4oV1UqSCkhaKionDlyhWcOHFC20VpVbp06YLU1FQUFhbit99+Q2RkJJKSkrRdLEIIURjFB82iuKFdNPzJALm4uACATNaD+/fvS/YRxcyePRt///03EhMT4e7uLtnu4uKCqqoqFBQUSB1P11hxJiYm8PHxQUBAAKKjo9GrVy9s2LCBri0hKkBxQP0oPmgexQ3tokqFAWrfvj1cXFxw+PBhybaioiKcPXsWQUFBWiyZ/uA4DrNnz8bevXtx5MgRtG/fXmp/QEAABAKB1DVOS0tDTk4OXeNmEolEqKyspGtLiApQHFAfig+6g+KGZtHwp1aqpKQEGRkZkt+zsrKQmpoKBwcHeHp6Yu7cuVixYgU6deqE9u3bY+nSpXBzc8PYsWO1V2g9EhUVhdjYWPzxxx+wtraWjMm0tbWFubk5bG1tMWPGDMyfPx8ODg6wsbHBnDlzEBQUhAEDBmi59LpvyZIlGDFiBDw9PVFcXIzY2FgcPXoUcXFxdG0JURDFAe2g+KAdFDd0gLbTTxH1SExM5ADI/ERGRnIcx9IJLl26lHN2duZMTU25kJAQLi0tTbuF1iPyri0ALiYmRnJMeXk59/bbb3P29vachYUF98ILL3D37t3TXqH1yPTp0zkvLy/OxMSEc3Jy4kJCQrj4+HjJfrq2hDSN4oB2UHzQDoob2sfjOI7TZCWGEEIIIYQQ0rrQnApCCCGEEEJIi1ClghBCCCGEENIiVKkghBBCCCGEtAhVKgghhBBCCCEtQpUKQgghhBBCSItQpYIQQgghhBDSIlSpIIQQQgghhLQIVSoIIYQQQgghLUKVCkIUNGzYMMydO1fbxZCLx+Nh3759GnmuIUOGIDY2ViPPJc/777+POXPmaO35CSFEHooRDMUIw0WVCqKwqVOngsfj4c0335TZFxUVBR6Ph6lTp2q+YDpg2LBh4PF4Df4MGzZMrc9/7949jBgxQq3PAQB//vkn7t+/j1deeUWyzdvbGzweDzt37pQ5vlu3buDxeNi6davM8TweD5aWlujTpw92796tcBkWLlyIbdu24ebNmy16LYQQ1aIY0TCKERQjDAFVKohSPDw8sHPnTpSXl0u2VVRUIDY2Fp6enlosmWKqqqrUct49e/bg3r17uHfvHv79918AwKFDhyTb9uzZo5bnFXNxcYGpqalanwMAvvrqK0ybNg18vvStw8PDAzExMVLbzpw5g7y8PFhaWsqc59NPP8W9e/dw4cIFBAYGYsKECTh16pRCZWjTpg0iIiKwadOm5r8QQohaUIyQj2IExQhDQJUKopQ+ffrAw8ND6ga4Z88eeHp6wt/fX+pYkUiE6OhotG/fHubm5ujVqxd+++03yf6amhrMmDFDsr9Lly7YsGGD1DmOHj2Kfv36wdLSEnZ2dhg0aBBu3boFgLWKjR07Vur4uXPnSrX4DBs2DLNnz8bcuXMlNxoAuHLlCkaMGAErKys4Ozvjtddew6NHjySPKy0txZQpU2BlZQVXV1esXbu20evi4OAAFxcXuLi4wMnJCQDg6Ogo2Xb16lUMHjwY5ubm8PDwwDvvvIPS0lLJ4729vbFy5UpMnz4d1tbW8PT0xPfffy/ZX1VVhdmzZ8PV1RVmZmbw8vJCdHS0ZH/9ru3Lly8jODgY5ubmcHR0xKxZs1BSUiLZL752X3zxBVxdXeHo6IioqCgIhcIGX+PDhw9x5MgRjB49Wmbf5MmTkZSUhNu3b0u2bdmyBZMnT4axsbHM8dbW1nBxcUHnzp2xceNGmJub46+//lLoPQEAo0ePltvqRQjRLooR8lGMoBhhCKhSQZQ2ffp0qRaHLVu2YNq0aTLHRUdHY/v27di8eTP+++8/zJs3D6+++iqSkpIAsIDi7u6O3bt34+rVq/j444/xwQcf4NdffwUAVFdXY+zYsRg6dCguXbqE06dPY9asWeDxeEqVd9u2bTAxMcHJkyexefNmFBQUIDg4GP7+/khOTsbBgwdx//59vPzyy5LHLFq0CElJSfjjjz8QHx+Po0eP4vz58825XMjMzMTw4cMxfvx4XLp0Cbt27cKJEycwe/ZsqePWrl2Lvn374sKFC3j77bfx1ltvIS0tDQBr/fnzzz/x66+/Ii0tDb/88gu8vb3lPl9paSkiIiJgb2+Pc+fOYffu3Th06JDM8yUmJiIzMxOJiYnYtm0btm7dKtUFXd+JEydgYWEBX19fmX3Ozs6IiIjAtm3bAABlZWXYtWsXpk+f3uT1MTY2hkAgQFVVVZPvCbF+/frhzp07yM7ObvL8hBDNohihHIoRjaMYoUc4QhQUGRnJjRkzhnvw4AFnamrKZWdnc9nZ2ZyZmRn38OFDbsyYMVxkZCTHcRxXUVHBWVhYcKdOnZI6x4wZM7iJEyc2+BxRUVHc+PHjOY7juMePH3MAuKNHjzZanrreffddbujQoZLfhw4dyvn7+0sds3z5ci48PFxq2+3btzkAXFpaGldcXMyZmJhwv/76q2T/48ePOXNzc+7dd99tsOxiWVlZHADuwoULHMex1zxr1iypY44fP87x+XyuvLyc4ziO8/Ly4l599VXJfpFIxLVt25bbtGkTx3EcN2fOHC44OJgTiURynxMAt3fvXo7jOO7777/n7O3tuZKSEsn+f/75h+Pz+VxeXh7HcezaeXl5cdXV1ZJjXnrpJW7ChAkNvq7169dzHTp0kNnu5eXFrV+/ntu3bx/XsWNHTiQScdu2bZNcd1tbWy4mJkbmeI7juMrKSm7lypUcAO7vv/+W+7x13xNihYWFjb43CCGaRzGCYgTFCMMm2+dESBOcnJwwatQobN26FRzHYdSoUWjTpo3UMRkZGSgrK0NYWJjU9qqqKqku8I0bN2LLli3IyclBeXk5qqqq0Lt3bwCsu3jq1KmIiIhAWFgYQkND8fLLL8PV1VWp8gYEBEj9fvHiRSQmJsLKykrm2MzMTEk5+vfvL9nu4OCALl26KPW8dZ/v0qVL+OWXXyTbOI6DSCRCVlaWpFWnZ8+ekv08Hg8uLi548OABANYVHRYWhi5dumD48OF47rnnEB4eLvf5rl27hl69ekmNUx00aBBEIhHS0tLg7OwMgE2QMzIykhzj6uqKy5cvN/g6ysvLYWZm1uD+UaNG4Y033sCxY8ewZcuWRlug3nvvPXz00UeoqKiAlZUVPv/8c4waNQpA4+8JMXNzcwCstYsQolsoRiiHYoQsihH6iSoVpFmmT58u6SrduHGjzH7x2Mx//vkH7dq1k9onniy2c+dOLFy4EGvXrkVQUBCsra2xZs0anD17VnJsTEwM3nnnHRw8eBC7du3CRx99hISEBAwYMAB8Ph8cx0mdW954z/qTwEpKSjB69GisWrVK5lhXV1dkZGQocgkUVlJSgjfeeAPvvPOOzL66ExcFAoHUPh6PB5FIBICNU87KysKBAwdw6NAhvPzyywgNDZUaf6ysxp5PnjZt2iA/P7/B/cbGxnjttdewbNkynD17Fnv37m3w2EWLFmHq1KmS8cri4QqKvCcA4MmTJwAgGZtMCNEtFCMURzFCFsUI/USVCtIsw4cPR1VVFXg8nmRiW11+fn4wNTVFTk4Ohg4dKvccJ0+exMCBA/H2229LtmVmZsoc5+/vD39/fyxZsgRBQUGIjY3FgAED4OTkhCtXrkgdm5qaKnMjrK9Pnz74/fff4e3tLXeCWMeOHSEQCHD27FnJDT0/Px/p6ekNvpamnu/q1avw8fFR+rF12djYYMKECZgwYQJefPFFDB8+HE+ePIGDg4PUcb6+vti6dStKS0slwfLkyZPg8/nNbkkD2N8hLy8P+fn5sLe3l3vM9OnT8cUXX2DChAkNHgOw4CPveij6nrhy5QoEAgG6devWjFdCCFE3ihGKoxghi2KEfqKJ2qRZjIyMcO3aNVy9elWqe1TM2toaCxcuxLx587Bt2zZkZmbi/Pnz+PrrryUTtTp16oTk5GTExcUhPT0dS5cuxblz5yTnyMrKwpIlS3D69GncunUL8fHxuHHjhqQrODg4GMnJydi+fTtu3LiBZcuWyQQQeaKiovDkyRNMnDgR586dQ2ZmJuLi4jBt2jTU1NTAysoKM2bMwKJFi3DkyBFcuXIFU6dOlUmRp6j33nsPp06dwuzZs5GamoobN27gjz/+kJkU15h169Zhx44duH79OtLT07F79264uLjAzs5O5tjJkyfDzMwMkZGRuHLlChITEzFnzhy89tprkm7t5vD390ebNm1w8uTJBo/x9fXFo0ePZFIHKqqp94TY8ePHJZlSCCG6h2KE4ihGKI5ihG6jSgVpNhsbG9jY2DS4f/ny5Vi6dCmio6Ph6+uL4cOH459//kH79u0BAG+88QbGjRuHCRMmoH///nj8+LFU64OFhQWuX7+O8ePHo3Pnzpg1axaioqLwxhtvAAAiIiKwdOlSLF68GIGBgSguLsaUKVOaLLebmxtOnjyJmpoahIeHo0ePHpg7dy7s7OwkQWHNmjUYPHgwRo8ejdDQUDzzzDMy424V1bNnTyQlJSE9PR2DBw+Gv78/Pv74Y7i5uSl8Dmtra6xevRp9+/ZFYGAgsrOzsX//frlBzMLCAnFxcXjy5AkCAwPx4osvIiQkBN98802zyi9mZGSEadOmSY37lcfR0bHZN/Km3hNiO3fuxMyZM5v1HIQQzaAYoRiKEYqjGKHbeFz9AYeEENKAvLw8dOvWDefPn4eXl5dWynDgwAEsWLAAly5dkjs0gRBCiHZQjDBs1FNBCFGYi4sLfvrpJ+Tk5GitDKWlpYiJiaFgQQghOoZihGGjngpCCCGEEEJIi1BPBSGEEEIIIaRFqFJBCCGEEEIIaRGqVBBCCCGEEEJahCoVhBBCCCGEkBahSgUhhBBCCCGkRahSQQghhBBCCGkRqlQQQgghhBBCWoQqFYQQQgghhJAWoUoFIYQQQgghpEWoUkEIIYQQQghpEapUEEIIIYQQQlqEKhWEEEIIIYSQFqFKBSGEEEIIIaRFqFJBCCGEEEIIaRGqVBBCCCGEEEJahCoVhLQCt2/fhpmZGU6ePKnR5/X29sbUqVOb9dgBAwZg8eLFqi0QIYSQRmkrXjSFYoL+o0oF0ZjLly/jxRdfhJeXF8zMzNCuXTuEhYXh66+/ljrO29sbPB4PoaGhcs/zww8/gMfjgcfjITk5GdnZ2ZLfm/rJzs5usHw8Hg+zZ8+W2b5y5UrweDxMnz4dIpFI5vmMjIzg6emJF154AampqQqdsy6RSITt27ejf//+cHBwgLW1NTp37owpU6bgzJkzjT5W7NNPP0X//v0xaNAgHD16VOHroU3vvfceNm7ciLy8PK2WgxCieyheyKfv8eLq1av43//+J/faUkzQf8baLgAxDKdOncKzzz4LT09PzJw5Ey4uLrh9+zbOnDmDDRs2YM6cOVLHm5mZITExEXl5eXBxcZHa98svv8DMzAwVFRUAACcnJ/z8889Sx6xduxZ37tzB+vXrpbY7OTkpVe7PP/8cH374ISIjI/Hjjz+Cz6+th0+cOBEjR45ETU0Nrl27hk2bNuHAgQM4c+YMevfurfBzvPPOO9i4cSPGjBmDyZMnw9jYGGlpaThw4AA6dOiAAQMGNPr4hw8fYtu2bdi2bRsAwNfXV+Z6LFmyBFZWVvjwww8Vf/EKSEtLk7omyhgzZgxsbGzw7bff4tNPP1VpuQgh+oviRcP0OV4ArFLxySefYNiwYfD29pbaRzGhFeAI0YCRI0dyTk5OXH5+vsy++/fvS/3u5eXFhYSEcDY2NtyXX34pte/27dscn8/nxo8fzwHgzp07J/f5Ro0axXl5eSlVRgBcVFSU5PfVq1dzALgpU6ZwNTU1ku1ZWVkcAG7NmjVSj//zzz85ANysWbMaPGd9eXl5HI/H42bOnCmzTyQSyVwbedatW8eZm5tzxcXFDR7TrVs3bujQoY2ep6amhisvL2/y+VRp9uzZnJeXFycSiTT6vIQQ3UXxQj5dihfNtXv3bg4Al5iYKHc/xQT9RsOfiEZkZmaiW7dusLOzk9nXtm1bmW1mZmYYN24cYmNjpbbv2LED9vb2iIiIUFdRAQDr1q3D4sWL8eqrryImJkah1vjg4GAAQFZWlsLPk5WVBY7jMGjQIJl9PB5P7rWpb9++fejfvz+srKwUfl7x+WfPno1ffvkF3bp1g6mpKQ4ePAgA+OKLLzBw4EA4OjrC3NwcAQEB+O2332TOUX9OxdatW8Hj8XDy5EnMnz8fTk5OsLS0xAsvvICHDx/KPD4sLAy3bt2SGQZACDFcFC/k02a8KCgowNy5c+Hh4QFTU1P4+Phg1apVEIlEUsft3LkTAQEBsLa2ho2NDXr06IENGzYAYPHhpZdeAgA8++yzkmFVR48elTyeYoJ+o0oF0QgvLy+kpKTgypUrCj9m0qRJ+Pfff5GZmSnZFhsbixdffBECgUAdxQQAbNiwAQsWLMCkSZOwdetWhYf3iMvp6Oio8HN5eXkBAHbv3o2ysjKlyyoUCnHu3Dn06dNH6ccCwJEjRzBv3jxMmDABGzZskHRHb9iwAf7+/vj000+xcuVKGBsb46WXXsI///yj0HnnzJmDixcvYtmyZXjrrbfw119/yR0rHBAQAAA6N2GQEKI9FC/k01a8KCsrw9ChQ/F///d/mDJlCr766isMGjQIS5Yswfz58yXHJSQkYOLEibC3t8eqVavw+eefY9iwYZL7+5AhQ/DOO+8AAD744AP8/PPP+Pnnn+Hr6ys5B8UE/UZzKohGLFy4ECNGjEDv3r3Rr18/DB48GCEhIXj22WcbvOEHBwfDxcUFO3bswEcffYRr164hNTUVGzZswM2bN9VSzr///hu3bt3CxIkTsX37dhgZGTV4bFlZGR49eoSamhpcv34d8+bNAwBJS4wiXF1dMWXKFGzfvh3u7u4YNmwYBg0ahFGjRqFr165NPj4nJwfl5eVo3769ws9ZV1paGi5fvgw/Pz+p7enp6TA3N5f8Pnv2bPTp0wfr1q3DqFGjmjyvo6Mj4uPjJZP7RCIRvvrqKxQWFsLW1lZyXLt27WBiYoKrV682q/yEkNaH4oV82ooX69atQ2ZmJi5cuIBOnToBAN544w24ublhzZo1WLBgATw8PPDPP//AxsYGcXFxcq9Fhw4dMHjwYHz11VcICwvDsGHDZI6hmKDfqKeCaERYWBhOnz6N559/HhcvXsTq1asRERGBdu3a4c8//5T7GCMjI7z88svYsWMHADbhzsPDA4MHD1ZbOe/fvw8AaN++faMBAgCWLVsGJycnuLi4YNiwYcjMzMSqVaswbtw4pZ4zJiYG33zzDdq3b4+9e/di4cKF8PX1RUhICO7evdvoYx8/fgwAsLe3V+o5xYYOHSpToQAgVaHIz89HYWEhBg8ejPPnzyt03lmzZkllCxk8eDBqampw69YtmWPt7e3x6NGjZpSeENIaUbxomDbixe7duzF48GDJvVr8ExoaipqaGhw7dgwAYGdnh9LSUiQkJCh1/vooJugvqlQQjQkMDMSePXuQn5+Pf//9F0uWLEFxcTFefPHFBlslJk2ahKtXr+LixYuIjY3FK6+8otZUqJGRkRg9ejRWrlwpkwmkvlmzZiEhIQGHDx9GSkoKHjx40Kwc23w+H1FRUUhJScGjR4/wxx9/YMSIEThy5AheeeUVhc7BcZzSzwugwRarv//+GwMGDICZmRkcHBzg5OSETZs2obCwUKHzenp6Sv0uDmL5+fkyx3Icp/X0toQQ3ULxQj5txIsbN27g4MGDcHJykvoRp/F98OABAODtt99G586dMWLECLi7u2P69OmSeXrKoJigv2j4E9E4ExMTBAYGIjAwEJ07d8a0adOwe/duLFu2TObY/v37o2PHjpg7dy6ysrIwadIktZbN2NgYv/76K4YPH44FCxbAzs4O06ZNk3tsp06dGsyN3lyOjo54/vnn8fzzz2PYsGFISkrCrVu3JGNp5R0PyP+yroi6PRJix48fx/PPP48hQ4bg22+/haurKwQCAWJiYmQmQjakoVY7ecGsoKAAbdq0Ua7ghBCDQPGiYZqKFyKRCGFhYQ1Wgjp37gyATaJPTU1FXFwcDhw4gAMHDiAmJgZTpkyRpLBVBMUE/UWVCqJVffv2BQDcu3evwWMmTpyIFStWwNfXV6l83s1lZmaGP//8E88++yxmzpwJOzs7vPDCC2p/3vr69u2LpKQk3Lt3r8Eg4enpCXNzc6UyiDTl999/h5mZGeLi4mBqairZHhMTo7LnELt79y6qqqqkJuoRQog8FC8aps540bFjR5SUlChUKTIxMcHo0aMxevRoiEQivP322/juu++wdOlS+Pj4NNkDQTFBv9HwJ6IRiYmJclup9+/fDwDo0qVLg499/fXXsWzZMqxdu1Zt5avPxsYGBw8ehI+PDyZOnIjDhw+r5Xny8vLkduVXVVXh8OHD4PP58PHxafDxAoEAffv2RXJyssrKZGRkBB6Ph5qaGsm27Oxs7Nu3T2XPIZaSkgIAGDhwoMrPTQjRTxQv5NNWvHj55Zdx+vRpxMXFyewrKChAdXU1gNo5G2J8Ph89e/YEAFRWVgIALC0tJY+Th2KCfqOeCqIRc+bMQVlZGV544QV07doVVVVVOHXqFHbt2gVvb+8Gu4wBlkbvf//7n+YK+5STkxMSEhIwaNAgjB07FocPH0a/fv2UPk9ycjJWrFghs33YsGEwMzNDv379EBwcjJCQELi4uODBgwfYsWMHLl68iLlz5zbZDTxmzBh8+OGHKCoqgo2NjdLlq2/UqFFYt24dhg8fjkmTJuHBgwfYuHEjfHx8cOnSpRafv66EhAR4enrC399fpeclhOgvihe6FS8WLVqEP//8E8899xymTp2KgIAAlJaW4vLly/jtt9+QnZ2NNm3a4PXXX8eTJ08QHBwMd3d33Lp1C19//TV69+4t6Xno3bs3jIyMsGrVKhQWFsLU1BTBwcGSNTYoJug5rS27RwzKgQMHuOnTp3Ndu3blrKysOBMTE87Hx4ebM2eO3BVSR40a1ej5YmJi1L5Cqti1a9e4Nm3acA4ODtyVK1caXCG1oXM29LN8+XKuqKiI27BhAxcREcG5u7tzAoGAs7a25oKCgrgffvhBoVVF79+/zxkbG3M///xzg8fIWyG1odfLcRz3008/cZ06deJMTU25rl27cjExMdyyZcu4+rcMLy8vLjIyUvJ7Q3+XxMREmVVUa2pqOFdXV+6jjz5q8jUSQgwHxQvdixfFxcXckiVLOB8fH87ExIRr06YNN3DgQO6LL77gqqqqOI7juN9++40LDw/n2rZty5mYmHCenp7cG2+8wd27d0/qXD/88APXoUMHzsjISCouUEzQfzyOa2baGEKIzpgxYwbS09Nx/PhxbRdFYfv27cOkSZOQmZkJV1dXbReHEEIMgq7GC4oJ+k+pSkVBQQH27t2L48eP49atWygrK4OTkxP8/f0RERFBY+AI0ZKcnBx07twZhw8fxqBBg7RdHIUEBQVh8ODBWL16tbaLQlSEYgQhuk9X4wXFBP2nUKUiNzcXH3/8MX755Re4ubmhX79+cHNzg7m5OZ48eYIrV64gJSUFXl5eWLZsGSZMmKCJshNCCNEBFCMIIYQoNFHb398fkZGRSElJkbv6LgCUl5dj3759+PLLL3H79m0sXLhQpQUlhBCimyhGEEIIUain4vHjx5JFUxSh7PGEEEL0F8UIQgghNFGbEEIIIYQQ0iLNXqfi6tWryMnJQVVVldT2559/vsWFIoQQot8oRhBCiGFRulJx8+ZNvPDCC7h8+TJ4PJ5k1Uvx0ut1V+HVBSKRCLm5ubC2tm5yeXhCCDFEHMehuLgYbm5u4PP5LTqXPsUIig+EENI0hWOEsgtbPPfcc9yYMWO4hw8fclZWVtzVq1e548ePc/369eOOHTummtUzVOj27duNLihDP/RDP/RDP+zn9u3bLb7n6lOMoPhAP/RDP/Sj+E9TMULpnorTp0/jyJEjaNOmDfh8Pvh8Pp555hlER0fjnXfewYULF5Q9pVpZW1sDAG7fvq3wkvStmVAoRHx8PMLDwyEQCLRdnFaHrq/60TWudfEisGoV8Pgx0K4dYGEBlJUBd+8Cjo7Ae+8BvXo1fZ6ioiJ4eHhI7pctoU8xwlDjA32GtIOuu3bQdW85RWOE0pWKmpoayUnbtGmD3NxcdOnSBV5eXkhLS2teadVI3KVtY2NjUEGjIUKhEBYWFrCxsaEPlxrQ9VU/usaMSAT8/jtQWAj06AGIR++YmwMODsC1a8CePcCgQYCiI5pUMQRIn2KEocYH+gxpB1137aDrrjpNxQilKxXdu3fHxYsX0b59e/Tv3x+rV6+GiYkJvv/+e3To0KHZBSWEEKK4jAxWcfB1eoSQK7/A704c/ghcgdtt+oDHA9zdgatX2XGdO2uuXBQjCCFEhxw+DOzbB9TUAN9+q9anUrpS8dFHH6G0tBQA8Omnn+K5557D4MGD4ejoiF27dqm8gIQQQurgOIDHQ2EhUFEBtLEtwITTcwEAmc6DcLtNHwBsKFRuLuvJ0CSKEYQQoiVP44OUmBjgl19YUFi/HjA1VdvTK12pGDZsGKqrqwEAPj4+uH79Op48eQJ7e3vKnkEIIaomFAJnzgDx8UBcHBAeDqxYAVtbwMwMyOJ3xEPr9nAqzoLXo2TJw8rK2H5bW80Wl2IEIYRoUG4uiw/x8UBSEnD9OlB37kN4OKtUVFUBV64AAQFqK4rClYqHDx9iypQpOHToEEQiEQIDA/F///d/8PHxgYODg9oKSAghBiczs7YSceQIUFxcu6+mBlixAj4+gK8vkJLCw/8N/h5FFi7Ite8GgDVW3bkD9O0L+PhopsgUIwghRAPKy4Hjx1l8iI9nFYW6jh4FRo+u/X3kSDb86dlnATXPHVO4UvHee+8hNTUVn376KczMzPDdd99h5syZSExMVGf5CCFEb4lEbE5DYSHrMfDxaWTSdGoq8P33LFDcvNnwSaurgcpK8E1NERkJ3LoF7HkUCncbwKKG9VDcuQO0aQNMmaL4JO2WohhBCCFqwnFs6FJcHHDsGBv7Ko+1NXDvnvS2Nm2AMWPUX0YoUalISEjA1q1bERERAQB47rnn4Ovri8rKSpiqcXwWIYToowsXgG3b2GTqigo2FMnXF4iMBPx71rAeBxOT2gfcugVs2iR7IicnICyMdWGHhQFubpJd/v7Axx/XPk9uLnuevn1ZhcLfXwMv9CmKEYQQoiLioCHG4wE//8wan+ri84HAQBYfwsOB/v0BLWa4UrhSkZubi151Ep536tQJpqamuHfvHry9vdVRNkII0VnV1SypRl4e4OIChIQAxk/vqBcuAJ9+Cjx6xLIwWVoCpg9uw/WfOJTtjkd1ySEYf/s1MHly7QmffRYwMmJB4plnaoNE796Ndjf4+7O1KBTuEVETihGEEEOnVO90XVVVwKlTtUOaiouB9HTpY8LDWaXCwwOIiGC/h4SwHOI6QqmJ2kZGRjK/cxyn0gIRQoiu27EDWL0auH2bzaMWCNh9fvFiYMIE1nNQcr8UL9kkoduVePjdiYNrwXWpc3AH48CrW6mwsWGT7Hr1AqyslCoPn6/ZtLENoRhBCDFUjfZO1+815jhWaRBPsE5MBJ5mzZO4eROom4b77beBadOALl1kMzzpCIUrFRzHoXPnzlLZO0pKSuDv7w9+nWrYkydPVFtCQgjRITt2AAsWACUlgL09y85XWcnmVi9YAFjv34XI/d+je8EJCERVcs9RbGyHmhor2NXfMWiQuouvNhQjCCGGSl7vdGkpkJLCRrZ+/PHTisWjR8AHH7CKxK1bDZ/Q3x948EC6UuHlpfbX0VIKVypiYmLUWQ5CCNEZDXVhV1ezHoqSEja1wakmD4/5bWFkwYe5OZvTcONABp57ckTqfDU8I2S17Y+r7hG47BqOw4V9sWqeMQK19PrUgWIEIcQQiUSsh+LRI9YzIW5XsbOqhpv3E/yb3Rbbt7NOaL61NUvvWlYmfRIXl9ohr6GhgLOz5l+ICihcqYiMjFRnOQghRCc01oX96E4F2meewBuIx7DsOHStvIQXvC/gullv8His5+LPJxGYh4/wwNIb1zwjcNU9Amluz6Lc1A4AUFQECKo0v36EulGMIIQYoowMFi/c3YE2xVnwuxOPbnfi0PXuYaS5PYvcoH24epUd17mzKZs/d+gQMHhw7dyIHj10dkiTMpRe/I4QQlormS5sCw52967B6884cDviMSw/CWHCcqnHDCqNx3Wz3gDYUKgLvD6YOjAdmTwf+PrxpOKENtaPIIQQoibFxcDfR/HGlTgMLImHS9ENqd1dco/A2kyI3AoBCgufbty0CXB0ZCtctzIKVyo61B3X1YibjeVXJ4QQHVW/C3v82cUIzNwBh9I78o8HD/+ZBeCxUVvJtspKwNiEj8BJnVB4qLb1ysJCe+tHaArFCEKIrhEPZQXYv126qOjem5ICzJ8PnDqFztXVkJcnI5/vgDMWYSi8VQAzM6fa3mkPDxUUQDcpXKnIzs6Gl5cXJk2ahLZt2zb9AEII0QdVVcC1a8gw7yWpBPB4gH3pHZkKxSNTNySZReDvynBcaxeKQkEbyT6OA/LzWQ/EG28AAwfqxvoRmkIxghCiS8RDWTMygJkzgUWL2P1Zbjamxty5w9J9u7rWbrO2ZovQ1SGEMZIFQThlFYHT1uG4aNQHxWVGEF4Ehg83jN5phSsVu3btwpYtW7Bu3TqMGDEC06dPx8iRI6WyehBCiM7jOJaqSZwP/MgRoLISxQlPUFFhBUtLdthV93D0zt6LG65DcdU9HJdcI3DskR/CwnmI+xYoeSCd/Sk/n2WCXbSIrVehK+tHaArFCEKIrqg7lFW8TI69vZxsTPKUlQHHj9fGiP/+YxmbPvus9phOnVg2JoEAXFg41l6JwDdXhqHCxAZWViwGcNXqfpW6R+G7/UsvvYQDBw4gIyMDAQEBmDdvHjw8PPD+++/jxo0bTZ+AEEK0pbAQ2LsXeOstoGNHFhBmzwb+/JOlchIK4ZKWBDOz2lThyR0nYH7kE3w18iAO9ZyPDNNuMDPn4eWXgbVr2WlKS4H799m/Pj5s+8SJtU8rXj8iMJD925q/X6s6RmzatAk9e/aEjY0NbGxsEBQUhAMHDkj2V1RUICoqCo6OjrCyssL48eNx//59Vb4kQogeqj+U1caGbbexYb8/egRs386OA8Aami5dAr74AggLY4vJDR8OrF/PKhQAq1zUxeOxmsuNG7gxdyMSzJ9H1342cHJijUyFhexfJyd2/3/0qHYYVmumdIhr164dPvzwQ9y4cQOxsbE4e/Ysunbtivz8fKWfnIIGIUStKitZhg1HR2DcOGDzZiArS/oYJydg8mS49mgDX1/W081xgNDYHEJjcwC1E6z9/FjlYeJE4Nw5lhnwq6/Yv//+K12hMFSqihHu7u74/PPPkZKSguTkZAQHB2PMmDH472mQnzdvHv766y/s3r0bSUlJyM3Nxbhx49TxkggheqRuNqb6CZV4PLZdnI0J27ax/OC9erFu5kOHWNwQ4/OBAQOA555jgaAue3sArAJRUcHOO2AA0LMn0LUr+3fAAKBdO7ZfMlG7FWtW9qeKigr89ttv2LJlC86ePYuXXnoJFs2YxS4OGp06dQLHcdi2bRvGjBmDCxcuoFu3bpg3bx7++ecf7N69G7a2tpg9ezbGjRuHkydPNqfYhJDW7PZt9jNwYO02U1OWw7WmpnabQAA880xtKr9evQA+H3wAkWasa1yRCdbGxuwURJYqYsTo0aOlfv/ss8+wadMmnDlzBu7u7vjpp58QGxuL4OBgAGydDF9fX5w5cwYDBgxQ2WshhOgX8Zd88VBWAOAJheh0Nwm37AJQbWGP3NynX/JtbIC8POkTeHiwm3tEBBAczHouGmFry+bM3bkD3L0LFBSwNY2MjYGcHFapMDNrfWnE5VGqUnH27Fn89NNP+PXXX9GhQwdMnz4dv//+O+yf1taURUGDECJWVQX8/DO7CXt6Aq+9BpiYNPKA0lLg1Knaca/Xr7NhTenp0seFh7OWJ3ElYuhQNvlBDn9/NtbWkCZYq5KqY4RYTU0Ndu/ejdLSUgQFBSElJQVCoRChoaGSY7p27QpPT0+cPn2a4gMhBszWFjAz5WBzLx39CuLR7e5B+G45AuOKCvwY/AsOt51U+yW/07OsYjF4cO3ic126KLVmhI8P6wyPi2NtVpaWrEGquhp4+JDFEW1P1G5oQVdVU7hS0a1bNzx48ACTJk1CUlISevXqpdKCUNAgxHBFRwPr1rEbnkjEbnbvv88y9i1Z8vQgkQi4eBH8AwcwcOdOGKelsZpIXTdusOFN7dtLn3zNGoXLYmgTrFVFHTHi8uXLCAoKQkVFBaysrLB37174+fkhNTUVJiYmsLOzkzre2dkZefVbHeuorKxEZZ2hDUVFRQAAoVAIoVDY4vLqC/FrNaTXrAvouqtZfj54R46gY8Ih7DiTAIfiHJlDut09iB14Cf7+bJ61kG/JeiqM63wdrlZuhrVIxB5uZsYqFWZm7PfqatZJbmTEfhcKtRNHLl0CYmOBtDTWvmZqyupNkyaxIVqKUPQ9q3Cl4tq1a7C0tMT27dvx888/N3jckydPFD0lAAoamkY3NfWi66u8deuA1avZDdfGht10RSKgvJxt5/OB+cOvwjg8HLwHD2AEwKneOTgjI3D9+4MLDYVIfPeuqxl/j7r1kpoa6RFUrY0q3q/qiBFdunRBamoqCgsL8dtvvyEyMhJJSUnNLmN0dDQ++eQTme3x8fHNGsKr7xISErRdBINE1131em7eDO/4ePCezr6uP2Cpwt4eD3r3Bj/IA+/02w8AOHhQdc8/fjz7aYwqn09ZQ4awn7ru3GE/iigrK1PoOIUrFTExMYoeqhQKGtpBNzX1ouuruK5dga1b2f/5VVVwvHYN1aamyO/aVXLMwRtCjCgokLphlTo744G/Px727o2HPXqgWjyA9vx5jZW9tVA0YDRGHTHCxMQEPk/HDAQEBODcuXPYsGEDJkyYgKqqKhQUFEg1PN2/fx8uLi4Nnm/JkiWYP3++5PeioiJ4eHggPDwcNuIUMQZAKBQiISEBYWFhEAgE2i6OwTD0666KFnNkZYF39Ci4qVOlhijxU1PBq/OtnTM1RXHvwUgyDcVho2F49p172LotHB0rBZjorsTzKeD8eeCjj1hGQD6fTeMTClmvhY0Na5C6eRNYsQLo00d1z9sUkYhlwk1NlR3RxXHs7+DvzzLlNtWDIm6gb4rClYrIyEhFD1UKBQ3NMvSbmrrR9ZX122/Ahg2sRUR8o3V3B959Fygv4/Ddu1cRxh1CcPUhBFUdgznKccD0ebxpPx9CIXvM+vUA//nnIaqoQHVwMI6Zm2Pga6/B3cQE7tp+ga2AogGjMeqKEXWJRCJUVlYiICAAAoEAhw8fxvinzYNpaWnIyclBUFBQg483NTWFqampzHaBQGCQn1dDfd3apm/XXRXj8S9cYF+qHz5k5xDPOTh7ln3hbnDdiOJiIDGRzZuLj2dDXAGgf382TlVsxAhg9242JyIiArzBg2FjYYFRIsAnTYj09P1YuVKALl0EKh+CZG/PrkdhIatE1J0gXlPDKhl8PjtOk3/29HTgyhWgbVv5Pe1t2wKXL7PkJJ3lLQleh6LvV4UqFRzHgafEpJWWoKChGXQ91MuQrm9jE6x37AAWLGBLQdjbs0BiUfYIvhcPgTcjHmO4eEyvuCtzzkGVR1FdDlSJBCgrYzc9/u7dAFgWj9L9+yEwMTGYa6xuLb2O6ogRS5YswYgRI+Dp6Yni4mLExsbi6NGjiIuLg62tLWbMmIH58+fDwcEBNjY2mDNnDoKCgmi+HSEqJF6V+to1llHJzIyt9aDMqtTidSOys1lF4tat2uxIdnYs58b27U8T8XE1rOlfXIk4dUr+HIf4eOlKRb9+7Bt0PXw+qwSlp6tvbpyPD7smKSns3/o9AnfusGQfmp6oLS8LVl0WFqjNgqUiClUqunXrho8//hjjxo2DSSPpWG7cuIF169bBy8sL77//fpPnpaBBiH5rbIL1okVsTkRJCUsDzuMBowpjsfreq+CDk3u+u7x2OCKIQKJxOHjgUFPDzunpqeEXRpSijhjx4MEDTJkyBffu3YOtrS169uyJuLg4hIWFAQDWr18PPp+P8ePHo7KyEhEREfj2229V+roIMWR1V6V2d2dfTktLFVyVuo6MDNYj8fAhqx/Uz45kbAycOQNk3ODQeWx3lslPHmNjYNAg1hvx3HOqfbEtwOezSpai6cg1RZzqtrS0dgHAusrKVJ/qVqFKxddff4333nsPb7/9NsLCwtC3b1+4ubnBzMwM+fn5uHr1Kk6cOIH//vsPs2fPxltvvaXQk1PQIER/RUcDn3zChieZmbEMFzU1wJPHHH7+Xybc/4iDVdYQ2Nv3kLTc/GcWIFWhKIM5ThoNxX5RBE5ahOOGcW0zj0jEWlkcHVnvB9Fd6ogRP/30U6P7zczMsHHjRmzcuFFVL4MQ8lT9VanF93DxqtTXrtXpXWjiy3J+PltCqLqa9UyYc2XoW3YMnsJM/GIXhYICtj+/gId8r96wr1OpuGPRCVk+4XCbFoGOM4YB1tbqesktoovpyLXRg6JQpSIkJATJyck4ceIEdu3ahV9++QW3bt1CeXk52rRpA39/f0yZMgWTJ09WKh85BQ1CdFtDQ5uqqlgPhVDIlnyw4xVisPAIQqrj8Czi4V2VBZwF8kw+xA9te0jOl23SGccsh+OGaQ8cNw/H/qJnMCTcDH//DQjLpSsnFRVs/Om8eU2sV0G0Tl0xghCiHcqsSt3UePyCfA4dSi5jOC8Ow27HI6D8OEy5SlTxTLDXdirKTS1RWgokJwPHH49FoGMlbrSPQEaHcNzit2et/UnAx0N1e60gXUtHro0eFKUWv3vmmWfwzDPPqO7ZCSE6q7GhTc6O1eiSn4wIo3iEl8YhoOYsjCE7E+zZ6nh8U7kCksRrPB7e8DgAgN3YRCbAzJlAQEDtc1VWsudydGQVCsk6FUTnUYwgpHVo8Xj8+/eBQ4eAuDg8uz8BEYWySwGYcFUILEvCH8KRMDUFjh8H7ppNQPq4CbU9I1C+Z0Sb+PymK1mapOkeFKUqFYQQw9Dg0KYnbHus03ycqPkacuoRqIQJThs9gwOiCJyzDUd+PmBuLtv1mp/PWnFCQthi1wsWKLmiNiGEELVo0Xj8hw8BV1d2owdQ/zZ+19gTJy0jkGQWgcSqQTAWAE5OrPXcw6PlPSNEmiZ7UKhSQQiRIh7aZFJVgtFmSQitjsNq44/xxKQNjI3ZxOvfHw3DOHwtecx1vi8SjcORKAjHSeOhKBBaQigEIscD1/9hrSP29iwveWUlq1BYWbHJ3OKFTE1MgBkztPSiCSGESDQ5Hv82h5Ed0+CzPw5IsmBdzmJOTkD37ixfKQDO0hL/tX0W/1SF45h5BC6Vd0J1DQ/GxuwLrqWAPcedO5rNVGRINNWDQpUKQloppXOLi0RAaioufhaP3Y/jMJA7CZNyttLyv8YDscfkFfD5rHUqrjIYe4xewgFRBE5ZhiHX2FPqNOIJ1hs3AsHBLAvU7dtAQQGbJ+HjwyoUEyeq9xoQQghRnrzx+E5GT9Ah6zB8MuPwWVE8nE7eBraDraxWt1IBsN9zc9maEUFBEF41xZlPgcKHQC+72t7vggJWB3n5ZWDTJs1mKiKqR5UKQlohhXOL5+YCCQks53dCAvDwIQLlnC+4Og57TF4BwIJBAezwzZBfceoUICxrfIL1xInASy8Bhw8DeXmAiwsb8mRMdx9CCNFZ/t2FWDX6LLK+i4fX/jh0LjonPx14WhqrfXh51W6bM0f6XPXG9hcXs7gRGMjG9vfqBRw9qntrPRDlUFgnpJVRKrf4hAnAiRNyz5PFa49EQQQOG0fghOBZyXbx2hGTJwNhYYpNsDY2ZvMmCCGE6Iljx9B5RijkjpoxNQWGDJGsYK3IYkJNje3XxbUeiHIUqlQUFRUpfEIbef1WhBCNkMktDg5u+f/B7048vB6ewwIuFtu382ozaISH11YqrK2B4GBUB4cj6H8ROF/YEVZm0jfx+mtHmJjQBGtCMYIYNqWHmuqSoiIgMZH1Vg8bxrqVxQYNYlk2ysvZ7927s5gRHs4qFObmSj9dY2P7dXGtB6IchSoVdnZ24NWfjt+Amho56WAIIRqRkQHkXnyIl2sOISApHr534mFflivZH9TpA1y82qM2g8bYsWxmdng4MGAAIBDAGMC4UuDyJ2xSdlNrR9AEa0IxghgqhYea6oqaGtZtHR/Pfk6fZqvSAWx8at1KhZkZ+5bv4sK6pdu1U3vxdG2tB6IchSoViYmJkv9nZ2fj/fffx9SpUxEUFAQAOH36NLZt24bo6Gj1lJIQA6J0q1dNDettiItDu73x2Hn9vPxxrwB6FSThrEmP2gwaPXqwn3rEQ5do7QiiCIoRxBApNdRUm+7dA/bvZ5WIQ4dYbnB5jh+vXZRI7P33NVPGOnRtrYfWQFO9aQpVKoYOHSr5/6effop169ZhYp20Lc8//zx69OiB77//HpGRkaovJSEGotmtXuPGAU+eoH42viojc6S5DcM193BcdQ9HGt8XZvmKZdBYsoSGNhHFUIwghkZmqKl4sTYbHVysbdcu1hokT+fOtUOahg3TgcISVdNkb5rSE7VPnz6NzZs3y2zv27cvXn/9dZUUihBD1Fir18MbBVj+7GF0uBHPhivFxNQ+0MgICA0Ffv0VAHC3TS8cNY3A/V7hyHQZhGpjMwBPM2hcUy6DBg1tIsqiGEEMQUZG7YRirS/WxnHApUtAXBzrjVixgg1nFaubJcPWlsWL8HA2pKl9ezUXjmiTpnvTlK5UeHh44IcffsDq1aultv/444/w8PBQWcEIaY0a6oKs3+plxFXD++E5+N2Og9+deHg/OAuj/SJ2ElNTtgCEhUXtid9+Gxg9GggNxYN7LvhNfBOxoQwaRLMoRhgOvZ6g3EKFhazVV2uLtd2/z9KAx8Wxf+/fr903cKB0paJrV2DVKmDwYJbDlfJ5GwRt9KYp/c5av349xo8fjwMHDqB///4AgH///Rc3btzA77//rppSEdIKNdYFaWkJ5FwqwJSKXxGQEIeuuYdhUdVANOI4tlLp088fAKDO8BN/F8qgQbSHYoRh0LsJyipma8tes0YXazt1CvjjD1aRuHix4eMuXZL+nccDFi9WYUGIPtBGb5rSlYqRI0ciPT0dmzZtwvXr1wEAo0ePxptvvkmtUIQ0oKkuyPHjAX5ZCWYmvyH38bl2vjhpGY5eiyLQ+fUhDTePPUUZNIi2UIxo/fRmgrIa+fiwSpRGF2uLiQF+/FF2u6Ul8OyzbJhTeDjQqZMKn5ToK230pjWrD8zDwwMrV65s8ZNHR0djz549uH79OszNzTFw4ECsWrUKXbp0kRxTUVGBBQsWYOfOnaisrERERAS+/fZbODs7t/j5CdEEcRfk44ciRDhdQLfMePjdiUO2Uz/83n81rl1jCTmKbNxx27YbPAr/Q4mpA663C8XVpxOsb4k88OQJ8PUIQGY2dgMogwbRFlXECIoPukmvJiirEZ+vhsXaHj8GDh+uzdKUksJS7olFRNRWKgICaheeCwqiDBpEhjZ605r1kT9+/DheffVVDBw4EHfv3gUA/PzzzzjRwMq8DUlKSkJUVBTOnDmDhIQECIVChIeHo7S0VHLMvHnz8Ndff2H37t1ISkpCbm4uxo0b15xiE6J5ubl4sGYbxuyahL+TnfHRvr544dwH6HIvCT1z/pJ0QebmAq6uwDr39Vg55iwWvvYAP4TuwsmuM/DE0gN37gB+fipu9SJETVQRIyg+6CZlhlS0duLF2gICWJbWjAz2b9++CvbWCIUsHfjSpWw4q5MTMGEC8NNPrLZy6JD08aGhQGws8OABkJwMrFzJhr7KqVCIREB6OnDuHPtXJFLd6yb6QdybducO6z2rS9ybpurvFUr3VPz+++947bXXMHnyZJw/fx6VlZUAgMLCQqxcuRL79+9X+FwHDx6U+n3r1q1o27YtUlJSMGTIEBQWFuKnn35CbGwsgoODAQAxMTHw9fXFmTNnMKDuRCRC1Ky6mjUi5eWxtYBCQuTPd7O6cwf8995jAeHyZbgAcJFzPiOREGZVRai2sEFuLkvE8XtRGJIfAe7mNMGa6CdVxQiKD7pJ6xOUdUxzhpryfvqJzYs4coStaC2PmRm7+ddlZwfUSdXcEEOf70IYtfSmNUHpSsWKFSuwefNmTJkyBTt37pRsHzRoEFasWNGiwhQ+vQs5ODgAAFJSUiAUChEaGio5pmvXrvD09MTp06flBo3KykpJEAOAoqcfWKFQCKFQ2KLytQbia0DXQjm//QZs2MA+iEIhW1Xa3R149x0OL46tZhvArqv5w4cwWr9e5hzlAmukuT+L6x5huOYRike2HQEAVUVCWFuz1i5fX9YQlZbGhheYmrIGrIkTge7d2XMbOnoPq54qr6W6YgTFB9VpyWfIygqwtmYLYjY0pMLamh1nQJdUKjNrTQ37AVAbMFB7vXlbtwJnz8qcg+veHaKwMHChoeCeeQYwN1f6Il66xBI9PX4MuLnVzne5fBmIjgbeew/o2bM5r1B/GXLM6N4d+Oijln+vUPTaKV2pSEtLw5AhQ2S229raoqCgQNnTSYhEIsydOxeDBg1C9+7dAQB5eXkwMTGBnZ2d1LHOzs7Iy8uTe57o6Gh88sknMtvj4+NhUTcFp4FLSEjQdhH0ioVF7SrSJoWFcEpNRdvUVLSdnYr/Tk7ErfBwybF8Pz/UmJiALxQiv1MnPOzdGw9690Z+587gjI1hDqAP0gCkST1Hejr7d8gQ9lPXnTuyjVaGjt7DqlNWVqayc6kjRlB8UI/mfoZmzmz6mPT02nuaQampgV1mJtpeuIC2qakwf/QICd9/LzVW7Ia3N7qePYtKGxs86N0bD5/+VDytMEMoBOqsUq+syZMb3mfIscSQY0ZLv1coGiOUrlS4uLggIyMD3t7eUttPnDiBDh06KHs6iaioKFy5ckXpeRn1LVmyBPPnz5f8XlRUBA8PD4SHh8NGXrOKgREKhUhISEBYWBgET1tPDN2iRWxiYWUlG2fI47Ga/JQprGUnbGgV2qSfxnMmCRhYkgC/8gtSj3+8Mw/hX4yEsXHt9RX++SeMeveGtYMDrAGUXAK+rtN6JO6CzM1l8/AMsfWoueg9rHpFDQ3BaAZ1xAiKD6rV0s9Q/dZwXbufiUTAzZtsZJGNDdChQ/OHeCh0rtu3wTt0CPyEBPCOHAHvyROp3SO9vYFu3STX3evTTyGcPx/8Xr3gwufLHR7bHBkZLJ7Z28vvRSoqAvLzgTVrDGt+HsWMllM0RihdqZg5cybeffddbNmyBTweD7m5uTh9+jQWLlyIpUuXKl1QAJg9ezb+/vtvHDt2DO7u7pLtLi4uqKqqQkFBgVRr1P379+HiIv9jaGpqClNTU5ntAoGA3kx10PVg5swBvv2WBQ4jI1ah4DgWILO++guXd36Pg/cTYYVSuY8v55mjoMQUx44JpBYtNQoOlrq+AQGsp6P+ONeePWntiOai97DqqPI6qjpGUHxQn+a+bl2+n6lyPkGj5+pYxGZjx8ezAxrSuTMET55IhkABgHH79mp5v5WUAMXFbM5fdbXsfhMTtr+kRKo4BsNQP+eqoOh1U7pS8f7770MkEiEkJARlZWUYMmQITE1NsXDhQsyZM0epc3Echzlz5mDv3r04evQo2tdbLj4gIAACgQCHDx/G+PHjAbCu9ZycHAQFBSlbdEKkVFSw7HwiEdDGKB8lfBuIeEYAWOWiQ3UG+t3/W+ZxV01746RlBE5ahuOcySDceWiKr+SPtpBCa0cQQ6CqGEHxQbfp4v1Mletn1D2XRzsRnIzz8aDGsfZcH1rCf9s2oP6QPjs7lsUjIoJl36jXY6dOWlmQj5A6lK5U8Hg8fPjhh1i0aBEyMjJQUlICPz8/WFlZKf3kUVFRiI2NxR9//AFra2vJOFhbW1uYm5vD1tYWM2bMwPz58+Hg4AAbGxvMmTMHQUFBlNmDtEx1NXa++y/er4hHBOIQWPMvgnnHcYY3EAALjIf54YAIuA9nnLAIxxnbCJy2DMVj49oc+GVlrMWnD6ZH9gAAiuNJREFUgYZRGbR2BGntVBUjKD7oPl26n6ly/QyRCNjzbR4CriYgVBQPv5R43HHohQ2j4mvP9YsReoeEgrdvL5v1Kl4zom9f+WkBNaA5C/KJRLpVMST6Tel3/vTp07FhwwZYW1vDz89Psr20tBRz5szBli1bFD7Xpk2bAADDhg2T2h4TE4OpU6cCANavXw8+n4/x48dLLW5ECABUVQE//wzk5ACensBrrzWyBlB2NkvjFx8PHD6MqfVyHoaK4nGGP1Dy+zWeH3rgEnLtu0NYzYObjexNOj+f3YRDQlT/2gjRR6qKERQfiDKUWT9DbkWoogI4eRKIi0PVX/FYfv2i1O5OeccgqC6H0Nhccq6s979Ahx9/YL0TOkDZFKKUepaomtL10W3btqG8vFxme3l5ObZv367UuTiOk/sjDhgAYGZmho0bN+LJkycoLS3Fnj17GhwvSwxLdDTQrh3w1lvAZ5+xf9u1Y9ulLF/Ookj79sCbbwJ79sgkUb/K88MTnqPUNg48/MfrgZBQHqys2CTEsjKWKlA8KdHKik2M01LDFCE6R1UxguIDUYYi62dUVMhZP+O//4CRIwEHB7a43Jo1MKtXoagQWOFqu3BYVTySOtdjKy+dqVCIKbogn3h4V0oKe+mdOrF/U1LY9gsXGn8eQuRR+KtQUVGR5KZeXFwMMzMzyb6amhrs378fbdu2VUshCakvOhr45BOWec/MjE2yFlWL4Pz4Oj75hLWOilPA4tYt4MYN6RM4OKAmOAxv7wvHP9XhuG/kLtXlKxKxyoO5Oesy37sXWL0auH2bDaEVCFgPxaJFCq1FREirRzGCaJMi8wmc+I/hUFkFwLV2h40NcOCA1LEcj4d06wBcdQ9HZodw3HQOQo2RidS5dHluQlPzXVQ5VIyQuhSuVNjZ2YHH44HH46GznL5DHo8nN/83IapWVQWsW8cqFJ0s7iKkJh7BFfEYVp0AOy4fzlUPsX69AxYseDoUKjyc3UEHDmT/Dw8H+vSBkZERTOYA974FRNXS2Z9qatjNdMYMFjwmTgReekmxFbUJMUQUI4g2yZtPwBcJ0eH+GfjdjkP7jHh0LUkG77d3gWfqLE7q4cEeUFjI5kSEh4MLDsWmlW3YuVwVm5ugaxqb79LioWKENEDhr0SJiYngOA7BwcH4/fffJauaAoCJiQm8vLzg5uamlkISIlFejiMfHMMHT+IRwcXBr+Q/mUOGCw7j14KX8PPPrFKA0aNZQnU5zVdff83+/fFH6XUqzM3ZY8X7AVaBqJs2lhBSi2IE0SbxfILK/zLgcyQeQyvi0O1BIsyFxdIHJsTLPjgpiU04ePoNmw/l5iboG0WGiuXmyhkqRkgTFK5UDB06FACQlZUFT09P8OpXbwlRQkUFsHYtkJXFpjosWMB6BBpUUwM89xyQmIjhlZUYLueQItjgmCAYT4ycIKpik7cBsBqCuXmDp/76a7YYkFLlIYRIoRhBtOq33+D/3nvYdPNmw8f06MFahmpqWNe0mJOTzKHiuQniicy5uSwm9O2r/bU4WopSzxJ1UXrwxpEjR2BlZYWXXnpJavvu3btRVlaGyMhIlRWOtE5z5sj2DKxYAbz++tOegQcP2BKmddNCGhmxVEuVlZJNNeDjvFEgEo3DcUQQgRSjfqjmCVBVxVqQPD0VL5OZGfDhh6p7jYQYKooRuk2cQhRg/3bpomct7jU1QHIy0LEj6zIQs7JicaMOob0TygeFwWpcOPgRYWz5byUouhaHvqVlbU7qWUIUoXSlIjo6Gt99953M9rZt22LWrFkUMEijN1h5K1gbi6owoOIk2n0Tj9u74uDx8AJL43T7tvTdLiICuHsXNWERmPVbBP4oCYHQ0kFmgnVFBeDoyNLLEkI0i2KE7hKnEM3IAGbOZIkmfHz0IIVoTg5LBR4Xxya25ecDP/zAWqLEhgxhze59+kjmRgh694aghd/um1qLQx/TsiqbepYQRSldqcjJyZFZ2RQAvLy8kCMZb0IMVWM3WF9f8QrWHPyM0hGBOITWxGMIdxRWKGUnePj0RHfvspPUyXOPDz4A/vc/GPF48OkElHwCCEtqsz/V1LDnFAiAefMaWa+CEKI2FCN0U90VosWLPNvbN2+1abUrLWXzHMTrCl2/LntMfLx0pcLCgvVym5pqrJiqXMFb01rz8C6iPUpXKtq2bYtLly7Bu97S8xcvXoSjo6P8BxGD0NQN1s0NcK3IQiKGwaum4S8Xea7+cJkSLjuLrE6wEKeLXbeO9YhUVrJWFUdHVqGQpJMlhGgUxQjdUz+FqEDAtutkCtH33wfWr2dp/uSxs2PrSYwdK7tPgxWK1pCWVdHhXYQoSulKxcSJE/HOO+/A2toaQ4YMAQAkJSXh3XffxSuvvKLyAhLdU1ICzJ7Nhq926AB88w1rJKp7gzXiquH94F+Ax4O1bxCuXQPS04EceMAW0ikl8uCMQ/xwxCMCcaJQjB7pjB8/b7ocS5awCdUKr6hNCFE7ihG6RydTiOblAYcOAa+8Ip2b28lJukJhZAT07y8Z0oTAQOlJ1lqik9e0GZoa3kWIMpSuVCxfvhzZ2dkICQmB8dMbgUgkwpQpU7By5UqVF5DologI1ussdvx47RIQHflZiKyIR5+EeHTNPQyLqkL85x6Br0YehLs7cO8eUANj/MN7Di64zyoSvAhc4fUAeDzU1AAiHsu+pCgTk6dpYwkhOoFihO7RiRSiFRXAiRO1cyMuXWLbfXykk3JERLCWKnElIjhY51atBnTkmhKiY5SuVJiYmGDXrl1Yvnw5Ll68CHNzc/To0QNeXl7qKB/RsMYmWdevUFihGM8iEeGIR/ipeHTGDZnzdbqXBEF1OSwszOHszOZev1r1M4yNeQ2uYL1ggZpfJCFEbShG6B6tpBDlONaUL54XkZQElJfLHhcXJ12p6NaNdYPreEpiSstKiKxmrwfcuXNnuaumEv3V2CTrTp2kKxSj8Sd+x3gIUC33XCWmjrjqHoZr7uEAOJSVsYx/L70E7NjBQ3UTK1gTQvQbxQjdUT+FaF1qSyEaFAScPSt/H48HBASwlqrnn5fdpwcoLSshshSqVMyfPx/Lly+HpaUl5s+f3+ix69atU0nBiGY1NMn61qm7OHEsHjFW/gB6S45PRW+pCoUQxjiFgThpEQ4uPAK32/iD47Nxr3VvsGvXsowjiqxgTQjRDxQjdENDPc31U4iK59AXFQHZ2S1IISoUAqdPA//9B7z1lvQ+Pz/pSoWbW+2QptBQ6TUm9BClZSVElkKVigsXLkAoFEr+3xBlV1A9duwY1qxZg5SUFNy7dw979+7F2DoZHTiOw7Jly/DDDz+goKAAgwYNwqZNm9CpUyelnocw1dUsxTfA/g0NZfPj6max6NWpDJ3zjsHvv3j43olHu/z/AADfWc5H3UrFbXhiP0YgC+0RhwgcxTAUwwYOZoDfI8DdrOEbLK1gTUjroq4YQRTX1HoJdVOIihe/y89XMoUoxwGZmbVDmo4cYZk7+Hw24drevvbY0aPZpAJxRcLPT296IRRFaVkJkaZQpSIxMVHu/1uqtLQUvXr1wvTp0zFu3DiZ/atXr8ZXX32Fbdu2oX379li6dCkiIiJw9epVmNE3UKXs2AGsXg08fAhs3MjSezs5AYsXcQiyuoxuB+IxozAOXU8fh6CmUubxQyvjAKyV2jYK+2WOGziQLXTa1A2WVrAmpPVQV4wgilF0vQRxCtG0NJaNb80aBVbULixklQdxRSIrS/YYkYi1VL34Yu22F15gP60cpWUlpFaz51SowogRIzBixAi5+ziOw5dffomPPvoIY8aMAQBs374dzs7O2LdvH6UmrEfcC5GXB7i4ACEhtVn6duxgPQElJYCrK9tmackanB7O+hDepdGYKeecIh4f2U79cMUtHH8LI4D/mi7Hjh2sh4JusISQlqLe7KYpu14Cn8/uyenpCtybi4uBtm0bXjPCyYn1QoSHA8OGqfql6Q1Ky0oIo1ClQl4vQkP27NnT7MLUlZWVhby8PISGhkq22draon///jh9+jRVKuoQ90Lcvs2GuAoEgIcHsHgxmxi9/vNK+BecwhjzePxm/AYANofBzQ1IyhmMdxAtOddjK09cdY/AVfdwXG8XgjJTexQVAU+eAANtgVOnGi5HeDibjA3QDZYQQ6KuGEG92U1TyXoJOTmsF6KmBnjjjdrt1tZA797Av/+y3wUC4Jlnaoc06fLKboQQjVOoUmFbJycax3HYu3cvbG1t0bdvXwBASkoKCgoKlAosTcnLywMAODs7S213dnaW7JOnsrISlZW1w3eKiooAAEKhUDLmV99UV7NsfPfvA87OwNChtb0Qv/3GhhGVlLDVpE1MgKpKDua30pA++xAylybg6M0kWHBlQDnwwNYTgBtMTdm1yGg3EPG3R+GubwiOmobB0r8zePzayGTECfHgAevi/ewzYPx41hNeX3AwsHcvq9QYMvF7TF/fa/qArrHqtfRaqitGUG9205RdL0EkAjIvlsA5ORnFvx2C/bkE8NLS2E4PD2DWLOnaSWQkS/kq7o1o6IkIIQZPoUpFTEyM5P/vvfceXn75ZWzevBlGT1e1rKmpwdtvvw0becmaNSw6OhqffPKJzPb4+HhYWFhooUSqY2fHMibVTe1qYQGsXw8IiovhdOkSnFJT0TY1FRb5D9kBT6TPMc3tFyRjET74IEGyrRwz4QBgHDIBZMo8b0QE+/fgQWDmTPYjz37ZKRYGKyEhoemDSIvQNVadsrKyFj1eGzGiOb3ZrbHRycqKdShUVja8XoKNlQhtci7izvYElP9xCB3vnISAk/N6b9+G8PJl6byz9W/4enqddAE1iGgHXfeWU/TaKT2nYsuWLThx4oQkWACAkZER5s+fj4EDB2LNmjXKnlIuFxcXAMD9+/fhKp4I8PT33r17N/i4JUuWSKU0LCoqgoeHB8LDw3Wi0qOMur0Q9vZPeyGqWMYOKytg4kQ2ltbSEtiaOxKBJYfknieP74pTVqE4ZxeK82VD8TZSsXJlGCorBSgvZxP6fvyRDY+NjWWT+CorAVNToGtX9jw9e2r4xespoVCIhIQEhIWFQSAQaLs4rRJdY9UTf7lWBU3FiOb0ZrfWRqeGGnrE7K9fR/sX35e7T8TnI79LFzzo3RsP/P1RkJEhfzI2URlqENEOuu7Np2jDk9KViurqaly/fh1dunSR2n79+nWIRCJlT9eg9u3bw8XFBYcPH5ZUIoqKinD27Fm8VT8fdh2mpqYwNTWV2S4QCPTqC0h1NZsn8egRm/vA4wEuZTcxqDQeARXH8Vr5dvzf/xmhqIj1Vhw3j0DQ00pFJc8UyeZDcNwiAvvKwpHr0B0FhTy4mQNmIiGAVFRWClBRIcC9e2yynji9rL8/TbJWBX17v+kjusaqo8rrqKkY0RytqdGprkuXgHUrK9Du5gkMrTyEe669keT2CnJz2bDYRfPCUW6yEuZVrPL4yMYbxQO74hB/Kq65hOBiti383YDP3qH7vTpRg4h20HVvOUUbnpSuVEybNg0zZsxAZmYm+vXrBwA4e/YsPv/8c0ybNk2pc5WUlCBDnDAbrDs7NTUVDg4O8PT0xNy5c7FixQp06tRJMgnPzc1NKvtHa3X4MJB/qwgvmyYi+H48BpXGw0tYe62GOL+Lo/ns+ldWAketnoNT9T2ctAxHssUQVPLNUVYGlHLA65NZ9o/c3NrsT+XlwL17rMdj0aLaORqUxYIQ0hKqjBGNaU5vtqoanRpaZE6jOI4tOhcfj4D4ePx8NAn8ygoAwJm8Edht/Bp69mTpvC0tBYj1WgKejQ1u+oQj39EL4eH7kRo/EtXVArRtC1y+zNLP0v1f/ahBRDvoujefotdN6UrFF198ARcXF6xduxb37t0DALi6umLRokVYsGCBUudKTk7Gs88+K/ld3IIUGRmJrVu3YvHixSgtLcWsWbNQUFCAZ555BgcPHmy9WT04DkhOBuLi0PvneNzIPy21anVdQ6qPIInXD3Z2bDjUTbeuWO28VupU+fks2K1YwZJ0iNepANiQJx8fVqGYOFEDr40QYhBUGSMa09ze7JZqapE5tXr8GEhIqF0zIjdXsqtunSaw8ji+XieEj68AfD5w7hyw3fV9dOoEGBkBxpAeH11/MjchhDSH0pUKPp+PxYsXY/HixZLukOZ2Gw8bNgwcxzW4n8fj4dNPP8Wnn37arPPrpTFjgHv34FxvsxDGuGA+CCesInDSMhwpNf4QlAGTJrEAl5vL5l2YmrKeC/G8C3EvxMSJLL3soUNs/48/1g55IoQQVVFljNC13mxFF5lTm99/l075Wpe7O8vQFBEBo5AQdHasbVm0tWWVn9LShidzm5mx4wghpLma9ZWyuroaR48eRWZmJiZNmgQAyM3NhY2NDazECxUQ+crKgGPHWEvTkyesRiDG47Gg8HRbtmlnxInCkdo2HP9aDEOZkTUA1gvxJJf1NCxfziZRi9epKChgqcTl9UIYG7NF8fbvl14cjxBCVElVMUKXerOVXWSuWTiOjauKj2cxYv586UXlwsNr/29uzvY9rUiga1fZhSqe8vFhZUxJkU7sJH7KO3eAvn3ZcYQQ0lxKf628desWhg8fjpycHFRWViIsLAzW1tZYtWoVKisrsXnzZnWUUyc1toq1BMexWXTiIHH8eO3qpEZGwIYNLFes2IwZwMCBQFgYTp9pj08WACVFgL1R070QTZaFEELUTJUxQpd6s1WyyJw8BQVs8R/xkKbs7Np9XbpIVyq8vYGVK4F+/YBBg1j3ggL4fDY869Yt9hq8vdn2oiL2dG3asLkXNEmbENISSn/tfPfdd9G3b19cvHgRjo6Oku0vvPACZjaV164VaWwV64nPl7KV4OLj2c/9+/JPwnHA+fNs5TixwYPZD4CJ7dkmRXshxOtJEEKItrTWGKHsInONSk0F/viDVSTOnmXdIPIkJ8tuW7JE0SJL8fdnw7O2bWMVH4A1UPXtyyoUap8PQghp9ZSuVBw/fhynTp2CiYmJ1HZvb2/cvXtXZQXTtsaye+zYASxYULt+hLgHITOTbTcpKsf4t6awSkN9np7s239EBKtM2Ns3Wg7qhSCE6JPWGiNUOi8hJgb46ivZ7SYmwDPP1A5pUvECQf7+bHhWWhqQng6sWcM6Q6iHghCiCkp/NRWJRKipqZHZfufOHVhbW6ukUNrWWHaPHj2A1as4uBVexwtW8XjmcTyyTTrjc+f1MDdnLVWffdcG4/oEgJeSzJq1nn22Nkh06tTguNeGUC8EIURftNYYUX9eQt3buMy8hJIS4OjR2t7qw4eBdu1qHxAeXlup8PVlv4eHA0OHNtwVoiJ8PitjejqtQ0QIUS2lKxXh4eH48ssv8f333wNgY1pLSkqwbNkyjBw5UuUF1LSGsnukn3mCQ6cOwdQ4Hn9djoe76DbwdIFBn8r/8HnbdeDxeLC3B3JygJT5n6HvFyZsfkS9FjtCCGmtWmuMqD8vwd2dDXkqKwPu3hahn+ACFlTHgx8SD5w8ycbFiiUkAFOn1v4+bBhLwRcWxnqvCSGkFWjWOhXDhw+Hn58fKioqMGnSJNy4cQNt2rTBjh071FFGjamf3aNNcRYGnd8Cvzvx8Hp4DnzInzAoQBUcah7iiXFbmJqyuQ//tQtH32EaLT4hhGhda44RdeclXLsG+KXG4pmCvxFYmACr8kfAUTkPMjKSnnwNsNaqGTM0UGJCCNEcpSsVHh4euHjxInbt2oWLFy+ipKQEM2bMwOTJk2Fubq6OMmpM/ewedmV3MerCCpnjymGGf82G4Ix1OE5ahuOGaXdJX3hlJZtM/XSxV0IIMSitOUYAtfMSMjIA51e3wPb6YdmDOnRgY1bDw9nwV1oAghBiAJSqVAiFQnTt2hV///03Jk+ejMmTJ6urXFpRP7tHVtv+KBdYw1xYjLv23XGlXQTiuHAcqhyM7PvmcHOQHVcrXsU6JEQ7r4EQQrSltccIMT7/adrYF8OBc4cBa2t20xfPjejYUdtFJIQQjVOqUiEQCFBRUaGusmhd/eweIr4Am8P34p6dLwot3VBUxNarmxoBfPFF06tYE0KIIWntMULGpEls3lz//qyLmhBCDJjSeR+ioqKwatUqVFdXq6M8WiXO7nHnTm022OvtQlBo6SbJ7uHnB8ydC6xdyxqjSkvZMhSlpezxa9dKrx9BCCGGpDXHCBnu7iwFLFUoCCFE+TkV586dw+HDhxEfH48ePXrAsl76uz179qiscKogXo21qKhIoePHj2djZS9fZhkAzc2B8nLg7l3A0REYN45lCxw1ig2ZPXoUePAAaNuWJfQwNmarlOoqoVCIsrIyFBUVQUCBUOXo+qofXWPVE98fG1u9WlH6FCOUjQ+tBX2GtIOuu3bQdW85RWOE0pUKOzs7jB8/vnml0oLi4mIAbPKgKvzzj0pOQwghOqe4uBi2LZxUrE8xQtXxgRBCWrOmYgSPU0XTlA4TiUTIzc2FtbU1eEouOtcaFRUVwcPDA7dv34aNvGVhSYvQ9VU/usaqx3EciouL4ebmBr4BrYZmqPGBPkPaQdddO+i6t5yiMULhngqRSIQ1a9bgzz//RFVVFUJCQrBs2TKdTxHI5/Ph7u6u7WLoHBsbG/pwqRFdX/Wja6xaLe2h0McYYejxgT5D2kHXXTvoureMIjFC4Sapzz77DB988AGsrKzQrl07bNiwAVFRUS0qICGEkNaBYgQhhBg2hSsV27dvx7fffou4uDjs27cPf/31F3755ReIRCJ1lo8QQogeoBhBCCGGTeFKRU5ODkaOHCn5PTQ0FDweD7m5uWopGFEPU1NTLFu2DKamptouSqtE11f96BrrJooR+oM+Q9pB11076LprjsITtY2MjJCXlwcnJyfJNmtra1y6dAnt27dXWwEJIYToPooRhBBi2BSeqM1xHKZOnSpV06uoqMCbb74plYdcl3KQE0II0QyKEYQQYtgUrlRERkbKbHv11VdVWhhCCCH6iWIEIYQYtla/TgUhhBBCCCFEvQxnlSNCCCGEEEKIWlClopU6duwYRo8eDTc3N/B4POzbt09qP8dx+Pjjj+Hq6gpzc3OEhobixo0b2imsHoqOjkZgYCCsra3Rtm1bjB07FmlpaVLHVFRUICoqCo6OjrCyssL48eNx//59LZVYv2zatAk9e/aULFYUFBSEAwcOSPbTtSWkaRQHtIPig3ZQ3NA+qlS0UqWlpejVqxc2btwod//q1avx1VdfYfPmzTh79iwsLS0RERGBiooKDZdUPyUlJSEqKgpnzpxBQkIChEIhwsPDUVpaKjlm3rx5+Ouvv7B7924kJSUhNzcX48aN02Kp9Ye7uzs+//xzpKSkIDk5GcHBwRgzZgz+++8/AHRtCVEExQHtoPigHRQ3dABHWj0A3N69eyW/i0QizsXFhVuzZo1kW0FBAWdqasrt2LFDCyXUfw8ePOAAcElJSRzHsespEAi43bt3S465du0aB4A7ffq0toqp1+zt7bkff/yRri0hzUBxQHsoPmgPxQ3Nop4KA5SVlYW8vDyEhoZKttna2qJ///44ffq0FkumvwoLCwEADg4OAICUlBQIhUKpa9y1a1d4enrSNVZSTU0Ndu7cidLSUgQFBdG1JUQFKA5oDsUHzaO4oR0Kp5QlrUdeXh4AwNnZWWq7s7OzZB9RnEgkwty5czFo0CB0794dALvGJiYmsLOzkzqWrrHiLl++jKCgIFRUVMDKygp79+6Fn58fUlNT6doS0kIUBzSD4oNmUdzQLqpUENJCUVFRuHLlCk6cOKHtorQqXbp0QWpqKgoLC/Hbb78hMjISSUlJ2i4WIYQojOKDZlHc0C4a/mSAXFxcAEAm68H9+/cl+4hiZs+ejb///huJiYlwd3eXbHdxcUFVVRUKCgqkjqdrrDgTExP4+PggICAA0dHR6NWrFzZs2EDXlhAVoDigfhQfNI/ihnZRpcIAtW/fHi4uLjh8+LBkW1FREc6ePYugoCAtlkx/cByH2bNnY+/evThy5Ajat28vtT8gIAACgUDqGqelpSEnJ4eucTOJRCJUVlbStSVEBSgOqA/FB91BcUOzaPhTK1VSUoKMjAzJ71lZWUhNTYWDgwM8PT0xd+5crFixAp06dUL79u2xdOlSuLm5YezYsdortB6JiopCbGws/vjjD1hbW0vGZNra2sLc3By2traYMWMG5s+fDwcHB9jY2GDOnDkICgrCgAEDtFx63bdkyRKMGDECnp6eKC4uRmxsLI4ePYq4uDi6toQoiOKAdlB80A6KGzpA2+mniHokJiZyAGR+IiMjOY5j6QSXLl3KOTs7c6amplxISAiXlpam3ULrEXnXFgAXExMjOaa8vJx7++23OXt7e87CwoJ74YUXuHv37mmv0Hpk+vTpnJeXF2diYsI5OTlxISEhXHx8vGQ/XVtCmkZxQDsoPmgHxQ3t43Ecx2myEkMIIYQQQghpXWhOBSGEEEIIIaRFqFJBCCGEEEIIaRGqVBBCCCGEEEJahCoVhBBCCCGEkBahSgUhhBBCCCGkRahSQQghhBBCCGkRqlQQQgghhBBCWoQqFYQQQgghhJAWoUoFIQoaNmwY5s6dq+1iyMXj8bBv3z6NPNeQIUMQGxurkeeS5/3338ecOXO09vyEECIPxQiGYoThokoFUdjUqVPB4/Hw5ptvyuyLiooCj8fD1KlTNV8wHTBs2DDweLwGf4YNG6bW57937x5GjBih1ucAgD///BP379/HK6+8Itnm7e0NHo+HnTt3yhzfrVs38Hg8bN26VeZ4Ho8HS0tL9OnTB7t371a4DAsXLsS2bdtw8+bNFr0WQohqUYxoGMUIihGGgCoVRCkeHh7YuXMnysvLJdsqKioQGxsLT09PLZZMMVVVVWo57549e3Dv3j3cu3cP//77LwDg0KFDkm179uxRy/OKubi4wNTUVK3PAQBfffUVpk2bBj5f+tbh4eGBmJgYqW1nzpxBXl4eLC0tZc7z6aef4t69e7hw4QICAwMxYcIEnDp1SqEytGnTBhEREdi0aVPzXwghRC0oRshHMYJihCGgSgVRSp8+feDh4SF1A9yzZw88PT3h7+8vdaxIJEJ0dDTat28Pc3Nz9OrVC7/99ptkf01NDWbMmCHZ36VLF2zYsEHqHEePHkW/fv1gaWkJOzs7DBo0CLdu3QLAWsXGjh0rdfzcuXOlWnyGDRuG2bNnY+7cuZIbDQBcuXIFI0aMgJWVFZydnfHaa6/h0aNHkseVlpZiypQpsLKygqurK9auXdvodXFwcICLiwtcXFzg5OQEAHB0dJRsu3r1KgYPHgxzc3N4eHjgnXfeQWlpqeTx3t7eWLlyJaZPnw5ra2t4enri+++/l+yvqqrC7Nmz4erqCjMzM3h5eSE6Olqyv37X9uXLlxEcHAxzc3M4Ojpi1qxZKCkpkewXX7svvvgCrq6ucHR0RFRUFIRCYYOv8eHDhzhy5AhGjx4ts2/y5MlISkrC7du3Jdu2bNmCyZMnw9jYWOZ4a2truLi4oHPnzti4cSPMzc3x119/KfSeAIDRo0fLbfUihGgXxQj5KEZQjDAEVKkgSps+fbpUi8OWLVswbdo0meOio6Oxfft2bN68Gf/99x/mzZuHV199FUlJSQBYQHF3d8fu3btx9epVfPzxx/jggw/w66+/AgCqq6sxduxYDB06FJcuXcLp06cxa9Ys8Hg8pcq7bds2mJiY4OTJk9i8eTMKCgoQHBwMf39/JCcn4+DBg7h//z5efvllyWMWLVqEpKQk/PHHH4iPj8fRo0dx/vz55lwuZGZmYvjw4Rg/fjwuXbqEXbt24cSJE5g9e7bUcWvXrkXfvn1x4cIFvP3223jrrbeQlpYGgLX+/Pnnn/j111+RlpaGX375Bd7e3nKfr7S0FBEREbC3t8e5c+ewe/duHDp0SOb5EhMTkZmZicTERGzbtg1bt26V6oKu78SJE7CwsICvr6/MPmdnZ0RERGDbtm0AgLKyMuzatQvTp09v8voYGxtDIBCgqqqqyfeEWL9+/XDnzh1kZ2c3eX5CiGZRjFAOxYjGUYzQIxwhCoqMjOTGjBnDPXjwgDM1NeWys7O57OxszszMjHv48CE3ZswYLjIykuM4jquoqOAsLCy4U6dOSZ1jxowZ3MSJExt8jqioKG78+PEcx3Hc48ePOQDc0aNHGy1PXe+++y43dOhQye9Dhw7l/P39pY5Zvnw5Fx4eLrXt9u3bHAAuLS2NKy4u5kxMTLhff/1Vsv/x48ecubk59+677zZYdrGsrCwOAHfhwgWO49hrnjVrltQxx48f5/h8PldeXs5xHMd5eXlxr776qmS/SCTi2rZty23atInjOI6bM2cOFxwczIlEIrnPCYDbu3cvx3Ec9/3333P29vZcSUmJZP8///zD8fl8Li8vj+M4du28vLy46upqyTEvvfQSN2HChAZf1/r167kOHTrIbPfy8uLWr1/P7du3j+vYsSMnEom4bdu2Sa67ra0tFxMTI3M8x3FcZWUlt3LlSg4A9/fff8t93rrvCbHCwsJG3xuEEM2jGEExgmKEYZPtcyKkCU5OThg1ahS2bt0KjuMwatQotGnTRuqYjIwMlJWVISwsTGp7VVWVVBf4xo0bsWXLFuTk5KC8vBxVVVXo3bs3ANZdPHXqVERERCAsLAyhoaF4+eWX4erqqlR5AwICpH6/ePEiEhMTYWVlJXNsZmampBz9+/eXbHdwcECXLl2Uet66z3fp0iX88ssvkm0cx0EkEiErK0vSqtOzZ0/Jfh6PBxcXFzx48AAA64oOCwtDly5dMHz4cDz33HMIDw+X+3zXrl1Dr169pMapDho0CCKRCGlpaXB2dgbAJsgZGRlJjnF1dcXly5cbfB3l5eUwMzNrcP+oUaPwxhtv4NixY9iyZUujLVDvvfcePvroI1RUVMDKygqff/45Ro0aBaDx94SYubk5ANbaRQjRLRQjlEMxQhbFCP1ElQrSLNOnT5d0lW7cuFFmv3hs5j///IN27dpJ7RNPFtu5cycWLlyItWvXIigoCNbW1lizZg3Onj0rOTYmJgbvvPMODh48iF27duGjjz5CQkICBgwYAD6fD47jpM4tb7xn/UlgJSUlGD16NFatWiVzrKurKzIyMhS5BAorKSnBG2+8gXfeeUdmX92JiwKBQGofj8eDSCQCwMYpZ2Vl4cCBAzh06BBefvllhIaGSo0/VlZjzydPmzZtkJ+f3+B+Y2NjvPbaa1i2bBnOnj2LvXv3NnjsokWLMHXqVMl4ZfFwBUXeEwDw5MkTAJCMTSaE6BaKEYqjGCGLYoR+okoFaZbhw4ejqqoKPB5PMrGtLj8/P5iamiInJwdDhw6Ve46TJ09i4MCBePvttyXbMjMzZY7z9/eHv78/lixZgqCgIMTGxmLAgAFwcnLClStXpI5NTU2VuRHW16dPH/z+++/w9vaWO0GsY8eOEAgEOHv2rOSGnp+fj/T09AZfS1PPd/XqVfj4+Cj92LpsbGwwYcIETJgwAS+++CKGDx+OJ0+ewMHBQeo4X19fbN26FaWlpZJgefLkSfD5/Ga3pAHs75CXl4f8/HzY29vLPWb69On44osvMGHChAaPAVjwkXc9FH1PXLlyBQKBAN26dWvGKyGEqBvFCMVRjJBFMUI/0URt0ixGRka4du0arl69KtU9KmZtbY2FCxdi3rx52LZtGzIzM3H+/Hl8/fXXkolanTp1QnJyMuLi4pCeno6lS5fi3LlzknNkZWVhyZIlOH36NG7duoX4+HjcuHFD0hUcHByM5ORkbN++HTdu3MCyZctkAog8UVFRePLkCSZOnIhz584hMzMTcXFxmDZtGmpqamBlZYUZM2Zg0aJFOHLkCK5cuYKpU6fKpMhT1HvvvYdTp05h9uzZSE1NxY0bN/DHH3/ITIprzLp167Bjxw5cv34d6enp2L17N1xcXGBnZydz7OTJk2FmZobIyEhcuXIFiYmJmDNnDl577TVJt3Zz+Pv7o02bNjh58mSDx/j6+uLRo0cyqQMV1dR7Quz48eOSTCmEEN1DMUJxFCMURzFCt1GlgjSbjY0NbGxsGty/fPlyLF26FNHR0fD19cXw4cPxzz//oH379gCAN954A+PGjcOECRPQv39/PH78WKr1wcLCAtevX8f48ePRuXNnzJo1C1FRUXjjjTcAABEREVi6dCkWL16MwMBAFBcXY8qUKU2W283NDSdPnkRNTQ3Cw8PRo0cPzJ07F3Z2dpKgsGbNGgwePBijR49GaGgonnnmGZlxt4rq2bMnkpKSkJ6ejsGDB8Pf3x8ff/wx3NzcFD6HtbU1Vq9ejb59+yIwMBDZ2dnYv3+/3CBmYWGBuLg4PHnyBIGBgXjxxRcREhKCb775plnlFzMyMsK0adOkxv3K4+jo2OwbeVPvCbGdO3di5syZzXoOQohmUIxQDMUIxVGM0G08rv6AQ0IIaUBeXh66deuG8+fPw8vLSytlOHDgABYsWIBLly7JHZpACCFEOyhGGDbqqSCEKMzFxQU//fQTcnJytFaG0tJSxMTEULAghBAdQzHCsFFPBSGEEEIIIaRFqKeCEEIIIYQQ0iJUqSCEEEIIIYS0CFUqCCGEEEIIIS1ClQpCCCGEEEJIi1ClghBCCCGEENIiVKkghBBCCCGEtAhVKgghhBBCCCEtQpUKQgghhBBCSItQpYIQQgghhBDSIlSpIIQQQgghhLQIVSoIIYQQQgghLUKVCkIIIYQQQkiLUKWCEEIIIYQQ0iJUqSCEEEIIIYS0CFUqCFHC1KlT4e3trfHn/d///gcej6fw8SNHjsTMmTPVWCJZypaxrs2bN8PT0xOVlZUqLhUhhGgHxYvmo5ign6hSQdTi8uXLePHFF+Hl5QUzMzO0a9cOYWFh+Prrr6WO8/b2Bo/HQ2hoqNzz/PDDD+DxeODxeEhOTkZ2drbk96Z+srOzGyyf+JjXX39d7v4PP/xQcsyjR4+afR204eTJk4iPj8d7770HoPYaN/WzdetWrZV56tSpqKqqwnfffae1MhBCtIPihfZoO16sXLkS+/btk9lOMUE/8TiO47RdCPL/7d13eFRV+sDx70x6J6EFSKH3KiCGLmmAiyBYQQlF8aeAAlZsiKKsINZlcS0guoCIFFcFkwChd6QaOqF3EhLSy9zfH4eZZMgEJsmkv5/nmSfk3jN3zhwm953TK5ctW7Zw//33ExAQQEREBL6+vpw9e5Zt27Zx4sQJjh8/bkpbv359Ll++TGZmJufPn8fX19fsWr1792b79u2kp6ezc+dOWrRowfLly83SzJo1i3PnzvHpp5+aHX/ooYdwc3OzmEedToezszPOzs5cvnwZR0dHs/MNGzbk4sWLpKenc/XqVWrUqAFAVlYWBoMBJyenIpdPUbz77rtMnToVa/5cBw0aRFpaGpGRkQCsWLGC5ORk0/mVK1eyaNEiPv30U9P7AujatSsNGzYsch6zs7PJzs7G2dm5SM9/7bXXWLx4MXFxcUXu8RBCVCwSL2yvIsQLI3d3dx5++GGLlRSJCRWQJoSN9e/fX6tZs6aWkJCQ79zly5fNfg8MDNSCg4M1T09P7bPPPjM7d/bsWU2v12tDhgzRAG3nzp0WX++BBx7QAgMDC5VHQBs0aJCm1+u1FStWmJ3bvHmzBphe9+rVq4W6dkmYMmWKZs2f6+XLlzV7e3vt22+/LTDNzJkzNUCLi4u747WSk5MLm81i2bVrlwZoa9asKdXXFUKUHYkXtlcW8aKo3NzctIiICIvnJCZUPDL8SdjciRMnaNWqFdWqVct3rlatWvmOOTs7M3jwYBYuXGh2fNGiRXh7exMeHl4i+axXrx49e/bM97oLFiygTZs2tG7dOt9zbh8jO2XKFPR6PWvWrDFLN2bMGBwdHdm3b5/p2Pbt2+nbty9eXl64urrSq1cvNm/enO81Nm3aROfOnXF2dqZRo0aF6v79448/yM7OLnB4QEFGjBiBu7s7J06coH///nh4eDBs2DAANm7cyCOPPEJAQABOTk74+/szceJE0tLSzK5haRyvTqdj3LhxrFixgtatW+Pk5ESrVq34888/8+WhY8eO+Pj48OuvvxYq70KIikviRcWLFwD//e9/6dixIy4uLvj4+PD4449z9uxZszTHjh1jyJAh+Pr64uzsjJ+fH48//jiJiYmAig8pKSnMnz/fNKxqxIgRpudLTKh4pFIhbC4wMJDdu3dz8OBBq58zdOhQduzYwYkTJ0zHFi5cyMMPP4yDg0NJZNP0ur/99pupuzc7O5slS5YwdOhQq57/1ltv0b59e0aPHs3NmzcBiIyM5JtvvuGdd96hXbt2AKxdu5aePXuSlJTElClT+PDDD7lx4wZ9+vRhx44dpusdOHCAsLAwrly5wrvvvsvIkSOZMmVKvi78gmzZsoXq1asTGBhYmGIA1HsPDw+nVq1afPzxxwwZMgSAJUuWkJqaynPPPceXX35JeHg4X375JcOHD7fqups2beL555/n8ccfZ8aMGaSnpzNkyBCuX7+eL+0999xjMXAKISoniRcVL1588MEHDB8+nCZNmvDJJ58wYcIE1qxZQ8+ePblx4wYAmZmZhIeHs23bNsaPH8/s2bMZM2YMJ0+eNKX58ccfcXJyokePHvz444/8+OOPPPvss2avJTGhginrrhJR+URFRWl2dnaanZ2dFhQUpL366qtaZGSklpmZmS9tYGCg9sADD2jZ2dmar6+v9v7772uapmmxsbEaoK1fv16bN29eiXRnjx07VouPj9ccHR21H3/8UdM0Tfvjjz80nU6nnTp1ytSFnLc7OyIiIt9rHThwQHN0dNSefvppLSEhQatXr57WqVMnLSsrS9M0TTMYDFqTJk208PBwzWAwmJ6XmpqqNWjQQAsNDTUdGzRokObs7KydPn3adCw2Nlazs7Ozqju7e/fuWseOHe+YxlJ3dkREhAZor7/+er70qamp+Y5Nnz5d0+l0Zvm01OUOaI6Ojtrx48dNx/bt26cB2pdffpnvumPGjNFcXFzumH8hROUh8aJixYtTp05pdnZ22gcffJDvfdnb25uO79mzRwO0JUuW3PH6dxr+pGkSEyoa6akQNhcaGsrWrVt58MEH2bdvHzNmzCA8PJx69erxv//9z+Jz7OzsePTRR1m0aBGgupT9/f3p0aNHiebV29ubvn37ml534cKFdO3atVAtN61bt2bq1Kl8++23hIeHc+3aNebPn4+9vT0Ae/fu5dixYwwdOpTr169z7do1rl27RkpKCsHBwWzYsAGDwUBOTg6RkZEMGjSIgIAA0/VbtGhhdZf+9evX8fb2LkQJmHvuuefyHXNxcTH9OyUlhWvXrtG1a1c0TWPPnj13vWZISAiNGjUy/d62bVs8PT05efJkvrTe3t6kpaWRmppaxHcghKhIJF5UrHixbNkyDAYDjz76qClv165dw9fXlyZNmhATEwOAl5cXoHpiinM/l5hQsUilQpSIzp07s2zZMhISEtixYweTJ0/m5s2bPPzww8TGxlp8ztChQ4mNjWXfvn0sXLiQxx9/vFRWfBg6dCjR0dGcOXOGFStWWN2Vndcrr7xCu3bt2LFjB1OmTKFly5amc8eOHQMgIiKCmjVrmj2+/fZbMjIySExM5OrVq6SlpdGkSZN812/WrJnVedGKuKCbvb09fn5++Y6fOXOGESNG4OPjg7u7OzVr1qRXr14AprGxd5I34Bl5e3uTkJCQ77gx77LShxBVh8SLihMvjh07hqZpNGnSJF/+Dh06xJUrVwBo0KABkyZN4ttvv6VGjRqEh4cze/Zsq2KGpfxJTKgY7Ms6A6Jyc3R0pHPnznTu3JmmTZsycuRIlixZwpQpU/Kl7dKlC40aNWLChAnExcUV6WZdFA8++CBOTk5ERESQkZHBo48+WuhrnDx50hQMDhw4YHbOYDAAMHPmTNq3b2/x+e7u7jbZ5Kd69eoWv6xbw8nJCb3evJ0hJyeH0NBQ4uPjee2112jevDlubm6cP3+eESNGmN7bndjZ2Vk8bimYJSQk4OrqatY7IoSoGiRelP94YTAY0Ol0rFq1yuK93d3d3fTvWbNmMWLECH799VeioqJ44YUXmD59Otu2bbPYgGWJxISKRSoVotR06tQJgIsXLxaY5oknnmDatGm0aNGiwBuqrbm4uDBo0CD++9//0q9fP7O1uK1hMBgYMWIEnp6eTJgwgQ8//JCHH36YwYMHA5iG/nh6et5xlY2aNWvi4uJiCjZ5HTlyxKq8NG/enKVLlxYq/3dy4MABjh49yvz5880mZkdHR9vsNfKKi4ujRYsWJXJtIUTFIfGifMaLRo0aoWkaDRo0oGnTpndN36ZNG9q0acNbb73Fli1b6NatG1999RXTpk0D7t4DITGhYpHhT8LmYmJiLLZCr1y5Erhz1+zTTz/NlClTmDVrVonlz5KXX36ZKVOm8Pbbbxf6uZ988glbtmzh66+/5v3336dr164899xzpp1VO3bsSKNGjfj444/NNhUyunr1KqBa9MPDw1mxYgVnzpwxnT906JBpY6K7CQoKIiEhweJ8haIwtkTl/f/UNI3PP//cJte/3V9//UXXrl1L5NpCiPJH4kXFiheDBw/Gzs7O4uZ6mqaZVvVLSkoiOzvb7HybNm3Q6/VmvSxubm6m1aAskZhQsUhPhbC58ePHk5qaykMPPUTz5s3JzMxky5YtLF68mPr16zNy5MgCnxsYGMi7775bepm9pV27dqbl/Arj0KFDvP3224wYMYIBAwYA8P3339O+fXuef/55fv75Z/R6Pd9++y39+vWjVatWjBw5knr16nH+/HliYmLw9PTkt99+A2Dq1Kn8+eef9OjRg+eff57s7Gy+/PJLWrVqxf79+++anwceeAB7e3tWr17NmDFjCv1+bte8eXMaNWrEyy+/zPnz5/H09GTp0qVFHmJ1J7t37yY+Pp6BAwfa/NpCiPJJ4kXFiheNGjVi2rRpTJ48mVOnTjFo0CA8PDyIi4tj+fLljBkzhpdffpm1a9cybtw4HnnkEZo2bUp2djY//vgjdnZ2puXKQVWiVq9ezSeffELdunVp0KABXbp0ASQmVEhlseSUqNxWrVqljRo1SmvevLnm7u6uOTo6ao0bN9bGjx9vcYfUBx544I7XK8klAu/kbksEZmdna507d9b8/Py0GzdumD33888/1wBt8eLFpmN79uzRBg8erFWvXl1zcnLSAgMDtUcffTTfbqHr16/XOnbsqDk6OmoNGzbUvvrqK6t3SNU0TXvwwQe14ODgAs8XtKSsm5ubxfSxsbFaSEiI5u7urtWoUUN75plnTMvCzps3z5SuoCVlLZVzYGBgvmUEX3vtNS0gIMBsGUUhROUm8aLixQtN07SlS5dq3bt319zc3DQ3NzetefPm2tixY7UjR45omqZpJ0+e1EaNGqU1atRIc3Z21nx8fLT7779fW716tdl1Dh8+rPXs2VNzcXHRALO4IDGh4tFpWhGXihFClEsbN26kd+/eHD582OLKIOVRRkYG9evX5/XXX+fFF18s6+wIIUSVUF7jhcSEiknmVAhRyfTo0YOwsDBmzJhR1lmx2rx583BwcOD//u//yjorQghRZZTXeCExoWIqVE/FjRs3WL58ORs3buT06dOkpqZSs2ZNOnToQHh4uEymEUKIKkxihBBCVF1W9VRcuHCBp59+mjp16jBt2jTS0tJo3749wcHB+Pn5ERMTQ2hoKC1btmTx4sUlnWchhBDliMQIIYQQVq3+1KFDByIiIti9e7fZzo95paWlsWLFCj777DPOnj3Lyy+/bNOMCiGEKJ8kRgghhLBq+NP169epXr261RctbHohhBAVl8QIIYQQsvqTEEIIIYQQoliKvPldbGwsZ86cITMz0+z4gw8+WOxMCSGEqNgkRgghRNVS6ErFyZMneeihhzhw4AA6nc60TbtOpwMgJyfHtjksJoPBwIULF/Dw8DDlUQghRC5N07h58yZ169ZFry/eSuMVKUZIfBBCiLuzOkYUdre8f/zjH9rAgQO1q1evau7u7lpsbKy2ceNG7d5779U2bNhgq035bObs2bMaIA95yEMe8rjL4+zZs8W+51akGCHxQR7ykIc8rH/cLUYUuqdi69atrF27lho1aqDX69Hr9XTv3p3p06fzwgsvsGfPnsJeskR5eHgAcPbsWTw9Pcs4N2UvKyuLqKgowsLCcHBwKOvsVDpSviVPyjjXvn3w0Udw/TrUqweurpCaCufPQ/Xq8Npr0K7d3a+TlJSEv7+/6X5ZHBUpRlTV+CB/Q2VDyr1slGa5Gwxw8iQkJoKXFzRsCMXs/C0XrI0Rha5U5OTkmC5ao0YNLly4QLNmzQgMDOTIkSNFy20JMnZpe3p6VqmgUZCsrCxcXV3x9PSUm1oJkPIteVLGisEAS5eq4NW2VQ71r+/mkl0zXKp74eMDhw7BsmXQrZv1Qc0WQ4AqUoyoqvFB/obKhpR72Sitct+zB+bPV/fe9HRwdoYWLSAiAjp0KLGXtc7Vq3DmDHTsWKzL3C1GFLr+1Lp1a/bt2wdAly5dmDFjBps3b+a9996jYcOGRculEEKIQjl+XAWvrm77mPXfWkxe0YXWZ1YBoNOBnx/Exqp0pUlihBCiqtmzB957D3bvBh8faNJE/dy9Wx0v0w7azz6DWrVg6NASf6lCVyreeustDAYDAO+99x5xcXH06NGDlStX8sUXX9g8g0IIIYCUFFi5ErZuBVQPRXo63PRtglN2CgAtz0WZkru6qvOJiaWbTYkRQoiqxGBQPRTXrqmeCU9PsLNTP1u0UMd/+EGlKzGaBgcOwCefqB6JvNq2VT+PHs1/zsYKPfypd+/eZGdnA9C4cWMOHz5MfHw83t7esnqGEELYisEA+/dDVBRERsKmTZCZCY88AkFBeHmp7vWEDFf2BT6ITjMQ6x9uenpqqjrv5VW62ZYYIYSoSoy9xn5+qpc4r9t7jZs2teELX74M0dG5j4sX1XEXF3juudx03bpBUBD07KlqOyXI6krF1atXGT58OKtXr8ZgMNC5c2f++9//0rhxY3x8fEoyj0IIUSEZDCqQGCftNW58l/kNly+rSkRUlAoSly/nT7N6NeTk0LixHS1aqO71r4N/NgtmmgbnzkGnTuo1S4PECCFEVWTsNXZzs3ze1RUuXLBBr3FammpcMsaHW8NM84mONq9UODnBli3FfHHrWF2peO2119i7dy/vvfcezs7O/Oc//+GZZ54hJiamJPMnhBAVUqEn7X3/PYwcWfAF69eH8HAICwODAb2DHRERcPp0biuZcfWnc+egRg0YPrz0Vh6RGCGEqIqMvcYpKWrI0+1s1ms8dCisWGH5nKsr9O4NoaHQt28xX6jorK5UREdH8/333xMerrrX//GPf9CiRQsyMjJwcnIqsQwKIURFY5y0d+2a+rLv5qYCzu5dGjkHDvFahyj8RoZCq1a5T+rUyfwi7u5w//25FYnGjfP1rXfoAO+8k1t5uXBBBa9OnVSFojRXHJEYIYSoiho3xtRr3KIFxes1vnhR9TTExMDXX0Pe1aruvz+3UqHTqZWcQkNVfAgKUj0SZczqSsWFCxdol2fB8yZNmuDk5MTFixepX79+SeRNCCHKrexsWLMGLl0CX18IDgZ7+/yT9twzrtPi1GpanIui5bkofFLOwVowuL+LPm+lolUr6NdP1QTCw+G++8DR8a756NBB7UVRqGFWJUBihBCiKtLrKXqvcWoqbNyYO+z14MHcc6NGQY8eub/366fm2YWFQZ8+6sLlTKEmatvdNsHDzs4OTdNsmiEhhCjvFi2CGTPg7FnIylKNSf7+8Oqr0LFtFnZbtjExJYoOKyIJvLoLPfnvkxn/i8Ll3Sm5B3Q6tbpTEej1Np4AWEQSI4QQVZHVvcaaBnv3qt6IqChVocjMtHzR6GjzSkWTJvDttyX9VorF6kqFpmk0bdrUbPWO5ORkOnTogD5P9Ss+Pt62ORRCiFJ2pwnWixbBSy9BcjJ4e6se54wMOHFCHf/Nbzyzdv7H4nUz7Zw54tuLDU5h9Hw1nDal+J5KmsQIIURVZnWv8ZAhEBeX/wI6naqFhIWpx333lUq+bcnqSsW8efNKMh9CCFEu3GmCdZs2qodCfzOR4Z5r6Z4Uxac1PyTJ1RsXF9U6teDC/XQkt1Jx1qcth/zCiPUL45hvD+JTnYmPh9B7yvBNlgCJEUKIqk6vh6b1UuD4elh4a5nXn37KTaDTqXkQX3+tfg8MVBWI0FA1pKl69bLJuI1YXamIiIgoyXwIIUSZK2iC9Z5dOTju2UWmRxRzDkbSKXsb9sk5AGxxDSHacwg6neq5+C0pmIF+Q9noEk7ivaEkudUxXb8slnotLRIjhBBVksGggodxXsTmzWpcLKhKxJdfQs2auekjItSGdAUswFGRFXrzOyGEqIxun2Dtk3KWlsciaXkuihbnV+OWkWDxed1So4j2HAKooVCXDTVY/8wC9uyBa6fLfqlXIYQQNpacDD//rCoRq1fD9euW0+l0almovMu8du2qHpWQ1ZWKhg0bWpXu5MmTRc6MEEKUldt3RX02+mEaXN1hOa19M7Z4hLPFLYydrr1MxzMy1KTtLl1gwIDysdRraZEYIYSotDTNvEchJwfGjFE/b5Pp14AbncPIvj8U36F90Ff3LsWMli2rKxWnTp0iMDCQoUOHUqtWrZLMkxBClDyDQe1IGhUFf/1F4ks/kZ6uM+2KGusXZqpUpDhW41DdENbah7EqJ4zd1wKpWyv/euQJCao327i8bHlY6rW0SIwQQlQaOTmqh8G4StPtKy95eamJ1Js3qx3vgoM52zyUeefDiDrRiNRT4LoYOh6HESMqZ0OSJVZXKhYvXszcuXP55JNP6NevH6NGjaJ///5mq3oIIUS5dulS7rjX6Gi4csV0qsaIqTg7NzftivpXgyEY9Pb87RfO6ZqduJFsT3w8DAiHIx+r3oe8qz8lJKj96l55RVUooPws9VoabB0j5syZw5w5czh16hQArVq14p133qFfv34ApKen89JLL/HTTz+RkZFBeHg4//73v6ldu7at3pIQooIzruQH6mezZndo2Dl9Ojc2rF6tbupGx47l76344APVNX3vvew5YM+kSXD0qHpNo7g4tbXEJ59UjYqF1Xf7Rx55hFWrVnH8+HE6duzIxIkT8ff35/XXX+fYsWMlmUchhCianBwVHF59VXUb1KmjJsktWGBWoQAIPLORFi3UvAdNg3M12vN7xynE1b6PHJ09585By5YwYQLMmgWNGqlJ3Jcvq5+NG6vjTzxRNm+1rNk6Rvj5+fHPf/6T3bt3s2vXLvr06cPAgQP5+++/AZg4cSK//fYbS5YsYf369Vy4cIHBgwfb+m0JISqoPXtg0iTV0APq56RJ6rjJkSMwfryqbdSvr4Y0LVliXqEANTHu8mXzY716QdeuGPT2zJypKg85OSqpp6f6mZOjjn/8sXllo7IqdBNSvXr1ePPNNzl27BgLFy5k+/btNG/enITb/wOsMGfOHNq2bYunpyeenp4EBQWxatUq0/n09HTGjh1L9erVcXd3Z8iQIVy+/T9VCCEKomlqTXDjHT8vd3d48EH417/g2DH0Y54mIkJNpD50CJKS1K7ZSUnq97wTrJ94AnbuVHWTL75QP3fsqLoVirxsFSMGDBhA//79adKkCU2bNuWDDz7A3d2dbdu2kZiYyHfffccnn3xCnz596NixI/PmzWPLli1s27athN6ZEKKiMK7kt3u36lEGqO6VzcEdqbz3Xp6KRVKSigFHj5pfoFo1FTu++kptQnT8OPj6Wnyto0fVKCi9Xj3N0VH929FR/a7Xw6ZN+V+iMirS6k/p6en88ssvzJ07l+3bt/PII4/g6upa6OsYW6KaNGmCpmnMnz+fgQMHsmfPHlq1asXEiRP5448/WLJkCV5eXowbN47BgwezefPmomRbCFEZXb+ueiOiolQlYu7c3HP29mqCw/Llqtu6Y0cID1dL+QUFqa7rPKzeFfXWpcPDS+k9VjC2ihFGOTk5LFmyhJSUFIKCgti9ezdZWVmEhISY0jRv3pyAgAC2bt3KfRVw0yghhG3kXcmve7042p5dReeP/kvoXyNY1W4yn117lR9+UJ3X+nvuUbWOmzfVHAnjxnMdO+aOY72LgwdV3cTbO//qsDodeHiojo+DB6F58xJ4w+VIoSoV27dv57vvvuPnn3+mYcOGjBo1iqVLl+LtXbSZ7QMGDDD7/YMPPmDOnDls27YNPz8/vvvuOxYuXEifPn0AtblSixYt2LZtmwQNISqZzEz48Uc4cwYCAuCpp1RLTz5ZWVT/+2/027bBmjWwa5eqTAC4uMC//61qAkbjx8Ojj0JIiOpuuAurd0UV+dg6Rhw4cICgoCDS09Nxd3dn+fLltGzZkr179+Lo6Ei1atXM0teuXZtLly4VeL2MjAwyMjJMvyclJQGQlZVFlnFd+SrA+F6r0nsuD6TcS0FiIpcWrSN0+WpeT1iD76bjZqdbXYikfu+JHDumRj41bgy6lSvRmjRRY5aMNC13rwkrODurh8WYRW5Iqqj/9dZ+Zq2uVLRq1YorV64wdOhQ1q9fT7t27YqcOUts1RIlQePO5KZWsqR8i+aTT1QPdFKSamXS6+Hdd2HcODUGlvh49IsXo4uOxn7dOronJ1u8jgZk799v3qXQvXvuvwvx/9KgQe6/c3IsrhxYadji81oSMaJZs2bs3buXxMREfvnlFyIiIli/fn2Rrzd9+nSmTp2a73hUVFSxelIqqujo6LLOQpUk5W57dbZupdGvv+J99Cj+BgP+FtJkurvj1tjAw0P+AJ2Oo0fzDEkqxtB6Bwc1SsoaK1cW+WXKVGpqqlXpdJpmbOK7M71ej5ubG/b29ujusPtffHy8dTm85faWqIULF9K/f38WLlzIyJEjzSoIAPfeey/3338/H330kcXrvfvuuxaDxsKFC6tk0BCiQrptlQ2Xy5cJe/ZZi0kT69fnSvv2XO3QgestWmAoqKlIFCg1NZWhQ4eSmJiIZ97WukIoqRiRV0hICI0aNeKxxx4jODiYhIQEs96KwMBAJkyYwMSJEy0+31Kjk7+/P9euXSvy+66IsrKyiI6OJjQ0FIfbhgCKklPVy33/fli4UPUQZGSolfOaNYOhQ9UG01Y7cQLq1lU907fofvgB+6efNkuWrbPnZJ2uHA24H48h7iw79SzZmjNJSWo40syZqqeiuAwGeOYZ1XHu4ABubmrkVHa2WsQjK0t1lH/9ddn1eBsMcPKkarjz9ISGDQuXl6SkJGrUqHHXGGF1T8W8efOsf/VCsHVL1OTJk5k0aZLpd2PQCAsLq1JBoyBV/aZW0qR88/vlF/j8c7WqUlaWuun6+cGLL6p50s2bQ2J8Dt2cdnN/VhS9M1az3bEb09w+ICUFfHzU/Abt44/RHTuGVqMG51q1otawYejDw3GtU4f6QP0yfp8VmbFHtzhKKkbkZTAYyMjIoGPHjjg4OLBmzRqGDFG7mR85coQzZ84QFBRU4POdnJxwcnLKd9zBwaFK/r1W1fdd1qpiue/ZA9OmqXkOfn5qznNKilrg4uRJNZetwCVXExJg7drcPSPi4uD33+GBB3LTGHesbt4cLTSMb06F8svVXtRv44GDQxZhTVaSHedMVpYDp06peXJ3XF62kCZOhLNnVc9HfHxuu5hxWfEJE1Qlqizs2ZM7TzA9XQ3FatFCLYRo7TK31n5era5UREREWJu0UBwdHWl8q6rYsWNHdu7cyeeff85jjz1GZmYmN27cMGuJunz5Mr4FzMAHCRrWkvIoWVK+yqJF8NJLkJysJrG5uqoWqthY+GTCGTL/HcVn5yO5X1uDT2ru6kBuOTd5x2EGmqa2lvjpJxg9ezbUqEF2y5b89eef9O/fX8rYRmxRjraOEZMnT6Zfv34EBARw8+ZNFi5cyLp164iMjMTLy4vRo0czadIkfHx88PT0ZPz48QQFBcl8OyHKmbwTp1u0yO2E9vRUvx86RO7EaT0YMrI4t3Q7djHR+OyKwnn/DnS3r8caHW1eqahXD86fh7p10QGd98Cq99S169dXSZKS4NQp85X8bKVDBzWM9/vv1YpTKSmqx6JTp8J9ebc14ypYxsqcm5vK2+7daluOO1bmisCqSoWmaXfszral4rZECSFKV0ETrLOzYcYMVaGoW1cFkiYZB3n45jd0z4ik4c0jcMXyNe3IxkVLJcfOlYwMdW1Gh6qTMl+l3CmJGHHlyhWGDx/OxYsX8fLyom3btkRGRhIaqj4Hn376KXq9niFDhphtfieEKF+OH1df7v38LK+O5OenGpqOH4dq77+E58/fEJB50/LFHBzUPDlL46Xq1jX9M+9KfsbN7xISLK/kZyvlbZGPwlbmbMGqSoVxJ9PBgwfjeIfxyseOHeOTTz4hMDCQ119//a7XlZYoISq26dNV60xiYu4E69dfV5Or72lv4OKZHLy9HUw3szpZZxie8EW+68TjzXqHEGLsw4hxCOOcPgBQk6P1elVZEeVXScSI77777o7nnZ2dmT17NrNnzy5SnoUQpSMxUQ27cXPLPeaaHk+jy1s4EPgPXF3V8t07doD7Nh2DbqtQxLm25ECdMFpNCKPRyJ7mF7oD45f8I0fUsKSZM2075MkS43Cn8iBvZQ7U/0Nmpmr08/Q0r8zZKs9WVSq+/PJLXnvtNZ5//nlCQ0Pp1KkTdevWxdnZmYSEBGJjY9m0aRN///0348aN47nnnrPqxaUlSojy7U7LvE6fDlOnqo4DZ2ews4Oa2RfpcT2a+m9F0cUhmod0H7Gm+gjT9Xa69iITB/QY2Od8H6u0cNbow9iU3glXFzuzm73BoAJR9erqdUX5VVIxQghR8Xl5gbtjJv5x2+gUH0WzM1E0jN+FHo3Jj8dxivo4OakRTdWdwujj/AOH/EI5VC+UQ36hJLjW49Ah6HQCZrkUbtdmvV71Fhw9WvWWBjdW5tLS1B4ZN26oEQT29mpTvkaN1PnERNu9plWViuDgYHbt2sWmTZtYvHgxCxYs4PTp06SlpVGjRg06dOjA8OHDGTZsWKHWI5eWKCHKrzv1Qrz0kjqnz0xngMtGgnOiuD89itaGW7tWa0AGhDhGsjJjBMaF19L0bowOWM1hp3ZcyfAiJQUGDICti9QwKWPlJCdH3ewcHNQEOFnQqXwrqRghhKigNE11EURH0yQyimXrY3DKSsmXzGlDNIdrPUO7dqq3IqtVMK92vYSmy/32r6NkWtUrOy8v1TC4a5eKqW5u6pGdrYZEJSSAv79KZyuF2vyue/fudM+75rsQolKy1AuRk6NWtZg6FfQrlvHf61/TU1uPS2q6xWsk4UGWgysJCWrlP+MQqF2uPdE0dUNr3Bi++UYFCWMFJiNDVWCqV1cVismTS/GNi2KRGCGEwGCAVq3g8GFAVQpuXz7niGNrNjiFseZGRy5rKhbExYGrhx2ahelZxiFStmxVr+waNlSNc0lJufMaQTXWeXmp8szIUOlspVCVCiFE5ZeZqb7gZ2WBuzvU4Bo3dN7Y2dlhb696FJL2nCBcizR7ngEde+w6sdY+nNX6MNZn3McD4Q64b1U3L29vtaReRoaqULi7wyuvqK7YyZNV74dVO2oLIYQoe5mZsGWLWi/8ySdzj+v1asmlW5UKgJsutdjgHMpm1zCiDCGc1+pib6++3NZ2UD0QTk5qZSJLq/+npqoGLlu2qld2J0+qMvP0VEOfbt8/w9NTlfnJk6U8p0IIUXUsmJdJ24SthOujCEmJon3ObkLct7PHvjN6vbpJrUwL4wNe5byuHmsdwomxD2OdfQgJ+uqAijUGO+jfHx5+WK0CdfasurE5OKhWqVdegSeeyH1dR0cYPbps3rMQQoi70DRVUYiKUo/163O/nT7+uPrGajRggOreDgvjVNNQ/u9fbfCursfDAxonQUCeCcM3b6qGpzp11BfcvCsVGV/23Dm1cpMtNqurKhITVRl36qT2C7xxQ1XO7O2hVi3VQ5GQUAZzKoQQFY/BYOXSdpqmEkZGQlQUQyNjGJmTbJakT3YUe+w7A2oo1AFdW+5x/Jt9mS1wd9bdcYK1oyM88ojabfTSJbXpUXCwefwRQghRDl29CqtX5248d/58/jRJSWrppq5dc489/7x6AFd3QloG+LmpysLtvQ3GoU2hobB0ae6KRa6u6kvwuXMls7dEZeflpRoBXVwgKMh89ScvL1WZS0srwzkVQoiKweodNN96CxYsUDsC3XL72NcD+nZc19Uw/Z6TA3o7HfX7tyR2pXUTrO3tITy8xN6uEEIIW4uLu/OAe19fCAtTtYEWLQpMZvxye7ehTffeq6ZiGGPXhQvqeEnuLVGZNW6s/lt271Y/8+wjXWK9P1KpEKKSsbSDZtrNbOI3HOa9063Nd9A8e9asQgGg1arFksQw/sgMY6tbCFft65jO5e2F+OknmDVLJlgLIUSFpWnw99+qJ6JmTfO5EfXrk+nrj+OlswCk61046N2Tcy3DaDYulBaPtM6/m50Ft3+5vdPQJr2+fG0gV5Hp9aoh8fTp0uv9sapSkZSUZPUFPS1VQ4UQpSLvDprd/E7T6nwULc9F0vz8GpyzbvKA03V++MErdwfN8HBVO+jeXf07LAxd27ac+EjP4qmQlXrnXgiZYC1AYoQQFcrly2pIU1SUqkxcvKiOd+liVqnYs1dHrPezaPY3OdU4lHOB3UjMcFZfSBfBO02s6z0o7Jfb8rSBXEWXd2fx0uj9sapSUa1aNXRW1EYBcnJyipUhIUQRJSdzccE67l8Wyas3oqi76Wi+JKH2MUTFDspd6/uhh2DgwHw7lBp7GazphZAJ1kJihBDlWFoabNqUOy9i3z7L6XbuVOuG+/iYGqh2V3+TFt1zexc8nVRvw6FD8MMP5DZQ3UVpf7kVuYw7i5dG749VlYqYmBjTv0+dOsXrr7/OiBEjCAoKAmDr1q3Mnz+f6dOn2z6HQlQxVk+wNsrKUr0MmzZRLyuLehaSpDh5c6heCJleNUm/mWe1BxeXAi8rvRDCWhIjhCjHVq5Uy/BZ4uoKvXqpuRFhYWrtb1QMMvYq3N5eoNMVbTO60vxyK8yVVu+PVZWKXr16mf793nvv8cknn/BEnrUgH3zwQdq0acPXX39NRESE7XMpRBVx1wnWFy6oPuRbX9YANR4pKUlVLm7J0dlxsnYQsX5hxPqFc7pGRzS9HUlJ4Jxl/WoP0gshrCExQogydumS6omIjlbL7Q0YkHuuTx/1rdJgUDWCe+7JnWDdtavarOA2iYkqBt3WiW1S1M3oZGhT5Vboidpbt27lq6++yne8U6dOPP300zbJlBCV1Z16ISxNsM5MTEO/eiOn/4iiOZG4HD+oNhU6edK8+SgsDG7cQAsNY+65MJZcu5+ANl6y1rcodRIjhCgFqamwcWPukKYDB3LP2dubVyq8vWHqVGjSRK3nXaNG/uvdxtoVm2QzOpFXoSsV/v7+fPPNN8yYMcPs+Lfffou/v7/NMiZEZXOnXoh27W5NsL6qEeJ7kJanomh5LoomFzfgmJNufqFTp1TNpEmT3GNTp8KHH6ID7tkDv78na32LsiExQogScuQI/Pqrqkhs3Kgmu1mydWv+Bqw33irUfb8wKzYJYVToSsWnn37KkCFDWLVqFV26dAFgx44dHDt2jKVLl9o8g0JUBpZ6IVJS1A379GlVsUjadZT/7e6Nd/pFi9cwoCOjbWdcHgzLPxfCwcH0T5kQJ8qSxAghSsjixTBlSv7jOp26wd+aF7HX+T6+n2TFPkV3UBbLkYqKr9Afh/79+3P06FEGDBhAfHw88fHxDBgwgKNHj9K/f/9CXWv69Ol07twZDw8PatWqxaBBgzhy5IhZmvT0dMaOHUv16tVxd3dnyJAhXL58ubDZFqLM5F3mtUUL8HbLpMXldbRP3UKLFur44sVwivq45Nw0e268mx+bmo1mTu/FDAy6ysFvt8P776s7/B106KBWbvryS/j4Y/Vz1iypUIiSZ6sYIfFBVDkpKbBqFUyaBK1bmw9pAjUHwigwEJ55Bn7+We16vWMHTJvGHo+eTJ3uyO7d4OOjOrR9fFQD1nvvqQYuaxkbqDp2VItCHT+ufnbqhPl+R0LcUqTN7/z9/fnwww+L/eLr169n7NixdO7cmezsbN544w3CwsKIjY3F7dbsoIkTJ/LHH3+wZMkSvLy8GDduHIMHD2bz5s3Ffn0hSsPxYxpJu44xKi2KjpGRNL0Qg3N2CvsD/sHsvr/h56f2oANHdtcZgKd2g1i/cGL9wrhUrTnodCQlQWZ84cavyoQ4UVZsESMkPohKz2CAvXvVnIioKNi8GTIzc89HR0ObNrm/d+4Ms2erykXjxvmWZbq9Acu0DKxn0ZaBBVmxSRROkSoVGzdu5D//+Q8nT55kyZIl1KtXjx9//JEGDRrQvXt3q6/z559/mv3+/fffU6tWLXbv3k3Pnj1JTEzku+++Y+HChfTp0weAefPm0aJFC7Zt28Z9991XlOwLUSTZ2bBmjVpkw9dXzXezL+gv6MYN2LABoqII/C2KuRdP5UvS9EIMdjmZuLo6otdDvXrwum6hjF8VFZ4tYoTEB1FRFHYZcN2SJfDbb2oDumvXLCfS642tTbns7eH55wu8bkksA2vMijRQCWsUulKxdOlSnnrqKYYNG8Zff/1Fxq2JQomJiXz44YesXLmyyJlJvLU2mY+PDwC7d+8mKyuLkJAQU5rmzZsTEBDA1q1bJWiIUrNoEcyYoe7xWVlqCoO/P7z6KuRZOROAOlu2YD94sIo0wO2L9SW51CK2Xhix/uHoNAOpqWqKxGOP5c6DkPGroqIqqRhhi/iQkZFhyg/k7gSelZVFVp4lmSs743utSu+5pOzfDwsWqA6H1FR1327fHoYNg7ZtUZOpby3ZairvpUth2bJ819Lq18cQGooWHIx2//1q1aZC/B8lJKiw4+UFdnb5z3t6qjpMQkKhLlvhyee9+Kwtu0JXKqZNm8ZXX33F8OHD+emnn0zHu3XrxrRp0wp7ORODwcCECRPo1q0brVu3BuDSpUs4OjpSrVo1s7S1a9fm0qVLFq8jQePO5I+r8H75Bd58E5KT1Y7Sjo6qh1p/5hQHxq+m2pl7CZnUFlDlmtigAbpbFQoAzdGRY77diXEI5do9IVys0QZNp2oHmgZXTmXRoQP066cqKgsXqkU+rl1TsahLF1Vxad26agWCgshn2PZsWZYlESNsFR+mT5/O1KlT8x2PiorC1dW1SHmryKKjo8s6C5VCr17qAUBODtVOnsTl070k7t2L18mTRH7/PTl59oI4UKcOHYAsV1eutWnDlfbtudq+PSm+vrldDFu3Fikv48bdPc2lS2o/vKpGPu9Fl5qaalW6Qlcqjhw5Qs+ePfMd9/Ly4saNG4W9nMnYsWM5ePAgmzZtKvI1QIKGteSPy3qurvDpp2CXlkaNAweotXcvtfbuxT3+AgDHdgxm5crhuU+oU4fL99xDcr16XGnfnuutW5Pj5IQv4Mt5WnPe7Prh4eqncbRHz57qkde5c+ohcsln2HasDRjWKIkYYav4MHnyZCZNmmT6PSkpCX9/f8LCwvC0tBh/JZWVlUV0dDShoaE45Fk5rjD2789tADE2xjdrBkOH3mqhr+QMBjVPes0aqK87TZ+cNXRLW819yWuplhNvlravmxtaWJip3Ju9+irZjz4KnTtTw96eu+8aYX2e3nhD9Zo0a5Z/GO2RI2qOxAcfVK1eb1t83qs6YwP93RS6UuHr68vx48epX7++2fFNmzbRsGHDwl4OgHHjxvH777+zYcMG/PKsauPr60tmZiY3btwwa426fPkyvr6+Fq8lQePO5I8rv1deUZPXMjLUjVenUwEy4ikDjzTey/q3oumTFc096Vtx0PK36Gb8dgKnZ/oTHJxbvh4bN+Lj4EBAnnSWgnDz5qoXoioEYVuRz7DtWRswrGHrGGHL+ODk5ISThd2DHRwcquRnqajve88emDYtd4lsX1+1cNGOHWpfzqqwMtDhg9n0WT6Rd9KiaJxztMB0mQGNcExPN1v226FOHewDAgp8TnE8+aT6PzhwwPIw2mHDLG6gXSVU1b9zW7C23ApdqXjmmWd48cUXmTt3LjqdjgsXLrB161Zefvll3n777UJdS9M0xo8fz/Lly1m3bh0NGjQwO9+xY0ccHBxYs2YNQ4YMAVQr2JkzZwgKCrJ4TQka1pHyUMaPh3//W7Xw2NmpCoWmqZuw3xcv05VZdLXwvCzs2ecSxEbXMP6XHsaIyw55Y4bF8u3YUQVaWUXDNuQzbDu2LEdbxYiSiA+i+EpihaHyzGCA40dySDtxAZem/qZ79sHD9nRJXUtjg3mFIknvxTbXYNY7hfFHZihvzWrIw0NKL7+yT5EoS4WuVLz++usYDAaCg4NJTU2lZ8+eODk58fLLLzN+/PhCXWvs2LEsXLiQX3/9FQ8PD9M4WC8vL1xcXPDy8mL06NFMmjQJHx8fPD09GT9+PEFBQTJJWxRbejr895s0Qgwb6KuL4lP9K1zWqRZOnQ7WZ/fkJWaZ0p92aMxmtzA2u4Wx3fV+Uuw8SU2FFFRLnTVkFQ1R2dkqRkh8KJ9KaoWhcufUKc58G0X84mganVrDdUdfnu0ea9pEDiDGIYwmGUfY6xLEVrdQNruFcdC5Ezk6ezIy1ITosiDLwIqyUuhKhU6n48033+SVV17h+PHjJCcn07JlS9zd3Qv94nPmzAGgd+/eZsfnzZvHiBEjALU7q16vZ8iQIWRkZBAeHs6///3vQr+WqJwyM+HHH+HMGQgIgKeeUhOpC6RpcPAgREVxYU4kFzM24EwGaLDf0J6Fdk8B6ua7QX8/Sw2D2eEZyqqcMDL9GuYbo5qQoG7WwcEl+z6FqChsFSMkPpRPiYmqQebWViH5uLqq1vFbi3VVHImJEBOj9oaIioLjxwkA0xBWj+wEGjufY/duP06fVrHm2xqTmZk2Feda+YdW37ypem9urStQ6qQBS5SFQlcqRo0axeeff46HhwctW7Y0HU9JSWH8+PHMnTvX6mtpmnbXNM7OzsyePZvZs2cXNquikps+Xe0anZiouqj1enj9dbUZ6eTJeRJevZobKKKi4OJFAG4f3R2qRbKQp0y/p+g9eNiwlF4d4NpRSL6gVvhzcsLUCuXuruZkFLhfhRBVjK1ihMSH8snLSw2nSUlRX5pvl5qqzhdmo84yFRenagjbtkFOjsUkKU7eHK4bTHXnFNMQrw0boHnPWkRGQtqtWGBvr/YzSk5WMal7d/liL6qWQneGzZ8/n7S0tHzH09LS+OGHH2ySKSHuZvp0mDoV4uPV/DdXV/UzPl4dnz49T+JHH1Wz0+bPN1UojM7gz7e6p3nC/mcm2X1hds44aTs0FGbNgkaNVCC9fFn9bNxYHb99nwohqjKJEZVb48Zq7sS5c+oemZdxo86WLcvpRp0nT6oaQV6+vrBrl1mFQrO3Z793Txa3mcb0Qdt56amrfB26hMvVmpmGeB06pEJL27ZqPl5KitrzNCVF/d62Lbz8sgw5ElWL1e2rSUlJaJqGpmncvHkTZ2dn07mcnBxWrlxJrVq1SiSTQuSVmal6KLKyVOuQXqfR2HCU+7Uo7tVv4fHMBXz6qZ6XXro1FCosDNatU092dYXevSE8nIxeYTTr0oz0DB32gD7P0CaDQcUYFxd46SXV8vbII4XYUVuIKkZiRNWg16s5BadPV4CNOm/cgLVrc3uqT55UN/Kff85N4+Ki1vA+e1a1IIWF8Zd7LyZN8aBJE8ubyBmHeNWrp2LR99/D7t2qQuHmpiZFR0TIpGhR9Vj9lahatWrodDp0Oh1NLfTn6XQ6i/tDCGFrP/4IuhsJPG6/htD0KPpkRRGgnTad7+L8Cjtv3MOPP8Lo0cDAgWqMVHg4dO1qWk/PCXj6GbX6U3a2+epPOTkqKI4erSoUoCoQxj0lhBDmJEZUHeV2haGsLLWurXGo644dqoUor9Wr1Q0+b23h119V5eIWj6PWD/Fq2lQmRQthZHWlIiYmBk3T6NOnD0uXLsXHx8d0ztHRkcDAQOrWrVsimRSVT3q6GjoUFwcNGuT2BhTIYFBjXqOiCPs2khHZO7DDYDFpLy2G7YZ7OHPm1oGWLeGf/7SY9ssv1c9vvzXfp8LFRVUojOeFEHcmMaLsGQx3/3JrTAPqZ7NmRfsCXO5WGFqxQtVobt60fN7BAbp1Uz3XGRmqu8EoT4UCcod47d5tvmwu5A7x6tQpd4iXTIoWQrG6UtHr1h70cXFxBAQEoLt9LTkhrDR+fP4v8dOmwdNP3+VL/KBBcPUq/rcdzsCRLfY9ibEPI8YhjL+y26LXq9WgrPHllzBzZiErOUIIMxIjytaePbk9B+np6v5lXP7U2HNgTHP8uNoN+pVX1Bfjog7VKZMv0/HxakhTu3bQpEnu8caN81coWrZUlYjQUDXEycoVyCrUEC8hypFCjwhfu3Yt7u7uPPLII2bHlyxZQmpqKhHGBZyFsKCgzebS0+GH2TdpHRfDs/WjVHCYPz/3iXq9Cg4LFgBw2K4lf+aEscE1nG0OPUnTqVYngwHSM6B6dbWgh7WcneHNN235ToWomiRGlL49e+C993J3uHZzU0N3du9WX4zfeUelM6Yxbnbu7W2eplzOAcjKMvVSExWlJlUbDPDuuzBlSm66Vq2gfXtVkwoLg5AQVRhFVG6HeAlRjhW6UjF9+nT+85//5Dteq1YtxowZIwFDFNgFn56ueigMBjU/wU5noIP2F6FEEkIUQdoWHP7IVhext4d//Qs8PHIvPGYM9OkDoaEs/68/U6dCVjo4oyooOTnqNRwcYOLEu+xXIYQoERIjSpc1O1zPn68ab4xpjBuol8tdsDUNjh5VFYjoaLV3RHJy/nRRUeaVCp1O1a7IE4N2Fm9YVrkb4lUCrBkyJ4S1Cl2pOHPmDA0aNMh3PDAwkDOmQeyiqrpTF/zKleCQfpOhul8IM0QRbIimBtcLvtjevdCjR+7vPXuqB7n7UBj3qcjIUDfC6tVVhcJsnwohRKmRGFG6rNnhetcu9bu/fwXYBfvll9WNvSCtW6ueiL59LZ62ZhhYYVTm+RK2LishCl2pqFWrFvv376e+sf/0ln379lG9enVb5UuUY8nJMG6cWp2vYUPVoeDufvcueAAXUvlOGwUW9rU6RmOiCMMQEs74pb0tL7uRx+TJau5DoXbUFkKUKIkRpcuaHa5TUlTlodzsgp2ZCVu3qt6Gl16CPJP6ufde87S1apmWeiUkBO4w2d+aYWDyZVmRshIlodCViieeeIIXXngBDw8Pet5qNV6/fj0vvvgijz/+uM0zKMqX8HAVB4w2blQtHSEhakjrtasaIb4HaRUXSctzUZz3acOS+2Zx6JAannSF2uyhPR3YSyKexOiCWa0PY7U+jOOGhhgM8H5v4M71CRNHx1vLxgohygWJEaXLmh2ujZWJMtsFW9Pg8OHcIU3r1qnMgPrm+vDDuWmDg3MrEaGh0KaNVeNxrBkGVm6GeJUxKStRUgpdqXj//fc5deoUwcHB2N/a+ctgMDB8+HA+/PBDm2dQlB+3VyiManKFmqtXc9+GSKboo/BOv2Q6V+PmSX4JmoWfH1y5oraIeC3jIzLs3Nilv5dsnRrce/tmc0KIikliROmydvlTTYO//lJp8rK0RKpNXL2qdgs1TrA+f95yuuho80pFjRqWA81dWDMMrNwM8SpjUlaipBS6UuHo6MjixYt5//332bdvHy4uLrRp04bAwMCSyJ8oZQVN2kpONr/PN+YYo5hLOJHcg5ocR2b+69nnZOKaHk+2qw/Z2TBgACxbFoYhB+y482ZzQoiKR2JE6bJm+VPj3PgzZ1Qa48i0pCQ4daqElkh98EG1apMlvr7mQ5pswJphYKU6xKsck7ISJaXQlQqjpk2bWtw1VVRcBU7aGq7x5Wc55P24+HGOyeTfUC5V58px//uJ9Qsj1i+cy15NQacjNUld74MPVDyRzeaEqNwkRpQea5c/NaYxbn6XkFCMJVI1TTVnR0WpbpIffzRv9g4Nza1UODtDr165Q5pat87fRF5M1gwDK9EhXhWIlJUoKVZVKiZNmsT777+Pm5sbkyZNumPaT+60aoMoU9nZqjca1M+QELVyK+SftFXTPoEGcWto9FMU9b6OpEn114DnTdfaQldScMWNVP6iA1GEEUk4B9y6Mjjc6Y47kMpmc0JULhIjyp41y5926KCmKKxerRp1xo0zjwN3deWKerJxbsSFC7nn3nzTfGzVoEHqRcLC1E7WJXyDL+wu2FWZlJUoKVbdSvbs2UNWVpbp3wUp7A6qGzZsYObMmezevZuLFy+yfPlyBg0aZDqvaRpTpkzhm2++4caNG3Tr1o05c+bQJO8umsIqixbBjBlqmOvs2Wr36po14dVX4bHH4Md52dQ5uZ1R9lG0WhtJ/as70WsG0/PvvRFJ3kpFJk78g9/5m1ZcpZbpuF8163Yglc3mhKg8JEaUD3db/vT2HbX/9S/48887LCGak6P2iTBWIvbuLfji69ebVyruuUc9Sonsgm09KStRUqyqVMTExFj8d3GlpKTQrl07Ro0axeDBg/OdnzFjBl988QXz58+nQYMGvP3224SHhxMbG4uzNGubMfZCXLqkhhcFB+e2Pi1apHoCkpOhTh11zM0NTpyA38b+SafpX/P+oTW4ZSdZvHam3gkHZ3u4bf+hddyfL+3ChbB0qexAKkRVIjGi/MvbG231jtqapiZRWxpc7+pqPqSpZcuSfgt3JbtgW0/KSpSEIs+psIV+/frRr18/i+c0TeOzzz7jrbfeYuDAgQD88MMP1K5dmxUrVsjShHkYeyHOnoWsLLVbqr+/6oV45BF1LjkZmvjeBGf1X+7iopb7rnvqOE0OLM93zfPerYj1CyfWL4zDNXsQe8qVe9Nhx46C8xEWpvaq69ZNdugUQhSfxAjbuH0J0bw7ancJvES1ndFkD4tG66RD98P83Cfa26sWqmXL1BiZe+7JnWDdtatazq+cqQq7YNuKlJWwNasqFZZaiAqybNmyImcmr7i4OC5dukRInpUhvLy86NKlC1u3bi0wYGRkZJCRkWH6PSlJtb5nZWWZuucrk19+UcOIkpPVbtKOjmpfofPn4e03crgRvYfHT0Zzf/ZqOhzbyrjmfwDg5KTK4kCd++EU3LCvzqF6wRxvGMoh/xAS3euZXiM5CTw8svjqK3jlFVi7Nn8++vSB5ctVpQbUPAmjnBz1qAqMn7HK+FkrL6SMba+4ZVmRYkRVlHcJUcecNJpdjKHVvHl03PQ2ftcPmNIZ4lzQff0f8/kP48er1qngYDVmtgKozLtg25qUlbAlqyoVXnmWANA0jeXLl+Pl5UWnTp0A2L17Nzdu3ChUYLmbS5fUXge1a9c2O167dm3TOUumT5/O1KlT8x2PiorC1dXVZvkrL1xd4dNPc393vnaNWnv3UnPvXmru24fTvJtm6V9q/Q2HeJI33ohWBzSNdSdnkVi/PtjZ4Ql0YR+wL99rHT2qxuE+84zlvKxcaZO3VClER0eXdRYqPSlj20lNTS3W8ytKjKhqjU5GN09e5eGT8+n+9xoaX9qEQ06GxXSaTk/WgQPQvn3uwW7dcv9dicuoNEiDSNmQci8+a8vOqkrFvHnzTP9+7bXXePTRR/nqq6+ws7MDICcnh+effx5PS2uTlbLJkyebrT6SlJSEv78/YWFh5SJ/hfXLL/D552rylHFok58fvPiiGg/79NNqfsRzN2cyIP6/NMo4VOC1Tjs2ZuX2jjR4Ej78MJSMDAfS0tSycm+8oTY5vX5dDYsyTtq6cEH1gLz2GrRtW3rvu6LKysoiOjqa0NBQHIxjDIRNSRnbnvHLdVFVlBhRZRqdcnLgVtkDuFy5wjPH38iXTNPpuNG4MVfbteNK+/bEN2uGduGC+apOwuakQaRsSLkXnbUNT4WeUzF37lw2bdpkChYAdnZ2TJo0ia5duzJz5szCXtIiX19fAC5fvkwd4+ziW7+3z9uKchsnJyecLIzzdHBwqHBfQPJOsPb2Vl/0M9I1Mg8e5aWXmjFwINy8qY77pp3NV6FI0nsRow9mm0cYv2eGkeXXAGfnLKaykowMB9LTHbh4UY2hHDMGgoLy71PRtq1M2iqKivh5q2ikjG3HluVYnmNEZWt0MklNRbdxI7rVq9FHR2MID8fw0Uem0wYDXHltJrUSjnHdPYAjAX1weKAmSxPGk+Tgy5Ej0CEBPhgg4+lLkjSIlA0p9+KztuGp0JWK7OxsDh8+TLNmzcyOHz58GIPBUMCzCq9Bgwb4+vqyZs0aU4BISkpi+/btPPfcczZ7nfIqOzt3gnWbWpfpmrqa7jci6ZoSTc2cSzTgCtHRNbGzU0uBb3YL45EbX3PA+V42uYWz2S2M7dq9JKXa8/TTcP0HSL6Qu/pTWhpcvAju7mqehL29TNoSQhRfeY4RlabRyWBQy7sal3rdtElNprvFzs4Ou9vez40Z3zJ1sS/705pQv0E2D3dbyflffDl12IEaNWDYsHI577pSqnCft0pCyr3orC23QlcqRo4cyejRozlx4gT33nsvANu3b+ef//wnI0eOLNS1kpOTOW7c2hM18W7v3r34+PgQEBDAhAkTmDZtGk2aNDEtF1i3bl2zdcorpYwM9ny2mRGHowjJiaTVib35kgxwjmZBwlC8vdXeE+t9+9G1yTWS7LwBtRLgtQuqUjBtmqosGPepADXkqXFjVaF44onc68qkLSFEcUiMKEHbt8Nnn6kN6K5ds5xGr1fd18bu5luaPt2TpzvacEdtIYS4nVZIOTk52kcffaTVrVtX0+l0mk6n0+rWrat99NFHWnZ2dqGuFRMTowH5HhEREZqmaZrBYNDefvttrXbt2pqTk5MWHBysHTlypFCvkZiYqAFaYmJioZ5XJnJyNO3BBzXN1VXTVL0g3yNZ56atdfuHFlEvWvP01LRnn9W0OnU0zcND0wICNK1JE/XTw0MdX7gw9/JZWZq2alWmtmLFCm3VqkwtK6vs3mpllZmpyjczM7Oss1JpSRnbni3vkxUpRpTr+JCcrGkpKebH/vjDcmyoX1/TxozRtF9+0bT4+DteNidH02Jj1d9QbGymlpNTgu9BmJF7V9mQci8+a++VOk3TtKJWSIxjrMrzWNSkpCS8vLxITEwsX/mMj1fNRbda8kx69FBd2Xn87XQPm9zD2ewaxl7XrmTpHElNVb0NCxaoS92+T0VAQP5eCFBjC1euXEn//v2lG7AESPmWPClj2yup+2R5jxHlKj7k5Kgd6oxDmjZvhv/8B/L27qSkqAl2Li5qHW/jxnONGql9JKwkf0NlQ8q9bEi5F5+198oibX6XnZ3NunXrOHHiBEOHDgXgwoULeHp64u7uXrQcV0B32sU6n6ws1XUdFaUeO3eqNb8vXjQPBuHhcOIEhpAw3twQzk/XQnDyq2mWRNNUt3Xjxrmv+cgjhciLEEKUIIkRVjpzRlUgoqLUkKb4ePPz0dHmlQo3N/jrL2jeXG7wQohyp9B3pdOnT9O3b1/OnDlDRkYGoaGheHh48NFHH5GRkcFXX31VEvksd+60i7Wpd+DkSYiMVAFj7Vq4ffb85ctw4ID5Wq2vvAJvvolep6PtIpj/Ely/oBqnnJzUpOyEBPMJ1qB+hoeXylsXQogCSYywwpw5aq3wI0cKTtOokfkuokatW5dcvoQQohgKXal48cUX6dSpE/v27aN69eqm4w899BDPFLQrWiVz+1Kvxi/7J06o4y7XzzHos97qQEFat1Zd17e32uVZfsNYOTFWXm7cUJUXSxOshRCiPJAYkUdODuzeDR07mu0bQXJy/gqFl5fqYjYOaWrYsHTzKoQQxVToSsXGjRvZsmULjo6OZsfr16/P+fPnbZaxsmYwWF5aNe9Sr351cmiV8Rf2GVnsde2Ki4vaM2jad3UYeOMGZiNca9RQgcIYMOrVsyofTzwhQ5uEEBVHVYgRBcUHAE6dyp0XsWaN6lrevt18/lxYGEyerDYHMsaFTp3kxi6EqNAKfQczGAzk5OTkO37u3Dk8PDxskqmytmdP/k3gWrSAiAhI+vssPY5F854WSY/jq6lmiGerax9GBaxBp1M9F6fO2nGhfX/qZZ9RY5LCwtR6fUXc8EGGNgkhKorKHiNujw8+9kk84BrDQJcoau6NhmPH8j8pKsq8UtGmjZo/UdaTw4UQwoYKXakICwvjs88+4+uvvwZAp9ORnJzMlClT6N+/v80zWNr27IH33lNLgPv5gbdjCgGnNtBwSRQ15kbS4eYhet32nI5pm3AxpJCmd8PJSQ1TWv3kfCJGWL8ahxBCVAaVOUbcHh9e2vYIHU4vx07LX4kCoFo1CAmB23f41uulQiGEqHQKXan4+OOP6du3Ly1btiQ9PZ2hQ4dy7NgxatSowaJFi0oij6XGYFAtUNeuqZ6J1uf+5LnIgTgYMi2mT9J7sc01mE3uud0IGRlq3oNvHalQCCGqnsoaI26PDzodZDq6mVUocvT26Lt3RWcc0nT7XAohhKjECl2p8Pf3Z9++fSxevJh9+/aRnJzM6NGjGTZsGC4uLiWRx1Jz/Ljq0vbzUwHjnE9bswqFQafnkGcXYuzDWJEWzkW/zhj0uUV4+1KvQghR1VTWGHF7fAA4VC+UBle2c6heKLt8wtji0IsZczxo2rRs8yqEEGWhUJWKrKwsmjdvzu+//86wYcMYNmxYSeWrTCQmqjGybm63fnerywH//iS4+RHrF8bB2sEcOFuN0FCI/TckX7z7Uq9CCFFVVOYYcXt8ANjReCg7mqj3mJ0NCbcmbwshRFVUqK++Dg4OpKenl1ReypyXl5qUnZKSO9z1X/3+MJ1PSlLnH31ULSEuS70KIUSuyhwjLMWHvLuSpqaq815eZZM/IYQoa4Vejmjs2LF89NFHZGdnl0R+ylTjxmqs7LlzaihTXpqmjrdsqdI98YTaFHvBAvjiC/Vzxw6pUAghqrbKGiMKEx+EEKIqKvQgnZ07d7JmzRqioqJo06YNbnn7goFly5bZLHO2oN26+yfdvpt1AYYMUWNnDxxQW0m4uEBaGpw/D9Wrw+DBao8Ko6Cg3H+nptoy5yUjKyuL1NRUkpKScHBwKOvsVDpSviVPytj2jPdH7fZvy0VQkWJESceH8kr+hsqGlHvZkHIvPmtjRKErFdWqVWPIkCFFy1UZuHnzJqAmD9rCH3/cPY0QQlREN2/exKuY43cqUoyQ+CCEENa7W4zQabZomirHDAYDFy5cwMPDA51OlnlNSkrC39+fs2fP4inrpNuclG/JkzK2PU3TuHnzJnXr1kVfxE06K6KqGh/kb6hsSLmXDSn34rM2RljdU2EwGJg5cyb/+9//yMzMJDg4mClTppT7JQL1ej1+fn5lnY1yx9PTU/64SpCUb8mTMrat4vZQVMQYUdXjg/wNlQ0p97Ih5V481sQIq5ukPvjgA9544w3c3d2pV68en3/+OWPHji1WBoUQQlQOEiOEEKJqs7pS8cMPP/Dvf/+byMhIVqxYwW+//caCBQswGAwlmT8hhBAVgMQIIYSo2qyuVJw5c4b+/fubfg8JCUGn03HhwoUSyZgoGU5OTkyZMgUnJ6eyzkqlJOVb8qSMyyeJERWH/A2VDSn3siHlXnqsnqhtZ2fHpUuXqFmzpumYh4cH+/fvp0GDBiWWQSGEEOWfxAghhKjarJ6orWkaI0aMMKvppaen83//939m65CXpzXIhRBClA6JEUIIUbVZXamIiIjId+zJJ5+0aWaEEEJUTBIjhBCiaqv0+1QIIYQQQgghSlbV2eWoitmwYQMDBgygbt266HQ6VqxYYXZe0zTeeecd6tSpg4uLCyEhIRw7dqxsMlsBTZ8+nc6dO+Ph4UGtWrUYNGgQR44cMUuTnp7O2LFjqV69Ou7u7gwZMoTLly+XUY4rljlz5tC2bVvTuuJBQUGsWrXKdF7KVoi7kzhQNiQ+lA2JG2VPKhWVVEpKCu3atWP27NkWz8+YMYMvvviCr776iu3bt+Pm5kZ4eDjp6emlnNOKaf369YwdO5Zt27YRHR1NVlYWYWFhpKSkmNJMnDiR3377jSVLlrB+/XouXLjA4MGDyzDXFYefnx///Oc/2b17N7t27aJPnz4MHDiQv//+G5CyFcIaEgfKhsSHsiFxoxzQRKUHaMuXLzf9bjAYNF9fX23mzJmmYzdu3NCcnJy0RYsWlUEOK74rV65ogLZ+/XpN01R5Ojg4aEuWLDGlOXTokAZoW7duLatsVmje3t7at99+K2UrRBFIHCg7Eh/KjsSN0iU9FVVQXFwcly5dIiQkxHTMy8uLLl26sHXr1jLMWcWVmJgIgI+PDwC7d+8mKyvLrIybN29OQECAlHEh5eTk8NNPP5GSkkJQUJCUrRA2IHGg9Eh8KH0SN8qG1as/icrj0qVLANSuXdvseO3atU3nhPUMBgMTJkygW7dutG7dGlBl7OjoSLVq1czSShlb78CBAwQFBZGeno67uzvLly+nZcuW7N27V8pWiGKSOFA6JD6ULokbZUsqFUIU09ixYzl48CCbNm0q66xUKs2aNWPv3r0kJibyyy+/EBERwfr168s6W0IIYTWJD6VL4kbZkuFPVZCvry9AvlUPLl++bDonrDNu3Dh+//13YmJi8PPzMx339fUlMzOTGzdumKWXMraeo6MjjRs3pmPHjkyfPp127drx+eefS9kKYQMSB0qexIfSJ3GjbEmlogpq0KABvr6+rFmzxnQsKSmJ7du3ExQUVIY5qzg0TWPcuHEsX76ctWvX0qBBA7PzHTt2xMHBwayMjxw5wpkzZ6SMi8hgMJCRkSFlK4QNSBwoORIfyg+JG6VLhj9VUsnJyRw/ftz0e1xcHHv37sXHx4eAgAAmTJjAtGnTaNKkCQ0aNODtt9+mbt26DBo0qOwyXYGMHTuWhQsX8uuvv+Lh4WEak+nl5YWLiwteXl6MHj2aSZMm4ePjg6enJ+PHjycoKIj77ruvjHNf/k2ePJl+/foREBDAzZs3WbhwIevWrSMyMlLKVggrSRwoGxIfyobEjXKgrJefEiUjJiZGA/I9IiIiNE1Tywm+/fbbWu3atTUnJyctODhYO3LkSNlmugKxVLaANm/ePFOatLQ07fnnn9e8vb01V1dX7aGHHtIuXrxYdpmuQEaNGqUFBgZqjo6OWs2aNbXg4GAtKirKdF7KVoi7kzhQNiQ+lA2JG2VPp2maVpqVGCGEEEIIIUTlInMqhBBCCCGEEMUilQohhBBCCCFEsUilQgghhBBCCFEsUqkQQgghhBBCFItUKoQQQgghhBDFIpUKIYQQQgghRLFIpUIIIYQQQghRLFKpEEIIIYQQQhSLVCqEEEIIIYQQxSKVCiGs1Lt3byZMmFDW2bBIp9OxYsWKUnmtnj17snDhwlJ5LUtef/11xo8fX2avL4QQlkiMUCRGVF1SqRBWGzFiBDqdjv/7v//Ld27s2LHodDpGjBhR+hkrB3r37o1Opyvw0bt37xJ9/YsXL9KvX78SfQ2A//3vf1y+fJnHH3/cdKx+/frodDp++umnfOlbtWqFTqfj+++/z5dep9Ph5ubGPffcw5IlS6zOw8svv8z8+fM5efJksd6LEMK2JEYUTGKExIiqQCoVolD8/f356aefSEtLMx1LT09n4cKFBAQElGHOrJOZmVki1122bBkXL17k4sWL7NixA4DVq1ebji1btqxEXtfI19cXJyenEn0NgC+++IKRI0ei15vfOvz9/Zk3b57ZsW3btnHp0iXc3NzyXee9997j4sWL7Nmzh86dO/PYY4+xZcsWq/JQo0YNwsPDmTNnTtHfiBCiREiMsExihMSIqkAqFaJQ7rnnHvz9/c1ugMuWLSMgIIAOHTqYpTUYDEyfPp0GDRrg4uJCu3bt+OWXX0znc3JyGD16tOl8s2bN+Pzzz82usW7dOu69917c3NyoVq0a3bp14/Tp04BqFRs0aJBZ+gkTJpi1+PTu3Ztx48YxYcIE040G4ODBg/Tr1w93d3dq167NU089xbVr10zPS0lJYfjw4bi7u1OnTh1mzZp1x3Lx8fHB19cXX19fatasCUD16tVNx2JjY+nRowcuLi74+/vzwgsvkJKSYnp+/fr1+fDDDxk1ahQeHh4EBATw9ddfm85nZmYybtw46tSpg7OzM4GBgUyfPt10/vau7QMHDtCnTx9cXFyoXr06Y8aMITk52XTeWHYff/wxderUoXr16owdO5asrKwC3+PVq1dZu3YtAwYMyHdu2LBhrF+/nrNnz5qOzZ07l2HDhmFvb58vvYeHB76+vjRt2pTZs2fj4uLCb7/9ZtVnAmDAgAEWW72EEGVLYoRlEiMkRlQFUqkQhTZq1CizFoe5c+cycuTIfOmmT5/ODz/8wFdffcXff//NxIkTefLJJ1m/fj2gAoqfnx9LliwhNjaWd955hzfeeIOff/4ZgOzsbAYNGkSvXr3Yv38/W7duZcyYMeh0ukLld/78+Tg6OrJ582a++uorbty4QZ8+fejQoQO7du3izz//5PLlyzz66KOm57zyyiusX7+eX3/9laioKNatW8dff/1VlOLixIkT9O3blyFDhrB//34WL17Mpk2bGDdunFm6WbNm0alTJ/bs2cPzzz/Pc889x5EjRwDV+vO///2Pn3/+mSNHjrBgwQLq169v8fVSUlIIDw/H29ubnTt3smTJElavXp3v9WJiYjhx4gQxMTHMnz+f77//3qwL+nabNm3C1dWVFi1a5DtXu3ZtwsPDmT9/PgCpqaksXryYUaNG3bV87O3tcXBwIDMz866fCaN7772Xc+fOcerUqbteXwhRuiRGFI7EiDuTGFGBaEJYKSIiQhs4cKB25coVzcnJSTt16pR26tQpzdnZWbt69ao2cOBALSIiQtM0TUtPT9dcXV21LVu2mF1j9OjR2hNPPFHga4wdO1YbMmSIpmmadv36dQ3Q1q1bd8f85PXiiy9qvXr1Mv3eq1cvrUOHDmZp3n//fS0sLMzs2NmzZzVAO3LkiHbz5k3N0dFR+/nnn03nr1+/rrm4uGgvvvhigXk3iouL0wBtz549mqap9zxmzBizNBs3btT0er2WlpamaZqmBQYGak8++aTpvMFg0GrVqqXNmTNH0zRNGz9+vNanTx/NYDBYfE1AW758uaZpmvb1119r3t7eWnJysun8H3/8oen1eu3SpUuapqmyCwwM1LKzs01pHnnkEe2xxx4r8H19+umnWsOGDfMdDwwM1D799FNtxYoVWqNGjTSDwaDNnz/fVO5eXl7avHnz8qXXNE3LyMjQPvzwQw3Qfv/9d4uvm/czYZSYmHjHz4YQovRJjJAYITGiasvf5yTEXdSsWZMHHniA77//Hk3TeOCBB6hRo4ZZmuPHj5OamkpoaKjZ8czMTLMu8NmzZzN37lzOnDlDWloamZmZtG/fHlDdxSNGjCA8PJzQ0FBCQkJ49NFHqVOnTqHy27FjR7Pf9+3bR0xMDO7u7vnSnjhxwpSPLl26mI77+PjQrFmzQr1u3tfbv38/CxYsMB3TNA2DwUBcXJypVadt27am8zqdDl9fX65cuQKorujQ0FCaNWtG3759+cc//kFYWJjF1zt06BDt2rUzG6farVs3DAYDR44coXbt2oCaIGdnZ2dKU6dOHQ4cOFDg+0hLS8PZ2bnA8w888ADPPvssGzZsYO7cuXdsgXrttdd46623SE9Px93dnX/+85888MADwJ0/E0YuLi6Aau0SQpQvEiMKR2JEfhIjKiapVIgiGTVqlKmrdPbs2fnOG8dm/vHHH9SrV8/snHGy2E8//cTLL7/MrFmzCAoKwsPDg5kzZ7J9+3ZT2nnz5vHCCy/w559/snjxYt566y2io6O577770Ov1aJpmdm1L4z1vnwSWnJzMgAED+Oijj/KlrVOnDsePH7emCKyWnJzMs88+ywsvvJDvXN6Jiw4ODmbndDodBoMBUOOU4+LiWLVqFatXr+bRRx8lJCTEbPxxYd3p9SypUaMGCQkJBZ63t7fnqaeeYsqUKWzfvp3ly5cXmPaVV15hxIgRpvHKxuEK1nwmAOLj4wFMY5OFEOWLxAjrSYzIT2JExSSVClEkffv2JTMzE51OZ5rYllfLli1xcnLizJkz9OrVy+I1Nm/eTNeuXXn++edNx06cOJEvXYcOHejQoQOTJ08mKCiIhQsXct9991GzZk0OHjxolnbv3r35boS3u+eee1i6dCn169e3OEGsUaNGODg4sH37dtMNPSEhgaNHjxb4Xu72erGxsTRu3LjQz83L09OTxx57jMcee4yHH36Yvn37Eh8fj4+Pj1m6Fi1a8P3335OSkmIKlps3b0av1xe5JQ3U/8OlS5dISEjA29vbYppRo0bx8ccf89hjjxWYBlTwsVQe1n4mDh48iIODA61atSrCOxFClDSJEdaTGJGfxIiKSSZqiyKxs7Pj0KFDxMbGmnWPGnl4ePDyyy8zceJE5s+fz4kTJ/jrr7/48ssvTRO1mjRpwq5du4iMjOTo0aO8/fbb7Ny503SNuLg4Jk+ezNatWzl9+jRRUVEcO3bM1BXcp08fdu3axQ8//MCxY8eYMmVKvgBiydixY4mPj+eJJ55g586dnDhxgsjISEaOHElOTg7u7u6MHj2aV155hbVr13Lw4EFGjBiRb4k8a7322mts2bKFcePGsXfvXo4dO8avv/6ab1LcnXzyyScsWrSIw4cPc/ToUZYsWYKvry/VqlXLl3bYsGE4OzsTERHBwYMHiYmJYfz48Tz11FOmbu2i6NChAzVq1GDz5s0FpmnRogXXrl3Lt3Sgte72mTDauHGjaaUUIUT5IzHCehIjrCcxonyTSoUoMk9PTzw9PQs8//777/P2228zffp0WrRoQd++ffnjjz9o0KABAM8++yyDBw/mscceo0uXLly/ft2s9cHV1ZXDhw8zZMgQmjZtypgxYxg7dizPPvssAOHh4bz99tu8+uqrdO7cmZs3bzJ8+PC75rtu3bps3ryZnJwcwsLCaNOmDRMmTKBatWqmoDBz5kx69OjBgAEDCAkJoXv37vnG3Vqrbdu2rF+/nqNHj9KjRw86dOjAO++8Q926da2+hoeHBzNmzKBTp0507tyZU6dOsXLlSotBzNXVlcjISOLj4+ncuTMPP/wwwcHB/Otf/ypS/o3s7OwYOXKk2bhfS6pXr17kG/ndPhNGP/30E88880yRXkMIUTokRlhHYoT1JEaUbzrt9gGHQghRgEuXLtGqVSv++usvAgMDyyQPq1at4qWXXmL//v0WhyYIIYQoGxIjqjbpqRBCWM3X15fvvvuOM2fOlFkeUlJSmDdvngQLIYQoZyRGVG3SUyGEEEIIIYQoFumpEEIIIYQQQhSLVCqEEEIIIYQQxSKVCiGEEEIIIUSxSKVCCCGEEEIIUSxSqRBCCCGEEEIUi1QqhBBCCCGEEMUilQohhBBCCCFEsUilQgghhBBCCFEsUqkQQgghhBBCFMv/A0eY+CgunTJqAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Function to create a parity plot\n", + "def parity_plot(ax, y_true, y_pred, title):\n", + " ax.scatter(y_true, y_pred, color='blue', alpha=0.6)\n", + " ax.plot([min(y_true), max(y_true)], [min(y_true), max(y_true)], linestyle='--', color='red', linewidth=2)\n", + " ax.set_title(title)\n", + " ax.set_xlabel('Measured Tension (MPa)')\n", + " ax.set_ylabel('Predicted (MPa)')\n", + " ax.grid(True)\n", + "\n", + "# Create subplots\n", + "fig, axs = plt.subplots(4, 2, figsize=(8, 8))\n", + "fig.suptitle('Parity Plots', fontsize=16)\n", + "# Parity plot for Linear Regression\n", + "parity_plot(axs[0, 0], y_train, y_train_pred_linear, 'Linear Regression (Train)')\n", + "parity_plot(axs[0, 1], y_test, y_test_pred_linear, 'Linear Regression (Test)')\n", + "\n", + "# Parity plot for Neural Network\n", + "parity_plot(axs[1, 0], y_train, y_train_pred_nn, 'Neural Network (Train)')\n", + "parity_plot(axs[1, 1], y_test, y_test_pred_nn, 'Neural Network (Test)')\n", + "\n", + "# Parity plot for SMT\n", + "parity_plot(axs[2, 0], y_train, y_train_pred_KPLS, 'SMT KPLS (Train)')\n", + "parity_plot(axs[2, 1], y_test, y_test_pred_KPLS, 'SMT KPLS (Test)')\n", + "\n", + "# Parity plot for SMT\n", + "parity_plot(axs[3, 0], y_train, y_train_pred_smt, 'SMT Mixed (Train)')\n", + "parity_plot(axs[3, 1], y_test, y_test_pred_smt, 'SMT Mixed (Test)')\n", + "\n", + "# Adjust layout\n", + "plt.tight_layout(rect=[0, 0.03, 1, 0.95])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "colab": { + "include_colab_link": true, + "name": "SMT_MixedInteger_application.ipynb", + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tutorial/additive_manufacturing.csv b/tutorial/additive_manufacturing.csv new file mode 100644 index 000000000..c60e1293d --- /dev/null +++ b/tutorial/additive_manufacturing.csv @@ -0,0 +1,71 @@ +Layer Height,Wall Thickness,Infill Density,Infill Pattern,Nozzle Temperature,Bed Temperature,Print Speed,Material,Fan Speed,Roughness,Tension Strength,Elongation +0.02,8.0,90,grid,220,60,40,abs,0,25,18,1.2 +0.02,7.0,90,honeycomb,225,65,40,abs,25,32,16,1.4 +0.02,1.0,80,grid,230,70,40,abs,50,40,8,0.8 +0.02,4.0,70,honeycomb,240,75,40,abs,75,68,10,0.5 +0.02,6.0,90,grid,250,80,40,abs,100,92,5,0.7 +0.02,10.0,40,honeycomb,200,60,40,pla,0,60,24,1.1 +0.02,5.0,10,grid,205,65,40,pla,25,55,12,1.3 +0.02,10.0,10,honeycomb,210,70,40,pla,50,21,14,1.5 +0.02,9.0,70,grid,215,75,40,pla,75,24,27,1.4 +0.02,8.0,40,honeycomb,220,80,40,pla,100,30,25,1.7 +0.06,6.0,80,grid,220,60,60,abs,0,75,37,2.4 +0.06,2.0,20,honeycomb,225,65,60,abs,25,92,12,1.4 +0.06,10.0,50,grid,230,70,60,abs,50,118,16,1.3 +0.06,6.0,10,honeycomb,240,75,60,abs,75,200,9,0.8 +0.06,3.0,50,grid,250,80,60,abs,100,220,10,1.0 +0.06,10.0,90,honeycomb,200,60,60,pla,0,126,27,2.2 +0.06,3.0,40,grid,205,65,60,pla,25,145,23,1.9 +0.06,8.0,30,honeycomb,210,70,60,pla,50,88,26,1.6 +0.06,5.0,80,grid,215,75,60,pla,75,92,33,2.1 +0.06,10.0,50,honeycomb,220,80,60,pla,100,74,29,2.0 +0.1,1.0,40,grid,220,60,120,abs,0,120,16,1.2 +0.1,2.0,30,honeycomb,225,65,120,abs,25,144,12,1.1 +0.1,1.0,50,grid,230,70,120,abs,50,265,10,0.9 +0.1,9.0,80,honeycomb,240,75,120,abs,75,312,19,0.8 +0.1,2.0,60,grid,250,80,120,abs,100,368,8,0.4 +0.1,1.0,50,honeycomb,200,60,120,pla,0,180,11,1.6 +0.1,4.0,40,grid,205,65,120,pla,25,176,12,1.2 +0.1,3.0,50,honeycomb,210,70,120,pla,50,128,18,1.8 +0.1,4.0,90,grid,215,75,120,pla,75,138,34,2.9 +0.1,1.0,30,honeycomb,220,80,120,pla,100,121,14,1.5 +0.15,4.0,50,grid,220,60,60,abs,0,168,27,2.4 +0.15,7.0,10,honeycomb,225,65,60,abs,25,154,19,1.8 +0.15,6.0,50,grid,230,70,60,abs,50,225,18,1.4 +0.15,1.0,50,honeycomb,240,75,60,abs,75,289,9,0.6 +0.15,7.0,80,grid,250,80,60,abs,100,326,13,0.7 +0.15,3.0,80,honeycomb,200,60,60,pla,0,192,33,2.8 +0.15,4.0,50,grid,205,65,60,pla,25,212,24,1.8 +0.15,10.0,30,honeycomb,210,70,60,pla,50,168,26,2.1 +0.15,6.0,40,grid,215,75,60,pla,75,172,22,2.3 +0.15,1.0,10,honeycomb,220,80,60,pla,100,163,4,0.7 +0.2,4.0,80,grid,220,60,40,abs,0,212,35,3.3 +0.2,9.0,90,honeycomb,225,65,40,abs,25,276,34,3.1 +0.2,7.0,30,grid,230,70,40,abs,50,298,28,2.2 +0.2,6.0,90,honeycomb,240,75,40,abs,75,360,28,1.6 +0.2,3.0,80,grid,250,80,40,abs,100,357,21,1.1 +0.2,5.0,60,honeycomb,200,60,40,pla,0,321,28,2.7 +0.2,4.0,20,grid,205,65,40,pla,25,265,14,1.8 +0.2,5.0,60,honeycomb,210,70,40,pla,50,278,30,3.2 +0.2,7.0,40,grid,215,75,40,pla,75,244,29,3.2 +0.2,3.0,60,honeycomb,220,80,40,pla,100,220,27,3.1 +0.02,8.0,90,grid,250,100,40,abs,100,98,5,0.95 +0.06,5.0,90,grid,215,95,60,pla,75,92,38,2.2 +0.09,8.0,60,honeycomb,210,70,60,pla,50,98,26,1.6 +0.03,8.0,90,grid,220,60,40,abs,0,25,18,1.2 +0.03,10.0,20,honeycomb,220,60,60,abs,0,75,37,2.4 +0.02,6.0,10,grid,205,65,40,pla,25,55,12,1.3 +0.06,10.0,100,honeycomb,200,60,60,pla,0,126,27,2.2 +0.02,6.0,12,grid,205,65,40,pla,28,55,12,1.8 +0.1,6.0,80,honeycomb,250,75,120,abs,75,312,19,0.8 +0.1,4.0,95,grid,220,75,120,pla,100,121,14,1.5 +0.15,3.0,10,honeycomb,225,65,70,abs,25,154,19,1.8 +0.15,7.0,50,grid,230,70,60,abs,50,225,18,1.4 +0.15,3.0,85,honeycomb,220,60,60,pla,0,192,33,2.8 +0.15,3.0,90,grid,215,260,360,pla,0,-1,33,2.8 +0.06,12.0,50,honeycomb,230,80,65,pla,100,74,29,2.1 +0.06,9.0,10,honeycomb,200,75,80,abs,75,200,9,0.9 +0.04,2.0,80,grid,230,70,40,abs,50,40,12,0.8 +0.02,4.5,70,honeycomb,240,85,40,abs,75,68,10,0.8 +0.05,6.0,10,honeycomb,245,75,85,abs,75,205,5,0.5 +0.15,1.0,50,grid,220,60,120,abs,0,120,16,1.5 diff --git a/tutorial/VTF_properties.csv b/tutorial/composite_material.csv similarity index 100% rename from tutorial/VTF_properties.csv rename to tutorial/composite_material.csv diff --git a/tutorial/lithium_ion_data.csv b/tutorial/lithium_ion_data.csv new file mode 100644 index 000000000..f7ebc8ecf --- /dev/null +++ b/tutorial/lithium_ion_data.csv @@ -0,0 +1,340 @@ +Materials Id,Formula,Spacegroup,Formation Energy (eV),E Above Hull (eV),Band Gap (eV),Nsites,Density (gm/cc),Volume,Has Bandstructure,Crystal System +mp-849394,Li2MnSiO4,Pc,-2.699,0.006,3.462,16,2.993,178.513,True,monoclinic +mp-783909,Li2MnSiO4,P21/c,-2.696,0.008,2.879,32,2.926,365.272,True,monoclinic +mp-761311,Li4MnSi2O7,Cc,-2.775,0.012,3.653,28,2.761,301.775,True,monoclinic +mp-761598,Li4Mn2Si3O10,C2/c,-2.783,0.013,3.015,38,2.908,436.183,True,monoclinic +mp-767709,Li2Mn3Si3O10,C2/c,-2.747,0.016,2.578,36,3.334,421.286,True,monoclinic +mp-761517,Li4MnSi2O7,C2,-2.763,0.024,3.293,14,2.792,149.207,True,monoclinic +mp-850949,LiMnSiO4,P21,-2.65,0.027,1.052,28,3.507,291.575,False,monoclinic +mp-853204,Li2MnSiO4,P21/c,-2.676,0.029,3.384,32,2.927,365.179,False,monoclinic +mp-767360,LiMn(SiO3)2,C2/c,-2.822,0.038,0.612,20,3.255,218.36,True,monoclinic +mp-764791,Li2Mn(SiO3)2,Cc,-2.823,0.04,3.447,22,2.7,271.853,True,monoclinic +mp-782667,Li2MnSiO4,P21/c,-2.66,0.044,2.785,32,2.977,358.984,True,monoclinic +mp-767686,Li2Mn(SiO3)2,C2/c,-2.818,0.045,3.397,22,2.702,271.581,True,monoclinic +mp-772591,Li2Mn2Si2O7,P21/c,-2.697,0.049,2.461,52,3.047,636.288,True,monoclinic +mp-849242,Li10Mn(SiO5)2,C2/m,-2.496,0.052,0.988,46,2.4,471.249,True,monoclinic +mp-780126,Li3MnSi2O7,P21,-2.721,0.058,0.921,78,2.89,840.856,False,monoclinic +mp-868532,Li5Mn(SiO4)2,C2,-2.649,0.067,0.584,16,2.588,175.701,False,monoclinic +mp-850142,Li2Mn(Si2O5)2,P21/c,-2.942,0.069,3.823,68,2.31,980.879,False,monoclinic +mp-767853,Li2Mn2Si3O10,Cc,-2.712,0.073,1.262,34,2.847,429.302,True,monoclinic +mp-849428,Li2Mn2(SiO3)3,P21/c,-2.769,0.077,3.188,64,2.517,929.064,False,monoclinic +mp-761329,LiMn(SiO3)2,C2/c,-2.782,0.078,1.497,20,3.104,228.983,True,monoclinic +mp-761653,Li2MnSi3O8,P21,-2.871,0.082,2.736,28,2.672,349.386,True,monoclinic +mp-769543,Li3Mn2(SiO4)2,P21,-2.612,0.083,0.0,30,2.887,362.254,True,monoclinic +mp-849217,Li4Mn(SiO3)3,C2,-2.794,0.083,2.862,34,2.649,389.814,True,monoclinic +mp-767695,Li2MnSi3O8,P21,-2.868,0.085,3.261,28,2.628,355.18,True,monoclinic +mp-767303,Li2Mn(SiO3)2,C2,-2.778,0.085,3.169,22,2.92,251.377,True,monoclinic +mp-780037,LiMn2Si2O7,Cc,-2.653,0.085,0.716,24,3.281,288.498,True,monoclinic +mp-774171,Li3Mn2(SiO4)2,Pc,-2.608,0.087,0.0,30,2.892,361.543,True,monoclinic +mp-778631,Li3Mn2(SiO4)2,Pc,-2.607,0.087,0.37,30,2.911,359.241,True,monoclinic +mp-780872,LiMnSiO4,P21/c,-2.589,0.088,0.982,56,3.361,608.454,True,monoclinic +mp-761765,Li3Mn3SiO8,P2/m,-2.329,0.088,0.915,15,3.853,147.276,True,monoclinic +mp-780287,Li3Mn2(SiO4)2,P21,-2.605,0.089,0.0,30,2.898,360.853,True,monoclinic +mp-774356,Li3Mn2(SiO4)2,Pc,-2.604,0.09,0.0,30,2.91,359.343,True,monoclinic +mp-850760,Li2MnSi4O11,C2/c,-2.832,0.091,1.37,36,2.868,413.524,True,monoclinic +mp-775353,Li5Mn(SiO3)4,C2,-2.79,0.091,1.342,132,2.584,1518.85,False,monoclinic +mp-769538,Li3Mn2(SiO4)2,P21,-2.601,0.093,0.0,30,3.001,348.469,True,monoclinic +mp-767011,Li7Mn3(SiO6)2,C2/m,-2.439,0.095,1.291,24,3.671,208.787,True,monoclinic +mp-510708,LiFe(SiO3)2,C2/c,-2.82,0.0,2.703,20,3.287,217.186,True,monoclinic +mp-19061,LiFe(SiO3)2,P21/c,-2.82,0.001,2.755,40,3.309,431.516,True,monoclinic +mp-646320,Li2FeSiO4,P21/c,-2.625,0.001,3.443,32,3.067,350.466,False,monoclinic +mp-763629,Li2FeSiO4,Pc,-2.621,0.005,3.027,16,3.073,174.862,True,monoclinic +mp-763264,Li2FeSiO4,P21,-2.619,0.007,3.401,32,3.005,357.648,True,monoclinic +mp-868123,LiFe(Si2O5)2,P2/c,-2.985,0.009,3.362,32,2.43,457.962,False,monoclinic +mp-761968,Li4FeSi2O7,Cc,-2.731,0.011,3.415,28,2.81,297.609,True,monoclinic +mp-762639,LiFeSiO4,Pc,-2.61,0.012,3.026,28,2.852,360.726,True,monoclinic +mp-762893,LiFeSiO4,Cc,-2.608,0.014,2.967,112,2.849,1444.106,False,monoclinic +mp-762925,LiFeSiO4,Cc,-2.608,0.014,2.969,112,2.848,1444.706,False,monoclinic +mp-767077,Li5Fe(SiO4)2,C2,-2.677,0.014,2.466,16,2.616,174.413,True,monoclinic +mp-767027,Li4FeSi2O7,C2,-2.722,0.02,3.442,14,2.824,148.024,True,monoclinic +mp-764348,LiFeSiO4,P21/c,-2.601,0.02,2.904,28,2.873,358.057,True,monoclinic +mp-761394,Li4Fe2Si3O10,C2/c,-2.71,0.021,3.159,38,2.978,427.934,True,monoclinic +mp-775228,LiFeSiO4,Pc,-2.599,0.023,0.401,14,2.87,179.222,True,monoclinic +mp-762554,Li2FeSiO4,P21/c,-2.603,0.023,3.448,32,3.028,354.961,False,monoclinic +mp-761644,Li2Fe3Si3O10,C2/c,-2.635,0.024,3.028,36,3.463,408.228,True,monoclinic +mp-764344,Li2FeSiO4,P21,-2.603,0.024,2.931,16,3.06,175.643,True,monoclinic +mp-778685,LiFe(SiO3)2,Cc,-2.793,0.028,3.273,20,2.602,274.334,False,monoclinic +mp-762645,LiFeSiO4,Pc,-2.59,0.032,2.839,28,2.843,361.8,True,monoclinic +mp-762786,Li3Fe2(SiO4)2,P21,-2.586,0.038,1.378,30,2.921,360.017,True,monoclinic +mp-765961,LiFeSi3O8,P21/c,-2.887,0.04,3.144,52,2.69,679.101,True,monoclinic +mp-764784,LiFeSiO4,Cc,-2.577,0.045,3.01,14,2.366,217.361,True,monoclinic +mp-765881,LiFeSi3O8,C2/c,-2.879,0.049,3.186,52,2.656,687.841,True,monoclinic +mp-762861,LiFeSiO4,P21/c,-2.572,0.05,3.028,84,2.857,1080.318,False,monoclinic +mp-762613,Li2Fe2Si2O7,P21/c,-2.598,0.051,3.159,52,3.149,619.645,True,monoclinic +mp-780866,LiFe2Si2O7,P21/c,-2.598,0.051,2.01,48,2.911,654.481,True,monoclinic +mp-762862,LiFeSiO4,P21/c,-2.571,0.051,3.042,84,2.872,1074.67,False,monoclinic +mp-767973,Li2Fe(SiO3)2,C2/c,-2.754,0.051,3.222,22,2.758,267.162,True,monoclinic +mp-762796,LiFeSiO4,Cc,-2.57,0.052,2.899,14,2.719,189.186,True,monoclinic +mp-762565,Li10Fe(SiO5)2,C2/m,-2.476,0.055,1.715,46,2.399,472.581,True,monoclinic +mp-764355,LiFeSiO4,Pc,-2.566,0.055,2.955,14,2.644,194.528,True,monoclinic +mp-763619,Li2Fe(SiO3)2,P21,-2.748,0.058,3.392,22,2.878,256.015,True,monoclinic +mp-761624,LiFeSi3O8,C2,-2.868,0.059,3.215,26,2.59,352.651,True,monoclinic +mp-767938,LiFeSiO4,P21/c,-2.562,0.059,2.871,28,2.843,361.839,True,monoclinic +mp-762650,Li3Fe2(SiO4)2,P21,-2.564,0.06,1.331,30,3.026,347.513,True,monoclinic +mp-763781,Li3Fe2(SiO4)2,Pc,-2.564,0.06,1.684,30,2.741,383.694,True,monoclinic +mp-767668,Li9Fe5(SiO8)2,P2/m,-2.324,0.06,1.646,32,3.782,287.056,True,monoclinic +mp-762656,LiFeSiO4,Pc,-2.561,0.061,2.724,28,2.895,355.354,True,monoclinic +mp-767283,LiFeSiO4,Pc,-2.56,0.062,2.587,14,2.947,174.534,True,monoclinic +mp-774106,Li3Fe2(SiO4)2,Pc,-2.562,0.062,1.511,30,2.991,351.593,True,monoclinic +mp-767838,LiFeSiO4,P21,-2.56,0.062,2.727,28,2.889,356.057,True,monoclinic +mp-762571,Li2Fe(Si2O5)2,P21/c,-2.913,0.062,3.661,68,2.417,940.148,False,monoclinic +mp-765416,Li2Fe2Si8O19,C2,-2.955,0.063,3.031,31,2.711,400.68,True,monoclinic +mp-762723,Li3Fe2(SiO4)2,P21,-2.561,0.063,1.259,30,2.943,357.383,False,monoclinic +mp-762586,LiFeSiO4,P21,-2.555,0.066,2.576,28,3.068,335.324,True,monoclinic +mp-761546,LiFeSiO4,P2,-2.553,0.068,2.736,84,2.499,1234.971,False,monoclinic +mp-778622,Li3Fe2(SiO4)2,Pc,-2.556,0.069,1.923,30,2.891,363.781,True,monoclinic +mp-762646,LiFeSiO4,P21/c,-2.553,0.069,2.164,56,3.289,625.575,True,monoclinic +mp-767963,Li2FeSi3O8,P21,-2.84,0.069,3.081,28,2.665,351.384,True,monoclinic +mp-762535,Li2Fe2(SiO3)3,P21/c,-2.696,0.072,3.017,64,2.611,899.949,False,monoclinic +mp-762539,Li2FeSiO4,P21/c,-2.553,0.073,2.649,32,2.877,373.622,True,monoclinic +mp-762562,Li2Fe(Si2O5)2,P21/m,-2.898,0.077,3.171,68,2.518,902.44,True,monoclinic +mp-761782,Li7Fe3(SiO6)2,C2/m,-2.409,0.078,1.658,24,3.692,208.83,True,monoclinic +mp-767149,Li2FeSi3O8,P21,-2.827,0.081,2.614,28,2.719,344.39,True,monoclinic +mp-762541,Li4Fe(SiO3)3,C2,-2.758,0.082,3.073,34,2.702,383.352,True,monoclinic +mp-761991,Li3Fe3SiO8,P2/m,-2.257,0.083,1.476,15,3.942,145.111,True,monoclinic +mp-762585,LiFeSiO4,P21/c,-2.528,0.094,2.351,28,3.058,336.427,True,monoclinic +mp-766984,Li2Fe(Si2O5)3,P21,-2.89,0.095,0.332,48,2.555,621.599,True,monoclinic +mp-762714,Li2FeSi4O11,C2/c,-2.785,0.098,0.03,36,2.788,426.538,False,monoclinic +mp-761452,Li2Fe(Si2O5)3,Cc,-2.876,0.109,0.264,48,2.309,687.797,True,monoclinic +mp-780871,LiFe2(SiO4)2,P2,-2.423,0.117,2.528,78,2.474,1219.453,False,monoclinic +mp-763301,Li2CoSiO4,Pc,-2.537,0.0,2.957,16,3.216,170.265,True,monoclinic +mp-764958,Li2CoSiO4,P21,-2.523,0.014,2.934,16,3.201,171.08,True,monoclinic +mp-763512,Li2CoSiO4,P21/c,-2.516,0.02,2.769,32,3.15,347.706,True,monoclinic +mp-763470,Li2CoSiO4,P21/c,-2.515,0.021,2.827,32,3.108,352.365,True,monoclinic +mp-764634,Li2CoSiO4,C2/m,-2.51,0.027,2.457,16,3.088,177.349,True,monoclinic +mp-763396,Li4Co2Si3O10,C2/c,-2.617,0.038,2.876,38,3.078,420.615,True,monoclinic +mp-763465,Li2CoSiO4,P21/c,-2.495,0.042,2.684,32,3.13,349.97,True,monoclinic +mp-781591,Li3Co2(SiO4)2,Pc,-2.452,0.043,0.0,30,3.115,344.253,True,monoclinic +mp-763382,Li2Co2Si2O7,P21/c,-2.478,0.047,2.825,52,3.322,599.601,True,monoclinic +mp-763575,Li10Co(SiO5)2,C2/m,-2.444,0.048,1.941,46,2.409,474.87,True,monoclinic +mp-773761,LiCo(SiO3)2,Cc,-2.638,0.052,1.711,20,2.745,263.753,True,monoclinic +mp-763389,Li2Co(SiO3)2,C2/c,-2.687,0.053,3.233,22,2.861,261.142,True,monoclinic +mp-762751,Li3Co2(SiO4)2,Pc,-2.438,0.057,0.315,30,3.035,353.345,False,monoclinic +mp-767356,LiCo(SiO3)2,C2/c,-2.632,0.058,1.238,20,3.405,212.692,True,monoclinic +mp-762812,Li3Co2(SiO4)2,Pc,-2.436,0.059,0.35,30,3.052,351.323,False,monoclinic +mp-762978,LiCoSiO4,Cc,-2.376,0.06,1.281,112,2.998,1399.85,False,monoclinic +mp-774355,Li3Co2(SiO4)2,Pc,-2.433,0.063,0.541,30,3.092,346.722,True,monoclinic +mp-763592,LiCoSiO4,Pc,-2.372,0.063,1.468,28,2.961,354.341,True,monoclinic +mp-763255,LiCoSiO4,Pc,-2.372,0.064,1.373,14,2.964,176.961,True,monoclinic +mp-779186,Li3Co2(SiO4)2,P21,-2.431,0.064,0.022,30,3.032,353.617,True,monoclinic +mp-762886,LiCoSiO4,P21/c,-2.369,0.066,1.374,28,3.015,347.967,True,monoclinic +mp-763256,LiCoSiO4,Pc,-2.369,0.067,1.59,14,2.998,174.957,True,monoclinic +mp-763399,Li2Co2(SiO3)3,P21/c,-2.598,0.069,2.727,64,2.739,872.856,True,monoclinic +mp-765005,Li2Co(SiO3)2,P21,-2.669,0.072,2.883,22,2.947,253.565,True,monoclinic +mp-763385,Li2Co(Si2O5)2,P21/c,-2.858,0.075,3.254,68,2.429,943.786,False,monoclinic +mp-779222,Li3Co2(SiO4)2,Pc,-2.418,0.078,0.147,30,3.003,357.078,True,monoclinic +mp-763313,LiCoSiO4,P21,-2.357,0.079,1.434,14,2.952,177.732,True,monoclinic +mp-762976,LiCoSiO4,P21/c,-2.352,0.083,1.403,84,3.017,1043.295,False,monoclinic +mp-764963,Li2CoSi3O8,P21,-2.772,0.085,3.159,28,2.771,341.661,True,monoclinic +mp-763253,LiCoSiO4,Pc,-2.349,0.086,1.474,14,3.096,169.421,True,monoclinic +mp-764463,Li3Co2Si3O10,Cc,-2.539,0.089,0.724,36,2.914,436.508,True,monoclinic +mp-762974,LiCoSiO4,P21/c,-2.347,0.089,1.494,84,2.999,1049.613,False,monoclinic +mp-763384,Li2Co(Si2O5)2,P21/m,-2.842,0.091,2.499,68,2.564,894.099,False,monoclinic +mp-763364,Li4Co(SiO3)3,C2,-2.706,0.092,2.938,34,2.754,379.735,True,monoclinic +mp-763500,LiCoSiO4,P21/c,-2.341,0.095,0.892,28,3.84,273.243,True,monoclinic +mp-850488,LiCoSiO4,Pc,-2.338,0.098,1.255,28,3.019,347.495,False,monoclinic +mp-763246,LiCoSiO4,Pc,-2.338,0.098,1.386,14,2.841,184.681,True,monoclinic +mp-767301,Li3Co2(SiO4)2,C2,-2.396,0.099,0.637,15,2.931,182.928,True,monoclinic +mp-762293,LiCoSiO4,Cc,-2.333,0.102,1.266,14,2.884,181.921,True,monoclinic +mp-849671,Li5Co2(SiO5)2,Pc,-2.301,0.103,0.235,38,2.838,431.503,True,monoclinic +mp-765142,LiCoSiO4,Cc,-2.332,0.104,1.552,14,2.724,192.593,True,monoclinic +mp-566680,Li2MnSiO4,P21nm,-2.705,0.0,3.052,16,3.039,175.842,True,orthorhombic +mp-763876,Li2MnSiO4,Pcmn,-2.705,0.0,3.07,32,3.013,354.747,True,orthorhombic +mp-849238,Li2MnSiO4,Pmnb,-2.695,0.01,2.882,32,2.97,359.824,True,orthorhombic +mp-775454,Li2MnSiO4,Pna21,-2.694,0.011,2.88,32,2.957,361.437,True,orthorhombic +mp-780918,Li2MnSiO4,Pna21,-2.694,0.011,2.965,32,2.926,365.204,True,orthorhombic +mp-780833,Li2MnSiO4,C2221,-2.691,0.014,2.962,16,2.882,185.391,True,orthorhombic +mp-850110,Li2Mn(SiO3)2,Fdd2,-2.849,0.014,3.487,22,2.74,267.86,True,orthorhombic +mp-768020,Li2MnSiO4,Pbn21,-2.685,0.019,2.823,32,2.997,356.585,True,orthorhombic +mp-868361,Li2Mn2Si2O7,C2cm,-2.712,0.033,2.869,26,3.3,293.746,True,orthorhombic +mp-761776,LiMn(SiO3)2,Pbca,-2.824,0.036,0.037,80,3.343,850.626,False,orthorhombic +mp-780533,LiMnSiO4,Pmnb,-2.632,0.046,0.99,28,3.598,284.227,True,orthorhombic +mp-762836,Li3Mn(Si2O5)3,Cmce,-2.972,0.051,1.369,100,2.603,1235.941,False,orthorhombic +mp-780325,LiMnSiO4,Cmcm,-2.626,0.052,0.0,14,3.609,141.676,True,orthorhombic +mp-762828,LiMnSiO4,Pna21,-2.623,0.054,0.11,84,3.55,864.216,False,orthorhombic +mp-850152,Li2MnSiO4,Pca21,-2.65,0.054,2.852,64,2.8,763.324,True,orthorhombic +mp-761523,Li2Mn2(Si2O5)3,Cmce,-2.95,0.055,3.376,100,2.634,1342.122,False,orthorhombic +mp-761666,Li3Mn(Si2O5)3,Pcmn,-2.968,0.055,1.154,100,2.76,1165.318,False,orthorhombic +mp-762845,Li4Mn2Si4O13,Pna21,-2.757,0.059,1.363,92,3.047,998.5,False,orthorhombic +mp-775449,Li2Mn(SiO3)2,Fdd2,-2.802,0.061,3.072,66,2.661,827.376,True,orthorhombic +mp-850153,Li2Mn2(SiO3)3,Pnma,-2.779,0.067,3.077,64,3.034,770.62,True,orthorhombic +mp-780089,Li3MnSi2O7,Pbnm,-2.709,0.069,1.472,52,2.895,559.694,True,orthorhombic +mp-761485,Li2Mn(SiO3)2,Pmn21,-2.791,0.072,2.607,66,2.933,750.79,True,orthorhombic +mp-849442,Li2Mn(Si2O5)2,P212121,-2.939,0.073,3.783,68,2.29,989.646,False,orthorhombic +mp-780825,LiMnSiO4,Pcmn,-2.603,0.074,1.059,28,3.325,307.52,True,orthorhombic +mp-774444,Li2Mn3(SiO3)4,Pnma,-2.762,0.076,1.527,84,2.856,1123.305,False,orthorhombic +mp-780637,Li3MnSiO5,P21nb,-2.529,0.077,0.235,40,2.798,436.412,True,orthorhombic +mp-763718,Li2Mn(SiO3)2,Pm21n,-2.784,0.079,2.76,66,2.933,750.671,True,orthorhombic +mp-767364,Li2Mn2Si2O7,C2cm,-2.666,0.079,2.696,26,2.944,329.286,True,orthorhombic +mp-761619,LiMn(SiO3)2,Pbca,-2.78,0.08,1.2,80,3.306,860.04,True,orthorhombic +mp-775156,LiMnSiO4,Pbca,-2.595,0.082,1.267,56,2.994,683.102,True,orthorhombic +mp-849469,Li2Mn2(SiO3)3,Pnma,-2.764,0.083,3.248,64,2.436,959.619,False,orthorhombic +mp-850969,LiMnSiO4,Pna21,-2.591,0.087,1.569,28,2.988,342.286,True,orthorhombic +mp-780790,Li2Mn2Si2O9,Pnca,-2.481,0.088,0.889,60,3.573,602.169,True,orthorhombic +mp-780750,LiMnSiO4,Ibmm,-2.584,0.093,0.0,14,3.855,132.65,True,orthorhombic +mp-761352,LiMnSiO4,Imma,-2.581,0.097,0.903,14,3.739,136.74,True,orthorhombic +mp-764790,Li2FeSiO4,Pcmn,-2.626,0.0,3.121,32,3.094,347.336,True,orthorhombic +mp-18968,Li2FeSiO4,P21nm,-2.626,0.001,3.124,16,3.123,172.094,True,orthorhombic +mp-761416,LiFe(SiO3)2,Pbca,-2.818,0.003,2.745,80,3.333,856.726,True,orthorhombic +mp-764346,Li2FeSiO4,P21cn,-2.621,0.005,2.993,32,3.065,350.604,True,orthorhombic +mp-763645,Li2FeSiO4,Pmnb,-2.621,0.005,3.089,32,3.049,352.518,True,orthorhombic +mp-764341,Li3FeSiO5,P21nb,-2.56,0.008,2.314,40,2.831,433.391,True,orthorhombic +mp-762557,Li2FeSiO4,Pna21,-2.618,0.009,2.946,32,3.01,357.063,True,orthorhombic +mp-863851,LiFeSiO4,Pbnm,-2.611,0.01,2.3,28,3.563,288.72,True,orthorhombic +mp-765849,LiFe(SiO3)2,C222,-2.81,0.011,3.023,10,2.523,141.451,True,orthorhombic +mp-762566,Li2FeSiO4,C2221,-2.615,0.011,2.965,16,2.948,182.303,True,orthorhombic +mp-762540,Li2FeSiO4,Pbn21,-2.613,0.014,2.924,32,3.07,350.111,True,orthorhombic +mp-767964,Li2Fe(SiO3)2,Fdd2,-2.791,0.015,3.314,22,2.807,262.576,True,orthorhombic +mp-762581,LiFeSiO4,Pn21a,-2.604,0.018,2.961,28,2.89,355.979,True,orthorhombic +mp-764340,Li2FeSiO4,Pc21n,-2.607,0.02,2.957,32,2.986,359.989,True,orthorhombic +mp-763641,LiFeSiO4,Pb21a,-2.598,0.023,2.959,56,2.881,714.127,True,orthorhombic +mp-762799,LiFeSiO4,Pb21a,-2.598,0.024,2.979,56,2.875,715.629,True,orthorhombic +mp-763635,LiFeSiO4,Pna21,-2.597,0.025,2.963,28,2.866,358.902,True,orthorhombic +mp-767253,LiFeSiO4,C2221,-2.597,0.025,2.874,14,2.863,179.638,True,orthorhombic +mp-766714,Li3Fe(Si2O5)3,Cmce,-2.976,0.032,3.386,100,2.592,1243.201,False,orthorhombic +mp-762643,LiFeSiO4,Cmcm,-2.588,0.034,1.657,14,3.628,141.773,True,orthorhombic +mp-766664,LiFeSiO4,Pna21,-2.587,0.035,1.675,84,3.644,846.947,True,orthorhombic +mp-761764,Li3Fe(Si2O5)3,Pcmn,-2.971,0.037,3.262,100,2.735,1178.251,False,orthorhombic +mp-762844,Li4Fe2Si4O13,Pna21,-2.743,0.038,2.78,92,3.104,983.89,False,orthorhombic +mp-868323,LiFeSiO4,Pbnm,-2.582,0.04,1.989,28,3.634,283.063,True,orthorhombic +mp-767850,LiFeSiO4,Pc21n,-2.58,0.042,2.87,28,2.914,353.0,True,orthorhombic +mp-766989,LiFe(Si2O5)2,Pnc2,-2.952,0.043,3.053,32,2.798,397.806,True,orthorhombic +mp-761405,Li2Fe2Si2O7,C2cm,-2.603,0.046,3.129,26,3.414,285.751,True,orthorhombic +mp-773415,Li2Fe2(Si2O5)3,Cmce,-2.904,0.05,3.152,100,2.651,1338.234,False,orthorhombic +mp-761767,LiFe(SiO3)2,Pbca,-2.77,0.051,2.981,80,3.098,921.698,False,orthorhombic +mp-767743,LiFeSiO4,Pbn21,-2.569,0.052,2.833,28,2.869,358.537,True,orthorhombic +mp-762703,LiFeSiO4,P21nb,-2.566,0.055,2.63,28,2.882,356.872,True,orthorhombic +mp-762545,Li2FeSiO4,Pca21,-2.571,0.056,2.78,64,2.875,747.562,True,orthorhombic +mp-762587,LiFeSiO4,Pb21a,-2.565,0.057,2.855,56,2.874,715.92,True,orthorhombic +mp-762570,Li3FeSi2O7,Pbnm,-2.691,0.057,2.512,52,2.89,562.749,True,orthorhombic +mp-851283,LiFeSiO4,Pc21n,-2.564,0.058,2.73,28,2.856,360.121,True,orthorhombic +mp-863911,Li2Fe(SiO3)2,Fdd2,-2.748,0.058,2.917,66,2.723,811.767,True,orthorhombic +mp-762804,LiFeSiO4,P21nb,-2.563,0.059,2.551,28,2.966,346.859,True,orthorhombic +mp-766752,Li7Fe7SiO16,C222,-2.142,0.062,1.438,31,4.186,287.012,True,orthorhombic +mp-863885,LiFe(SiO3)2,C2221,-2.757,0.064,3.23,40,2.375,601.224,True,orthorhombic +mp-775303,Li2Fe(Si2O5)3,Cmce,-2.918,0.067,3.155,96,2.527,1257.084,False,orthorhombic +mp-761559,LiFeSiO4,Pna21,-2.554,0.068,2.603,28,2.934,350.638,True,orthorhombic +mp-761450,LiFeSi3O8,P212121,-2.858,0.069,3.182,52,2.676,682.572,True,orthorhombic +mp-868349,LiFeSiO4,Pna21,-2.551,0.07,2.631,28,2.984,344.706,True,orthorhombic +mp-766964,Li2Fe2SiO6,C222,-2.365,0.072,2.493,11,2.625,157.939,True,orthorhombic +mp-762620,Li2Fe(Si2O5)2,P212121,-2.899,0.076,3.435,68,2.323,977.912,False,orthorhombic +mp-773468,LiFeSiO4,Imma,-2.546,0.076,1.311,14,3.898,131.954,True,orthorhombic +mp-863888,Li2Fe(SiO3)2,Pmn21,-2.73,0.076,2.624,66,3.023,731.236,True,orthorhombic +mp-762576,Li2Fe2Si2O7,C2cm,-2.573,0.076,2.7,26,3.039,320.953,True,orthorhombic +mp-762534,Li2Fe2(SiO3)3,Pnma,-2.69,0.077,3.087,64,3.128,751.301,True,orthorhombic +mp-762648,LiFeSiO4,P212121,-2.544,0.078,1.873,28,3.34,307.957,True,orthorhombic +mp-762533,Li2Fe2(SiO3)3,Pnma,-2.69,0.078,3.114,64,2.573,913.228,False,orthorhombic +mp-762686,LiFeSiO4,Pna21,-2.544,0.078,2.38,28,2.872,358.225,True,orthorhombic +mp-763624,Li2Fe(SiO3)2,Pm21n,-2.726,0.08,2.88,66,3.017,732.676,True,orthorhombic +mp-762696,LiFeSiO4,Pbca,-2.539,0.083,1.791,56,2.96,694.96,True,orthorhombic +mp-762746,Li2Fe2SiO6,Fdd2,-2.348,0.089,2.223,66,2.98,834.696,True,orthorhombic +mp-868335,Li2Fe2Si3O10,F2dd,-2.647,0.092,3.04,34,2.286,537.355,True,orthorhombic +mp-865154,LiFe(Si3O7)2,Icma,-2.981,0.093,2.647,88,2.807,1077.384,False,orthorhombic +mp-762827,Li5Fe(SiO4)2,Pnma,-2.598,0.094,2.082,128,2.655,1374.684,False,orthorhombic +mp-762638,LiFeSiO4,P21nb,-2.527,0.095,2.128,56,2.635,780.749,True,orthorhombic +mp-762775,Li2Fe2Si2O9,Pnca,-2.339,0.111,0.033,60,3.442,628.652,False,orthorhombic +mp-763746,Li2FeSiO5,Pmc21,-2.342,0.112,0.0,36,3.125,377.974,True,orthorhombic +mp-775750,LiFe(Si2O5)3,Cmce,-2.836,0.122,2.611,92,2.508,1248.278,False,orthorhombic +mp-767128,Li2CoSiO4,P21nm,-2.532,0.005,2.72,16,3.249,168.54,True,orthorhombic +mp-764641,Li2CoSiO4,Pc21n,-2.532,0.005,2.918,32,3.181,344.33,True,orthorhombic +mp-763304,Li2CoSiO4,Pc21n,-2.532,0.005,2.994,32,3.148,347.939,True,orthorhombic +mp-763309,Li2CoSiO4,Pcmn,-2.531,0.006,2.841,32,3.231,338.972,True,orthorhombic +mp-764956,Li2CoSiO4,C2221,-2.527,0.01,2.8,16,3.104,176.442,True,orthorhombic +mp-763391,Li2Co(SiO3)2,F2dd,-2.729,0.012,2.973,22,2.888,258.73,True,orthorhombic +mp-763485,Li2CoSiO4,Pmnb,-2.523,0.014,2.693,32,3.159,346.674,True,orthorhombic +mp-764957,Li2CoSiO4,Pbn21,-2.522,0.015,2.757,32,3.226,339.508,True,orthorhombic +mp-763492,Li3CoSiO5,P21nb,-2.418,0.033,1.176,40,2.941,424.186,True,orthorhombic +mp-762880,LiCoSiO4,Pn21a,-2.376,0.06,1.422,28,3.033,345.946,True,orthorhombic +mp-763240,LiCoSiO4,C2221,-2.374,0.062,1.265,14,2.98,176.01,True,orthorhombic +mp-543100,LiCoSiO4,Pbn21,-2.371,0.065,1.398,28,2.985,351.446,True,orthorhombic +mp-763443,Li2Co(SiO3)2,Fdd2,-2.675,0.065,2.969,66,2.861,783.351,True,orthorhombic +mp-763589,LiCoSiO4,Pb21a,-2.37,0.066,1.194,56,3.014,696.129,True,orthorhombic +mp-763584,LiCoSiO4,Pb21a,-2.369,0.067,1.31,56,3.029,692.711,True,orthorhombic +mp-772320,Li2CoSiO4,Pca21,-2.467,0.07,2.916,64,3.046,719.179,True,orthorhombic +mp-763369,Li2Co2Si2O7,C2cm,-2.455,0.07,2.344,26,3.213,309.993,True,orthorhombic +mp-779191,LiCoSiO4,Pbn21,-2.365,0.07,1.527,28,3.029,346.421,False,orthorhombic +mp-763386,Li2Co2Si2O7,C2cm,-2.453,0.072,2.84,26,3.579,278.304,True,orthorhombic +mp-763376,Li2Co(Si2O5)2,P212121,-2.858,0.075,3.273,68,2.37,967.213,True,orthorhombic +mp-763406,Li2Co2(SiO3)3,Pnma,-2.591,0.076,2.744,64,2.658,899.635,True,orthorhombic +mp-762722,LiCoSiO4,P21nb,-2.353,0.082,1.411,28,3.112,337.098,True,orthorhombic +mp-762892,LiCoSiO4,Pcmn,-2.352,0.083,0.77,28,3.736,280.858,True,orthorhombic +mp-763260,LiCoSiO4,Pc21n,-2.352,0.083,1.367,28,2.935,357.496,True,orthorhombic +mp-762888,LiCoSiO4,Cmcm,-2.351,0.084,0.871,14,3.762,139.432,True,orthorhombic +mp-779192,LiCoSiO4,P21nb,-2.351,0.084,1.323,28,3.0,349.762,True,orthorhombic +mp-763360,Li2Co2(SiO3)3,Pnma,-2.574,0.094,2.842,64,3.249,735.894,True,orthorhombic +mp-762860,LiCoSiO4,Pcmn,-2.339,0.097,0.736,28,3.605,291.06,True,orthorhombic +mp-762247,LiCoSiO4,P212121,-2.327,0.109,0.702,28,3.203,327.583,True,orthorhombic +mp-762883,LiCoSiO4,Imcm,-2.291,0.144,0.511,14,4.15,126.395,True,orthorhombic +mp-763534,Li2Co2SiO6,Ccme,-2.012,0.19,0.717,22,3.927,216.338,True,orthorhombic +mp-767711,Li2Mn2Si4O11,P1,-2.904,0.012,0.904,38,3.098,441.742,True,triclinic +mp-868265,Li2Mn4Si4O13,P1,-2.755,0.019,2.346,46,3.481,528.536,True,triclinic +mp-761470,Li2Mn2Si5O13,P1,-2.946,0.02,3.286,44,3.009,521.131,True,triclinic +mp-868673,Li15Mn15SiO32,P1,-2.194,0.028,0.311,63,4.093,595.723,False,triclinic +mp-761381,Li2Mn5(Si2O7)2,P1,-2.69,0.031,0.0,25,3.434,302.156,True,triclinic +mp-766967,Li2Mn3(Si3O8)2,P1,-2.894,0.043,2.865,54,3.012,665.118,True,triclinic +mp-767443,Li2Mn5Si5O16,P1,-2.736,0.045,2.164,28,2.985,381.117,True,triclinic +mp-850240,Li2Mn3(SiO4)2,P1,-2.61,0.05,2.045,45,3.062,590.331,True,triclinic +mp-850159,Li2Mn(Si2O5)2,P1,-2.958,0.054,3.036,34,2.633,430.361,True,triclinic +mp-761439,LiMn(SiO3)2,P1,-2.801,0.059,0.714,80,3.314,858.022,True,triclinic +mp-768071,Li5Mn17(SiO16)2,P1,-2.172,0.059,0.348,56,4.201,607.507,True,triclinic +mp-761417,Li2Mn2Si4O11,P1,-2.847,0.069,0.0,38,2.897,472.42,True,triclinic +mp-868526,Li9Mn5(SiO8)2,P1,-2.372,0.07,1.154,32,3.706,290.951,True,triclinic +mp-767282,Li2MnSi3O8,P1,-2.872,0.082,2.655,14,2.497,186.943,True,triclinic +mp-761967,LiMnSi3O8,P1,-2.868,0.09,1.055,26,2.963,307.264,False,triclinic +mp-767982,Li3Mn2(SiO4)2,P1,-2.605,0.09,0.0,15,2.938,177.985,True,triclinic +mp-761430,Li7Mn11(Si3O16)2,P1,-2.439,0.092,0.361,56,3.909,566.407,False,triclinic +mp-780147,LiMnSiO4,P1,-2.58,0.098,0.995,28,3.294,310.44,True,triclinic +mp-767274,Li3MnSi2O7,P1,-2.68,0.099,1.161,13,2.709,149.499,True,triclinic +mp-780196,LiMnSiO4,P1,-2.577,0.1,0.409,28,2.984,342.663,True,triclinic +mp-761735,Li2Fe2Si4O11,P1,-2.837,0.013,1.892,38,3.189,431.059,True,triclinic +mp-765915,LiFe(SiO3)2,P1,-2.791,0.03,3.056,20,2.2,324.509,True,triclinic +mp-868566,LiFe(SiO3)2,P1,-2.79,0.031,2.427,30,3.193,335.392,True,triclinic +mp-761402,Li2Fe5(Si2O7)2,P1,-2.563,0.031,0.0,25,3.492,299.319,True,triclinic +mp-761459,LiFeSi3O8,P1,-2.896,0.032,3.342,26,2.76,330.953,False,triclinic +mp-761705,Li2Fe4Si4O13,P1,-2.632,0.032,3.118,46,3.599,514.551,False,triclinic +mp-761475,Li2Fe2Si5O13,P1,-2.875,0.034,3.394,44,3.086,510.174,True,triclinic +mp-773691,LiFe(SiO3)2,P1,-2.785,0.036,2.596,80,3.251,878.288,False,triclinic +mp-767996,Li3Fe2(SiO4)2,P1,-2.585,0.039,1.626,15,2.951,178.21,True,triclinic +mp-761820,LiFeSi3O8,P1,-2.886,0.041,3.16,26,2.703,337.873,True,triclinic +mp-767726,Li2Fe2Si3O10,P1,-2.694,0.044,2.325,34,2.821,435.364,True,triclinic +mp-763810,Li17Fe6(Si2O7)6,P1,-2.691,0.046,0.0,77,2.868,846.546,False,triclinic +mp-767707,Li2Fe5Si5O16,P1,-2.62,0.049,2.117,28,3.101,369.232,True,triclinic +mp-761382,Li2Fe3(Si3O8)2,P1,-2.817,0.05,2.826,54,3.088,651.656,True,triclinic +mp-762716,Li2Fe3(SiO4)2,P1,-2.482,0.051,2.23,45,3.204,568.378,True,triclinic +mp-780681,LiFe3(SiO4)2,P1,-2.468,0.058,0.631,42,3.133,570.329,True,triclinic +mp-763739,Li3Fe2(SiO4)2,P1,-2.565,0.059,1.14,15,3.034,173.298,True,triclinic +mp-761622,Li7Fe7SiO16,P1,-2.144,0.06,1.955,31,3.232,371.739,True,triclinic +mp-768001,Li6Fe(SiO4)2,P1,-2.595,0.063,3.736,17,2.678,174.618,True,triclinic +mp-772589,Li2Fe(Si2O5)2,P1,-2.911,0.064,3.079,34,2.633,431.422,False,triclinic +mp-764102,Li3Fe2(SiO4)2,P1,-2.558,0.066,0.931,30,2.911,361.337,True,triclinic +mp-761513,LiFeSi3O8,P1,-2.859,0.068,2.413,26,2.896,315.39,False,triclinic +mp-850922,Li3Fe2(SiO4)2,P1,-2.555,0.069,1.854,15,2.925,179.798,True,triclinic +mp-762655,LiFeSiO4,P1,-2.551,0.071,2.292,28,2.969,346.461,True,triclinic +mp-763637,Li4Fe2SiO7,P1,-2.356,0.071,1.851,14,3.787,122.581,True,triclinic +mp-767328,Li5Fe5Si7O24,P1,-2.647,0.072,2.373,41,2.501,593.87,True,triclinic +mp-868319,Li5Fe5Si7O24,P1,-2.646,0.072,2.598,41,2.546,583.402,True,triclinic +mp-863852,Li5Fe5Si7O24,P1,-2.646,0.073,2.391,41,2.55,582.533,True,triclinic +mp-772382,Li2FeSi3O8,P1,-2.833,0.076,3.041,14,2.524,185.499,True,triclinic +mp-766744,Li2Fe2Si4O11,P1,-2.768,0.081,0.0,38,2.958,464.73,True,triclinic +mp-779820,Li3Fe4(Si3O10)2,P1,-2.633,0.082,0.054,33,2.777,438.109,True,triclinic +mp-868418,Li2FeSi3O8,P1,-2.826,0.082,0.0,28,2.507,373.616,True,triclinic +mp-773385,Li3FeSiO5,P1,-2.486,0.083,2.254,20,3.575,171.619,True,triclinic +mp-767276,Li5Fe5Si7O24,P1,-2.635,0.084,1.827,41,2.433,610.604,True,triclinic +mp-762704,Li4Fe(SiO4)2,P1,-2.543,0.089,0.232,15,2.781,159.895,False,triclinic +mp-767753,Li2Fe2Si8O19,P1,-2.927,0.091,3.508,31,2.776,391.367,True,triclinic +mp-762705,Li3FeSiO5,P1,-2.474,0.094,2.173,20,3.615,169.712,True,triclinic +mp-762768,Li9Fe4(SiO5)4,P1,-2.391,0.094,0.005,37,2.617,455.754,False,triclinic +mp-778793,Li4Fe3(SiO4)3,P1,-2.524,0.099,0.976,22,3.031,258.368,True,triclinic +mp-761351,Li2Fe(Si2O5)3,P1,-2.882,0.104,0.189,24,2.624,302.599,False,triclinic +mp-761343,Li16Fe4SiO16,P1,-2.132,0.106,2.139,37,2.668,384.899,True,triclinic +mp-762762,LiFe2(SiO4)2,P1,-2.426,0.114,0.0,39,2.753,547.911,False,triclinic +mp-761348,Li7Fe7SiO16,P1,-2.087,0.118,1.492,31,3.233,371.607,True,triclinic +mp-763462,Li2Co3(SiO4)2,P1,-2.343,0.024,2.47,45,3.408,547.959,True,triclinic +mp-762851,Li3Co2(SiO4)2,P1,-2.441,0.055,0.376,15,3.088,173.602,True,triclinic +mp-764452,Li3Co2(SiO4)2,P1,-2.439,0.057,0.23,15,3.024,177.312,True,triclinic +mp-770682,Li2Co(Si2O5)2,P1,-2.862,0.07,3.06,34,2.74,418.368,True,triclinic +mp-764961,Li6Co(SiO4)2,P1,-2.545,0.071,2.685,17,2.753,171.772,True,triclinic +mp-849520,LiCo3(SiO4)2,P1,-2.25,0.076,0.005,42,3.318,552.402,True,triclinic +mp-849656,Li5Co4(Si3O10)2,P1,-2.529,0.082,0.176,35,2.94,428.648,True,triclinic +mp-763557,LiCoSiO4,P1,-2.348,0.087,1.333,14,2.451,214.044,True,triclinic +mp-767320,Li3Co2(SiO4)2,P1,-2.406,0.09,0.323,15,3.043,176.207,False,triclinic