From a1a04d36a92f1b653c706a02f89b454add45e245 Mon Sep 17 00:00:00 2001 From: yngrtc Date: Mon, 11 Mar 2024 17:40:31 -0700 Subject: [PATCH] update README.md --- rtc-datachannel/CHANGELOG.md | 29 +---- rtc-datachannel/README.md | 24 ++-- rtc-datachannel/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-dtls/CHANGELOG.md | 25 +--- rtc-dtls/README.md | 24 ++-- rtc-dtls/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-ice/CHANGELOG.md | 48 +------ rtc-ice/README.md | 24 ++-- rtc-ice/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-rtcp/CHANGELOG.md | 22 +--- rtc-rtcp/README.md | 24 ++-- rtc-rtcp/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-rtp/CHANGELOG.md | 19 +-- rtc-rtp/README.md | 24 ++-- rtc-rtp/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-sctp/CHANGELOG.md | 3 + rtc-sctp/README.md | 23 ++-- rtc-sctp/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-sdp/CHANGELOG.md | 17 +-- rtc-sdp/README.md | 24 ++-- rtc-sdp/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-shared/CHANGELOG.md | 3 + rtc-shared/LICENSE-APACHE | 201 ++++++++++++++++++++++++++++++ rtc-shared/LICENSE-MIT | 21 ++++ rtc-shared/README.md | 30 +++++ rtc-srtp/CHANGELOG.md | 18 +-- rtc-srtp/README.md | 24 ++-- rtc-srtp/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-stun/CHANGELOG.md | 15 +-- rtc-stun/README.md | 24 ++-- rtc-stun/doc/webrtc.rs.png | Bin 33276 -> 0 bytes rtc-turn/CHANGELOG.md | 26 +--- rtc-turn/README.md | 24 ++-- rtc-turn/doc/webrtc.rs.png | Bin 33276 -> 0 bytes 34 files changed, 388 insertions(+), 328 deletions(-) delete mode 100644 rtc-datachannel/doc/webrtc.rs.png delete mode 100644 rtc-dtls/doc/webrtc.rs.png delete mode 100644 rtc-ice/doc/webrtc.rs.png delete mode 100644 rtc-rtcp/doc/webrtc.rs.png delete mode 100644 rtc-rtp/doc/webrtc.rs.png create mode 100644 rtc-sctp/CHANGELOG.md delete mode 100644 rtc-sctp/doc/webrtc.rs.png delete mode 100644 rtc-sdp/doc/webrtc.rs.png create mode 100644 rtc-shared/CHANGELOG.md create mode 100644 rtc-shared/LICENSE-APACHE create mode 100644 rtc-shared/LICENSE-MIT create mode 100644 rtc-shared/README.md delete mode 100644 rtc-srtp/doc/webrtc.rs.png delete mode 100644 rtc-stun/doc/webrtc.rs.png delete mode 100644 rtc-turn/doc/webrtc.rs.png diff --git a/rtc-datachannel/CHANGELOG.md b/rtc-datachannel/CHANGELOG.md index d5e92ad..c7e971d 100644 --- a/rtc-datachannel/CHANGELOG.md +++ b/rtc-datachannel/CHANGELOG.md @@ -1,30 +1,3 @@ -# webrtc-data changelog +# rtc-datachannel changelog ## Unreleased - -* Remove builder pattern from `data_channel::Config` [#411](https://github.com/webrtc-rs/webrtc/pull/411). - -## v0.7.0 - -* Increased required `webrtc-sctp` version to `0.8.0`. - -## v0.6.0 - -* Increased minimum support rust version to `1.60.0`. -* Do not loose data in `PollDataChannel::poll_write` [#341](https://github.com/webrtc-rs/webrtc/pull/341). -* `PollDataChannel::poll_shutdown`: make sure to flush any writes before shutting down [#340](https://github.com/webrtc-rs/webrtc/pull/340) -* Increased required `webrtc-util` version to `0.7.0`. -* Increased required `webrtc-sctp` version to `0.7.0`. - -### Breaking changes - -* Make `DataChannel::on_buffered_amount_low` function non-async [#338](https://github.com/webrtc-rs/webrtc/pull/338). - -## v0.5.0 - -* [#16 [PollDataChannel] reset shutdown_fut future after done](https://github.com/webrtc-rs/data/pull/16) by [@melekes](https://github.com/melekes). -* Increase min verison of `log` dependency to `0.4.16`. [#250 Fix log at ^0.4.16 to make tests compile](https://github.com/webrtc-rs/webrtc/pull/250) by [@k0nserv](https://github.com/k0nserv). - -## Prior to 0.4.0 - -Before 0.4.0 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/data/releases). diff --git a/rtc-datachannel/README.md b/rtc-datachannel/README.md index 8230caa..5bb7d51 100644 --- a/rtc-datachannel/README.md +++ b/rtc-datachannel/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of WebRTC DataChannel. Rewrite Pion DataChannel in Rust + RTC DataChannel Protocol in Rust With Sans-IO

diff --git a/rtc-datachannel/doc/webrtc.rs.png b/rtc-datachannel/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z zz4!Tc#dxiysfjf)F%c$ulwsh%v#R4j?;4+)if(Ld{QNba#pmOmHMQRD;cz&eC8Dj3 zb8~Z3tJ5BjL94zW5O9C2q}^t#^&;=|$|vbNi%-skZ-5htyqF5$&dFLBA9&!fueSyA zx}RgwYqvO_a_O|&&&V+Lj>K{Pl}w?KJAYD^oH!~7(6{`(o@Tq*k@OWPGCVI-D&!lD zh9UKRF4z$X`OlZ%)|)L7mY~e4I|0F_9g&7n)?hp-oF1+2VmCFgIGpyn#gbgoj*d(* znDoX+vw5*t%tJ+Yu*6u*#-Oj5Nq74;Fd*1wxAFCM5XfdZ9|%R@8CY3KrT#t5m7O=QUA@cpObrl}<7=|NHfD z&zt>VD6w2No6%R`aXnkDTRwn+g*Bcp6tex*5R}0GTDkee>3Te`yp=IT{5nZm&#E%a z9$o^H2FM6i$mdOx!>g3b?sT2i(`sPDLxL;tJ)mE#x0?Lva$EjkP(UmaK3}W#0``K# zZq4NX?&In!dbr1@p&tl6a>1_B3E7$JmJu8?hC1-EoTFnW)fGMFZ;cDub^`Ig`H zAXF?4JFJ1hQLQfXSCf(R6#aigzJL771Wled#`fJ89OAK9N~c>9p`la~RaCY2ZWzGj z05s3nOLf79+v-Izsj?!m7)()d@!JtJh3|6jG~f;n4&g|IvyT@WGJMx)$jF6wWxLw8 zerjmHv^>2-4O1qo>WSFd)6!@)l5=xo3knGH^YdR|WMoo6g}Ui z@^B`{>+|IZPS&MyTt$Izv{I?$`u?7bo*toQMfwY1pP!#!_~&EjW7SJrlCmF>xF?pm zf>`MXtee^#D1>#Uu9Wd^evxYWD;vB%oOSo`WwTigy}#VuJUkqH5svZZSuTg8(Q2u@ z7#xcji`6{Vxyc!H1X{p}RFT_uCjFuIshSy%Fx5UWyFD0^#p6-06S+lhy;41z%jJT_ z=k3}#s;Xqa-XTn^CkS9C4-_+G!)o%YM z8`r)=h)c6`4^y}JZ`S}DmRH7h$16;VtRgF~^AoMABE`bi7c~`F7cjAMN}0crjJ0)tpLS zv;A=n8@B90SjbKZ2odU3Cg9@Y%KfUpSS@B9cSm62@wkS*5`YrD-IsSLgoTAQ+wJi= z|G1|7F(LH3S5mLj9-YnOxgg*)n?(Q0A&|54&Ag>|hSp1l$aN{1pJd!zp7 z%gI=h6KBJ|nAG2n7lPr?WpM0Q;-QiU2k6r?Dlqw@koJ< zk#nU433-b;8QDmRKRQk8Ss7+ z!QyJwc-)U&>i}fKT1@?RAU}=I?OMqq%KQbF@b6VzAq!sy{d_6V#{zz0k5bMmlTdGj-Sl7qC{P_jd-`yTR{!lpT>i$+Y|Eg-bmtiQ- z1D8GS)*!M6Ajt#0S}YfW8T;Rrv4;=^-mgU#ekjG1O-rc?yqz~!OXXZ4dKSLD);IuV zWz^)hr;fM!`%mHMh+(Ivr|Is!Y;Ebj3Q)hQInJ-te%XD+Z}zLnXjHQNlU;jG_9A6; z`WSCOU0 zfQQX?`o7$<&{uT-UnO4|74;W(J9H^sl7iF#(%pZ$MH-|_y1P*jB&9o~JEXfsy1PMI zy8Aucb??Xf;r+x~1N>&@#D4bP&ps#Z2$VR_TTNwU9b4+Wz~Q_4NFF6MX95MpgF5t=F)Xe$T!~ZTCl__XZ?F-VIBzH=Ri2m_$U{ z`>QX^e!1C=-D;*(xnll(-Ao>yH3ulJH61f4gNe+{l@uz~X2Zy+s2h>|M|95Rpsc73 z*CihX$T{mbcI8V47dO);51Sbo8z&3-@EtDJGhaL|yRGV)pcV}7{7&a}`fWk!L@i+> za)b;BOrGEK(+i7VYJAPSzNb}LW$)2$(Cm5$_JP#T)g|}M2#Jh?Z^X81@fvzBh26x| z^d}u2Eie#a7~NuR_a^c#_NT)tD_QhB_wp#C7??;O;^$RXyp9EbRad*XWpY~0m~8ZX zSLB`D%BlT4nqj&>RdnlDZ?lLmhQ$!(?d@$29vZ#l^>{f8o`nX!yxDlR1QiVpy@k`O z#3Y^~KN#F>ZBzqENyPePS7Hpo3#IQqreJKKQ;diqQBlk%Za|`de9y8BJR;&Rqh3_RSA=Uy z)mC5_7`1CcUN$HIM#}3!pVMA~bZiSe^ohax+$GD}1g}VAKz;TW>(|UoBy*zi-)sN) z@k1#~hWO2!WMSzG0IN87cv~mzTGeI|pKRVK1%R@NI_lEg@oBtDI(&Ng>kDrLdaSSY zdgWk@{u@wdU|L#5Go{4ESsXUR!3Xir-`f#%Jl&8$C*kS%WjdI|{#mhc)@qi`Xq7QsVQH#r!Yo z7t%i}bkDfzd;cB)gk#a@YPJMg+vC-zTFM@Wy2h@ABql0&ZoG$V6W~UpyFV&WsYaB?dL7;{`{zgmP0QKPx78)8y z#Np{dMSIglTfbU|qz1Im>Y~K-RsxoHdOioR6V<0O)u= zz)%s#qfA6ZBzwL+yu3p8cz0?1{PYOwTjdZOOF#hVc-$ZMDt>88`;J3<281r1p;I{S z#C#e2*sZtTvOvF4)yW`p`&ij0?x*Ya=XiJT&EFBrD>S2m*CZwCWt3D@J$SPS89lzE#ml1y;mU6g<*cz4pH68d40z>=3G z37{g~RY)q92MFD>F)<8Y0ZM%vEJlaCjiyM5&@?qd55{z7@WkX~gvxqR-?`4*-F zB54^JdN!5|U`-BkuX?K-oyVElI0Me?+?<^ss!J2W6`;u*37>4Cmz;V&mueZ_ zXEFc?a!ks3;O$TY6i^H#&Q(jSS3*6JpetoeZFso2Jzzvf08Req+D1!7^&=%kdyhZq zO~h|y)4&(s#{*E%H{7;qDhb^_fYPI*7-%K47{dDc`qG7NF;mIuvi-4_ar%7o9)3iF z7K0yXV=S$Oep~Eei?31^OvF5ElXlKR<7@TM;*dQcg&g=rU=E~0b{CK@8pP|zxDF*zd&}HvdXKC!O z6COMrlG2I__@A4tpEqp7hg`P!wil{ysB%y=cOy3v)6#T|QVOz@g#FqEhminX&fIqZ z)>jMge1fhXD(9_xe*b3kyf81wU2X@j-GXY6K1+iB$3XT+5T+cal@0@C&Ck;YhR6rK z$b%1`xmgexzC!8;wEi9*DwvzowF7u7^5ZufB7}v7rGIa<)a1fIt2nocFg`gME97&B zo18tUWpM}Gkv~1(aXhZ(KU+-Xq5wwr0Qk4!vcDiBW2vZQpvprvAuWOi^{iR42C9Of zbLNLN94yJ2l3Dh3d`s5JDTKfH9V&JbC3`k+_x2)9OK_o3KMUCZ1MLCWl>A2gXPb%VNu4<$R62@%|rumh!epdpy6`uTBUU=i&zab41W# zn5Z#L(AC{_&pGt!PhkY%^{DIr%L3#TdzHes8&B!W$)Ond;?C{iep%_*qi<}BbI%kA zy#5aNHeHw}AvU%<{0(~=TS^i4MUsI5sPBAlJ|_MviU1q)4?u;1(ks5QH>g789NaWsY2?}cft(;bUuJ?-NOEfB8*ijSo zgQEdrx^)0a@q=%tNmj*f;G#`!U{q>yO^%#uTzD&Ad0e$1X|#Fov(ex z*cf?5E~MjT>baf#d9F=Y_}(G;k-f3MJM8_oY$|(F&|fC35h1q=-eDW7$=nbH zp)KK+CY$$(DDRs$Qe^k`_5_|E&KvlF5XseV_ibXB1#TFcLS?yfi=+G4Vu#%}Y9^n_ ze~uL)2C>a|Y1=cLmZCSZfrn;PP&@}uL)J|%#$wT4j5Sb?O;a!rEpP7c*}bl;m*W|L z8Pxv#^hrPHY``$C-XLtgKD+#FK!F6jZ7W99_EoK=Xu+`bIDx%o3a(-G#=RS3O5;Yo zjP*(jZ>IMd3J{(y_kGjly8M7r^DoC00Q(JCwNi;WQ(X+fNUg7WG}GGNsMFZjBk#O( zyXL+o5c#9a&e({>vzO+U)3bAj5+OfM?tvnbzEfmj$%{3?l zp6j~&__kkNI~}%u@6O)@r;ZO-pE$UqNZR#7kJCpKY(78^Ct5t5K#>ToujdAyrt5A! z8a`v8^T$S=9yxZuDgcWw{uB*Evi1Bo)aNx~kK$_^$kV{hMMohO6ff}J>v14Rj# zON0I}aOQKBKjj3N^!4>$%&#k@?F|V%?^B83s1Nea%de5xVc8lsMM-DwG8v4$Qs_9o zg(^K2E5>AfT*ee-qj>NMZ1}ERPBi{Y`9#P?oVz|IF0SYK=~_5ADk>~&GcQq(^8Nd= zIb%kAG~mkp{rk7!!Wc9FHh@Oo1m3&z4L9&$^X0C-(W3SHG``a+ z5N6g+LK&LbFW#?_@&}Mp5i-Qu8Xu^7` zUE4Z%*Np|Miaa2}m%Pu10bK7NRUOV%eFdsIwWPc$6a|N-()-pCn1VcBSB%O7-dKKs z$a?^VChPMAcy7bVASpilc4hZz^g0^y5iXWIo=>H!)Ei7XgM=bDuI+$->Pr+Wv>T`L zd>{8!W>3y399GyBnH_-+X!X3LcS^aAekbMlaO1#bJ*V`K^~G8PoPMfQONAh6?@#nQ zS0o?Li``Bz_>66%AB(ixyT8}tJAp5C=u7_Q zO+Tn1gN(kA&m(Duz$9fl9GQQ56Fxwv-mw{dfwlgs^k}01{>1ScdM%htI5r<*iY?@~ zZi%E8y$5kmbrLP^r`al_+>U>xZQEN<)@}e}|C#E=MDOKdZ(liCy{Xzeldb5dHTCE1 zfR2H$0Zq&-3(ooo1HWuoFk2^{{A*S?eHNEZRBt%)B8RJ!W_73h`jyam;Q9f-QUQoN zV65HT-5IeEo}8Yp18#1%F4|Wo>j9uDiNiwq>8S-6wBe-uTzOVl)M>(YI%gb(ML@7KcKhwsn=XJ-{R0DCX4TQr(E-zz zy#_4ygYWAb+Q^AZ!|QIVga4UO9mjT)j7Ojqe<2XRgjx76G6#ptwe)N^yY-!|nV%Wv zgmTmPc<4S{O&>73NK*DEa%FI?{>`h<4W0swKpP^ES5Ra6#5D}8=5R)CX0g;-KcCpM&s2@_v>9-+1i4n=YdRCs ztw)o8vyNH_5V`;0d&-dh>ihMxRQ)&!n~8KZbfu#Cs0r4O--)2+m*c-VzhyOm6-Kq42;JPF3e%%p~=%+4~f1)=+ z@L>8V%;c_Ml<_=zfzBiMBMJ%m@n-I)SmdP^J~#Qvz@rNeHg@qt#?|3HGqH*TF`Y%q z=22-uXZl%8?7Ez+k(gqyPT%~^j7eHaMBMGuTtHOwQl4cEcE`k7Oe=G1Zjj-Ov~Nwz zV0(+mm*Z5%SDM{9{~_&RyGMWX#kRBiFh=jkj3QMZpwnP)7_FsP{@|k)78Dnw?|V!A zd<-ZyZsY6E-rgRsB>pt6cDLh|p>+O4fCPqIsqEk;q=r_evJOL-_e2)~dWQ zUvz{NAOH8{2VsRwAs=%<=(1r`AAvOi>=l66=3#`yh(9dukkURm)&1@u%mx`9w>E^`H^>}4ChFVTqUY?4F zhY<7vfs&(N?ps-`58rVeD)Qc$v7Tl3)JQAdl7)m3bc{ccf6*GLu0$j^{i^Pf^Ba7$ zw@~PJ(0e4X{ACMz48TSm->Y&O0eFOz_MajllOMdFn3tDw=B>-QMymzBt1`s2 zD}PX*&LfUabB`_F17F^XQb37fXZbo7JBa=*1B0BKsqBEF=|K_w;WsZ4HD_x7UX-Sh z3rQ?Ly-v`@!E6+$0MS5Z@wpv^SJ-v_>jVPZC0S~wc-rr{1iWtB{^$z&7*fv89H8Wk zFLPzDQdv`-O|29&hg4pv!4|@w$lj^$&f{EnZQqXFSJAi10OkQqDW!kcSNY!nA>#8X z4tbcbF z-4tNSe@4lH5O})T!~pJ%Bxs<~OWbU1ZpuhY8vx{%AajBS|6E~RbZpqHM|ns-tI!Lb zish~MD50-_$AsLnT>6*LKZtTMc=M59yYA26zo?^>$QNL${ydrw%zF;2nQ+inoIg4y z#mbL~Oy#h^1~yj?K!%p5y93Zl!$7!WhJ%AEF(I|n>aiP2NVc99o4f`VlA>*yWgB*f z&a0ZD8mqj_V7L2@qY7uMNWk?m{a^ASkN4N-9dH{1hjpz)(FWE@YU~vKDh=ruLP$Sm_n9v>I7ByI=f=Gv<|^&*Tm}kl z26QMgDQpZ7W%WxuWr12J;PzFP;T&GM|elYmmd@v&Qm4TPWoGOCo*ae&*s@`U*=kxpf9o z|J|I&2*|>KC5o5ou8JH@POWDI+%*I?86?n{0!D z8$7(cCYxNWmcM8AnwfT^;C!(4O5|cV`n;WycZVkop-{uol<>dBTD$HbZK4D7cGP6J z`u4t$^Z3=ZpQdTAyrQBRu<-sZHO6N8-hBs#2rl1mvuak0391!O2DgsWpTT5CKz2!l z&SnUDy$p0`XXlFs2bNz}$90hw)Vt+SOg&>UczRNbyUjQnU-2`I0}VS$YE7f^@ak|9 zX?i?_{)cf0+(NVJ&)^m`ZoyA^5`geg@$)Yp1#W^w5Sz&#%#jSiL16yr{M947rA$l- z&9^{Mwn~@f?f<7xePeW8V3IW1Z$1{2=D#ptF*vIA`v|%GNK)w>;#9QfNR3{0XG7-g zttCuLryl6;i!7S;4-idvL?YW zFB8mED=e{6X=z~v&eq_8!Xn8+rk&03!hT4{aL z7&f=TQT>AM%tedCb(kkSFPYTfs56Znd(C7K6azhp?H@;jg$4bi%A!NuC+EbCUg>|w zyNqClk?8FgrBVwL!Ji6riwz*lLYSiRmq=>sYjQ4&4nR>y2q!PY|#wTw}zQB)d zud8h}?>D|qQNqf??hq&?nR2n5%U^F~5Gh7Y<>U@}wqsuxZ&?;QK!y8`hyPgQcJxHYzp%V5^ z+fpg|(Qo_J+zm{r7lHC9Pem^iCuO>hYM5Qt*~fxQYIi!AA+bvsJyZyRJyyuH+E3Vn z{|0SGgzdH^G|!1zre3xAj2CSnoha3v7j*uGFOK+;*5g37n36RF7J9ZOO5j00$03qG zdv&G>Rrj}R!)~M>zHMEhf>eU(r?roj+G*@>DPNOmdaJ_k=H`#cn!*8gP*bfLie$H+ z|K?xm_-c6WQW0b7&VTB%y;76de3p7i_K}e7n`!4gs>(adeRH{ZELEHa^VOR;oDLdY z+~0#33(GofPPu8{@J2gw^BZH682)=;IyFf-NBoZwrZ&!rFW4u1zD?>SMt`LVyQI05 zXTFFb;4^r&7)I-aV0S?K1Dx6HC67yv_#gt&+CH=4GdsVa?9;a~JV=|VxKVxsKtaYE z$pp4dO*`}#hhOY-P;IqiK}`~S@zRfa8D{lFr&$T72!pNYkOgK=+Eaprv4dE7YM z4X1_hq9%r)&WDDK7WM%lSL->(i}(!)Cc z)#XKts1lhjZL^!ldmxoo^4T`GHA~nvHDEm$33n+|@8V#VpZP^iHiA-EMkCBWn8Rt4 z!uB;3LK+535RJ@O{tGsaZN-5BBX z_!S`JU&(Pil<%qap}{tF!Pb=(pSE#Oezx$= zDe#J)jQZ~#H21Co-*ISZ5B(-Y}ytNhM3&PIz}-8gk#-lf9Zs+CUp@ol0@ z$7*4Q0Xh5-+PF9W;Q0pNsm0$JyTjgOO)&9TXdL;qr@lh+b0g+AL;i1a!S}D`ufuBr zclT)5OBYKx=baNiW4D&V%zbc~C?oh#BK+@fV{z(<)clJHH$QA!O*d>_|!vi+>XbQEx$JTEl}sW{`^uV=t?I&uwyl z>xQ735OelctFxbUGoAwc4cTjt$R$B>+&o&+h=2{8NH)twl-x35`~Q;j810O!A{U?- ztZFWUasA!{@LTSu=$&CHrT>k6(CRj1?08${pNZ;y=a4w^b_VWgKped~*!mN5#zK5H zIMdQG;OAA^Babc?@P2>@-B6OH1w^~TmmASK4c;mw_y3$d);rm)==mVw@A(~`;9Y~h zR*q&&^eb$%dF$&!kL7Z)*ml^6`2Nr>0`JM-!aXKg$mP2)ZwUuKNk4ti%EA0DZHtHI zU>*9qg=u)KW>ut4J)fbcAnk%|a7qE+6m=SYW-?VgG|B_U9f9-1i6c7Y?m;DZ|J7Rp zvTO{@ydk$+{)G7{OE$^xnW2!&!=g=a*vC}l+|o9b*PZ=8ZxPpIU%}dXq}RjDU%lV7 zTC3}GrirqJJMhnxEC4{~6t{oH`DaAe2QS7ewnZ;M2NnT)f zdiXbg)~%rJKVlXF_KMJ6Dvbd=VXnJ?Yxp0r5VwJ!@gZ?hthPH*#V=8`S#uUlj0~g< zSj)znLu+vsHE$gWoX#CL45_(%*hk%^#K|8+eMae>IL)Ia+S%}9k3lCgEv)RY{e%7t zd7^c&`i7e}RUtgOal4zg@BdSTkagC&@(Fx5py6G~Jh`E%g_T4x;Kc3vd`kUQDmomd zeA3|~J7%fmNn}!#&~@@-gB3C6=vNZhsj;f}QEz)`lgiGgl)1oJJvk$uZ(JQd9V{Xk z&2U?gRSL~71XhCrnH9gZSbIdygnfP(@c=t*QmTfw9ny^*U!w}nu4Q1NcZw+3if(dI z`J7XB4|u8*1Pph0a;Sg5eK?r-oi_WP(6E`fQ{k;AoD2QwzTev|L=N8^v;B%!5!?*N zfaB1Wy^VZFC__%=F*ZY0QyxV@_ITkZB^X{x5SO=c% zM=l%zmX3%ce1w?JTA`-QWu&YSmnY?`;VO$+%9tz^|Len)|KERT*2%!q4h#;)NKn4Q5_Ok`VrZ4ke7FYA-_dY+gru<; zMURd0fVybNLI*EJ&q85g;qXYqcaSW$RWGS+&$qbr-$eXsI9{&Xtaz||0}@sz*C!{0 zMHbpfP}6+Oje_0XU6+CPB~r_1XlPb&&X}S#IHDX47eR4s3bM(t4-|nsV<5o>$DmPO zLm#X50|Hv!)3erGen?B+z1Mw$0s?&TQt}`PafB_(NWrb^1(O?B0)jW>AyLftX5f7C zI! z_nrsnd<6qB+r^%qa3xNI`b~&F{+9J@&9`9nSMQnKDN{e-90@UCfXx}_d7Y%(qoGbA zF751m@w1rzlcwgJG(`_>@7#20_F;UL~z|3Rxq4Vkq7{uGXo3?F|c zM?Pq_rplGxf)oQIYVpF-9lBN4>uvf&c|}ug%M!Tw? z>`tPE&QcmmyT3cW{02Ow0GGMxKeOsvf6NU*+7NOPIEtQ6z{$E76BDx&U&n0(Y@7M47JULr1H!S&AIZKKiJv=?Hn2VdUv3ISiG+l`z zesgJfuV9~ytL2T?9LVwIgLxGK(@hRn5)kU1QO2S0=`#n>D#*0eBZWGmtZ8{6&0E)j z=BiQZu&WfbXYFc2l0-76io)JTW*C8Vu`MJ0*i!W;OMQ`ODhHhJ>({Sam$>>|2wU|l zuYEv&=K8j~_BG;D0jfW_Nq4vx zur1z@ZPQ0)^#&6uBjLjf^tYI(Xct?S6LiFbSO@O6BS%3nK`_B)XP9CQrk-N?*hx2+<~O}#6} zjP@4fkODC)U^z)|`olW3{Tmt@*gJ+nNUvgReSLhQyE`Wz&h%BR z@(5$+4n8u4I-h;HJVj3?*nh6gs=&*-qGaj#FV-4QRDhh6lr$(EYYSjaqr2ZytZwe>%kt-L%;kRNSXo}6SyI;k;UDvw0X!rY*NnpzA_uySzJ=z+hQ$Bt)q zTQQP>V@#dioW}5=U)2b$8!h4Z(Y~P7$V1c^;k2js%Vp~FQJW_|5lJZN8x00*} z6(8T7+vg>HadB~})Zy(vs-$6YXF*9xNxYFQSvlF+R}i0Y$<4tID{Ao$y_Ec6SX&J; z4OE!$urN6cFa{$yjT_=+CGTj5tPtb!MwQqJUva|@%JQ)=6V)#6l~|-;i;(`Znl0}c z8yka3$?rAvW2^2os#-!WwT~{mvGIcGG2P&1q@gkMu=rrdmaGS!Im!erMz9SF2|@lI z8ako&?53%yNkAd)mxVKyvh;=s=7Agi^h>{qXLAo-k#V0H;@6+TnDl|Wba}66++uv+ z8X!&ta8UF(KuuxorDYr6)6vmcf)u<~FK0mif%%bkBn>SD1?65~L<|DKuY0){0A+nH zQ$03CV@?z#fP5p7v*Lc0V7fMcnXuvd6cI8O(ZoXA^OEXYuJB|D zap;PU=gm1*m;#f2aNj`Be4Vxo+dQ84Wud7sg6IDfEiEnU00c1yYHk4I@G8Ka{f+_#C`TV=M4%o2Lz|tQjP#$O| zv3#;fq04VBshhXfgI`knW?MUWig+gny$8#Rz`q_1Ijf@LxURI6ad0bB_xrTvA?h5S zNb2y+sG@V->l-rnqNL*rHlhd{d74Rb>LvMEY?5E9!!N*xWM*cDKFeW~8^`uA@oDqy zS#Mhha&vQI0@72LT&ahxb8~Z-czg05azz<d5>NxcD_U3^rHCx{XYMS*ue=VM%0RdL@ zUz&`m{$t8FU)2L`4w8qrU3i4B_3nJ@y-gSD-s6Qp|I0f>{Sb^!`XCoFGQ(xJvIIYu zDs9P)`fsX8#VPAQl>$jZt(csLvp zr+idF?=@%5HEdMntwMC#{1;nd&ecOAlw3ooA%>FH>njyRPfxG4lAVVlP&0K_V9{WQ zuo*UqAZX#;`AbXc>e&VKsUyeDA0%XX$qRKy2A1TItGK~J_x&uCc5-skpOS9_uN}X> z!x@B$20&l}WLycI3rW*SF%ykF2}Gb<5Tpm=@6{DnEQDl8q5EI@aYcv9y9l~sCE!^L z^5UHG;_59@X4q(HX*>G*Xpzks0(Y77(!91>!S)f9K1E}h2xIvruFk#Mtm@1!tJ*ZXm3KUrI z>7w|5>R`}NQJKIteMejbDKHhWc7)s}H{l2?oy z?N1$(q9MVcxAf6Tihf-W&!Orf%L5A!GntaTzm6Y{W=F0$gclXk2 z?XbfFj5uXi7|O6l$$IRbZd+VpZ0wEr*x2fY|4yqRpZ%>J`TxqvV!!ow>+bH30>$iE z37wXRChx*ETSbV7jI50vKzl4b#=YZxaDs{>Q%h2-*Y#7$=SwsU3_I#P#-jE^bBR0? z_GEc0Q10cRrYZ`PuyC-j==hw|IiZ!P6l4I@p0ZyFDX$t;IYYCLo{30FeS}SS<%Z=* zubfuevr{_&^P{XRU>sg+`3pZgf4jFJ_goDkJH{QEc{Ye{yJMZ1*xx2!BX-kxt=`|< z$U7LMZ?hWYPFt3JW=kdllYtLrOB#7xOSTdI9!HZCy7gHi&y^lQ;(I1M*WU;p^x^w! zdUQp%AIc+<;F@kFwOR^F$_@IQ@te?Iqua08cOK^h{5a{x)$=5KDRU~(rYyO;eBw&rVJOI(zoQt0)ez{&J-1)R^lB0LOHnKiP#k^JbrsJdWX$Dq<$ z@s4}?KmX~-9t{_K4^HM@S#k#8ILi$^#N_ZUjR8SBh zxtWZOevaUs7dIS)d1%e`DMwky$QbZmZm_MqpuJg= z2@9?baZi;<-ymZ}O4=k+jse`m(MaoCSs}psKg7fQ!ejor`ClsnpxY&L$z{xeA#Lub z8_T_y4tkVeG3>MmF?!kMAf0XFCM5m=kVG7c)xK0`BtMj>JkTa0iLygv2*Q!+mJH0C zk3HB=f(YRw2l&v4n@2Q(5UbKnSE>Qw50{(Ezif$rNJYC`bOoU)k`FOZ`Ga$j(bPQp z%YfJDsfe%6DnxSlF{3$g|5#krH2D$DJwN$#cM|LLWfVybDqB5ms^=wnn^r}^H;(Gy zrWWW~-|`ls1;-r`dD+(aXlQ;@1=2y211sVj3nLjugcK&5Qsnbv%asO$Fx${u7?q2Y zZ}MOn20bF3B-9I+Oj_|6{5{Y{Hf7CWU7EA~3esEay+4lY>Gj#ik?u6HW#f8$eRq{+ zQ=PtR2a&ig)4e;a0E@&Sk1ZoVo@05f{7irZx@E$jqZ z@i<3>hTiq5SvC!uox5~MDVHQejyRI#-)vpnZ|tvof!vm*?oZexsiJMTgdePYa>yT- zoDsc}c~FrJ^rkGB!+vQYS51ywx5`!a?oSXg)6-jiMo~yZe~~lqH>-KEaB)?OZ;d_P z>7L8-lyb*cuLg@@F|mkE*3{9&S}4otV(^7S3q6n%Uss{c`xriTzAtCCkN9gH|GzH>S~e%N<5@ub_;n46E3-X#zg z{@DIB?(aB%>Dc`uLdwCxtRs@VDP4z8#)|(@>f$&I{hdTHTUpFH5Fp(6eGBWKm>2g| zdEnl9QLo8G`|_yL@YX`Za|fF8W+_~oPjDsil_ z41#2ls;6C#m${JZKTVkd6liwzAM)&4#T3Nf5Ir&JtSWu6_pI6n@r^pRJ2GMNRz<2! zG0DOxS;Q1U{NHys6HI*o>6M4pdNnD!QuJ7T#FGs%9}yRp0u!MEZl>}bpYPu;lhgsn z?E6xM{hrRYx3>$7t~9U;dyw@d#ochjB;MzFM<$cM%htbP9XaLb;4!P5X|hWDfx2-C zy61%xd&Hs{>tC0bmuG;VVMZzNr%9C&zdra?SHESH){Hi-tlTfgl8jDoDx(c99R?84 z={x>4{|_;5%CWuNIF81i%zrppe%n!ACCNkoRm3hFj>~goB)XJrqlVR^rHabr0bm4+ zb%}~+R#47;(Pp<}U(hjrGs|)==&W~ z;d%DFMMbwE4yKeLUX~%YNf`v@bw(9!tOBo|w#D21t+`U)Wk*r)W!)}|h7^<_w0&@S zfPbb#D`>^)+@S?Cr=I1hk0)p4L!ihGbhL{!^inNvN?>*Bk9*+V>Pq+x5fLAmDXI+$mOlhj9rYoIi1Lm*5V?clcVb16Xk%^dWg~I~?EtQvuKRkB zn|xmX&Q3B7p8rpoJJAqs#r1YaW`APLmY-a|V*rukhY?^&r^%VQ6Ar@sc)L~4r3~SV ztd2|W4qU=&aWZJ1`-ka&?CR$B2??E~VdA`{ojQA~P%rahDIp=@16+gtl(9BtOYZnx z!}EV&W^s*dxh2dwY(>hdR@t4lhq{sJLU^u_L2%0JS@o`16q&aF7@twoo~(<(%xlm2 zE>Gpsk1kJEG$fu?-Vk%VRe8W7ul28EV;SU1VkpOoq)%(Au$Hy3V5H%mw1Yn`BZJJ& zz`!8vps5~v+!XS~lgbY_yqaJZ zRvjT4l8hO|1|nRk%O$mKWYc2f3;cY1D-4u~N6+GAwlIGu_bz6L{Hj@hW`z*5v`}pD zk(cb4%0Wl%Np?O$w@{#_D-LP2F_H!M4<27E*s=ARQ{LOKp5we>MK{)otG8Uofm!9LBajQm* zDb*&US1UEP=)>w0-bjs-30$3raNU|_Yr}A`pGSaQY)rxU z(jq|^r*%fG%|03UwL5LUHLLJi^%~Mwp(jFb@}_LfR>&M>OH8$*rtX$}+s?Qk)AZ9* z#DDLBq#f-`d#eExLNDr3Sypy9-%k`$e(*%KK^*QN{*XZ0ztwAJUTR8S<{WuIuj?jzuAIl9H0P-%}Mt#W8wqLjFc2lWXvEfmNT+hnAwq zS)4zCLh;0)4B2*UTm@WO^kFW0obQZ3vq%DBSvEW4cnT^)gz^BHs-xQ1hEa#KFvh{A zW}xy7{AaFx&7M%%S0hiHyU4kA;huDbGM^csTd}?tRqr4vNsX^NXfZ304*a|_t|R)% zzJrJrsO6l6s^RFHKD|b#6{pXQYbs>3E^hO6k8gw@=~4d^pJh9*Z5u1OzG@wM*qZ!L zTL#*WzGhQ)d97GZmD%B9|IXi%|Ad(?FS1AB`vQpu1bci^hFsn1k%2;7N9wdn^k-$+ zjF)DDOY@Egda=}a6iWGrxWTQc#k$8D{iA(ON?Dks?xD!`YTVkK>sTG8M1>pr6?l8c zyA@uDI-67WKWsC->B1uuaaB9xl;%f?-KCIobt*jnEyrYIO{S&Y{)48YcafWE-9yjL zsHVSR$}aW6xM3?|tRSuBh=#P++uUo2Ur_l!ha4OcIgy5khnGT53_84Tcrn>&QHgR`;|eE(yHaY8Jl}UF z_nfEh>4T8R`yTr}yuQNEM8zwA`28@`_wJ6V`&Vg`GFrT{9dD%5&fMEq>yCX6Oe1F1 zUN{eavL?CEs1*zGY{QUgtAWQ-@3jC<>a7HQn$=a_93JR-;M(T)6xTptM%na*e;M7dr zG_O`>DDOv{>*d4aoHoMR=hyBT`fTT+L?eE@ z8}3ga-Ht^3mWoX3m44OC-9+H#?iS(fittBv4QOpjvK=gop%(Yh1H3=OzCv>vQx|5u z<#r}*c3;vw!ij97j<1!8N$%3bgyYb!(vOtd2S}kvD8f<6!t=AU*Nbzo_U7h=e}){C zWuNZ)G}Iystz}fic^7!CyN8e! zuUwxUBb$&bmSVQ;m%;C5Tdz!CXJG;;PhcX4cB=R}`kD&Xs&g&$ zrwBd_toQ1&j{!kiDgz(g-0C@jE6&fpikP)Ln|5{AwaH&=PV`Y4YNJ{lVxk1i@EBYD zp_x8xMw>fd6L-pFU&cO}Rguc+K>AOBpy*d+>os+i3AhnWAUe zcevplB;(J{xjyRHTPSEZcx1S-W4XXK5XKi1m_jP<^AEVpj*4oVbvvq;CB;jWphotv z@w&g6r{4Ye0?OBiM}@B?A5pgEyN6btb+7e5?np`iJ#|goV!vDt`v4YLhh41h_P&JbBjLN5z7BLu27bp-a`D;V833f zT;%*3>-~Rut4bUA=tBaKwP+v%iYW{xp*s@>EG=+*|NeP@Xw-3qNK-b2Br{)>P!FFG z48_?=JS2pmvz{xOji69)(aehgw;b_nrvc0V=11)4GmNO}92rE1nh#ud3z3mf6fYMw G`0_t~Oa}h| diff --git a/rtc-dtls/CHANGELOG.md b/rtc-dtls/CHANGELOG.md index 93cf2ba..e1673f0 100644 --- a/rtc-dtls/CHANGELOG.md +++ b/rtc-dtls/CHANGELOG.md @@ -1,26 +1,3 @@ -# webrtc-dtls changelog +# rtc-dtls changelog ## Unreleased - -## v0.7.1 - -* Added support for insecure/deprecated signature verification algorithms [#342](https://github.com/webrtc-rs/webrtc/pull/342) by [@chuigda](https://github.com/chuigda). - -## v0.7.0 - -* Increased minimum support rust version to `1.60.0`. -* Add `RTCCertificate::from_pem` and `RTCCertificate::serialize_pem` (only work with `pem` feature enabled) [#333](https://github.com/webrtc-rs/webrtc/pull/333) - -### Breaking - -* Increased required `webrtc-util` version to `0.7.0`, with this change some methods in `DTLSConn` that implement `webrtc_util::Conn` have changed from async to sync. - -## v0.6.0 - -* [#254 [DTLS] Add NamedCurve::P384](https://github.com/webrtc-rs/webrtc/pull/254) contributed by [neonphog](https://github.com/neonphog) -* Increased min verison of `log` dependency to `0.4.16`. [#250 Fix log at ^0.4.16 to make tests compile](https://github.com/webrtc-rs/webrtc/pull/250) by [@k0nserv](https://github.com/k0nserv). -* Increased serde's minimum version to 1.0.110 [#243 Fixes for cargo minimal-versions](https://github.com/webrtc-rs/webrtc/pull/243) contributed by [algesten](https://github.com/algesten) - -## Prior to 0.6.0 - -Before 0.6.0 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/dtls/releases). diff --git a/rtc-dtls/README.md b/rtc-dtls/README.md index 1ef5cb9..8763228 100644 --- a/rtc-dtls/README.md +++ b/rtc-dtls/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of DTLS. Rewrite Pion DTLS in Rust + RTC DTLS Protocol in Rust With Sans-IO

