PKDNT"~UnleashClient/__init__.pyXo6_:j>2 K.C@1@KFUJw$EI$'ɻ#K9+P%  d*:hY74f=q!oiNՂ! 88r֮\Yi)~ZJpnO׆pޔ9bsSRWRsQ Qƨ+)KhI,neL7.(g8Re͉2 ՛WAන.$ҌVQU4ƒw&dސ׹ ;,Y-/V ݻ"BgUʍz$(I@{Ƭqtvtu]\\Gק'3%[³?߽;f{J&Z$F[Mfqp/X\UuFN x TFB< yB-\U2>IDMѼ6W>0tPm冕fNR&q$|5B܄πƶ6VhXoq.z\AцRP94V4m%X2 DUf}>GȘ# e &,rg-&n.K5{LirGx>Zõg"-;BվPsB)n<4k]Y-GXN3jKS+4@<,bq@PrDL(e Y3|SClFPr|5?]y[l(t"smw;`nX@-pED?f^xbP?n~#k/Ѐ~'Epw Ni$,9E]Zs@1p(rn[et]o@47*Vb <ۻ5NT+حgb*v~? 5I4ڍ<^9er˰X#UҴ._V~Rq }2f=(GfLdLST2p_9G{f}N4xX f$)TBvy{ų7R#I6S|֡7Z4o8w@'x{Lu84ٮoTQCl4aG⓭Y_ؖ^4k^zrB t>&&i[$65ݗΌk ̠ AWQtOHس3_X'sJ7gKPQǛg챽 ʺ#ĂfgD  Q)rZ_bp搸[L*A&Rm'SCDd'L;7{x= uGqqSoS`Tq=_}u@`ܾ&r-A*XתT9L>Q?cp՟5;5\oa@ f!:}!R\ F)( UN}%a7%߮A`cj^T6F\TD(Yn!5K}U%s-B?yu? Y%: )k 5qm8Ǘy$=ˈlY6 ,@ZԺ7 g;PKN+;-UnleashClient/constants.pyeN0Fw?m*!e HLc&ݱ }s-_TCk9&q0nf y 4&YnOW \(Qp" XYFYi: >68HhVeAE|N@q!Ɛ2򈉞v:i>| JZz#K.)ɪ43Wq=kxOl7PKjNVۢo UnleashClient/loader.pyU]k0} lhwKy2!(hS$#)dɶd;YCsϽM5k.<A1& F1{J0S F iəTvu<Y-9n>QThMqUwgkUxRhx%Џ-2#pFx6?uZQ]w)}J?Wr(E?y.2@(qDdqcM6>$FQt Uɰ=(bSeҟxiidT7Mn@j2ekz $YJcvD0H+Łje=:2}Ñ~-Ri z] b: 6JtW2Y^t< %8UI8Ĩ! d WwzƧGp3F/m[dlSa&+R,ϷBpHyt25ˎhe􊶋HJxC`J8#an_1@@x6a-֢ot.yBwhQ_ҕ)E++\G~*\џ0nR $sG%F^ևq0 ӡj 5fQWZz K%NSߵ`۰8`oBʙ[&u x=ƽP%ed;Jwܱf,o>d5Y?(/GjPKjNcKUnleashClient/utils.pymNK@) EHwNhJ?Tcdk0$9N _LaxҀl=GJퟻv(_\hM@Kb`<] Q#pÙJQ;Na0('z >g#*x7drm1>c 3X.KPKjN\0'JrUnleashClient/api/__init__.py= 0 CL )b y[ݿP~rPQqqD~OgVPVNՆH |˽4Rt+]`\ZzPKjN8nECUnleashClient/api/features.pyMo@B(XQR }{lZvq(߻4)מwy 4*ѐq2vIlGI^!&oW(Xq8 p4V:V*Ex͂8_8.ɇ8h1N ' r8CFƘT 4R  XQĒBJ0Ȥ4vYTzmi+$ !,JPBLAs̥"4M!3l$AcR{Tal"|A+ {.lV[&S^;_vHB5,CPkakVrY cj/[~4Sم>whO-9B+DN+Pobxg }6!Q5`A{tѭ%hy9} \uq|˻`toMa[og_y]MS>y`8l]UIwҮz ڄWʇYiiqܣ:H=1.0qM}9N𧱩M~* 7=~SՔ n 2=zܑB_cl}YK֕Ll'1ÕhQ졖h_nT;óXLe3!eϵ 76,2۬5*[iͭg]F*'[ vr*wwC,YiNTJgt86L#f%_(Wz5*wjs *s9R7oHy `brd'>gyi$S1:2UY}j\}do ƳPKjNL`"UnleashClient/features/__init__.pyK+UKKM,)-J-V-/*QpPKjN f~"UnleashClient/features/features.pyUmk@ _!R )KՐ(mZ>-'6~1HlC kaG]>nQܼhe~ unl*|wv^)ౡ!϶nl3韹lJ_bf{aB^ NKoN8=$ʁPʼ3WVfUJ똬p#6o88{g5D]#ROgv02xZ7?o_:63_ݛq5ypI4U4 &z|Qanbbܺ[PKjNh֟Gi(UnleashClient/periodic_tasks/__init__.pyUA 0 D}OxI,Sx vؖ5{TJqy0c{<`}`W ^\ٽʚsҩ9zY ;#I[Ybr^.皒,]xViW"mrh(\3+`S{*[w8!$ig{cLhTlJ/E]B.P?a#rꏮ@ݬR1p:5UJT jb?|rAei 1u*cm4\V}u֡De,W hѹr{˟mH3A/"`/J9d?f AcO `ũti &"6cm:qUtxfPҴN6q 5mfJ@+CQ|^CF3q\z퇄[NԂsENXRZ klnm!kQLYLC$> =FJH[X4eYv'zV/Gde29{= "IAKPKjN&9/UnleashClient/strategies/ApplicationHostname.pymj0 ~ K .ۥJ n222GN Y8y3$Z>9 hBZoϧ1sVctY%,&zۘ$+)\JA7TpDW\ uLlN `MB1ɱfC8Ւ1wlmYv1CAqz3A(b{.8F`L/= x5K3._1QPKjN^顒#UnleashClient/strategies/Default.pym;0D{b*  |jq`icGZHTy\#nǁ=i$#t)&eY^J)&gəR@)Akk3 N1P}XTU3II ;P0=ЪХ㿽0\g[PKjN`"Kg0UnleashClient/strategies/GradualRolloutRandom.pymj@ { )8itS)F=dH޾g;M2Tw~  G`ŽVIFG ƾo12F8kvT]gvx؃A *-*1vTQ%%k\ܘFVDb3#.PГN_ݺIOPCqR-mpPKjNmp< 3UnleashClient/strategies/GradualRolloutSessionId.pymn1 <( KB'sA$_r @"v+Ąz|Hf"+ĮbtB}$׫ "t5" :3bR9"B]7\%ndas1XkNT9 ^I & Pd * tI pT hO 1ެGDj䰱6[$~*m%< m^wӻ<-noPKjN0UnleashClient/strategies/GradualRolloutUserId.pymAO0 VN4&ۅe& SZ&OQ>礖10a>\y% *5&u0T)ȇ-~U@_j( r%T1(6 x%FNi@%>BKb +3qkv$U)6ԇAx[Rt7=7TCH]Oȡs|2Fw#`pc@';i˙gOQ PKjN8;:)UnleashClient/strategies/RemoteAddress.pyUM0W .empK!RKlC%'"J㏵Rڅ$X&$6ڒ>O%_@r; <}tB_ެ(*$VxR%E 5/!}Vh%.()RXWpX2a,aZV4w >!uXx[#K+_M B> l8scPI+k. S5퓋*Lf#)pg3; G@㠇yo4e]?;tn}gwNۊWaL߬ncȩI\%_aj)q6Kx(-=AsAW kݑTO .%cհdPh͠ʏǝVXЃֲ#q{^Uַa<QO:`;*4Tc /w^7d|d{uLo6xМN/},6Uڳe[yWi߄yź?_Au\ Hd}ӇF1p x LL}7PKjNu$UnleashClient/strategies/Strategy.pymTۊ0}W t%vY(e m)o'jeuK#q.3gyuk(4m5XL(fxhfyX8E MWX8(v6x7'|_rb0& svi $8MSR@ PKjNtests/__init__.pyPKjN%tests/specification_tests/__init__.pyPKjN.ĸ4tests/specification_tests/test_01_simple_examples.pyWmk0_!ySN=}bsYV]tU;6fT WnBcasFF:fXs:Ҳ6fScH؈b~PKjN^Z%W:tests/specification_tests/test_02_user_with_id_strategy.pyVmo0_qT4}*!AZ}%<'@(0Jm@^?6Q My`l]Fb6'I5%LƑLZ$õFșP딄+>zPT(98;mzV#tVu,ÑNxgs.ƾ~u_/<˲.ڍOnj@-r#AN፭FUYV"蘡eN%l-`XeN'MPp䨢bؐ7\2,ըp5 +uV-&oܷX73ffa}M.Ρ.MoH`Bb}6if]ݓຮ ''hl>>#"gt%4#oR=5e)T$ir(ue͇Ʊ͈d++n|yfRW`)Y8x UM0q,F+~20S[[)ʫQb07 rKD A$V;U2~]GD2Ȃ2]=[s2.mnJe=v]{a<'h +Wovg&Zf^8KÔI@OU6Q=ڲsZ1 r,pDVG@ }~t7^C}w;4Cf#=63v} 7=M"LT2Xx`їp 6`K6 #Y`K?a >wx~X~@n,+lWPKjN=E|&&Etests/specification_tests/test_03_gradual_rollout_user_id_strategy.pyW]o0}ϯ2U  J4F[4Mɵ*l'@vp K?9u2.ELzPwǸ=M8t#hlM$9YzXL8)~SrjJ202JLfTSE/_Y+LP/o,l3B!Ӭc j#?ky WIH\W(|Å fA䆰q) ~ǤjMS&zr(> !iQ>{99%H# ߜ8 | 3 { #*@fSZ\b*TDžap;Q}4u G@X:H qG1Mpe߃o+۶g %3jFM T ?l Z/Mݴk0H>wE@Ʉ 0f h' {([H/s@&|rI# ɀ¤"Ey`eD UrX;( UĄR ܀d9Nm,~,u[٘Vi}ՖnCy2w/sBוbז(8Xo)$uVYz44XהD1~ҍT-dJAhXR=3UEU%ȄxJ5`:_oNyaC! p䝦'pYVM)F$z*"aSUjF! ~Tx00ef!RuIU.{&U2wdc$G `(uI?!R+虅BfQTYn$H5Tτ[wkC]yH#^ժZ^_gIE`ԌH 4P `ic6f!^YQE:@wDs(술B(;8J$*_ Gp ~StZ#t:ِwO 5e9beCtH!FWi$D-Pul o}|M0zmePK NE` Dtests/specification_tests/test_05_gradual_rollout_random_strategy.pyU[k0~ &-K!4qK>aTKN5--dDZV7e>4.GG;wȪ`\H9)Xk8^ Cq7T6b]jRlOFM͓\D|ZM|b3+}pD$D,B3'2y՞\_'󼋫ޣ ,3 (wc`~~WX/f8"夐?-H\R 2p@Jp,$/{s%HA3J1[^]ޝ7;:pihzwS6?`S{gD8y=xף^;}Ha١48! AEDtì+wLQn1@N[ 3H[dcϥm2=BJQKRjA؞tW8(NFZH V:"VS4>(Ozć)57Yru2T{MMEOS^c̱nNsи`7/FGi l7?n@E*1>:jOng' "p>Zìr0=&)y3fPl_"r4{YgVo;z2jwZ9D M;R;m)X=L TT*~gދ-PPKjNh7-N<tests/specification_tests/test_06_remote_address_strategy.pyVn0}WXBu4҉m-TEnb`GS];!XJlp}||n$B4Co٬)"լ'L8D:#'vL S(y! (̔8[Ë?.?k;uC{NGz1UHO)PV|qκA5ν{CǨ^*U// 4{ 2ኴrkPDeUL"x4<5j>dQ0AR Șڹ( B Iz;O-N48yT*GH|nx4 544ʝ-^Og̸ 82EN:Lҙ:9ΗNW^8IJsfOE$Qs?K<ؓhϘo*ժ$R^ _ ~ 2 7p 즡QnDA8*6nN&Y0*$y i^؞daCe! 혁RQTzfH~ZCJeqШ> /`͋9dj qrVYfPWӆȭ DK'>iv,ePX!M芼-_]\[e@q 5f f$, %,-'M,dr*fisR_N;V;4X1Hx 7FpڢlԏYw粴@k證3\G\rk%z PKjN,͏' r8tests/specification_tests/test_07_multiple_strategies.pyV]O0}ϯ2!Z R(nch-R;Fg;P*EcڇvO1KP9l|!uc3*p%0aF0WyBJQ88'8&(:qt:OXJ, I2" :KË,r<p]׹spo0Qt,..sܓ7/2IƒCg:;C)',1݈« #0e2($zlq? QjnEB;+Y̲2yk"sUTTm Tvٴp+S@x U=֭Z_u>ި΅<8'Lm3B zݭ"3o[28JVsw7RӓԈzdfڣJi-< .[>y o4HqBP_&}gӏ~@-ЃWS -U1 `*ɍ)Yrג}Fˬ YR cnx'&ҤҊn, '

጖߱LfPKjNtests/unit_tests/__init__.pyPKDN˄L tests/unit_tests/test_client.pyXmo6_AldE 00QZcHʾdHg -i"e-GšEaH!wt@nG?y^*[ @\)n$2*(pCiƞ$k_y}5F㚋cd[|kٿR+˵3G?;毗yذOsǵMw\qWe[So6o"֫7|a±ͩ(V3Ӡ٪\z_$+U;|X$^?}LYEӲJbXI?6aIڂD)0rzA/ý_X5lT6#h0[;TFS7NvnK$⛙J a`Mv`e6f6AG~Rqp34 Dd JmB<*a?M)h8i6u"`'UoRknR(wӴazrťAZJƮAR[JzYz`p7@|S*ebѐu)ؚ~.ux3o1;\7HZ1O748>;V^k]bHlr6jd#AT;hfpNmx<X;P` |mGyD,$~mbTIjp OKs 8Fg &L9!v(wK!VzA5ۤh<uC AZ"K} FQb09௹~A|UC@X_oKZ1Gl,)8z;}kx>V q_dUN*#۟NqĻ1rn}X jKǧ-~iO_|Ziw](؎iMU#Q8(UXCNI|RYH,_zPKjNPW(tests/unit_tests/test_custom_strategy.pyTMo0+Fв1RV!Ei@am ) o̲\ T -dk3X;.CuL&Z/5L 3#aT.mMpn&}X?HDj_C?<oi^Q[j˲Nquc Jq \Ҕ|fIar _gJ7*P_,w\^ 24Cz,Ej?*7e;#o>Z#! 圐S=%&p')޶;Hl Q}7RsZrM)/Rk [Ua6qOC@mlWyc{l]vf~>M4{6ͪzWى IJeFZ]Aܘpn5L:2ʯLqTSY!X# Y ssg3r4OH`WlF$#2Ϣӛq#dX@ Z*RH0טz.=B9G4\+n8bq=xk:;C>8B'ֆ PKjNq=!tests/unit_tests/test_features.py]K0+BRaBT((PcDahŠ쿛~tLS{Ӧ}s>Ri$j'7o,CDnֻ5GXO "Il3 O(iW= +Pd] PU!"39ҳj-"+iKTM8<^^D7j@.&W/zУa`w7,X*VUPx ueA3i/+]rs@&|:S}TO`Vw+dIeD0pT96q4yٽi^e7ӟY|ʎ'lF~@"&_3Hh7/%;B" C210FC*1E3,F}i3FLT~\=lRNߒs+|Zܘ-Om FqjKJ?nG`|PKjNtests/unit_tests/test_loader.pyTm0_J"rᮎE-65I)wv ^Ss<ԈR()9u| JrA2^s ܻ.`\DÁKI\:Q WX$Ҥ}y''uAi֚qM׸wVM|%mϗc٬.a2t*9zלOgZ+mB T-&SiL63d^74i¿Oݎ wS1L"AZ[fz9q'"4ξDm_MBְ }!ƚY ($tests/unit_tests/api/test_feature.py_K0)ž6,e KpF<Х5%7݋ֵv(y(\8s. .9l(/)ntZiΙzs Ix cOB42LFs q,? Mq\{OHTI9+nbj} l+iMs5(Mi:7Y)66eFhM20 l_g{~Nw$qW~޸l0xW5JkwP}B~vY}Z0U'I #y+{x BS}!9Ҏ)MtPKjNr^l$tests/unit_tests/api/test_metrics.pyS]K0}ϯ>8"ZQܘ9nFۤ榢t[{P4s='jm,5VHFW|h-RR *6FɶAce) Z%rAtD<3vI bM1GlgE$48rUۨlIǸvZe !gth>FB-+klHɰ=P6)+ {VjtҦ=^]FM\Tv:&܏sB*4*9k hWǁrå JIL?aM&Ä/Bk˗G+pK n8hB6E88GaaCB0HXN| ҄]'(KhSdC*^:ث߳!tͬJo4r3e-vըIsG u^ ~Rx_*R{v֩&wJ6+qpm;k{'q+,!(@̳-yZI_ /JgݾXxBj#簨>|osl6-.jmjO9PKjN%tests/unit_tests/periodic/__init__.pyPKFN[sS<tests/unit_tests/periodic/test_aggregate_and_send_metrics.pyTo0~篰x)h <Ӣj4 ),.+3lʪ; jwݯ໽T|RX[%w$c ፦=R82( F ^ ئ,}>[{^zhL hگd.r"aozdXhyd2|ɝGƫ8yѯ.Zƨ\$N+QOゃ0Y,'@8q4Oh2EC0{P\f<幂EȨuA99*rQ((TI!2yJ<.RFDzE$"'a3TӂEXyV%TEGLxSAbPby%l TQT,eQ9Dt\qn[|ƿb-x|4K5g5{l kozi"B|uMhou[ S4Qh")Y{r0 7l^(WK7 cD 1Mjvgt?f@ Q4njfx8{ 6{|>h UԪVZ(%kt^/F((Q쩣q/jHIuژdu#j|vSr{~~?NKukΪ\g/=U׎>>{u7ݗPKjNE5Atests/utilities/__init__.pyK+UKI,IOOK-J,/R-/*Q '畤V DRs3ss2KPKjNc!tests/utilities/data_generator.py}Qj0+]"Ы!FcW`ZJ.D!mudJcLHAbԉ >$w^,#WBV[!:R C N hE7klL@0рAJяaVES2N#Y5pH05O. NY49rʤjuv=P6'nrz 7;)PKjNL tests/utilities/decorators.pyRj0+t qS!PcPJF^QI6 꿯eIqC@tXjf53}7 GDs!iڊZ͕~>IoHe( ڠ=ӸU2RI`'/<2û *e+!1hfD7@! tVA8FBZ@tX|et5eOtE2a6: QjsSX +uJ][y'Sp;}1,PKDN>5o$tests/utilities/testing_constants.pyK0"^M R4x0!*UBnp`dŨ>6d^8?.ߑQoچIO % mD62!{QHV0IY۲QbW3ոTF\} Z_;4*R|)'-<؜v2 RCcxTHY^qel1ʷe Up878~$$nSb*XhN٣Bpnȿ<3xiik8p 39#A\:B[tm&tV:8܆7PKjN* *tests/utilities/mocks/mock_all_features.pyko0+<> &F[E&m*79 9.C(IDG9͛ W_}_^޿og7-y 2IJ%d:]z*,y:i\YE2Jzɪm(S+ng?ssF7UG5WBrsJ߮WеYWM]qZ  ǖL"ʤUݳm_jY&; adhzy\:*ZBkq |v&$P̥)^RBݵݻ*HBsh= |3{|:mM߿^>y EL/*-rnwJKHDg-MjTzAB@i*bnHc CAQi tbPfz0. tEXbIg3shS۷Hl@2"D(! ,+J@.mN22\CLXI¹jVϳѪoPKjNOï%tests/utilities/mocks/mock_metrics.pywu tr u QURĂT%+S"W\DAJSKrb@5E !%#C3]CC]s+C3+c=Ss(fjM1Ֆ䧧؆$t!4XI%X\^>PEVFx04e \ZZPKNNbs*(UnleashClient-2.3.0.dist-info/LICENSE.md]RKo0 W9=Nn4lːf9*kpRߏtvE 1$ur>]{߿~ŌPXlv:dwpm~LB`W8) q`E'c4L;0!ηw p{ X"5CF[ ..a!N%<wt7C g G߹=}t .)tw@y)'vdp{n!'Zh(P$.$41Ǖ͊lB{? BZ?vIevY}DW tUoЛa- uq8ɇwffc>C#z@y {F\k *VmᗨZQօXUVsQ=#*^Q Z ިo*[=Bm,s)0"[LAVl8H[jP5fŊFA&O+ +Yǂ_0TV0Q=%E%4vu1eZȊbd )T O)BJiBDIW+ >]Gn;!" 5PKNN7n&UnleashClient-2.3.0.dist-info/METADATAWmo6_qu?,*)/} m$  .-gJLwGQA3$=GrrfYk#T=d':cU-93ђ^]bykKUC`4ؒ0:Lk,EǪq RZۘQ–ndJr{aǍ8oX 'WL\K{BNDkC1~Yt.E_CɌ3p"^B 1_+:98I}؊l$>^iAU|?_WTε*4*QpaH>dWOxd77Em˶ZM湺Oo'470v_wݝd{.2X%̓UUuꯒ_YcP;wkD6WOtPL[}e~% LMV}|O!'U IJ5o 8h:eySܯvg0א| 7!#wgNݴ $z\xHWuk*S .s!4`ʻ%Kn"r:E*;y_tY !G^ϭn0[U#9Q.,hf"cԕ6mo:jvۙ*3io TXvW67@n D j7G}ڤR2؂qM5Wds,< Y^n⯽xjקNW\ha<[1 {Fo):}LF#XU-'eyRxb" u”P3\cI\*Xlq@ZLYg=A%u 3ϔE*nȼbEGtH Y_8GzI7ͬGJ 8ܩ 9Vc1,Ժ DX7GLw7JY}5jD t+2ha 4Ɋ&(\(zzJܱ1xӶσa@JD t+[KUT@ϰpۑtsZs @~M?=gO?3"k/_ ϫ9-_ցO'_Yz35J tS3hY8rDޔ <'i-koX|-ZN (zn<: =}R98T=u-`` ~5beR2m<æOzy,nxJ~Y||XB(2D=7f'%g9g~Itds$22^{ix8>~qZۓnN؄OaA1vGxH5"Pa$0Eq%SAKvIoIE1c,>YML?:hɰmp`?7yqԌw,PKNNM\\#UnleashClient-2.3.0.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0363 /, (-JLR()*M ILR(4KM̫PKMNGa2k+UnleashClient-2.3.0.dist-info/top_level.txt IM,pL+*I-.)PKNN $UnleashClient-2.3.0.dist-info/RECORDǖX,P7Y!NZsfz#)7F]%BU/*v.12*1QAcsCƵ<,ph=}{ۖvݞ/mj{=g&*:8z {ߠQC>[2W4e[4eM9^4H`<  6 N퐨wƆvɹո^_+0N-erC Jbsd9i|XV! wԟο 'qVOS%r7)mʟΚVg-&z=?q0T򤹣/Z 6 EGi}K]m^7M c桬=*f"G,iڷa";? ~uo RkN;mWqQPo_HbEN WEvϳs˶ ? ͡Y 1pAY*o~-5^ߧu]_eC+\[x$84X;#~ߪFMB~.#?r%4b{'Hyx4\->Л˭mJOho_uQCo'7oRMwٹ!~9]L}μ ;bj@n,f9w-V9S0O9D"+ewaN_9lÚY(,N޸t u ޭ#. {1òCv[6YUnٲ\Dƫfw}X8h@D;|E& ./<ω[;Mz){|`v34(w(}+zIduM[4ԇ7B"9SvʺZ!ğ[_{z.+ n'EJ; tnDE`RT!>]:nYW]*>6rMMsc/Hi;щIeլ;4A`^syW 3n:1/Ie% ew&6G ,;rμUBc@e2r^JG'7s,ȗ 65c?4OP!8JKttfI&Ywӆ8M6=}CbΨoz/2 PZRߖE3ⴧQ:opHb% f$5sB z?WYӟ,<[ FmT(RbH7YX;ac#R(Eyti[bq3ͺ1$B@z8'IR/'E.1"̴ғ^"0n "?o~8u Կ%:iviXd ؖJJmkL#1 aPg>Gz1P.p2S21mou jjw@/.u(y İ};bvL:q8v^t+PiW( +c00c&xtc]/^ x5 `}=W6<+NX,\ǹ -W5T|S/A77Uz@u:x1mluo;~a*NfIqycԋ`-ؖlĠ?v荫aBYꎢV^]AK׽xC1UTk $}+o?0e.'C(|׎ZF 2aLQ_%9bHaw(OB;O ]`/ua/"IlaDVGa4~@Rj匛xub_Lp-.W Z2 ~ƙݽ $MPKDNT"~UnleashClient/__init__.pyPKN+;-UnleashClient/constants.pyPKjNVۢo UnleashClient/loader.pyPKjNcK UnleashClient/utils.pyPKjN\0'Jr UnleashClient/api/__init__.pyPKjN8nEC UnleashClient/api/features.pyPKjNi6FNUnleashClient/api/metrics.pyPKFNMBUnleashClient/api/register.pyPKjNL`"UnleashClient/features/__init__.pyPKjN f~"7UnleashClient/features/features.pyPKjNh֟Gi(UnleashClient/periodic_tasks/__init__.pyPKjNz1=Hw.UnleashClient/periodic_tasks/fetch_and_load.pyPKFN K N,!UnleashClient/periodic_tasks/send_metrics.pyPKjN&9/6UnleashClient/strategies/ApplicationHostname.pyPKjN^顒#UnleashClient/strategies/Default.pyPKjN`"Kg0VUnleashClient/strategies/GradualRolloutRandom.pyPKjNmp< 3x UnleashClient/strategies/GradualRolloutSessionId.pyPKjN0!UnleashClient/strategies/GradualRolloutUserId.pyPKjN8;:)*#UnleashClient/strategies/RemoteAddress.pyPKjNu$%UnleashClient/strategies/Strategy.pyPKjNe*&'UnleashClient/strategies/UserWithId.pyPKjN^Oh$B)UnleashClient/strategies/__init__.pyPKjN *tests/__init__.pyPKjN%=*tests/specification_tests/__init__.pyPKjN.ĸ4*tests/specification_tests/test_01_simple_examples.pyPKjN^Z%W:-tests/specification_tests/test_02_user_with_id_strategy.pyPKjN=E|&&ED1tests/specification_tests/test_03_gradual_rollout_user_id_strategy.pyPKjNu-H4tests/specification_tests/test_04_gradual_rollout_session_id_strategy.pyPK NE` D`8tests/specification_tests/test_05_gradual_rollout_random_strategy.pyPKjNh7-N<;tests/specification_tests/test_06_remote_address_strategy.pyPKjN,͏' r8?tests/specification_tests/test_07_multiple_strategies.pyPKjNgBtests/unit_tests/__init__.pyPKDN˄L Btests/unit_tests/test_client.pyPKjNPW(Ftests/unit_tests/test_custom_strategy.pyPKjNq=!Itests/unit_tests/test_features.pyPKjN~Ktests/unit_tests/test_loader.pyPKjN Mtests/unit_tests/api/__init__.pyPKjNNzbU>$Mtests/unit_tests/api/test_feature.pyPKjNr^l$Otests/unit_tests/api/test_metrics.pyPKjN%&Qtests/unit_tests/api/test_register.pyPKjN%Rtests/unit_tests/periodic/__init__.pyPKFN[sS<Xtests/utilities/__init__.pyPKjNc!Xtests/utilities/data_generator.pyPKjNL Ytests/utilities/decorators.pyPKDN>5o$[tests/utilities/testing_constants.pyPKjNC{!&]tests/utilities/mocks/__init__.pyPKjN* *]tests/utilities/mocks/mock_all_features.pyPKjNT皑 -R`tests/utilities/mocks/mock_custom_strategy.pyPKjNS]+&atests/utilities/mocks/mock_features.pyPKjNOï%ctests/utilities/mocks/mock_metrics.pyPKNNbs*(dUnleashClient-2.3.0.dist-info/LICENSE.mdPKNN7n&fUnleashClient-2.3.0.dist-info/METADATAPKNNM\\#lUnleashClient-2.3.0.dist-info/WHEELPKMNGa2k+gmUnleashClient-2.3.0.dist-info/top_level.txtPKNN $mUnleashClient-2.3.0.dist-info/RECORDPK99w