From ef3abdf0a87b5379ebac2be931d9759bb0ad4959 Mon Sep 17 00:00:00 2001
From: goodroot <9484709+goodroot@users.noreply.github.com>
Date: Wed, 18 Dec 2024 12:55:29 -0800
Subject: [PATCH] Adds powerbi third-party tool (#108)
---
documentation/sidebars.js | 1 +
documentation/third-party-tools/overview.md | 1 +
documentation/third-party-tools/powerbi.md | 135 ++++++++++++++++++++
static/images/docs/powerbi/powerbi-1.webp | Bin 0 -> 21782 bytes
static/images/docs/powerbi/powerbi-2.webp | Bin 0 -> 31874 bytes
5 files changed, 137 insertions(+)
create mode 100644 documentation/third-party-tools/powerbi.md
create mode 100644 static/images/docs/powerbi/powerbi-1.webp
create mode 100644 static/images/docs/powerbi/powerbi-2.webp
diff --git a/documentation/sidebars.js b/documentation/sidebars.js
index 6b70f145..61d4509d 100644
--- a/documentation/sidebars.js
+++ b/documentation/sidebars.js
@@ -449,6 +449,7 @@ module.exports = {
"third-party-tools/grafana",
"third-party-tools/kafka",
"third-party-tools/redpanda",
+ "third-party-tools/powerbi",
"third-party-tools/pandas",
"third-party-tools/prometheus",
"third-party-tools/qstudio",
diff --git a/documentation/third-party-tools/overview.md b/documentation/third-party-tools/overview.md
index 58e23a52..42adaa55 100644
--- a/documentation/third-party-tools/overview.md
+++ b/documentation/third-party-tools/overview.md
@@ -43,6 +43,7 @@ integrations:
Enhance your data analysis and processing capabilities with QuestDB through
these tools:
+- [**PowerBI**](/docs/third-party-tools/powerbi/): Create interactive data visualizations and dashboards.
- [Pandas](/docs/third-party-tools/pandas/): Analyze [time-series data](/blog/what-is-time-series-data/) in Python
with powerful data structures.
- [MindsDB](/docs/third-party-tools/mindsdb/): Build machine learning models for
diff --git a/documentation/third-party-tools/powerbi.md b/documentation/third-party-tools/powerbi.md
new file mode 100644
index 00000000..3b169d6f
--- /dev/null
+++ b/documentation/third-party-tools/powerbi.md
@@ -0,0 +1,135 @@
+---
+title: PowerBI
+description: "Guide for using PowerBI with QuestDB. Use the top performing QuestDB database to build your PowerBI dashboards."
+---
+
+import Screenshot from "@theme/Screenshot"
+
+This guide demonstrates how to connect QuestDB with Microsoft PowerBI to create
+interactive data visualizations and dashboards.
+
+## Prerequisites
+
+- [QuestDB](/docs/quick-start) running locally or remotely
+- [PowerBI Desktop](https://powerbi.microsoft.com/) installed
+
+## Connection Setup
+
+QuestDB utilizes a fully featured PostgreSQL Wire Protocol (PGWire). As such,
+setup for PowerBI mirrors the standard PostgreSQL connection setup. The benefit
+is the performance profile of QuestDB, and its powerful time-series SQL extensions,
+with the simplicity of the PGWire protocol.
+
+
+1. Open PowerBI Desktop
+
+2. Click "Get Data" in the Home tab
+
+
+
+3. Select "Database" → "PostgreSQL"
+
+
+
+4. Enter your QuestDB connection details:
+ - Server: `localhost` (or your server address)
+ - Database: `qdb`
+ - Data Connectivity mode: `Import`
+ - Advanced options (optional):
+ - Port: `8812` (default QuestDB PGWire port)
+ - Command timeout: Adjust based on your query complexity
+
+5. Select:
+ - Database authentication:
+ - User: `admin`
+ - Password: `quest`
+
+6. Click "Connect"
+
+## Working with Data
+
+1. In the Navigator window, select the tables you want to analyze
+2. Click "Transform Data" to modify the data or "Load" to import it directly
+3. Create visualizations by dragging fields onto the report canvas
+4. Save your report and publish it to PowerBI Service if needed
+
+## Using Custom SQL
+
+To leverage QuestDB-specific features like `SAMPLE BY` and `LATEST ON`, you can use custom SQL:
+
+1. In the "Get Data" dialog, click "Advanced options"
+2. Enter your SQL query in the "SQL statement" field
+3. Click "OK" to execute
+
+> Remember, you must include a timestamp column when using functions like `SAMPLE BY`.
+
+Here are some useful query examples:
+
+```questdb-sql
+-- Get 1-hour samples of sensor readings
+SELECT
+ timestamp,
+ avg(temperature) as avg_temp,
+ avg(humidity) as avg_humidity
+FROM sensors
+WHERE timestamp >= dateadd('d', -7, now())
+SAMPLE BY 1h;
+
+-- Get latest reading for each sensor
+SELECT * FROM sensors
+LATEST ON timestamp PARTITION BY sensor_id;
+
+-- Combine SAMPLE BY with multiple aggregations
+SELECT
+ timestamp,
+ symbol,
+ max(price) max_price,
+ min(price) min_price,
+ avg(price) avg_price
+FROM trades
+WHERE timestamp >= dateadd('M', -1, now())
+SAMPLE BY 1d
+ALIGN TO CALENDAR;
+```
+
+## Best Practices
+
+- Leverage [timestamps](/docs/guides/working-with-timestamps-timezones/) functions for time-series analysis
+- Explore various [aggregation functions](/docs/reference/function/aggregation/) to suit your data needs
+- Consider using powerful [window functions](/docs/reference/function/window/) to perform complex calculations
+- For large datasets, use incremental refresh in PowerBI
+
+## Caveats
+
+### Date Table Limitations
+
+QuestDB currently cannot be used as a source for PowerBI's "Mark as Date Table" feature. This means:
+
+- You cannot mark QuestDB tables as date tables in PowerBI
+- Some time intelligence functions in PowerBI may not be available
+- If you need date table functionality, consider creating it in PowerBI or using another data source
+
+:::tip
+
+If you'd like QuestDB to support this feature, please add a 👍 to [this GitHub issue](https://github.com/questdb/questdb/issues/5208).
+
+:::
+
+## Troubleshooting
+
+- If connection fails, verify your QuestDB instance is running and accessible
+- Ensure PGWire is enabled in your QuestDB configuration
+ - `pg.enabled=true` - see [configuration](/docs/configuration/) for more details
+- Check that the port `8812` is open and not blocked by firewalls
+- For timeout errors, adjust the command timeout in advanced options
+
+## Further Reading
+
+- [QuestDB PGWire](/docs/reference/api/postgres/)
+- [PowerBI Documentation](https://docs.microsoft.com/en-us/power-bi/)
\ No newline at end of file
diff --git a/static/images/docs/powerbi/powerbi-1.webp b/static/images/docs/powerbi/powerbi-1.webp
new file mode 100644
index 0000000000000000000000000000000000000000..70f128fddde37abd4c2fbeb25e960fe3c860c502
GIT binary patch
literal 21782
zcmV)MK)AnBNk&EvRR922MM6+kP&gn0RR92xwg8<0DhL7~0RR91C7rwRuxBHdbAQtR
z&wem?j?R8S{D0*S_ka0+^uA;{U%4NI_;>dk;Gg|2cKT2Lzxhv5FCqNz```9o+VAln
z{XV6Cwf|ZDtM&us@Ad!h|Mfk<**q?Ym(Ero^L;L~$Mg3F#
zhxpHQ&+0$n|GWM9{fYf!|2zGQ`$xzJ@qgz3c|V??k6+gPg8!rcTJ{0{8T^aq|LtG<
z=lielzrBA#AFn_0|H*&2|L61z{G<9W`j6TF{a?R-`ab|YQh$JYj{gAuoBq@Dx9Ok2
zKZySr{3iW!`cv_L#{ZE17k;;Yb@rF=uZI3f_-Xy4{2%xKW4`!Y-Tf!=H{4(1-$#Bu
z{jc=P`$ze&@qd1QRsKczE&Fl(Bf)p@Pxg1{3-IsZU&p@?Kd1kw|10df_y^!W=(q9T
zMy&7q-}dju4}dRA{u%s}`seAd_b>Bb<-L3VB>WxsBkEuH&u|anf5N|$e`x(b{?-1M
z>96OX*!;M@#r_}I1Nd+8FXg}7|5N|1|G)cS{HyuL_)qWO(f_aeT>M}95B4wczpdZh
zKihr+e-Qo~{J;9|_|NMf)<5F^ockd4r~1e2BlIpOLnkvtZ
z`CMG3oY<&3Pub}vs_eGs&%zL5OE~med}T34ot6q}QL(1u7kWVhv|kIYZ2u4*OzX->
zNoAp2!1ky*TQP@!6=o;@WXDRYFAv>%{tkn5BK2Jhr?mm)N;OBwsqa8aNREPzf*lz-g?Z^vq5O|<@Y7l45aBckPSMjFhazU=kR
zBXLoX_)_)3HCFKaHt5$1c=b`t{_znwFu}r!vR%%DzRr4G!dUtYyM8$Dv2-AXKMhhb8))we-TFD^
zdLl@QvvKFx3-VbauJcWaHw$@~@?BPrPZchg^QEeXU$HL3rHGgjM6mCr&D{MLR8-*{
z)PxWfifP~inWxwQFrS9<(A^86^d(B;%n5mQbtHY&<3PBi7
zJNv!9|3I1W(_Al>;`*i^2TSH;;YN&p`9Q2)tHb#|lrki9{fllQFG?oKp2~W-Z)?|U
zveU0cCMCuguglCm9iS10wmYQ{hiRwaU1@bDTky^j)ZQXMwO==4N^fhPep@&Ztla5q
zL&vbq7+VF5+%$T7OVM2Y7v`*wfn}q19zgzUToNNxss2{Rqt-jfw7Hhps8(8XAMtrO
z+{z!de3Ol%eR0x$v;E2U3ynh4QT4NB|P
zOlef1zCWGz_`T$T3ud`w>|!{NYIvujP^+TbpFapbh0Np9O;y=#NC`r}Hhj4Ot83P)
zhe9HD92q=mv`lHVOlh__`dZdEZAP0!#+yXOn?%N&MG5}U=GqISv`-ps6B=z38f_CA
zax#dkS<$L!uUTu;=1&@J6B=z3H}En;wxdm=V@;xCO`>B>qJ$X2=~3vd4#w^KzDN-!
zG}LNG-QlLwAXs3S^-xFnUkF>hif&R)d{0=5
z=f91RJa7tiObX+
zat43mCe5W7`(|%?b)+(IzbxWn;rauivctHA{G9Gvz7<5;)js+%tGfUPDnk{ZU=aWRbw;TL6hO!~kQ21^$>L
zu|GQVcntq=ERyL-?L%K~K$I{F!1cHK!A{!S3zg2XmL_oJ=ll_L)CR;l{>6zKHX$vI>j!nDpA@W0)Gtdv;Bh3YHhmDh7j`^6-F1y=};f~sOe%Zv`oIz1LjMK
zA4=>Gb1{%c**-{B{I|lc#yB{oc)Y+E*N&hc($aOlw0}uOSjPZ~fOre{kC>O)
zNvW*8kOyZsep-L93h_^nGX4O3dvej_^|y+@-Y0}_+C=IWRc@&M!Jv2#ar-mz=HWFS!jn~x2fLNA0zAAMP>>@5kVz&?gykO=CNO@X1_6=;bb4HnZf(l6
zBU|N~Va!gN2`lT)^$w2<4KU;}x*TP<+zJ3bcJ7cP-6o4}0LE%q^fYD5<{02h(4yhl
z1Vt}KA_*<+>rXp!yKE`EDZtQleD?sBR_?OVGA;
zEAU~QZ!N*sasBgso=f8z$nP%ZrFIJl^qjxeK*N|M|?z80%ujurn+W9R88||>O{10zGb^D$Qu9;BZs(H8U
z{X@+0JxBd%BH+OQ;bmpM%N2s%JwWvh9xzp8v}iAn-x)vBK_&kvZfLHIyB%b`RtfW
zfVU>HT_)lD0}O`lc5jnRo2KW>QKxHV%X)8oa%0|1s>_&He?3=6Ipg8JB0ir@wa5s4D~u8v!Slr#aLLwQM%Oaq%jYms
zzicV<0Q6vhoLjLs8q-t?|K$h!+uoJq#qS2dehGOjfG;7^cS7g`7E|>VtWAff
zzY$+sg7^9*|H=5y*%odrp16h#<|{Jk#@+7m^|%k@3_vFNmson=ltq6gi?^`)O!qRW
z$9VMNiTAMnH|8<*vsjnK?F*EYn(#9gQ*2cVtp|%Hs8&byu2UEi?kUbP6hT)vPtnyL
z;atAzWLoaFsd9ck7n7=i0L&pdjVsiAd98*~#$nwVe$KdtrpM{l&qsapOd-J0Z*@`I
zch{}{D5c+K&QlR4=Xk7-rLa~%;SD^>VZ-^r8nrEvo%&rtWs_tlr#AGpcT{4Au*
z=%<=?-g1J5M*AKJZ#F#2WkAE_LOA6x+z7n|{qi+Di{zUpn{=8Js&LFCf_H9)HBt37
zW}T~|SU8U+(JTD0p9!#cqMQ01Q^VdyY5DcUk>rGV1GDxP6(d%)AG^7J*=Hj4o?dVK
zxN_y1<$TxZzG#xVSJ~^4RUQMUqr9bIiQ847(jI&i3kaI{NJMpU-P-eAjG?XrUiYos
zVAi(t4sBSE_57QOVHr>Z`)7Ld4{TuLY+Bl6B!szigCg>7h{t$^b>E;vUs?}N+%t;l
zHH#!DM%qM-t_!@~Yw^c+%6L`FXz{@^ZX2ebRNrW_t458$(~k)@5r*RsMzes`3lJA}
zoE^(Pce;w@pLa-u`X~5B^8SgNK!s_e1MDMCQfjBiHn|OoDVhfH$Kb7v8;0Ij@o{=j%JziE(kbenvlA8HU2q(^}r-eo3@s!;x>sLj-p
zb6nH)KAo~MB8t_uH?@J`h*tFoOQdl7olNUgb67Q0KdrCh`)Rcs
zXZ#$7nN4tlfE|RDVqoYK#{KrI;930vLC%RwZzP85mBpwal%A=*7U3a-Q_PK+>OX#V
zdN~f)HG=DhaBEE`60F)kX-S;Krp2o>YmZmB4RsVB7L@~5|N1ZGiOS)8E?g#Cbvg-%
z^te7?fxzMfBS8o5OD9bOOq-%e9tnBC#ds`XTQ{
z81;M#+>JZV;J(-Nyfy=9`v!xvcRbT_$L@()81v6Iq&Ke5R6XyHzIkL@K~&-fIA=qD
z*e8IBa1r@c1(H_*nSPJXgoCQCG!A5T2mzECbfA^j!?{ISvAg(o=1DDl2XIy|I`rXu
z5`x%KMq4366K~rPkfdBJav104;T06kAGb(hs=6pM&dHf%b;GIv`avZ7WNpzUQo2Nm
z#_~@n8$bKDVm2(U#eVZ2Ef&(aq-9sOBYv-;c2Z6Q|IgWDWbM!ox>eV&@=0mvdqPDsZ^g2gw^
zuc>28BRonE`OE?*e7o^Etnb6XdhZvtTVZ}6)r4CnpZ;HWj%NG-!kYL!KEqz~c5CCx1j*y_5cau$w{(Z3
zY5Ts!wN>uZi}=PfUv!nP;a^@WRM`g-q89vd7ioEr<(!_}NoFlRaDT#pHMGWwvwYLw
z<(u-sjbwm8{LbYw0)L*D>)|X+7;I=yUXU*`aB9E)lAOc0%oE4KHMhu(>^A64(?DBj
z0h$#f`omOxq4Pg>p`yqy8S6T8UT@akX#n45fl-vPSKQioQ7t9zsNt*D*o0RnZY@F0
zB6Ub9kb{7ORQ#mrF#I3vg!l
zkzFOAgYPRN_@T=7s?w^~@s%&=vf+Z_MtR-BNheIGynEbLD8)mQKnxmhSqFsHvmy9H
zkb({xu*ePG_;Qrv@;!oe6IjEpCG>?B?7{JCC=~=<l?KgLhp*^wH=u<+@%_t(rB!L`L}fNv-F+$PiE@)$ZY{2XXL0VQrOw`@*y0Jq@WzCpdB!@z
z5BZLL3jYzIyz1u*jcqhhK_N9R%Zig|sd0B=NG;R=D4JuI-ysBW#0o#eWc|p9MAPlx
zjt_``s`!1br^HNzbwiUt3>t4)MdYS?t{~Kci^~<@WV%%zVrbvq;UoB+pgcT76+5*e
z0cGF>va1)I7G_Y*3z}Zynv+@jm#PIPIDx3SU823;xQ7z(DReHWUnzo@IyOzE|M@U&
z98Pdw3MYih=o+0W-NCBAL=JPgu>X_Vd#@d}31TIR-bpev^PaiJD?Ut=~|+=5?e@
z-1t99eA2%MO|0h~qquFG;Lbqh;?u``j3%4ZA&O+p+aw;U3@V>)Tsh^FxpiN{m$
zUE8ex$>rNIzSSuNJrciX2M+(o_OeN~kI?#?=eFI{rXJ7_@{@Lpqg>52bBIT>Q)FhY
zBd{-&a8|@ZkofDdqMZ5g%0IOpi+7BY?vm{_VZX(Yx&5<_HeX;w47>Q6v18oPA=4+G
zj`#om^!eU5P(~E{$(Jv!@V)RPq~QUE8)SPru@Mh%#+DO@?Ydbe-81-H1adnk
zrAXcqmi(v7CaZdgGG7BIr`ejBiq*}DE;AA0h&~Dpp68c-zM%)aidA7zhm3d$y_Jn0
z8IN$YamHRoal3ImubAk+*L@ye#7VGe>LSAzob3lY;j$(@tiuR?Q#C){6-^U{z<>+4
zV-3)ap+F#k72>`Hxe?22>`O)^t?y8E|sQEU)BL
zl%s&WYDxRrZznIo(930CQT&LRa2aMdxD!VZkst8;d)V=|xX)1rOW*?86AaL_q#(^o
zw_xvHlD_$b{^@kR`QF0?!j;*yQ8SH_&y!!Sf)m$Fw1P;~1g2LX8Xm?q^lN)ab%Duw
z;sKLz*9P-0tk9#Tdwja?z$awE!%<)NbqyLUkehtpe$`j=WplIqaLB_S1;2~!SA>`H
z#Sd8$`mUOa?(y;H7frc%QS{q1SeW>$463LUrmo9=p8&?`k?@2H`RhTrQI`j&3Hh2>
z6bhC3#tq0ZfuU8tQSCQs#Zyk8MLHe`a+rD!rg0_c}-07CV9Xj>99aTtqPuz~og
z-}Z5w?p|mqS)nzz6~nnf-DftCz{+OKk~Va;12O!^AlvP+<6G!kqPsH9
zj>S;{ZhqbfUT7$3;oR3YvI7y;F2j@4=Qr3e<0Yh%agf-;tqcXl5PCOvb@FV!(Q3ky
zxyg!|Kas=WBLFytA1p++PbgN|ryYLN(1J!NS${EC|c_L2a!>L|e*acoZPBFMKS=C@0
z+0;3QrL-W7O%C4I@BMxj5g&;Nkte{UToj9m{RX2BlEyiK=SotU0LBG*C%i(~tPFi&
zLTi!<*13<&^!yV~FUxva07#{NCAE~8d@2&{RgK)V4LO4Hj9DwqkiP8x@q2^>p<;F#
z7j2OjvCC8C%(A0kvC6WrU%hiX*}McW-9uDW#@+oqfVWdFTX%bJOZd@5E%60uuPAEk
zIfc+W@X!#>Y#wh73R`|l%9=d4Ts~iF&QFddw(n*G%opDZI>$*0wFnOPyc87J
z1s>6Jj;Utk)ZO6EKB-X4$ky|^bh%ayvl>b6#5AZ7_h`cJF~@+zr!~Wb9h-167SB>3
zR|HZrR`0N0kA7pNWP}fPOVk1;<~6Z{k`T3}N7<^&QLos$*Xfh;&aE06z!Gcq<}BayH5M5LTENh(zv$zrrIEQ5IDX>8ux?4|d5X
zxFU)obu1mPlUvims`kZ=b_VQ1j50&tx_#;F!bbZ`DISI)qkV;cX5+$;*wx2+=xJI@
z9sSUIPldA4=O-OTe2JYl?Mx!3Ykr~k>7W~7N0h8>tg|`Poy9D(CFT7e#Rng|1OW?a
zA7dJP^7i}pmhHUle0(hPmz)R$a7*D))uK=ms#ZnAjiJJJt6KLdn2NL*L-$ar7r0=Z
zTvmA>y9FtnE`TZ3rI25Zf8`8b$y9U10J(_Bz7oi5=T)61{)-?6+v8eXRshv!vumJ?
zX9n?ZtQL0v@&~bVv(X`Z>^6~hZ)YQ8E_~b&)7P>5=3P=Av(l-SW?V%)Hkr#wqu)?c
zK|XW9iH$+$8>Es0UHOv%7c65tXJ38^Q7&oHYpN=Vf7}GXZG0|}5rufmapNa*6XVWF
z1NJgf4eF#kOA=I1Bp8yy)ffr#65>pWx8F+b4Uo-jrxe;0)Mdv8=YwN|eCz;j=cA^;
zMj9@s_hq__1gxbP%HBIe_^}tkrzZ-HCCR@7={eHu@^)c#2LjfIXqj%~Mm%Y+c95DC
z(>p;C5$u%oFNn;1O|Y<>eRe=N!*TrI%0~N^Q+smvhZe{5&cZFn?QT2UsNtVqxzhLl
zK#pVk8+6Ex5gvP~Ym6yP8Tt_%23o$_Z~@*BY_aS%&TQ#~3*PO{Bx_S4zF2!zz5hb}
zP==~pQ!N2SS>XrKWeVGSCsT5HU9C_L3k?`*CJxBkbCU*nq`cIdHo&8uwj4g%j
zCKXA0bvKO}*JN>N@Gq=u$57Wuo8DmEN_XZIZZrim73n`x2Ya08)I0-&57;49asE+9
zqx^@7sTy`O>j0j}FfpqlXIw8od^J~av|mPgiPZ4;#H1Tchs*K}2B$kl^n@2ShEFMs@gIlx0B|||NsBUq#-z}mE@h~0HC(Um(8A#dz95)Tv4Ep*
zh1|}Hay{H{`DwYyG<}pBAa(;bRSp6=o|eQqw^dw#J+O|j=5+$+C=0N}99K)i)#k`jc!{Pz#%WVP?IZj8)|zOqT8cEn;+5gEJSba@kP`6_uV()FXujZ
zTm}*cOL}qfCO?a+aHwmUo>A;>p~)*f`7tIoJ9M#n=u&R8-F9FbARnM-ewKc&97?NI
zzm08o=V2APuE|5@-=7uV5Np?%wYWxoBK0!0g-cw~=b*7J)kdl;}F6z|H%Z@29y
z_AMGV1a}*C%YS1AG#=X9ER!&mGOOlVZgisUwRcY{jF){i%kx=pHF4B<(P<
z1{f`2T^>2E1c+gSae~qIEM_@MPr*?P742-g3Ada&gI1m+|0RMUg
zAG6=v0#-p!cr&0X1!()5UY4yXBC(VAEUtZR2tNTZb5-615U99LYE6Z8?(5VTUs|Za
zA?@X9NGl}R&d71Ovkkse%VeSS69QoGv_rsq$PL5V&`|F;Z->Lanov;-EPk8a2G{IE+HnrO+XMkg~So^dfU9Ol2C0Yll
zw|v|7##=1!(*U989_yyOn33D;5WuqGEsiK$A9*Ce1ytezaX<}0#BcSK2`%xkwKw@p
z*$@VKNRCQhytx~zwMEB_gpfCu64vR_?jgY5YKd2Ccp1+K??j=C@rR2bl3`jL)ppXE
zalSF;-`fI-r{Vqk!)W?@W3M!e6zl9{9+ADRPo4xW)2PDOHMg1qL{*pX9Wdu=Z+h2O
zd<}$D{a2EM2ZSwh6ZqBH;fz@%kO`Kfxh}fscy-EHL%D#~Nb5U(iV1JOYqbeQFQfgF
zTm##ca-N`%a1P)`9(|UxGY7l%LXFt$ckL9&|7*UjBx(ICc-aq!{HTBL1#cCKG$jzieE?jCb$Q;D&;*v
zCxA75UhrQ#m#wv^+wT&XUH><5VTC!%O))>6>Sx|E8_+9&N_S;VR|gE>4LiF)U_Ry6
z%Ttqgskc2<0m{vl4^&~^{j>~Z%ROFpr|ZbTYo|1x9}?HV%rU(wQL1gSS9KTW_UC7#
z>)XTiCm)C?SZu%N+;bptAqJU|k9S0EU2YYM&V%EQIH1eQh}^QRKhRa|GO6y^b&InwD$fG+U@ks%p91COpfQ0aI}#FJ-
zySL&MpXTi237^1Avi5wRaMRa?az#8*DBqk@`{>PK(ArN1YyKI(tS{LMfyfG#fgB
z^V2Bf*lc(sjmVZRWxcD?=%|?_Jc<;{A3x}Tu@ho=v-Z1vyCyKLrQU?n@oVE$bi6pg
zBDF5dWNn_zbES*HpQ^I3=e5)5MgpgfrrR&Vc*rr=pB*ZA)~tm_HFL|;ei|HiQPCIr
zKrh2W?vMltR8&-uBHeNVK9bSMO5U@8#GU&2^y*P}_MXq!u3A^(yTQXh(?Y;Aa%qc&)VR)rG4rrM@Vi)D~$qq1ZqShBP)t`*A8X#g;T@olvI#m
zkx-&=UYZh{?*7G6aH&y8tX2##8u@oUSVbI@chS^sTwl489H-O=9Wp-zLr0y@S;{a>XXYYQa`*&TDxfJhasuw8zw1=X51q_cURgynU3g3(-M4;3vPw`q7L3}@M>C>pyx
zfAgIm)u!~&+~4vmdqWe}JV02<^o>q)3a5EAd9+l#UILe)LD+kRPXG0?P%+l@n&m~q
zgOIjnVz6w&PGs@;t&52E+N=z&xLwovLurHleolqjpu1wxtc_isa_Mn_zo-`nmuVLDA;VaIxVTah~gdt@6Tt!-KHk`k~MVo{PQ8`xcfhEmPt7LR?
z!*(;VYm??dZC~-Wt5VzMVA;uys{#Pk?Zx{bCO6tVfHVskm_ef~J*Wvq(xE+&-w2S2V~izx<$;0tlNXDzYju?)qpT5c+RaBoWWjd==#h@1i?O%kaW@t{T4KSkU2x3_N;
zc|rS%4I_UA+N<1LA6r0;7Hb{=3*Wi`Q}&I1<>>TddF(@$ETxQxe4obY!B4*H^)82P
z3%{?0*rkwvZJ!d~Q@M|1Qf3fG7789p@Ao)q;`R2F)jGt!1_9Jq?MHl2s?60n3Ovx&
z+9s7b+dEAtxVc}+NaG>OsJK&{_{C<+#->6T%>T2|xYwp^l_6!BP`8`TzQ=-?FTk
zI8P#KxR&z*qzK7{uQ`2rhKUk8cqSGd0VJjSr`8fQ!>W41c8%Xjf6mVb3|e=QXQEVX
zAUQo$OF#2A7MfD?9bn0MB8<_e%Up@$UaqAHyQhwt^;k1Mnu?mGSKT
zt&uw7BFy(T84S7*iwZ}YWM2?!YZ9vF+>`E6$%3_GG@$?>bF|W&qO^9Ep5DbOK?+$esuCj%
z*9h>QF!q)R!_@-`ei?DZp#tp&c)Y)~GChVx6>XSiJCYw815;#9oAL=OKE4beij|7h
zHebv|ckqeK=}PlH`9vkV;VK&vcHE)H8XP&~U>+G@4cCD0g=&%h#f=7^q&0H^=c)ZI
zrHpkyCWBlN}k}lgrZITkuCqtC9(*}x2`9`VwK$PC1?B-YYJ{h(V$^NLlQ#3SR
zDeC$fQ8S=vZ9iqMAhjj}&ATKAo3btNUoUJFRb4^$?JmPKO~1r2^#!t&b#Pc&YXE#g
z@Vz0iLG8JmNp_GHan{%;4S?wwq)H&>sASWuHz3y5ko9M4C03b7dbeWlo+s6133f;e
zT|-aYhspDzmcR~0fYJ*%Z$=BU+=00up+7`tqe@u!GnqCXKL9}Jaa(g_5#@_*F7o7i
zzwC@u3pJ9Rn!WU28#*EAczD-QmN2lvdE|NCVX%pdgT^;7nWcdBF5~G1c6KPfMf~P*P{I&)sAe<1_%83a;flsxM*A29YU4*h*of>Bk;%A!h9QKAgO>-Uw5o<$kUZ)fNi#@~&^dmIaL`xxl4$>TxWCst~O#?JkJm
zD}Ar4?i%6ka#6n;YxypozD
z8^uqD{b3L=0XOVo$<%%q~
zZk)}jQK+Our;dd~dn(Jvhwy}#etn{1wMg<7(x@GRk;I~Bfaso0(II$$
zS4m{H@j1Y)oysh$FOO}h|IBX}Wb(y3dDA>sAQU1qivC2LTOjmg6{oT|i{xRcqQp^2VKvvVbjJQ}jS^+EApEea>jeR|UC9Z69cOG2DsQ`bq3?8t7c2
z_4C^w_H(vUrm_g7N^E~#3YK+DcHL<_M#83RwIKBw>T=dB_tNY18U3{8TUtRj5=dG(
zIqhv>9d(R+)NZBBuF5Jy73I`8pWQU)s#F&F3NAJrX#tmS+DF8|UW+XoRH6n`4N$e(
z#IZc=+BXpO@<+6OA4U&7VT$IxNE)H4aWA~sWJkL-5(-Cekzn&5;SkJ+hqP$~fZ`%f
zJfzJH1RA?fkH|rweS%XAQGymJsWHb)=bLWm@+CpKlt8PZaj6J`T*``DLgT`2nD49g
zIv#li_l;^3V+MBzkucmIp&o9m25Nrn5{*|C)0MlsRUyWFcC-x`*+bMc^4=wvg;VM*
zfvolGbGy>*aqPWkaMkah%lUgh?mjQ{F8C5GlCgzJp_Jn7n^z;sFuO48o{|HzkF@Lb
zPip5BTM~p-M=)HBoM!goMvFxPNhxn#My!inrSPd{lvumi@4H^xT=dN
zIjGd}OEdqMb(0ga2Oj=JA_RL0
zQ&mm0vQd2b0Y8xk1wH_{eY|atp=NcWVG6RiwALq1b6^^}6!DiQD1c(P@z2LC4FDb}
z(HS$K-dNCSR>()TFs|@*#!+M?qy7Ae|bM|j>$xQd!Mv58hiTW<8+AKM^KYCuax5lYcl}T;w=~bMNw#2uS
zVXK-{2mHuO;N8aUJ(y8VIBx_~VrBO~C;%2ouq+SYv@XmAI$8h~Ys@tjn#3zZkg>4a
z7fJy!^^T(6+~2-}U?^&AaP`0z76>QDGLs_IwG$P25Qoqjnhj&2?8taFQt$Rn%(nC9}rZh;osJ3_ls
zT}g2B;rm<<*g6c+2kdHy@;JqY>=}u2g??6y>CiUa@`1SIHPgAoAt158MNR|c8bUrO4Vo7
zslbc*N{}D7qeA-nb&kqpmUg8C?>L>evIiptm4a{9JLx6z{FeCFDoT8V$tUP%L{6fR
z`vo#T1h#@1Yz-^~B%)4|T2l>oBpsw^cfF{aB0gGV)hW!CjyvYgu&Ta+nFC;RuXZdBRD
z3|D*Mit%Tsl}(oV%MK{nV)UM!;)j(QTx>9WXnd+ybA8V_337prDq3oZ#}RU`WZ8$A
zjzA`hfHg>ll-D|Geb?u?Vv<^H;2DO3j`RF&7(u}^(-#s*hF_WO6?79eVgaoO5y0V+
zAOPh|Ri!J1zw|KRdW9|c^Mh?vwv+?!QL>*f528K?(vF|(5y72=eUfV!`n2;0go2q?unPZrqpx~ByWW3@oq3GP0uUAw<5RF+f&
zB$*?n6r0#;sZU|%$rbV#Dt&6Ujvabx-R*WG19H)|H}tK=A^wOCefyvE`kmz6HF=7L
zA@6R>n!8%7{KVwXY$SQte4`JpGbZm`&mZr~LMPfImLC4>Akz&p%3t^AX-LhRqFZ=B
zl$RO=Fv=C(q)J1eA9lkfDu#zLn9{wc;e5Hvib5~0PDC!pvuKxFA-Jr9hjI`#bcPy}
zbnps7eGTOMHMIwB$Drf1~HzVdCGM6~RLnFIQ;cZ*H0wGE5cJEK>?MTc
zp}(hQAls4_M^i}9nyzu)&F_R-S6>k8p)RPbt-aJz=nL7YNT1h9Ql2_MkLhDguP>s0
zZPR+n$LX^F2GfV%td|2Fe6u=vT
zglqULre07_aXv1bcQh1Le`6&(l}WsSRv3D<)ZUAY1YlvAQJ>|up>X2s|0LFrii#oz
z!)ceK@GL9eL)Q2BxJ4gjsY`Jy&a1tHH+4g6IyCGE`?g}Y2)g~0B$e0DG?jC7J|L#C
zAfa>8X^dBh;RnL}K1|M`eEqAC#fiix6BHQ-nzmWRUhXqcL4+OtkkpfgFdt{$(ILq@
zyv+p}y3ztA1}qRi3K>w6oF96D{ms&eD#hDX1;=7t#s2RlbJ;&wa=Plc*B5&iuDon{
zmo8y+nMDB3yLFN6dNMYWIQQgu(OB|GA~q9$%7bKIBjUhH@R#j)d7a}7qr=s0=C=Jd
zG3F+4p8P?=AJXPJQ|OYD-F|jE
z*3wG=Q^Kfus26wTHUF
z;6iN=44tgP%0|F~lr)91M;vXykjFln%Vr=bCPptXj&vat?KUT7ehtd*fNnmG_~j$X
zePbd1&1suIQUkO2Z3>`M+1+3z^ajCfsKUsb9&5Le?tb-7tCG3X>uHreQ1T1|?b{)S
z|NqS106uBnPO7l4{Ev>0fH_n6Nh`Xf6v4vqMy#KV3nK4ChAiYv0_`5pw58%4XdHcieL>l9mzP=Vd#rixC&4z
zCEhsI958eiE#66^l#1r@0|?w1B=z5y!HYo)d!(hV!7_H22=}|MZG`>8pQ=7dy=d&8
z0apZm4K=p2`a}sMC)*-f@6h|gZ!;$X{!MvoeN&WMInn@?VgoHmIro1Wzf4-R_8Ga%
zq$GYgXQDM}kvIKjWb=p;h+}j??_dtn>ogKPMQ>8|nxQpGhvRVqu9b;I3_+k#G{L4B
z!gOZBT)phnBqp?k7fXki3W0)EcjODJYNi5!qOWi>DD-64eJo~SGNyIsi8iu5Dvy2)
zsn&qwE&TV|yUl<&Rz96Vuj!P&8EHN^lAR`&h+X`wt$Rp3vVNIExr&C|!tj=J8`c1g
z;M4ndt|Z`6sCWqAqBH^M11sGG&&NfTQ7XBQw{l>?pO+JDT3z9d&jmbyYR^Ei3*vH?
zpWc@WxhqbZmK=mS|IvTX<5oQBg)CqS%8GiD9r20tbmqiF~N+Vj?AmDC1(gck~qx0a)PEsd*t4HT5Ec>(fN
zo-J;_|HGUf{%ha(DfR5tE&R|-h{L?%_9KB6t~JuE6-C@xG{A=2iPQ~TGEP9XUI}rn
zol765n;peq%$pw*K9+#XgQ$R@gm?f@7NOlmc>muHKU2Z{y*yi08t6@j+v-X8B4eKDjk2s_D1PaxQIx_IaMG{0tN>zC#g
zn_t*r9bSD(-QTP>i2>50;Tk32{U3<-3fZrbHp{cD+s-985MDX7xLr)Lp?J*^i+Ncr
z+c`Gl(0!N(35O?)QL2u{0K*|Tw0S}R%e$sx2OaS)D6sQr>zxAYR>skIs~=Qz-#eD*
znRG$r#lVapsgr#-VmDLEAfJ?wy6=Unqt>WR1XFzSCh}=2g76T&PpkAnNhGwuNY3AbFwXLq+_1b$
zJjZ;NIQ5N@SXcYfS$uS*4HUpT$%V;muI?6+Xxkec=d(P=v|T$fmR3fp5qOt45WyJ}
z7L@tt%r>x`2EV0_si}Y=-+-m}>2r4oag=Ct0soT62{GpcvTRv?%AKR7M(sfr&l1GT
z28@}Ug6W&hJ#Dt$;>k=@)6$}7lQA$d$UUrgUoWwwL1eAkQYR#%IShj=iq4pkaI3U8
zn(1CRq`du|QFkw7O8C1T8yu>CiVk=;z{~NbT?hYjk?frO^$!~-m&o-$PXOH>w}AFe
z6a#xrzWwU#$d1OVO&SD=O*HTLurSee)v)Xsrt-lXH#_O6ZKWw~*DA5wBcghGH)zeG
z>qM?=u&;=e*PJB=#jm{;TIwDL)!@>gtP9}Or9abKtGqjy5No||?|uvj;eln^-|&Z56li21q-
z*Z13mE5Vpt#a;ZA%eNA`cSHFoqS2>de4?s%_eyZ4>q&vi`+$U+8Q+O6gI-z4z`T6>
z5GDf|NEa_jW0bYb?sQ^&aLnz^^kw3S#R%|bqklXr74t>l0#kCTN8Fe_io)oR17zX!
z-@+nWSu2cwA@zUhMdi%ihR5nD`XR_hM=9W#Al9|X#`6;e7q4&nw!RCi4~{vdN{t&$6xE~v5V4-(k5(TI+VO@wtyo}Un0GstloVuE
z@gz9Ig_@{d+q~PkI7h8+l!t2%*ZslF*#y0Ox07_;uRI4(tnq132MMLd(dGV!rm1J5Um)Djv
zzh!j=cz~3d-MHN4kLWfMPY~VX$~Of64oL<}v6pq6Sc<(v)A9&7h=J_(`%rnz|jERip(FpUvIky;p
zG-%OQcBYgCb&P&iRWFOG>E{jCcv7yCNJa|PdLGP1q`^eN#EPxXfz1(9t5z2;KhKHJ
zbC!mtY02F1nvMN@Tzqd+;&TT0=A8Rz`{(-fZ7Wu^nug&T6jv3g9O>0Wb85A5B);XOwpVV59nL;5%h}aYk
zr)pZjT|}D>g~YmHq;#ncBK4NG?ZUy2Kx}lxYf}a6m+p^zdae5=%&uSY`AY}{*U9AC
zU4JGNJs#QguA*PS^!g41%thju%YkM9mM+*2YaR0o!Xam(pjsq!3rp0~2&d;uWN
zeRIN~mnf$-Kq8Qb?7Fh<*;e@1sr5z?hauxzBez6*wI&~!EMNIEP~mMHH;
zc6V@(VT3kGe;knO2?`VDmV60Zrbe3Ky13j@GpQ2=2RX3cJg4V>J?N=woA6GJ=%$^$
zZ7A~#8@b=BX5skp-D+stTawk7WX3h2IQ;aQ!Raq>}SL
z4Xdv-behjMyWtM+nwH|hC#gWrBvK;l@g63sP~@J=PTP&GN`F+%(?`xBFVfsOlHcc$3zZ%Yb2JdJM}#n2e+p9erYX%Qm+f!1W0bM9UiZQ?Z}
z7KnHslw!h@cANMR>mY_tikb#&KR&S;x1CBGl^NSS)ASi|4KnkuBir(#4d&hptp>gJ
zTxF-q9^x5t==p2AZTS0G;U@;7O2s1x-*!2}OzASt&zs!jg7AqmNIYJEpk%oZiox~<
z5mkU6B}yx@ol=8g-CPf?#C{BgAX;mJfBza^o+%OH!MMT#ZFM{C5H@$EXcjCr$q-uCa7jk>ZSB#Ci24
z!4gi!Ybd*rf5b0%`dc_8`+O4b6GhvlzQ
zjD2*9Q{|{ZP!-5HynqGT0NU^G<0BVNbSMw%Q_SGB(Ve$
z^!Pr$uSb6HW@~d?G)l?aqU2%uyKK|ock^&_$ut$FW38+M4(%jn_z)(UcFj-j1f^k$QiksqV?Zz>%IYYzCb6~4^q
z{YBrBWna}oh;1!-{ijwVuRM7pQp(O;hly>PnH&9I3~KOk6wVC30$?46e8{$gsTO<$
zaWwke2}*{2VR{juouUVA)h2T@cL_`nVK-M4e=;bii;P5vNc^-;^qT5*^CQ+{LF){{
z|B+Pp8Dxfyr4~6c(&OTw0Bf>5Sz;eM*Yug!;nnyo7M>-*?fk
z3lTOHvOC4?2{1CsBFMzM?|3|7gC=4ZFe22%2=7dw@H{WVcqQ>!(a)?eewf5d{Q3k9
z{wcLydczWe1_XN}>7;acmpJu!*)v9SlmNuvd3EV)(D*cqzVJ+6oji=f?;+0_!F{6c
zhoT;j9sWwOr-8OX>OSd<-8m-GIsM}EypDt$pz5a<$0P9O)AskXL7d{u#m`inRAYv=
zl0yd4A9hdf9ZE#&Ja$8R3eQaOV#H`hM@(jy{ATPON(@%5e`#Op5Iy}iW|c%@NkQJT
zj(C-yv--dgJ72=6*t|o)^@v6Z=3+kvXJ|M_=Iu^8Y*_7+NB{QQ75@-2;GVx=vEl24
zJ0*x{rae-8B)sJn+P`m}abNJZ_&PD9Dtoy=;6W4Te!1x|toOEe}j
z)ny!myWQw+%y#njq7)H_;jf->UdcU;Mb(oszVL{i!Xm$e!M&TqS!LyYQ~JLzPsGUu
zql^eFem>U{&erzy%q}1$EXZkPs2$m3m0<3+h-Q3S
zA|Ub{KiL55e#NA4mfJ^f|BqdA$zEd3^VgOFB-I9ry_JpTxH0(ZUoUoV(o=5m`F|88
z(LH|4oSJ`sfq?}*Q&HFm71ZvC6eLe)9pKrJJy~U!en^~p)?;|^ZsS@t;|4p$e#vH(
zj~BkqbXPG^PRKW8z(96zB9iFAF;?-wuI+6$z#?|2*1n|3;Y-P3%Ke5l3BLgtz}Fk(m<8!_
zl(gVgAIpUXv#vLt(TGh}3j8#}71J*klO+Bq+;9P|@}YhtazakVGs@gmLWJ<>gL=Q;
zp~k92Kg9K9XY?4ki_a5k7(z%m8T*uM?x9pGyAoLwK7=HNXO}5Pku!Lpg`;UrtgdKk
ztQ%91!xyieh3&)IyLl{xz!(ag43U~t%1KCnkB^D{vPQ;ro=A#3FEACwjHdx_Oy~TB
zBaeSYQ9!1J9i&@NyiU=Nr1_4lCu`5@zVXja^eIPo2f0D};9J_d;wpLZl#LP~X*Utx
z>R6uJt1zR&8e(gja_p{%p3{NXvX~v_U_&KRvp<8rxblUG8ncIw)SS)yUAc^79g?f#
z?;u-2ERTlhYQrW(zv@WlxezsRl4x9zV@kX;QC8}XX#k?9?@rgh<*}&S_L>$mM!yxt
z){m!6eGkF3E6gQm*(AHv8=APz%|e!?ZFPInzm6|*hmA9EtVt|1-ej8FOr$3OV*BwR
z03eRU-?jBl(i9oQef`3TF-`qRh()kvcbKwQs`H&m8=(ro!Dwm{gm9dl(0tRGFJrR!
z@##lh;*@d@lya3jIK`a-QVK7)+~&t%pyWlJk}bO7Y6;wV{dZQfog!6+!f2zm)e6~n
zaP{(MDcKpr_$m~Ddp?^OAY)T24fb7L7F?H>lYGd0HZ;#AYaObp?gg+(oC3vG*;kw9
zSFq8NY~mY|1&lG{G5bkC_aI}Xcx~Bv8lkFCTBxo}0{V8-haSlcr5Efd`1qYD$&E1W
zaEPVF>BIQTRilUzc9F~A(<0)a_x`X&j-EoQDb2v}u`bfpH?k|VU(o@+1c{MlH!4)e
zjh^zVag`_6A-`HG+&+7Ra}oCo8#hU!XZFF}YpHHMiSw
z==R}Oc-sNBPbO4fJUd1hl_pwbh99YziiinddiE%4)?L#8Dfr&xnQ|m-YWkA`rZ!iL
z(c9;u$08#9C4R~QzDu3GoU#@JlCC+Vn4!|pm9Kk6xor(=R8Vz^$K|c?Oa81WeYsoi
z^F)WEf+)5taVvoJ3G{mDO@HzuxA0#S!`EXa)@Gdm&*9gg`4%;drXr2!yA}Hy+>15)
zZD4bhMuAWXjfw@>OL_Nv7>SEuwP3UR%3v$C+5IBb!mm%j-?k7n0eqhFWPTe_&)8(m
zShaM(VoOJjfF28C=45-essJBxgMOLZ`Hf=)aq$XRz3?j-s*<#Po>*^mr>E?*B>DL0
zp_j&t4hTpH?5Bco>Gx_o8)WS@uT@pd6JCwCS{|Xc;<4~z1tL=%d?+DpeW^I6E8G~J
z$>UOk!
zgNSXz%;93is`F#Rv!{;TL*6(6q8?9#R@dmyEZ>6{03FUs(5vY^L(|tlE={ALDjJGY
z%{l3xaj5{U@2dOY5QSEBX5?5|XbohT`Y1_ZH3qRQag-!5Oy!0wf5dZ#s*Rv$y@dod
zdgJiU`nCBnNyY+wGV|}PK8yf!YIjZc-X)h7Kb_Pbk;XLZO|0FZHpDd0u6
zd1YsayIY2^T%JgGNJeiBF_-6JRNP|bXLEtO55bJhBX{^~9kEtT0vL~{?t)O3IHAmk
z*LPRA-^+rLI|Rk)_Vl(Z7*Ph<8<*WcruLZOCqY{y&&e{S6?8sn%@juq5gko`)P1`b
ze%fN^_O|>cPa8rt{233NdIcT<32(L4G^uG~2G3pNlESA`Gh!N&pFDmcs2F6n8RUED
zHdDY|?@S7Jqvw-?p%mMrpfh-Sw=*K`L>35Vi{Kdx1_0hCQvyC^tZfAfuT)~M`Eo>{NG&FC%FbuMEoWs+
zE4f!tKeq^lJeUJl72Fp#h$r(*_E374wYxIBL2{97ZXqVD=-@_OH
zp5Gq=@o?`LnpwNv?{5w0p_f(67?1I-7GhinSOJeyXJ^KEc0?gTBIghr|JdI9${lqC
zr2Oy??%?U2!07s(_9VEj&h)&h?jD_MV)ii~e%$5RhE>UY97-khnZ89LTp2dkouim8
z8`@umXukTCC7)fj@SD{0+m!v!EVF7Qdhl!&8FHtCI8K1UE~SAq$vHhmZPh++Ew^gx
zUfvbYUyFad00hrCY{7JtfvYl8tXKdlx7aM(eqV&hji==v^V$T_1y8wik;d*&RqbqF
zf<3831on!O6BI1a~uv
za1Vw@d9>9$@nd~M;lbE7p_h)E@Y$+0IsAX#B&wlCsdjsl$am3<*nhZX6%xd7%Fd$5
z#cP~PgIM{vMJ-0duumbv?WRI&Di{FSpR>aDhLaJbvHyRLAU?GPr
z%NfHNTc`^Nlj~JWLEMeNgCxP{vx9mHd&12h=IKcJ&;rh
zg%D%l?Rc5qITH(Ef(eIP6(awU|0EZUR@!V97Cmm8`a)=_*^!d@u(lXThB6uYAN~0!
zFLWwd@1D2#HfvM1Jh$E;G?n5j%`bu{xXnoj?-3fC?)!9^XOtw2sX}mdbeGd0(SZ4v
z9{yRckYbaxL
z!Ez|V&FEQn;&<5`$yLlr>;EtouY#2FJ~-R9LMUc2*Aamk0Kk5i6tG#R=ksMUUFV-K
F{|AKb*E;|J
literal 0
HcmV?d00001
diff --git a/static/images/docs/powerbi/powerbi-2.webp b/static/images/docs/powerbi/powerbi-2.webp
new file mode 100644
index 0000000000000000000000000000000000000000..04c8c62b462d43b82f92bc2d23ca8c4f40ee234e
GIT binary patch
literal 31874
zcmYJaV{m5Q6D=IuwllG9+qP}nwr$(ClZnkqGO=wZ&z;}@)_vcqu2bjB>F&MOI$gVW
z*H)Gi7x(rB0@4r@R#aEyB(nea?g$E;2TZLAk_rL@1VoFlyF0xx_;iR7xDM$5IRg}(p-vC91~h;6ztKE6%nA$v>;Z^B
zpI-$(1C;}t1IGc$->L7=AFw~`osdrq7Xo*HnV;VPPXORi>{ICm@uT9KP?2y3&==4I
z2>Xor1iTo1-F`*9CJX=?11bj&2c`o$05zY0H{dUi_ktaPTfmROsKQDAputK&gD>C*
z2!Q#c_v-Zt094$Qex82a-Ukd23Juf`JPwTgy!(L!F#VMMe7?j0B0dxVfS&*$0WZFF
zfk6N3&(r{*pC$muK`RURh(4p7hC>ntb3IdQx)~K{(8nt7#&rQ6`y5v|HKc}{WcEf3eT^q&RUNDcNl9cEMlDDI55X*kfF!xL*E*(}()mhbHk~M+CzCu-$2NP
z8}1+nR=0-*SpbzcumP+2)*usD9KxH3xJ(~}V?_>fDMv!&xonxaY{6@9{ViRxg=&5d
z@*xC^W5W`W-rtbnE=q7`F)BtV=r4>l8!8pY9u=p76wa8=YEWRHa-zUw8{Hdb)pa}s
zZhouypBu|Gwnv3GX>CK8^Z5{b?=yOa&;lFcwe>5RBgy>Bv%DhN9lAP2J;K6!N`N!n!P2yVf_r?P%il!2&
z@`ZRu;&280;-CzlZoy9`VxD69q7#JEBgKE&aYazQ0e_pf9JOy*j<01=djOeULxZ)^
z!zY3!Y(E=%4*F~fDEvoskf~#&bbsii63abGo_RLYBdw`cb0_ovz_5dF5X+#GC$~vG
z+Qc|L;UIV}xMD9zV%i@9AJF>yM9F$X!N8Wh;67e!=lvhgt?Yfwa@^>CLTBwzU{P~C
z!Zo%Ir1CHSR|C;&-7R#c%2)mdj?#)H*Eu5S|6*Lu$bCp7XFw>j4}r~aR=WkKG?dBy
zZ>_&;B1Jq^YL-v5Fm#G4u+yG^bIhaEzozvIn7#Uz@cx62i$%NlEd-R00sBW@*mtPN
zPiPB9A$%u|RE3FF_N*BBKN-7bE%rq~DB$Gd@!Q{TXpT=sE=)FOe5bg93X%MaU))wd
z@t-SWpTJxIqx-;VdvqPr@9*G9!0LqesR;;T#yGgUU#rQ9t`;7n9oBm)7|N0psV6o_
zbfLMgNgi~=gy3N-Hm`MODBFKgoNitP#LyNf7Ag;r_U=_+A59dInwZKLS$s;l{>#Q`
zRwX8gO?**IcTRhYs1by5`t*uV8-XLnFqzaROj|L5?@eXs8ud;@V@K@o)xKyO*|cAy
z7jw$Vw&8`rzwqgKpsl`sm?n5nUBvtFc@w$f;OPq(P`tVO#|@QGFGZz}-(WYXTH5l-
z-N7N1U%=?~UN|Em6#vvf4e}pBjpo~6;ZgtTgFTu?`zq?+ziqCbg6|E^f0pLtcjXQe
z!EpCLk1&u7HK|5%KshX;<|SfU@S_qnN1*)$=f2j*Z+bu7cJy_fdR;>JPb2>Xq73&B
zKVD^08e9Cu=OlYFY>AEgVzlX7G)EeqwkB^gy?viBNHGyLW$|M0+0lB<>=yl2d=Lib
zga7|)t|lOai?jcylAix~$qKTwF|as6$Fe#19A};UX}z649TgFE{W_r$re83^iUi5o(9hvDg0hDh~29
z{;^HYXut>C?^t>T14Erz6_KbQKEC3u{(g^V60Xb;UPPpTk{EN*FVhn|wHn6`6^B;i
zhIHr6h7;DxH?W(|9_t$Yx<~g^!!j#`_CP+4`{AYUkkP;n@znz$>A!Vt{$IYVu@eX~
z0$@1bnQucH6qUK=&Ht6w|C`mnCvmv~6p6#r>X=-Q`2PxId}R4S`QH+YZY4(`pr3CY
z`PeWmVAvAM2CVD!66Av_{_rcP7L|m<4J9%~VE=E@zm?;LU%gQj#Cjn{jRJP1KtLT(
z*5GDyyb^ZqD`sE6>8#47k;50pZnD2Nt#6{x>?GFa>0t&Q9C^tgN9uQG
zqqxiB?wBxZA{j9<1~&B|u_&bGKgiy6#C^@cyO*1?ASfFnPUU@w<|#4Rj5}&fFxm66
z$sGS8Oz79KzEKn2h85-oFa5pO`GM`dK1t`1Q>$QtLLcSumR0ed5^e@*lw4U60Di3;
zH=v)XWWn>gt)nReDm1@TXY
zutvz4;_G_&&X`h5GMQRf(-<4vgA+~4Nuf_?_VvY8JIbwN{zf4JU?
z4tG}E(?$%$JJ2~yta={xdlhzdb|f=6$AttQs_@pk+u6qKVT;jJfTn2u^5zDuROx6&Xb3GDOJcidr#1$NsvK@wpDULEDf@Mc9ydDU2#k4Wv2wbsKat<@U|hcAI@
z49!#%0IYR14HaU>rjD8u;gsXHBTF)sGu==4CaRgv-6RbU0gouF`zGhYC6QI8u=OXG
zwMiLa@MTG1LB_JQL4}#`D5!*uD8##H>h1B8kbuYSxO1Eo4h~StaPj
z3+7W`Om8)NbJ1R-X7yINjq;Ho3@Ph?7ocCPtR|h)K^CWI2Oel)in2t>SIExa^H!fDJ%7do%#KEjm*eL!9<7YX{hsMyP2XU+|NG39Kp
z%9q`W6&jALv9_8RQh~WjV;T}4FQU95Z%xozhjC2e*Q?dAO-Z%kg2T{e|E?D?GBzjF
zk=_ml!Sb(7yp(##!!78;8!nV2$90#6rvnlGwq>6xf%H2
z>~Y_R;X+i1%BdiB+qPC4J(q5aDWDOX!Qg3vc|H)_06D0LLNlvh6V}V$NcVYN^5;Ej
zlHINi8t-DgTH81JsE^>emYLP%*a91f$HPKzU3ZM1lGW4EAlWb-~j(
zc&&aDpm!y!_eO%9H>qgNz1AkQXVzdqPrQsDp`!IlI{~63Fc8g31Qo?d>3O!FME!IN
z((d|P=kG3bWOGsw5~GBZf~DcdidpO}S?m+Ri76bQ-*)1kJyYr2kz6e0U7r1d4+c(aBgtG#u&R>0%YP)M?lpb9n{=gYL`EkG{G_OeQM~P
zs-h!zf?He|t8|Tc{y0N8T`J^X=hPy!`&xo^%+C7ZUgI+_PD3(-IdLbCEtN59C&Q}*JkciM`JHzN}c4;+|3`0yaZ
zREW98ZZ}+6z!-u5T25f`220S`q2+$#8}C1IK${jMKtv#uUpzpXE-TIVbt>HzlSU5j
zNG%KJVZd7|zq25xftIbeG*~IA3>H?!ltM?S#1o5(#VP|RR}H1=e+q_&-W$#H2U)4L
zS2hs+O^)7E)#&6&=gCY~zRnbaiYccSJP?e>C4K^Fg+pXg$i`4{K-;w-%)RmRQT9LGY^BbR
z=V5Q3rbet$epI$abZam_v2U)U2NX&dq3s3paI>=Hwm*i5Gl6qu3V<^XhE`s&f#boCAX$pUm
z|1N2^*&*}^et9`}e8BrX6ZRPTRSZ62T;UCm@gd}+Zt%&NbnJ6FB!=oR?PZ$dYaxb#Ec2f#BJL
zxxN59%GzT3^I=GG1gyqMZVWkoUJIcidu#7?w`Pu)5q6O-oSv7Tn9^9)uT+}bV;%P#
zp}`d0YT)(j=xbyehwVm+iCBFGGm7M0D-;f&`ObCTp9cWC6jpE1oUF<-{vv$Uw}s9>
z5%`NgG+z;5B<6?ED1S@U&KybEYg(b1kOBqb)REtIBy}_thM~eA26>@gPQo-i6PlnY
zSPUdeF0oN_0QYF1H!9$8a%vx`H+&o|QruTNsFNG0CgOnf5&N*y(Z4mWHS;7hy2JH%
zP-EUem2EiCcBv$*N~06JCwZvED~pGP|NT-8^?2}
zJjP0x`p&BZ#>z*G?X~DQGt7u$lhHQ~(v}epvLWt>UA9_5*=9qZ0-3YGJis%jtKGpz
zfpOusu8p5{)Vvf8KHBrMOy^yG0nejhaGJ)pW1W4WUE1@}&=pBQX7ugOaym262PQSA
zXT9SFqoi+DFD=x|*KH)TUH~mXBFvH#226CBkl5-qftoBuHMD>dro_vQzwq
z@aL$5z-c-K+S$pvPh=`9k6jXU
zq52Pc?b5Mm-^HrPb@WX9;G7(G#!~vaBgUJ`<_{x)ET=xrpKmmW<8l3_Q*WtHa5i(x
zZca3+k_TuMJ{=H|6=Ge8&U0w^n3K79aoUtU2J^qsJ4~TTSY>M6);p!N()dQ8>*)I9
zH@L=gpmIgQI{}3n|KwLc*pe$e-XP{=JiN7otqtdW|6^WU^Cxfy2rY9Ne7NvFl4M7f
z-Zj<^Ld)U88Nu5Uns4J%?yZ1`uUz2YhIvr8q7_vkWO%Vf-DrA=91^t(SUgFy&y-N=
z!^h9oWy~g383}P2A&iq*U^QZtitki_wz~NqzxPc}8?VR$T#SULj!{!^Y(T~chjZb?
z)c7uisBcKytg4{?gXE0n38z39uEJC-IGv20@K~0r`yQn=oJ+y4r~B-;rd&efj@6~0
zkeyY0dODn=J}5|?ldQ@yl#NdX=|%3vUV4_T5v$qFRX!)a
zdHI}hd3yza(#65{wI3>yX(Z>`NO|o5;><#EX?Ct!&p!}3U%IA-?FQwsu2JS>+XE-j
z^3s2DoHo`fC-l$$Y}S8(?Ha`{|8j-WP>Qr+ku08Xasub_%P*?R<_E`m>q6S_;{M{C
zbXk5=Tgr#aQ5
zUGQ4*M{Ma@xB)DT7Vvy46j5*~^SdP?;Gt;tg(yLZ>2jzx%7T-ovfwt+ShUHtCNFZn
zli~iB?J%;I>uFD$fv0OWa)otjF6jyRMUuGoy)s}4yr*p-;g(QmsB~B`X$-Vt4#{V&
zVZD%tNK@)OL47Py0T$s<8uaz}>->{IooG#n(0nTlypO(}!H%CKqZfP{AQas%uJ0#2
z%W>hG&kqF7T9Xqw*rJs{=OMO5w;!xDkZOh^Lytw~cAln=)9n%@cZYa7tp!b>A~miJ
z2Ty&H9YqY|WkbQ5i^+3QN03(P=jY(lDlB%afD>$*AhcB5y|6Au5R_SSdKhB@r=+uN
z;wNh{bLZ*CTV~hsg)i@$46akWis9Ou0T@ec%+H&!aekKm%l0G6rJW_c*qk9zi;k1r
z9+Z1C?GOyg*3)a*6hKTHV&(E62}jWDkL)NP&!1WaSd%QIw=>@=klo*@WJGbr#oer1
zL(TjMh36K@J>r?=Y){vUlhaR}z^T@$1AAz6HAnTqj}&Eh!o_Jm>AL)MX+Ex+?Gk}W
z_y@OIi$BHF@vyP0WlGd&6KUk@Wlvh!7&<}wFc-6NDm4dJYGc|cF
ztVG^R(C858r4+=AH_bhSno^-$YB4#%S%Fc4xdZDCJK-n`ZM4IV64;}7Nczf{*EP=B
z8x8p{7lIxZg&WJ+_tPpB_|9ZDsrr(GMWo}Sat@uvNlrR@-};9i!m{arh4oeWrcO5e
zHgm|04^mIWYzUBzskrE6Lp(;wK$w#++^=z#NX}44--J0a7B4@)xhLyr3t7ZLJhb?@
zv&TzL(ZmAvI|@@lB)Vh&ZU<~T&scoQVkAX(n2UjlpADo#-^QpI%}|ydY^ZR36(*W9
zd?`d&-@hwEG5+NG9jIUu``3YwiC{}S#aas<+JZKWj5F6uq
zx|`A%CPPT&iHtyaB~;*{KESLF6giA^yMr@Om6rF0w9TBoHgok7&97N3h*Bf%
z6==XjUk?zMUx5+!Jh#S7|E^^66|2Pkv(@^o@bx1^}r0}mpjUU_4T6jJ5H%jbfKb1C{
z{Nf5`h=co@JVzQ^QTE@Q)Qb}FpJ}(pF-d$o*PHyO){
zHEi2u10xSYT>CbW1}AY_9py7cyvDj?c-n2aEOkY;+{qyRoAn6%EzSzT=wDx+vl)iZe1Zq+w4
z=0+Kjg=M`9<|m|vX=`kOqbWT+m~k6dzvcJ%zPw5N{+*mSUfDFfH9-`{z6K$TKB!Rm
z8#SK`AnfVwN!&UqlxVLiRDg>*g%mXtvW;RWihCYgu>4&`y44g^jGq3o$NE#FmA+IJ
z-(a_8WUbgdWq&l@9o%cNM4?v>vX6)Io@jCI_(`)t*@rzah0|J3w15|9v?70%7#jT%
zeCG6*ir)VTTI$iU-+Vr7D2H*?Cx0#HyBe{cZ-`iPZ}&@eQk3tp3TXNrW9{^gA+nGb
z7XEaoIS$%9U0C*tCQT3uzfm!x1!I$+nhJbG3nd+7RMeQB6`UQ?v458pZM
zLoB)O$d%^M^&HB&HKX)jgOd}FC!~s$Zqt4WS|d?<=o%5CKw0CAiBS{d*kKnh44H&C
zU~uIEJ67*UlGMPCLU429yv&0XOHtYbCwijB5BT$2np*-i08=^Wu*dVO%ZsmHP1Tn&k}Ga!&JnMm&9GSl(v_VSFOx
z40D-9_3t*|@QZ`I-q(PsN`WoO*WXEo$z9#dxl@y1vy!HUP7d2@_{=HU*FQxrnBbG`
znbA1#J~!Et9wcSrESNTY$Z!%+1YDgKYmNF}W|?1;!9|l1m5(2Htjul2TW5>MGoNif
zPBs>jcP5sisaJ)lp}WILj94#jZ@qL^m+D|uWu3#I>+Eh;NX32w@ml<%nkue=l|o&i
z@`g(}AaNQy?uGH0Ai1y7rb4a2Btu-(-fCczQfCEXDoQ&r>)xj&J(p{N@tNp#?UKZ1
zq27_|Lem{h-L@=}o-Lb!rXLoxI_yDS!=>0X>Lj-Q)?fu9s3hWX?sULEb_9d=P6gkNZhAw~ScNQV06qs*7
zT*nwLrW7v2d!ph+77}cJgHB=nY2poRS|RH*A+bCiBrQD1?(iCD@;uEHR+1|$&V$+0
zYIQ-L)*#h;zS*=QbPEJUV3Q<#rF}vDbJup^4$6)A+;FE7@dq)C7}0f`Jh2Ch3%vu
zQhr%F(N4l#x3WH6-Hs;UPx7l?gRY7;{GMaMLl}NFY~$6_&$mVM0g?jq&V92hU&e@>
zy36PhuyMzvD*${Ln>nyk0Gzxhh<;h{FzK~v#c(Xv&(5C7R+ox5^)eLR8`I9bSq40A
zvTc4-*%U5|^pB&4Mg*lcHy(ma;U`$KV=dxpA7WUJy4v4@%;2cYcr+_&u;0anC9d>&{nu
zE0dD;RMj-coXyz2keLISzR-;;(zkT)*DTWb?JNPQ!J=
zgmHXU9WD+CxP1N`Payv)W`SGnRYcA6zzy1%sfS1EGelMTdIK337!6w&*fKI>6Xu=<
z(3Fe{wf`=!tbyI{uvb5OO1bt&$T4}64sh<#jok*n?(ik%uM;XP!nq`v2YC^3*A$Oo9v@NQVz^^5~J-J(K
z9l+aSxmV3oL-$+1F4V*xh&Z&8sStz5$y#+Fpl}{H1?=pDUJV6|D>T%>L6qO-|g
zT2ys->Tpg+)8XQ{q4Aa>WDJtt$FU1n`+J3
zv=3eqsV_u}`BZc|^jhp}a*_&ysUNqw_kw5|ameCyrY{mRR>{2!8B(schOZV9aiPuU>9*DzxB3ZhSlbeCLuma&|S8~#*XZ4qfW#tS%5b
z(LI_cw60GkN*=WhY3o=9V(zOywe{E=&lA4cc_EvtINeLC-N%Uu&Q1s}cuF?c%a<#T
zT8FmGDp=|FLbhQ#1M-<3d>+|I~E=JrAaUmgN_Lj^04P;NXTH5afzHtgiad|o6U4_PtQ8SIDe@UZw1+q@g
z2;P<<^xc7pN4Pu240~e~+TwIFc|6z#Rsn-q!%+c7K9MTCrdV6z?pW-jf>y-**B3{}
zrm014PUaB{JY;+vkN1&&ugE=vQ>?ZGoi9jCs{Uk<;Y>rxVcDY;6Wsu*9K;_zZ*`68
zbt>UGAPut<|8Ed~W-CstyN#8(cBKZOATasWK
zD=}UheQPFFUGsW7q2SBJ(>~#;A^TSgv;k``DOTX}x-=0|-dN3B*Stt6@?SZMo>|@W
zxQ>vm+Kn1rOE#{Vly^{*VAvH%YE}EZGo@Rc)%K|k!jjGC`@Ip1{##{r2>{C9w+$UL
z*~$)*I@Ql6zdeiB1<@~mU!@0Pz=BNjsZm7uiR!&8#z0^UC@)@i#lcq0FSVnH*CL~M
zD*N1_@IhDlU9TA*AV4#tCa0n!Nd%=?8h};^9;0)~thUK9k80UtNw%|4^XUbk3F-hNPch
z;Y$U9wflqAU2$V0{SB=+?IS60^>K=`rAYOiZx%)9A-+`9U=4BSH2EnVx}-D;cp~yk
z_v3bhpq*t${SP)I;)FyHBv%}lKgI`&^SW|uZ6e?dPC||nW~?U|!&`C7D>a2M1HAfj
z9uBxna!5Bje|9I9eNt5oV$Kfy;pLhH%TsxCTEr1h
z?SwA>^_PGog0U3#tlu8FPnxfX{>Bv|xK(z)zf>L-$|PI|yu`!3dh3CtLSc0$?UYU<
zKyr~ypPV5klKtiVt1h
zR(yOTjQl!#dLM*o5Yi`Cyo^o%mH_`Mr;31TZGk^vJS=Or%EU7Nq{MOQ56#ubvlseB
z5{aU9GjKj^q&(IRFhZnrf%#?3(qq3EzkJ);Lw112Yx|8$7o4ta>z;S}4ZJi)EFB02
zSR~Gf1U(<9DhzDw5%Z6%fKG2i+PB5`gQ&pOzo|~zn?r`X?{(0-6uk${A3Iuqqcw(&Uy42D)vQM#x0r0jV&^il$=
zfIQl6rdvEwa<+v-u`8o4CHmsOCFRpNW|m>~wL)CEH|8;QFSd;H{-Ll3Z8k@5nGJ0K
zU`jnEnw%@lSmoNr*hoEosrP?f?}n0
z>C4D`-=_4X#|};~7*DAFLSV1(>5oH(Lh;u_vw$E^{u~*|kq|3Qf>ZsbPP{nBiQ1Uq
z^Wot6OyghqPpx%tr$l2>m5LnF60@(B(WE<9=wj@vX1~zjPL+Z9L&ZWrb_4Hk{Qlq$Q{@QYF{aGpn}
z5j4_Y{Tjntvz-xze=8Hp>KI-MO}{g0L(2pV{vuZ-MTj5$o|2zy>SIG~byMVlM;YEK
z@uAKqYHZV1R|O&dPq0xA$YWS;7UpU`jI)!^Y6%9EB=M2L!qw`LgKW$rqz1q92=Meu
zn!JmO5;HapE(Qqu)1=eMolwy0lA2L!Oj}At3^-~8%_~z|KA+CaW^;~+tf)A67Pble
z2yV?0tHR0%%+NS@yZoh{S7=I9W8*`sUf`kq&3rqS=CWXTb)=EE_Ji3rZcW8Js(_zN
zH<33-wc|5cM~#AA+k}>LyUx953VYqPC5rD1qgLMbW8^qzm4L{k`fdKppds=Ic3^#y
zG(^6;+p_K7=Jg}E&luNo1WRM=ftSib%SCbn>LX~eg7pXNaj$R=$VMOvs3}?>$IB-`1b0G1iGFiEPg`)<7aL{kV+nKI|BUT07PCe(TV(Zm-$a
z!+akA+CThJ>rUesIDj`9pPDN)jod3FUg{$${_G2&PMKdG$RWMhit@yV5l{UX26u}a
z4<1$pi@3%#w;~D74?K(QD*#B;~hCMD{@Z0XI-I
z@SNx$AfGgndI2IO5Nty0avWo$PG1pfXNjg5yuV91x8
z#`y?lTv=5E--0FhjL!;hxv8M`54=nw06;)kpXk$vr)F`@jLwnSkNz8xr{rr%3vtw)
zz+u&l>oA*f8px+>;C~Om4VjDUB#xT0b;&Q-Zx!|`QE@+@s3x^I5grMYcTEoY)lbt%
z=4MEa)43}~z*{O43U|?R4q-!nvn&yUvOG>>ZHFxR_t2_q%%v=c4c!D`1GuLMr*&BN
z57gjNzR-pKGR#0IOnwcTxW9ebd`2O-OAkgrQMzR~#<|39DY1ymIv3-loC^2<0IX&gXuhmVac_tI&h
zMtE9+D0txG{hhVRlfK)(qlvCk@XUnxCLxeq=wI0z>>`V_dz@aysPWJWXW%kin
zhpw^<;=8<{w^p_9HFAU$-`||;uPKu2B&vhLOEnwp{l0)56%X~bAia5J;r_!>9UssS_bnr%s2u&kP7=_GW5dD7!jCUl8Qf5I$@79>$g+!E
z1hnbGx&F~aQ>?k0;4mAC%xs{g%Aa+x*L!gL#z!wAGPCQg!0Q3&zz-yOl%(PxVcDOo
z{w+{#*Cmu;bG7$pp3Uh@L~hF4AtN*@y&b1LCcpJhNCRh;c{VW;Uc=Yf*j;Y2#hKZM
zv1JckakJcD`RpfE5Lox~{p^dDN*yC!w%lMD{L9!S6#mP2ycY&(Ih0eID^$e$yYt4~
zd~pnhi41*Tx%JpmFOU?PtcJz7L5_!2&aSoZF9KzdIQs)5+|hgUe*IBZ#o8K=iev$8
zQn%f|sE+*YYpw{L)Ve$mH-8}1+!BKDz0hb0)G_!KZh|K{3nw*Yz%M{$I-ECjliFZ<
zpC295QPZ#)P2GcBF|}k|&rvp5ON;~8xrlYUTC;cI?B!JJJ}9Dw@N36)IWq)(ZHTUZ
z7q2vosjv??9&HYvBTv{3S;g7P_=VX>9$~!rW+)EEvd9uDGjM-d0((8llQtdizsS>|
zL9{okXUA6TE}<{5IVT709Wp;}i^0@}n}6o-vtL?26*Rx`Uam_uZP!{81lIg%vR+9m
zIubZT?ZXIWl8^0~3A}CLY0#x%Uy3k6$gjFef_@ynmy007*1z`lgYBbcuBVWXc_vTN)6PJQ
zW{@Lpxe_!Q^pvPzHZ-O%*!
zV5#Jkua{7Ra0vCK5ba*>Z_h?4b~&K$$qwCVFE{NT5xAO{x915hU;5EiM~q8!uY6xe
zN3z&%@*XdEg_mdoX}#6BW5OF^ATm=gQXHi<_|N*r%u4ICU#&2bsFF2`@wldq<%GwV
zY~?siST43F?T?nv#fd0;Gc%Hh;wCkN6aGi{TEXe3cjM(3Hl#P9<-0byQM*{gG!9T(
z=XSmQ@aF~jO0a`OG>^D^=lGa0a?>UxzOj}D(wQhpG=ZU|M>qPA|D&&M;u6+$v#ZIg
zGH6lqj+1g)XYq4x8ars$)rm<8VvQ%vc`?N|kPIv3cY2$#$+6DEXu8G9AGD=a$pw7x
zE;5anqT!rnelIVrVoTt{u$TZDP^IQ8jtD{t?+lK-rjRWIBQ=d5GNpkGsbCECl%-0r
z)7i(py!*qrpSZ%%Q~CF-2C@M*T8Wxtc%pHdNT3yfFw!DBZ9@a?pi5--X*~eWx!!}i
zt}JaUC_ucSZ{Q7b1_(eg@hz;D{=!UyFG->K*QqEU-1Tn{yJJeq)#=a~n%4Rjfz9W=
zvwfubd{oo2;a$zTHGcfgB`e7Jm>Q}tHiqzqKQJA!lvIWs1QFc_6C*lAUtNW`mJiA2G
zXwDjUk>Xz+0m+hFlB>q<*bUKrrL4Kl<0Eub8Aiv-X|&R+PnY;aLx+;5vdn&>~c@i2!Wc3%wDHGO-5A{%l70ThF!yx_sON}
zl|*8>WC|NC#so-Y#OGzueoK@Pe`ojwI|W(U2n-_*u2*6_3j>
zUONxi&?SVvwvTZL!>r)Ltu$2D;Pd^(dB-(53w~o;*96jY?rLPgsIYy-NR(E-;(k2J
z@~Sh{&)7nP$v|NY>~n@ZB}Ej!4SZ&)Kz(g{erNU&u_^kCx{Yie`a+}GWOM3sc{DE_
zoWzOZ6`$8jiY}Lnv)Ll1>kIRCoT4vrq3PXc-PH?z!lGOTvCqTVN_xfv0;DwI>vi
z3`b0|hmOteNT44+CgVq*x
z4-B&kYLcelp@}q|usuGac&D`@imsc2tSTi4sqmk=9@)4rPJ4y@
zwi;L`iFQr)7aPDg1)3E~|bp@LzHs+#UHnrm3+cz}M!|Vej=3X`hx~HC#Mo>A*W3th84(ZfmyA=)w25!-Lfg^QUj+{gf}GYBk=B8a(+=@
zVFG<->dgF&GZcC?a6+mmM`6uLp(B*xkjr8qM6BItZ@X#nxWJx4Gd-pC
zg0WKz8k{x+zIBO`Ez9(Ps=yb5^;>D71_NHO6NX(h@&<;9T5CTbTAn;jTcNcAbbaGC
zt_oddy0pF)rFgYICqi>1HxJ9W_ymEl7zb>S!JYJ7
zsZoHlWfTYoE}(hCo@Qr;Gx>)8J>EF!zB4Ix@pAWwTwj3AgFZd6%
zM)0TcrBYsb9-t11n0MzszOnyooyyxY=+8VFqbDqL`E3TGoqfs-@$AD>O`L1`X5ks*
zS>Z!rU!&wtEDzsm(M;jNb6Z)dvCj`}S6fba{X3
zhf}-f6{|PbePC6wPEm#!rqb0Mw9&$d+jL?|{Zqq+BQDc$0tiUwyDNBh_|1SJy5Fu5
z_k9yOlkGXh_n!8E=n|PKE4!2fw^Hak(kVnkl<+7>bxw)YbkGPoh8z#W9CJOZbzRk_
zL4;LWzR!rL@j9~O08Q=3f@|KvZYcm0+3t-D)Vf7XCiCaceJE*j&Mr#PV~sav$TajT
zvS`le&zsyHQuz3Y2q|K33t+`8!U@X=NQ(aOKE4I_o;w=6rUtw@{2LCPA^uPrf2*mS
z_A<$MU=UR44Qf$?UGF=byESZ4gQVdpGtstKOoAZNytG$N+m4nn03eHtX;|Pp3pBQ6
z0uAl8tSJ!=$qJC8f-6w4%MmcCz$%Lw`*<`d7R11m`Bi424Fc)nJ6z3E&1p21J}i
zh+*iv2h6x1Qc~(p>d1FY(1lt~Wny~z_8!Z(9*7bh6{6q+rUd~FnoqSePwrrv=n@TG
z>2!M_u8JM8zjZIC?_VUU;zD)8XDU?95psT6YJuAEG2Lss4$=Z`I}p@YL9xy}{K&KpU#DONFJUqPRX3EMFRP9Xl@h7#_|
z{g|%Y;_;>z>NG=fO>+>~3ttUR3yjId1&%7g6b8sP@z;>>gvdBd2S%QvI$S#JzmDk2
zuoKYBS?(awARvJ=3zC|iy60Gj@ZjeDZj;2)mtGpQ#fKIdTnbS6m*r-$f5AR?d6ZIUv3w4Igo~no-57xeiHkHO
z;eMvPw5);*Z6lrld9yh-m3&5lLJuPgfod_N6J<9-;zaMS@`J^WSFP@2I_){Oh9*J6
z*{e_h=o!u;JhF5#urE8M@9!Sty!AQieh|UC
zM#7zd-}pu5Z5D=vK0e|kIE65a9$cL`pJy%=T<_)v=Xz9a@Satj;!!xz8)}pLen)FX
zH=R&O8%P>cBcF(J^|2*p!LM~)Ura_&%*Db~N4*Ze%hR4c4!>35
zz@y=wZ|448V8H~%Wm)EE!kQ7WG>LL$4Q83JRm(fEk$bm+T~K5wu$|^IKEXNque-o;-5wu;4fzw$wpeg^PL1I81g$@PWIbZ
z)QC<;7C{O}H7z6e7A}2n@7S7l{ViQRN}%#!>Zdqrb(xEP{Szpn+=%3~ckpc7vBjRO
zXXeWFgvEKePTiUB8(ep`_9CRRg_<9vRy}twS`RlddPeE{M&|uX$st7+QOR>=@igsq
z0Xm{9`;9ZV4fu~gxDL4qbBE?8l#y@U^R1%|E|E99Z^
zRwLcv(TV4rC+unabG&bEWbYt?TjSRbxY)J-Ebo`#3IrW&E@!M3j2*;6YCC%JV}D2BP~9KSJLg8-;vBJF{v}c&fYMyQ&s0W7itBK;TO8
z=1Z*v-Sp1HdH~zqL?z{9)D8P-oW%6s(6s7gbYjc%G`R)Gal+JMe*fxWiH-VNKN7&RYpT
zgR5<}DYui8e5#g1j5)kOn&V9h#p-aywSLkAG$cLx#!VPqZZ&!#Uf)d?o4=lJYVtHr(TSNgV8W=s*?Q1@7c+0h#)fOAgLOPhfG3r0%t0Qe_l1bD;LWncM3%MZ
zVW3yFNii^1Ub>M%^at+Q)~gz649syQ*nqO${}kLCP10YeutBrKzhVi;zo#m7h(TJq
z|DOQcJ0!&P=aS1K>V_!Ihm7*kqTuBRlRQ>a_P2ckUiN?Di!Q_lm49DAwh+^H1UPQV
zo8gUYlMf%jDDwyuto!2(Xy~NReKf7shnojsWmOlPXmG+nRyj8?EDpHwrU_C1RpGjcrR$c!H9_0TLaGoT^?EkNzfh@m
zciz@oqw~X;vypeVZFYU57WnWP}w2K;d7^XtG
z!wt<|!ye&hC9t*o?C3UYI2ycAIqy#K7;C7?djf6{6@c=KHw+wwB9v6_IV;nn1B2JH
z>N%Zbo|?F>lh9|3g-~Ao?D^qA@Z8TG_E$0f>uWG6X-Uwi5^Lc*Mg1M9x|79uOR%hg
zkOf=Iwn1wOahCSlAubctVZlli46&;Xomlm2Aq3mDN@K!Wnh)EnFqC@l^8V(~DE)CR
zAowrvz|UCIWp$|6n&jwXXqbGaF=HmlnH8cf4=l-AUcTR&u&4J1A_@IHCK
zh%)#P?l9l9Rmji`o~+k1fi}cnCPI3*m7L%-OhQ&&{wI41SkmU%Uj_OJ50fLpH6b0;
ziM_zuqNRx@9tV@d&z^AwY9^KDL}@bK(>t)j7v!0ivj5Uc?p!K~&%qjcpc}qh_mTVO
zF}7Dlqg$tOu7-y*f#QIJ?dOyk8+Lv1lwR)6wt^O43Pl-}Q-qWwcA{PvUl$YL$YhR9
zw=T6o-XZ`hn%6GJNA?r}*sz5S0{9CVp5xSM1d2~$bv|gD0J-99JgbfS0`U
z-+qH1Uo(Oak(i0P843Yy!0koPi5qf!E{{&V!_aE{`xJqB^nCC`I02big*O59MG1;;
zDgRL<5pWbXAX^(#%YbJyDpWCSZoX3aq(Mr!UR=
zj`@>e_3H}`n1NCfGCaJT{`buT4=n}5%INBNl@ObD%^XtaEn=rGX{4tqt}A{!X_`}z
z`6vO9EPc#u7qUKRU)W$1{ILEoxr%h)NzEiNZ^@U2)cnV>c|(1i6p(Zj5T#
zxP?t37M=BcYgpX(>u6wgEE|mPEfXgqYfxWr>iwBTPD-MMv>zo=03~&&65@SV8j~Mt
zul!twL%w(XfSY8W$)jBkNOA{~HsPrhp8NtMRTBwB)2DOd3yiK2b1_H5Dm1qpFVko1xj{
zmz@I!i~9Y)w$ecyKo1CboRIQ9^<)Y?l4ej>)$%
zY_8Pn@bRDS$9
z6~)lqy9g+(GIrB@r@cP1^Y{jylU$)yKC%xaHk~;0-E(k9-z@`!vrv
zyYCrbl37W3m5me#>FF=9T88k2cRJjZ8;Fspc6BMOqs4DUUaFmm#)8YQ*4BloEe!`s
z?B!kh0++B0)Wq|5KG4u8C+rO3Jd5L4t0X
zox0cZHX1WX+X^b%L|VwyP%N9%NgA@~mD^biVK?8CVPHofJDDN#bii{LpdSv;pyI!w
zb)*_o{avZnjc2LL-Y@x@vZov2z^#ICk*~_d9gHyN5di)}k3Lv1`Bx*xm~sf<6hkzB
z=~fqdt4plGg(0?W`^j5LE2>!4FC4wdp{d6l4oJG`#_POJ#$mvEYq9v~iHA2)>hd#~><8FmSt!5mbf~{&kxKbQR-%kv0L#
z*&z{VBJjdj(&0+kLs#)8f%KF~8vSh0I?2Eb=#HfAJXekP9Vl;&i=w`{&ZsiMabDp*
zW0ywMBo%vT8Sobdp&&>k93IqmM?g@V?PkU5+@{aIZIg$eY6MRGYZ-NM#>qHa(f|=N
z2i{5Blc{FuYj9L&>-+q-*6!Kj*&pNfzh9J>1`V{
zaym9*d{T81PUv#Y1Ur|J^ObCxM~%QHRe3HLy`&>x*AN+mn8fE|hMxMv$*1fWnx4fN
z9^0cD_84Z&N-Nc@r+>bN^OH>cI*rqE~h-Ph08t
zd9KQ0Oaik0j`#BD`O9tWi*aiw;nyb5egos1dW?m4KXIDnsY>rOc^4@0AwB{O-Rb6p
zDtAC3wJLQ3I~m>^{zTz?QC99V*jjgQ!)&>83@q%E&-wn$vZ_Gd$2+@R6yO<|fAak@
zL;o{-%c6YAXP}!?2jZoKGy5Se0K~T*2)wqZD15K&JnFaiuV+er6cZTz0tOzEwYO7E
z{3Ee;7W52YEN;XM)8$^`DfbUXLU4LAIS5b8BJq-lztwlrdj2T&QKFD1FMhqz`$`t+
zDTtTQb#f$&tpK+*qUQYLe(0o}2H3#OLYnEhiDzj|4nu>?+r;e_OL2M$Q1Bl2D-Jx*
z8VJ;pUthDR*}tx5-Ae3FAy3~Lj8~56v5Ag=JQ##%;naD32NHREt(%9|qJcPJ>;80U
z?x3ySWK=4~NQ7h{=FOV>qhxzbRISDvq;*vX-=r1e(2UM|g7FXmrE5|I)NB>6Wc#(C
zchZ`RE_kCnGKqyj=aWp^Xe44=xZ;Z+Xd>sLTjvQMbaYCYd|5v0(~fr!j8({w(3P9y
zlM=+m`1?=@7CqqPXTUzB3Gxx0+KGx7nKuq=*jH)`^3#&|(yxze@Ei2`U)#nV4(l!x
z{YJszF!rp_>*W~95R$MZC?BwpURW$+FR%2=Lz{-j?@Ph?&-L?V5PbvAJA_o
zx*$9q9#2*GArRWUHjDmh+c&*7>mwm^o+uPi
z*C0R?%<$`?0aCHcbwDN&%t|EhtrFqNjRI;s%s`bN^5^;E&0g?byvv&-VI$vUCZ3AmsfU7vwKZCP
z{hcp7UOG&0i^94Ea;kXOr`#ofINl*-q-vIb?lOS_(5k$RjxPRVLcqq~u3-q|F$%r&
zcM;*$$C{Gar-Yr9lE>FVCB1o`*PzewJ2iF6#M|8PwJ1|$N}^bOOaVH%d!&BlSfBz3C&t4SBoK)e>o=6f~ofqZ(?!|=}kuSapie@gjW_d*g
zDJlC#{2|AmA|n+B|a+9>Ej(Q1>-yIcY!
zNBK1f5LUY2g+Cxcf!YE!j;ZcAt4w@!SdGFB|2FExzFiq_K#t0}5T4vIxGUO@TSun>
zfU5UXexNm*L;$7sjY(fyNG6%$3wooxs_2_?zHgKfdGB(Cp9W_C{N8b=Igp(tZ_s(O
zKFfZ8Anza_rpttuC0WV?ekE*EMaI*Bu$qt=7onp2N`Gx7I)SWc6j~NzsWg56sJi@n
zNx2--$7{KRr#FXypbaVOV19NZ2;EZcFSI?c*yI&TF9DMo5(ZOH^?(p*$!dxJjmSIH
zCo|BBemUJ{v#dXw}m(r8w)E|Br(N+HJIXsZhI?Ka>IIxTz17vX2v^m0MM(o%B5N
zgpIH1?5W;SA?-u|m9Sjc0f;h&Ky2+()HNO1dna4buN0nY8UnB8`BvQ{_nD9QzIc*j
z^&E#~(qb^3rKI*9*D?C47?WTWv_qY2T}hits;ky@0y5;Fm`XGD$K*oeIk9SztBC%W
z&fba^Mp^Hxv@6yi$%8kYXt-Cl7tRy%yvy0MJ(>WXGD@>F@L3TX(y`!7b_>(6?pdY7
zD2_CDKch(EUEs^22NQc*#cTZU0q;5nfs(tv0hw}
z1{JR)9;2!Ss>l!Qs|8S$u<_UFrFW&aNAS202KA=u_hc65ide+1JM_piDxxnz6*71-
zFKIHhmvH~M9Lz0IIclHqkb~1LxSsYcVGl`05p|mYNwG7IUWjTGGH9b0EQ53zRjj$}EUAfuH-(I3lF_e|T~sxMCg?*$e)GuPGZ)Q+exA~z`d>SGC|!;J2nLWEE(wSnt~!Mcvv(1^0>LdQl@k*53h~Nc
z7x9A8vu`?C$k#V#CV2Rp!AG>(+Ut8zE`Bt}KiR}w;E26Up9H~U?2KQMS|&epq*TV)
z=bX$?^~j6URL(*
zq}iEyhvW76Ul;pVQc&!h4r_?dR>j(mBceH%2MsWp-L)I83Kf9U1i^(N??C_WoPwAp
zSl`FO2hj9(?n!1iwyGYu=L0Txu_I;J?!
zNQJcQNsbZd>`-kH4N|p#t{1uE6%<1Agkjl$s3RTdhk%a2uie1O$BHiWI|I=V^&u$a
z=om~~2YmMq*Y0g{m0_*$SnBjZIT!_QSJqhjKV{Fk;Lks6meHz_%`W-2#zW^p09m8!
zd?6)~i!^AJfV>?zH=82aTHnMtcE+^aHuhXQ!}64LXNW2IQr15+
z@0k2smC>vni#e3*-LTu1u>%u&fvg3S!E?tu5
zQ?{(MClt|2@Bjb+2dx;STXk5AbTSgqw?t`S|F}_pATe^*+tw#C3Lgg(;-g#nVu@Hm
zi*<*O(_U)-F^~D^z+jlWQMr6NE3m3^`{N(^R3Q}Q&WhbHSY{9L`q$&NIo7Nb;5o&s
zw9`FP9KRxb`fvlEIYg&Y8JGS!)ZRe;-h&Vj{ICik6OxzX?xiWAidF-RUz>WSW_F*U
z=Vv*J>zrpZ`;0Vi6Jv4NqFv7w`g@<`)BPLaf=0}W+oQqg@XEm-`q8{xr4Lah!x4{J
zkoH0<`==Ylx9#LH68|bqiHsd{4DVRstnB(ln2KdOdHP0YDFs-#DUw_Xf2*{ca7mi1J2xU2)7AQ0
z_`|z}dIlt@Kng^en}v`U`55lC-_BOb9BLW0>uvxOckO?+tQw?y9;Zu++T$615O%g>q&)^x=B{*lt4ssLOezJW=)(L=PIWO
zuL1CB1k3j15~OW9YnY1M?R`d+TW%E3>wZw7T$42uQ~EA>)nb1{U0b$Pz%Lq{Pjh+X
ziY2d6E2MoKkd3{l1^Fdnte+45yHlx50p(Z2U5wpcE4uo%F=8KNe+s&<##i%Y7NADA
zjy>0}-cB_6WNF!2p*DN-XKgH?%Z4CwUxfP;r_y@q+Z1LG)!XTF{HHBBL&&-ZTvxAi
z>QVZtwH}>5mCK?_972k~{UhZ_hV=$Ao4Yz!@SokkG!7Yc{zNkDU$%@rs=0?T@~HL)
z4LUb-{^#ifq;Y*0*g2-A{!z)LFYZ6one1+&N!r8kg4P4nER`N@
zo-_LgYCn2Hyke!~VR}I-l%LV@gH?mV<6q&)*2Y)#AD!KPrUei2K?s}poT4Gu-EECxQrIPnG6dypE64!6u2H10&z
zja_osnJjU0At5&sRiPZM$vcprrpQ5?7e!3(iv?y`Ep@u*p&r)W39ye_o|et&?t=jU9n$yK?`qe4<28`lUg=oBt_Qg
zr^Xlj5&}zDJe#St0+;5Cz*F7SIGW(J%a9yAQ2UyRM~BTLhnXj9ETFJ>gR~tH_UV
zQWs6a(F$ulLHlz?Au;c`dSG{J>KlGUL$l4d2&BVqluVJfd
z=5&$!3<{qR)3zt3D<#n1{_wASXE_H*WK94_k=44C>|KdwHm#@Z)Fh8uWr5j))F`7
zLLM;T8QeVc6|A+haN>ObsL~4vQXT-DocjkeFOrqZ*~K=Xjp8uJqC}XX#RI8!lKwfF
znZ;ykqkleCvxr0|9w193x%S`j#oU6-_x4oE5YtrOwEf6Y0B2Iej)9jE5kGP?PqMgt
zmoiW1<;}U^BDEX$cDr^X18GebKH+>zfJ5z22~JSNK2e|m`I{ZU(s^fJ(ZFhlI$;?U
z2i|xOW%TVaYzKZIvo=0H2-x#B^Jk%cu82KPuFFq>5hn6v*p0s;N=SIwki?7DS*IGx
znYyvRmB6CXCPVQ21XVmeV3*Kgr{JxdISV!LSx0UQ<^_A^eLb;sxJSkHcNpjfs-msP%hqmrE!dX!un_oszI3y$T&=+#_7w
zp52AH!_MZ|jynzU{u4d}4kIWuHy9SiqVc=z4%otnAAO)Mr)!CM$#lYQ=3OnhC7@A&
zFL2Qw9aBIv8@z9dJ05XTfw`z|FQ84?An%PO}{ZJRwtc3br
z;c-~nHxhil(i-V;0ZlQKF{dNJpPsXR`6tbZ{8F9BIy$W*7OviXDUt%PuZk4b@)Ajt
zguX{RA)p<-*@vHq*wH@M>Bjc97U0N$)ZeJA_^andAN0b;!jB@>%2^R%sW6^l
zM9o=vYZ)47is6u!Iq%qYW*mH&&-<`A3rm88;0glBg3kmwA$AB&OQ5hiRPJXyOMHRjKGFYi`Co~<
zD(#GHloO&)CVFQno@v)62o;aSE~Z!VyW~YHQ$CA?8uxZKt_akYg-v^l^EOI619#2{
zCnlSnJBzu#q?Y0ks#D-CC3A;iV@8IWpOI|9=sEUKnc-Elav{`JdCBx@0F6$eAz>H@
z_;_`hNEbUQ&rin_ePU9Bj&vv9^p`7Ia(C;$Ke055UU&z;Pd6!NM(r&gp|
z{#c?`5LN13U?BK|+`nnKgvY+&>4Dv^sCl)8w-I3+i6<0@S4NTZ4w-(EBe)dhRlQnQ
zHAD#RT|f0)U?ew^?f*^fH(JKqBZq>i=1-Zyiosf9#+7X9r{yOcdp^b_FJtRuz$)QN
zOAj>}lcg77V)JQVmn)fOX-HnIRw7jmc6og0OxGeOfPDB;XCPUA+;B_Lb%9XD){<1?
z%#5OK5Bm{I6J;GLp5IPt>4Mmxi<*0VJIhx_l0ytgevFl}L>c_td?#8PNSg99|6N2l
zN#Sv+-T>;QD9~nGYIcSHh7j+FFlEPqnmv%IDgHuHkc2+HX@>d*;<^#S2=2at_{yHd
z`JMSCV;cpZzPW!=J+C76Vnp-Wr^34`Ruy%+k+1f*rPUg83avorHfGiE{-nHh^{Y6o
zWF{osIZ3ade|t4?yXQ3++Q5KjaGbwqL6;`_*W$oB7gY9zxge|nDG!O3JX10$^oz{h
zuErYxt@l#Yy~=0f0@z3c$Ot>+GIG6))c&ndEfOY3HQZY4krQOXeDfWmW+m{EOQo&8
zT#0Nj3vjrYLbOo$Ilx2FA+pWDznR)6-aciuX~I8b44&2%k^pAL@Lxv1elU0*&o$?>
zcQM~n{b@KD@Yts8Tl#-#=sNeZCF`RXDJ*tsD`b2lG+I29zrq?#;LK*@8@XBfsWp!I
zocYIy#}T&nJ8F7=>Se5&Q|3?0LG&Aj|JQ}pjn7*vr8A$QQfKIiE{SFUKdiVKtMNn&bqz#3AI2rKA+c+0t>%Lxk>5G8K~4jF()4Bc8eRuoBGa
zlS|9%gtUiCz4&db658ovu)oJw{Vi4ZH88ORPVX_y!7Yypd@>q}1e#**`SS#>nsuo`)1OXbqBR;hV0+}V|O6KRIi{lmz
z2>ZQ)hs+-W1F~n;Nb$5L9Rqb4)g#HfGW_8
z98xpS?GXQCAZ_B6uu2Rm-hvN4o%_lduopmAt6Fk=oDj*n;i36zT{JAAN<(a=yS5dg
zFdrh|QQKHx>A+8yaA)`JjJGhdWx0l3L&n*w6KJsEM2_JF609Z0azu#_buqQ;4JHER
zX!(^mp+1K6o9sF}c2t?YdiJ=jR`(w){Rm{6a4HN2zoQK2;>w^Ws
z8#oec^(fPaIws^hi{1VYra}_ZKd_DHek(aPUV(;sTUS6E1}#+UZTN0+(~)sn+}aNS
zg=yUI`pl>RsT-lzRy8(9B1`1jri)Sey|+B8sB)Y?!G+xGBw-ec`z
zk(#=EV_1U4pP1Dr;@iv7#gkkTVRR|73fUv$qbW&B`%k~*q9IMxrdfVFtxc!%lOMqd
zO+Nv1y66T@14X)6OFyr75VLmU>-2Ke_WUq}Pb9|ykat#yiEqf3#OWbklBN36!@1}J
zrL@kZl9GG4!eeBM#u#*2zHOMFoVcAHnIO+=FdbR5pOZ2%O!$(MHymc`8WEWa=kD^}
z2?x?MqNAL5x4&yQ6dm2}(nW|V$H<*F4PgU~np{*pD9J)i$#;V?!LAv_kUf*9YLmf?
zXo``~JpBDp#OwO