diff --git a/rtc-dtls/doc/webrtc.rs.png b/rtc-dtls/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z 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 G`0_t~Oa}h| diff --git a/rtc-ice/CHANGELOG.md b/rtc-ice/CHANGELOG.md index 07f16c5..ae69cc4 100644 --- a/rtc-ice/CHANGELOG.md +++ b/rtc-ice/CHANGELOG.md @@ -1,49 +1,3 @@ -# webrtc-ice changelog +# rtc-ice changelog ## Unreleased - -### Breaking changes - -* remove non used `MulticastDnsMode::Unspecified` variant [#404](https://github.com/webrtc-rs/webrtc/pull/404): - -## v0.9.0 - -* Increased minimum support rust version to `1.60.0`. - -### Breaking changes - -* Make functions non-async [#338](https://github.com/webrtc-rs/webrtc/pull/338): - - `Agent`: - - `get_bytes_received`; - - `get_bytes_sent`; - - `on_connection_state_change`; - - `on_selected_candidate_pair_change`; - - `on_candidate`; - - `add_remote_candidate`; - - `gather_candidates`. - - `unmarshal_candidate`; - - `CandidateHostConfig::new_candidate_host`; - - `CandidatePeerReflexiveConfig::new_candidate_peer_reflexive`; - - `CandidateRelayConfig::new_candidate_relay`; - - `CandidateServerReflexiveConfig::new_candidate_server_reflexive`; - - `Candidate`: - - `addr`; - - `set_ip`. - -## v0.8.2 - -* Add IP filter to ICE `AgentConfig` [#306](https://github.com/webrtc-rs/webrtc/pull/306) and [#318](https://github.com/webrtc-rs/webrtc/pull/318). -* Add `rust-version` at 1.57.0 to `Cargo.toml`. This was already the minimum version so does not constitute a change. - -## v0.8.1 - -This release was released in error and contains no changes from 0.8.0. - -## v0.8.0 - -* Increased min verison of `log` dependency to `0.4.16`. [#250 Fix log at ^0.4.16 to make tests compile](https://github.com/webrtc-rs/webrtc/pull/250) by [@k0nserv](https://github.com/k0nserv). -* Incresed serde's minimum version to 1.0.102 [#243 Fixes for cargo minimal-versions](https://github.com/webrtc-rs/webrtc/pull/243) contributed by [algesten](https://github.com/algesten) - -## Prior to 0.8.0 - -Before 0.8.0 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/ice/releases). diff --git a/rtc-ice/README.md b/rtc-ice/README.md index aa28286..d5f5f8e 100644 --- a/rtc-ice/README.md +++ b/rtc-ice/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of ICE. Rewrite Pion ICE in Rust + RTC ICE Protocol in Rust With Sans-IO

diff --git a/rtc-ice/doc/webrtc.rs.png b/rtc-ice/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z zz4!Tc#dxiysfjf)F%c$ulwsh%v#R4j?;4+)if(Ld{QNba#pmOmHMQRD;cz&eC8Dj3 zb8~Z3tJ5BjL94zW5O9C2q}^t#^&;=|$|vbNi%-skZ-5htyqF5$&dFLBA9&!fueSyA zx}RgwYqvO_a_O|&&&V+Lj>K{Pl}w?KJAYD^oH!~7(6{`(o@Tq*k@OWPGCVI-D&!lD zh9UKRF4z$X`OlZ%)|)L7mY~e4I|0F_9g&7n)?hp-oF1+2VmCFgIGpyn#gbgoj*d(* znDoX+vw5*t%tJ+Yu*6u*#-Oj5Nq74;Fd*1wxAFCM5XfdZ9|%R@8CY3KrT#t5m7O=QUA@cpObrl}<7=|NHfD z&zt>VD6w2No6%R`aXnkDTRwn+g*Bcp6tex*5R}0GTDkee>3Te`yp=IT{5nZm&#E%a z9$o^H2FM6i$mdOx!>g3b?sT2i(`sPDLxL;tJ)mE#x0?Lva$EjkP(UmaK3}W#0``K# zZq4NX?&In!dbr1@p&tl6a>1_B3E7$JmJu8?hC1-EoTFnW)fGMFZ;cDub^`Ig`H zAXF?4JFJ1hQLQfXSCf(R6#aigzJL771Wled#`fJ89OAK9N~c>9p`la~RaCY2ZWzGj z05s3nOLf79+v-Izsj?!m7)()d@!JtJh3|6jG~f;n4&g|IvyT@WGJMx)$jF6wWxLw8 zerjmHv^>2-4O1qo>WSFd)6!@)l5=xo3knGH^YdR|WMoo6g}Ui z@^B`{>+|IZPS&MyTt$Izv{I?$`u?7bo*toQMfwY1pP!#!_~&EjW7SJrlCmF>xF?pm zf>`MXtee^#D1>#Uu9Wd^evxYWD;vB%oOSo`WwTigy}#VuJUkqH5svZZSuTg8(Q2u@ z7#xcji`6{Vxyc!H1X{p}RFT_uCjFuIshSy%Fx5UWyFD0^#p6-06S+lhy;41z%jJT_ z=k3}#s;Xqa-XTn^CkS9C4-_+G!)o%YM z8`r)=h)c6`4^y}JZ`S}DmRH7h$16;VtRgF~^AoMABE`bi7c~`F7cjAMN}0crjJ0)tpLS zv;A=n8@B90SjbKZ2odU3Cg9@Y%KfUpSS@B9cSm62@wkS*5`YrD-IsSLgoTAQ+wJi= z|G1|7F(LH3S5mLj9-YnOxgg*)n?(Q0A&|54&Ag>|hSp1l$aN{1pJd!zp7 z%gI=h6KBJ|nAG2n7lPr?WpM0Q;-QiU2k6r?Dlqw@koJ< zk#nU433-b;8QDmRKRQk8Ss7+ z!QyJwc-)U&>i}fKT1@?RAU}=I?OMqq%KQbF@b6VzAq!sy{d_6V#{zz0k5bMmlTdGj-Sl7qC{P_jd-`yTR{!lpT>i$+Y|Eg-bmtiQ- z1D8GS)*!M6Ajt#0S}YfW8T;Rrv4;=^-mgU#ekjG1O-rc?yqz~!OXXZ4dKSLD);IuV zWz^)hr;fM!`%mHMh+(Ivr|Is!Y;Ebj3Q)hQInJ-te%XD+Z}zLnXjHQNlU;jG_9A6; z`WSCOU0 zfQQX?`o7$<&{uT-UnO4|74;W(J9H^sl7iF#(%pZ$MH-|_y1P*jB&9o~JEXfsy1PMI zy8Aucb??Xf;r+x~1N>&@#D4bP&ps#Z2$VR_TTNwU9b4+Wz~Q_4NFF6MX95MpgF5t=F)Xe$T!~ZTCl__XZ?F-VIBzH=Ri2m_$U{ z`>QX^e!1C=-D;*(xnll(-Ao>yH3ulJH61f4gNe+{l@uz~X2Zy+s2h>|M|95Rpsc73 z*CihX$T{mbcI8V47dO);51Sbo8z&3-@EtDJGhaL|yRGV)pcV}7{7&a}`fWk!L@i+> za)b;BOrGEK(+i7VYJAPSzNb}LW$)2$(Cm5$_JP#T)g|}M2#Jh?Z^X81@fvzBh26x| z^d}u2Eie#a7~NuR_a^c#_NT)tD_QhB_wp#C7??;O;^$RXyp9EbRad*XWpY~0m~8ZX zSLB`D%BlT4nqj&>RdnlDZ?lLmhQ$!(?d@$29vZ#l^>{f8o`nX!yxDlR1QiVpy@k`O z#3Y^~KN#F>ZBzqENyPePS7Hpo3#IQqreJKKQ;diqQBlk%Za|`de9y8BJR;&Rqh3_RSA=Uy z)mC5_7`1CcUN$HIM#}3!pVMA~bZiSe^ohax+$GD}1g}VAKz;TW>(|UoBy*zi-)sN) z@k1#~hWO2!WMSzG0IN87cv~mzTGeI|pKRVK1%R@NI_lEg@oBtDI(&Ng>kDrLdaSSY zdgWk@{u@wdU|L#5Go{4ESsXUR!3Xir-`f#%Jl&8$C*kS%WjdI|{#mhc)@qi`Xq7QsVQH#r!Yo z7t%i}bkDfzd;cB)gk#a@YPJMg+vC-zTFM@Wy2h@ABql0&ZoG$V6W~UpyFV&WsYaB?dL7;{`{zgmP0QKPx78)8y z#Np{dMSIglTfbU|qz1Im>Y~K-RsxoHdOioR6V<0O)u= zz)%s#qfA6ZBzwL+yu3p8cz0?1{PYOwTjdZOOF#hVc-$ZMDt>88`;J3<281r1p;I{S z#C#e2*sZtTvOvF4)yW`p`&ij0?x*Ya=XiJT&EFBrD>S2m*CZwCWt3D@J$SPS89lzE#ml1y;mU6g<*cz4pH68d40z>=3G z37{g~RY)q92MFD>F)<8Y0ZM%vEJlaCjiyM5&@?qd55{z7@WkX~gvxqR-?`4*-F zB54^JdN!5|U`-BkuX?K-oyVElI0Me?+?<^ss!J2W6`;u*37>4Cmz;V&mueZ_ zXEFc?a!ks3;O$TY6i^H#&Q(jSS3*6JpetoeZFso2Jzzvf08Req+D1!7^&=%kdyhZq zO~h|y)4&(s#{*E%H{7;qDhb^_fYPI*7-%K47{dDc`qG7NF;mIuvi-4_ar%7o9)3iF z7K0yXV=S$Oep~Eei?31^OvF5ElXlKR<7@TM;*dQcg&g=rU=E~0b{CK@8pP|zxDF*zd&}HvdXKC!O z6COMrlG2I__@A4tpEqp7hg`P!wil{ysB%y=cOy3v)6#T|QVOz@g#FqEhminX&fIqZ z)>jMge1fhXD(9_xe*b3kyf81wU2X@j-GXY6K1+iB$3XT+5T+cal@0@C&Ck;YhR6rK z$b%1`xmgexzC!8;wEi9*DwvzowF7u7^5ZufB7}v7rGIa<)a1fIt2nocFg`gME97&B zo18tUWpM}Gkv~1(aXhZ(KU+-Xq5wwr0Qk4!vcDiBW2vZQpvprvAuWOi^{iR42C9Of zbLNLN94yJ2l3Dh3d`s5JDTKfH9V&JbC3`k+_x2)9OK_o3KMUCZ1MLCWl>A2gXPb%VNu4<$R62@%|rumh!epdpy6`uTBUU=i&zab41W# zn5Z#L(AC{_&pGt!PhkY%^{DIr%L3#TdzHes8&B!W$)Ond;?C{iep%_*qi<}BbI%kA zy#5aNHeHw}AvU%<{0(~=TS^i4MUsI5sPBAlJ|_MviU1q)4?u;1(ks5QH>g789NaWsY2?}cft(;bUuJ?-NOEfB8*ijSo zgQEdrx^)0a@q=%tNmj*f;G#`!U{q>yO^%#uTzD&Ad0e$1X|#Fov(ex z*cf?5E~MjT>baf#d9F=Y_}(G;k-f3MJM8_oY$|(F&|fC35h1q=-eDW7$=nbH zp)KK+CY$$(DDRs$Qe^k`_5_|E&KvlF5XseV_ibXB1#TFcLS?yfi=+G4Vu#%}Y9^n_ ze~uL)2C>a|Y1=cLmZCSZfrn;PP&@}uL)J|%#$wT4j5Sb?O;a!rEpP7c*}bl;m*W|L z8Pxv#^hrPHY``$C-XLtgKD+#FK!F6jZ7W99_EoK=Xu+`bIDx%o3a(-G#=RS3O5;Yo zjP*(jZ>IMd3J{(y_kGjly8M7r^DoC00Q(JCwNi;WQ(X+fNUg7WG}GGNsMFZjBk#O( zyXL+o5c#9a&e({>vzO+U)3bAj5+OfM?tvnbzEfmj$%{3?l zp6j~&__kkNI~}%u@6O)@r;ZO-pE$UqNZR#7kJCpKY(78^Ct5t5K#>ToujdAyrt5A! z8a`v8^T$S=9yxZuDgcWw{uB*Evi1Bo)aNx~kK$_^$kV{hMMohO6ff}J>v14Rj# zON0I}aOQKBKjj3N^!4>$%&#k@?F|V%?^B83s1Nea%de5xVc8lsMM-DwG8v4$Qs_9o zg(^K2E5>AfT*ee-qj>NMZ1}ERPBi{Y`9#P?oVz|IF0SYK=~_5ADk>~&GcQq(^8Nd= zIb%kAG~mkp{rk7!!Wc9FHh@Oo1m3&z4L9&$^X0C-(W3SHG``a+ z5N6g+LK&LbFW#?_@&}Mp5i-Qu8Xu^7` zUE4Z%*Np|Miaa2}m%Pu10bK7NRUOV%eFdsIwWPc$6a|N-()-pCn1VcBSB%O7-dKKs z$a?^VChPMAcy7bVASpilc4hZz^g0^y5iXWIo=>H!)Ei7XgM=bDuI+$->Pr+Wv>T`L zd>{8!W>3y399GyBnH_-+X!X3LcS^aAekbMlaO1#bJ*V`K^~G8PoPMfQONAh6?@#nQ zS0o?Li``Bz_>66%AB(ixyT8}tJAp5C=u7_Q zO+Tn1gN(kA&m(Duz$9fl9GQQ56Fxwv-mw{dfwlgs^k}01{>1ScdM%htI5r<*iY?@~ zZi%E8y$5kmbrLP^r`al_+>U>xZQEN<)@}e}|C#E=MDOKdZ(liCy{Xzeldb5dHTCE1 zfR2H$0Zq&-3(ooo1HWuoFk2^{{A*S?eHNEZRBt%)B8RJ!W_73h`jyam;Q9f-QUQoN zV65HT-5IeEo}8Yp18#1%F4|Wo>j9uDiNiwq>8S-6wBe-uTzOVl)M>(YI%gb(ML@7KcKhwsn=XJ-{R0DCX4TQr(E-zz zy#_4ygYWAb+Q^AZ!|QIVga4UO9mjT)j7Ojqe<2XRgjx76G6#ptwe)N^yY-!|nV%Wv zgmTmPc<4S{O&>73NK*DEa%FI?{>`h<4W0swKpP^ES5Ra6#5D}8=5R)CX0g;-KcCpM&s2@_v>9-+1i4n=YdRCs ztw)o8vyNH_5V`;0d&-dh>ihMxRQ)&!n~8KZbfu#Cs0r4O--)2+m*c-VzhyOm6-Kq42;JPF3e%%p~=%+4~f1)=+ z@L>8V%;c_Ml<_=zfzBiMBMJ%m@n-I)SmdP^J~#Qvz@rNeHg@qt#?|3HGqH*TF`Y%q z=22-uXZl%8?7Ez+k(gqyPT%~^j7eHaMBMGuTtHOwQl4cEcE`k7Oe=G1Zjj-Ov~Nwz zV0(+mm*Z5%SDM{9{~_&RyGMWX#kRBiFh=jkj3QMZpwnP)7_FsP{@|k)78Dnw?|V!A zd<-ZyZsY6E-rgRsB>pt6cDLh|p>+O4fCPqIsqEk;q=r_evJOL-_e2)~dWQ zUvz{NAOH8{2VsRwAs=%<=(1r`AAvOi>=l66=3#`yh(9dukkURm)&1@u%mx`9w>E^`H^>}4ChFVTqUY?4F zhY<7vfs&(N?ps-`58rVeD)Qc$v7Tl3)JQAdl7)m3bc{ccf6*GLu0$j^{i^Pf^Ba7$ zw@~PJ(0e4X{ACMz48TSm->Y&O0eFOz_MajllOMdFn3tDw=B>-QMymzBt1`s2 zD}PX*&LfUabB`_F17F^XQb37fXZbo7JBa=*1B0BKsqBEF=|K_w;WsZ4HD_x7UX-Sh z3rQ?Ly-v`@!E6+$0MS5Z@wpv^SJ-v_>jVPZC0S~wc-rr{1iWtB{^$z&7*fv89H8Wk zFLPzDQdv`-O|29&hg4pv!4|@w$lj^$&f{EnZQqXFSJAi10OkQqDW!kcSNY!nA>#8X z4tbcbF z-4tNSe@4lH5O})T!~pJ%Bxs<~OWbU1ZpuhY8vx{%AajBS|6E~RbZpqHM|ns-tI!Lb zish~MD50-_$AsLnT>6*LKZtTMc=M59yYA26zo?^>$QNL${ydrw%zF;2nQ+inoIg4y z#mbL~Oy#h^1~yj?K!%p5y93Zl!$7!WhJ%AEF(I|n>aiP2NVc99o4f`VlA>*yWgB*f z&a0ZD8mqj_V7L2@qY7uMNWk?m{a^ASkN4N-9dH{1hjpz)(FWE@YU~vKDh=ruLP$Sm_n9v>I7ByI=f=Gv<|^&*Tm}kl z26QMgDQpZ7W%WxuWr12J;PzFP;T&GM|elYmmd@v&Qm4TPWoGOCo*ae&*s@`U*=kxpf9o z|J|I&2*|>KC5o5ou8JH@POWDI+%*I?86?n{0!D z8$7(cCYxNWmcM8AnwfT^;C!(4O5|cV`n;WycZVkop-{uol<>dBTD$HbZK4D7cGP6J z`u4t$^Z3=ZpQdTAyrQBRu<-sZHO6N8-hBs#2rl1mvuak0391!O2DgsWpTT5CKz2!l z&SnUDy$p0`XXlFs2bNz}$90hw)Vt+SOg&>UczRNbyUjQnU-2`I0}VS$YE7f^@ak|9 zX?i?_{)cf0+(NVJ&)^m`ZoyA^5`geg@$)Yp1#W^w5Sz&#%#jSiL16yr{M947rA$l- z&9^{Mwn~@f?f<7xePeW8V3IW1Z$1{2=D#ptF*vIA`v|%GNK)w>;#9QfNR3{0XG7-g zttCuLryl6;i!7S;4-idvL?YW zFB8mED=e{6X=z~v&eq_8!Xn8+rk&03!hT4{aL z7&f=TQT>AM%tedCb(kkSFPYTfs56Znd(C7K6azhp?H@;jg$4bi%A!NuC+EbCUg>|w zyNqClk?8FgrBVwL!Ji6riwz*lLYSiRmq=>sYjQ4&4nR>y2q!PY|#wTw}zQB)d zud8h}?>D|qQNqf??hq&?nR2n5%U^F~5Gh7Y<>U@}wqsuxZ&?;QK!y8`hyPgQcJxHYzp%V5^ z+fpg|(Qo_J+zm{r7lHC9Pem^iCuO>hYM5Qt*~fxQYIi!AA+bvsJyZyRJyyuH+E3Vn z{|0SGgzdH^G|!1zre3xAj2CSnoha3v7j*uGFOK+;*5g37n36RF7J9ZOO5j00$03qG zdv&G>Rrj}R!)~M>zHMEhf>eU(r?roj+G*@>DPNOmdaJ_k=H`#cn!*8gP*bfLie$H+ z|K?xm_-c6WQW0b7&VTB%y;76de3p7i_K}e7n`!4gs>(adeRH{ZELEHa^VOR;oDLdY z+~0#33(GofPPu8{@J2gw^BZH682)=;IyFf-NBoZwrZ&!rFW4u1zD?>SMt`LVyQI05 zXTFFb;4^r&7)I-aV0S?K1Dx6HC67yv_#gt&+CH=4GdsVa?9;a~JV=|VxKVxsKtaYE z$pp4dO*`}#hhOY-P;IqiK}`~S@zRfa8D{lFr&$T72!pNYkOgK=+Eaprv4dE7YM z4X1_hq9%r)&WDDK7WM%lSL->(i}(!)Cc z)#XKts1lhjZL^!ldmxoo^4T`GHA~nvHDEm$33n+|@8V#VpZP^iHiA-EMkCBWn8Rt4 z!uB;3LK+535RJ@O{tGsaZN-5BBX z_!S`JU&(Pil<%qap}{tF!Pb=(pSE#Oezx$= zDe#J)jQZ~#H21Co-*ISZ5B(-Y}ytNhM3&PIz}-8gk#-lf9Zs+CUp@ol0@ z$7*4Q0Xh5-+PF9W;Q0pNsm0$JyTjgOO)&9TXdL;qr@lh+b0g+AL;i1a!S}D`ufuBr zclT)5OBYKx=baNiW4D&V%zbc~C?oh#BK+@fV{z(<)clJHH$QA!O*d>_|!vi+>XbQEx$JTEl}sW{`^uV=t?I&uwyl z>xQ735OelctFxbUGoAwc4cTjt$R$B>+&o&+h=2{8NH)twl-x35`~Q;j810O!A{U?- ztZFWUasA!{@LTSu=$&CHrT>k6(CRj1?08${pNZ;y=a4w^b_VWgKped~*!mN5#zK5H zIMdQG;OAA^Babc?@P2>@-B6OH1w^~TmmASK4c;mw_y3$d);rm)==mVw@A(~`;9Y~h zR*q&&^eb$%dF$&!kL7Z)*ml^6`2Nr>0`JM-!aXKg$mP2)ZwUuKNk4ti%EA0DZHtHI zU>*9qg=u)KW>ut4J)fbcAnk%|a7qE+6m=SYW-?VgG|B_U9f9-1i6c7Y?m;DZ|J7Rp zvTO{@ydk$+{)G7{OE$^xnW2!&!=g=a*vC}l+|o9b*PZ=8ZxPpIU%}dXq}RjDU%lV7 zTC3}GrirqJJMhnxEC4{~6t{oH`DaAe2QS7ewnZ;M2NnT)f zdiXbg)~%rJKVlXF_KMJ6Dvbd=VXnJ?Yxp0r5VwJ!@gZ?hthPH*#V=8`S#uUlj0~g< zSj)znLu+vsHE$gWoX#CL45_(%*hk%^#K|8+eMae>IL)Ia+S%}9k3lCgEv)RY{e%7t zd7^c&`i7e}RUtgOal4zg@BdSTkagC&@(Fx5py6G~Jh`E%g_T4x;Kc3vd`kUQDmomd zeA3|~J7%fmNn}!#&~@@-gB3C6=vNZhsj;f}QEz)`lgiGgl)1oJJvk$uZ(JQd9V{Xk z&2U?gRSL~71XhCrnH9gZSbIdygnfP(@c=t*QmTfw9ny^*U!w}nu4Q1NcZw+3if(dI z`J7XB4|u8*1Pph0a;Sg5eK?r-oi_WP(6E`fQ{k;AoD2QwzTev|L=N8^v;B%!5!?*N zfaB1Wy^VZFC__%=F*ZY0QyxV@_ITkZB^X{x5SO=c% zM=l%zmX3%ce1w?JTA`-QWu&YSmnY?`;VO$+%9tz^|Len)|KERT*2%!q4h#;)NKn4Q5_Ok`VrZ4ke7FYA-_dY+gru<; zMURd0fVybNLI*EJ&q85g;qXYqcaSW$RWGS+&$qbr-$eXsI9{&Xtaz||0}@sz*C!{0 zMHbpfP}6+Oje_0XU6+CPB~r_1XlPb&&X}S#IHDX47eR4s3bM(t4-|nsV<5o>$DmPO zLm#X50|Hv!)3erGen?B+z1Mw$0s?&TQt}`PafB_(NWrb^1(O?B0)jW>AyLftX5f7C zI! z_nrsnd<6qB+r^%qa3xNI`b~&F{+9J@&9`9nSMQnKDN{e-90@UCfXx}_d7Y%(qoGbA zF751m@w1rzlcwgJG(`_>@7#20_F;UL~z|3Rxq4Vkq7{uGXo3?F|c zM?Pq_rplGxf)oQIYVpF-9lBN4>uvf&c|}ug%M!Tw? z>`tPE&QcmmyT3cW{02Ow0GGMxKeOsvf6NU*+7NOPIEtQ6z{$E76BDx&U&n0(Y@7M47JULr1H!S&AIZKKiJv=?Hn2VdUv3ISiG+l`z zesgJfuV9~ytL2T?9LVwIgLxGK(@hRn5)kU1QO2S0=`#n>D#*0eBZWGmtZ8{6&0E)j z=BiQZu&WfbXYFc2l0-76io)JTW*C8Vu`MJ0*i!W;OMQ`ODhHhJ>({Sam$>>|2wU|l zuYEv&=K8j~_BG;D0jfW_Nq4vx zur1z@ZPQ0)^#&6uBjLjf^tYI(Xct?S6LiFbSO@O6BS%3nK`_B)XP9CQrk-N?*hx2+<~O}#6} zjP@4fkODC)U^z)|`olW3{Tmt@*gJ+nNUvgReSLhQyE`Wz&h%BR z@(5$+4n8u4I-h;HJVj3?*nh6gs=&*-qGaj#FV-4QRDhh6lr$(EYYSjaqr2ZytZwe>%kt-L%;kRNSXo}6SyI;k;UDvw0X!rY*NnpzA_uySzJ=z+hQ$Bt)q zTQQP>V@#dioW}5=U)2b$8!h4Z(Y~P7$V1c^;k2js%Vp~FQJW_|5lJZN8x00*} z6(8T7+vg>HadB~})Zy(vs-$6YXF*9xNxYFQSvlF+R}i0Y$<4tID{Ao$y_Ec6SX&J; z4OE!$urN6cFa{$yjT_=+CGTj5tPtb!MwQqJUva|@%JQ)=6V)#6l~|-;i;(`Znl0}c z8yka3$?rAvW2^2os#-!WwT~{mvGIcGG2P&1q@gkMu=rrdmaGS!Im!erMz9SF2|@lI z8ako&?53%yNkAd)mxVKyvh;=s=7Agi^h>{qXLAo-k#V0H;@6+TnDl|Wba}66++uv+ z8X!&ta8UF(KuuxorDYr6)6vmcf)u<~FK0mif%%bkBn>SD1?65~L<|DKuY0){0A+nH zQ$03CV@?z#fP5p7v*Lc0V7fMcnXuvd6cI8O(ZoXA^OEXYuJB|D zap;PU=gm1*m;#f2aNj`Be4Vxo+dQ84Wud7sg6IDfEiEnU00c1yYHk4I@G8Ka{f+_#C`TV=M4%o2Lz|tQjP#$O| zv3#;fq04VBshhXfgI`knW?MUWig+gny$8#Rz`q_1Ijf@LxURI6ad0bB_xrTvA?h5S zNb2y+sG@V->l-rnqNL*rHlhd{d74Rb>LvMEY?5E9!!N*xWM*cDKFeW~8^`uA@oDqy zS#Mhha&vQI0@72LT&ahxb8~Z-czg05azz<d5>NxcD_U3^rHCx{XYMS*ue=VM%0RdL@ zUz&`m{$t8FU)2L`4w8qrU3i4B_3nJ@y-gSD-s6Qp|I0f>{Sb^!`XCoFGQ(xJvIIYu zDs9P)`fsX8#VPAQl>$jZt(csLvp zr+idF?=@%5HEdMntwMC#{1;nd&ecOAlw3ooA%>FH>njyRPfxG4lAVVlP&0K_V9{WQ zuo*UqAZX#;`AbXc>e&VKsUyeDA0%XX$qRKy2A1TItGK~J_x&uCc5-skpOS9_uN}X> z!x@B$20&l}WLycI3rW*SF%ykF2}Gb<5Tpm=@6{DnEQDl8q5EI@aYcv9y9l~sCE!^L z^5UHG;_59@X4q(HX*>G*Xpzks0(Y77(!91>!S)f9K1E}h2xIvruFk#Mtm@1!tJ*ZXm3KUrI z>7w|5>R`}NQJKIteMejbDKHhWc7)s}H{l2?oy z?N1$(q9MVcxAf6Tihf-W&!Orf%L5A!GntaTzm6Y{W=F0$gclXk2 z?XbfFj5uXi7|O6l$$IRbZd+VpZ0wEr*x2fY|4yqRpZ%>J`TxqvV!!ow>+bH30>$iE z37wXRChx*ETSbV7jI50vKzl4b#=YZxaDs{>Q%h2-*Y#7$=SwsU3_I#P#-jE^bBR0? z_GEc0Q10cRrYZ`PuyC-j==hw|IiZ!P6l4I@p0ZyFDX$t;IYYCLo{30FeS}SS<%Z=* zubfuevr{_&^P{XRU>sg+`3pZgf4jFJ_goDkJH{QEc{Ye{yJMZ1*xx2!BX-kxt=`|< z$U7LMZ?hWYPFt3JW=kdllYtLrOB#7xOSTdI9!HZCy7gHi&y^lQ;(I1M*WU;p^x^w! zdUQp%AIc+<;F@kFwOR^F$_@IQ@te?Iqua08cOK^h{5a{x)$=5KDRU~(rYyO;eBw&rVJOI(zoQt0)ez{&J-1)R^lB0LOHnKiP#k^JbrsJdWX$Dq<$ z@s4}?KmX~-9t{_K4^HM@S#k#8ILi$^#N_ZUjR8SBh zxtWZOevaUs7dIS)d1%e`DMwky$QbZmZm_MqpuJg= z2@9?baZi;<-ymZ}O4=k+jse`m(MaoCSs}psKg7fQ!ejor`ClsnpxY&L$z{xeA#Lub z8_T_y4tkVeG3>MmF?!kMAf0XFCM5m=kVG7c)xK0`BtMj>JkTa0iLygv2*Q!+mJH0C zk3HB=f(YRw2l&v4n@2Q(5UbKnSE>Qw50{(Ezif$rNJYC`bOoU)k`FOZ`Ga$j(bPQp z%YfJDsfe%6DnxSlF{3$g|5#krH2D$DJwN$#cM|LLWfVybDqB5ms^=wnn^r}^H;(Gy zrWWW~-|`ls1;-r`dD+(aXlQ;@1=2y211sVj3nLjugcK&5Qsnbv%asO$Fx${u7?q2Y zZ}MOn20bF3B-9I+Oj_|6{5{Y{Hf7CWU7EA~3esEay+4lY>Gj#ik?u6HW#f8$eRq{+ zQ=PtR2a&ig)4e;a0E@&Sk1ZoVo@05f{7irZx@E$jqZ z@i<3>hTiq5SvC!uox5~MDVHQejyRI#-)vpnZ|tvof!vm*?oZexsiJMTgdePYa>yT- zoDsc}c~FrJ^rkGB!+vQYS51ywx5`!a?oSXg)6-jiMo~yZe~~lqH>-KEaB)?OZ;d_P z>7L8-lyb*cuLg@@F|mkE*3{9&S}4otV(^7S3q6n%Uss{c`xriTzAtCCkN9gH|GzH>S~e%N<5@ub_;n46E3-X#zg z{@DIB?(aB%>Dc`uLdwCxtRs@VDP4z8#)|(@>f$&I{hdTHTUpFH5Fp(6eGBWKm>2g| zdEnl9QLo8G`|_yL@YX`Za|fF8W+_~oPjDsil_ z41#2ls;6C#m${JZKTVkd6liwzAM)&4#T3Nf5Ir&JtSWu6_pI6n@r^pRJ2GMNRz<2! zG0DOxS;Q1U{NHys6HI*o>6M4pdNnD!QuJ7T#FGs%9}yRp0u!MEZl>}bpYPu;lhgsn z?E6xM{hrRYx3>$7t~9U;dyw@d#ochjB;MzFM<$cM%htbP9XaLb;4!P5X|hWDfx2-C zy61%xd&Hs{>tC0bmuG;VVMZzNr%9C&zdra?SHESH){Hi-tlTfgl8jDoDx(c99R?84 z={x>4{|_;5%CWuNIF81i%zrppe%n!ACCNkoRm3hFj>~goB)XJrqlVR^rHabr0bm4+ zb%}~+R#47;(Pp<}U(hjrGs|)==&W~ z;d%DFMMbwE4yKeLUX~%YNf`v@bw(9!tOBo|w#D21t+`U)Wk*r)W!)}|h7^<_w0&@S zfPbb#D`>^)+@S?Cr=I1hk0)p4L!ihGbhL{!^inNvN?>*Bk9*+V>Pq+x5fLAmDXI+$mOlhj9rYoIi1Lm*5V?clcVb16Xk%^dWg~I~?EtQvuKRkB zn|xmX&Q3B7p8rpoJJAqs#r1YaW`APLmY-a|V*rukhY?^&r^%VQ6Ar@sc)L~4r3~SV ztd2|W4qU=&aWZJ1`-ka&?CR$B2??E~VdA`{ojQA~P%rahDIp=@16+gtl(9BtOYZnx z!}EV&W^s*dxh2dwY(>hdR@t4lhq{sJLU^u_L2%0JS@o`16q&aF7@twoo~(<(%xlm2 zE>Gpsk1kJEG$fu?-Vk%VRe8W7ul28EV;SU1VkpOoq)%(Au$Hy3V5H%mw1Yn`BZJJ& zz`!8vps5~v+!XS~lgbY_yqaJZ zRvjT4l8hO|1|nRk%O$mKWYc2f3;cY1D-4u~N6+GAwlIGu_bz6L{Hj@hW`z*5v`}pD zk(cb4%0Wl%Np?O$w@{#_D-LP2F_H!M4<27E*s=ARQ{LOKp5we>MK{)otG8Uofm!9LBajQm* zDb*&US1UEP=)>w0-bjs-30$3raNU|_Yr}A`pGSaQY)rxU z(jq|^r*%fG%|03UwL5LUHLLJi^%~Mwp(jFb@}_LfR>&M>OH8$*rtX$}+s?Qk)AZ9* z#DDLBq#f-`d#eExLNDr3Sypy9-%k`$e(*%KK^*QN{*XZ0ztwAJUTR8S<{WuIuj?jzuAIl9H0P-%}Mt#W8wqLjFc2lWXvEfmNT+hnAwq zS)4zCLh;0)4B2*UTm@WO^kFW0obQZ3vq%DBSvEW4cnT^)gz^BHs-xQ1hEa#KFvh{A zW}xy7{AaFx&7M%%S0hiHyU4kA;huDbGM^csTd}?tRqr4vNsX^NXfZ304*a|_t|R)% zzJrJrsO6l6s^RFHKD|b#6{pXQYbs>3E^hO6k8gw@=~4d^pJh9*Z5u1OzG@wM*qZ!L zTL#*WzGhQ)d97GZmD%B9|IXi%|Ad(?FS1AB`vQpu1bci^hFsn1k%2;7N9wdn^k-$+ zjF)DDOY@Egda=}a6iWGrxWTQc#k$8D{iA(ON?Dks?xD!`YTVkK>sTG8M1>pr6?l8c zyA@uDI-67WKWsC->B1uuaaB9xl;%f?-KCIobt*jnEyrYIO{S&Y{)48YcafWE-9yjL zsHVSR$}aW6xM3?|tRSuBh=#P++uUo2Ur_l!ha4OcIgy5khnGT53_84Tcrn>&QHgR`;|eE(yHaY8Jl}UF z_nfEh>4T8R`yTr}yuQNEM8zwA`28@`_wJ6V`&Vg`GFrT{9dD%5&fMEq>yCX6Oe1F1 zUN{eavL?CEs1*zGY{QUgtAWQ-@3jC<>a7HQn$=a_93JR-;M(T)6xTptM%na*e;M7dr zG_O`>DDOv{>*d4aoHoMR=hyBT`fTT+L?eE@ z8}3ga-Ht^3mWoX3m44OC-9+H#?iS(fittBv4QOpjvK=gop%(Yh1H3=OzCv>vQx|5u z<#r}*c3;vw!ij97j<1!8N$%3bgyYb!(vOtd2S}kvD8f<6!t=AU*Nbzo_U7h=e}){C zWuNZ)G}Iystz}fic^7!CyN8e! zuUwxUBb$&bmSVQ;m%;C5Tdz!CXJG;;PhcX4cB=R}`kD&Xs&g&$ zrwBd_toQ1&j{!kiDgz(g-0C@jE6&fpikP)Ln|5{AwaH&=PV`Y4YNJ{lVxk1i@EBYD zp_x8xMw>fd6L-pFU&cO}Rguc+K>AOBpy*d+>os+i3AhnWAUe zcevplB;(J{xjyRHTPSEZcx1S-W4XXK5XKi1m_jP<^AEVpj*4oVbvvq;CB;jWphotv z@w&g6r{4Ye0?OBiM}@B?A5pgEyN6btb+7e5?np`iJ#|goV!vDt`v4YLhh41h_P&JbBjLN5z7BLu27bp-a`D;V833f zT;%*3>-~Rut4bUA=tBaKwP+v%iYW{xp*s@>EG=+*|NeP@Xw-3qNK-b2Br{)>P!FFG z48_?=JS2pmvz{xOji69)(aehgw;b_nrvc0V=11)4GmNO}92rE1nh#ud3z3mf6fYMw G`0_t~Oa}h| diff --git a/rtc-rtcp/CHANGELOG.md b/rtc-rtcp/CHANGELOG.md index 3438026..98f6b38 100644 --- a/rtc-rtcp/CHANGELOG.md +++ b/rtc-rtcp/CHANGELOG.md @@ -1,23 +1,3 @@ -# rtcp changelog +# rtc-rtcp changelog ## Unreleased - -## v0.7.2 - -* [#372 Fix over-NACK due not resetting lost_packets bitmask](https://github.com/webrtc-rs/webrtc/pull/372/) - -## v0.7.1 - -* Increased minimum support rust version to `1.60.0`. -* Increased required `webrtc-util` version to `0.7.0`. - -## v0.7.0 - -* [#14 Prevent crash in RTCP NACK writing](https://github.com/webrtc-rs/rtcp/pull/14) by [@pthatcher](https://github.com/pthatcher). -* Adds `IntoIterator` for `NackPair` which iterates over all the sequence numbers specified by the `NackPair`. This is similar to `packet_list` but without requiring the allocation of a Vec. Added in [#225 Add RTP Stats to stats report](https://github.com/webrtc-rs/webrtc/pull/225) by [@k0nserv](https://github.com/k0nserv). - - -## Prior to 0.7.0 - -Before 0.7.0 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/rtcp/releases). - diff --git a/rtc-rtcp/README.md b/rtc-rtcp/README.md index 348f180..14be1c0 100644 --- a/rtc-rtcp/README.md +++ b/rtc-rtcp/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of RTCP. Rewrite Pion RTCP in Rust + RTC RTCP Protocol in Rust With Sans-IO

diff --git a/rtc-rtcp/doc/webrtc.rs.png b/rtc-rtcp/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z 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 G`0_t~Oa}h| diff --git a/rtc-rtp/CHANGELOG.md b/rtc-rtp/CHANGELOG.md index 626a3d6..931c760 100644 --- a/rtc-rtp/CHANGELOG.md +++ b/rtc-rtp/CHANGELOG.md @@ -1,20 +1,3 @@ -# rtp changelog +# rtc-rtp changelog ## Unreleased - -## v0.6.8 - -* Increased minimum support rust version to `1.60.0`. -* Adds a new generic header extensions type `rtp::extension::HeaderExtension` which allows abstracting over all known extensions as well as custom extensions. [#336](https://github.com/webrtc-rs/webrtc/pull/336) by [@k0nserv](https://github.com/k0nserv). -* Added video orientation(`urn:3gpp:video-orientation`) extension support. [#331](https://github.com/webrtc-rs/webrtc/pull/331) by [@algesten](https://github.com/algesten). -* Allow RTP extensions to be serialized and deserialized via serder. [#332](https://github.com/webrtc-rs/webrtc/pull/332) by [@algesten](https://github.com/algesten). -* Increased required `webrtc-util` version to `0.7.0`. - -## v0.6.7 - -* Bumped util dependecy to `0.6.0`. - -## Prior to 0.6.7 - -Before 0.6.7 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/rtp/releases). - diff --git a/rtc-rtp/README.md b/rtc-rtp/README.md index c11c2f9..334c47d 100644 --- a/rtc-rtp/README.md +++ b/rtc-rtp/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of RTP. Rewrite Pion RTP in Rust + RTC RTP Protocol in Rust With Sans-IO

diff --git a/rtc-rtp/doc/webrtc.rs.png b/rtc-rtp/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z 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 G`0_t~Oa}h| diff --git a/rtc-sctp/CHANGELOG.md b/rtc-sctp/CHANGELOG.md new file mode 100644 index 0000000..7a6e897 --- /dev/null +++ b/rtc-sctp/CHANGELOG.md @@ -0,0 +1,3 @@ +# rtc-sctp changelog + +## Unreleased diff --git a/rtc-sctp/README.md b/rtc-sctp/README.md index a94f821..cab615d 100644 --- a/rtc-sctp/README.md +++ b/rtc-sctp/README.md @@ -1,19 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + + + + License: MIT/Apache 2.0 @@ -23,5 +26,5 @@

- A pure Rust implementation of SCTP in Sans-IO style + RTC SCTP Protocol in Rust With Sans-IO

diff --git a/rtc-sctp/doc/webrtc.rs.png b/rtc-sctp/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z 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 G`0_t~Oa}h| diff --git a/rtc-sdp/CHANGELOG.md b/rtc-sdp/CHANGELOG.md index dc8be90..62f8988 100644 --- a/rtc-sdp/CHANGELOG.md +++ b/rtc-sdp/CHANGELOG.md @@ -1,18 +1,3 @@ -# sdp changelog +# rtc-sdp changelog ## Unreleased - -* Implement from and tryfrom string traits for SessionDescription. - -## v0.5.3 - -* Increased minimum support rust version to `1.60.0`. - -## v0.5.2 - -* [#10 update deps + loosen some requirements](https://github.com/webrtc-rs/sdp/pull/10) by [@melekes](https://github.com/melekes). - -## Prior to 0.5.2 - -Before 0.5.2 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/sdp/releases). - diff --git a/rtc-sdp/README.md b/rtc-sdp/README.md index 651165c..0c7cb17 100644 --- a/rtc-sdp/README.md +++ b/rtc-sdp/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of SDP. Rewrite Pion SDP in Rust + RTC SDP Protocol in Rust With Sans-IO

diff --git a/rtc-sdp/doc/webrtc.rs.png b/rtc-sdp/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 zcmb4qgL7ri^Y*>Tjm?d1I~&`!ZQHhO+t}FV#!hyV?8dg8{pItmdjEj8ZcW{)o}N>4 zx}T@J&zwF{it-W&usE;)002QsQdAiL01Ey$pdr5`Gl^x@001?ix2mSAvXKXoqqBp# zm8}_(tCyo0k(sBJIRN0fUYBc?uFIKR_Rj>P7X%1*;=-D%!e739>vp6Rv;H}K%AjN% z%DcHW3_g8n$P~)+@55m2gYff&+%v=3t}J8sh4Nu}Z#(Bu;NSg|$Mwm_$ETD)A6$R` zrT-_CFeWVkg zB7gp^)W4@cMDlL#-2Aql!*4&XKC#q4d>8(88yHBYX{~4BYQ>HRdws?~;s^PC;=ZrF z@MNC&nO~*t|CJFC9}0bc^c3jx{&xoY;Fu8Ta|y`z`-hZ5IR51JwxpYWg?BTv^+~kf zU+~U3+Q0eBKc4FIGbGpeb!zWDbH96|_vp@*6vMp5m-JN5{n-io@AoWcA41yqs`reS zzCM9Gff=NJ&D)ENf_JT=h@aKE-;{qDh2qY>bqyIuQs-;F;Os>|>f5NBB*Z)zS>01^ zYHIb`#ii-od{1Z8dgn^NzTDXQP`BLlg8GXC{teD|pYUHtz{Bvr2||ynMRbTQ|5=Q^ z=xCepqO_&09vLaG{)E+xpA+id_QWP z9NhvK2hg3arVWD|!TLZ`z``o#RpiX^F)##i0{YPj*wEZP^F-#Xv}0>qrKdwy_MWFP zJelPwLo~RgI!!aXpNyEaWwP(f%aKJ%^cA@-6YQKBJ_MuEG@Yr+F@pB0HC2b&)^&A{ z+}W+m&a`!HtKPVL?%?1qjJ=PmK7^!QgK>~+I6VQ^ld((Y*Pb;L5qKx6~E+?yuMxn%(Y8Gwqw+8y6n$x~*5$p9gdQ3|EFc zR(5r$dw+cDvg^CGes+i==bF}G(_*R^j@GCL2F7c%ZV5{((N?hE>1C#qhD>YYwuh+4 zlFL$#_zustzL^|+mbkfeen^~Q{`)h@MgQmD*d$l_<&U#R&YHGSm$SNGlyK}7e}D4( z`>#7TA|$OpC-leXjGvT8K=l!I%`50^T(C;VbM3Edft*R=r%h5Q?HmeQ5X7YqDrRJPoft#UYad_=m;>;ETqfA_uXdOBL=cu9JB{E$F-gVVoF;&dO{;C%YrVp;) zPB%dn6N3!zCBJBkTQj+mU=z{7=x@357Pr4`<#9bRw2v9yJb~bOJCaGLgSvtI^a~_; zpoH`UQ$Z#!S}p5*0>8HtXU>yJBc!OoU~3@2sPY0S6Ez{~~cM>p^!14V=!w?Tru|)Yb2A zoA?OH(gHH40Qaf55cJNXMB~19*UoD0a=M*ieUYlZU$J{cuiavQpjHQ3cCNm*_Mj4F zAV%>@DdeP$f?EUFi)kerkdQP#1R&gJ?m}l-;?Cuz^S*<~1YbTUR2&047A&ckI3a6Z|`JmmU_0Sj^OWAk%Bfgv5<6}c+rs{BbNkRrL zW9lA7Q~acKKAdKrNwqfcVXV$j0*L==bbQU4);_34>|}{ISs^ z+=QBD3xuJ$)K6C_qwdX+oLQ3*?h>=r*(~IZKf1I!fp>_CQ}=6Dv7UEMw7~3*G^+Uh z$50BRUd=$*dXF?OJJY|x9KDq5km0O@Ey>-@bUeE%!Pq=b0*c7)??4D*;@24J3z;n< zYTe1g49U2c2|MDpA36}RP+iZ<*G!X}1hw=%i`chjp`y1y5jK(Qg9eC{TdwM{bhz+!tMACo{i?5NK&}&s@cJvJrZ+Kfh+43lw$j^md$W9Z;2Rf9CB(qE4BX z%M+P0{Bl(`VAjXF8*^6T#fr*;ak`#P*x1Y`JDwzZo7w=ktR0hu6hyw|Yc6nvSu@K+ z)}y2AI9ao$+gFZcNl6@WuYp|bw=1=8Tc)JqBU0x_F}FGjRNY2xT=OiH4qtJib)=;u z3g^^xq)ZtPo8?2}&p#_=25N}M!W)~SB$C~#w}M|HtQwV6hY*a3Q+I$nUYCmm&z(%} zC}UWop&a}(mc}%Kw-^DL$5= zj0rRWUbHDV7I*@9TLBj17SG?Elr@7fzA^|P;HA-V7#1a^z`Lm`gK-DN3(A@&yYeAYLAXPyCym-# znC|}GLqjKn_PV?n7IH?XVBVwRuVyw~PY~;K)e&DLqR!$phbW$z zMjMo^CN*M24|5godW4g&06{xOAY%-S9t7FL@>7h=1M>cII1uC! zLj+HWyX6D5f;oor3JJQ5go@{dgjgCtFNIhGSVM*(HhNmD;FA?o3MgyX;mvNFzzpf+ z*?LW^;>a5!fv_c%6@INu2HQSi9~;f$ON3)uQ+wcF17jm-Lv4u7aP|g%SrVLL-IhU1 zR)-hO*ep)rTekEB-a(~)Xpc|%Yz8WfWTh1PDHhzT7 z(?FD2aA7cysf{O@jP3g3l7i1b*8yhBCrXZ@>tJ2pZ_5Zq1f~7Ak0HusxMdS1MYX@^!uE;B1M#SUi(2tHm?5FvyTS8B7Bbk|_uT-*aW!-B|Iv!Qg6spzp-zTu;$Zp8G6E&8w695FWfQWeLK zsN4noQ13EnuxpKoySdSaOWy?%%ZEE(2;c>UCn4e@Fm~1ejlBpK6Rp&Y7kgH5Oiq@0 z-(EAV7*=@CrP3$lb5->3m9|!6x{hAhCYTp2f1#ish$FO)|wL17Yh> zvb~6XZZsF$AR--Jafn;yIkfF@?9ma=?UoC6swl-}bx8HXgolyZ=L?n($Pvhly2j{D z!k^x;Vgo|OXGm`MD&*`PlbST>no0UN+r*^|8EW-tw!~Sp!ru!Or7Y0ljYnvVF)W&i zbg^LdI(TT-Y`m+GbVwUsPuEDi3mf?;OViv7S+bdI=jm4BAq;h-p2CP*Pfg36B z=PyY|QTSECa9}llrGo;VomOktjb%OQ3cxx6x^={a*lO1_ME5-Dh?GL zmQJdV)c5>OHnh@0GJIfT-LP+C4;k|x7UMxET*`SbNh-B;(WHE1egmN z51Fd@imCHWJdFZLSpvb8sq>1=NFh zo==R?!9n2cE7X|AzXKkIFbN9mqIxr;K~4A>!46~uo;GIgS!Xlk+NPb{%jw57tYr&@ z@nU^OKZlGY@&J{h*TI-@dqDbF*!mcj@~w`ku8S2B)YPO>6XZHVpg=fS0P~9Y2vO8~ zC+VqqC+(?b$nG2Y8}LC@(W0A4;u-NXrP3=d!GngYTx@H!F$ znHrA(L0Yua$O@pMsi2lVg*xOmFrDv&$*QvXDf+S#(BA5a3msN8*vu6@vj3<0Iq;;=@2Er@_#Cnv=$f9yUVP2kYb)Rl zpbm;@pS_!qAEfk|EgXWfb}&%hLO77{f|>U1ZCMps)CCeVlI|<36F<=Q7W6=+_}abCI{r zNr)lBDkWrWR#PVW@5o^_Sr`j1eJ(?iu1(Z|s-BJ$gh+JV)5)71X3us_E=I-{xKQZm4<%xH({H{ap>uIbCEEML&P9)FlP)vQ10@j!);yM$ zT@uS7!$OD&!{L=8E^66*87QS&RUn&?l?t0caI|K2N)$a%0R4m04iN157k%~*w0+45 z`W9Fd3%BB=fX#nv*cfb=p|`mEBK3=^l+=n@Rhj4|tp`sr)L-&84;Nl7K?IB*3&wDH z)?d4NavTZO{)YeDayVt2;ZL~5I*c%pnDTkENRB@*vv*lZ=A#AB@V9^;yJ@hUGmfCt zK62FjYv?%sE*}~^v?+$5nlFioC%k!!d2%>3H@NG-L=!Y606%lUUa3`-2pz87dK|w@ zP4zB&5q3Lh{LQ$K(QDe6DNpouXD6yT#Qje-DiL0T=k%Gd9GYs>`IDv+9lG*F$uct` zJTDO1&x))R3w7y;n-irj^&jnpAX&$*eIQT@= zu(EeL;V<3H{1u7Ot|670B>Z1Al0rPO$a`Md*DFDZp(7e30We~+7vfa1x2r}^G8reh z07e2fqniB|U zM8?6`G&%s~bT~46m$;jna?=$5nV|7(*ipL?k$tF&*>)wh$o&`r4qH&b7AzUe(Fo?J zU0}8>*l*;7>g;Vwu{;wm3| z>QFbLG1Ne9Ea6LY0Qz>Sbg2c?d-%dpma1*(R`bn@Y(CYBuv*HR zw1aF#?}h1^7Vn&wc^?dYPbUObl3}NIXaMim4?RejWP)XZVPP~bXY|mr$;xVb<8ni| zOc#@+#56hPAg7@ML73_~t`;@2$#i@XM{DwV-cZ<{%Z0thDpq2B^?PPlME@?U`q-m1Q=>%!QTZ;O3z((Z)ki z7kbQFwJalo&jY3+Mqs#5<#f~c!|n&9RS|yyiA^FSEltdY#J}GP#)!g+hAv7_D1`Op zfMOb@mB~(NiHfumqyN#L&SM$Um!mr}I6`!3%|xFvMa8=8vM@A`?wdZX^B`|YysZGB zkYJUE{g@O~Td96dlSZPi<+;+2;Hb7;w=A$$A(vW5UY>p`B3F-Ss6C|8aPC7x``co>t zU^T1*dLn-`qFNb;h}jxfgPNrw>+{BcJVEt zIVl@hB+=6?i?XNz87R&VEWvSue<7CL{ z2oG!vDCGUU$lDkZq01t_h(h9rd7Yft*h}L<67?&#Jc45Y1g_aSnc*B)#n=}mv7Mfu zN|VDJHHPzspa}U6JL{#8Z;0hkO#_VED$3R3G)&8t2u)>}8t`x`VPvXEbTMG}jgHDl z_SR3TJl`ir&qhk}WL5QuW^g(zx(K6$g_)@8p(RS>yg)1XrGl{DLXok+ zp&66PD?sXL(QekmJUyk3!irEZ7ldrp(ZMRtTGP7 znWi%=FtjctrWggEZR@=0>*dwxO%X9H)NgvOWY8DZ!>-chZgf7Oj*=%}_+gu>TFC<= zM}fk>G>GuHaix3_vDh9eR&TvKR$57dg_2EMt+$8Kh|%S>J{h`MRjvQK4;%rhja z%<~EnT4wpFM|QiP_HMsk{&mm|7cP(x)1MYIU9|dZnM@Q6@#5z;Q0-YkQDI;L961X_ z7HLemmqJ_1ZXG&z=r^E>USAcH9tmy8m|Bq!?plBUp-NscM3jiQ8RU0~MFJw4EZAoj zbcM!6h#JX3>44b$KtBoB##rxn_;A`P#t#~5(N=Ty*oII+>a)oIEc{$)2XVA(a0U<5 zoVMIqhB)Y~>Z`fPQk>>sNnnqQF&GdbtrW{eQ|W~tiuvx-V~CF@nxx~Y9>t($W{0+SObuMthm)2pE5H~fYOmHS2~z#-)mLYLy6G|l)^mnZq6hmRSn*JC1p%|20L;jz^yHOv)$aQP%$ zmflFf~79JvwG0vd)A$Un0nGx}|%%fqplB?S5p0lBsBRND~#9 zB98MK7);XA6y0t}t}NSAF!Hgjs2VUP{w;(TO0j@u$TnhP#G2+AW)?~ZI5DcV z)c{Nhymi57iyJz=ri4BzdS}n_t-6D{tFJG_VUG!h1x0a$oHkUdz5GH~oXHv!<-Mo26 zEvA{>8BrXS<$qDYx&|@Tc3XhtsxbjQGcb~QTA;_0DsD|K8>U(%n$R>z#uEOQ0OO@anz${U!&evo>1eCR)Qi;Lm z<*G@q#=BFxv_%KV=fC?a1Hs({xo)%q-a>c}l{QZ4^}3zc57qq*lbOR#pJvMucMY9Rnl6%mDP-yTzKi{*YC@g)CR2Jb)4rzzEgFWkUzen1 zMO$qSJfv6Rjfut|1NZG{EJ#+GzsE;SCh(E*G-fdKdxBT32 z*k(nmqP@G=Wz)mpA2j;rx4$m z#TS3W+lF>^-fozQS)u*m?KA_C6Gg^GGQCiE%=2>^RPaT9-ZOl?;cKg4kg>bA0k5O1 zja_d-ZmLxwAB#fEgUgbN8}u;Fj0UyESY|<@%tjZy{ch9yR1`h!INw}fJpIrOM795! z1u;MY=xK7hZV<_Fvt^)A?}B@zLLCDKuji-gRZuK+=Y3W$>-k70nr&F>0a*u1~gyzPZqg_7?Bp={YZX(h}sTFc5WDDJxt6Q8HA z{|@|c?eSJjKw}ws_@m~7?NJ2ZN<4?;l~@xZ$Y1TCb`QR#E4oDsKnbkwzVJ3!YK0|T zVRYq)ong5#4P8`|;7-v5=g28>!X@LW)WdclA@Iusvp_$z} z{i09t)xz|_!KN-LW*lCY)rza`nQ+l1Ey;c*7RkRa>Pu-J=O`el=q+SmPhn@7dgfV zrZRbSwh!xVvDOO#kCOs^z`xaCzz!x^G{D`GwoqBU-W-lBqOPA<;i02uhN*B7@PmaI zbfj^R8USXsoiblQhqQ=mv1g=nrAnQawu}w?Qwu%nf+9~eSlM1;pWqk%*02uJ2M6w1~H-zq315?xDlDqFk&_Co^xyHyovAAU! zQupRV_9qZn(5=i{v*x8nzE{y-&Un~XtrV?j^{HmaJT}H-F5`FwI!z|UYH`x<7+)3V z@UfG;gKX zW0(t&F_0s|)@JzT;a{OKDg~UN(hEvD2kI>+D~Vu< z75lpYi<{EQZSUD(56cI8b zvHa@&B6;w%a8%+c{gy{8!!{+$N?mSe>8ix`SE+ciUu1N5 zcBFbr&P*fk3P~gaSiC;{crW{V`uk!mHnNNOeoFyNXqUCiYIyqQ)uO)wyrHtJsGh6V z45o(N6BFrBA+PmzlxqiJeuRFuZNY5zsVDicXyJ$o*sda_yF15yapw?j7woa9|NZLL z4+z0rCYW`zRAI?^ZDFGmqG*;k^L;#Nl?w13CRyCEpA!)Fpj3ZWaOm2hG;+bLU%^6= zcB_WAZm{x!8ae{pK>9tw*_x;_>7_LIrBhK!vC%VMMP(jQgO>|~7% zEDuXXq}ZQGo%7PX%SKKAAzzy%sb&~2)jXIOP%BQJI(hGaF~0fcY40)$g(wOtqHm5~ zKa5C3&tnb2Mrfp_Biez3+f(oGB9$rr;{AHJ(5@+$(lI3c~W=QgPM94a*70RI#EewwS^co*l|{x|IDP*6IqKm8W?V zW}8Bbi);zqyL=VHJpY;8sxeg)FYo)pjVlV-p!`{wlpl}`cLeUUKD*!0Q1tljk zbv8L!Ke@{!@2`C~ZYrsmSAM|RfG(nRde&o5{6tB}3Qe@uSyvfTm99Q{PVPYvT_!i* z`3|cM${k(HQ>XT##JL+vv?F_GjeXw&Xmw#$#EJ+8SlGDJcAB&`*_9>?pd>>iU&CNz z+v7JX8{`6aMxi@m7tL1XSg?4`V-V6~-aY92gl- zusI&&P_p0FDT;iwk^L`94_gGz1juy87}+R=q7waP$DZmGxF3?%A4w}DL=pZ|1Bu@- zq9+nkV+H(gPw5O}UkG&ScI7@2RV*?bHn&NrhvqM=95N37P+h@GI^7{K8FfVXAAzKm zd49L=WdSMqB)pgESwXv%V51{D88If1=zz`OM=rq%mUwFA@2Hn?w|)cxy<#Y&I6q&>%bg7zJ=|1__bkL zIScrkD>2Fq=A9i3SBSk(EsuZS+_iMP3V!?re)Ua;T8W4#N{NX4zgEew2FYB%BtFSu zLA+4|6&W>c{Bxq+#3F7jWDKWe8uTLJN(^l`rp|k~Y&J4#hWKEc!NG*l>X4Y`dc^u* zqG#al{&DFs3Hc`@eM{ucb_e0rCEw*=pm6UrTa69gyz7Q6`K~cVHw~o0LI^*IDWqYV z&O|;r`5MpQ>H6k@VXV1l?t^Q{de%5lfh^xF+zQPBS;1i)^2l!&ns$=rhU+F%>KmE= ze%InY=PX19L_Rk2QkB;(bff06VOfaQ!g6FqWJz_oN?)Q?)1+5SvwD5gD&Gs72$!E( z))`ww(f~<1kx*zbjWpG;c&vIJIvn+Sg3oh=Zoeo)m@YY!GhHDVLem-4zmTmz+AkAP z=E_uvAbq?e6A<(zSX}m=FCmZo9_U&CT*G_ApbDI|pmc3r`yTpu3zDIJBfAMo_Yx4I z5Nd=k?Wcl?)dAtXmfhR>==2IGt*Y5aaCC%@#ia82v-jsuUhjub`N|fO zZmx5FJ&xeSR|hMkv5bT$;NO40!rqFMFUi-zvX;wNv+LS_11L$WH6BMdd(GWsPAY8C$HlG(5 zlHy1Mh>_sP;K1l$X_Q7o@Twxp96=(Y(L$_~#KioW%fDNMFiDA~%~Bi_=ZAfB!zI7- z@;Y4(H|KIUW+B3aixjEQVgJAWBtlt&ii@@2;&=;*kqd(ekpassLCA&}iN+!52rRXU zmoWeCLz^d^VaWqwGj=>GuYi2yp@228y1-RILu~mBvh7F&M40bnM*WnwCqSvm#V^HZ z8Vl0p)OneZKGfG_T3?J46?G!@A#ot?G_n_5X$@tOB3NZ5dYf<|_T@JwU11HNHU{Q6 ztZixo8Gau&H1;VBbt-@+ch>uu!mu=uSWpfh^MZ8H1NZvZae%7)T49*N;?i>aOvt++ zXwI%WHyqx-aPgItwO?DIqB*Uh-O&RMZ!R;^f$=9Zbt08kQPzLWbddQ!L3nw;}xhj8XGF0>TzgX zXAb%Ya9Lxu@*38K2*4dK65kYV4MuyfL~Wq5t6`;N*v;lCt|crM2#cS{d5RmRy{eg& zMllR~v0T{@4Zu)~Mfm%rccN5S0O>#_Qwgo86lNQ^0a2@zUWtR>BJ>=GTq0XUA}F@f z(_2nOtD5)1?x~a|Bo-K59rbCCe%;+9n#K`k2UdRt{+9Nibt^YH*QO?6)jr|bRM9KH z7M4i_hyxcUQM(4f*sj2%CedlYR8?n1d_=W`I6Wn?>Zc1qib^o=@P7yVzLc!R`ATd5 zCwU&IL$#)rIgaMQ9jN?Isi-*a^i@~&(QeJx9#&(A^ZF^+rP4RRdw=V%W11q*MAg^c znLR}m$o;#@ZYZFY%>Sbgk?p*MmQcUsan1j(Dg>=IxO}Jd{Vj`HH%PKF4g4t7+v+4M z#-eCev4KYA>-KjRS~6}^SH#nHIA&`k(VKHh^?TXYbpwLtlP@+ zb)|jChy`^(7l|zpIHb`|Niqd`1e|R|I^r(S&)|bVGAO17iBM-zEiD*BatW^mx5gWy zYve`i>4#sFT2Gf5Nx=}`!E=QgzE#4oi8y0ym*vZ+?Ijdq;;=7V6FP83rv9^2({|^) zf#e3@-_999V9U`2>q+`UwE??DzjK{ZQvqH1S>^N+o$1ssfne3e(EivEIx47=V9CfM zK!l(}$zZht@iJxbI72q;k{!3K1J*gUXa1QWNqaE+$+x$T*h80X7nIq8(+Mgd9icL; zdDf*63yi6yT1~Wvxpm`~*2JG!66PNwRT#;Km3fP_=VqZqSm1+}p5OMc+G5hyxPR_h zJGV>vX^EpmjafWj$3YXz@iD(uS}|$BZow}JnrFKcX#qn|i!}8QWh3HcpdN{yF$R^E znMz$m7~+t5nRiFku%a>g-=UP)p+S5}zTy;=W^7kemN?ZF6`%%F^HJ9W`V<)A0Ks`J z1+l5eN7|K}EHB|_Twyykb$RRJ1)u`=u9TfbO$@(yC0JlZpb1NK!hwCgvVsbG5Zs-) zEFb(WzHOV)aSI&%6lH^KzYLT+i6uxkL6vm8Y=BTmhPP5F9BWWfMWcN;&JaG>h$UKU zpGn1)RE5t712`00`Ns5XSCBt6ejJJA18nNy4Q)Uh6ruRCE;Gcc@GN{olkyC-WOubP z69E0#9aX|EYrCoai?Y4^4De+=0!Qi+c4GCjNqxgpHzW*R68w%TaPSsp85v~mncA(4 zWqtC>flK_XE6xg{Rfw9!Q$aCowZ6Tyj&nHV&_EFgY#HE|=UKxx^vg%4`HTV6-Wz0> zM-~9k|03T#2VzC0DQ%X38rIpo+ONB}Iv=LCNq2o~00@U8Sy=nr)!NP|TL>P1?2 z|7t;jtRF`sr0mn5uJ5oY*e3?%n9|Lp0=jTj%EqRTk%FS?eQ}4njrHfF1~5fiwI#>{ zZLSN+3FHZ1npT|`GPO~I(y*+GBTxm~QTpTfpR?7037xNXnc&tMzdGkMNKuvpIXo8| zf>$ShLNffRQiPl6I$dTw?gRVoRs!W8G!-ax>B#f#jPu9*9VHMK*`7~m8lW3N=|($$ z(b~q)|2c*`$YNz2iz=vL|M&_?FXUX&y}7tWKScYEQzb|S){NT~Dv|%ZQfZj+bh?8% zEDcF^XV!Aoo?Bf3c+ENt?wQN8xAJ%%koMA~-j7Gt`7=Esa!pnlOmDeL*0*ENTF(&J z$r7z34bY3qT2M)h^=RLiyuTTr>UPF#)+6$O$#YH7-mFI*K_cqz+mNF{h2~GExKsx_ zhMi_Y0O`A|MWihjnw9CDks)6}{)Wie6RMMTc3Bvtzq`Upq;p$aFnXFO;Nq)>$d24u zB!H{mHxiz|s|H-!s-@UidoO*TPl5c*_r!%&*F}oK7LivkOP?8rahQOUlG3bGKV7NQ zIdOP`&FFJEN~(|_jzZJ?u^uTg;F0LEh~K)4$1x;I`Kbg}$$5x(LvgmtK_;$2;~tnX zwlwz2i$)-;XRxM|o|l>`YHm&uhr>?unA!jN8lz+18J0q+&}6s4vEJ@raNby52v&A zIgiI9{%^0(QiqdC-@nf{l7vQ0y6If5l;H@ZlyKr)jFLc zg18!Ok)k>n-}NpP^yd~Hgy@boz%18p90g{VvWmZSd${cRrr;XH?BpZ~2S+;GHwN^V z-WBVE<~e@aYps6&k6(=@5}#W~a|K7gEeh!GH=OpyZsr93xshIM^%nraArrG-xB4gv zeXoTYlZ>UMVH+D8ODih6$H1TZAhqit6xt_b858LeePGnVG!NL>54^TM!PeeE*&F-& z^&*H@T@l&cG|lepBYqbH@}ZFPOc{gXYmhc zixSje>9 zDw=LpM~L>ya@=!SdHL;0MZxVw`xYkGPp8+GyOaYcC@3_n<9FT`O8H!>d#x`=3Vht7 z5eB?7f4P3GfOQ!sn5Rwvpr59r$2ie&2D_cptsUZ6&b4*-T3(U(Z7FRPJG^t zVT_E7G#m&7#^Q3uJM_JX2h47-p!>g^!Gp={Fk!v@)P3;*PR~d%UVt_^jKJf-Dwn9VLz$7 zS$R^1qG7>oy0P0J)OnOo`^ZB`m}ft~^BbD81gIYiI;^5_44Z6q!`i-( z7DK#VyndKZ$m;Fsp*i4Iw^_i3D68#BReHq`Y|j+YJ=P;DJ9De*R1Ye1?8Lv|3+?0X zp|$zDxjPyISNq%{YHM4&@u#Mnvj=Y<$N1zc>lJ63odR4%l}MtZqR#(xXME8D!+$&b zj^O2PPGHVs%TL1Bm$#~_Ds1(o@5`QeeBS6eGvTAgMr-wYym!;A5b;{Q-t1or=U=q_ zLd(sj%N&>8h$i~Yt(3Gh2?IlXXej7_YIbZ)q+Z>04Lc!#)*CbVp9?$q+C4|&z3air z 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 G`0_t~Oa}h| diff --git a/rtc-shared/CHANGELOG.md b/rtc-shared/CHANGELOG.md new file mode 100644 index 0000000..d6d841c --- /dev/null +++ b/rtc-shared/CHANGELOG.md @@ -0,0 +1,3 @@ +# rtc-shared changelog + +## Unreleased diff --git a/rtc-shared/LICENSE-APACHE b/rtc-shared/LICENSE-APACHE new file mode 100644 index 0000000..16fe87b --- /dev/null +++ b/rtc-shared/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/rtc-shared/LICENSE-MIT b/rtc-shared/LICENSE-MIT new file mode 100644 index 0000000..e11d93b --- /dev/null +++ b/rtc-shared/LICENSE-MIT @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 WebRTC.rs + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/rtc-shared/README.md b/rtc-shared/README.md new file mode 100644 index 0000000..bd83c9c --- /dev/null +++ b/rtc-shared/README.md @@ -0,0 +1,30 @@ +

+ WebRTC.rs +
+

+

+ + + + + + + + + + + + + + + + + License: MIT/Apache 2.0 + + + Discord + +

+

+ RTC Shared Utilities in Rust With Sans-IO +

diff --git a/rtc-srtp/CHANGELOG.md b/rtc-srtp/CHANGELOG.md index 010022b..dc08af7 100644 --- a/rtc-srtp/CHANGELOG.md +++ b/rtc-srtp/CHANGELOG.md @@ -1,19 +1,3 @@ -# webrtc-srtp changelog +# rtc-srtp changelog ## Unreleased - -## v0.9.1 - -* Increased minimum support rust version to `1.60.0`. -* Increased required `webrtc-util` version to `0.7.0`. - - -## v0.9.0 - -* [#8 update deps + loosen some requirements](https://github.com/webrtc-rs/srtp/pull/8) by [@melekes](https://github.com/melekes). -* Increased min verison of `log` dependency to `0.4.16`. [#250 Fix log at ^0.4.16 to make tests compile](https://github.com/webrtc-rs/webrtc/pull/250) by [@k0nserv](https://github.com/k0nserv). - -## Prior to 0.8.9 - -Before 0.8.9 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/srtp/releases). - diff --git a/rtc-srtp/README.md b/rtc-srtp/README.md index c6eb608..1b13718 100644 --- a/rtc-srtp/README.md +++ b/rtc-srtp/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of SRTP. Rewrite Pion SRTP in Rust + RTC SRTP Protocol in Rust With Sans-IO

diff --git a/rtc-srtp/doc/webrtc.rs.png b/rtc-srtp/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 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 z zz4!Tc#dxiysfjf)F%c$ulwsh%v#R4j?;4+)if(Ld{QNba#pmOmHMQRD;cz&eC8Dj3 zb8~Z3tJ5BjL94zW5O9C2q}^t#^&;=|$|vbNi%-skZ-5htyqF5$&dFLBA9&!fueSyA zx}RgwYqvO_a_O|&&&V+Lj>K{Pl}w?KJAYD^oH!~7(6{`(o@Tq*k@OWPGCVI-D&!lD zh9UKRF4z$X`OlZ%)|)L7mY~e4I|0F_9g&7n)?hp-oF1+2VmCFgIGpyn#gbgoj*d(* znDoX+vw5*t%tJ+Yu*6u*#-Oj5Nq74;Fd*1wxAFCM5XfdZ9|%R@8CY3KrT#t5m7O=QUA@cpObrl}<7=|NHfD z&zt>VD6w2No6%R`aXnkDTRwn+g*Bcp6tex*5R}0GTDkee>3Te`yp=IT{5nZm&#E%a z9$o^H2FM6i$mdOx!>g3b?sT2i(`sPDLxL;tJ)mE#x0?Lva$EjkP(UmaK3}W#0``K# zZq4NX?&In!dbr1@p&tl6a>1_B3E7$JmJu8?hC1-EoTFnW)fGMFZ;cDub^`Ig`H zAXF?4JFJ1hQLQfXSCf(R6#aigzJL771Wled#`fJ89OAK9N~c>9p`la~RaCY2ZWzGj z05s3nOLf79+v-Izsj?!m7)()d@!JtJh3|6jG~f;n4&g|IvyT@WGJMx)$jF6wWxLw8 zerjmHv^>2-4O1qo>WSFd)6!@)l5=xo3knGH^YdR|WMoo6g}Ui z@^B`{>+|IZPS&MyTt$Izv{I?$`u?7bo*toQMfwY1pP!#!_~&EjW7SJrlCmF>xF?pm zf>`MXtee^#D1>#Uu9Wd^evxYWD;vB%oOSo`WwTigy}#VuJUkqH5svZZSuTg8(Q2u@ z7#xcji`6{Vxyc!H1X{p}RFT_uCjFuIshSy%Fx5UWyFD0^#p6-06S+lhy;41z%jJT_ z=k3}#s;Xqa-XTn^CkS9C4-_+G!)o%YM z8`r)=h)c6`4^y}JZ`S}DmRH7h$16;VtRgF~^AoMABE`bi7c~`F7cjAMN}0crjJ0)tpLS zv;A=n8@B90SjbKZ2odU3Cg9@Y%KfUpSS@B9cSm62@wkS*5`YrD-IsSLgoTAQ+wJi= z|G1|7F(LH3S5mLj9-YnOxgg*)n?(Q0A&|54&Ag>|hSp1l$aN{1pJd!zp7 z%gI=h6KBJ|nAG2n7lPr?WpM0Q;-QiU2k6r?Dlqw@koJ< zk#nU433-b;8QDmRKRQk8Ss7+ z!QyJwc-)U&>i}fKT1@?RAU}=I?OMqq%KQbF@b6VzAq!sy{d_6V#{zz0k5bMmlTdGj-Sl7qC{P_jd-`yTR{!lpT>i$+Y|Eg-bmtiQ- z1D8GS)*!M6Ajt#0S}YfW8T;Rrv4;=^-mgU#ekjG1O-rc?yqz~!OXXZ4dKSLD);IuV zWz^)hr;fM!`%mHMh+(Ivr|Is!Y;Ebj3Q)hQInJ-te%XD+Z}zLnXjHQNlU;jG_9A6; z`WSCOU0 zfQQX?`o7$<&{uT-UnO4|74;W(J9H^sl7iF#(%pZ$MH-|_y1P*jB&9o~JEXfsy1PMI zy8Aucb??Xf;r+x~1N>&@#D4bP&ps#Z2$VR_TTNwU9b4+Wz~Q_4NFF6MX95MpgF5t=F)Xe$T!~ZTCl__XZ?F-VIBzH=Ri2m_$U{ z`>QX^e!1C=-D;*(xnll(-Ao>yH3ulJH61f4gNe+{l@uz~X2Zy+s2h>|M|95Rpsc73 z*CihX$T{mbcI8V47dO);51Sbo8z&3-@EtDJGhaL|yRGV)pcV}7{7&a}`fWk!L@i+> za)b;BOrGEK(+i7VYJAPSzNb}LW$)2$(Cm5$_JP#T)g|}M2#Jh?Z^X81@fvzBh26x| z^d}u2Eie#a7~NuR_a^c#_NT)tD_QhB_wp#C7??;O;^$RXyp9EbRad*XWpY~0m~8ZX zSLB`D%BlT4nqj&>RdnlDZ?lLmhQ$!(?d@$29vZ#l^>{f8o`nX!yxDlR1QiVpy@k`O z#3Y^~KN#F>ZBzqENyPePS7Hpo3#IQqreJKKQ;diqQBlk%Za|`de9y8BJR;&Rqh3_RSA=Uy z)mC5_7`1CcUN$HIM#}3!pVMA~bZiSe^ohax+$GD}1g}VAKz;TW>(|UoBy*zi-)sN) z@k1#~hWO2!WMSzG0IN87cv~mzTGeI|pKRVK1%R@NI_lEg@oBtDI(&Ng>kDrLdaSSY zdgWk@{u@wdU|L#5Go{4ESsXUR!3Xir-`f#%Jl&8$C*kS%WjdI|{#mhc)@qi`Xq7QsVQH#r!Yo z7t%i}bkDfzd;cB)gk#a@YPJMg+vC-zTFM@Wy2h@ABql0&ZoG$V6W~UpyFV&WsYaB?dL7;{`{zgmP0QKPx78)8y z#Np{dMSIglTfbU|qz1Im>Y~K-RsxoHdOioR6V<0O)u= zz)%s#qfA6ZBzwL+yu3p8cz0?1{PYOwTjdZOOF#hVc-$ZMDt>88`;J3<281r1p;I{S z#C#e2*sZtTvOvF4)yW`p`&ij0?x*Ya=XiJT&EFBrD>S2m*CZwCWt3D@J$SPS89lzE#ml1y;mU6g<*cz4pH68d40z>=3G z37{g~RY)q92MFD>F)<8Y0ZM%vEJlaCjiyM5&@?qd55{z7@WkX~gvxqR-?`4*-F zB54^JdN!5|U`-BkuX?K-oyVElI0Me?+?<^ss!J2W6`;u*37>4Cmz;V&mueZ_ zXEFc?a!ks3;O$TY6i^H#&Q(jSS3*6JpetoeZFso2Jzzvf08Req+D1!7^&=%kdyhZq zO~h|y)4&(s#{*E%H{7;qDhb^_fYPI*7-%K47{dDc`qG7NF;mIuvi-4_ar%7o9)3iF z7K0yXV=S$Oep~Eei?31^OvF5ElXlKR<7@TM;*dQcg&g=rU=E~0b{CK@8pP|zxDF*zd&}HvdXKC!O z6COMrlG2I__@A4tpEqp7hg`P!wil{ysB%y=cOy3v)6#T|QVOz@g#FqEhminX&fIqZ z)>jMge1fhXD(9_xe*b3kyf81wU2X@j-GXY6K1+iB$3XT+5T+cal@0@C&Ck;YhR6rK z$b%1`xmgexzC!8;wEi9*DwvzowF7u7^5ZufB7}v7rGIa<)a1fIt2nocFg`gME97&B zo18tUWpM}Gkv~1(aXhZ(KU+-Xq5wwr0Qk4!vcDiBW2vZQpvprvAuWOi^{iR42C9Of zbLNLN94yJ2l3Dh3d`s5JDTKfH9V&JbC3`k+_x2)9OK_o3KMUCZ1MLCWl>A2gXPb%VNu4<$R62@%|rumh!epdpy6`uTBUU=i&zab41W# zn5Z#L(AC{_&pGt!PhkY%^{DIr%L3#TdzHes8&B!W$)Ond;?C{iep%_*qi<}BbI%kA zy#5aNHeHw}AvU%<{0(~=TS^i4MUsI5sPBAlJ|_MviU1q)4?u;1(ks5QH>g789NaWsY2?}cft(;bUuJ?-NOEfB8*ijSo zgQEdrx^)0a@q=%tNmj*f;G#`!U{q>yO^%#uTzD&Ad0e$1X|#Fov(ex z*cf?5E~MjT>baf#d9F=Y_}(G;k-f3MJM8_oY$|(F&|fC35h1q=-eDW7$=nbH zp)KK+CY$$(DDRs$Qe^k`_5_|E&KvlF5XseV_ibXB1#TFcLS?yfi=+G4Vu#%}Y9^n_ ze~uL)2C>a|Y1=cLmZCSZfrn;PP&@}uL)J|%#$wT4j5Sb?O;a!rEpP7c*}bl;m*W|L z8Pxv#^hrPHY``$C-XLtgKD+#FK!F6jZ7W99_EoK=Xu+`bIDx%o3a(-G#=RS3O5;Yo zjP*(jZ>IMd3J{(y_kGjly8M7r^DoC00Q(JCwNi;WQ(X+fNUg7WG}GGNsMFZjBk#O( zyXL+o5c#9a&e({>vzO+U)3bAj5+OfM?tvnbzEfmj$%{3?l zp6j~&__kkNI~}%u@6O)@r;ZO-pE$UqNZR#7kJCpKY(78^Ct5t5K#>ToujdAyrt5A! z8a`v8^T$S=9yxZuDgcWw{uB*Evi1Bo)aNx~kK$_^$kV{hMMohO6ff}J>v14Rj# zON0I}aOQKBKjj3N^!4>$%&#k@?F|V%?^B83s1Nea%de5xVc8lsMM-DwG8v4$Qs_9o zg(^K2E5>AfT*ee-qj>NMZ1}ERPBi{Y`9#P?oVz|IF0SYK=~_5ADk>~&GcQq(^8Nd= zIb%kAG~mkp{rk7!!Wc9FHh@Oo1m3&z4L9&$^X0C-(W3SHG``a+ z5N6g+LK&LbFW#?_@&}Mp5i-Qu8Xu^7` zUE4Z%*Np|Miaa2}m%Pu10bK7NRUOV%eFdsIwWPc$6a|N-()-pCn1VcBSB%O7-dKKs z$a?^VChPMAcy7bVASpilc4hZz^g0^y5iXWIo=>H!)Ei7XgM=bDuI+$->Pr+Wv>T`L zd>{8!W>3y399GyBnH_-+X!X3LcS^aAekbMlaO1#bJ*V`K^~G8PoPMfQONAh6?@#nQ zS0o?Li``Bz_>66%AB(ixyT8}tJAp5C=u7_Q zO+Tn1gN(kA&m(Duz$9fl9GQQ56Fxwv-mw{dfwlgs^k}01{>1ScdM%htI5r<*iY?@~ zZi%E8y$5kmbrLP^r`al_+>U>xZQEN<)@}e}|C#E=MDOKdZ(liCy{Xzeldb5dHTCE1 zfR2H$0Zq&-3(ooo1HWuoFk2^{{A*S?eHNEZRBt%)B8RJ!W_73h`jyam;Q9f-QUQoN zV65HT-5IeEo}8Yp18#1%F4|Wo>j9uDiNiwq>8S-6wBe-uTzOVl)M>(YI%gb(ML@7KcKhwsn=XJ-{R0DCX4TQr(E-zz zy#_4ygYWAb+Q^AZ!|QIVga4UO9mjT)j7Ojqe<2XRgjx76G6#ptwe)N^yY-!|nV%Wv zgmTmPc<4S{O&>73NK*DEa%FI?{>`h<4W0swKpP^ES5Ra6#5D}8=5R)CX0g;-KcCpM&s2@_v>9-+1i4n=YdRCs ztw)o8vyNH_5V`;0d&-dh>ihMxRQ)&!n~8KZbfu#Cs0r4O--)2+m*c-VzhyOm6-Kq42;JPF3e%%p~=%+4~f1)=+ z@L>8V%;c_Ml<_=zfzBiMBMJ%m@n-I)SmdP^J~#Qvz@rNeHg@qt#?|3HGqH*TF`Y%q z=22-uXZl%8?7Ez+k(gqyPT%~^j7eHaMBMGuTtHOwQl4cEcE`k7Oe=G1Zjj-Ov~Nwz zV0(+mm*Z5%SDM{9{~_&RyGMWX#kRBiFh=jkj3QMZpwnP)7_FsP{@|k)78Dnw?|V!A zd<-ZyZsY6E-rgRsB>pt6cDLh|p>+O4fCPqIsqEk;q=r_evJOL-_e2)~dWQ zUvz{NAOH8{2VsRwAs=%<=(1r`AAvOi>=l66=3#`yh(9dukkURm)&1@u%mx`9w>E^`H^>}4ChFVTqUY?4F zhY<7vfs&(N?ps-`58rVeD)Qc$v7Tl3)JQAdl7)m3bc{ccf6*GLu0$j^{i^Pf^Ba7$ zw@~PJ(0e4X{ACMz48TSm->Y&O0eFOz_MajllOMdFn3tDw=B>-QMymzBt1`s2 zD}PX*&LfUabB`_F17F^XQb37fXZbo7JBa=*1B0BKsqBEF=|K_w;WsZ4HD_x7UX-Sh z3rQ?Ly-v`@!E6+$0MS5Z@wpv^SJ-v_>jVPZC0S~wc-rr{1iWtB{^$z&7*fv89H8Wk zFLPzDQdv`-O|29&hg4pv!4|@w$lj^$&f{EnZQqXFSJAi10OkQqDW!kcSNY!nA>#8X z4tbcbF z-4tNSe@4lH5O})T!~pJ%Bxs<~OWbU1ZpuhY8vx{%AajBS|6E~RbZpqHM|ns-tI!Lb zish~MD50-_$AsLnT>6*LKZtTMc=M59yYA26zo?^>$QNL${ydrw%zF;2nQ+inoIg4y z#mbL~Oy#h^1~yj?K!%p5y93Zl!$7!WhJ%AEF(I|n>aiP2NVc99o4f`VlA>*yWgB*f z&a0ZD8mqj_V7L2@qY7uMNWk?m{a^ASkN4N-9dH{1hjpz)(FWE@YU~vKDh=ruLP$Sm_n9v>I7ByI=f=Gv<|^&*Tm}kl z26QMgDQpZ7W%WxuWr12J;PzFP;T&GM|elYmmd@v&Qm4TPWoGOCo*ae&*s@`U*=kxpf9o z|J|I&2*|>KC5o5ou8JH@POWDI+%*I?86?n{0!D z8$7(cCYxNWmcM8AnwfT^;C!(4O5|cV`n;WycZVkop-{uol<>dBTD$HbZK4D7cGP6J z`u4t$^Z3=ZpQdTAyrQBRu<-sZHO6N8-hBs#2rl1mvuak0391!O2DgsWpTT5CKz2!l z&SnUDy$p0`XXlFs2bNz}$90hw)Vt+SOg&>UczRNbyUjQnU-2`I0}VS$YE7f^@ak|9 zX?i?_{)cf0+(NVJ&)^m`ZoyA^5`geg@$)Yp1#W^w5Sz&#%#jSiL16yr{M947rA$l- z&9^{Mwn~@f?f<7xePeW8V3IW1Z$1{2=D#ptF*vIA`v|%GNK)w>;#9QfNR3{0XG7-g zttCuLryl6;i!7S;4-idvL?YW zFB8mED=e{6X=z~v&eq_8!Xn8+rk&03!hT4{aL z7&f=TQT>AM%tedCb(kkSFPYTfs56Znd(C7K6azhp?H@;jg$4bi%A!NuC+EbCUg>|w zyNqClk?8FgrBVwL!Ji6riwz*lLYSiRmq=>sYjQ4&4nR>y2q!PY|#wTw}zQB)d zud8h}?>D|qQNqf??hq&?nR2n5%U^F~5Gh7Y<>U@}wqsuxZ&?;QK!y8`hyPgQcJxHYzp%V5^ z+fpg|(Qo_J+zm{r7lHC9Pem^iCuO>hYM5Qt*~fxQYIi!AA+bvsJyZyRJyyuH+E3Vn z{|0SGgzdH^G|!1zre3xAj2CSnoha3v7j*uGFOK+;*5g37n36RF7J9ZOO5j00$03qG zdv&G>Rrj}R!)~M>zHMEhf>eU(r?roj+G*@>DPNOmdaJ_k=H`#cn!*8gP*bfLie$H+ z|K?xm_-c6WQW0b7&VTB%y;76de3p7i_K}e7n`!4gs>(adeRH{ZELEHa^VOR;oDLdY z+~0#33(GofPPu8{@J2gw^BZH682)=;IyFf-NBoZwrZ&!rFW4u1zD?>SMt`LVyQI05 zXTFFb;4^r&7)I-aV0S?K1Dx6HC67yv_#gt&+CH=4GdsVa?9;a~JV=|VxKVxsKtaYE z$pp4dO*`}#hhOY-P;IqiK}`~S@zRfa8D{lFr&$T72!pNYkOgK=+Eaprv4dE7YM z4X1_hq9%r)&WDDK7WM%lSL->(i}(!)Cc z)#XKts1lhjZL^!ldmxoo^4T`GHA~nvHDEm$33n+|@8V#VpZP^iHiA-EMkCBWn8Rt4 z!uB;3LK+535RJ@O{tGsaZN-5BBX z_!S`JU&(Pil<%qap}{tF!Pb=(pSE#Oezx$= zDe#J)jQZ~#H21Co-*ISZ5B(-Y}ytNhM3&PIz}-8gk#-lf9Zs+CUp@ol0@ z$7*4Q0Xh5-+PF9W;Q0pNsm0$JyTjgOO)&9TXdL;qr@lh+b0g+AL;i1a!S}D`ufuBr zclT)5OBYKx=baNiW4D&V%zbc~C?oh#BK+@fV{z(<)clJHH$QA!O*d>_|!vi+>XbQEx$JTEl}sW{`^uV=t?I&uwyl z>xQ735OelctFxbUGoAwc4cTjt$R$B>+&o&+h=2{8NH)twl-x35`~Q;j810O!A{U?- ztZFWUasA!{@LTSu=$&CHrT>k6(CRj1?08${pNZ;y=a4w^b_VWgKped~*!mN5#zK5H zIMdQG;OAA^Babc?@P2>@-B6OH1w^~TmmASK4c;mw_y3$d);rm)==mVw@A(~`;9Y~h zR*q&&^eb$%dF$&!kL7Z)*ml^6`2Nr>0`JM-!aXKg$mP2)ZwUuKNk4ti%EA0DZHtHI zU>*9qg=u)KW>ut4J)fbcAnk%|a7qE+6m=SYW-?VgG|B_U9f9-1i6c7Y?m;DZ|J7Rp zvTO{@ydk$+{)G7{OE$^xnW2!&!=g=a*vC}l+|o9b*PZ=8ZxPpIU%}dXq}RjDU%lV7 zTC3}GrirqJJMhnxEC4{~6t{oH`DaAe2QS7ewnZ;M2NnT)f zdiXbg)~%rJKVlXF_KMJ6Dvbd=VXnJ?Yxp0r5VwJ!@gZ?hthPH*#V=8`S#uUlj0~g< zSj)znLu+vsHE$gWoX#CL45_(%*hk%^#K|8+eMae>IL)Ia+S%}9k3lCgEv)RY{e%7t zd7^c&`i7e}RUtgOal4zg@BdSTkagC&@(Fx5py6G~Jh`E%g_T4x;Kc3vd`kUQDmomd zeA3|~J7%fmNn}!#&~@@-gB3C6=vNZhsj;f}QEz)`lgiGgl)1oJJvk$uZ(JQd9V{Xk z&2U?gRSL~71XhCrnH9gZSbIdygnfP(@c=t*QmTfw9ny^*U!w}nu4Q1NcZw+3if(dI z`J7XB4|u8*1Pph0a;Sg5eK?r-oi_WP(6E`fQ{k;AoD2QwzTev|L=N8^v;B%!5!?*N zfaB1Wy^VZFC__%=F*ZY0QyxV@_ITkZB^X{x5SO=c% zM=l%zmX3%ce1w?JTA`-QWu&YSmnY?`;VO$+%9tz^|Len)|KERT*2%!q4h#;)NKn4Q5_Ok`VrZ4ke7FYA-_dY+gru<; zMURd0fVybNLI*EJ&q85g;qXYqcaSW$RWGS+&$qbr-$eXsI9{&Xtaz||0}@sz*C!{0 zMHbpfP}6+Oje_0XU6+CPB~r_1XlPb&&X}S#IHDX47eR4s3bM(t4-|nsV<5o>$DmPO zLm#X50|Hv!)3erGen?B+z1Mw$0s?&TQt}`PafB_(NWrb^1(O?B0)jW>AyLftX5f7C zI! z_nrsnd<6qB+r^%qa3xNI`b~&F{+9J@&9`9nSMQnKDN{e-90@UCfXx}_d7Y%(qoGbA zF751m@w1rzlcwgJG(`_>@7#20_F;UL~z|3Rxq4Vkq7{uGXo3?F|c zM?Pq_rplGxf)oQIYVpF-9lBN4>uvf&c|}ug%M!Tw? z>`tPE&QcmmyT3cW{02Ow0GGMxKeOsvf6NU*+7NOPIEtQ6z{$E76BDx&U&n0(Y@7M47JULr1H!S&AIZKKiJv=?Hn2VdUv3ISiG+l`z zesgJfuV9~ytL2T?9LVwIgLxGK(@hRn5)kU1QO2S0=`#n>D#*0eBZWGmtZ8{6&0E)j z=BiQZu&WfbXYFc2l0-76io)JTW*C8Vu`MJ0*i!W;OMQ`ODhHhJ>({Sam$>>|2wU|l zuYEv&=K8j~_BG;D0jfW_Nq4vx zur1z@ZPQ0)^#&6uBjLjf^tYI(Xct?S6LiFbSO@O6BS%3nK`_B)XP9CQrk-N?*hx2+<~O}#6} zjP@4fkODC)U^z)|`olW3{Tmt@*gJ+nNUvgReSLhQyE`Wz&h%BR z@(5$+4n8u4I-h;HJVj3?*nh6gs=&*-qGaj#FV-4QRDhh6lr$(EYYSjaqr2ZytZwe>%kt-L%;kRNSXo}6SyI;k;UDvw0X!rY*NnpzA_uySzJ=z+hQ$Bt)q zTQQP>V@#dioW}5=U)2b$8!h4Z(Y~P7$V1c^;k2js%Vp~FQJW_|5lJZN8x00*} z6(8T7+vg>HadB~})Zy(vs-$6YXF*9xNxYFQSvlF+R}i0Y$<4tID{Ao$y_Ec6SX&J; z4OE!$urN6cFa{$yjT_=+CGTj5tPtb!MwQqJUva|@%JQ)=6V)#6l~|-;i;(`Znl0}c z8yka3$?rAvW2^2os#-!WwT~{mvGIcGG2P&1q@gkMu=rrdmaGS!Im!erMz9SF2|@lI z8ako&?53%yNkAd)mxVKyvh;=s=7Agi^h>{qXLAo-k#V0H;@6+TnDl|Wba}66++uv+ z8X!&ta8UF(KuuxorDYr6)6vmcf)u<~FK0mif%%bkBn>SD1?65~L<|DKuY0){0A+nH zQ$03CV@?z#fP5p7v*Lc0V7fMcnXuvd6cI8O(ZoXA^OEXYuJB|D zap;PU=gm1*m;#f2aNj`Be4Vxo+dQ84Wud7sg6IDfEiEnU00c1yYHk4I@G8Ka{f+_#C`TV=M4%o2Lz|tQjP#$O| zv3#;fq04VBshhXfgI`knW?MUWig+gny$8#Rz`q_1Ijf@LxURI6ad0bB_xrTvA?h5S zNb2y+sG@V->l-rnqNL*rHlhd{d74Rb>LvMEY?5E9!!N*xWM*cDKFeW~8^`uA@oDqy zS#Mhha&vQI0@72LT&ahxb8~Z-czg05azz<d5>NxcD_U3^rHCx{XYMS*ue=VM%0RdL@ zUz&`m{$t8FU)2L`4w8qrU3i4B_3nJ@y-gSD-s6Qp|I0f>{Sb^!`XCoFGQ(xJvIIYu zDs9P)`fsX8#VPAQl>$jZt(csLvp zr+idF?=@%5HEdMntwMC#{1;nd&ecOAlw3ooA%>FH>njyRPfxG4lAVVlP&0K_V9{WQ zuo*UqAZX#;`AbXc>e&VKsUyeDA0%XX$qRKy2A1TItGK~J_x&uCc5-skpOS9_uN}X> z!x@B$20&l}WLycI3rW*SF%ykF2}Gb<5Tpm=@6{DnEQDl8q5EI@aYcv9y9l~sCE!^L z^5UHG;_59@X4q(HX*>G*Xpzks0(Y77(!91>!S)f9K1E}h2xIvruFk#Mtm@1!tJ*ZXm3KUrI z>7w|5>R`}NQJKIteMejbDKHhWc7)s}H{l2?oy z?N1$(q9MVcxAf6Tihf-W&!Orf%L5A!GntaTzm6Y{W=F0$gclXk2 z?XbfFj5uXi7|O6l$$IRbZd+VpZ0wEr*x2fY|4yqRpZ%>J`TxqvV!!ow>+bH30>$iE z37wXRChx*ETSbV7jI50vKzl4b#=YZxaDs{>Q%h2-*Y#7$=SwsU3_I#P#-jE^bBR0? z_GEc0Q10cRrYZ`PuyC-j==hw|IiZ!P6l4I@p0ZyFDX$t;IYYCLo{30FeS}SS<%Z=* zubfuevr{_&^P{XRU>sg+`3pZgf4jFJ_goDkJH{QEc{Ye{yJMZ1*xx2!BX-kxt=`|< z$U7LMZ?hWYPFt3JW=kdllYtLrOB#7xOSTdI9!HZCy7gHi&y^lQ;(I1M*WU;p^x^w! zdUQp%AIc+<;F@kFwOR^F$_@IQ@te?Iqua08cOK^h{5a{x)$=5KDRU~(rYyO;eBw&rVJOI(zoQt0)ez{&J-1)R^lB0LOHnKiP#k^JbrsJdWX$Dq<$ z@s4}?KmX~-9t{_K4^HM@S#k#8ILi$^#N_ZUjR8SBh zxtWZOevaUs7dIS)d1%e`DMwky$QbZmZm_MqpuJg= z2@9?baZi;<-ymZ}O4=k+jse`m(MaoCSs}psKg7fQ!ejor`ClsnpxY&L$z{xeA#Lub z8_T_y4tkVeG3>MmF?!kMAf0XFCM5m=kVG7c)xK0`BtMj>JkTa0iLygv2*Q!+mJH0C zk3HB=f(YRw2l&v4n@2Q(5UbKnSE>Qw50{(Ezif$rNJYC`bOoU)k`FOZ`Ga$j(bPQp z%YfJDsfe%6DnxSlF{3$g|5#krH2D$DJwN$#cM|LLWfVybDqB5ms^=wnn^r}^H;(Gy zrWWW~-|`ls1;-r`dD+(aXlQ;@1=2y211sVj3nLjugcK&5Qsnbv%asO$Fx${u7?q2Y zZ}MOn20bF3B-9I+Oj_|6{5{Y{Hf7CWU7EA~3esEay+4lY>Gj#ik?u6HW#f8$eRq{+ zQ=PtR2a&ig)4e;a0E@&Sk1ZoVo@05f{7irZx@E$jqZ z@i<3>hTiq5SvC!uox5~MDVHQejyRI#-)vpnZ|tvof!vm*?oZexsiJMTgdePYa>yT- zoDsc}c~FrJ^rkGB!+vQYS51ywx5`!a?oSXg)6-jiMo~yZe~~lqH>-KEaB)?OZ;d_P z>7L8-lyb*cuLg@@F|mkE*3{9&S}4otV(^7S3q6n%Uss{c`xriTzAtCCkN9gH|GzH>S~e%N<5@ub_;n46E3-X#zg z{@DIB?(aB%>Dc`uLdwCxtRs@VDP4z8#)|(@>f$&I{hdTHTUpFH5Fp(6eGBWKm>2g| zdEnl9QLo8G`|_yL@YX`Za|fF8W+_~oPjDsil_ z41#2ls;6C#m${JZKTVkd6liwzAM)&4#T3Nf5Ir&JtSWu6_pI6n@r^pRJ2GMNRz<2! zG0DOxS;Q1U{NHys6HI*o>6M4pdNnD!QuJ7T#FGs%9}yRp0u!MEZl>}bpYPu;lhgsn z?E6xM{hrRYx3>$7t~9U;dyw@d#ochjB;MzFM<$cM%htbP9XaLb;4!P5X|hWDfx2-C zy61%xd&Hs{>tC0bmuG;VVMZzNr%9C&zdra?SHESH){Hi-tlTfgl8jDoDx(c99R?84 z={x>4{|_;5%CWuNIF81i%zrppe%n!ACCNkoRm3hFj>~goB)XJrqlVR^rHabr0bm4+ zb%}~+R#47;(Pp<}U(hjrGs|)==&W~ z;d%DFMMbwE4yKeLUX~%YNf`v@bw(9!tOBo|w#D21t+`U)Wk*r)W!)}|h7^<_w0&@S zfPbb#D`>^)+@S?Cr=I1hk0)p4L!ihGbhL{!^inNvN?>*Bk9*+V>Pq+x5fLAmDXI+$mOlhj9rYoIi1Lm*5V?clcVb16Xk%^dWg~I~?EtQvuKRkB zn|xmX&Q3B7p8rpoJJAqs#r1YaW`APLmY-a|V*rukhY?^&r^%VQ6Ar@sc)L~4r3~SV ztd2|W4qU=&aWZJ1`-ka&?CR$B2??E~VdA`{ojQA~P%rahDIp=@16+gtl(9BtOYZnx z!}EV&W^s*dxh2dwY(>hdR@t4lhq{sJLU^u_L2%0JS@o`16q&aF7@twoo~(<(%xlm2 zE>Gpsk1kJEG$fu?-Vk%VRe8W7ul28EV;SU1VkpOoq)%(Au$Hy3V5H%mw1Yn`BZJJ& zz`!8vps5~v+!XS~lgbY_yqaJZ zRvjT4l8hO|1|nRk%O$mKWYc2f3;cY1D-4u~N6+GAwlIGu_bz6L{Hj@hW`z*5v`}pD zk(cb4%0Wl%Np?O$w@{#_D-LP2F_H!M4<27E*s=ARQ{LOKp5we>MK{)otG8Uofm!9LBajQm* zDb*&US1UEP=)>w0-bjs-30$3raNU|_Yr}A`pGSaQY)rxU z(jq|^r*%fG%|03UwL5LUHLLJi^%~Mwp(jFb@}_LfR>&M>OH8$*rtX$}+s?Qk)AZ9* z#DDLBq#f-`d#eExLNDr3Sypy9-%k`$e(*%KK^*QN{*XZ0ztwAJUTR8S<{WuIuj?jzuAIl9H0P-%}Mt#W8wqLjFc2lWXvEfmNT+hnAwq zS)4zCLh;0)4B2*UTm@WO^kFW0obQZ3vq%DBSvEW4cnT^)gz^BHs-xQ1hEa#KFvh{A zW}xy7{AaFx&7M%%S0hiHyU4kA;huDbGM^csTd}?tRqr4vNsX^NXfZ304*a|_t|R)% zzJrJrsO6l6s^RFHKD|b#6{pXQYbs>3E^hO6k8gw@=~4d^pJh9*Z5u1OzG@wM*qZ!L zTL#*WzGhQ)d97GZmD%B9|IXi%|Ad(?FS1AB`vQpu1bci^hFsn1k%2;7N9wdn^k-$+ zjF)DDOY@Egda=}a6iWGrxWTQc#k$8D{iA(ON?Dks?xD!`YTVkK>sTG8M1>pr6?l8c zyA@uDI-67WKWsC->B1uuaaB9xl;%f?-KCIobt*jnEyrYIO{S&Y{)48YcafWE-9yjL zsHVSR$}aW6xM3?|tRSuBh=#P++uUo2Ur_l!ha4OcIgy5khnGT53_84Tcrn>&QHgR`;|eE(yHaY8Jl}UF z_nfEh>4T8R`yTr}yuQNEM8zwA`28@`_wJ6V`&Vg`GFrT{9dD%5&fMEq>yCX6Oe1F1 zUN{eavL?CEs1*zGY{QUgtAWQ-@3jC<>a7HQn$=a_93JR-;M(T)6xTptM%na*e;M7dr zG_O`>DDOv{>*d4aoHoMR=hyBT`fTT+L?eE@ z8}3ga-Ht^3mWoX3m44OC-9+H#?iS(fittBv4QOpjvK=gop%(Yh1H3=OzCv>vQx|5u z<#r}*c3;vw!ij97j<1!8N$%3bgyYb!(vOtd2S}kvD8f<6!t=AU*Nbzo_U7h=e}){C zWuNZ)G}Iystz}fic^7!CyN8e! zuUwxUBb$&bmSVQ;m%;C5Tdz!CXJG;;PhcX4cB=R}`kD&Xs&g&$ zrwBd_toQ1&j{!kiDgz(g-0C@jE6&fpikP)Ln|5{AwaH&=PV`Y4YNJ{lVxk1i@EBYD zp_x8xMw>fd6L-pFU&cO}Rguc+K>AOBpy*d+>os+i3AhnWAUe zcevplB;(J{xjyRHTPSEZcx1S-W4XXK5XKi1m_jP<^AEVpj*4oVbvvq;CB;jWphotv z@w&g6r{4Ye0?OBiM}@B?A5pgEyN6btb+7e5?np`iJ#|goV!vDt`v4YLhh41h_P&JbBjLN5z7BLu27bp-a`D;V833f zT;%*3>-~Rut4bUA=tBaKwP+v%iYW{xp*s@>EG=+*|NeP@Xw-3qNK-b2Br{)>P!FFG z48_?=JS2pmvz{xOji69)(aehgw;b_nrvc0V=11)4GmNO}92rE1nh#ud3z3mf6fYMw G`0_t~Oa}h| diff --git a/rtc-stun/CHANGELOG.md b/rtc-stun/CHANGELOG.md index 2a6eaf6..da6b26f 100644 --- a/rtc-stun/CHANGELOG.md +++ b/rtc-stun/CHANGELOG.md @@ -1,16 +1,3 @@ -# webrtc-stun changelog +# rtc-stun changelog ## Unreleased - -## v0.4.4 - -* Increased minimum support rust version to `1.60.0`. -* Increased required `webrtc-util` version to `0.7.0`. - -## v0.4.3 - -* [#9 update deps + loosen some requirements](https://github.com/webrtc-rs/stun/pull/9) by [@melekes](https://github.com/melekes). - -## Prior to 0.4.3 - -Before 0.4.3 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/stun/releases). diff --git a/rtc-stun/README.md b/rtc-stun/README.md index 1f70e36..255f810 100644 --- a/rtc-stun/README.md +++ b/rtc-stun/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of STUN. Rewrite Pion STUN in Rust + RTC STUN Protocol in Rust With Sans-IO

diff --git a/rtc-stun/doc/webrtc.rs.png b/rtc-stun/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 zcmb4qgL7ri^Y*>Tjm?d1I~&`!ZQHhO+t}FV#!hyV?8dg8{pItmdjEj8ZcW{)o}N>4 zx}T@J&zwF{it-W&usE;)002QsQdAiL01Ey$pdr5`Gl^x@001?ix2mSAvXKXoqqBp# zm8}_(tCyo0k(sBJIRN0fUYBc?uFIKR_Rj>P7X%1*;=-D%!e739>vp6Rv;H}K%AjN% z%DcHW3_g8n$P~)+@55m2gYff&+%v=3t}J8sh4Nu}Z#(Bu;NSg|$Mwm_$ETD)A6$R` zrT-_CFeWVkg zB7gp^)W4@cMDlL#-2Aql!*4&XKC#q4d>8(88yHBYX{~4BYQ>HRdws?~;s^PC;=ZrF z@MNC&nO~*t|CJFC9}0bc^c3jx{&xoY;Fu8Ta|y`z`-hZ5IR51JwxpYWg?BTv^+~kf zU+~U3+Q0eBKc4FIGbGpeb!zWDbH96|_vp@*6vMp5m-JN5{n-io@AoWcA41yqs`reS zzCM9Gff=NJ&D)ENf_JT=h@aKE-;{qDh2qY>bqyIuQs-;F;Os>|>f5NBB*Z)zS>01^ zYHIb`#ii-od{1Z8dgn^NzTDXQP`BLlg8GXC{teD|pYUHtz{Bvr2||ynMRbTQ|5=Q^ z=xCepqO_&09vLaG{)E+xpA+id_QWP z9NhvK2hg3arVWD|!TLZ`z``o#RpiX^F)##i0{YPj*wEZP^F-#Xv}0>qrKdwy_MWFP zJelPwLo~RgI!!aXpNyEaWwP(f%aKJ%^cA@-6YQKBJ_MuEG@Yr+F@pB0HC2b&)^&A{ z+}W+m&a`!HtKPVL?%?1qjJ=PmK7^!QgK>~+I6VQ^ld((Y*Pb;L5qKx6~E+?yuMxn%(Y8Gwqw+8y6n$x~*5$p9gdQ3|EFc zR(5r$dw+cDvg^CGes+i==bF}G(_*R^j@GCL2F7c%ZV5{((N?hE>1C#qhD>YYwuh+4 zlFL$#_zustzL^|+mbkfeen^~Q{`)h@MgQmD*d$l_<&U#R&YHGSm$SNGlyK}7e}D4( z`>#7TA|$OpC-leXjGvT8K=l!I%`50^T(C;VbM3Edft*R=r%h5Q?HmeQ5X7YqDrRJPoft#UYad_=m;>;ETqfA_uXdOBL=cu9JB{E$F-gVVoF;&dO{;C%YrVp;) zPB%dn6N3!zCBJBkTQj+mU=z{7=x@357Pr4`<#9bRw2v9yJb~bOJCaGLgSvtI^a~_; zpoH`UQ$Z#!S}p5*0>8HtXU>yJBc!OoU~3@2sPY0S6Ez{~~cM>p^!14V=!w?Tru|)Yb2A zoA?OH(gHH40Qaf55cJNXMB~19*UoD0a=M*ieUYlZU$J{cuiavQpjHQ3cCNm*_Mj4F zAV%>@DdeP$f?EUFi)kerkdQP#1R&gJ?m}l-;?Cuz^S*<~1YbTUR2&047A&ckI3a6Z|`JmmU_0Sj^OWAk%Bfgv5<6}c+rs{BbNkRrL zW9lA7Q~acKKAdKrNwqfcVXV$j0*L==bbQU4);_34>|}{ISs^ z+=QBD3xuJ$)K6C_qwdX+oLQ3*?h>=r*(~IZKf1I!fp>_CQ}=6Dv7UEMw7~3*G^+Uh z$50BRUd=$*dXF?OJJY|x9KDq5km0O@Ey>-@bUeE%!Pq=b0*c7)??4D*;@24J3z;n< zYTe1g49U2c2|MDpA36}RP+iZ<*G!X}1hw=%i`chjp`y1y5jK(Qg9eC{TdwM{bhz+!tMACo{i?5NK&}&s@cJvJrZ+Kfh+43lw$j^md$W9Z;2Rf9CB(qE4BX z%M+P0{Bl(`VAjXF8*^6T#fr*;ak`#P*x1Y`JDwzZo7w=ktR0hu6hyw|Yc6nvSu@K+ z)}y2AI9ao$+gFZcNl6@WuYp|bw=1=8Tc)JqBU0x_F}FGjRNY2xT=OiH4qtJib)=;u z3g^^xq)ZtPo8?2}&p#_=25N}M!W)~SB$C~#w}M|HtQwV6hY*a3Q+I$nUYCmm&z(%} zC}UWop&a}(mc}%Kw-^DL$5= zj0rRWUbHDV7I*@9TLBj17SG?Elr@7fzA^|P;HA-V7#1a^z`Lm`gK-DN3(A@&yYeAYLAXPyCym-# znC|}GLqjKn_PV?n7IH?XVBVwRuVyw~PY~;K)e&DLqR!$phbW$z zMjMo^CN*M24|5godW4g&06{xOAY%-S9t7FL@>7h=1M>cII1uC! zLj+HWyX6D5f;oor3JJQ5go@{dgjgCtFNIhGSVM*(HhNmD;FA?o3MgyX;mvNFzzpf+ z*?LW^;>a5!fv_c%6@INu2HQSi9~;f$ON3)uQ+wcF17jm-Lv4u7aP|g%SrVLL-IhU1 zR)-hO*ep)rTekEB-a(~)Xpc|%Yz8WfWTh1PDHhzT7 z(?FD2aA7cysf{O@jP3g3l7i1b*8yhBCrXZ@>tJ2pZ_5Zq1f~7Ak0HusxMdS1MYX@^!uE;B1M#SUi(2tHm?5FvyTS8B7Bbk|_uT-*aW!-B|Iv!Qg6spzp-zTu;$Zp8G6E&8w695FWfQWeLK zsN4noQ13EnuxpKoySdSaOWy?%%ZEE(2;c>UCn4e@Fm~1ejlBpK6Rp&Y7kgH5Oiq@0 z-(EAV7*=@CrP3$lb5->3m9|!6x{hAhCYTp2f1#ish$FO)|wL17Yh> zvb~6XZZsF$AR--Jafn;yIkfF@?9ma=?UoC6swl-}bx8HXgolyZ=L?n($Pvhly2j{D z!k^x;Vgo|OXGm`MD&*`PlbST>no0UN+r*^|8EW-tw!~Sp!ru!Or7Y0ljYnvVF)W&i zbg^LdI(TT-Y`m+GbVwUsPuEDi3mf?;OViv7S+bdI=jm4BAq;h-p2CP*Pfg36B z=PyY|QTSECa9}llrGo;VomOktjb%OQ3cxx6x^={a*lO1_ME5-Dh?GL zmQJdV)c5>OHnh@0GJIfT-LP+C4;k|x7UMxET*`SbNh-B;(WHE1egmN z51Fd@imCHWJdFZLSpvb8sq>1=NFh zo==R?!9n2cE7X|AzXKkIFbN9mqIxr;K~4A>!46~uo;GIgS!Xlk+NPb{%jw57tYr&@ z@nU^OKZlGY@&J{h*TI-@dqDbF*!mcj@~w`ku8S2B)YPO>6XZHVpg=fS0P~9Y2vO8~ zC+VqqC+(?b$nG2Y8}LC@(W0A4;u-NXrP3=d!GngYTx@H!F$ znHrA(L0Yua$O@pMsi2lVg*xOmFrDv&$*QvXDf+S#(BA5a3msN8*vu6@vj3<0Iq;;=@2Er@_#Cnv=$f9yUVP2kYb)Rl zpbm;@pS_!qAEfk|EgXWfb}&%hLO77{f|>U1ZCMps)CCeVlI|<36F<=Q7W6=+_}abCI{r zNr)lBDkWrWR#PVW@5o^_Sr`j1eJ(?iu1(Z|s-BJ$gh+JV)5)71X3us_E=I-{xKQZm4<%xH({H{ap>uIbCEEML&P9)FlP)vQ10@j!);yM$ zT@uS7!$OD&!{L=8E^66*87QS&RUn&?l?t0caI|K2N)$a%0R4m04iN157k%~*w0+45 z`W9Fd3%BB=fX#nv*cfb=p|`mEBK3=^l+=n@Rhj4|tp`sr)L-&84;Nl7K?IB*3&wDH z)?d4NavTZO{)YeDayVt2;ZL~5I*c%pnDTkENRB@*vv*lZ=A#AB@V9^;yJ@hUGmfCt zK62FjYv?%sE*}~^v?+$5nlFioC%k!!d2%>3H@NG-L=!Y606%lUUa3`-2pz87dK|w@ zP4zB&5q3Lh{LQ$K(QDe6DNpouXD6yT#Qje-DiL0T=k%Gd9GYs>`IDv+9lG*F$uct` zJTDO1&x))R3w7y;n-irj^&jnpAX&$*eIQT@= zu(EeL;V<3H{1u7Ot|670B>Z1Al0rPO$a`Md*DFDZp(7e30We~+7vfa1x2r}^G8reh z07e2fqniB|U zM8?6`G&%s~bT~46m$;jna?=$5nV|7(*ipL?k$tF&*>)wh$o&`r4qH&b7AzUe(Fo?J zU0}8>*l*;7>g;Vwu{;wm3| z>QFbLG1Ne9Ea6LY0Qz>Sbg2c?d-%dpma1*(R`bn@Y(CYBuv*HR zw1aF#?}h1^7Vn&wc^?dYPbUObl3}NIXaMim4?RejWP)XZVPP~bXY|mr$;xVb<8ni| zOc#@+#56hPAg7@ML73_~t`;@2$#i@XM{DwV-cZ<{%Z0thDpq2B^?PPlME@?U`q-m1Q=>%!QTZ;O3z((Z)ki z7kbQFwJalo&jY3+Mqs#5<#f~c!|n&9RS|yyiA^FSEltdY#J}GP#)!g+hAv7_D1`Op zfMOb@mB~(NiHfumqyN#L&SM$Um!mr}I6`!3%|xFvMa8=8vM@A`?wdZX^B`|YysZGB zkYJUE{g@O~Td96dlSZPi<+;+2;Hb7;w=A$$A(vW5UY>p`B3F-Ss6C|8aPC7x``co>t zU^T1*dLn-`qFNb;h}jxfgPNrw>+{BcJVEt zIVl@hB+=6?i?XNz87R&VEWvSue<7CL{ z2oG!vDCGUU$lDkZq01t_h(h9rd7Yft*h}L<67?&#Jc45Y1g_aSnc*B)#n=}mv7Mfu zN|VDJHHPzspa}U6JL{#8Z;0hkO#_VED$3R3G)&8t2u)>}8t`x`VPvXEbTMG}jgHDl z_SR3TJl`ir&qhk}WL5QuW^g(zx(K6$g_)@8p(RS>yg)1XrGl{DLXok+ zp&66PD?sXL(QekmJUyk3!irEZ7ldrp(ZMRtTGP7 znWi%=FtjctrWggEZR@=0>*dwxO%X9H)NgvOWY8DZ!>-chZgf7Oj*=%}_+gu>TFC<= zM}fk>G>GuHaix3_vDh9eR&TvKR$57dg_2EMt+$8Kh|%S>J{h`MRjvQK4;%rhja z%<~EnT4wpFM|QiP_HMsk{&mm|7cP(x)1MYIU9|dZnM@Q6@#5z;Q0-YkQDI;L961X_ z7HLemmqJ_1ZXG&z=r^E>USAcH9tmy8m|Bq!?plBUp-NscM3jiQ8RU0~MFJw4EZAoj zbcM!6h#JX3>44b$KtBoB##rxn_;A`P#t#~5(N=Ty*oII+>a)oIEc{$)2XVA(a0U<5 zoVMIqhB)Y~>Z`fPQk>>sNnnqQF&GdbtrW{eQ|W~tiuvx-V~CF@nxx~Y9>t($W{0+SObuMthm)2pE5H~fYOmHS2~z#-)mLYLy6G|l)^mnZq6hmRSn*JC1p%|20L;jz^yHOv)$aQP%$ zmflFf~79JvwG0vd)A$Un0nGx}|%%fqplB?S5p0lBsBRND~#9 zB98MK7);XA6y0t}t}NSAF!Hgjs2VUP{w;(TO0j@u$TnhP#G2+AW)?~ZI5DcV z)c{Nhymi57iyJz=ri4BzdS}n_t-6D{tFJG_VUG!h1x0a$oHkUdz5GH~oXHv!<-Mo26 zEvA{>8BrXS<$qDYx&|@Tc3XhtsxbjQGcb~QTA;_0DsD|K8>U(%n$R>z#uEOQ0OO@anz${U!&evo>1eCR)Qi;Lm z<*G@q#=BFxv_%KV=fC?a1Hs({xo)%q-a>c}l{QZ4^}3zc57qq*lbOR#pJvMucMY9Rnl6%mDP-yTzKi{*YC@g)CR2Jb)4rzzEgFWkUzen1 zMO$qSJfv6Rjfut|1NZG{EJ#+GzsE;SCh(E*G-fdKdxBT32 z*k(nmqP@G=Wz)mpA2j;rx4$m z#TS3W+lF>^-fozQS)u*m?KA_C6Gg^GGQCiE%=2>^RPaT9-ZOl?;cKg4kg>bA0k5O1 zja_d-ZmLxwAB#fEgUgbN8}u;Fj0UyESY|<@%tjZy{ch9yR1`h!INw}fJpIrOM795! z1u;MY=xK7hZV<_Fvt^)A?}B@zLLCDKuji-gRZuK+=Y3W$>-k70nr&F>0a*u1~gyzPZqg_7?Bp={YZX(h}sTFc5WDDJxt6Q8HA z{|@|c?eSJjKw}ws_@m~7?NJ2ZN<4?;l~@xZ$Y1TCb`QR#E4oDsKnbkwzVJ3!YK0|T zVRYq)ong5#4P8`|;7-v5=g28>!X@LW)WdclA@Iusvp_$z} z{i09t)xz|_!KN-LW*lCY)rza`nQ+l1Ey;c*7RkRa>Pu-J=O`el=q+SmPhn@7dgfV zrZRbSwh!xVvDOO#kCOs^z`xaCzz!x^G{D`GwoqBU-W-lBqOPA<;i02uhN*B7@PmaI zbfj^R8USXsoiblQhqQ=mv1g=nrAnQawu}w?Qwu%nf+9~eSlM1;pWqk%*02uJ2M6w1~H-zq315?xDlDqFk&_Co^xyHyovAAU! zQupRV_9qZn(5=i{v*x8nzE{y-&Un~XtrV?j^{HmaJT}H-F5`FwI!z|UYH`x<7+)3V z@UfG;gKX zW0(t&F_0s|)@JzT;a{OKDg~UN(hEvD2kI>+D~Vu< z75lpYi<{EQZSUD(56cI8b zvHa@&B6;w%a8%+c{gy{8!!{+$N?mSe>8ix`SE+ciUu1N5 zcBFbr&P*fk3P~gaSiC;{crW{V`uk!mHnNNOeoFyNXqUCiYIyqQ)uO)wyrHtJsGh6V z45o(N6BFrBA+PmzlxqiJeuRFuZNY5zsVDicXyJ$o*sda_yF15yapw?j7woa9|NZLL z4+z0rCYW`zRAI?^ZDFGmqG*;k^L;#Nl?w13CRyCEpA!)Fpj3ZWaOm2hG;+bLU%^6= zcB_WAZm{x!8ae{pK>9tw*_x;_>7_LIrBhK!vC%VMMP(jQgO>|~7% zEDuXXq}ZQGo%7PX%SKKAAzzy%sb&~2)jXIOP%BQJI(hGaF~0fcY40)$g(wOtqHm5~ zKa5C3&tnb2Mrfp_Biez3+f(oGB9$rr;{AHJ(5@+$(lI3c~W=QgPM94a*70RI#EewwS^co*l|{x|IDP*6IqKm8W?V zW}8Bbi);zqyL=VHJpY;8sxeg)FYo)pjVlV-p!`{wlpl}`cLeUUKD*!0Q1tljk zbv8L!Ke@{!@2`C~ZYrsmSAM|RfG(nRde&o5{6tB}3Qe@uSyvfTm99Q{PVPYvT_!i* z`3|cM${k(HQ>XT##JL+vv?F_GjeXw&Xmw#$#EJ+8SlGDJcAB&`*_9>?pd>>iU&CNz z+v7JX8{`6aMxi@m7tL1XSg?4`V-V6~-aY92gl- zusI&&P_p0FDT;iwk^L`94_gGz1juy87}+R=q7waP$DZmGxF3?%A4w}DL=pZ|1Bu@- zq9+nkV+H(gPw5O}UkG&ScI7@2RV*?bHn&NrhvqM=95N37P+h@GI^7{K8FfVXAAzKm zd49L=WdSMqB)pgESwXv%V51{D88If1=zz`OM=rq%mUwFA@2Hn?w|)cxy<#Y&I6q&>%bg7zJ=|1__bkL zIScrkD>2Fq=A9i3SBSk(EsuZS+_iMP3V!?re)Ua;T8W4#N{NX4zgEew2FYB%BtFSu zLA+4|6&W>c{Bxq+#3F7jWDKWe8uTLJN(^l`rp|k~Y&J4#hWKEc!NG*l>X4Y`dc^u* zqG#al{&DFs3Hc`@eM{ucb_e0rCEw*=pm6UrTa69gyz7Q6`K~cVHw~o0LI^*IDWqYV z&O|;r`5MpQ>H6k@VXV1l?t^Q{de%5lfh^xF+zQPBS;1i)^2l!&ns$=rhU+F%>KmE= ze%InY=PX19L_Rk2QkB;(bff06VOfaQ!g6FqWJz_oN?)Q?)1+5SvwD5gD&Gs72$!E( z))`ww(f~<1kx*zbjWpG;c&vIJIvn+Sg3oh=Zoeo)m@YY!GhHDVLem-4zmTmz+AkAP z=E_uvAbq?e6A<(zSX}m=FCmZo9_U&CT*G_ApbDI|pmc3r`yTpu3zDIJBfAMo_Yx4I z5Nd=k?Wcl?)dAtXmfhR>==2IGt*Y5aaCC%@#ia82v-jsuUhjub`N|fO zZmx5FJ&xeSR|hMkv5bT$;NO40!rqFMFUi-zvX;wNv+LS_11L$WH6BMdd(GWsPAY8C$HlG(5 zlHy1Mh>_sP;K1l$X_Q7o@Twxp96=(Y(L$_~#KioW%fDNMFiDA~%~Bi_=ZAfB!zI7- z@;Y4(H|KIUW+B3aixjEQVgJAWBtlt&ii@@2;&=;*kqd(ekpassLCA&}iN+!52rRXU zmoWeCLz^d^VaWqwGj=>GuYi2yp@228y1-RILu~mBvh7F&M40bnM*WnwCqSvm#V^HZ z8Vl0p)OneZKGfG_T3?J46?G!@A#ot?G_n_5X$@tOB3NZ5dYf<|_T@JwU11HNHU{Q6 ztZixo8Gau&H1;VBbt-@+ch>uu!mu=uSWpfh^MZ8H1NZvZae%7)T49*N;?i>aOvt++ zXwI%WHyqx-aPgItwO?DIqB*Uh-O&RMZ!R;^f$=9Zbt08kQPzLWbddQ!L3nw;}xhj8XGF0>TzgX zXAb%Ya9Lxu@*38K2*4dK65kYV4MuyfL~Wq5t6`;N*v;lCt|crM2#cS{d5RmRy{eg& zMllR~v0T{@4Zu)~Mfm%rccN5S0O>#_Qwgo86lNQ^0a2@zUWtR>BJ>=GTq0XUA}F@f z(_2nOtD5)1?x~a|Bo-K59rbCCe%;+9n#K`k2UdRt{+9Nibt^YH*QO?6)jr|bRM9KH z7M4i_hyxcUQM(4f*sj2%CedlYR8?n1d_=W`I6Wn?>Zc1qib^o=@P7yVzLc!R`ATd5 zCwU&IL$#)rIgaMQ9jN?Isi-*a^i@~&(QeJx9#&(A^ZF^+rP4RRdw=V%W11q*MAg^c znLR}m$o;#@ZYZFY%>Sbgk?p*MmQcUsan1j(Dg>=IxO}Jd{Vj`HH%PKF4g4t7+v+4M z#-eCev4KYA>-KjRS~6}^SH#nHIA&`k(VKHh^?TXYbpwLtlP@+ zb)|jChy`^(7l|zpIHb`|Niqd`1e|R|I^r(S&)|bVGAO17iBM-zEiD*BatW^mx5gWy zYve`i>4#sFT2Gf5Nx=}`!E=QgzE#4oi8y0ym*vZ+?Ijdq;;=7V6FP83rv9^2({|^) zf#e3@-_999V9U`2>q+`UwE??DzjK{ZQvqH1S>^N+o$1ssfne3e(EivEIx47=V9CfM zK!l(}$zZht@iJxbI72q;k{!3K1J*gUXa1QWNqaE+$+x$T*h80X7nIq8(+Mgd9icL; zdDf*63yi6yT1~Wvxpm`~*2JG!66PNwRT#;Km3fP_=VqZqSm1+}p5OMc+G5hyxPR_h zJGV>vX^EpmjafWj$3YXz@iD(uS}|$BZow}JnrFKcX#qn|i!}8QWh3HcpdN{yF$R^E znMz$m7~+t5nRiFku%a>g-=UP)p+S5}zTy;=W^7kemN?ZF6`%%F^HJ9W`V<)A0Ks`J z1+l5eN7|K}EHB|_Twyykb$RRJ1)u`=u9TfbO$@(yC0JlZpb1NK!hwCgvVsbG5Zs-) zEFb(WzHOV)aSI&%6lH^KzYLT+i6uxkL6vm8Y=BTmhPP5F9BWWfMWcN;&JaG>h$UKU zpGn1)RE5t712`00`Ns5XSCBt6ejJJA18nNy4Q)Uh6ruRCE;Gcc@GN{olkyC-WOubP z69E0#9aX|EYrCoai?Y4^4De+=0!Qi+c4GCjNqxgpHzW*R68w%TaPSsp85v~mncA(4 zWqtC>flK_XE6xg{Rfw9!Q$aCowZ6Tyj&nHV&_EFgY#HE|=UKxx^vg%4`HTV6-Wz0> zM-~9k|03T#2VzC0DQ%X38rIpo+ONB}Iv=LCNq2o~00@U8Sy=nr)!NP|TL>P1?2 z|7t;jtRF`sr0mn5uJ5oY*e3?%n9|Lp0=jTj%EqRTk%FS?eQ}4njrHfF1~5fiwI#>{ zZLSN+3FHZ1npT|`GPO~I(y*+GBTxm~QTpTfpR?7037xNXnc&tMzdGkMNKuvpIXo8| zf>$ShLNffRQiPl6I$dTw?gRVoRs!W8G!-ax>B#f#jPu9*9VHMK*`7~m8lW3N=|($$ z(b~q)|2c*`$YNz2iz=vL|M&_?FXUX&y}7tWKScYEQzb|S){NT~Dv|%ZQfZj+bh?8% zEDcF^XV!Aoo?Bf3c+ENt?wQN8xAJ%%koMA~-j7Gt`7=Esa!pnlOmDeL*0*ENTF(&J z$r7z34bY3qT2M)h^=RLiyuTTr>UPF#)+6$O$#YH7-mFI*K_cqz+mNF{h2~GExKsx_ zhMi_Y0O`A|MWihjnw9CDks)6}{)Wie6RMMTc3Bvtzq`Upq;p$aFnXFO;Nq)>$d24u zB!H{mHxiz|s|H-!s-@UidoO*TPl5c*_r!%&*F}oK7LivkOP?8rahQOUlG3bGKV7NQ zIdOP`&FFJEN~(|_jzZJ?u^uTg;F0LEh~K)4$1x;I`Kbg}$$5x(LvgmtK_;$2;~tnX zwlwz2i$)-;XRxM|o|l>`YHm&uhr>?unA!jN8lz+18J0q+&}6s4vEJ@raNby52v&A zIgiI9{%^0(QiqdC-@nf{l7vQ0y6If5l;H@ZlyKr)jFLc zg18!Ok)k>n-}NpP^yd~Hgy@boz%18p90g{VvWmZSd${cRrr;XH?BpZ~2S+;GHwN^V z-WBVE<~e@aYps6&k6(=@5}#W~a|K7gEeh!GH=OpyZsr93xshIM^%nraArrG-xB4gv zeXoTYlZ>UMVH+D8ODih6$H1TZAhqit6xt_b858LeePGnVG!NL>54^TM!PeeE*&F-& z^&*H@T@l&cG|lepBYqbH@}ZFPOc{gXYmhc zixSje>9 zDw=LpM~L>ya@=!SdHL;0MZxVw`xYkGPp8+GyOaYcC@3_n<9FT`O8H!>d#x`=3Vht7 z5eB?7f4P3GfOQ!sn5Rwvpr59r$2ie&2D_cptsUZ6&b4*-T3(U(Z7FRPJG^t zVT_E7G#m&7#^Q3uJM_JX2h47-p!>g^!Gp={Fk!v@)P3;*PR~d%UVt_^jKJf-Dwn9VLz$7 zS$R^1qG7>oy0P0J)OnOo`^ZB`m}ft~^BbD81gIYiI;^5_44Z6q!`i-( z7DK#VyndKZ$m;Fsp*i4Iw^_i3D68#BReHq`Y|j+YJ=P;DJ9De*R1Ye1?8Lv|3+?0X zp|$zDxjPyISNq%{YHM4&@u#Mnvj=Y<$N1zc>lJ63odR4%l}MtZqR#(xXME8D!+$&b zj^O2PPGHVs%TL1Bm$#~_Ds1(o@5`QeeBS6eGvTAgMr-wYym!;A5b;{Q-t1or=U=q_ zLd(sj%N&>8h$i~Yt(3Gh2?IlXXej7_YIbZ)q+Z>04Lc!#)*CbVp9?$q+C4|&z3air z zz4!Tc#dxiysfjf)F%c$ulwsh%v#R4j?;4+)if(Ld{QNba#pmOmHMQRD;cz&eC8Dj3 zb8~Z3tJ5BjL94zW5O9C2q}^t#^&;=|$|vbNi%-skZ-5htyqF5$&dFLBA9&!fueSyA zx}RgwYqvO_a_O|&&&V+Lj>K{Pl}w?KJAYD^oH!~7(6{`(o@Tq*k@OWPGCVI-D&!lD zh9UKRF4z$X`OlZ%)|)L7mY~e4I|0F_9g&7n)?hp-oF1+2VmCFgIGpyn#gbgoj*d(* znDoX+vw5*t%tJ+Yu*6u*#-Oj5Nq74;Fd*1wxAFCM5XfdZ9|%R@8CY3KrT#t5m7O=QUA@cpObrl}<7=|NHfD z&zt>VD6w2No6%R`aXnkDTRwn+g*Bcp6tex*5R}0GTDkee>3Te`yp=IT{5nZm&#E%a z9$o^H2FM6i$mdOx!>g3b?sT2i(`sPDLxL;tJ)mE#x0?Lva$EjkP(UmaK3}W#0``K# zZq4NX?&In!dbr1@p&tl6a>1_B3E7$JmJu8?hC1-EoTFnW)fGMFZ;cDub^`Ig`H zAXF?4JFJ1hQLQfXSCf(R6#aigzJL771Wled#`fJ89OAK9N~c>9p`la~RaCY2ZWzGj z05s3nOLf79+v-Izsj?!m7)()d@!JtJh3|6jG~f;n4&g|IvyT@WGJMx)$jF6wWxLw8 zerjmHv^>2-4O1qo>WSFd)6!@)l5=xo3knGH^YdR|WMoo6g}Ui z@^B`{>+|IZPS&MyTt$Izv{I?$`u?7bo*toQMfwY1pP!#!_~&EjW7SJrlCmF>xF?pm zf>`MXtee^#D1>#Uu9Wd^evxYWD;vB%oOSo`WwTigy}#VuJUkqH5svZZSuTg8(Q2u@ z7#xcji`6{Vxyc!H1X{p}RFT_uCjFuIshSy%Fx5UWyFD0^#p6-06S+lhy;41z%jJT_ z=k3}#s;Xqa-XTn^CkS9C4-_+G!)o%YM z8`r)=h)c6`4^y}JZ`S}DmRH7h$16;VtRgF~^AoMABE`bi7c~`F7cjAMN}0crjJ0)tpLS zv;A=n8@B90SjbKZ2odU3Cg9@Y%KfUpSS@B9cSm62@wkS*5`YrD-IsSLgoTAQ+wJi= z|G1|7F(LH3S5mLj9-YnOxgg*)n?(Q0A&|54&Ag>|hSp1l$aN{1pJd!zp7 z%gI=h6KBJ|nAG2n7lPr?WpM0Q;-QiU2k6r?Dlqw@koJ< zk#nU433-b;8QDmRKRQk8Ss7+ z!QyJwc-)U&>i}fKT1@?RAU}=I?OMqq%KQbF@b6VzAq!sy{d_6V#{zz0k5bMmlTdGj-Sl7qC{P_jd-`yTR{!lpT>i$+Y|Eg-bmtiQ- z1D8GS)*!M6Ajt#0S}YfW8T;Rrv4;=^-mgU#ekjG1O-rc?yqz~!OXXZ4dKSLD);IuV zWz^)hr;fM!`%mHMh+(Ivr|Is!Y;Ebj3Q)hQInJ-te%XD+Z}zLnXjHQNlU;jG_9A6; z`WSCOU0 zfQQX?`o7$<&{uT-UnO4|74;W(J9H^sl7iF#(%pZ$MH-|_y1P*jB&9o~JEXfsy1PMI zy8Aucb??Xf;r+x~1N>&@#D4bP&ps#Z2$VR_TTNwU9b4+Wz~Q_4NFF6MX95MpgF5t=F)Xe$T!~ZTCl__XZ?F-VIBzH=Ri2m_$U{ z`>QX^e!1C=-D;*(xnll(-Ao>yH3ulJH61f4gNe+{l@uz~X2Zy+s2h>|M|95Rpsc73 z*CihX$T{mbcI8V47dO);51Sbo8z&3-@EtDJGhaL|yRGV)pcV}7{7&a}`fWk!L@i+> za)b;BOrGEK(+i7VYJAPSzNb}LW$)2$(Cm5$_JP#T)g|}M2#Jh?Z^X81@fvzBh26x| z^d}u2Eie#a7~NuR_a^c#_NT)tD_QhB_wp#C7??;O;^$RXyp9EbRad*XWpY~0m~8ZX zSLB`D%BlT4nqj&>RdnlDZ?lLmhQ$!(?d@$29vZ#l^>{f8o`nX!yxDlR1QiVpy@k`O z#3Y^~KN#F>ZBzqENyPePS7Hpo3#IQqreJKKQ;diqQBlk%Za|`de9y8BJR;&Rqh3_RSA=Uy z)mC5_7`1CcUN$HIM#}3!pVMA~bZiSe^ohax+$GD}1g}VAKz;TW>(|UoBy*zi-)sN) z@k1#~hWO2!WMSzG0IN87cv~mzTGeI|pKRVK1%R@NI_lEg@oBtDI(&Ng>kDrLdaSSY zdgWk@{u@wdU|L#5Go{4ESsXUR!3Xir-`f#%Jl&8$C*kS%WjdI|{#mhc)@qi`Xq7QsVQH#r!Yo z7t%i}bkDfzd;cB)gk#a@YPJMg+vC-zTFM@Wy2h@ABql0&ZoG$V6W~UpyFV&WsYaB?dL7;{`{zgmP0QKPx78)8y z#Np{dMSIglTfbU|qz1Im>Y~K-RsxoHdOioR6V<0O)u= zz)%s#qfA6ZBzwL+yu3p8cz0?1{PYOwTjdZOOF#hVc-$ZMDt>88`;J3<281r1p;I{S z#C#e2*sZtTvOvF4)yW`p`&ij0?x*Ya=XiJT&EFBrD>S2m*CZwCWt3D@J$SPS89lzE#ml1y;mU6g<*cz4pH68d40z>=3G z37{g~RY)q92MFD>F)<8Y0ZM%vEJlaCjiyM5&@?qd55{z7@WkX~gvxqR-?`4*-F zB54^JdN!5|U`-BkuX?K-oyVElI0Me?+?<^ss!J2W6`;u*37>4Cmz;V&mueZ_ zXEFc?a!ks3;O$TY6i^H#&Q(jSS3*6JpetoeZFso2Jzzvf08Req+D1!7^&=%kdyhZq zO~h|y)4&(s#{*E%H{7;qDhb^_fYPI*7-%K47{dDc`qG7NF;mIuvi-4_ar%7o9)3iF z7K0yXV=S$Oep~Eei?31^OvF5ElXlKR<7@TM;*dQcg&g=rU=E~0b{CK@8pP|zxDF*zd&}HvdXKC!O z6COMrlG2I__@A4tpEqp7hg`P!wil{ysB%y=cOy3v)6#T|QVOz@g#FqEhminX&fIqZ z)>jMge1fhXD(9_xe*b3kyf81wU2X@j-GXY6K1+iB$3XT+5T+cal@0@C&Ck;YhR6rK z$b%1`xmgexzC!8;wEi9*DwvzowF7u7^5ZufB7}v7rGIa<)a1fIt2nocFg`gME97&B zo18tUWpM}Gkv~1(aXhZ(KU+-Xq5wwr0Qk4!vcDiBW2vZQpvprvAuWOi^{iR42C9Of zbLNLN94yJ2l3Dh3d`s5JDTKfH9V&JbC3`k+_x2)9OK_o3KMUCZ1MLCWl>A2gXPb%VNu4<$R62@%|rumh!epdpy6`uTBUU=i&zab41W# zn5Z#L(AC{_&pGt!PhkY%^{DIr%L3#TdzHes8&B!W$)Ond;?C{iep%_*qi<}BbI%kA zy#5aNHeHw}AvU%<{0(~=TS^i4MUsI5sPBAlJ|_MviU1q)4?u;1(ks5QH>g789NaWsY2?}cft(;bUuJ?-NOEfB8*ijSo zgQEdrx^)0a@q=%tNmj*f;G#`!U{q>yO^%#uTzD&Ad0e$1X|#Fov(ex z*cf?5E~MjT>baf#d9F=Y_}(G;k-f3MJM8_oY$|(F&|fC35h1q=-eDW7$=nbH zp)KK+CY$$(DDRs$Qe^k`_5_|E&KvlF5XseV_ibXB1#TFcLS?yfi=+G4Vu#%}Y9^n_ ze~uL)2C>a|Y1=cLmZCSZfrn;PP&@}uL)J|%#$wT4j5Sb?O;a!rEpP7c*}bl;m*W|L z8Pxv#^hrPHY``$C-XLtgKD+#FK!F6jZ7W99_EoK=Xu+`bIDx%o3a(-G#=RS3O5;Yo zjP*(jZ>IMd3J{(y_kGjly8M7r^DoC00Q(JCwNi;WQ(X+fNUg7WG}GGNsMFZjBk#O( zyXL+o5c#9a&e({>vzO+U)3bAj5+OfM?tvnbzEfmj$%{3?l zp6j~&__kkNI~}%u@6O)@r;ZO-pE$UqNZR#7kJCpKY(78^Ct5t5K#>ToujdAyrt5A! z8a`v8^T$S=9yxZuDgcWw{uB*Evi1Bo)aNx~kK$_^$kV{hMMohO6ff}J>v14Rj# zON0I}aOQKBKjj3N^!4>$%&#k@?F|V%?^B83s1Nea%de5xVc8lsMM-DwG8v4$Qs_9o zg(^K2E5>AfT*ee-qj>NMZ1}ERPBi{Y`9#P?oVz|IF0SYK=~_5ADk>~&GcQq(^8Nd= zIb%kAG~mkp{rk7!!Wc9FHh@Oo1m3&z4L9&$^X0C-(W3SHG``a+ z5N6g+LK&LbFW#?_@&}Mp5i-Qu8Xu^7` zUE4Z%*Np|Miaa2}m%Pu10bK7NRUOV%eFdsIwWPc$6a|N-()-pCn1VcBSB%O7-dKKs z$a?^VChPMAcy7bVASpilc4hZz^g0^y5iXWIo=>H!)Ei7XgM=bDuI+$->Pr+Wv>T`L zd>{8!W>3y399GyBnH_-+X!X3LcS^aAekbMlaO1#bJ*V`K^~G8PoPMfQONAh6?@#nQ zS0o?Li``Bz_>66%AB(ixyT8}tJAp5C=u7_Q zO+Tn1gN(kA&m(Duz$9fl9GQQ56Fxwv-mw{dfwlgs^k}01{>1ScdM%htI5r<*iY?@~ zZi%E8y$5kmbrLP^r`al_+>U>xZQEN<)@}e}|C#E=MDOKdZ(liCy{Xzeldb5dHTCE1 zfR2H$0Zq&-3(ooo1HWuoFk2^{{A*S?eHNEZRBt%)B8RJ!W_73h`jyam;Q9f-QUQoN zV65HT-5IeEo}8Yp18#1%F4|Wo>j9uDiNiwq>8S-6wBe-uTzOVl)M>(YI%gb(ML@7KcKhwsn=XJ-{R0DCX4TQr(E-zz zy#_4ygYWAb+Q^AZ!|QIVga4UO9mjT)j7Ojqe<2XRgjx76G6#ptwe)N^yY-!|nV%Wv zgmTmPc<4S{O&>73NK*DEa%FI?{>`h<4W0swKpP^ES5Ra6#5D}8=5R)CX0g;-KcCpM&s2@_v>9-+1i4n=YdRCs ztw)o8vyNH_5V`;0d&-dh>ihMxRQ)&!n~8KZbfu#Cs0r4O--)2+m*c-VzhyOm6-Kq42;JPF3e%%p~=%+4~f1)=+ z@L>8V%;c_Ml<_=zfzBiMBMJ%m@n-I)SmdP^J~#Qvz@rNeHg@qt#?|3HGqH*TF`Y%q z=22-uXZl%8?7Ez+k(gqyPT%~^j7eHaMBMGuTtHOwQl4cEcE`k7Oe=G1Zjj-Ov~Nwz zV0(+mm*Z5%SDM{9{~_&RyGMWX#kRBiFh=jkj3QMZpwnP)7_FsP{@|k)78Dnw?|V!A zd<-ZyZsY6E-rgRsB>pt6cDLh|p>+O4fCPqIsqEk;q=r_evJOL-_e2)~dWQ zUvz{NAOH8{2VsRwAs=%<=(1r`AAvOi>=l66=3#`yh(9dukkURm)&1@u%mx`9w>E^`H^>}4ChFVTqUY?4F zhY<7vfs&(N?ps-`58rVeD)Qc$v7Tl3)JQAdl7)m3bc{ccf6*GLu0$j^{i^Pf^Ba7$ zw@~PJ(0e4X{ACMz48TSm->Y&O0eFOz_MajllOMdFn3tDw=B>-QMymzBt1`s2 zD}PX*&LfUabB`_F17F^XQb37fXZbo7JBa=*1B0BKsqBEF=|K_w;WsZ4HD_x7UX-Sh z3rQ?Ly-v`@!E6+$0MS5Z@wpv^SJ-v_>jVPZC0S~wc-rr{1iWtB{^$z&7*fv89H8Wk zFLPzDQdv`-O|29&hg4pv!4|@w$lj^$&f{EnZQqXFSJAi10OkQqDW!kcSNY!nA>#8X z4tbcbF z-4tNSe@4lH5O})T!~pJ%Bxs<~OWbU1ZpuhY8vx{%AajBS|6E~RbZpqHM|ns-tI!Lb zish~MD50-_$AsLnT>6*LKZtTMc=M59yYA26zo?^>$QNL${ydrw%zF;2nQ+inoIg4y z#mbL~Oy#h^1~yj?K!%p5y93Zl!$7!WhJ%AEF(I|n>aiP2NVc99o4f`VlA>*yWgB*f z&a0ZD8mqj_V7L2@qY7uMNWk?m{a^ASkN4N-9dH{1hjpz)(FWE@YU~vKDh=ruLP$Sm_n9v>I7ByI=f=Gv<|^&*Tm}kl z26QMgDQpZ7W%WxuWr12J;PzFP;T&GM|elYmmd@v&Qm4TPWoGOCo*ae&*s@`U*=kxpf9o z|J|I&2*|>KC5o5ou8JH@POWDI+%*I?86?n{0!D z8$7(cCYxNWmcM8AnwfT^;C!(4O5|cV`n;WycZVkop-{uol<>dBTD$HbZK4D7cGP6J z`u4t$^Z3=ZpQdTAyrQBRu<-sZHO6N8-hBs#2rl1mvuak0391!O2DgsWpTT5CKz2!l z&SnUDy$p0`XXlFs2bNz}$90hw)Vt+SOg&>UczRNbyUjQnU-2`I0}VS$YE7f^@ak|9 zX?i?_{)cf0+(NVJ&)^m`ZoyA^5`geg@$)Yp1#W^w5Sz&#%#jSiL16yr{M947rA$l- z&9^{Mwn~@f?f<7xePeW8V3IW1Z$1{2=D#ptF*vIA`v|%GNK)w>;#9QfNR3{0XG7-g zttCuLryl6;i!7S;4-idvL?YW zFB8mED=e{6X=z~v&eq_8!Xn8+rk&03!hT4{aL z7&f=TQT>AM%tedCb(kkSFPYTfs56Znd(C7K6azhp?H@;jg$4bi%A!NuC+EbCUg>|w zyNqClk?8FgrBVwL!Ji6riwz*lLYSiRmq=>sYjQ4&4nR>y2q!PY|#wTw}zQB)d zud8h}?>D|qQNqf??hq&?nR2n5%U^F~5Gh7Y<>U@}wqsuxZ&?;QK!y8`hyPgQcJxHYzp%V5^ z+fpg|(Qo_J+zm{r7lHC9Pem^iCuO>hYM5Qt*~fxQYIi!AA+bvsJyZyRJyyuH+E3Vn z{|0SGgzdH^G|!1zre3xAj2CSnoha3v7j*uGFOK+;*5g37n36RF7J9ZOO5j00$03qG zdv&G>Rrj}R!)~M>zHMEhf>eU(r?roj+G*@>DPNOmdaJ_k=H`#cn!*8gP*bfLie$H+ z|K?xm_-c6WQW0b7&VTB%y;76de3p7i_K}e7n`!4gs>(adeRH{ZELEHa^VOR;oDLdY z+~0#33(GofPPu8{@J2gw^BZH682)=;IyFf-NBoZwrZ&!rFW4u1zD?>SMt`LVyQI05 zXTFFb;4^r&7)I-aV0S?K1Dx6HC67yv_#gt&+CH=4GdsVa?9;a~JV=|VxKVxsKtaYE z$pp4dO*`}#hhOY-P;IqiK}`~S@zRfa8D{lFr&$T72!pNYkOgK=+Eaprv4dE7YM z4X1_hq9%r)&WDDK7WM%lSL->(i}(!)Cc z)#XKts1lhjZL^!ldmxoo^4T`GHA~nvHDEm$33n+|@8V#VpZP^iHiA-EMkCBWn8Rt4 z!uB;3LK+535RJ@O{tGsaZN-5BBX z_!S`JU&(Pil<%qap}{tF!Pb=(pSE#Oezx$= zDe#J)jQZ~#H21Co-*ISZ5B(-Y}ytNhM3&PIz}-8gk#-lf9Zs+CUp@ol0@ z$7*4Q0Xh5-+PF9W;Q0pNsm0$JyTjgOO)&9TXdL;qr@lh+b0g+AL;i1a!S}D`ufuBr zclT)5OBYKx=baNiW4D&V%zbc~C?oh#BK+@fV{z(<)clJHH$QA!O*d>_|!vi+>XbQEx$JTEl}sW{`^uV=t?I&uwyl z>xQ735OelctFxbUGoAwc4cTjt$R$B>+&o&+h=2{8NH)twl-x35`~Q;j810O!A{U?- ztZFWUasA!{@LTSu=$&CHrT>k6(CRj1?08${pNZ;y=a4w^b_VWgKped~*!mN5#zK5H zIMdQG;OAA^Babc?@P2>@-B6OH1w^~TmmASK4c;mw_y3$d);rm)==mVw@A(~`;9Y~h zR*q&&^eb$%dF$&!kL7Z)*ml^6`2Nr>0`JM-!aXKg$mP2)ZwUuKNk4ti%EA0DZHtHI zU>*9qg=u)KW>ut4J)fbcAnk%|a7qE+6m=SYW-?VgG|B_U9f9-1i6c7Y?m;DZ|J7Rp zvTO{@ydk$+{)G7{OE$^xnW2!&!=g=a*vC}l+|o9b*PZ=8ZxPpIU%}dXq}RjDU%lV7 zTC3}GrirqJJMhnxEC4{~6t{oH`DaAe2QS7ewnZ;M2NnT)f zdiXbg)~%rJKVlXF_KMJ6Dvbd=VXnJ?Yxp0r5VwJ!@gZ?hthPH*#V=8`S#uUlj0~g< zSj)znLu+vsHE$gWoX#CL45_(%*hk%^#K|8+eMae>IL)Ia+S%}9k3lCgEv)RY{e%7t zd7^c&`i7e}RUtgOal4zg@BdSTkagC&@(Fx5py6G~Jh`E%g_T4x;Kc3vd`kUQDmomd zeA3|~J7%fmNn}!#&~@@-gB3C6=vNZhsj;f}QEz)`lgiGgl)1oJJvk$uZ(JQd9V{Xk z&2U?gRSL~71XhCrnH9gZSbIdygnfP(@c=t*QmTfw9ny^*U!w}nu4Q1NcZw+3if(dI z`J7XB4|u8*1Pph0a;Sg5eK?r-oi_WP(6E`fQ{k;AoD2QwzTev|L=N8^v;B%!5!?*N zfaB1Wy^VZFC__%=F*ZY0QyxV@_ITkZB^X{x5SO=c% zM=l%zmX3%ce1w?JTA`-QWu&YSmnY?`;VO$+%9tz^|Len)|KERT*2%!q4h#;)NKn4Q5_Ok`VrZ4ke7FYA-_dY+gru<; zMURd0fVybNLI*EJ&q85g;qXYqcaSW$RWGS+&$qbr-$eXsI9{&Xtaz||0}@sz*C!{0 zMHbpfP}6+Oje_0XU6+CPB~r_1XlPb&&X}S#IHDX47eR4s3bM(t4-|nsV<5o>$DmPO zLm#X50|Hv!)3erGen?B+z1Mw$0s?&TQt}`PafB_(NWrb^1(O?B0)jW>AyLftX5f7C zI! z_nrsnd<6qB+r^%qa3xNI`b~&F{+9J@&9`9nSMQnKDN{e-90@UCfXx}_d7Y%(qoGbA zF751m@w1rzlcwgJG(`_>@7#20_F;UL~z|3Rxq4Vkq7{uGXo3?F|c zM?Pq_rplGxf)oQIYVpF-9lBN4>uvf&c|}ug%M!Tw? z>`tPE&QcmmyT3cW{02Ow0GGMxKeOsvf6NU*+7NOPIEtQ6z{$E76BDx&U&n0(Y@7M47JULr1H!S&AIZKKiJv=?Hn2VdUv3ISiG+l`z zesgJfuV9~ytL2T?9LVwIgLxGK(@hRn5)kU1QO2S0=`#n>D#*0eBZWGmtZ8{6&0E)j z=BiQZu&WfbXYFc2l0-76io)JTW*C8Vu`MJ0*i!W;OMQ`ODhHhJ>({Sam$>>|2wU|l zuYEv&=K8j~_BG;D0jfW_Nq4vx zur1z@ZPQ0)^#&6uBjLjf^tYI(Xct?S6LiFbSO@O6BS%3nK`_B)XP9CQrk-N?*hx2+<~O}#6} zjP@4fkODC)U^z)|`olW3{Tmt@*gJ+nNUvgReSLhQyE`Wz&h%BR z@(5$+4n8u4I-h;HJVj3?*nh6gs=&*-qGaj#FV-4QRDhh6lr$(EYYSjaqr2ZytZwe>%kt-L%;kRNSXo}6SyI;k;UDvw0X!rY*NnpzA_uySzJ=z+hQ$Bt)q zTQQP>V@#dioW}5=U)2b$8!h4Z(Y~P7$V1c^;k2js%Vp~FQJW_|5lJZN8x00*} z6(8T7+vg>HadB~})Zy(vs-$6YXF*9xNxYFQSvlF+R}i0Y$<4tID{Ao$y_Ec6SX&J; z4OE!$urN6cFa{$yjT_=+CGTj5tPtb!MwQqJUva|@%JQ)=6V)#6l~|-;i;(`Znl0}c z8yka3$?rAvW2^2os#-!WwT~{mvGIcGG2P&1q@gkMu=rrdmaGS!Im!erMz9SF2|@lI z8ako&?53%yNkAd)mxVKyvh;=s=7Agi^h>{qXLAo-k#V0H;@6+TnDl|Wba}66++uv+ z8X!&ta8UF(KuuxorDYr6)6vmcf)u<~FK0mif%%bkBn>SD1?65~L<|DKuY0){0A+nH zQ$03CV@?z#fP5p7v*Lc0V7fMcnXuvd6cI8O(ZoXA^OEXYuJB|D zap;PU=gm1*m;#f2aNj`Be4Vxo+dQ84Wud7sg6IDfEiEnU00c1yYHk4I@G8Ka{f+_#C`TV=M4%o2Lz|tQjP#$O| zv3#;fq04VBshhXfgI`knW?MUWig+gny$8#Rz`q_1Ijf@LxURI6ad0bB_xrTvA?h5S zNb2y+sG@V->l-rnqNL*rHlhd{d74Rb>LvMEY?5E9!!N*xWM*cDKFeW~8^`uA@oDqy zS#Mhha&vQI0@72LT&ahxb8~Z-czg05azz<d5>NxcD_U3^rHCx{XYMS*ue=VM%0RdL@ zUz&`m{$t8FU)2L`4w8qrU3i4B_3nJ@y-gSD-s6Qp|I0f>{Sb^!`XCoFGQ(xJvIIYu zDs9P)`fsX8#VPAQl>$jZt(csLvp zr+idF?=@%5HEdMntwMC#{1;nd&ecOAlw3ooA%>FH>njyRPfxG4lAVVlP&0K_V9{WQ zuo*UqAZX#;`AbXc>e&VKsUyeDA0%XX$qRKy2A1TItGK~J_x&uCc5-skpOS9_uN}X> z!x@B$20&l}WLycI3rW*SF%ykF2}Gb<5Tpm=@6{DnEQDl8q5EI@aYcv9y9l~sCE!^L z^5UHG;_59@X4q(HX*>G*Xpzks0(Y77(!91>!S)f9K1E}h2xIvruFk#Mtm@1!tJ*ZXm3KUrI z>7w|5>R`}NQJKIteMejbDKHhWc7)s}H{l2?oy z?N1$(q9MVcxAf6Tihf-W&!Orf%L5A!GntaTzm6Y{W=F0$gclXk2 z?XbfFj5uXi7|O6l$$IRbZd+VpZ0wEr*x2fY|4yqRpZ%>J`TxqvV!!ow>+bH30>$iE z37wXRChx*ETSbV7jI50vKzl4b#=YZxaDs{>Q%h2-*Y#7$=SwsU3_I#P#-jE^bBR0? z_GEc0Q10cRrYZ`PuyC-j==hw|IiZ!P6l4I@p0ZyFDX$t;IYYCLo{30FeS}SS<%Z=* zubfuevr{_&^P{XRU>sg+`3pZgf4jFJ_goDkJH{QEc{Ye{yJMZ1*xx2!BX-kxt=`|< z$U7LMZ?hWYPFt3JW=kdllYtLrOB#7xOSTdI9!HZCy7gHi&y^lQ;(I1M*WU;p^x^w! zdUQp%AIc+<;F@kFwOR^F$_@IQ@te?Iqua08cOK^h{5a{x)$=5KDRU~(rYyO;eBw&rVJOI(zoQt0)ez{&J-1)R^lB0LOHnKiP#k^JbrsJdWX$Dq<$ z@s4}?KmX~-9t{_K4^HM@S#k#8ILi$^#N_ZUjR8SBh zxtWZOevaUs7dIS)d1%e`DMwky$QbZmZm_MqpuJg= z2@9?baZi;<-ymZ}O4=k+jse`m(MaoCSs}psKg7fQ!ejor`ClsnpxY&L$z{xeA#Lub z8_T_y4tkVeG3>MmF?!kMAf0XFCM5m=kVG7c)xK0`BtMj>JkTa0iLygv2*Q!+mJH0C zk3HB=f(YRw2l&v4n@2Q(5UbKnSE>Qw50{(Ezif$rNJYC`bOoU)k`FOZ`Ga$j(bPQp z%YfJDsfe%6DnxSlF{3$g|5#krH2D$DJwN$#cM|LLWfVybDqB5ms^=wnn^r}^H;(Gy zrWWW~-|`ls1;-r`dD+(aXlQ;@1=2y211sVj3nLjugcK&5Qsnbv%asO$Fx${u7?q2Y zZ}MOn20bF3B-9I+Oj_|6{5{Y{Hf7CWU7EA~3esEay+4lY>Gj#ik?u6HW#f8$eRq{+ zQ=PtR2a&ig)4e;a0E@&Sk1ZoVo@05f{7irZx@E$jqZ z@i<3>hTiq5SvC!uox5~MDVHQejyRI#-)vpnZ|tvof!vm*?oZexsiJMTgdePYa>yT- zoDsc}c~FrJ^rkGB!+vQYS51ywx5`!a?oSXg)6-jiMo~yZe~~lqH>-KEaB)?OZ;d_P z>7L8-lyb*cuLg@@F|mkE*3{9&S}4otV(^7S3q6n%Uss{c`xriTzAtCCkN9gH|GzH>S~e%N<5@ub_;n46E3-X#zg z{@DIB?(aB%>Dc`uLdwCxtRs@VDP4z8#)|(@>f$&I{hdTHTUpFH5Fp(6eGBWKm>2g| zdEnl9QLo8G`|_yL@YX`Za|fF8W+_~oPjDsil_ z41#2ls;6C#m${JZKTVkd6liwzAM)&4#T3Nf5Ir&JtSWu6_pI6n@r^pRJ2GMNRz<2! zG0DOxS;Q1U{NHys6HI*o>6M4pdNnD!QuJ7T#FGs%9}yRp0u!MEZl>}bpYPu;lhgsn z?E6xM{hrRYx3>$7t~9U;dyw@d#ochjB;MzFM<$cM%htbP9XaLb;4!P5X|hWDfx2-C zy61%xd&Hs{>tC0bmuG;VVMZzNr%9C&zdra?SHESH){Hi-tlTfgl8jDoDx(c99R?84 z={x>4{|_;5%CWuNIF81i%zrppe%n!ACCNkoRm3hFj>~goB)XJrqlVR^rHabr0bm4+ zb%}~+R#47;(Pp<}U(hjrGs|)==&W~ z;d%DFMMbwE4yKeLUX~%YNf`v@bw(9!tOBo|w#D21t+`U)Wk*r)W!)}|h7^<_w0&@S zfPbb#D`>^)+@S?Cr=I1hk0)p4L!ihGbhL{!^inNvN?>*Bk9*+V>Pq+x5fLAmDXI+$mOlhj9rYoIi1Lm*5V?clcVb16Xk%^dWg~I~?EtQvuKRkB zn|xmX&Q3B7p8rpoJJAqs#r1YaW`APLmY-a|V*rukhY?^&r^%VQ6Ar@sc)L~4r3~SV ztd2|W4qU=&aWZJ1`-ka&?CR$B2??E~VdA`{ojQA~P%rahDIp=@16+gtl(9BtOYZnx z!}EV&W^s*dxh2dwY(>hdR@t4lhq{sJLU^u_L2%0JS@o`16q&aF7@twoo~(<(%xlm2 zE>Gpsk1kJEG$fu?-Vk%VRe8W7ul28EV;SU1VkpOoq)%(Au$Hy3V5H%mw1Yn`BZJJ& zz`!8vps5~v+!XS~lgbY_yqaJZ zRvjT4l8hO|1|nRk%O$mKWYc2f3;cY1D-4u~N6+GAwlIGu_bz6L{Hj@hW`z*5v`}pD zk(cb4%0Wl%Np?O$w@{#_D-LP2F_H!M4<27E*s=ARQ{LOKp5we>MK{)otG8Uofm!9LBajQm* zDb*&US1UEP=)>w0-bjs-30$3raNU|_Yr}A`pGSaQY)rxU z(jq|^r*%fG%|03UwL5LUHLLJi^%~Mwp(jFb@}_LfR>&M>OH8$*rtX$}+s?Qk)AZ9* z#DDLBq#f-`d#eExLNDr3Sypy9-%k`$e(*%KK^*QN{*XZ0ztwAJUTR8S<{WuIuj?jzuAIl9H0P-%}Mt#W8wqLjFc2lWXvEfmNT+hnAwq zS)4zCLh;0)4B2*UTm@WO^kFW0obQZ3vq%DBSvEW4cnT^)gz^BHs-xQ1hEa#KFvh{A zW}xy7{AaFx&7M%%S0hiHyU4kA;huDbGM^csTd}?tRqr4vNsX^NXfZ304*a|_t|R)% zzJrJrsO6l6s^RFHKD|b#6{pXQYbs>3E^hO6k8gw@=~4d^pJh9*Z5u1OzG@wM*qZ!L zTL#*WzGhQ)d97GZmD%B9|IXi%|Ad(?FS1AB`vQpu1bci^hFsn1k%2;7N9wdn^k-$+ zjF)DDOY@Egda=}a6iWGrxWTQc#k$8D{iA(ON?Dks?xD!`YTVkK>sTG8M1>pr6?l8c zyA@uDI-67WKWsC->B1uuaaB9xl;%f?-KCIobt*jnEyrYIO{S&Y{)48YcafWE-9yjL zsHVSR$}aW6xM3?|tRSuBh=#P++uUo2Ur_l!ha4OcIgy5khnGT53_84Tcrn>&QHgR`;|eE(yHaY8Jl}UF z_nfEh>4T8R`yTr}yuQNEM8zwA`28@`_wJ6V`&Vg`GFrT{9dD%5&fMEq>yCX6Oe1F1 zUN{eavL?CEs1*zGY{QUgtAWQ-@3jC<>a7HQn$=a_93JR-;M(T)6xTptM%na*e;M7dr zG_O`>DDOv{>*d4aoHoMR=hyBT`fTT+L?eE@ z8}3ga-Ht^3mWoX3m44OC-9+H#?iS(fittBv4QOpjvK=gop%(Yh1H3=OzCv>vQx|5u z<#r}*c3;vw!ij97j<1!8N$%3bgyYb!(vOtd2S}kvD8f<6!t=AU*Nbzo_U7h=e}){C zWuNZ)G}Iystz}fic^7!CyN8e! zuUwxUBb$&bmSVQ;m%;C5Tdz!CXJG;;PhcX4cB=R}`kD&Xs&g&$ zrwBd_toQ1&j{!kiDgz(g-0C@jE6&fpikP)Ln|5{AwaH&=PV`Y4YNJ{lVxk1i@EBYD zp_x8xMw>fd6L-pFU&cO}Rguc+K>AOBpy*d+>os+i3AhnWAUe zcevplB;(J{xjyRHTPSEZcx1S-W4XXK5XKi1m_jP<^AEVpj*4oVbvvq;CB;jWphotv z@w&g6r{4Ye0?OBiM}@B?A5pgEyN6btb+7e5?np`iJ#|goV!vDt`v4YLhh41h_P&JbBjLN5z7BLu27bp-a`D;V833f zT;%*3>-~Rut4bUA=tBaKwP+v%iYW{xp*s@>EG=+*|NeP@Xw-3qNK-b2Br{)>P!FFG z48_?=JS2pmvz{xOji69)(aehgw;b_nrvc0V=11)4GmNO}92rE1nh#ud3z3mf6fYMw G`0_t~Oa}h| diff --git a/rtc-turn/CHANGELOG.md b/rtc-turn/CHANGELOG.md index df88930..a84239b 100644 --- a/rtc-turn/CHANGELOG.md +++ b/rtc-turn/CHANGELOG.md @@ -1,27 +1,3 @@ -# webrtc-turn changelog +# rtc-turn changelog ## Unreleased - -* [#330 Fix the problem that the UDP port of the server relay is not released](https://github.com/webrtc-rs/webrtc/pull/330) by [@clia](https://github.com/clia). -* Added `alloc_close_notify` config parameter to `ServerConfig` and `Allocation`, to receive notify on allocation close event, with metrics data. - -## v0.6.1 - -* Added `delete_allocations_by_username` method on `Server`. This method provides possibility to manually delete allocation [#263](https://github.com/webrtc-rs/webrtc/pull/263) by [@logist322](https://github.com/logist322). -* Added `get_allocations_info` method on `Server`. This method provides possibility to get information about allocations [#288](https://github.com/webrtc-rs/webrtc/pull/288) by [@logist322](https://github.com/logist322). -* Increased minimum support rust version to `1.60.0`. -* Increased required `webrtc-util` version to `0.7.0`. - - -## v0.6.0 - -* [#15 update deps + loosen some requirements](https://github.com/webrtc-rs/turn/pull/15) by [@melekes](https://github.com/melekes). -* [#11 Fixed spelling of convenience](https://github.com/webrtc-rs/turn/pull/11) by [@Charles-Schleich ](https://github.com/Charles-Schleich). -* Increase min version of `log` dependency to `0.4.16`. [#250 Fix log at ^0.4.16 to make tests compile](https://github.com/webrtc-rs/webrtc/pull/250) by [@k0nserv](https://github.com/k0nserv). -* [#246 Fix warnings on windows](https://github.com/webrtc-rs/webrtc/pull/246) by [@https://github.com/xnorpx](https://github.com/xnorpx). - - -## Prior to 0.6.0 - -Before 0.6.0 there was no changelog, previous changes are sometimes, but not always, available in the [GitHub Releases](https://github.com/webrtc-rs/turn/releases). - diff --git a/rtc-turn/README.md b/rtc-turn/README.md index 15e5853..4efdbf2 100644 --- a/rtc-turn/README.md +++ b/rtc-turn/README.md @@ -1,22 +1,22 @@

- WebRTC.rs + WebRTC.rs

- - + + - - + + - - + + - - + + - - + + License: MIT/Apache 2.0 @@ -26,5 +26,5 @@

- A pure Rust implementation of TURN. Rewrite Pion TURN in Rust + RTC TURN Protocol in Rust With Sans-IO

diff --git a/rtc-turn/doc/webrtc.rs.png b/rtc-turn/doc/webrtc.rs.png deleted file mode 100644 index 7bf0dda2a869e19f110bc581a3d20f9609982824..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33276 zcmb4qgL7ri^Y*>Tjm?d1I~&`!ZQHhO+t}FV#!hyV?8dg8{pItmdjEj8ZcW{)o}N>4 zx}T@J&zwF{it-W&usE;)002QsQdAiL01Ey$pdr5`Gl^x@001?ix2mSAvXKXoqqBp# zm8}_(tCyo0k(sBJIRN0fUYBc?uFIKR_Rj>P7X%1*;=-D%!e739>vp6Rv;H}K%AjN% z%DcHW3_g8n$P~)+@55m2gYff&+%v=3t}J8sh4Nu}Z#(Bu;NSg|$Mwm_$ETD)A6$R` zrT-_CFeWVkg zB7gp^)W4@cMDlL#-2Aql!*4&XKC#q4d>8(88yHBYX{~4BYQ>HRdws?~;s^PC;=ZrF z@MNC&nO~*t|CJFC9}0bc^c3jx{&xoY;Fu8Ta|y`z`-hZ5IR51JwxpYWg?BTv^+~kf zU+~U3+Q0eBKc4FIGbGpeb!zWDbH96|_vp@*6vMp5m-JN5{n-io@AoWcA41yqs`reS zzCM9Gff=NJ&D)ENf_JT=h@aKE-;{qDh2qY>bqyIuQs-;F;Os>|>f5NBB*Z)zS>01^ zYHIb`#ii-od{1Z8dgn^NzTDXQP`BLlg8GXC{teD|pYUHtz{Bvr2||ynMRbTQ|5=Q^ z=xCepqO_&09vLaG{)E+xpA+id_QWP z9NhvK2hg3arVWD|!TLZ`z``o#RpiX^F)##i0{YPj*wEZP^F-#Xv}0>qrKdwy_MWFP zJelPwLo~RgI!!aXpNyEaWwP(f%aKJ%^cA@-6YQKBJ_MuEG@Yr+F@pB0HC2b&)^&A{ z+}W+m&a`!HtKPVL?%?1qjJ=PmK7^!QgK>~+I6VQ^ld((Y*Pb;L5qKx6~E+?yuMxn%(Y8Gwqw+8y6n$x~*5$p9gdQ3|EFc zR(5r$dw+cDvg^CGes+i==bF}G(_*R^j@GCL2F7c%ZV5{((N?hE>1C#qhD>YYwuh+4 zlFL$#_zustzL^|+mbkfeen^~Q{`)h@MgQmD*d$l_<&U#R&YHGSm$SNGlyK}7e}D4( z`>#7TA|$OpC-leXjGvT8K=l!I%`50^T(C;VbM3Edft*R=r%h5Q?HmeQ5X7YqDrRJPoft#UYad_=m;>;ETqfA_uXdOBL=cu9JB{E$F-gVVoF;&dO{;C%YrVp;) zPB%dn6N3!zCBJBkTQj+mU=z{7=x@357Pr4`<#9bRw2v9yJb~bOJCaGLgSvtI^a~_; zpoH`UQ$Z#!S}p5*0>8HtXU>yJBc!OoU~3@2sPY0S6Ez{~~cM>p^!14V=!w?Tru|)Yb2A zoA?OH(gHH40Qaf55cJNXMB~19*UoD0a=M*ieUYlZU$J{cuiavQpjHQ3cCNm*_Mj4F zAV%>@DdeP$f?EUFi)kerkdQP#1R&gJ?m}l-;?Cuz^S*<~1YbTUR2&047A&ckI3a6Z|`JmmU_0Sj^OWAk%Bfgv5<6}c+rs{BbNkRrL zW9lA7Q~acKKAdKrNwqfcVXV$j0*L==bbQU4);_34>|}{ISs^ z+=QBD3xuJ$)K6C_qwdX+oLQ3*?h>=r*(~IZKf1I!fp>_CQ}=6Dv7UEMw7~3*G^+Uh z$50BRUd=$*dXF?OJJY|x9KDq5km0O@Ey>-@bUeE%!Pq=b0*c7)??4D*;@24J3z;n< zYTe1g49U2c2|MDpA36}RP+iZ<*G!X}1hw=%i`chjp`y1y5jK(Qg9eC{TdwM{bhz+!tMACo{i?5NK&}&s@cJvJrZ+Kfh+43lw$j^md$W9Z;2Rf9CB(qE4BX z%M+P0{Bl(`VAjXF8*^6T#fr*;ak`#P*x1Y`JDwzZo7w=ktR0hu6hyw|Yc6nvSu@K+ z)}y2AI9ao$+gFZcNl6@WuYp|bw=1=8Tc)JqBU0x_F}FGjRNY2xT=OiH4qtJib)=;u z3g^^xq)ZtPo8?2}&p#_=25N}M!W)~SB$C~#w}M|HtQwV6hY*a3Q+I$nUYCmm&z(%} zC}UWop&a}(mc}%Kw-^DL$5= zj0rRWUbHDV7I*@9TLBj17SG?Elr@7fzA^|P;HA-V7#1a^z`Lm`gK-DN3(A@&yYeAYLAXPyCym-# znC|}GLqjKn_PV?n7IH?XVBVwRuVyw~PY~;K)e&DLqR!$phbW$z zMjMo^CN*M24|5godW4g&06{xOAY%-S9t7FL@>7h=1M>cII1uC! zLj+HWyX6D5f;oor3JJQ5go@{dgjgCtFNIhGSVM*(HhNmD;FA?o3MgyX;mvNFzzpf+ z*?LW^;>a5!fv_c%6@INu2HQSi9~;f$ON3)uQ+wcF17jm-Lv4u7aP|g%SrVLL-IhU1 zR)-hO*ep)rTekEB-a(~)Xpc|%Yz8WfWTh1PDHhzT7 z(?FD2aA7cysf{O@jP3g3l7i1b*8yhBCrXZ@>tJ2pZ_5Zq1f~7Ak0HusxMdS1MYX@^!uE;B1M#SUi(2tHm?5FvyTS8B7Bbk|_uT-*aW!-B|Iv!Qg6spzp-zTu;$Zp8G6E&8w695FWfQWeLK zsN4noQ13EnuxpKoySdSaOWy?%%ZEE(2;c>UCn4e@Fm~1ejlBpK6Rp&Y7kgH5Oiq@0 z-(EAV7*=@CrP3$lb5->3m9|!6x{hAhCYTp2f1#ish$FO)|wL17Yh> zvb~6XZZsF$AR--Jafn;yIkfF@?9ma=?UoC6swl-}bx8HXgolyZ=L?n($Pvhly2j{D z!k^x;Vgo|OXGm`MD&*`PlbST>no0UN+r*^|8EW-tw!~Sp!ru!Or7Y0ljYnvVF)W&i zbg^LdI(TT-Y`m+GbVwUsPuEDi3mf?;OViv7S+bdI=jm4BAq;h-p2CP*Pfg36B z=PyY|QTSECa9}llrGo;VomOktjb%OQ3cxx6x^={a*lO1_ME5-Dh?GL zmQJdV)c5>OHnh@0GJIfT-LP+C4;k|x7UMxET*`SbNh-B;(WHE1egmN z51Fd@imCHWJdFZLSpvb8sq>1=NFh zo==R?!9n2cE7X|AzXKkIFbN9mqIxr;K~4A>!46~uo;GIgS!Xlk+NPb{%jw57tYr&@ z@nU^OKZlGY@&J{h*TI-@dqDbF*!mcj@~w`ku8S2B)YPO>6XZHVpg=fS0P~9Y2vO8~ zC+VqqC+(?b$nG2Y8}LC@(W0A4;u-NXrP3=d!GngYTx@H!F$ znHrA(L0Yua$O@pMsi2lVg*xOmFrDv&$*QvXDf+S#(BA5a3msN8*vu6@vj3<0Iq;;=@2Er@_#Cnv=$f9yUVP2kYb)Rl zpbm;@pS_!qAEfk|EgXWfb}&%hLO77{f|>U1ZCMps)CCeVlI|<36F<=Q7W6=+_}abCI{r zNr)lBDkWrWR#PVW@5o^_Sr`j1eJ(?iu1(Z|s-BJ$gh+JV)5)71X3us_E=I-{xKQZm4<%xH({H{ap>uIbCEEML&P9)FlP)vQ10@j!);yM$ zT@uS7!$OD&!{L=8E^66*87QS&RUn&?l?t0caI|K2N)$a%0R4m04iN157k%~*w0+45 z`W9Fd3%BB=fX#nv*cfb=p|`mEBK3=^l+=n@Rhj4|tp`sr)L-&84;Nl7K?IB*3&wDH z)?d4NavTZO{)YeDayVt2;ZL~5I*c%pnDTkENRB@*vv*lZ=A#AB@V9^;yJ@hUGmfCt zK62FjYv?%sE*}~^v?+$5nlFioC%k!!d2%>3H@NG-L=!Y606%lUUa3`-2pz87dK|w@ zP4zB&5q3Lh{LQ$K(QDe6DNpouXD6yT#Qje-DiL0T=k%Gd9GYs>`IDv+9lG*F$uct` zJTDO1&x))R3w7y;n-irj^&jnpAX&$*eIQT@= zu(EeL;V<3H{1u7Ot|670B>Z1Al0rPO$a`Md*DFDZp(7e30We~+7vfa1x2r}^G8reh z07e2fqniB|U zM8?6`G&%s~bT~46m$;jna?=$5nV|7(*ipL?k$tF&*>)wh$o&`r4qH&b7AzUe(Fo?J zU0}8>*l*;7>g;Vwu{;wm3| z>QFbLG1Ne9Ea6LY0Qz>Sbg2c?d-%dpma1*(R`bn@Y(CYBuv*HR zw1aF#?}h1^7Vn&wc^?dYPbUObl3}NIXaMim4?RejWP)XZVPP~bXY|mr$;xVb<8ni| zOc#@+#56hPAg7@ML73_~t`;@2$#i@XM{DwV-cZ<{%Z0thDpq2B^?PPlME@?U`q-m1Q=>%!QTZ;O3z((Z)ki z7kbQFwJalo&jY3+Mqs#5<#f~c!|n&9RS|yyiA^FSEltdY#J}GP#)!g+hAv7_D1`Op zfMOb@mB~(NiHfumqyN#L&SM$Um!mr}I6`!3%|xFvMa8=8vM@A`?wdZX^B`|YysZGB zkYJUE{g@O~Td96dlSZPi<+;+2;Hb7;w=A$$A(vW5UY>p`B3F-Ss6C|8aPC7x``co>t zU^T1*dLn-`qFNb;h}jxfgPNrw>+{BcJVEt zIVl@hB+=6?i?XNz87R&VEWvSue<7CL{ z2oG!vDCGUU$lDkZq01t_h(h9rd7Yft*h}L<67?&#Jc45Y1g_aSnc*B)#n=}mv7Mfu zN|VDJHHPzspa}U6JL{#8Z;0hkO#_VED$3R3G)&8t2u)>}8t`x`VPvXEbTMG}jgHDl z_SR3TJl`ir&qhk}WL5QuW^g(zx(K6$g_)@8p(RS>yg)1XrGl{DLXok+ zp&66PD?sXL(QekmJUyk3!irEZ7ldrp(ZMRtTGP7 znWi%=FtjctrWggEZR@=0>*dwxO%X9H)NgvOWY8DZ!>-chZgf7Oj*=%}_+gu>TFC<= zM}fk>G>GuHaix3_vDh9eR&TvKR$57dg_2EMt+$8Kh|%S>J{h`MRjvQK4;%rhja z%<~EnT4wpFM|QiP_HMsk{&mm|7cP(x)1MYIU9|dZnM@Q6@#5z;Q0-YkQDI;L961X_ z7HLemmqJ_1ZXG&z=r^E>USAcH9tmy8m|Bq!?plBUp-NscM3jiQ8RU0~MFJw4EZAoj zbcM!6h#JX3>44b$KtBoB##rxn_;A`P#t#~5(N=Ty*oII+>a)oIEc{$)2XVA(a0U<5 zoVMIqhB)Y~>Z`fPQk>>sNnnqQF&GdbtrW{eQ|W~tiuvx-V~CF@nxx~Y9>t($W{0+SObuMthm)2pE5H~fYOmHS2~z#-)mLYLy6G|l)^mnZq6hmRSn*JC1p%|20L;jz^yHOv)$aQP%$ zmflFf~79JvwG0vd)A$Un0nGx}|%%fqplB?S5p0lBsBRND~#9 zB98MK7);XA6y0t}t}NSAF!Hgjs2VUP{w;(TO0j@u$TnhP#G2+AW)?~ZI5DcV z)c{Nhymi57iyJz=ri4BzdS}n_t-6D{tFJG_VUG!h1x0a$oHkUdz5GH~oXHv!<-Mo26 zEvA{>8BrXS<$qDYx&|@Tc3XhtsxbjQGcb~QTA;_0DsD|K8>U(%n$R>z#uEOQ0OO@anz${U!&evo>1eCR)Qi;Lm z<*G@q#=BFxv_%KV=fC?a1Hs({xo)%q-a>c}l{QZ4^}3zc57qq*lbOR#pJvMucMY9Rnl6%mDP-yTzKi{*YC@g)CR2Jb)4rzzEgFWkUzen1 zMO$qSJfv6Rjfut|1NZG{EJ#+GzsE;SCh(E*G-fdKdxBT32 z*k(nmqP@G=Wz)mpA2j;rx4$m z#TS3W+lF>^-fozQS)u*m?KA_C6Gg^GGQCiE%=2>^RPaT9-ZOl?;cKg4kg>bA0k5O1 zja_d-ZmLxwAB#fEgUgbN8}u;Fj0UyESY|<@%tjZy{ch9yR1`h!INw}fJpIrOM795! z1u;MY=xK7hZV<_Fvt^)A?}B@zLLCDKuji-gRZuK+=Y3W$>-k70nr&F>0a*u1~gyzPZqg_7?Bp={YZX(h}sTFc5WDDJxt6Q8HA z{|@|c?eSJjKw}ws_@m~7?NJ2ZN<4?;l~@xZ$Y1TCb`QR#E4oDsKnbkwzVJ3!YK0|T zVRYq)ong5#4P8`|;7-v5=g28>!X@LW)WdclA@Iusvp_$z} z{i09t)xz|_!KN-LW*lCY)rza`nQ+l1Ey;c*7RkRa>Pu-J=O`el=q+SmPhn@7dgfV zrZRbSwh!xVvDOO#kCOs^z`xaCzz!x^G{D`GwoqBU-W-lBqOPA<;i02uhN*B7@PmaI zbfj^R8USXsoiblQhqQ=mv1g=nrAnQawu}w?Qwu%nf+9~eSlM1;pWqk%*02uJ2M6w1~H-zq315?xDlDqFk&_Co^xyHyovAAU! zQupRV_9qZn(5=i{v*x8nzE{y-&Un~XtrV?j^{HmaJT}H-F5`FwI!z|UYH`x<7+)3V z@UfG;gKX zW0(t&F_0s|)@JzT;a{OKDg~UN(hEvD2kI>+D~Vu< z75lpYi<{EQZSUD(56cI8b zvHa@&B6;w%a8%+c{gy{8!!{+$N?mSe>8ix`SE+ciUu1N5 zcBFbr&P*fk3P~gaSiC;{crW{V`uk!mHnNNOeoFyNXqUCiYIyqQ)uO)wyrHtJsGh6V z45o(N6BFrBA+PmzlxqiJeuRFuZNY5zsVDicXyJ$o*sda_yF15yapw?j7woa9|NZLL z4+z0rCYW`zRAI?^ZDFGmqG*;k^L;#Nl?w13CRyCEpA!)Fpj3ZWaOm2hG;+bLU%^6= zcB_WAZm{x!8ae{pK>9tw*_x;_>7_LIrBhK!vC%VMMP(jQgO>|~7% zEDuXXq}ZQGo%7PX%SKKAAzzy%sb&~2)jXIOP%BQJI(hGaF~0fcY40)$g(wOtqHm5~ zKa5C3&tnb2Mrfp_Biez3+f(oGB9$rr;{AHJ(5@+$(lI3c~W=QgPM94a*70RI#EewwS^co*l|{x|IDP*6IqKm8W?V zW}8Bbi);zqyL=VHJpY;8sxeg)FYo)pjVlV-p!`{wlpl}`cLeUUKD*!0Q1tljk zbv8L!Ke@{!@2`C~ZYrsmSAM|RfG(nRde&o5{6tB}3Qe@uSyvfTm99Q{PVPYvT_!i* z`3|cM${k(HQ>XT##JL+vv?F_GjeXw&Xmw#$#EJ+8SlGDJcAB&`*_9>?pd>>iU&CNz z+v7JX8{`6aMxi@m7tL1XSg?4`V-V6~-aY92gl- zusI&&P_p0FDT;iwk^L`94_gGz1juy87}+R=q7waP$DZmGxF3?%A4w}DL=pZ|1Bu@- zq9+nkV+H(gPw5O}UkG&ScI7@2RV*?bHn&NrhvqM=95N37P+h@GI^7{K8FfVXAAzKm zd49L=WdSMqB)pgESwXv%V51{D88If1=zz`OM=rq%mUwFA@2Hn?w|)cxy<#Y&I6q&>%bg7zJ=|1__bkL zIScrkD>2Fq=A9i3SBSk(EsuZS+_iMP3V!?re)Ua;T8W4#N{NX4zgEew2FYB%BtFSu zLA+4|6&W>c{Bxq+#3F7jWDKWe8uTLJN(^l`rp|k~Y&J4#hWKEc!NG*l>X4Y`dc^u* zqG#al{&DFs3Hc`@eM{ucb_e0rCEw*=pm6UrTa69gyz7Q6`K~cVHw~o0LI^*IDWqYV z&O|;r`5MpQ>H6k@VXV1l?t^Q{de%5lfh^xF+zQPBS;1i)^2l!&ns$=rhU+F%>KmE= ze%InY=PX19L_Rk2QkB;(bff06VOfaQ!g6FqWJz_oN?)Q?)1+5SvwD5gD&Gs72$!E( z))`ww(f~<1kx*zbjWpG;c&vIJIvn+Sg3oh=Zoeo)m@YY!GhHDVLem-4zmTmz+AkAP z=E_uvAbq?e6A<(zSX}m=FCmZo9_U&CT*G_ApbDI|pmc3r`yTpu3zDIJBfAMo_Yx4I z5Nd=k?Wcl?)dAtXmfhR>==2IGt*Y5aaCC%@#ia82v-jsuUhjub`N|fO zZmx5FJ&xeSR|hMkv5bT$;NO40!rqFMFUi-zvX;wNv+LS_11L$WH6BMdd(GWsPAY8C$HlG(5 zlHy1Mh>_sP;K1l$X_Q7o@Twxp96=(Y(L$_~#KioW%fDNMFiDA~%~Bi_=ZAfB!zI7- z@;Y4(H|KIUW+B3aixjEQVgJAWBtlt&ii@@2;&=;*kqd(ekpassLCA&}iN+!52rRXU zmoWeCLz^d^VaWqwGj=>GuYi2yp@228y1-RILu~mBvh7F&M40bnM*WnwCqSvm#V^HZ z8Vl0p)OneZKGfG_T3?J46?G!@A#ot?G_n_5X$@tOB3NZ5dYf<|_T@JwU11HNHU{Q6 ztZixo8Gau&H1;VBbt-@+ch>uu!mu=uSWpfh^MZ8H1NZvZae%7)T49*N;?i>aOvt++ zXwI%WHyqx-aPgItwO?DIqB*Uh-O&RMZ!R;^f$=9Zbt08kQPzLWbddQ!L3nw;}xhj8XGF0>TzgX zXAb%Ya9Lxu@*38K2*4dK65kYV4MuyfL~Wq5t6`;N*v;lCt|crM2#cS{d5RmRy{eg& zMllR~v0T{@4Zu)~Mfm%rccN5S0O>#_Qwgo86lNQ^0a2@zUWtR>BJ>=GTq0XUA}F@f z(_2nOtD5)1?x~a|Bo-K59rbCCe%;+9n#K`k2UdRt{+9Nibt^YH*QO?6)jr|bRM9KH z7M4i_hyxcUQM(4f*sj2%CedlYR8?n1d_=W`I6Wn?>Zc1qib^o=@P7yVzLc!R`ATd5 zCwU&IL$#)rIgaMQ9jN?Isi-*a^i@~&(QeJx9#&(A^ZF^+rP4RRdw=V%W11q*MAg^c znLR}m$o;#@ZYZFY%>Sbgk?p*MmQcUsan1j(Dg>=IxO}Jd{Vj`HH%PKF4g4t7+v+4M z#-eCev4KYA>-KjRS~6}^SH#nHIA&`k(VKHh^?TXYbpwLtlP@+ zb)|jChy`^(7l|zpIHb`|Niqd`1e|R|I^r(S&)|bVGAO17iBM-zEiD*BatW^mx5gWy zYve`i>4#sFT2Gf5Nx=}`!E=QgzE#4oi8y0ym*vZ+?Ijdq;;=7V6FP83rv9^2({|^) zf#e3@-_999V9U`2>q+`UwE??DzjK{ZQvqH1S>^N+o$1ssfne3e(EivEIx47=V9CfM zK!l(}$zZht@iJxbI72q;k{!3K1J*gUXa1QWNqaE+$+x$T*h80X7nIq8(+Mgd9icL; zdDf*63yi6yT1~Wvxpm`~*2JG!66PNwRT#;Km3fP_=VqZqSm1+}p5OMc+G5hyxPR_h zJGV>vX^EpmjafWj$3YXz@iD(uS}|$BZow}JnrFKcX#qn|i!}8QWh3HcpdN{yF$R^E znMz$m7~+t5nRiFku%a>g-=UP)p+S5}zTy;=W^7kemN?ZF6`%%F^HJ9W`V<)A0Ks`J z1+l5eN7|K}EHB|_Twyykb$RRJ1)u`=u9TfbO$@(yC0JlZpb1NK!hwCgvVsbG5Zs-) zEFb(WzHOV)aSI&%6lH^KzYLT+i6uxkL6vm8Y=BTmhPP5F9BWWfMWcN;&JaG>h$UKU zpGn1)RE5t712`00`Ns5XSCBt6ejJJA18nNy4Q)Uh6ruRCE;Gcc@GN{olkyC-WOubP z69E0#9aX|EYrCoai?Y4^4De+=0!Qi+c4GCjNqxgpHzW*R68w%TaPSsp85v~mncA(4 zWqtC>flK_XE6xg{Rfw9!Q$aCowZ6Tyj&nHV&_EFgY#HE|=UKxx^vg%4`HTV6-Wz0> zM-~9k|03T#2VzC0DQ%X38rIpo+ONB}Iv=LCNq2o~00@U8Sy=nr)!NP|TL>P1?2 z|7t;jtRF`sr0mn5uJ5oY*e3?%n9|Lp0=jTj%EqRTk%FS?eQ}4njrHfF1~5fiwI#>{ zZLSN+3FHZ1npT|`GPO~I(y*+GBTxm~QTpTfpR?7037xNXnc&tMzdGkMNKuvpIXo8| zf>$ShLNffRQiPl6I$dTw?gRVoRs!W8G!-ax>B#f#jPu9*9VHMK*`7~m8lW3N=|($$ z(b~q)|2c*`$YNz2iz=vL|M&_?FXUX&y}7tWKScYEQzb|S){NT~Dv|%ZQfZj+bh?8% zEDcF^XV!Aoo?Bf3c+ENt?wQN8xAJ%%koMA~-j7Gt`7=Esa!pnlOmDeL*0*ENTF(&J z$r7z34bY3qT2M)h^=RLiyuTTr>UPF#)+6$O$#YH7-mFI*K_cqz+mNF{h2~GExKsx_ zhMi_Y0O`A|MWihjnw9CDks)6}{)Wie6RMMTc3Bvtzq`Upq;p$aFnXFO;Nq)>$d24u zB!H{mHxiz|s|H-!s-@UidoO*TPl5c*_r!%&*F}oK7LivkOP?8rahQOUlG3bGKV7NQ zIdOP`&FFJEN~(|_jzZJ?u^uTg;F0LEh~K)4$1x;I`Kbg}$$5x(LvgmtK_;$2;~tnX zwlwz2i$)-;XRxM|o|l>`YHm&uhr>?unA!jN8lz+18J0q+&}6s4vEJ@raNby52v&A zIgiI9{%^0(QiqdC-@nf{l7vQ0y6If5l;H@ZlyKr)jFLc zg18!Ok)k>n-}NpP^yd~Hgy@boz%18p90g{VvWmZSd${cRrr;XH?BpZ~2S+;GHwN^V z-WBVE<~e@aYps6&k6(=@5}#W~a|K7gEeh!GH=OpyZsr93xshIM^%nraArrG-xB4gv zeXoTYlZ>UMVH+D8ODih6$H1TZAhqit6xt_b858LeePGnVG!NL>54^TM!PeeE*&F-& z^&*H@T@l&cG|lepBYqbH@}ZFPOc{gXYmhc zixSje>9 zDw=LpM~L>ya@=!SdHL;0MZxVw`xYkGPp8+GyOaYcC@3_n<9FT`O8H!>d#x`=3Vht7 z5eB?7f4P3GfOQ!sn5Rwvpr59r$2ie&2D_cptsUZ6&b4*-T3(U(Z7FRPJG^t zVT_E7G#m&7#^Q3uJM_JX2h47-p!>g^!Gp={Fk!v@)P3;*PR~d%UVt_^jKJf-Dwn9VLz$7 zS$R^1qG7>oy0P0J)OnOo`^ZB`m}ft~^BbD81gIYiI;^5_44Z6q!`i-( z7DK#VyndKZ$m;Fsp*i4Iw^_i3D68#BReHq`Y|j+YJ=P;DJ9De*R1Ye1?8Lv|3+?0X zp|$zDxjPyISNq%{YHM4&@u#Mnvj=Y<$N1zc>lJ63odR4%l}MtZqR#(xXME8D!+$&b zj^O2PPGHVs%TL1Bm$#~_Ds1(o@5`QeeBS6eGvTAgMr-wYym!;A5b;{Q-t1or=U=q_ zLd(sj%N&>8h$i~Yt(3Gh2?IlXXej7_YIbZ)q+Z>04Lc!#)*CbVp9?$q+C4|&z3air z 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 G`0_t~Oa}h|