From f06db484e86f9346e6a44c6d742552a079aff6d8 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sat, 12 Aug 2017 13:19:09 -0700 Subject: [PATCH 001/108] Update components pic --- .../images/blog/2017-08-0.51/components.png | Bin 39175 -> 48374 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/source/images/blog/2017-08-0.51/components.png b/source/images/blog/2017-08-0.51/components.png index 511070a5fdcbf9528fd0babafa388c45cf554a98..9b6931e29e2342577bd12555f100d0e22dbc6602 100644 GIT binary patch literal 48374 zcmce6RZtvEur36bV8LOr#UT(}77wtvh2Rief-dgCg0r~06C}91F7ECGcX!Fne;#g~ zm-~8ao@TnIr@!v{rfX_COhpO&9-R~&4i4_Utc;`@92^n=4(?qED#E{&v4E18f0KI^ z1$C*nx3}Bd+nbvkczF2p^Yhcw)62`ty}iAam6i4N^`W7m%F4>p($d4j!>p{VzdvZ7 zo?jyeMA1P0FE6h*e(+|+ST8Tn@ER%4&rgJegbzwF3ID%h80iW*AhD-dH1Le zosg`qmW7NA7$mH6d9&d(bd%rT6qvMO6fXz7O_YkyLdV6=rT*!Dj5&>bH1PyT+pD>>Shsi;nIr5HEcP2gjZZg@c>Lh4T}92d7oKjcaPb zf*obaO2NH6S5no)9*G;}D3&i3^*z5@qwFg+D7I0Oj&w>($g-|X)mBJ@MMvD#xiBq7 z5=a_>66MN6?-D7@JP5X_Q4i~2wQn93JHxFEE$I~FJ8qq68NgCL`DCcHfC~7I5sf=f6>BzDSngev zWdeeWX>^DMcX3Q=v(V|7NSEYG%GJS2p!@h@)l6ru0e-09f6|ket6XC>UUHc~Jn^e$tAR?tQ#E z1J4d#M&&}q0Kf7Lu^Od62)VWscY;XSh@xw)_zxRhyd}Ty3eHY73!nK3s=)&07gMp? z86MVlA~SA#x|?P`4cnIFJ9(|byA(iwmQSTPoOz*5kdb7^ws)JZ&Mz~b?p^b`INL;n za-p-;F+98ht-q6lMM>%HfxRWMd`eldvs2Z=XF>l=)6AEEYGWJe+G8VN1+n6tw$73> zsq%4xE%mT974VT(7ikn)$lI~i%f{fNv5z$JYcOQD_n+{nj=Vpd8gS4@k z4byVgbWi_F*hTtWYfE0sdu2C|!63dm7>v6LK027C_>u#iz1*~(J*_&f7}^*V|8&M! ztpX0YOF{n!C&VD%PGN7o<3SZz>_bOzbTCdalMDU3*qoj$Jbh(d%|R)uPfgz=NGnh!gGLP%W>n?mle!Qh!F;b)J5 z=Mm+kE_@K)YELpN_%Fcx1+=pM9i zZpYSlKyfSW*l>;tMX^|K**>OJ1}7hdQZp2;+;#-e)!N+en6u5)8T$0!MSmR^3Fwo9)gdp5sU_XHb3(Hu~&nW=QT}sIRsW3D_a9O z-~1ci6)t@V^6igCKvFdtop5siZtd5O;bBDhhVlx_ecDrUwH4iG2liz&rd*x+D{+?i z$j<>Mf#OAu9cShahva;{f03kpejSsl4!BV#3WY7SLH$`H`DM>0y9vwEd{&+xnS``Tq*y7+P5=XpRSaj@ zPy-g5{+wek;QH%)tjBHl;b)?WGGTx);F}4cdDIz92jc+9I?^q>;gi1pDp&!3sTf+l zja$Acw^f(v>koFUsM1Qeb7VXJmw6}f-kh?CpfsDW+Q7`z%w_!?Zmoa#aC)F1`Zufo zyIBe`+aV6#g>O59(wSV>sIZZGE zz~xxlwM=eKH@y$TA=c+fA);#5Q2EpWqx&K&Y=Wfpfmoa)Q72$JhXIp`T;gsu7#HwK)sibMi6u7ZuO3|VP16tVa3AlG`pT%yg2%<-9jR}0|(Z!C# zuQ=WNN=siCP$>3tcqGqp~A@4iF zNKbuQRtNxQLD?2m7u7~rB@5n+kTvn z{GtqYJC@<3FQ%yeQ|16 zu*N8m)Xbj7N&zV@QTK>=me(WU6OZjj!ex$fz-$>ZbgGIS^{aTi{>->XiGn}ri8V35 zYtbtW>_Wl{GR+tn6_ zVTssqO)d^R2wmLcR}P-XrHZ>TqlWUxEB;v3b#rco7KT$#>xEMjTalCb^IAu`v*MLz(s>}SILt7SQ|x*XfwWiwE) zgWu`d_clh*aqUqu2~U`qnzfMvvO{pxl+nH=s+@+qRbLzVBcmI5fEts6OTrlh)iD$q zFrj%emXCA;N3Xb?xJIg`?AnE_9H-b?_No?6mof;TpUAQuG}&@%``p0ABS+_gh2TCd0z?KJcb0|h@t)u?Vi*v%)3$i zKM0bxa(=h9xUyo2NwT42i~V)fpzRAZEYEGMBTb77l&-a-;-syF2eV zd)Rrj-JAQe|EzqcjE0PwEdp|Hc*Th%-*-VgNoT3>5FYVw8|*nt>T44Os7jN!F#$(W z?e8zc8emMMQeZLT8nMd@!9VJ8z3a7{_u}ARxhy8f=`w9mP`X6shZ1v-Ho+Dg1Eo;y znQz~HI`m$qp7sudAOwe3!JPeC&vjHO`V)uGoN*u*S}cW%Zzm!dEo*W6-H*@23a3I| zFZ0{`FvA=EN+2HR+Q*L}-x764Jd7^qj|uQ+6+r*XR_X)vZH1!tj~wi4x#)?fhVA!vJZsK@bnF>qs8p)^z|e0Q;f#_Iu$D;CogJ!{GC-s(ktB_*SA0PaP*BlD*}qRO^iOpfhBIcPEL$H zu4$CceEHl5G&wCIIXq=sX(5=i5;0SD5{6=(sE<65yY7SuE@d;H8J)IyNAg=UPIy z+(hu5o#KjOweNw}5(+L{XzJ|#h`84|musyVI_)b*R`A3gVq>1Ad@|A5ECl_BuLDfE zO_=(N+YIE${rP4zHmv?Sdn)i@=|V5F-)$aJ>uou%v1W-}TiB4X5I4&C^u)Jea8wCg zz~TfRp*rL;ahPfWAa6f@ZQpA)D+~TU793x3A#Xe)=Ci~43kFQ7`Q*;PVBv@P7J0>= zGJsN>XPuX;YlGLUE>sfR&DHgjMyE%OV4-K^$4y)};0=m4cVFKYAJ4a`HLo{zu!xf+{g?XJqn-tnxxS(f`u*@?v$ z!}k2~y0w2Gy3@(Gb3?$tMD*=bsuKMdvNy&6xF$_LwIOGkScQHXlT-v+zCUCm-R^?j zAA4d!q!A49Lm_DP!B9_gf_oI)!PMb&W()u|UZ2V`ln$1>oqy7~;dVk&FPqpp7fPHI z`n`Hn-NwjFF;L>D<6$@rThA@3RIUK{Ec&~gXrZ{qGwoa0^6y8odLL23G%j#b2xQ2;qu)Pi`4i4p zO6QoFc!}>b@UX>7`WysM4TGt;f4vYHm3@cHPY*2nRkf)-Kykof_oaZ3Jeo%2 z>cbn=$v#y^_(87ME%o8VBreCpjs7Y6WM;2qT8;G^S7b4^bJt3Zs6SMGv!fv}Mh${sCW&H?JKd?Jj+Ty9gmF zxL?;DQorfP;QW4c-~^W?)SB$$J=~na2QB*Tg}&V8`|zFN7`bCfH`di1>szNzykE?X z=emu2jBIda^5x3%I*Y09u_=S2J?;y!$nH$b8HT|69Cu83J@NG+DwTZtGBQ~du-ThD z^(#CTqOM@Eld#6@4D0NB4Zr&=Xt$(Q?x7Z3t55gbCZ}-#n*H5HnBk|>U7}SZO5aE) zXYz=jJ-L!JL1f<5ej=a2-t#P^G+4adoE`=2Kic_x%X8`;nsX9;PC2fLh;Z z0eFwcbG!I7K5<~BQ<}4D&%$K>kqDj?fotbG<;SEcgun0r_!XnMPlaYTTJ?WH0AaeR zSW6#xCp#Zz(A@PE+WSzuwoE+fSBHEYfUw03WPffw9K7Cm<@rpN4RsHWglg>;KVa*!G!lo<5hJ!bh2F+UOM5n1{pNP@Q0fy{ZZkcqOmbk@>kPgHKJs8xPJJ zZe`CEI%#p!)jvw+la$|oADChbDRObu7NB3+U6APuk9UK&Z)Y4XCoKq+pzY z7Xv6f4|v^LHF2LPPiJ+Wg%iVPQ~Xd`^ije{~5D2Age zg=@nL2+|hx{OnHJ;}yAevi9@oeRc-aoo4zN{?FPHPMC4$j9kxAVd|Y7S!{3-v1NMZ zEIMQLxKdh)x6YaiKRDNB!b1M)SMGPRmhW=KCSI*+LmIpdgpMc7%ZM8evw68!d+8Mo zG|qjwG9RNhJ)DDXY{|;R1mAh;Yw1+}b$@SqGc`5aZgc!bAAqDeZ!rZqy*1c+BT(o; zkO0S~uAs=}0o`rzGhm`8-1v4fnIs)dh)IunY+4@0h7fN3M-K6nrW$iyTB-6F)y9Q& zhR>1Pa0h$#=v5iNje>3>jwKta6`D@Esj-nOLvmnwOjbAIO+UcntZ5om z`YX2vX|KDlem2=_irvP_@n)sZBEqCCOR8`tHp6RbE&E3mpStF;dLN-al|!%k*BD;` z0Q~gVLoM|lCj9Sk_%h&!8xoJKCkd&O_ObEHRj+3t9MLVnO$ocwD;%@Soz@vY)uW|? zQLq6!)H2=8iV>MQxbO(2-?(e55cBe&63Kauys2V{yu5eXwm>^=DlmTXgxBio;~KTP z1|I}`9*J6%W>JUVi^5?Gh~n$N9<)8cn}lF~IcLQU;TT5JxVSU=S0spr(H^H9hDP;8%W4noIjGD=5WUjxpyA{6V_Vrj+4f6VLTH>9?RoSx#xuEPA}#lY%4W`DP+dJP>f!<*rY zfYM|mti=MA4hjiJzro2i}l!CUbW|lx103Tgz2&ePr$_fWqwu+l|+JHk`r5;cR<( z`zynuffb9j1S~Lqo4|_EeAnTp&SeotsIj* z(_-(4ee*Uubpg|CmfZ**&whm%@jlr%*8t5(DS2or8)frBV&~NtRVSJ;u?1%f=q*Bl~Gk-nUfKd z;?LSjqmnUXrxa64n}gQ1M+v2{BpX)tQ+@^WFnJtH5$?S8@OCIKw6>P;^gp8A*g_DMJu#FW1cj-LP4 zu}K%>cCTHuwR<;y{5kr7fTB}Cc=w7zlh*q9-xWh6l2$=3_$OtLyd&!`H7Mp;ZAmwZ3%?1|8S(7> z#-p<&BaR-y&8G}4Gq}#0yMcGpJ}?|_PHX%JXsQO!Fl4N0`Z%nx=(1If{X@-dy)Lw(I~7*X<@4b^^w9M&ELXk%CdMSs ze(!Qyr`#$+CxeBc_j}6;=`XXy+Xj~ebE*mHmf~RrtT;SxspK!owt?jX25Y~~x3ryu zoI}d;r5%rx(h@t?kGRXK>uY8%`-w2J<)yxj6vc@$)NZg*`Q2Ln6->PfVv_`y=uBQN zdyDh8bUXq#rk_@ZvYKMnL2K*XELD``) z`W_y=5AuyU;HHTyed>dP0~;_fMJx{v0DP%J@eI09tacQXZdTzL_~dFnA_W_&2&;f z5q)A1V%wThv34<_V(O^;l`TFk;0n>zDWrX_pn_yh+Vj-hPw(D65i+9iQ$2YWkzCP^@yXiv-KRMbx&30SlJ zSMQmL&UO*}z^MY?3&Yc!7_F{x6A^%L2!r)-F3@o0oGiSj+O9^LG~v150Si!%qvE%4;YRw?5sZKfPw>x_d#aw{ zMy%79c7CKmK;MU}1L9%9UvDa@2cebQ$Bu%T`r~Y@7Mi-sjp)1a?>HNtGBgw zS8N~xE9EUT?*0k$Hd`mgsa9K=<`I&vwMlJi!(i+5nO(=06G5IpbmAfw=1V`e7i`{N zrq-?vUlT<;S`7*si`rq#gL)eh5aIBgd~|%Am#y93Dny?T{e8t{u2Kc_{@nt2vIk8u z9+&q&-V);nW$Lb_gZ9z^Xn-NZw%ZbNL5b3Rme08S(9u2e*`cF7@OXgiz?V2Km0aM1^YuJ|Yu3P!nKQ9UB); zSL?K|%3PjTL_LhfSd}}3p927rAd@V8tx=(NUVU*@o#df97-%_QVXN6(-sAFDRc2Hn z1qjmsvc38)ZbS0sp_+&|zX37_GCG&@`NjvKmy350eQ|}`JC|Akp!Tub&s6DQT#jdA z+tXKXr=6r8Ph*@^WG@W0y0d#ZQUgC|Z+MXj+FZ~tREcidXqe4+zHLReA1Lw}*n%q3Q>D&gz~0&a_R>Dy1{RMtqLxld7e?Gl1PmT)3}h zpY1I~ija%y71lYuOO~iYEU!Z^_{b;%xd~yKKVM)<`8USwraky$WM-DG4*sL^pTSk+ zqR~)yp2$`HXpUH!f_SDMVwDq<&`VK;&6Xo)=AX%BjBk0Q5`oM09&wlx8Ik^WXq97f1zN(|q~m&Wd*d(?Gz1Tg8c} zfW}^)eeD1pVGX>f2Jw47HFrXM;O)LM6ZZ2yl3%k3GOM0*l4Y>w`ZK=HFsYH&z9G2W zWSr1Bx^NN|<)?@|%DLuk|EuAN@%0kUH{_kmUvL1;<)K3Zy20b)=~{X@&5tu|WXuX` zUru2Iv7>|I&4>hQ8I@^V^pm^`h5E_XU$ETjza2i2_F$2Rq(w$y0dk|hWpO<%F3lZZTb#LK??lb?dqF8bg3!a2-UfR(Ypp-d1Y%pYVFwAgt1uz zE34XcMRzJ|zPQX`*{@19DLT4F_0G4T6;GXd$A~{UXY&*h7%S6DJ4_#B3dfn*Vei$P z8zM9geC8z?iP=u~5bZD^+5xrI@7olh#c|Xp`Xb(bH)72#dE0ckK+hY6!J~DC=B*|r z=(IXG5f*8GY!hkBd`RVEC@f|Y z=u$-*mk^1jn}*yAOwGno4aAZ+{QN%T#c4_cZ~Q1va%so0I7SHvJ!9UormI2?-p zD3l}(+jp|h#iN^;b6d41Tc<`Nra27n>e52rec5Ld^btsLI2Cf z7I7Y$S7^Xqi&-d6Qbpc}dzd0hEapkaUiL2!851VI>Nz8rX|ykCX+!)YdhUn1eu#ma z1nB5LQDkJkS2_q?8&3RJ&Xb0es7)&lcE2rkMEc_;&*$#G^TNXP#PFCQ4U1zz zi&$5c9#b58yxBo+`UF6;xMo3HpiK-aZW0KAqEz0o5dgHG0e=M7Nm0(z*N2iJqv!3P z0AV-h@MM(-4}4x0*UOSPNEb_refBuW5_!b^Hsv%Lh~lv&vw@pZxl}1stc6EXd4%dT zG>f0R0#y(wm}&YyGlfseUv5Is0w!_(`r%2?C41sHp;Z%Ew0N|xK!9-rcTsH{g*SAH zz1yeJuPOJ)io%|*_;I9*r@hUbKLb$0E@OO2x_(P}V7ms95axjG(WOSRjgY@EdV_}9 zPU3#M?(9t|MT_E4wry4HkCU6URI^z{u07I{etjE;rb)O;szvueseWCpevXC&hTLi+ zOs#c~Wf~Uc-%?~5iYHkE_QR-HzgN8FLnOl}QJa&3sb1U99ne0vk ze1@!po2$bP2c8NzcscH_`j5faJ+Y?XKiMm)#tTj&N=ul_QwEm&;(Z?U*PEHXBss#p zTFS1b(j62jzPj2ryy?adwhV~H&{9A@TzFiTYovXLZKj|uaol$LuAc?abH|$IT|p(s zsa7NR)fQ-Cz+m0;`Y_O$b}9D3!WGdb`{_1T^fY606qE6lQ{;9i*5GuoSTi#?iFT>$ zoP}5Yl+j-J$O@L}*jWBWgXY@xnS(>oc_mR|Iout;f%8bEb)zMmxw_{*986(#ZKqUu5Q*P-v0u!FntWdKX8 zNH)nBxeN+SwIBqu2tei(XzVVLB^@qrdni)_^dE+Lb6R+L)|73RTYxw}H1ult)kCRW z6JpJo(&xsYL;3l*lpK6CczvE;afdKu;iqWX-%3rzvDfE)ebWE-_d%;VF@@F*0s$uJ z%NM>~*>GSo7A66?1Sf*Enj3(RpN~v!4s5E<|T;UE*rcv|W^DPka>(%rPYX-jt z80UEs2*~}0d>1c!XAJfuDvMge5lu>~dZ$)zvOjMk%Ll@GJFx>>-&8>zC97>_0bh7s zkH;cf6}}8YWsa)ZT@@aWo1A#!Z_UA78LmecR&UqGNloQg^}x|zT|C_<>@rwqiq7%d zxxJ9nC)29M*y2@6a<5LRrAxP%ITOkg)K|_)hFWRR)r0$2E2VPotx}!(d`cUMPn9D^ zw&bf25QN!AccD0tR3x_B81@(LKaaVK9gX-|T2&j#njMM;2vC#+U6OUUix#J}2b*WZ z%TD-_F26&PIsbYT=#B6>);8ECpDYdkiKeUm^a4+HYT5eYevU-R`q4Enewlop<9hM! zvjwZ!Mh^m?D|sZBFf}L+z)`*DnURiFm=d(m(2{NHAiMKAGnGpTgA{}GI# zNpT$%Fc2{ClH&lAi1v^WHxW1SRcSKGg$d>6ROfJrGOkunnq;X=YE7n4;-6_9a40ic zvRaN}qr0)*q%h!f6LRmN`~(qtj($KV{l*iu=bKo8>st&G#Ln&MB^oh(N4ecG=8F*d ziQ?1y<9yh>PiSZ_B&32ARxK)%rR<$)^HlUoAUpFU9!l!?qr-}JtlzhDP0xsr;ai6d zrR^sPiw76yuRx~GGG*|WvYwg;oDe1ozLa31BFGB%mlp|{<(Wn6s%#A70cF6Wo^)=d zj3sPqgD&`AD=3;SK@}gBUlUuS(;0O4OI9}rLWa|ZQ78O!hCLUc8Oyrj9*wQlrk;P( z+g$!Sa3p(V41Hf5Eo(0c(AS#4_AR7cD=VNH$PIvSIAhLpQLLUF(kg zdx*R3Q`Ei?!p0*(+EzIwT7an;hvapfQ{o|T{88ld>gL-VoLBtoXfr5j-O(3YcKB}s zW8b!K;489CMLkI3+yhl?{ULEo1DR7|we;GwcFd!17`{_y7F$xN>(!$;mYd;~g|(KT z>y5RXu+lxq=z*|d-M1%FTqM-1k;e@at-Y-|ALWvm`N3dY)AEi?l&B9eKP%FKO1XWf zZmDS>#FFk|Vqayk;t2YCR?;?Ug#e820sOT-mv7~evoaHtRXe)l&-uLEZayy6{)|8f z`LS-Lz`d^y&bSWwYMR96zD;3LR2(OZXpSo0PL`ufdZA27bA%2p9c?y=s=zFB11~)M zi8tuoDa`Afc-{+lgw344 zefcX>XSs1=LO=!>@nn}5O>$vPbJ?G;;D0KW+r3Kvbc4J*Zw&!wFe}Yg_(XTwcjPDf zwW5gLum+xay$JiJQOF<8`xofkSkW|*i$2s&?U6}~DN4Je?+41i&EgO__0vvuG~E5z zgf@wubI0vjItbN9e=IBK=CA6iQW!x9^UI=L7e$B$(lr3fMzDaJw_QW4u7h5REe0sP z&pL1O?#^>K>q`TBY$%+`&H3{Y>Q~JWSbN907x-=-&iKoRag^gUlJpI)qMTz8qDh%Q zcRZDIA})=#XG*%%3fCESqBYcPd8s6V!8lc6rY8JacmEGH7C3;r*6y^1`)wwN$|DX$ zFI*0t z*kYu6?+L7vTDDte0jf^iu4s`l*9c4GVTLbVxXu0MLzv)rZEVL1o0P)cQ+$CM}xf2enp0{D>nc0(2368vA-5s?7VjPRU=; z5v=w}xFDQ`P?-|(@A*#LeEY%|YpbtVsKP>d;%V~lG2XEoCrf5n2 z=s^S&@;Cv{Mf^v#DwnVfBrc!|!Q3G1%0xnG%>UO&5^5-yzGmpI= zV`+6#9eZhB_^OlWa$oT=Eft{;Pc+VL46I#$hG=t6G6kW%>Ls@hxp%*+iTW>3#&gOz zIhDDNq54V29Ykq6-+BNO!^;XJJ3Ijfxu;e=mzKLe0nWmPz4kKV2Pnl=jP^JPKB?8q zSV^K?!u_HQOVHRpcihiXh=k3=zMJEd~KgNr~#_GQ%;+Oj|R_M*?9+WvP zF(Fz;{jX8*^KD?(9`uWKj$u`^fo0qeT(?ycwS6{H#<1FtR5pxjsvoePCY(w{Rm?^o!{rLoJP16}F~X6~ zEL$!xpv39BGk`BmWFxE9`30fqobvp2$?*pt8zK_Wgd*|@oAUK;jwC)*IOk>c9YesT zh2C-={CFOlN*a*M$5yfdre(l1Tu5%-ld)U6IZL`zOGWP4_kiKOLc_T}+KxfM7rlyH z5T|m?t!l*+IPXGAs#mRR!j|KxITycgg>ex>0C(OZ3&4g$7olz6tFmYkk>pR>~}sZ&-67-KFU-$nJE=N~)S3@l2G zKOf9;^O4TnV|lmKb=Co$%x)(aq&Kj zaoI#bMsPNo+u`%^Px6gtvJG;~xcLR7VI(d{nY@e~9~qt9`h3sJtaqmY2s3agbAfOu zofvBnR)czii|WCH|fz% zf;MHnOpBX0Os8Dm<12+R{U2H1kezvJFIR!ND|UaNZgta+ai@Df8_nA! z56E9B@!Z;E2%0hleC`dNbsG}oN~qtPzR$A{(Slo8g|xkuaR!$Mol;X~kuzvWutDrl z-6Bhv>FMpB9CM*9=n{>EZ^6h7NiF#e0qOtY*iZt-#-5(228$~4yPJF$|0Np|3u61K zomter^v-iz`uA$&BZuXk9%3k3zXY%`oL<1xM|iZ3l&08~g+j$0{}AaZ-Zm`JMWObkB0;Bq!#bN#U<#+R_~&DouQ z1|TZK3<=q{!HNl*V1D>0_>GJ_7a=+32Dh~($;Bg+6MvpPQt6z9kT!q z+yh3ydW5&3(PI)`{o`l1(Y^5af5p<+A5A_Yy+%=QwG`&d<$MRp@?Y%Jd0&`7!p8BA zHBOeZ=!x8De1NCV;;^XYxuPA!>pc$pUfzbS)I5T>YUh;015D9}ltrvTM4!JgHJSG& zKOdZ4IH779&wab&ZJNi3^EPX|gnwKmhFDlmATfXm`nb$^DB5d`0^wEs-Bjq~tTh^1R z%XtN}&{2;sIN#yjEnNU*q7$kmthlsX1k`&0N(dp~pVM|Z+tqAKV+(&wt+!cJ_1QMt z7@5*sWsD&K?X{@tzAo=X^`@EJkMK_1IcY=M^|W{;~3X9ZoCbnI$Rkc~f} z*xD%J<>>T4y0{E0=x($J&6yS8N1aA-`k}KTN`F zW5XJwQ9X4gHa^&=WQ@{h7MAa{*g2u0T$jjIo?_^lq6mOaSVb03-B3= z>5a60pf+gOo8>u@%j3GXJA}DG)J@E#&v_T6C*IdhoNiF33rJXaw|OWgPq7RUbZbBw zkV1Kb8;2*%y*MXbQeDuyrAYYgpqs(?u}j<(%-h3N!?s&@!T>F2c@iQz4>@TW+GM}o z_4oLoE?N-iq`EhX%s1b|_&7I#OjI_1JIg^7XzaaEUn z|J_j!gwu{PY0Yz_eJL|>KW=00b30#G@*wd_y0@gNlyp^VS9^Uok=Ts$YwgcPD05!r z>32|q$=^pZzpKFtH_7HwA}{dSdKBwBD{%SadR97`9~Vba-WI&#Zx*^5Y1afEqK7WD z52`4%4^~15wSO(BfpIGdNzBUVV`6h7Q5w5e(kun%=^aLMVw8Ce#R-usP=>N&v;^if;J61S=5}E7g zOutr~u-GJYFCFrt?X4Css*aZ;)o;>d!ti*KQXfg?>fEjmbt|7=TxHx_jHP22gTR|D z7=V%x66JC{$;lYH4taE*j_+QyIu3P29KOOQKQqxUwyVySxw#~Kd{)A)xmtNp&cIJ0 z_}g(@lDzVE0&QPQztsa7=mBU`igJw)OSV#?L{L3j75=!2h(LYSguaqm|xYCvoG{PScaap>{G5RF?`3b}PqZZjHNiK5&v1I7w$zE-@+yMe_~dT_t?lf4_7&W^$~*xlY{4FhJUsQjzhX zvq)g_yA0cD4)vv_3qce%giOgh2*s!>qX^p|G~w7aY@E6FFtNTY<5)+)Bp+xCBd^dU zLWlE}{wC^bvr^x^Kw7h{8wNql!15xoxB2MHGeGLVX6K_-tPl2St$W4`eN(F0reQ4u z|8ZNc{!^8FIWYex*~CUeOwF#Er>7O6zqiBXK2h6x5Nc01aJ0LVGiWeKrW^5>YT#+! z!Ry&1pn_<8-ISlgR>yszqCWUUhGQ9_pLkz!HQu2j*Rz25)ZdsEw2U|h?6<_m2QE#~ zmryWCd*u)hL3zb*|3_KIwGOQm96m+CC|#4Us3NQuc_+pZ2e1t|iZ!l736DLo{Gc9< zpD(sZ*6P?+^8+h z-|F)_KBUHJ9HGOZPc-%SkDP=?a}xM%(=1KdS=JU2pKiHuK;e``{j=X(K;{<)zcaki zawd{uH~hD(PX>A6y+ckc`RcU4MBZJL61ST?#1O+PP^>_l+{t{=23%a$>NVD_*L+KO zYP2T~za^Z3nfB^ih`u3{Y;)GGU@rBpyr=N({P&aC0%1M9Cq=N z+YH^Oz0>zS)35cdi_m5jePdw=_XEkgK_=nYfIv&d$_&lYrM8x8G-5wv6>xxFEadC$ z`-drLGiVZXcYPP-o*0f3c%dtT%6v;9gNzw=W*ufOxF&b;qfvZoL0xoPAB7ecW|>eZ ztpCnQS&ZX?a4FVh_f`AY*ZG@8EySe~G3*-^NCbuDC^m-}$+d40cYe_4o#nvE0}9-U z-rBq3E}96l9qirB4>CP0TSd|@i?<>Zn8;Ur9SY~XV~6@-gbl@~N`SAO}|fQ6hrGX9L)i7=MrZa9fw#LTI28rJ@0$-zT2?Dvj`!4cw_7NjM}7*z%L z*p~^VP!W{Zqa6;atf5YN;Gv_JxSAgw&_1Kci8meH`i?dD@6h1?4hxbkem!XY3f%2y=?S_X()bNpGld+j{H5?QRDFQSPA_^{hsUz3#zT0tP+7W-Wee^ zwhZ}1f)x_)pY`eHeNHLSm*Mm%zMJ9jeV>q%CUUa>0!PQ&m(uC)_?6Po0thNfQ+zc2 zV_&zOoH0L>RTJC6OGlP6C`^`ag#;{&Sds zw{J0oIBF1j{!WZ@$`bX>@BH6)3_{Zc2Q5*Mc)&_^Fa9};%2iXBobuxTVec)2;%tJ) zK{QCv;IeptV8Lzi;BLVQvbdAr?hsfO2oPKs*FbO!zPP)?B0&SeA&}d=zq|ic-G{6D za`)+~wzi&{>FMe2d3w5My5|`ls6Na(*713+3UJ$j#*$$bt3!)s2lIiq`b!~1+!yvw z#F6Mc%o=oq0KZ8>4N0dwvK2en!z;vw&hw+sY*%02!|5M4mm#mk`#L+Q=IswvtpZ?eBA8$m;1<$)=Pdf>vTHZ#Mp5D=4 z;{Zt$;EPd9B;gFhM4lZGRN>3hva}FDmT)c{7J5v}eXs0xhr7W!$DL1r#3{)!lC zbIr5gJ0xGVgett4i>1lI=&Z15XsHm;{7b$UiKQz18WX0G=Ud%fWvO)Wfy)%n(W#QzapVyC!;rTXpgwKT355x^EPkT(BgTC&5 zXTx{=vX!fzapkU{)zG?yiQve!Lc;;#a5}L^WNvqi4u6mWDdajyJNr!$UIc%c} za6#E>r%)vR$=7HRLyd*D8KmEoA^Ad`>U2m1RjqaK>v9q>_*uQc9#m9?FAk+RB8aDYYa3S>12MTQrDS z3Gy%z%7OpYTgSa&=x`|MH2$O#@c!KSPBG*&wVJ7-00O|EdSX)M9AjuEzq_B z%1jWsjVf)py+rluon`N9ECvGA5P}-Tj$NBykI$3Se0&fi$LiH|ACJj2r>5SYO=f@Z zy~(}yBJ7Cc0}{Pb#6HUK$I4460+ne*=qcqGX^Q}_6S4{73zP6?AYT;JW8|lYFzgkE z8ChhZcDvyX(A^}WLM{H^(koiOhp?tuDevh{S$%i^FX-HyU>_eMiiY69_#C`jD3fCH z(%WAq<9=wp=LmfxCeTF<7C2Ju!lYiU>n0WJ-vgjx`~z}`Ps=PMWdBz5XpbJSRerH& zUN!yB>ap{lWQFHPGhkkd>wF9v*Alv44{#jot{>ojA#px;_mO*{jPahq%~|2RLviIo zS}VIX*cFBzRqqu5BzH{l`on(A_5r7_0iA_BYR%yHrG?#o{t|y50aH9%r}KW<#lRG) zA)3M$wz%(Jc8BTCFxD))DGVt?XX&Jya=#;focB0KZepXiG$z}pmu1j&y_f6ZyY)uz ztz}PJPOnhY--|E+P`KQtTIlHazvFY`uULpO32?GDuo-{v z@ohL-&~1yoBWG~)g6cQ9F!PrKJ|Kg=Jy67HO}rWaCBUt|?~ASxj%RB^I`uAt7ac!yCQJH?d;r?ypT_(%hz@5XK9?~FpcBYA5> z0PYR{(G>c&&-ry%uStk_jFMoNyo9dn%ASBTU2n|4%*xII& z0w4=s6aNl)pE^Dk=^`i56l0pr#C_Q4i7M-~N=WLEtbjXgp38W_A zN}x+7yZq%bHMWDI-*OB#T}A4RV}~cr+ZFftbd;nlFOHD(l&;3L@6X|?hR_qVM6^J( zEnMbuTB)kifa_Z?-FM2Lyb`^{cpa4+!*FWH5NT2Gxj){Hd2whoS4#}_Q*stWw+Mt+ zy>ojAjFEj2NkQcJ*-Ntq;F3v6LUmn46Cj&6Veo=-xzEf8F7~_(;R<>4?&*ir?hHhq zN90IVk!&C)LcIbbipmkTeCWh@>chZxT^+^Fw>nQ2{vWg7b$~T$`y5pLc*ND7=>>&) zc$Ydrmmo)&-3*I-U_dXA!%uh>z>#W`{U2AW(b9s#8`Io{fS=gM>$z|4}D;S@uJx9PA+bJT;US~vceCm z*q;doZ`z@Jh?I+84EC__lGg;G4R8R*&_Yaxc0?p?UvB_y-r*--`{LqKFYwI_r1_W7 z)d#fky|J%e9m^0vW@X2V+oKop_YxpL=D_aRP7Ro5mvP@~g#}4-#%DbP+7)r4mI9?j zwO1%UbjxxeQ3h@x+f#Z#J|;H}H-OOlX<+m89`Oz^LR3zpm5X1AMIQpO-`X@)0bH9w zy2pNNne}~dLW!NH#QH7K?R};p225MgUMsHG%fH>&+qE?W`($Vfk=)r&6*F}u>OQ6k zAmqQ~+x>!>l1i4kf#HPCC8hCw*%!*|n9eT?vWW$Tz$lgUc?27)bzT+{CKFEfu+>vc z08P5|tHME1)pJGP%(Jg+!YAiLW7!LTW3h2T)bTSAP6Lg_m899Dq|frS8sBOPGNZTCO5F$KJAqe?_(&5W{apjYIENmXmnb~I ztg}>!m1FE|Bwk&s#$^M?Q{A`MWedoL2<7FjOx@qS1+b8q*uyHNafz;5r7Srbp$VF> zPk3&MHl#cI+*Wo@cF3eRU56;K;DuQ+)%k7$D?eNAN_~V&t=^u^v z`OnzIH-mqxjOE=TXwHx<|IRv*qnGvtp$Pf>68lik3SUy8+tQ7!&FA@0;U-${tytl& zx@hZx;|$xm-4J#}JDBxOZQQlA`SkD}?d$2?H}5+|I-Nb=x30OcO+|uLOgcGv*U$H1 zlxFDDcbu!!?bDEH@*T1p_AY%I3|Z=%hkX*;7RLZWS$MM(49(s57!cBncDCogH{GQ$ ziDJ-a3Xh|s{9z3Y`yRLDdS_4BvmVeaHbG|Hv~{TtsjawpO%R`eFd@gB+6z^r%0&oM zNsTC(vs-n?=>1za%OHm^g&}qUMe=S#Ma`lZ>dnAc}KZcUJs|$4r+0_pU0VaP<2-L2{YxN}QgBsvZQo0MWvW0!n9~9~E!L zb?CXk16a&O>=oinG@OhuUQA>b6C=5OlFJm+?DeUH_X-q&Nkf5OLKo_+z$>!q{Iyqq z`NU>7Nj4VIyN4`1Tp&z9B+tKhk>2$`*hvJe9-~2O@82C(gc-LAwF}6XcSDmVi1<_l zK$j*svr{mP{!6Bpi@^I2Rvmf*98t%o{b%w~my`V$KBgsN{ImK!4q{Io(7vaqzdo-- zas~gP*0A%|97i5PqHNAcBIIoHy>Yw_I$?a zlU7U;q@`CI3UkV_tPC*+(K}hY8yHa=^{ZFQE)7nge~Qm>HqfuRK|R3^3kn(SU;nfi zY}>MSFTejr)@u{I4Flryxu@{#NDs1}#$YWc@XCt~krxAa=pVHPV=yS74UEiIk|X37 zbRbz*g`6Vv*Y+}>YlxN;Sd(}VrRNDJWiK(1Z7_>v)1G2*DWG6N{J*^r(PBFDulihR zj#MMA9Y4f>=jo8mLCk17Y1;Ce-mFyD`qKF86mdNgk{HG$%>>9LPU=W0lUj};9j+#^ zqJ_No-wd}2{1}(4)Jfst|Ne#4Z`m70hD2D|fpP6Gr<^(Pk0 z15PQl1#&+5Sg#_@*7}S6)b`X>yx=8e3nRB72(bul517HI7!B$WV+B=J^)}@_q6W3(7A%`W z!94y&)(WPfxrkIuWK%T(z%!u^a1}DPHs$;*}_*rNnqP;LV$f^3B zr1y((5lV4OFi$w5G3Bt#@!G}Ef5dvSwHX5F@G6uyDB~j0Ta9W z@z7AShyE_vEx{bQ|K|SI#z*6ZG*uI~Wzb*BT9SGHsMOP1Vkk%Du{;vK%-BWFrzGk% z)+hWyq>ULrR=H!^1_gA92r~d@A>ZzL&~H$`fnE=&4JUAsW1Sd$gS#JNG&qLLZ`Fvu zkh=kC*8~~WGKw%yF+yr>&Ii(!wCfl{kNSx}?q2gC4{(z|GUcH;D*P0!DQR^%OaaJ! z-WN4B$2wW!ALw?NolO-lbSG`nJ3>u*N>60ZTks%xXhri_FyqdC2_pr`EA>G{$&tMy zAHo#4y}+qUkhOUR^_3*Y3r(!kpD{T<49~Z=@*BIid&CjrI^1$*uV$+wnHJ-Ajn0K% zPySt*(yNH-(O!KEOXRs2;5-j@d#(kLpwg(Y{Xk`VMoSgKUi`1AKLFT+j7w^dr33d0Q%$hsX3xVo%W94~&o%HXgamt=r8@GXUL+v_Hnq!hTGrqY~{Lr(N!r;{@0WDVp zPU!23m@bTaD~0f+P90J3n{x|uuYSlF-M80Wqv%3Z*gxxOlilWL{RG#S1#9&y@AUbe zJ)S3KM<=u{+&u3=;w_eA9Ko&%*m8Vd=i?LMdI20V7BX%pi2z)b55ae0l;XF834;r+ z3skCeJ_{^jqkIyz04UF3-v#3;7k>uc?Ou?(Fv18t9f=coO+ijh;lbEv^0^b_SFQs7 zIJ!5WS2cb{e=UEV7^W!fAU$tBqHRa45>e+M%opu z*Q8{KuBYCHouLn&kM#~dv44JdVhY<4Sh8zctlhQ~$g@d7BawQsKO zMn9smcx=!>fC-WTD-RX17hbJP5DJ5PQ`pG#4!Qhfo=m7k@0^mY@~0hFPdqd{y(`65 z-x&y(&>!8PboyRB4B*V4Fbs-SkAf42&jFss61rt9Yv|Nsp@tmxq<9JW|=8o2j6-XuE^DK;k=OcO^HT4eqoR!k(pM z(H$4zRTL5X+)rNpnrxcI0w1W;*4_xA{E#~p#`hxOt%!a#23Xd@Ef3ENVEbcp?>Ow7 z#YG9dXVZ8BAB1Q;K$bj?*c4oGFo{E#1_FKGRww+;MH6!536m&zy3wAn8u`_C13&I$ z`gEn$yBH1c#_50kKTN}L!0GgR4YUT1YA)H$P;@yKaxl^g5E6ZfQ{zP z_m;RD8G&D9zRUf|^Uz8rV%M3#VsxS>j?OnaCsOMcJp@|b%WAVK5oIpb%Y1hgp$Pr@ zkM)mPo>u17%+=mmCf?rRw z%UfFTz2Oy+Z>46)F|JJ|l#_nj#`3VY?T0lz`l;q_P5K6og);GF6GTgX+ zxej_5D2aSOJyA>LPg!@y?9WTN<$WxSs8gl-w&N6V#~LJ_9bc_h@loxyUy3=&;0B3h zpQN>hr!zH@yJo&TwF`T5YL$4u0Xd$6L;-p*Pld6s^=?Hx*fmakhPV@Wh4aZ z{N{bE6r7NCE1)|K>J&UOK=}<|1qYtaswhjp;0(N)}$n#BNB0Tz-`Hme%c;*dHFssl`qb^9_?;5m?g+dp_S7 zmz4{0mIxVVog2i|F$J7*f}Iso9pqYqt_Z1f8Y^}rM)q6vQBn|tsb+~#o$FsGOL%`B zBs)CEYHz5U@^paAp)XI#)dPLzryvE@I4cHf>IPVnkzQAwvLf%@u&nQu=OEiXt;!G? zhiM(wLND262728aBTtzQz3tAv)v1H1dQcnjO^poro+6TlH_#b zK@P0wq#p&W!gNXpH?IK24#;Cp^QQu&YfE{B7V2-*PRXPD1&`~AKcsBW?iUB#{#j*a z7_*`a1LS^NLpIC*39}r?-Y45Cmhm%xlrEUinHMY^#9w2xlNH6AlLl080X42LF&* zz_x3`k<9s=Xnz$6{wktIjBlcAJ*a@#_m|HE#DT@^8*Ax7)D_fguAW!f;!+${7z9%? zU$2I~e^8z^TP3v45pNU_>it|i2dPtX`mXm20Nn)1^)#hNFXEu&sUCQ;GS1#YhT*^y z@`~4UtJ|H7da|cw!@d;ji;UY6DSMp6jiB5kdiju`3CPjsh_@xa2?%SvUll3e>8BWq zmPL%L0{r4JAxiq$c_DAVYIU*)=Q_*h+nVbaU&6G16}~1;u*{Vj*yAIKxSUPigkhEz zaAZ?tC(qm_Vgp(|1z~GFSe>3?^zjF-Ab!!;5S_oh`6f(zkK)2JQ=EQQFo9Y7kf{cX z<0?ZUt+JWI4+4!K9E3tkR(l8h8H#wUok!kEn)RKzMsTq+zm=+IRjb!G_#btCvacPx-1qr={ZR)G9+h``XY2rDa=XW}QDZo5Sy^=_c8S=Q<;lv- zJ7txdTO}1rVIW-S-9KSEc7}PiBK``y}6OA+E+{Uj9MEzy8iqZB;tSf9s;-?PYX5R$-Q4_ty z_KFEIdYaDY<+j_@tDU@n5rHpx3m_qdSQT^kC{W@upxwUn&qzXhMQu~DZvcVQ(J6Z1 z)Z=CK53`B)aNr?k`J_ugTKkaGc-N&tkhb^CC4dOF$C7?MZ^E603c;(MT-7Qc6D3%a zFr=cP_mj+&+CK2b1P`K18<@*|acGfi&068X!*W?Dr83VIN>U5&Gkrn4A9rM3VjIo^ zQ8|s7(`s_C6h4PUwW|tEtn#2`U=w4q#rhNtV0^}bF6Rd)b4JxEkf}eIW(YI280H1( zGiTc^6(fZO<%@qN-S?)ezk))qJA7lIAlw>OG-0?%2}PjqxkW=#B=U--vrw5Q{^j* zhD+f;ub*-~f43|_n72qtyo#;^4+ue0^ICP=v!?dJjxem*Hx}R*RJsHxI^P3;7B5Y> z^fQbxnH-qq@Oq@5Sz@&K_)A)b%9hD}Bk5sfe@akpk}Y(Hb-oe_c3@!1EQ^vYVirEV z-+nJ+oOw+_*NkjRQdX8?xWK{K4t&I3bU?{w*z-pOR9uL(Ei*PQ=b#dKdjnWCjUgZ?Oe@_VO2kHi>L6fe@6j6Yt<)DD3u*_QrY>^+y)+J z$5l3H9$u#WsA{Hbv6ez#BocMfuyu_z9{FfmT7;Fm!WqgEJqVbi(>$(L65q)}pz<2Zdev6AGodU)0Hc9y}UqcnB{4CTLG`g))c%`w31m6Ae?o}N)fOIPuPt*jp4LyF~k+tgUYpS z{T5HP7iRt>U1z&z=BZygCayM9Ogq=RsdCB&x~q`68yV4pk`VL+FTGw0!n9N9DkSJ! zf4;jgg|V{_X6;d(*o7@HX(t36g&-E*)7(o=@&?Ten;%Hm>ICWi0yoUG`YNwm3r_6# zsg85Q^A#1zey61AsSdbhU1O{<#~=Ml?UmbS#>2hNZ#arp6j(ZK8$ zaOh=fGRdj4lq3{B3HnX}H%Zr6AzTy7dlCb^B&$H*IMSL4u_WiC!i@nVm)0Z`S{=8! z!ore47DLK0Nmuo`emt?9FNbd-B5tkQ@r)%m4=F@wYw^}s?S%}a#*cHG8CTDJGusMxa+L{p2O7Gyca`!Sn6HjrK_qZbOv zL$zFSYHW`K%OEPnk_*|M$b;yf6^s?J={4Z;Fcs(40E~}(BjPg7_6nA7l~cuLn|ZB} zmcO2`*Vy_M@EF!EIuLIpW8HeC#4)vwQ@Xh#B+snmy0Gs;{tkk#VNFyMQprBJy6b;p zhjJDbz42whi}y(15t8qv+VnUKInKMUDpfy|PZiDb?CEuwFgkZ6T%*Wp<<8+5w5fUn zSR(jg`YoTfzsedX`3v7C&e{*UjK}j}-}mJFpRt!^^maSKoWdXN_xHobKXT*0!v6L` z#3j*&R1={YU+!#7g8+kxpaZsDpU459SG(rq%Oe(IkEebJ`9tN0 z8cJ4&l+ji?SJBH{y2WU1uC&S?I|hSsb~>8(pITc*iv^D>(nGj{BuTMB|>Z3wi zQs=vWzl%_no9GQMX*W`-Q2bCi1|X`0fUL)zcs-GduXzNAT^Di|_kMhZk0zLneX1Vt zi3>;uAS1i*u1>v<`t$Y)jL2_Ic%$PWvEAm*5nTSVC^t-I{H6@Z_9AD{jumLA!EBu4 z2TFW1r6qV|J%)=eLb;Oe6$6MOx>4eigm`cgoVTVT$+dHRc`~e^TfGh<0Mk3F++Cn=wzg|!Vr_O&6$9D`${t8mGm7u)xpPQClr@aBYde96KC<+zLe zI|(34TXau~W}mRD!t8?vQsm8BD9?h`l~1azF3YThT}Fe%2h>F)@NN6$OWL$r0D;HG z=4Ni5Hjp{OwSh7HHb0&eygInt1sABoK%L5d_B$d}UM?(^9#lPszjv!1h#7fXI~x5X z7~XR6Bh{_hcQY`cL(1uyWxxj{d*VY+fu>$FfGL3Xpg-kzL22hy>Y3v%3owo!$J2$tse=R@CVjZN~@joT6Np;^} zUkLly+ZAGhZerHZ_DKPdk+lFj-d>60nO#1~-N;Sr+jhJEbJO4-+$tfkA;q(Sx#aLBfdf(UdPlECd=qzw!f2q zRU{#(^cEn!0%8D@1AP_zIS>Ubzw8o`tbXD@zlXzP}~RV{t@b;>&1mMw-XphBL!x^cx4^J0JK7;{;WS8 z9s6D8Ps(u}z6%p3^!BATbW|6vN3`$G`V}6ozXzi4?!`XIa8%y91pTs zzBV~M&LXLpSS=1RwG9hL1$$9y%X3u_@U z8sSdfmfkzSa6P*IIgZ6}d6rgWbLV!iY9i%WF-V5A>ql|2JX)9df%1JlO~@)864fYA z^E^rYhfqO08t4mRndkFAMmp^hDY@Ym{;&b|?z8OYm6V#``!Dh*Q=&kSb) zpOw8mxRi5b-5dRp@(e?)!WL~$6^CEN8_HRdAc$jQk^e_xK2xoZ;KT)4#hA z0i;_ccAoBqx1SV1p}>z!x8<|D%~)sTHrkbwo7O55ISXZ4z8y;>^f#QxodgPc5kwv^ zujjM6-yZgCpL61a_-R}Z(M};Eqc7tIbaXi6Dz4MFAfBTmn(gscbaE+2&5Xt|PQyn- zuajSwE{9p?Xm1|V_R+3BTH)*KCC8~?Xioor-BB1RdFcat9U?vKFzWK8{95>nr^vCg zRdcY%r^7lMamT}g~nIL{O`=x*h@OQ+U1GmJe0INNvgQ(9L&e3WmM*YLL zw5iJtUEhZQ#|s6F1Q<}|0btXpkiOu}a#L-XJiIA}x8oeC=55v3ixxOqcbxHKS{f(A zHh^HQz6MAsAuBB7{pV!j6wd!1_0Me*FbJu4rqvdAou|Telb%9&h2+^yR!fZ=J@8Q& zT^MgN0BwM*5?F7s0rk^X{h)+NT8r~4?Gu#)Nw}YQ;{{M9187+fmVapu{*iH*ke9sH zb(tEg9%0TT`yZ!MXf5TM-xuxynCq%CYbON6>N*Gpi_E@ID_^hUXr^&&`&!UUDV<{w znCNiNN0C?RA&nkG9#QE6PNf%nBwWZa^PG5ecs^2XK|ajLt0Irr{EZPg8|6hgdMl%2 z5R&d28(Eb=?Qa0MZ2)G@q1N`GxD{;zCUFbCshpK5wAFB*Y=>NmF^%{3$fI797X_S7 zy5*8h9DG|ow{y`F`t%t^EM>z_zVP*L7qqz2z(Th1>Fb{}5Dxj`DFDy%!C5-RRDV(r zp}_gMhNQ;RH-PRg1eK9~#1DPNAcXg)nNGg3SkNSVlm@NBmfB3IyAvwA!J0X2ISb zG%0qzoV?r-L*mFjZ9_){AH`qgM)HnEiND}qQ9&~MF6>G4YZtO)-M}upuXERI5OLKG zat?sH{bEKOhu6eSSb48K6T?clNT+b(%H=b6F{(5)_!_Tuacz2dV`#v7A?=D1ImCGD z!s}GR0|4u>eY>?mS_trJPI>r|wVX0Nw9cdBf`ohGjMROw3vnBlekxNt1PfznEwE1w zqHNJUYikOLMz{JK7`D#2+!q&bm{!h_Yy`0> z1}$pE$<_jERsxY)@E&dYRQheL?mkhS3M-X`p74v|{ zc(*Lr37fj^M8;-V{oj-iwxO9VqOu!8A#EJZM0G2G+MkpXSI!rr3*CT&q%8;}cL0}m zn6*&0H(b1x*dCdhXuLj_B;Wg^cQ$OO#J6L|uIsI@n3Ir~)v@-6&;+9*c$9Wh777X=Bw80Y%KZWB3!0&J#{A*URpX0 zPWlUN%*qv`E2R1;XsfIr(%FOU(d77O+cGy zj7i)0ybZWeWcf%4SHl_FQ3@;1dXzBQ%)FC^y(!`u2H^8JS76XNjgdWS{jPUSO3wc` zS<}!tnH?WF18W#ATdvhv;^GtfblX7_E?Xxmw3|s8=Mj%udskaKim|)z=Wn2a`#Zee z{h&bLzM+E=;mXo7oi~5)M=!lsH0^M-d_h@Vq}Bo}futbyi&bCs4+R1@0qM!^c*f^0 z9)CV?^ozEDL@M28RNNG>{e^w!tm}}xiHzMo{E8Z1M{J<75#V7-OuT)&cCr0cGcy-;1WPwc?OkytIV0+_<{-i#O(eU^*_vzB59Dr z-kG#BCa5^(?>zl74e@AaBsH!ryAk`E;U@1bA*s;~Ey%4hDy6y>@I#zwF8-|R{@GxC zjmf+Jl?Tw_bSW@9#U}q^4FJs7pUX5;+lYLLeZgdA7a|*M|C(d(O!%*!%om{OyhxMX zl39#n*^>0qa(`4yIHuBB*?>IPO20*oKA#|)*fcU3lq~iBy5V0BpfBX=|PT+n3N0y&3nGSQdmM;;s&Y;o4YzJasxC8Nd z=J^CWl5b;FKU}=D`MivQ)KlEs{GD|<*C1-zLKLhoY4+$4&U7#o>b4!}_%8 zPl!YE<;+pKgs%1Vz<1hST9qwI()l)Jq+mOFNww3(+bRVlp@!3(d1Nzh*cj59W8l1& zh}hAAjv{W&Few1hK-A1RFQe55jwAib8Kh$T+|7 zZi6Wsb{7oFj2JlD!+?5!Y0nG-1m6itTW{{aeX(smxBJO^?CPp$ualJ^u!<`f!)tt< zP-!*m5_uXUcr;qa0)-gW=ZoJmDP>&V&jJPlLkHahbuR@Yh`3HLIa?%umj`Se`FRa| zu;*;(-A@^@A!z6RO839XrDGo=c7`M5T5i0uUWe-DjqX;Apk_z=07_ZA2(qnnc+@i7 zw=!HO)BxE3SaR}SJFF;`o)1c`U^kK1naWlDx}VvVvkSR{;TxxNP_6(_P3d#F_8is` zu0{Fh1-yGU2Blk+X+1WPa3iDx5f9{Ah19CB4K)(uC6Q$SJTLs`5Fp|!Y)7uWd2t$A zgnZ{)6ezx?_3ZRzA;l^G9k9UjGD?LAf2cbAT>9d93Qw z8yG^BL;eGGy8^ecc+#UBn3+#@2(|KFOBcdAB)RFLw_W>zM0-x}f*-SsJg1%lRJVJ_ zF%8IaI9Y|Zwm~u6IttEMOB|{LP}8%DOHQ2h%dIxi^OLBN%90irQLtr&Fs8AV(ROcDfJn+evGx-e@9EW}EMjM!h}OdMc~?Y43&|B4K-*)Zz6> z=HSw2xAEzMRJ_sb@xw;1>(nd9UC8SY(D3lqn3K4s-mbP=ke!!U_i#vZ{&&PoM@qL0 zFf@7i{ets*3}?$^anvA_S|&juk##T82G-x2^^Eb5?1WZE9Zq{M?TyUdm)_JHY(B5$ z)@cUc0Q{w7`MguETMw6(Fui4~9RfN_PfiI5uBZ(7=lj$9&z9zDqx*$l zaDbGQ3VuA*Juw8O+Cdmg^q9mBgq->LYzRKcqSZ1tm45Y>cNMqIe(J9!r-lLXA0Pe9 zc1Hc`0)fGG9+W}tIn&U7AensT(jACca9`X}R$P;M{d6~=^_Q>Q+I$Ix$h#Z{=%=yf z^Tf8|x}VNWve31`?MiIfo1B+1+o1*#0&cKNC$X75D)iP`Sq=L*8ut<35X|3SUk$j{ zh}kx)gnylSW&;MMq)|wIg8B2@^3E8@?#_3?JDCz#z}>0q*>5~Q;XAXT2xuQcK=L51 zP9^7?VwaVQy!jv`qi6H1r2iR&{H==b`0g`{_-}uJ{r5)XyD&7>aN{SrwJEaS;AL}N zIe+D52*ynr?fI@Si}&h%mR7irD^k3bH%@}_5v2{%nU1qIxw)J$!@@ldau68bG~`mv z9hR6;y)*qmdJNuapDVm$Tjy`Na48IK#=cxE%lgG^Y0b8phE zOA_?oA7`iUf2=99y)%=qc?DyjpwjkUG#TQJLZ%=5qi9sxDYDffi5=PJE zL82EzK<|W1bAl+XtC#O8oahcYzA(_mWPKw58XJ3W?~phKuZ+4)yyAL`uQOgm@fLI< znYQ=n@%Lnh@Hn0SP`ryCG+RXR7dC$Ohc8zGPz{3dHOruQ#JFN z#w@wcegk}53wQ9mGsyi0QM%lKv-1iLBT^36pkM&65$x41D<~R~a@a3EvP6$aIdo6p z^&0yBtN$O1<-@WFbY0Mb8~d*`J&s!qhn!+k3m6SelMPwML~iFxR_EW*lXEJ{cWIo5 zqQj#BMLdgxMbCZ#+$9wQc8Ik>7KC~DVcL>kffTBykbI@_z%ya2q)|cs75<$ZHzkAI zIuS_wq_gkOt1AdFTS@patrt_wH>x7#?RgZ9s>LNbW5tun%Ewc`zVMu+uf@e_191}V zYM>2fRESCOur4fV7med)sBjX^eEYuxktK2bFCgftD1e=3%JiN=Y)f*HUX2v`nU{#M zl=06eNq_}UyH`hPNkw}{A`WMH`!-m{gf!))l&ZQyQH9yEpgb#SfcQO6GTlZL&vAT{5UTq)PqH z)j(qbSJv@1(WNOq-sO0+3`lbDpMVA&MMlIrE%?HPhgVL%81&j84fBxTV_m}F^?2&2 zNI{jyezcUHHyuSRX|cFC3-l>HPU%$mh`_41jG)SC+=44NQgaTQLB#EITG+2Amz8oN zch$xl6GGD~VXR`Cinx!{)rXaFri_=|LCPdL1@AEZU>OaN6k4RxVxg$KGFpT9S{CBj z3_Nj;@9TG|heOXvjlXGy833s@-+RV=n*`qg#1n_v?kbDOVFhw*`%>8NN$|Klhenai zx5v#TeCY;+0?Hdff-A3w+{M^X3MDUM+*v*FI3WQalojTqE7_?lk$he`xIEb?C3d>K zO>#I@!*9O{)$7Y!PXp96Ro1dD5W1?>93F5|zWhhxo6Tg*j;D0kLg=xyf*;zBebXd< zRCn*U-Vl}`eH0aygi$-8APZ4mRvU_L_*U6HOpEmU;hk2;jW6Suf}d|f__X-wUIFO9 z%k@~yo}~*in=qqj9|u2p!Rpj3?{Y$h(T%SnkBEAk)JU!ZwW)h@r~6X3`j^R3m`9aX zPIoxOXk?(E#qJ4@AIo-s_LOygb-oMwK?f`M&ycy9Gj?73;uTfn3@<*sG=k8yhre%5 zP6o0mA5s`~6(ssmytl!MPC%Rsx_&o**rJ6Wb2y}OnXvBtCo-U$je6yd#`0UKFvMg` zjZU0sRz*IsmE~|(L2(A&up!%s?Aq2P0TB6xO5%wsIoN2YpVaq!CD zCBfmD3-WG%CL)|qB-@(qR7kR}>2 zMm1U@9^+yn4dSM%JngcDi4u6HM}&?B4sH?Yvj`=3GOn5e8XfWeo6x1I8Ldybrs;0; zuag)z$FIQY1?9yD)(y0L?n$!%5Izcxv7;XJQ##4uO19kfSA)2qR#Co@63?OpoolbA zvqIQjlWBP|JT^#L^G5U#6Nys*@x?0qn%In}l(SN(zhkwN=raQ#Cj;IdjCeBQ#T+P; zQh~)LsUIqqs*k%y^Hdx`vLxt}pN2lP?&-G;Rk?~rdyDvqPH-9DjBd=<<$3$*bOxqE z%Czhj4_iw9S{^DkwkUT=4zN+aQ-^Us1d5h4FN~GIpFDIqew2HtI*Ce@j5i~DdDIrh zQrjKRFaYRlmA_2K$s^#p51M>mMcc!#DveEDuZid zGx7P=RJlenGNEa3$! zyYoyzh3J$7@uJ;u!4^=tq!u8JJzq~!IR5}}5!|bU$`$zmN5~eZ9g$kR?Skc~!Fh{L z%LAfM`l<>jxA%*pRIzu>YMw=OT1t2Cs{wuDtz=mcjUs47p0X{z-LZ#N90gaT?}ij#p;90P%v2k!H&Uftf`4ZD1GGNM@5DfK~;Tz6S8;nTPt{kTbZUEh4@V>X@DoLba?_-0_s!o(`DsNn*~DDrQl_rkRI zq~Z2OW^)3y*LY^1$?4B0J>{&XMY=(uw z?DulS&LC{nSeZ-2t-AAOim<<0B^t-UvQZ##WZCN1`X_1G7_X7?Xtme6cdeGuC$&vPv=EqvnbtIg~myLVEe z56n-2;9wPuU^IIkBQW!j<)5AnK#?F0ss-`au$?dbXC(yK%TyfM@q)~|#2W|C2S4dp zwya;j;D7xKunm23w}j1DuGN4(>gtaqa`)QNlM7JfkPT1a>$pC=XkQL`u>aXN(T53o zG@r9JS>%~WyYTZ1&@xPz_3RkaqO*vo<0f}*vhaBJC6NI9%F|tW60Tm{;_h7%BTuDR z^u*C(f~_Wvw8ig`hfDQhf-JaKocey|ezDJpMokqQQyGE$FHqv)z*zBA(%BEx=&$6- zvoN5%P=6&a)BNB4oIpg&fBk#BRj%NC?7@V7HrKWC$c>3@nY z%$?iuSLiydBLd?THMZD}o64Z}lno3?I5Y-sOdAKoGsnB09_)z0+)Wzf84A~)Ct=>Y zX_E=_eVEY5h$PRsqif)Ce;ltP@W2d_0|||s`0T6u0hZ`Q8wzSqAoik>Cs$(vS3%E2 z2bZ;+@87#21Xd_g4{@kwVYv#2u0#cGo|;EY%k~Z_IIeq|fb;U~+WHuR6aInq^@=(S ze6IfGCcpm!Q~tI5LXu|#(ccB`mCv45fZ*lwa7rX3q>zv&SC@?os zAf9$@8lW+hIf#Gu6T)Jp2FLLBfDzS~T!aJL;8=#UcRhghi-;=wKU)u_X#6r7)O&tZ--QF&xixIN)|dNmqF~^i{w+;miW~E1~!LcJ9cD7 zua7)xZC6x87+%qbgF6J1W=lmx6R_3|hBC$?x2g+)UMx>p0DUAVzLrqE3~@2x8*0aZ zcsCh9b0L)Dbi^T(dGIWuVofP*tjBS_jx?BdRrDO3Amupe@A)oxB3iT%GKEqJ9ZQ>? z+N|-Vkr=53Nq%#%{XG?7;$Ag>IdB`xR2VT;cK)Yr9WU`8dd_^&kzSXUz4GT9Ge4hG z_GFAE=^CL0g+-MZ=T-h#28Yc!oZ~9&HD(!rmVzDf{517%?)mHH+CzKc$02El>N>r) zcZ7tQ1B2xv{49(Utn`Mn&Q^i4|A0g1v?>NQ&G=ROigkk>$`7je>75hU;~R~ru;?Sn z?jY8!U-#}p^)<8luRrVw5*)>d%DgOu@V1v|P+eXKezS*+Z_=eDdo86UN=Vf3EjXCU zGTonZE_w=_KBtHNfm=t&u4pZH-^BdKa~ZVzH%9oOurr_#iPy=ovvO1{ihUz`w5J^}TPeJc-Vs5C0@^nOsLYU>3^| zyHlrRckvmt?&<7ZF5tbLG^O+SAjB8E+@6=tUyrzU92Il!$VGL-28HtHix-xujfSN9 zD-Y2Q--lfUzs*Q)n=3-6`JEXI*Kl!NZlpe!t0kXWgkH%wsS4hFd!e`zN4bmELlgfV zjFCL}b0ACn#6H+HYTK3M;wozFR=WfhoOZw4dHdKI$^@YOk@dr1L%ifDp^UMdULDr7 zZViSj*~r(HRzRa21Zl*B#t3vWTDP3zL*z?Yl2%nCOmibs-e%ycC~p5 zf%o>x&yd}+PzJfEeSutRjbQp8< zb@}sm+#G@H!Jt<<>8(S~YSBXB1#@it{4eOb(C=wvSg8L8x1c%@@xDD>^Ft|fta0_mO1$T$w z?g2tzf;$Wj!C|nVL6XD!`=3*FKHa)ix9-;IA9(}69_ah}I) zmhBw1rlMt4dbXO4Yg@wUWE`Qw)%cst?uV$J2@c)|gLewaJQD z!7=$Zzj^6+doW>XUD^gjmyMgx;<) zpM&ZyDbM5HJZ#HO>byCcL^*t|l6X0Bbr{_;d=5Jkxi2$f#-~awh89ChBRB!8%X~wr zp8k@9*DmD%;wlk%m~Q^le0EYgOxV>?m`Z6luqpvfJYSKtZRpPo+NGT`l5brRjh%@`79a~yz_JkbAa=w{I^g_-QkxJh{@De@W{ZAu zZ(+c?UO@c z!xcC@y6&OpO&2!r*yG zaSqo9edYYe@ZM{Eak2(TeaCT+m1F7AIWbYf#wIESG4{OqdjkLaH^`H3tFElXeHNFW zLfBO#XVw!}kj%!eg#&<3`L!-uI98b7M|M{TdCqkev$$ZQ1)b3oZo!Af) zJ*yE-AoG{+~%}^zyb0aXVSu$ev zi&bJsZDis%gY$NF<&h?+pmK*9-;18l>ZsDz>nYR1|Jxs!P}51=5g}BuZq+u?Kj*@8 zT(V?GH))7#yN0Rn73q_O-U0@#Q6ZftQo>T@=+7v2?&awZ&dE$^n2jILDCch}0Ye6D z*K>s{Zd1mkN@e%H@)ZzHyqh2LiButbr`^j!$x~_KK~EcS?Y$CXu$$m~o;5K|*B#+s ziMSrOi8@Be4Y3AHi}qOF;pZ$qvFH4|U%tHcB|+$kbP@G*c`8Gf=>tOXbS6P8$RcMx zU(*41B}H~jd({i)(ZcBF3ztw0ohPaAj^L+#Dcm35 z59R7u?mx}GLnl`f!`_)*e>Py2)wcJ;!4ejpkk{3tMa;;R9R#4->jfk98FFB1lJ%%)AZ?S#ODb4k8pkgk8GSKZNJ} zMGG#=ijn6f!t_mT&>Ie$oS(5m0=x@>5+efuy31*%XhX0kN;dVsaJKEY{{Rq)TFMg` z=Y`a;NavbNiAbr#{oAA&l*aEl=s}2N2c?hxdd>sS((jaGQ?mT~4AC1sZ!hRZzXfI9 zV5!2y&3Xmd`^56sCr>(_+p!LYYAV5l5p00C6DWVB?x%s1xKmh~Fy^OqE-Dk{;d}P5 z1+>fv`JsT-oz35Vz3;t6@TxC&xGQ~;sQf(?;*RGv9wcB${*nJS;^UQ7P`>o9TzkcQ ztt>gKmE*aF_~|Dcc`BRgeKEEq`i2EsqOG6C=e{p9V6_4qm}yoV44p*z0^T*lf}iP* z;chReAT=RuQVxzub0p7ktLE+`-oykp{zc3=354Nq&FryNZ97HuBx##-Vddr%)4WO2 zYKJJOn+Q9&-VWNsQjHisXlrKsyOM1=W>N;u7DHX@1t=3H%E!QYVfO?Ssb4q(?lK2x zc|t13)f9A?iSv!(x4ss_^V8X)Gw55 zv_nhig1~79j$=WqUG&oH!{`AN5oiL*{$h%1cbYFxO(d3a+H{#P?llk6uRIQ&!DIQ} zfRD%Ut@lcxW4F9j))Lp%J<)&`3>|X8QComqytC9gE1}Vi?Bxp&A>m1E{EkUja)~i5 z6)vO44(0oLN>5K%;N_>Mv&B2%DD19*bF^|aWVV@6N+!(qSTXa9Tf)C^$CpqPJPYJX(YGhDEH+ zNzv=qI&C6{DLpv=tv)|ST6l?B*()CfGR5!i6b}^v?@RK0C^lH8q$>gBE&Afdy)|H~ zMS+PFO#n`FT&F&de`>=@<@wuM9dP7wv9?d`(!TxU$O&R2KY9 z2ca1u`T92EAwHk@-69v6h%D@dzX|_NAo9YaBnQT|wJrop9XPT{2pzZq-@MgYpGE{y z1Cl-9D2zZwQr4V&ID6B8Zs#qJaIq`Kb~A-F_4j=>+$^w__9b#1CpO(EH$a835b;X6 zBcg6+?9XYFNN%8lJI%LXj$`=ri$bDCu0q4F+N>doONrh*ZTvq@a}CT)O*bd{Lo^D4 zU(*xhLN|tZyvB!bEmmoU8_jnxw=$_ZOKg% z^uTb2`p{MLHkvy0i04YeppH)M;1!z|uE0SYJNp)*-?{25@wnAlR;#t}=)YDT?y+Z% zm}##kV(94a>%6G%m*X!E4S7A6EZl#={tkXkW1Yk9oMXRql?WN9qOx(ipB@$smkOCe z-%NZg#^1X9;sxu(Da3bUJMJKO`wFG%C+-)ATy3+(o8G0103SMUe>ZTtF6#jhQT_NF6CbtNzIZj5ff#iT-Zymls!k%8*9WaDz8+Pv0*rx|L`qF zV`o^~D7N6}j@2_YOTo#x@7;OM-A2zbx&Tn>6gPY6;ft(aKtx1eEHdq*Vql=?*jHy> zyRqjnKrZVQ@~FWe-s19ap_AGj9w9j$0UI!Dv_4C4gRzf|tgL=$*6Y0C#5O+EiGt;s zO&)P|E6!cUfcm$~&2yR?P#$FU`es>C8om|b@2Gz1#qGpNH8Y914`Urmm7i?g6eN-PHPvRjt0Ibeq*Wg;t)C--~gna?!uK?GUn!793EPA+mt5fJ? zkmhOCq^&m3cTNs34n6*y*!R-=&;`SvqYb%1#mlbJ$W}hns-&l{+j@dSGbRxouMC?N zl}A$AXn-%@B`e81p@8#l&@}QlQp{;tM%4Nhb;=!cpphkL^e;wfz>_n@Hwwi4%p=RY zD#%kT{4yBX1!C2w<>(jm54UYvZ$U;(muE3^{%Wm8&jt|rP_pITZd^Z(0b_C*A2R>! zh@!$azF)DFcn7(~U94ExuItQ`CKA()B)x7mi{r;DzCWaf<*(ph`%Eg?LP|;dp>Zkc ztbgt#A-Ub(p)U9cyV(-deD|`Bg0_$SZ?U_4>V81KqgLavjNxRnH0*%R14Ph7o)CdA z{c_%REGPS6X>vGhPZG~PomiM95D4^b4B7wF8qtRE;5wz*r!T90%{fNID$@4hQk$5d z>sl}^x$_ppekjkF3pQIB{LL3w32Z1KCm61PAR4l!LO+q7lCjyssH>z9@cLmWhiCic z%e|7taq0Y3ks?Axggp5MUl^|nwjLVfNpa#w{5MI&y*LUG_)U|^GvIU6Tz!vQN?^76 z%GEurq9YtC;3qfb#F3^j9J)YyCQ_~^prPi)(D?bM^RV7W)xFOs@C-^SvA*0_%vHjoPnCFcIdM;0);RGI;5UMgw^&2(5A~%i}paNgHdXikLALfb6cZ0Q23x949I0UCPuG~W_elzUj^UDIr2Um~(#ll;X1_NSu0J>uMLqk%;FpTg04_9X;5TeFWWAIA z;QN~+BiCMIvqa4$r@&{U`k=cVS5BoObJc+I)ur=)pX+y4oEMVXPw+QniHK&tf2o7Uv-p(obbs|$Tq=2Iu0pNv@odQ~ z=-$MO4$&11Q-BH>F0NVdrbVC8Ye?TLj?AEc;qoXcd7G#T!4zG{Vq4L9=S0j%l21iz z&O!>uj~+Y|j^N)5#sC^Ol&CL5bKmHMz5SvcHYYk72>;^v#{*JxIoLZ~uTdZ0fD<9< zz_EtDrdJ)EZp`~armSekIhen~F8iXK#EWudFF~N6n|<+cqE;v=w|BY2SSa@c{1a|I z%kb&STC_DcDzw(02G-k~SG!Een|iSuc5l;IK_Ls}G%P9{e&(G$IGi7zv9NI1)(sHt zPGNoIt_X&CA}OylqJ2P{a>C6A=4zd+=@`L4V{jax7a3)ZDoCz~$!F_z}IRZP==9J~@Ih zqlv!+^p$$YpA*dB>)VeqyWKHZf{z(xP{jV40*jn)Z4;hcjnz+C-M+``w`)g;d0X?0 ztz^PjVX_P52Q>5Z zi{H0VKYR_o|I-drLvq_qWlWqgk&mW4x%Ajc$lz;#Cz}?RgMsk@u;8G^m$a&}r(aG8 z6pcfWZH^EBX8cHRgB{cyJd2zHHb^hY!!rMIVGe}pw$PayNKo#|FGW8nn4ZWPwk9M_ z&vycFcwz1$qQ6{Z(o(mKqvaFueH;vICn6N0juR0J9%YcyLxtVVN5BuLp7e`Lb*wbf z$n#NN(fuO*lIMF<>lc9O`}e5Hrc+uw8#R!#-}f+czU1VL!qXgksr>CCIcgXbHeEfwX~VsXwyWsf>JZek*_Nzd z)qXTDG?3Y(IJ&uD8&ZqK!ztFhphd)M`g9n?0FXO{o(LomK79Y#s}X?JgHi}n+ximq zCu1xdxH4L5S!HY^{B@;qS{ug#%-g0(Hrnd1&A~3}*Aa{8$TAV~DN@UM!+ba3VdLms zY9tf52v~QibxWu+8ZX_9+{Z=#oGh>2=q0h+v1P4)yasIxVTwg=#tH0m9w^-?neW5# zN4U_*U&m9h>QA3r!j&MU?DNwg2*s%uIF9IOfMI+MPdEP9T9TPv10G{YVL{B66yE?Wahxqsd-V2vn7B~z zD(;&#cAUPnB^JT4yeDe5eC|?RBrX4RIrz6hrRL^~%nuXV_#ZAIBu*;y=2zWQp5r++ zHus+kq5<{)9VsrG(4Ol`h5DkpnCrrkVh+=(Fs=&d_t4y-E;t1szFVRmS0jNQ9R&qHbpX>4h%RVtgXn|7FlEs$lm!5qo6yP|D;+yYjsteNY) z%r8Q>pXl{?<`)-MR1rSJFW%+x2qB6L`%4ko#n2jOS>1KPzCOV4HUjmZo53gb{k)AR zmU9!II`)p_lG~CPV}krq9{(Gk#Z*D~B^d){x+CN6E5izF5$rIL;rw@z!7ZN*Pq_;li7JGG((gsOlV4&SdU!dNPnMwU01wMxY))Vl@T2BQn zaJm=LTKLp&scE=nrUz`y<4PJfnu# z#R+8S(Z7#_@prFD>|I4`wwg?PKa@C9@7+-9v~_BX_1hT0KVU2*;EM3a!B;?^@0Hfp z#K%pL>jrZVv-0|ba_{k+cQl|Hy4p}uICpG*J~U(awuDe$brpqDv{o0D5{R6_9Z zy3E`ew#U7$Q{<1*?z8ZFNUh}7{cX(U zWef$y3&+u%5Z#doSf#dWam4WM$^29_dp4&H_O8>DA_I~1p}Q>N>#Opy2VscvnFI!H z<4!O({Bj=;s0(N}2dPw$#Y86zUlta>B8h*nsAlrwi<9gtX1mX9uayk$?}0P1>?bAP za-b2(=4SAwqYJY0liAd47gjRmq1(@_EO9e&7^225)Gn3Gh1!Y@mUuH3Ow@W&R4JNw z)mYeyChT_xC4KX=&07n@m1%1JhTTZlNT;F~0igWS;M-`+#$-sR=p&JhH__xj;B-bZ z5o+;VP+Ys}&=%4CY;!gKGgs&6HY$u^KXkzfC!2V#l#fjgWxH_6f_UkARZ+0Ru8mJ$ zS+aTaYv$t$j#)QljS_I62C(Ls7k>QTGsI`WwXmpsXB&0K z_d3paKmy>e;aWIX2%^&LA_p~=U3(HbrFvTFdaO${u7K%B*{Mmr8au1YYo-tF0^8dhsKg3C$VpYPA z_!Qp7G`T=lgW0t6$pDrazZ-w( z-mJe^?!|V{)n;%afya^vk6sHnnDe5pn%LT!##WT~8d7QB^wI%jva9`{LFM_&j;<+) zr2_>EASU1EEhM3w=I=l0dyzZ-x2C5K0FWaT&@Nln2{UVIHtlf&*?LPL-V97WnC6*X zeq`B?`Nj>wemc@T0mxc!xvVBc$k|Ri$gZkTfS`h7%F#NKIeie=e!~ooP zZV~X6TDXjOEa3Sk6tf9zKK{4I4px^mYkS@(Wzs>A@6_1;gD~e$mc_UO1Z#DX2gp$c z`69RfXgCPEuQzew^h+Y;MvXL%MKHCN3H_e#=n5f+fZ*BL#<<`TJC_5 zU#GGJ8Fwa#InJ$wQ&0F)xRM3&-dC;*G?Zr?FFtt9?)D^SWxl&TWL#Vm9)lZJPjW9e zEOxb>&cB|ul9o;_<+;UC4EWb?rQ*LCkTHp~Sz2pC`3<%>&dYl}LJcjeL;g1A=O93+ zRC`{;yyWkHX+n0_cj*SE3+(Via*(kiVC^K#tX2=)vVy(c{8temzfNWea_UU8y(Y@f z8FeJT-)`xjqsWf}Q}y8agqFvhZ&4}n2z%mV6j+MzP8B=qBmW&PDnaRzc^1|+C&LL= z5%|?zvz*|=k(@vsM!9WIh~a*-J%sH89uBuz!yJmX9!?6Ri-m9tmU!RVLUvi8w zXLvH&ytoh)ZA*lc}&L<_dvb6A^!nLDCxTiWP;Y@|DM2a|IzH5xNe z^cKPb_}d7^5H8x)R535E+lUGT9s`=Dwobh|hvK5Vh)=?N4@8s;L7TA8<|t z2c}PM5(K-k{g%1rT|5`t6ef$_8@SFIt3f+Ho>ZmwirjOhjoGS?XO0{+$E2m{2iXRf zun_(a(Dgs(0GNlFl>9P=SlcgJl+Jk{cKut%4mo`Qcp4N`!`Y@l(O({Z>!u|&w)A0Z zzdYm{TKNU7)mT+bFrG5_GV<5Q7%hfd?12xo#DYL}TjL`aUn^rx zG`1A>R?NI%3sh4Y+$KpJ9<(E4|JcHrvQ{VUOWvW4+V41w%ItD%xE5+H>g9Pa$(=p+ znGzhM?IJ4XpIP^-Kl#5iK)RuMhi}I3m9h4v8T*MwC5oAxn|{s%tE z-4395nz8IBip$Xd<}m(jV(60#_#ddhX{s5i$A9-fH2BPR(g&{s|98&<-QuqaIIKio zzbX5Y5OCx(T03zc1N9WyTeNwS0SV`OIPwG)(*e{vTgk;|lA#rAEAa(~@-QtI=V3L^ z(jDe@{vAf)*~>3RIsYH04{a>c>U%xjZz_- zrexDGt)@)60dW-;bz%LiY`Sl{n1pHREdb`uP=`h0U_7$vGH$$id6~C!=_4szt3{qF zeGIJvGQ@ZqR&X;!y|j_`Rwg)VQMFdatpb*xkxdLhm)6&gkp98HWYD_5 zjBWM}U25M!%LYYQgSbYswf7yIo5@q7no;4kWAbH~^)l)B&afv7`)1j3+~CP{x^q_O z?@1AZ^v?I*T@BC7mbn2|@8b~y3k6+ZO@kqT|7-KTOyygmy^Bh&t4?Hd2exdq>n)kS z;(d=Vo+4MysS5IpJ)EOM7rW<&Q1<)y^%?iViFAoFcbI%iQt(HkxcK9bTjN?qZ}d6| z)Xf`{q=Z6_BwWK)iw}>dyvuW5Y!j}tHiP6DCs8?MT`l-Fq4+bg6=Z$- z*CzK61eU-OqR|()jMl&;*HzN>x>kF~Wc`vXB#6gp4)Z>iA(yweL?$kS9=`@O{8o4x zf1yK3ZLiBQxv@}vuuy7*ux&FK9_7|nGNuiwhcd-r8Y7@GjSoS&Lw1PQ8bQg8DfFRyBbB$|to%pY9dd#pq5lX< zC16#h?Jd)r$bQG8XKW0qj?J6eg#-4;}5FzL#EQ3!wU8j%XRv?s?U1g2GOGn^0l88m3 zL68;2kW~lWX|3^`|4nBlcaX$V0C!N6&D^(&>|0-ic8a$w&SYysvNK1Whq9xP0~9OB zZu%bmuTqlV+rv@;FHA3(^GaaKc}A$vUcN@7g7nP8po#W37HK{&7(Lz+K#22w>b1{& z{vF_?e*x)7o}z}1tS8CyM-0w5O}mCaF_ssvrKTSJxv(-*`z6z}Bsl|mJ(zeT%XL?+ z&_Wh#jgYeQDXC`PDB_bYRTA;9vRkW1H7in9p6V~l~?4d!9>JNVnV50?2Cy}hYIEL6PTiT0kK1bH*3 z@e@nwdXG+#;CYi<>M5V;Qj%QSrDI404uz}60-JE7<+cVt z)hV(BqMCD_$FdRBg5J_}mHPXXRcl?ZPR+EwyC$IDbw~n^<~@-d@h0#6u0A29g6g zN$>)x2NMG-g7vl^=w@TP*!)HsET4Rc@+dCRJK+c0S>FsAcX0@>lZ9!*!|KS*_z*Fd z!oUA{3Cq=$E@8YUVbS}eE9O=${ni)b@Mn|MsmUm1x{*3xVHh!wgk6ZcxC-o?aOebV za7bRqlMK-YpNa;nFL-%IJ6>}}|H!mq?Xy_T`N@C!7!mQ$K$zfE=59~qTF>)IJ6R19 ztCoV&SlW2WOki*Jxz1b7?@=@NyEJl*`JmaKYCN3u&cdW`Jrw&z;drjIqT1G*x7(Xl zY>h2n{(V9v0)&+qE+lz@FjxsKP3G_)``U@g&~{LL)dP!?uwIGzF|%%0xKTnsF7tJx z1Soty(x0R2(~$xFJMu?n+B^GhxR(6yd_A52$vpP$4m{g+2{17Y@if-L8)cCIfA_cs z0J>dF6ro>|w!vyb}8bHz!t&x2twFn#$ zVtTWXGH`3X9TK4eG+)fkgB9vqCzi+XC*d>css&d`Wj$xr@$krlaKaNf|$xe)w1np#GXt z&gHyd-!Pto#axss(R3cGc#+Q(S$N1Kwz!q?A&N4@QyC}LV2)c7uYQh8VJ`58DN;QZ z4x>yJ1{D)zf99(jDxhdkdEu7@q9yi7aM*BUy{zfj(IvL5L}MidT5C)5XOJ1WEU3kY z`G+u|s+Si13LO$Ym?(Wu%+Or(SYN5CuJD#M9x8H)2OTIXez%0NdWK)z!#KxN2}Ql+ zq>jOLGWR{;5+)%DlEw%hdyb=))18j>MC+j7Ki8>mnCJIvDXGXqaP&#+qmT78;;l(P zOZgJY6~gQ7g}+yVjwi3hUh#Gy|8Az+WD_ozD$vz0(R1c>lw}F=}15JW(Cd?AekjKjD;SO1x^_z{`y7i5|WKcCJV}J`pmI(bkBsx zR9w>CRut0{PF$P`<$P0I7K!6o8tRF$G}zfq6rzzPValV$21uCY121xMc>B6qy!7K# zUa!oAI=pHRGvRo#vUTQ^GYDq#UMz3VQ0&g`8yQ-Q0wAsp3 zjN%&7pXC@^B0xpM;>wSUl=2-=;ooaZ{YPxI^jflXXAmg&mG4J46jQvkqQKjj!Sz-- z7@6OV*Ne(3b9_heVI=zkes^TjxT8!=uHg9p=}TZWFxL~5H}zyzNJsSPWHkERQb%WD zNJi#HUL<5?`DbArw{X*U*K}z6qO>x*?*I}A)dUm3TZAFe3NpW=l7`EmrTc>4mo@tA z)ciQAye5)+l(s<%fY{6$kQ;mWB8`2pV|+j!WKZP%cP(7vcLy|@#(!AJc&}WKbtM1A z<>C&lv-qnilHlVcQTLf$cAYHf!8fD)V+>O{-7oE9i?kGj#TYzNR>WUSfTN$73CxH& zf(XSJ%cdaOh2cQj?PQTG)`H7X_kLnF`Fn-kBmf`5)t`2Tx7_1>u?G4)Op6mbJg4sw zga!~G`IWdUem%Q!$|G!3d~nkFjt9xCOTn`yUMC4od>k{_!}|QID)3^f&gA(iurk$X zI+0bM$3%Wii**v?^~EJ5m=na#{LK1h=$7`%#9jf0+w4fv)~R)nyW70`I+;* zi%z&!TGdF7h^fy4a<9A5yN>P8dIKbz*#IRrsdiioVtS z!WExds8o>&<*hJix|3b~B^LP{(T~T^gH~TKo_$*rkKe@sIOxa$|B%iD{dg$?DdoPC>me0?uo-*)c0?26k^$24MI4-8jln{_{oXf}hWOHr4x}T(tBl)-E=5zMVH% zqHYamL{)tAW&1RFXA&huT4Osn6MC&*sqii*ZY4en>MZOyoG+*d!Z*bgFI*qN za-Cigwh1LiQsrZ2`J|MBmL*LEgv_9tf<#R+ zUk}wwd#3)p{r2gS=&j03zRCDkuavv*T!GcUg|wZX@HS_pfj(P$Pl497)m6=l?~p^+ zh+sK+Qkko>Gq1RWU1~iL)ER|0oxr}Fh5Am5iDktFxYrnNMsO}JrNz*)ly(PsFvnM8 zSL}BkWwhYFPj~qz8=qPr#_ju(JdkQ5Vol-5ZkOp^c(2|s^vwHbXwJMCWQWD4BEN4R zQ@2mNkabN*Y*;UxRtvG2#-;Xeca#1p>+e^a=f0m^GqW?i2Er>g&XF~g>;RS2vJ&S- zoB#g|&k5X4TEAqHn1hVD9q&i_hc&HO6%F4L?AaJqeUTZEAc{_^Y(jE3Xq1p@utFoi zq7KQh7-@dVCtve`E4DS6za&g`{A)kl?XV~9`yG5U?~DyBUgVaDZz$n42hAIzN8>}j zpd+FU$B?+bLuW$(8jj>Na&Qfb2091!uwu)a9spIM9qfLlaE>-A6kq{T=!dGp>|7!m z$^oqVdb`{WbO@$5@R?IGSMFfP)AJs;ZZ!^6;CEG|I^|9RU8Z2+(JpBEsiiYf{7SDvu&6W`^&N>&$U)-KTRz)iN~)(H@f?hzFX_k z$yFGnz+^6K<){!q846I?_(W5~Jbo^~@$}~YFFs$ExXw+BwHWTt zcZYk-$^T+I_5NT0H>#5UkWdZF40wwLw7bGJ*cwX4S~&>Oh7TjC{QUA(6D~;igMt)& z*NQVc^;&l*_ji*3wdye}cfWU}Ki$*3+^sMNWjLBJ#Kt!c_He~{8RpWnJGM>3HS!9c zRTgv3EP!&I`seSK2VdmAY{XKR3=uils(#ovTAQ~|CD7dzBj4?=us_lSik}h7hH%#v4)blRu24#VV_}<3ROtx zA6A|yTQ!^3^DKZb3eZ%;9MtY;LXDZgWpPGzbMKO5qG51Od>1P;T5z>zK@929?1#E6 zb%_vBfcHr5T)4%@!fyws+E-Eib!=qQfpUQ#GYNscEgP$e4d6E~e+}!re3|%%VdDW) z-$bYA|5a1{i%>SQ+)FE1M-z(Jghv02tc5eoiF|UjO(9!6 z`16er;@N-S56YL(qs~)sjUvBnAf(0!ShtWA1g_cte+`zFuq2D? za3S;^{W^&qy)nmMY319y9xAoK9NhfOKJGn965IC5;30$Fhd8v7nak zDs~HAnJC zrFA~hWx9;XB3@V=JgBSXT-BR6y2&!e|Bt<6!o5_BGKE3&6OXO$!Bmgjzn9JiB<~^E z*D6DRd$2k06mdTq4_+u8yFbGH+-(O)$AR!>!$MvVOwM)gkOvnQ=Y99IhH z9(Ev|{E9v0ygYQOiJAaIaGmmxg!R;RD~|=3+u40;-j%&O5&GbL$)VxIoL1p$v_!O4 zLt%4SkvG)-%jf^B7ne#`&(5%w)N<0EaC!dBg>G+8sHI|SC8LHAW|7e6SkPC5$!mFK z(JE0T0Hhmt(#k}4lEug|+}a0KgDFP;M8kKW}{M*EhvA49{HLa_Xf|u=$P# zM&SHDqYL*Ve~!^&B+nmYyCH+MjBJUWByBYMSxq%69?N!}mRAMR zis2(S-}azXACm?!^#Te?OC6+N*%vcTGR2B8j3tTWoLVwdI1wahvAiv!BOw^Q=u?|X zAX94ktUIo56^34%tXRBavF%g;)@)TnY&Ls&X4Rci&=R!9yasV}o>216%#5`9Z3zO) zC^@&y!-D(j^7I!!zjl-4OWVEKB1qvfr)6U{R!S%doIQ-W;pW?NZX*NB;~q{Nfmf7` z)&C^NoBvsXUVdu3f~=v}!SVN$Ef(!Yq%KP=7=~`E0j>@5tE-pZp5;tdA0Y^<52*a# z=j0_L_yx(SC+1h3xP~biO|HIbknyp6H7w7ot}2!NHXYmz;*Y{Z?(}a2 zw|GvtJV0n2{a>OF_>EdM-m1eUCZfA>2MsIbXqE#}@b@r=JS1rYYV_h6y1Vx{eueT4 zrC&;POGgVJH6_KgI-j@XZa1I>>L~_|`-JaC{!o5SjyFa4s1wknkJub>&)F&H_yEO@ zUr4pZf>FMVY!_2tDyg z_3ewoN$KQ%EgF2$`4Aa7rNr=bp6lJydzzxo@pt#;qlqoyKZ)6iIa=26e1R_bAjIpy z3Qmw*nx<9lGWu;It`hun&D+0|4_d!iBN#9|LGS1K@`1QS+L(o1V%dM!XDlr>BLZAI zI9tDz1NMEY4y z#N#BbDR#;WMB6bvHmGPjG(7`>-g-&Yl`df1d+c2>{0b5`_t2re**F}LBF1m zz2&aCnx1F;^bNYV|&TM@Zrlli~Q&d#j|Rl$4Y-H8q8fj*gFye|UHZpr%GrNoi|qlN`L%)YQbr z#;&ZaM3#^5?d{#%+^ny!A0Hn-y}IM$4NQ1E!NxnOO-e|kA*Vi6S;6$h8v&CSEnN^x>>8kbe{@$n&+3NK`Zu$ zr>Ezn+Sh<)+3__*#?RT^-QCBPzNhpr;uaYg8j05Blw=AX>tT^M|Hg-kAA2&_{DZW{ zua!ryzD->ZEbkj7wm#K*8K!7g4Xy-~4J{!CE*F$C=IJ z$XeW#97k4LR`VNJuFQvQpw29?Qq`oc29pZ^EYP z2q{Y~<6DqYY$$G4Ulf*PHyKhiDLtcZw6~CyVg8Y_iI<;_m}KWw6DwhK+F;rHF4xET zb2s4_GG+X2qk%<|E=ca?u#+i2pM9L*f4JLoVvz5 zBk|uD^+0z_D|F21)fF%Aka+}wNgxNFS&Wa_-WB=bQS12KxKW?hyBJAwSO?cdeW=$; zYHJ5K8Ru85ZJ7a?!7HM}lLiJl=@^n8{zT5dqPI_g!xP^L|IPo6IC*<`@`L_=Ar_ok z^&~s=+2w=#BI+c_z??eZ8!d(yvLjQ#nn@AIx5^|}NL)%!M4i(7lv*XG85KJvKHzi0BpS7K{yWxJ;^^rM$Pq*4orDZ+qLJid zgPS0)I68A4VEEC2aANvY3{^GkM&_F|w{r{hH}L-oKwtxC_WWrlntyY93b#e5X>>M` z3w*2E2EE2#%(%I&^4HcbEcLPBc9znGPoRdOdd7Wu7=Bia8gAwT!uxXp6%2$S$W$-X zMs@dtwa{@QExU$y3QcIquF*n)w!rAvH9%14w_g${m^zDt%T`H)=t8w^J#6l8s@qFi zGcF_~CV?TY+<5CWYnZoMeh-|IAnM8Ul7urLBHdL;-%s8_Vjw>M)o~<*4xn7LO$uBG zPjhZ_N2Bsu zGc?*sNie+f07^`$iVkSCIbYN|;e(&Iyz<`f5Y zH50~nA5?36QPD?=&$LnP^b=~Sk16r=>1W03PHpI5-=d`Ey%Q&!YS;p6RMoro|>8z=N z5*U1_purRSvM}{ABmOA$ObC&%2us{408#qpv`${T7ZNooB13H}?9osv`3; z3yodhTe}_kMys6)k{FON*YY=z%pgPh+~oUjXzvpvgeZ+bX9U|BA1e#8ng<~!j3v-b z|AtqS3zg!c0Mf?DYwEp&Xjs$x^ek|*gn=Hk*~_+mi?MxNEs2r#jaJz;umuJ5R=~`5$F>b8Y?AGWAa2|^ zVy$p{00uLP8Rqx+yI8H?HhxmTGK7-{j9eaW1QG-_?uNW*7rtUkB=g)F9+!msxgU=X z32VM8Xr?2?BH@%K$rkn68?0W}XA-*N;hL3RSv$=kg+86STR?N!Be)2k9xKy`5oFd{ zs35);!7IvS?W6^nJhN4)O-p;q9}=u)1#d+@6quwj2bNb0X6IlfQTIzx>k$9|Zp(uP zkhBmt)&ZUUF>Kc)qko2Cz<{zbKb_eaxtT>mKL`Xs2NE$A;*`YVuk|iP1x?TxnCmxo zXq3<7qm?7Ok{i$5lw^&ilU1?IwomoFFOpT+&DJ~J8GyJnk;HeGBhe)dzH7TDYfXYI z2?skC9gXFf4y+yL1^@Q8ktm0r&JZaU{CN2=m zBOeLpI%ms_PPnXFgcu*9CI5g)ih8Y$onAPDAVI#!Wak<3T`h53GQPT`h+9AAvX`@X z=eh`D7(O&Kw8;ALtUKSRnY;c^cc%v*3-8b5n*$BBKo#;Dsuo}7&nIjm7v1AB;-sQS zyNRCjrUt@m<=dWD{~{eY9hX?LB;na42Ld@U{#c`P55Db!0Z&{D*v9p+dl&$p2mwGm z11ULG>ClpGJGYcLqT4<20z8eoR9$APnsoDq9O<8ii$AeJM2?h8v&?64hMieW5v zMk|hP&37ev{CDnNkDcIs;N_nN12u^f?~i+PUnBuuN*IR03rqnEuz(3w_K3OdHeYVYhnU{c{c5DwD!pFH@nsD$`UG#JY0%!KUQ<<%KX)s{OC~2~OT|C!% zqS*iQw?fNX$T1ht<9K^^ZQF;7RS|4m(D}BaltNdE1*fS#@r^brg6ZDq?FZ{AG8{cA zo{)T4Am45QYH#}z4^10F(4GwRN)lBOQUoiUd44D6GR6&b*ysJ!hBMQ%76 z+!i<=igtHnRYL;Is4`L8=tX~qBarncDi$_)Uv2zls;w_`EZpE`DhR+CIxuEP9h%BW zNXW?D#3uOmMBKnZPOKItgPR9Kwq^_mhcn_*geM2^@4NonedD#YyIc*zKO-z_B|ZZD zQp=qSQ;oWQb5S(E{YM_o0~y*0Q=rd$JhZ2K#klRKQa}_Tga%51k*^u^E5+lFAAj%8 zF^+Bo6v5>Bqvmt5$(%}T_5PfV1Q_>5?KmRF@fOoMye*1KZ_Muf(gv;R7&L1%isQ4h z1|4mdc3M+i2Jbh=_Kzx`&G;s#>)cFN=}aEXPk&Gt+5adV2hP}=DeF(kyd{%3kQrlL zoE_b{Y}`;JFgKeK!ZQ80R0cr_z&H7@=2S=wD2uSTh;p*eAW*yIt5wl_?C9P2EG9hTsJ4K6mZky-MugU-WFB z$C3Xcc6BPFpSpb5r(c^UP)^iN^1RYwKG3W1jYSz{s)k8w+|=`rUQf~zvjED*uz0(V z_yt$Kai5|mm|Ze8w+Ub%Oz!bRGlXEj`AA|L_R~W}s->Ky$earDr$d_RN3h14K?BU^entLl0C)O3_8Fy@x}E#03JaRm2?YrW zbAv^csKHdQ)v_ug51A8D=t401SK=3%5P%4Xin~3LJNW@nG#=X}YhGml3(7&;XXOwg zlyC4XJ8X_RGBlm{}84QWS z`>iLZ6Ud~*XRJ94?{yMA6>|v2kj>F9JDz|BwXtD!A z!sx$)1`8*Q`4dM?I?D>KME}Ys79_?izIv!xz*~g3XE536)&()xHp-UFbGN7INBVj3 zbKj@)!%|PoYN^d<1i<^$tYV$MO3Jt=l{<}xS*Us3RO+*|{hFt$NxC1qS_$O1MkmR$ z>68?p`9gtCcBNQ(^h9K1)6k9!_*}}vSj*A;i*GqEUOr3=G`^&@8$tV(a;(*e*YbcV zZA{SgKJaHC&m%2Ji09ol6}WE-UA2vCSmqrdvQ$VsWlWWjFqf0Lr=2w}sP;ephYNeM z6x##V6Pez0~2j`V_t+dw1bkq|DSTF;|a7JBu0u~zd>>Nu0nzd%u z4Puof`cfGWp%ft6W3)e3#cbpF;J}%L)3J;O3iEVB?fs%^i}}7C$BEGmCNde(+>ICBkoRLp?<=I-138J zSfh7d+IPCH(P8cg`r5Z+df&0t;b&dSyeCoSYV3(ge{IC26gV$WeDbvmsDOP)hKyAS zu4>++MhS09vi}HB#W*wU^p3~M72ZZMq_UXBi z#$_#!oq^|*Jw*-rf6`M4j!VL&2{Vp8@bL2&OTSaw+Xi=Vnw#;8nyIaRR{D6^4^bPjVS!C|V{v5)m4k3zT`(wFB_bS#e% zmo(-I z#*Rn*%eAq|8&$QW7G3g>zs`kD-@TQ{dv%*BHqG{rp|fkX%Zgltl~GW_9POJUU-OS* z?m2{<)#%jMW{~7y>mi*oO$2P4Lzmyy#qtY}16DC`>{Q7JFOQ^TZe&t5q?;Mt-OWY& zVlV_>?fP%0@%ADMu2*7=VI~)TwAo~87LSqW_Es)bD7*s_~SD99HfVD<# z3XEM?w5~$qsNlo}sLIjP$VXRL7-#!ZW=VjP*4kvj(qNLy=nR804H-NAiCtX^qwf*K*8X^U_ zs52<_API_;%(IF;tsjKcAHOr74xg8sHk7f z3Ty#pKEJEr1pojh+0g!?xuRoPPP-^y&aG-1(13N}^pso9E0&lG1=Q`fmo28D(aP2Z~BD(9!;xew+~$UN)3{xx4f0cw?VF_{yTDtweiY> zBV6CFhK~?&MpDyz@ZJ9l^6kz^G>wR#nD66ee;Z>B>Ytk(^cmf;r-ide_m{h)r%L|` zgau2}7u%XzAjw7*g5|E0xfmaQTjwon@NJpL^& zaR37Y1iBAjl~MCCnBh_3 z>hW%lH2O&UliFFEX1i4?l3vjAq3@^PFZ2F)ezYjHOF8U42tx+}N<*K=yOMneAFt;N zxVwX)4b=eYt-=)MYwC4Bk8#NU!h<%A?3O2|@_QA*yGlM6d|!EMK%JyCR{XhYeHc_B z5*=(mrA`o3aryW@Dn8f`h2bnN07+JPhF=CY=v4xnUB8V4f4NzplS_O@vVeQZ`zOiN zdf<&q>#)^}7FG6iT?6L=qf|){eCs-_Jn$=3QH>;0KB_J^YA96dz+tqCBEEDJ$*n0z zB*VT6Il21aK-ZmhWa|hz@~_zKNNT83g5yTm9XJ3c87V#BrJbbJ*YcB2AyZDBd|xjM zh$#8irwUkXzFrq4P23$E+%+BC9ycqv*GpkdHyiH1xT!vw5e}xFbzU2aJp3+2oD2Rw zSg~*K-2UW!zRn?vT5;ovj?AE_9jbsfPstxEI~N z=8moXjbMT_?)wo^38pM@D#eAWePt(oA4X(aNR{IV zi-CSrW_Mxr+NnH`^J`Ip@V{Dy#|<%VA??)KI3P-T(lWEy^Zk-z7_3nBqPS#FodlbSL_C}F7X zDx4@UA=xR*fW3ooJYy|3R9hwFCf$oe!bC$~c3cXnqS%O(r1r zNo%g8;C*mrAJ_AkFk6YnSG_wf!@-gdvxm{>I%u|S-wEZwJ77*e&cn$SEcarS9x9DpJzpT$+<-mAwm5#gJwWG9dh)=M5 z9H;=Or>N$>1Bj*bv&`jB>s!D`s+Jj!xDh~Yz%P9DD0PTpko&a=_NFe@A*xtYH|}{b zb{Jn`C&R;aHpeGCFWC!EU%PXWxzZbi0%>tci~IUX7Nx>1tiecaElplD`P+=%;X91U z1gw6tqH5}N^9z$gprC6Q@y*se)w+*h2vkF=Kv6IZA_JCKAWsnE&W6H>Wi{$Ez*dfXFfxr zm=Kbg^EGyd9^rAYkoCb}8nxkJ1a#k_!sYi2X+cb6&^tQmzGPFziaBOCq%VD%*2p=> zi9`g6YMK@!r_txD8e<2{LO!mPYZSd#m$gyCZ`8QwI+Y9~_~eF5b!*Jai@d49Js5ew zQwBZ1Z~DP_FhV7(^y+x5z4(1Tjaiuv-vjx1ON7iDN5B(_y}Mww6rVGQ%P|#dJX_R7 z{I&#`Q0|S%VYw!fQy~g^#RJc}v(Ui!@uuvwfsdC+k^_J!LYil-v01E9O>U$rl=1CaN06v*{wqeU9r`tx`YKG&b&{Z*kevD%zQ@v+(AeT1R!wRu)FuF zF+Ku{GV`t8CgbG+RZ{TY0pN1Iw@|E=a*U!XJYR6&9@+h?;C}1ic|C0Bh_gX_*HEN8 z`-dqhO7YSI-wzKm5)_jLfkW@6!R7kDIOuAX4c48+Q!T_Mxd9gr7zfd3*hmozog3;$ zHnhmZch4E3QcrO<()CP$iwupDctmeon&@M4jlPZ4l+B!~PYis?!cylHvo(AeKR za%R~1J+1h?!LZ58sQXbrWR8pe0Wuzp**u&Suc`xLp&PqpK>s*Bd}Hu2CK4JG5g}B! zPbt#iMzy_K}$dKNNeAhgh&$$cq;*EKsj11$)WEj@@W0}n$2 z5$2mmRCE0d54$h#nX2<}TCZy%s#~7ir*{5yIPIRDobvhCW_%fM2@tyoMiZ}7=dEzb z{hJ5v!(x~rnyXxmC-4OQsSmtY{HUclQ&^2ie>r|~*IBcAA7Gu&WNH)BM3@)j{|xS= zQA^Itha7iaj55l79hlPW6nyb|xZeMi$&+g+^8BY4{{4GJ!01b4V*FGBkO;Q)Gao4R z@~kE{py=i0Reue-pyMFNS1WXyBC?eD+d)G<#c}9G7;LBZdzWS+H95OOb$qR7r(vqG zrebN?9D!iA)u5*3vd0B|%QZgz*RYguwWu*vJo!>J7a_4esv{5IDn^{No*LllG>7GH zU;FI|VhmJbGgl4v_knSB-0=|c(2&&nU3zm8atuzczs!&w_?<5KN>FIrH%&GhM{ZCL z*V^AN$fGt3SEKjr_`0k*pYIijI7P-Te>WQz?~X6{FmvI&g~7;j2#AuVrW2j^%|(Dm z-@7IvtRf?=?p6%_J*p+n_DR!Go(Yp^{PRC$lwJ%XO1+ZVT_wSU!HflAn$z06#Z<0% z7sP4vnvqD6j3Y_BO2sHsrmjkUdYc9V!MBt1<*Gy2i*F#rZ=6S_RS64~+<}^3yu(8v z$9<&=CPazq1^OzW)ay^S4rCulLbd`CDxkMCuI{HzH9w1Q=pN^O7mJ*XCKvY#0^ zgRF&y8QHHSz%uP>)YNgzqHmE%Biqw|;8IV#LMoHrz?@oEaWi$hxT7FKsFvw04S#+ioJmH9#%1 zYZwuJQ{e*Y`4+X|l<_D?geG=>&3^ZMWdASITc02QWzNx~vZ2%QCIy}Hv)|oyFD37j zU@|m0qvl_zzX|1%;%Okf-R1M-7M-@I6CD*q#40}hR>F6P@0c0fL%@~8xuYjMGqFD8 zZ6gC_obDv6Tqvi$R1Too4}%{azSuD5Ia05MH*AVDXW6Hy9%!wGNS~mZpxW;kMVv8d z;Pbw_W6=qxICpphkPmm}tf}{}Z0eAUgJ?i)uK)zK5CE%5VaO;Q=(N zq*i;BN*Ns#vEU_*#i7FRRB@szu_7roOA_w;&VQniMhZ3&I*<2cxU*qKg0%vOj8~&{ zUmNF1mkB6W=}0P>S-37G#x9C#?HEsIf!P2%Rn+9}Ae|AI#m+Ea~mq(i@2Z zGgh2+gD~&jv0q6y`f>04z>taU+ns*fL~1?Rkk^vn>7~xqZk?wHc0Id7NTFb<4VsFE zZ~y^ue{1&j9aJrxvh`DJicfKcv!o9=&q~}f_Rz)w3p&hWO!I}`rY5s`8VE2+`9{FH zn-Eza72OwB0u$)gK$Q3S`T!@_PMR8VmHUFsJj{zNrdi@yg`lq1Wij;+MAYy|8(@U;Ew5@`IAnV+tZseU`*z(kFa+i z@>5{I|04JMOr2NcsN4HNO~Q_AVnC+W=>Ti4YDBSWjTbU3e?i7cB|Itnn9;)fblN#E zaGn3`W+)w}vU()l`GxnVZutGGV$>P`>;f1^LxrF$Quvg{#(^gOkARi)O;g+yei7=) z%q^}Ba_htDJq(B(-CL+p@F%E6i+{P67+_T^SP_%TK)C;mluBTr3o<%^@HH z_4NXnw^vt$YB#`D@!6F1m!z7VC%8q!pNrsAW^Q;hO-dFE?ciMWECD>k;uj1G7rmzmG1P%uEovZ2^8)&JC0oVf&p|-cutRykz`7T3Rsm8qg+9<%F#+d}%AbWdCEWDrwt1JnLlK z6U{jLxamg*krxBQ9!FkGTJK_{kZv>|PPKVbLk64Ia!xVrhqvg>ao!5pdvY{@qm@x7 z{c5(h83J9ykhPxL8B_Kil${2#3VD#3caV@0s;t6rq^^@CV?ZaOl;y?uQz>my%`8WZ z(-t}7`_m+CPC$*YI{7VEZ2=Ixe&MbxfskpS_P>=Cg`jZ^yqno zv0!57SYB57Mw@n=tPMgucAVE2xUFR!#>8svVvxA5^hI?;8!MZT**ut@tO4ZpVP);;+JW5_E>d^DKF8W6DdxEzFT@`K1 z8|`S-H5Aa`Q%%0gQTOcc`sskTkq5Qg+~Q>tfxnW?O46pC2=zYamaQuZ!1X897)Y-c zcg0J2)F~T|Gbm0|6Y`Ln?40&gYd5-H0Y*-jM?38m#>w*_jkEL{C0O+4Rkw+38EN|4 z>qX-@rfbuj=kF&D{a*e&iQbB2X#F)T0bY^$PusRk5dl=EQ)knILm8EGS3S$$4U<7* zD|wb?*5EkG)WXz~PO0bo2bZJ<-x)#Mv*Yae`nUCej1;T~^IzI=O$Y9B7?r8lf?*g$ z0-Rh?%pr4qWaK1~J^rpM(iTrhWY(M!(`{{B;X{$x#}mJ{jTXc_};jgEz+ZZkIk zXB-1-W$MVQb9ht-BOyuhY4m;Wg=>vuOaK!&Gk;Zp1ZY@T970@2^7?guwc&a~>4RD4 z?P+w@vM<;7u2UIJ(zNf|GaF-IiZSzPa)7FojFfB-qd?YdBGNzIkN^iGYETG(B35f9 zh*hBcvJ4i4=RZG!T{6#e{fHfsT`h*65Ivv2sB|L@6u^|jMt-tZG%#UhG zZFTc?yelVY*z7OUWTR9?H-QBO8o}PMqoNZ8(rAIga71`)V40CV@>9^p*$o+z#_T#$ zIa@qpv0Xod&DAqz#WgqN77FDWsO+b0@XgKi;AA0UTrqNEskSvn`%peMN7|p^<@5TE zfScnm|H^^Bz#H`Y5of{uV_r($yvw7`+EXI>cX9a8jkqd#HR->b5;&8&+7RTI8li*! z+8w)^{Ym*CLVGm^Ix>$%iq@1dyJGN}SNO!9WsaM2;eeNr*6nU0AOXG)mS)tgw?6w_ zHODeCO^-R_bluD~U?TNsOR|!!uHPsH!`YrHUH=+{LrTY(?>UUTm1kZBs-2KM7z4c($@|RQWLI7fWr<62B#8LO0H+0}xR{F`4EpK{Aup()=|<|WnV3h5!%8J3l~obtim(DM zpYkFYayz&1kGEg{IL(^7Op)_xg?X#+v70X0{$M2oh>zh$2gK>v{xG(oZE`B(BdhJc zHcIE#a=aJ9S@RhAhCXGng+kyhjn}g?%K9amq=wN5Pq5^5*|wHwG`CMUI@+W#;N`EQ zeY7D#-J5sV&0k&4|M5-|oM6`>EsQ^mv5)k83yO!buRmpX{ZqT-timr^lo1c$N1Kj; z!+hm)z!FwcivVbWGA!_?K;D)2S4*G+rdgh z{fCI6vC2!-raFwp$&(;p0}y!OMkMSM_n-3i_-Um%h8$~BecS(@?w$s`AOHTD?WnD|Rq~z~I z3;q`SFPNtqE*@+7ID*p`br|aO#yTppmUY{I&m?Naf-GgdA2Kr3n^E2ae# z`RdpGH-@kRHsW|eHV0$%xbo$x#r7^4#?@}Zc} zghZJ`86+yEpcSXR$W=?_I&Y3x?5*#o>UlQk?<0xjsZhb4-DnZ4ZpVmITedgzcCPc- zI2f*_X`8NG*jwXJ>Uluok&|iZiy-8Hoa@Rb#B|CYzRTLAF$=v^m^*JcdP^CqavEA~ z{@A0_WCd@11v}dcPBUB_Kof&ZQOUoh`ZNk_Uf8ZMk(Q?1FNA4^MKCBjop(^?xL#} z-eejuK)+W^qq|<|n+F2EEk_T1H^M%I;Ak zHJ9qNK=n43C$T zK>H@@O#WBR#}vSr(5@RX)pceH{=c{b4>kf4nn!34Y{nMgt+bmORyk_e)HM_5U7HFT(a@&P{ruk zxJwdU9jKd`@ro$jS?`@2T?%S3&Q`90gx*R*WBm;Jti%l$Sg`m3Jl6p89|9)fYOi3~ z*uaI4=90GC*X}3yg84`1xg{v>T3-K^(K?H88%=akyq$UQ0Q0>0`AcUdtWt&+F4hQq zK33=7cd0iz9y~Jh$ceELyw~wYTLK#Hm^1+6pZWDFG6B(e=%m=p>rHYU+Hg+;vd`~h zN2~9~ixceZ9F8I~M}5ewt|h)GH}d((og^h`c$?VJu9#7+wgeo@wBcNF)k(+M2%wIN>zm8^9g_C=}ZQ2spy)BMm0$r8yL$} ziziYufNlo+KJRT)daNv_D|qVItS5$Sv5`&2W}e_fkUc#Ny4qvjg}L zaWc&Fn8aT^BO!?L1Z$UVRoHfV^{9JTk^QLUXRYg-kZBc1?50733!`(x#qZ1ZNVyF9 z#l>l16#WsWL)au(J2Uh3w<4RrpD{qZ(E#q^rj)m(qEl-NN#rKvbd_`z)PQfU+?ua^ zd|qR2EUMu6b38c}^1(g73;=oO^~+g4)U838*IE#T`IgJUG&Z;}p_XP~2{%H9Ugq?( zT1W@O%FJ3CuuL@zB{RwMCs8Wnm%pSBoA2Eq$}aUa71#$9-_t!TjoYmfon{guC0pV5 z8WeE@(WnbrT@F72Mc)X0(fM&QNzSfH@~CA(w%ctEPE*0W<+KQ?;p(Tvq9GLn+VG5- za6G=nmAvrcttqxLh`Wo=M-H>zo@#D>KEPPyH`W~caRleHi7Jjo6P+iMZcT3lVi3Y% zxJG20F@FQx`p%h%$fW<-od<9d8b%8v=w-sU1XIOv1seBp45Ka+z+npiFVNexjthjW z9!~G=Nc8MT&;gI4o`Gj2kASU|37eAn{ApL{wE9JtR|-l16G5gchC1}2rVaDwI$DS zt6FoC-zQv*Kc1{7Ztb%>KtO)yY=ssoxhmk9N8!co)m*A`W}B;4mfGCuNaF&sG9nA{ z;O&5^6+7H3xeKDHZMAxEwth1mW>>ks)TslwwR0V&#s7|35V43+<_n+tCuZ*GYV8bA zw_-wSXlw%n@;rxCcfpd^!px>~_Jz<)g#`7r%4{pXgsiLj99ZVpoNi_!JOURn%Q$KM zP|J`D@Pv7qQg(mYxC#wJW~VeSto4UJD^{}@n@msM(7Vk|CAG~)eB4I8Ha zLE~|4h2jG!b9R?Qbx`l(2ESb==cfvZkbgK_o6M=OXZKyo2qQ-nHlVD9t?qPThFLsc z^Cx*#P!LR#{fitTaFIW6om*Lqng05B%2InY!GElY-boZ?xz*)6>pc{^C22umO5V-jDtaZHkmlSJTg%X}qL9H+B{1i9!b;H=_2zdEc-cU6DJiu0D&c zrjT@o?m@H5TK1-_nE`{R)Q?gx=peu4%Gwu&o=nl*+M`&l!&-9!05EC5P{YD69p*2x z_6z%A9a{M$Sm~X@meVjieoLYCpuS=yauq0r`Q2`1dQI84YE9DIeSR1z`=Ie#~kD`4juxncUhg-v2O2eDMRR*u2w$Ys_ah5=ReWp&ucv1g`xQK`Q9#E!hSsV5~43HjTY`tG~E z{Ac>eXu%CBGc`v3&YZMuzeldUdHt36T;8P?$2^szL{e^GC*`?ss$KL!s*c?Im6dOd zwNv9Ry_xVV6Fy2p7p%j7ku#EhDN;E%1(lcPc0@Fdm8%}FQBDafk`L`fO_G zfNJSAHq-H*@Y?dYYxHgEQz-QL6+tT{xTLrzEv7XJ$l&a%5MTz zYBodf+-b)5K1Dx#d=_a$>3+Ip`=uJs3RoVxHu5F`NERWreAYw-Qb3OLXV3AMi15(D z+0I8a@NPx$R1U8c#{|Qaay2zwgXmuAW4cW}x+r{4N}$HN=Ib!EFw#yf!)DCTW@^Nu z()%D+b|+Wo^ZPu6bhOj(n+orpP7A`AT(5^edpqyUkLAEAl zd!~A($Iz^YG)ao^_{poBn?99L?i0$;PVrk1FkrgMO%B$~{+$2GDn8|Az94I2TIf%s zremuc?c`)CBQMX?lruHOWAMJhFVCI9f3jbRqJU~v>B#to_n_ZB?ao}x+z!}+WZASo z56#&krOrq_WJ{dhp)iKeoBqr*P2S~LPLGVr0iwwhEw{frU){pKF47kH(dR8!t|YXJ zt0|EZB){GDH)v@Ep9nE?H#l84*c;~=3jCIzg9%8@^`s&2^XAQJ}>eg$~* zQPQl~P6g1!J@0@_NTBhthn%n?Ltc|A7Dj(dC*ac^=Ci_3U=6Ryh;yS+yqjd^lQwH6cPKezAEGY>46j| z=(B8Re3U7A(BKE`n%qHIYrL zW)`&ubCf3%C6L+|gOgi<+NiRUOFs_>!+3iZkTMVTjxR~MNenay0PRHYqo!jNfQ$m$F_)6sIQftr0@}GC2=&Qu+D-&CP`*S^(ILDyO2!BdI)U~L_?a|Vl5=+Vk@nz z8?yktu(QB~=|ogh0l~D|nz3SnZ4-5Xt~`=sV^sEPIf1#>V^zbF2P9UG{=qvmMwHVD zYX=b^=2^}RD(0>Zg0L2SlYxuUby2TEH`w;kb1;k#|4haeQ3YpE#3f4RspsY&YHs$E z;G0EVW*qKAaMOa^5?-bCERD@f{iSZ^WRl<9AikRlEAYbj#qB}5B5f;xnypB4~(Sa+c$bWmz9PfwK~0Gd}EQk2sw z+t{X^v78Nbe(L$RK0OirV=byvjwj~%ulGwDpS#eUwOZ6mN)}~ZbW<*iSCaiObus4l0my1k|>811mzpR;-mE0Rn`8(2AN(mO|<ts zEI5#HDQojlbQ1}P?)9?+NoqiF3;#PYj4@z@%BWQrcvFop!> z7c`!(=eH9WTQXHY3*|2$LUUW~EDay3vr6t~C8XkB3v{MIM(=%leV_mQYr7r>LHB1H z^1+QwiO@hNvwvq38nm!aoh(Uv1Y{4Sub@9U*3MoZMnONQNn_v|8A$cAGe!uzA3k(@ z0DXR-6YiTwYFcFY7Go$Tr_ofY>BxZ(=iz}+@L>(>#p+bme<-)JKQJJ@k+}#1;Alrd z0~=rTIE%J_v^4%KP21auyizN4oe;xQ=C)4CE?lfjy1m!1F_q+&aQGJbg7*<>s_Ua~ zI8~FEYHTX7r2zMdF6W+5T=gQF36I?bCXO3#iRSYgD8i2(8t&e!C?^yt&FFtRw1ZM! zkz6@d6Kntcm|Kj96`ca|n^<@H=Wk3d35)RkWe-ENu$WoksO!JpoHaboQBPw|wo@aQ=64f3k4Ov#dX*n8P^(x}9;;W~ zkz@HLvc=&BsRG3=Z=p8E&D?`5RIGVG;m~6q103V=HZC`ee8ph@pH6D!gjT8*+PINW zMm%ysg`R-1j25zw7^p*anJ?dYdfEA_vF zs#SpO_f324`$fW`D`FU>Bkg_52&MsX)LY^QvrMPbLhUy(jeXNnZ~->&f6YEy0S3N8 z_G|t?;sK5S!P#3z#nlA;gSZ3>u7g7egy1#FXsC&)bS(S+X@Ny zjF|>A<4{9P+QuRmuZHI1uukveucv1fNExeCSIWSO!~!mvz`J`ziDArvxoX^bQ>XbQ~9 ze`S4FfTbWm%2=Xe2TDq7hI}6~6qbR_+y2w}AwTexQG`q^Lb?s>W~=8z`PF2y=!#ir zVP#0b&?;>&V0n#%CkKhcIIOpQz(<R~%Lq`4Z){aHStuNKqx*=^|B|?8`7$*IK?jr69S{mlwd^dr5Uk z`=U$(|BVM-fANW))z3q((?4Ur_Goda$|GE-OVPbVE`ZE%6=0WfUtda~exIs=clliB z%!(#52yodzm`@9g2;Y+c0ngNPF5#42raK*qY`wI)Wa8m-YS-jhKU-wKCOh-UpL-Rb zkVirvkpf-W*HIx>vQwIlk5WI#0E#TLrJG5*v=9pdABMoBVUcfoCEJ{IpXlrDj)utl&4^g@?<7R+LGu549iiEvd_kv zjxqCbG_^c)xxyl}K`mYhO0y+2C?HIlma&19b&a5WeiENv>Cm87fcXjK{I#8rF%YRm zKe(gO(DNo(IRRZfXp%(*)#Ye+^)S@FYQXMLY25dXUHwLDlN-rDRL za+Kpg zj&pxYN+|h{q%O{1iT||o8t~6(kS^g`Iy#4Rc!?-)VJnXlBFjGaw&kcV>=p5~_^SJ;mqvs&IfG`1?{P%-bz72gL^XN@7WGHcbbVUWk0`% z&R%cNl*j}mjNOvFGCJAvE6+0|n-_pZI@Ss8d8&R1^)8fU`$5XV2x;V+?w>yAJNS3b zR59=7IBxbkV-w-LOKmICeAn}g(8!0z(73@4seV98tCCt?IvzCKr? z(NQAjx!jKh?I%pD2m!m+_LsuTi&0yl#MTww{{KPRA+aGVjG4BKMVwre|J`e~#h=1d z!1OrD>_8q%H`8&taEje$Ysg%X8)GJ3!54WW z^5a&b71pNrkv?C&@25djC%GUWU*!!jX|<)ri&>W}&`jt((e$K3HQju2KiToY*%!n= zADJGrH_$FsSg+RgpHNQ8Pi8x*bK?Zc!TEv{-VPk0Qq|Ptq5GD33sHwEaMCQ>4|4KL z6|nGEIxysc1+(N$yS!Xr*alxF4?vY{I%eN8b}dEjpt7M9Nslgv>4(SxOCdEcXqn@x zx6{Xs7~p>vg(OmtJ7@;v1*lFvPU)lV+2%6B~xQymIs_ zLWg&qt@Mez58{{BIvT=LrD35#OZ7`XUIdz}Z0-}|hEFES*-G0bh7vOJO(7NRxKCVU5(&U@1u5ttP{%-*!$~{sF-BP2ZwHJVg-RfZ$ z%y_FfG^uG%XZ&czu9SH+PH&dxV|9v8%$N_+Jn?@2G@S}9h2unU%qmO)i0W{ve`hMo zU#A&MEvRSlPxCpIOf%qn^8dA&XgNlx<5pwsPi-JRGP^ZhMNdG0h8QDPLdb6# zc9y40wFs&73FNoxj(kkNq{;trAD1}v(2N?Cf=t`89BGwN`FkK`r!K9l&nqHGCvPA9 zR6oxkAs%FFG1J3%=%E7JHUm<5?QF( z=yu4V`%MVfA{X}DRKdSCM*kJ`cMU5l=y~j>HV52qtRye`D}(-;P%{ciz)3ViUA{&7 zRpFRbO=}$DTbCcTX#ty8%q8I7{@aSAon&ve% zIuS+u{YC<4HA4rIZ7<|&Z5mF#emvy&<;#Q`&5GDH@n`-{?aT>AG6d%AX8+|saUDG! zYLiuwXX^7d)TXkbx03np$YODpY4Lfogn2*dvz)w>0B&JXuXgLzGa0AIFiip6MHZIU zf(-FYaz}a`-b=!6xp?LV#5|1|pSc+O?KkQCA21jaA_b?)!A(m)xb&XU8q2&w`*?MS6V%SQR4UP`@NNSEY-+)WwcbLx!PHD)C!@3-G1kRiI0~|e&fMDCj0ua3_ zPGj*Wxo#&)z%BBtbDa)MVlmyTzZ9k3=6FGERGzX3r-pdb#H=F5+pz9PyB2e2|7tri zzTueCY@&@mkVkRCR0?c!m4zj!cNYA6pZvsowPGkzf`GWc3~0PRC;A;D^@b>%6p8q*mDOhohUV zeI(Om{J84+#d0`*eG4l4&+Xd!qRm9}y}ePC3KlSV%OEa3^4_1mNeYeplvjO_{~|%M znK)Hq|55SBP}5zH-C);LGyk#k>Tlu2Ii!dD9J;y}eKk28>!UT^f7{u0zmCDGa*p~* z5r(39B#($(oBRm3O!W9)K0+FHGxoI%tXF z79b}k!L+1FJix?%fJ`+BO_89@)+Cq+ah^fDz>0MLC0Ccr8ZB=*gUX)+5bzb1%B9UB zJTAiCBBZ)TinNqhrH`5@!nBkDS^vL6-K`wEmS`>M%BtMDepFPFq|G$WmAMGdGJumy z{Q&8v#lUE$#Pr5sEfFQo((V%fPcqqQJv_+&dI5?#2jP%M(7?XVo;*5@Om4BtIN|9?;;$72LPw{N+kYqN>rAftzVKWPs zvE01XB8Ng9unrYyG%Y}O(kW8f>+k!X53`YkE>QR7WX)!lnsZSX<&=@qx?HgQoChtN zRS)Ven}y^!V`PwM%Zm7F-iYx`b-qz2W!c+T!tJWrMk0wFS4l2Aj_S)b+$_Jx3(v{Z z(l}-526_D6#4MnV6jQkX1>EmdlPKy8`&R8;>2A zm6+X%BX<~zll+~QQjBB|dD$;qH$0U|>Q|~yH&tGNA*f-;IoOFyiPPSzN zIZ)=*m-S^$=xLrrsM1a}?GCoUTJ>l%{o@rNjDIoa-@KL#shpmI`%3W)1>lIq!~6qP zqLECUX@$%ut5QCFljL3I+!VFgl-HA?KSWtZ{`KJ0=TLh_)FYMZ6B`#GqLw^Q_Z0|3N01y?KVj|&uxwCoY` zYf3cdYkGB*J!CwkOtkgZk_mkN@9*pqk1XiJ5Y(-9^nUsE(9=XC_#w&}^5{IWHU_kW z#q9CA(lGxZ_>T1xZd)WPb`od3V(|{`BuGBZ_*3Q|OUkM$e*EFjprD%>pEK)YOEFu= zI=D1E>42Ts^u43~&vNF=U9)jc9E)hOdb{H$i#quFB6s79?$o?8``0vz-|LOwAZO1I zS)wYm-%%CZCX-$uD)aTN_gjiufm1RR$9D>#hG%xuq0R=TH4LA`xXT2b+>mD0oMtcQ zxE5w0uU$}ec&ak!#*DfSE>6+!VnMrH&C-K@d`C}v*=Ve;OTZV3*Eneey18s%UR~rJ zKe}obiE#GJ0`x60K(xIJ0XXVC%fuxYdpjd-RoP{_bp*Xj$<2;zqDg{r1-Mq;6lCbB zAzE^v7ynW$5`RycC7#N+wqFl$kMFRiAmR$$x|Fh>H5^lY&$Zy8ww0-OwT_XV!m-ml zZvvb>^8mRKm}8yw|8XAt@=vrBC+D& z-F?+b{=P$@HvGc8j4b)N!(|V&JZjr6VHZMpL`8s)+7>w9Ps+8Y`3__=DC&QT(@?RMngO`|6hPPc>8 z_r)s$BU9Wu7-Q$B4(S6wm7*il87u~^bc&DcmiDb&qTH_h-kS5_1Hj?@DcA)kNAVym zE~^ueIO0(QKSX~kr$^iQZUW)WC)S}j=C-wI@&6v!{?~(ZO+o7h4T@$&?U#93KN*f&%ub6ULP7}&m3SK=i81Gc;oKIUO`GsM#Fq6;f4E9p#HGqUpZ4u1n6q4V(6gHg>+~~B$j>KFu@#J+OrD^|?Oxo6He|58|$xg(j|AHvh$@R1;h z)4vcz8|LP5ir+Bz(?<_F71PtxL-<&&3#Da1zoJC0+KIrDGbD2G-jm#~_-My*y!wAA zq5o0%V+Hns{VYjPF#o401Xw0Mzju{fOECoS{a^L!6jtQK-90tGcbQxYG7?e~>M<4) z5y{Py+?mdkL%y)itgS9^4Q5ME&^@yZ@k-3w%uE`@7fwY)IrH z=m_9i{g-7UKP)Sj&p(UFMfh^R|0+6e(8}i6unt#X{qKj0ucEfxt#;D2KW?9Em?9`} zz8Jz>*G`4`mmNrHgnmmiyb0>QodSa7L+FvvD4dy#e-Ka>#65K&6; z$kkxXVE5JRDB#>qVIcqwZ2;6?*K@1yGEs{ zw3^R6tNE+Bad5&OoOs9FvkZjq}=f z=&w+RDO{Rm-vp6|()0L%UN=U`Jz@bP{r#9eiR}vn1~KhtZ(oub)_wRr2dxSPo^e zwH_^XD4TcjkK{y1F5L|&qTZz0gT*hP?63%lM=YU8)IclPm+@R3b(V9v<=(J)fMD@o_(nh-(tGQ-~Bl1Ilk7Dl9OV>dx0-guBlXKejZ0w z*aLx9z4h8nenECcVQ*m)K04gSr?>gbJ2+6cKL)c2u;1u-Nw+TlVT2?H#64;Gh4tbE z{&XlL_=-Z}GKrJ;U;d#uXf0&nd+L$G1C_lTpO3bj%x@M9L?0Ff641}@0?J9&ht1aV zcEOx=V*Q89?p+m?f`Xf&)F+i#0IbEw zFCVMjop}{ZH8uzS_ibi0gyMY#o5R>xAbMf+S<%ljcFM7_g=W{{?e3pfLDF~C*8PY8 z0^iTI;DAp~zjUfFf#sKYg{UWI7L>n`-A0A@q2`GmRK?fLQRkS5F{G-+3`Wom^(B)g z#56c6(QibfOWOB#*RTbN<~epbV`bd(vroKS zAM`5quSz1d$CEIol^fpMDBuhF6fog=>hy+%K+2j{PfIRG+rKmiZg$j z5FJw>V3_CfTp)>s2(jdu!HN9mc8VRH`5S1>=0( znL6W2j*4e}o!_ITkg8wbsUjsZGwnkOH%@j5gNhO|{@K0=0B`w?IQFSIf$iMEh}YbH zXee`muzaoYe6H`ad}T!g-V(N=f))R1%9B$5^_NMTD@UCT)Suu|@P z^(pXLD2%wMNdaF*_t(msqs9n`C|5{Z+HHw7E~KLGHK?J9w(xC+K4VOxTXwR6ZseR} zB5g)mMu)eT`)!Z1#m#5a-tS1$mP?Zwd(De`P;r(EY&lzo?P_V=%%(k|iecFRV97|s zIk;?w{+8rW*pf|4-tb(-1fAG?ds^|#wYo4rtMOfL7tTBaJBCSGsLpYcOm+3>{M z&yxQK`5~IA;0C+51{1-2(dFJx3uVH4>V2J-yKKM~$95Lg&rx%`#YR?(7F3#$zY85GIRGC1THCpioDwz=s?#KcF z9$NdeaBVI@PHiRO^*`S@m|Yc~8LS}_p^43V<(80y6BC=#lUJ0(anIaiS66y+1^cg^ zLAFR^`7}bb3p!tb)C2tZG2mTls7c z9JxeVr`n}Iz;DNRLZr6(RrZ_bKvQDvxo_xRZPN_jLf@zviPu?MkNXmnrT+N7zD+&d zI)3PUR89L3N^OPVU(|8WSIEdO@t-x&n^;c*p3lF~c9l~qxIJMktCf&{tJ6zkEA%{g zzl9dQon*vZa+uc#e((*Wbvv-fTMoqQbWBujSHi+tVg=w%0Ok%c_Y={sz*YbmA7V0Q&=H_jj+Lve*&9O1n+^D;u&X~? z!S-yVP{v#{Q&1#muUT0jm1 zoEDYv7UrGd6@cZ?55fw7kz~qaJc5COYi5&&mdOdpx%i0sPG$qqJ~wCI^G<7L3eK7c z&vOAh(g&MDV4Z2rCn~O(fOpwZu*?g?4iXA$7i!KY^iPpQ026O7ILR}jHl7@rcCGy! zXO4h?1SmIUz1QJ>VITQz;p0*7+R6rs8KV6z13Y6i-DAj!v0T2hVi?j(xE@G4>#@hgZJk;b_w-918G>M9@nVyMw}v!ClAxpoSe==8Gz$V1^uTTf z`DP#zEaF2gx}1Il{n1f_FxN6VGv2YlXM4!&ggwmNU>`FQ_5_bmpQo>Gt_+NeuCcMvXXWJ_cAWE9s^k8kmYVAs;(4#kqWg#!2qk1L3l8#) z3Q3+B*|>@4I4otj_Slhf{=0jcq?mW@da**dv4hPE_%^Lsa^&hT4k(4CWNA<`_jO@| z@07V|)pd|F_vsE1HvuGBh9z65nk`RiU($vpLW3kZt5iS}(}vS4e1HFB)sarE@Br%X z4a5xk?rldVNR$mSs0eFj{QtheO#aLjI7xVO&$_`leJ<${$8ap}xmB2}Gj$FQgvQi8 zJSc_W=aW`nJ`Bxld>T+Vp>JwgOhtu;m<+1HevLo0sK_4$yNSm^$>%M^#F6V=xdA;Y z@~=Pb(_xCzy4=a*Aj!Ww9c4WlgR3yNaC>30vTHf$~q0b;>WCWX5UN4uVFQw zkUbHDL1?y$kxto%ya!!lwgJz?6+_E2Xy@h_Z15VAT+A8vvh(d zA*s<$3QQTb-{kr8as-MNnT|5d>&*fJIJChFeO9DAfS!*AmyN%kSvc|FpIt?o8jq zQjORobeFW z#uN*qB?G!2CT_KkW+fA9_J&(KG=!b8X;4@*FV{=7E1T?KQ1)aQN=F&KEa8BVTK#Co?U);+q~0r|D4pH=WRuXET*t zs5JsNH+KwN1nHB2Qm4712=v?28QZi!Nx~Y8eh6`jy;=@evE~nR+8N z^5grB?&<1>^Ty0Ce=;}4J1*#ua&MwYfc+E8gH`ViuG438M=k7mYTjF`eenKz4mLPE z6E#LCU3~HEG{4Ukrk+0+;F~73Pg+6et!Z;5ArPAHokpS!h=F<_$!A=Sw{p(U23U#hiBE!u9OQ zb6Umql;yS&o@lZ!JzseI<&!ByL1p|!6v;Oye?JaR1df(vNs0m%Jy;lSV6f(tn0l;(kqJsLC*uP^3|`rA193*6eW;> z1##DcLM~1M;K&{7Z@>bPKOHuZ7@6obYLt>iCC2G$zu;e)x`_(%Efnkpcm|Yy<;ZJP zI7cen09C_m)NXh8G8!d8;M#MxRyN!KQsqTO6jkrFmB|a?ru-D<7xGzA9p>SqR8K7) zx;9OUltK@KI>10`sDK`u_%G!nC{!?3R#q8awZ930svk78iCMRLujW)#P>CFza?Mr* zk>0D14nlgdxoUoX1I|f3L92&prR1G*->}H8XF(NUxWVXl)99W?m?qyx{2`J$C773W z@;!kQge4eOU#Qn490ny|Tqj`7)G%>kl)ZGua%`;54^-;T4{bfe{w4Yvds&ANLM0FUa zAi~q31)z>%mrnc~PK<>4S%FnTzDZ11=@*pEC@PnT3tJ}IG6qT-v#%epzrZpT)7Kns zi^oDMPlfCQjK$7oa#=L*#dl!G-n;9IjN*`-?Oge|=jvRpF85BO!AIDIzowSmn)C06 zuRE-TQZ6h1t8#JO@1iePuc+)~XTrrZ!^$m)m=<`}L=UY7YH2aAgFUh*hswkYKgHSQ zfSqZiJR~M&+}*3!aMD})oypBI#TiTf687h^7>%OuS@O7}Om(-K0;znV8x3INufPLt zfTIj>3bhK=t^uyh3V?muDGGcIB&v9Kwz0>Rn)Ed*cQ5pdxc1&1!G2Sl8lYW*-q&VE3rWh95KZJt6?Iv;Ahkr_j}t|Bs|L#6-wbXZKc$Hg z->>kT-mUNuc=Be5zJ(SJM0%}LvByDG{MWD)gOa;FPF4&9p@kd<`xM#iceU35WWte$ ziye02%`V@YR|wt5so63LvaFn!v;x+g1ih&tE^Bu31E(howu zAJD)8J*&QoI^RaQeHr$8V{R%O!n0R>m>-wmHAlruUozx*6#vI#{mtBKpmmrp^rU3~ zq5}JHD0Nh8UQdmfI5UMLCUI^ESn7`L4@ue#Fl9c0Hd`~zCslA ziRo)~>7!i*8$>h}EY}UEt2CC78GroSh+*XO@8Atr#=raNsD+;^3KWSdZ3uHD$frsy zs6H9N1TgBF3D2PdWTz)VtS;NJ=L>kQY3R-m_Mt0DTJS2GS~UO@RU6v(j+IR^cIMpz z+>C7-#(q$Zw0YMmXB&7NV)kM#e$eB-RrhP&eV{MvH82N7OmuvxjvW$F@edCmwA))> z*Mgl0QqkzNA%qS!gTEVLiiW-RY&qYptVA>ebU0mWCm+xJ_poe|6iERMjb$bN$8QF& zE_QULdZTk|H>#&sgKM^MaKE~U&r|p*V&nY1ld}Dae}iFG`D*)@ET+E>RA*QpyTQR9 zrle`Jz?$!X3HT_R7)pDlwS1$ScXOsSxeevGX_ zQFJqJ_76`SG4Eimh1E6Gz+0Dh$TW!w=8tr?<$n_bTNz224Q;_y`KvM9a2E@YJWLvq{YZy+)i}b{LyygG|Lchp-kh|!pfx* z9Q76+a^-I<4%7e=aV~Vz%ruh%<+N+2c;2l!teYh5+VcuiV;tYX5xwGJ`mxIon5JyX zZI6U20@&yX#vH!Pg`Z<}EBc31{075BW|8EJHc{oFFBOIZ>l2kf%@6Sl!2gb9w5P8; z@77WX(HO9zs8sTiIY|AXxD7~-kDu7?b5%s%Ywx_<)<6TA-)vy@Lj>A5T>N_a7WHT* zkh*wX*y2ScyCI+?kgZM8huydaE(a_)x4;yLS z)F4)o{-`0%mC3AO=H3!h-C&$Z%IR&gz%()H2sPzdk1y8%!k%Vta)VDwe^P0Le?jW< zmrxNk>dxyqnrr~g10?2|g)1c)b$*t&fS!x8H!k}7%{n&@kM!K19lhb2gS8)0D>{8n z?@QNT7F-{4nHS7@-flUjxu$C*fS;yAqG;^|XQKxDTo0QnYf3N^R7RfrP(>@Ul)=QpaXzmp|bJ~^AV4%5}I@v9|oee=+Fm}S^f407=uV> zWcytCj@j~rJHenC7FS3rsMh1wn(Fk81^(x0h-$u96s3nuY zunLg$`bHyQ6=*fTWc`3R+u&PSQ^LOctON8EhHPNW)ll=6+*sc0qif1(2!hRtxJ4-x&pQ z{v-2*2rC(SrYbs~T5qPV7hd}j7ofM1-rDTDg=O$QRVOxBL{gq%^^4{ng^{8%Ok+X$Sn2b~yY{X_zp(;u3cOV953oRo+9j)F zEBnC`gR-Zi(B$9Vluq%MH`_`m)OK}oW|}I%?jLSE4gC4)W?czJk8&p#t89VCci$Xv zkRC8DM>2F`WnEWh(8T(OlgATX0J#9h?_XOp z6x3~m`Paf2HbdnvgIqNmr**`VQW%)HhmS!l1Cnb4^HVV7ICqLNFNmaWu9UpNKWFvs zd7FqU9kt?&*h}o@MpIFCG3=h+Z#wmhgSGe-bKU}W7`+svkgNj~z-vYo|qHI!- zJtnMAVGl{xuf8hj7*}HUTXUcy?EbR$dfUsw?i+@Zj~=h3O^)J`b35jFM9jzM*VBaf zv@oVTVn$t!N$c0DrC*`G!eKcI?_G&De7k~veUw$q4DeOi(~CvMHjI|!2=Fd^a+GPP zIn(XSc!~|LrXmHtloHJ)`q!8&NIa?8dp7yBSIgV^Id3qXngUsSedhi(43zlF7hB}# z4q2T%2lYTawGy1N_t~&{-VO6&h0eRMraY}ysON&WPlP9`QRzf=i3ju13?g44>VV5> z<#{_qNc1)T?9UI|&Fd@LNdEYS$ksd-8~ByU_uCfbHo5K(SmVBqPs4h!m=1aEzY)?G z;o${%PJ-ebS>-nNGoU))vKz2LBDBw^&xc`jU@wlT^Iez;qH(a#b&nBY{N^>d_{|2_ zW>KZL?jD8W(MB!2r13D;ucl;steoD;hV!uot{Yn>?_2OTwtym5u=p*0wKXwIbXBQ# z4*-Yji;sflCLkh^hd=l%a7hLy2}&iJK|kwEDm}?B%4*<8Xz3vO<}YU!{cFv*qUnJV zcQ0@gINMNI)bR5(5y0ye0Iu@{@pOYbmQlO(rDEoMctDw+^tsgfo_i)ib)7B+3yD>g zTFL!5Rr6hKNL`v%{Rep0`AI44dO%>tki)LDW~uUe%}zi=%1y0wbs|MOiBIQS)=|9x zX??ptH$7ik>XRAfmTJh6IJOnE>j<20I&zm^P)M_(? zJZkU?%)B}ZR4eCG#XRHVZRdKL{-D@=c2IS2a8$=|Xd!Z@nrvz;M!j{6Y^cpJqWOHJ z;XL;ye}d=B{(xlQSyP?o%lqWZJa81O$mwQg!8LU{_Xp<>!DZZiL8eoFoAiA2Z?xs9 z^PgM`VS9pKu99$r{``Y0Js16kT zG~3?r!N{ngLI2I<Y^68XRy~_ z&vC#I|C-S~R{0g+cN`S0x|VW$&HeEg3z5XGynHREKanAZbTNa8$FjP7$7~ARo@6`T zt>vg(uw!)gsOp>Lr?5|29wVNb{>GVbYsKMd;ZgN6Jhf!#*phN&MookbK3Ec9S`(sH zKW~6Xez_8(Uvzux*jK$qC?Fm={GjsJ(mqJxJwgJAbkO-cJxO3K_CZKHfnE};5dAd~yW3JlU#Mk^4GICZvK zKKecfn>kF_C=?Vqk~2QpQtYXH)hC*+Cmns$X953yDt-dv&dWiT=ZC;@$8s7bpVd{Lo*G#K~})5t2l&4G>OMoUqc_OR|Inq$NKOF6_W- zpGC-u=jL<+>m5zjcU55Tet0+6FVMt81=>1fRtJ zu$uN6@@@`4fdV6U8JgS1#Knix#>?W~F@Kgs5E6Hui&V}w)V+Zn;p~Qzj)_2*xkhGSf+FO*pvB=#u6wTR;X8V+o3RvA=R+@5 zK<#vG);VX9P5&kpDeesLGv#e#+l>@#ZtHT884nP8ckPqS^zO9YKjs+gBzgNdCif$+ z#!v*){M<|DE>vpCvK&Bf;NepwSXe!mB9sE2pXEO+im0f#)hd<4QE1{TQfjd_JZM|X zD4FXw2WjOa_VyM`3xCQ{7tN%}0agWuVz0|m`ZgKzOT}rpWW{u+VsNQ0qftCyRZ#^x+lv#P8nXDMIMgmI8h0cvJ{REHNHP-9ZTwh)Pn!lWGso;@nFL=-Mi} z9Kx-az%tieg}h#pLO%cF0ET%@>g}#Uzjv%Baa-gb7e9 zp3|{UpZwWlej6E@r=SP;#-6jm62f4{QC%2gKN=plm))0l#uNuQw;_n8de6%7~gw(l4l^7aMTf7zuxhTbnHe>{y zV9`C3zGoG9#Zq%Cdoba=H}ejC`0n$O>fPC;gC|<7&)pY!0*Y_6F&`E4(X%n=0fKR6 zwlx~*r0RG==ypWm8f8;bfuJEg%`m~9X>%RU9x0iB#$S%U85*gjJ03ek!`GeLjNDdz z+>$pZ9LlV&q86drV@%q`_@(?sjjuIglTvivu3~QV;1f2h>#*YaH_!{N{!9;Q8?$aH z52^d(e_xj-aq5~X_Tl>E@6v^9+oHo?b@<)~lgrQ{hqV6#$1%n`w+N!`Q3ws#E9lSG zVeQ(LIZouQ4)`G>aqOlnE!o`5i;H6Bls`pq_TDj~BjWH0R(ysy2eC~g_b=&Kcw4jr?pL66Ht|a}0{j^VJy6%68|O#;hL!_Ts80L}v43hK&ChAJ zKECn<(k2^hf}y4kPtp1l?!Sh+-tBQFmA_ZYXdS7Z!42@d%K>h*Xdd5O((o=6REqLy zB!#X%6fp7zV_22Gh99ySQWh2i8uwRyde8Nl$za}!i{a~Yk45Kn>b-~QY5PN`52MdX zJcW}WbI_QZXOFWfU+jkipLmDsm+S2Z;WUGrV>fQN&4+~3=SZ$^PlIZJXvF>3+*pU} z4*~(>Sd1APQ1^F|Op$;U%_tVjylQ{YK{Z+=zq7r(SVC4zKmJJ(jEH|~;Sb<(~ z8&d!=8wvTbQMU&!!z~TRbeVx;Q&~Ozg}RF(Q0NdSZ!Gi95h&*f6mJAd1_FfufkMnb zb%#K4^^>C#Z_1@rpHTRJpWKhgq_M`LZ8-e-o8HA69!)Vwg=gv=z!^}68qkM@RwKcP zgp=Ic&B6Nyf8qdf^V)lRbBolw;~O#ClGY+>a`U;PV}PT}=Re6A`v)a2Ef0t5&Cirk znz5POF9AHji{AjBesB{>#R@^<*xdYNFpsW_cv^mA`?C<`J!Ry299u28d0hxE*W2iG zxR7F7yxkr3jz?$QgFx&{S+l=!(Q11?SXdz>>IV&3MO=k?w%YPUi zxsAX6bdA(nLy2@I)cg7C&o(OM!6hOi-Up@;C~?&@bj?4De@*JuWuSs*1H^w{6fN(@ zi-GO!M3ZHej5IdQ%O^9K^ePhKOm-c&vZQ}nMHZhS2@ z*>dv3Umy$T#@CkQZ$}c%%F#P;oh^!K=TjCZE8Zd_(RKYp0(leXJ^nbtVp601<5C62 zr;TtKLP7FQh1gkGTCf|3p;V9N^h2%E?svE_q@Pm5@7pg(!fFx&{To_i*aisv9B?(N zi*|n*3E>g|*O%}8N*3^uTvmw4ES*vQ6UrYVv^AVfGtNEJj(FOepzajjirqV0>jIrED5h?OD zb4@S|yDP~XAK996c0mzrEM4H&4}W+ITVzngh7 z0!`MYkPQYL7WZSzlFdhBy>+fDo4qJTtDbQy6Y@S0k8-_BdKhed^KpK;pU8Bri4Dtn zYxb+6^>+%kLR;M1>U9%czM$l*OEG=BWijRKx$n_yZ$P{Xi`9Bp9jsB5%0@A6<)Fck9-9J0)D}yJ-lr1I3Q|%!A>|i8YQ-i6Ktappp)ddc(ir& z-362JcTvC9s%)8LsRhmMZ4{EX$E1RW2Du+Xus{WZ3l2qvTS6r$>{qPpnM%9!NaWm% zpN64pbN$~B=06{~PDp74A|&zgVxJvT=|XwLxyq^$7b*T}sy|_c7$FXKm(EUhYZL5Y zQ8schU_^KE0%w=K*p^xl1;3U6w9Vxi{m)>b7a(rElb*t0DV&f%KxFBjanFl2mT$Sy z%ZIfP{r?C>d>E=zdTFgvvG>U&ye_sj&V?Q6g0eSez2ug)<(TvH-6w`y zB?GE2B0Ae{So@TitFahSq}{nFje821P0~IQuRvO;eu)Lp5D=!~k)g@Q-%QWrIw2*J z7AP`+_jTm1l=y0&S}^8xYrucXH;Mx$qA~c3Ri@+~_?%r# zuJiFG;+#J=5IKj%{&O)o8leAzlvNVnvxKqW5Ti-`a+90^>i=1Xd4&}}%=F!}7}#C? zyDK>dnqKQE{ec2b54w={a@$-Z*swa86?PzCyD8Bu{1(2mN1l~iEz*Vgk-pKO=-lUJ z1W3R(e|bXb(&W5N{tt#eCv#l5J%KMMsYh%iJ^IXE;s%8@Q8Xq|$1`NL%_=ORx<)*< zzo^Anzk+;c{e*;S_=a9I1d{)rhTb_%RrL+;k>$Hz`m`)jo`J%q>*3<1fB&z}t}Cpm zu33w8kgA|Wf>H%((uL3w5TBHB1%c@fErLe=mOFat;`u3i3O(#LT5I0$XT zSnnkl=TwLC#vCf09eaCxyGv||HQg?ot4kj&1FR24?7;Q zJ}qxKo7v}80!sFcke@$R3S1f$AklQz&#%LWx3)zn$O>!g{bCYz9f~b+ zp2YV0!L84d8#nC19|fd}g5?YDIFEgPXUpU?SjrP|2mCxZW?zW+z~W``nH?@}JP#SXL;UWO+?Io*h5t zXiX6-7t8`1{Z^GoseBndrx5-m{H(25CvGCksV<|ST&^b;x`-gt2JY)TQM;n-;YEf9 z9$qUDzJn)uy7V5?gGOXobJ&6FW-7|3k8i|(Pa+RNczS64wxWO_-V1N1kHp-+Z9Ki? z0G1S3F8sL~48by+BAYJ@ix^nu_HGUz$z?JQ&Xa6_Hq5@;T9!%njAd=78%A|>>Du1c-z-a3+ZJxt^KkORf^L;g5^tlC3bOY zZu4_EoL>9zCVBSmnPk)kKjrD?S-}AdH39`49ZB&!U>9od2kA;u+U`7sg*qeHGc89j z&(E-g^sH}bpxFyN$i7Tl(7ZskSgwc5tqj#mC>yL&O22t6A&B#zpdBWT9w-@hLvk)ikT3D!ayHh%iF|jWNrX79s zzz!_+6F)1Ya^jnSe?OW6n&JcH;*P40>t@$j0C?qipf<@XCZyl9dP-#S{S|9}I{tUS zolrY4?8$*72B+%Hylq>=J*_8S9H^OIgvbeoH1Bjo~5 zsjO8_;&?y<@QU&fy#me~E-*T1~)mjrACbQC^k;HlfB00F`_R*4Clc#@$r0sU9OX%mYPpKTeN7jIkvo(6jY`@qU>$ok0wYTL;dcryb2zZP!hI`k_XXG?8#Tb zPZ+HSezlHurLXP}gx6xmI+s+{0Mo;0e5GZvi$4rZ(NCIwo2mzj?2dBZtqyZ}&!Igb z9^!fad)%J^w7PD=v2%cwi+K2HM~|A+o!mzusMro{6A-uESJNJJ*v*ICo2DC=D%O1p zE!$G)r1-vQjoZ=SAApd75^qsVr5ioY58vajfi*>jVxG&$#FD<)mxo=_20ibk*=5X;&aRd(iM=`OT_Ess zUaJ3{wl(bcEDON>O1e zr4%2QVjguC?(k-E#(w@9deBnK4J0=Ggb7jaQVI6lUV@Qd68J57e&mhavXkmZ&!N0X zdb5RSkzOQjQAQWyVWefFm~Ql6FJhk^8MVk3g7cp|=zd3#yEw0pEtnR%E577_3z5Fg zyV7axIl1lUMq?cC5%NY8+m9BN?loe#7RaduzB1UV`T2Eyv)tk{P1&41|9JYQSay*s^{xNPhC>YKb#taL}5Z6r&6XvuG* z_^+LRfbW@vj3{9h4E zNVa}O4<9-B7Z7g^9^QDAR9V9OT+adA@*{H?CRN-b#xH`=uCf=jcP4;eIU9Z4{j}?s z-T=lNH|$lE>#N`zHd{;Qa;Uey>cHwa5Y2m*(2v3Au0|&455VQ+`Ui0Y^w3Pw8-w0XU@}S z$(?DP!6h}YjZ7Ir*){FRz3&#$N*i4bJpHk)y6yxikro{C$Jes5X@E~3O#>w#O>(z9aOMe@Xl1U#j}WFl9Ou(o%-dq3Sn}zh`*dM{HyB zk0dPx8@4iAHW}lGqiklBYX_P`fU*F%T?UhM!3Xij0WxG3!5f9NTb(T2V^NbnlRq+n zNe?xbDr5Kex}STS-THlAj$+xa1JT%SPTz93c=4Wm_iXbp8LFk&}L;@?=;@ z@9+`in6!8P30l8xw93mS835Xqkq5Mf7N2r+MiTr*G+?LWjAiL(0O-ccH#t6b{O`Fc z@CZ>2#qKt4qfmtag|Ny>Q_t3L$EQ=|Ww)jbiCemK;+9TBm(%H{kuFWuZc&_*e{!}Z z6D@mH{T}IepQa+%(9R08I={PA=T)+*eQ3W(4VmrB;NY|J-9^u_czSCLI0Bf^1UUby zK)CaUa^cJ5Cs2QgZQV4x*D;$)r0~4g_hCpGk4^-AhhuW7Th}^juR=j5<(d^WR#Dl$ zOw@AXbvkS1v7$WqCuj?*X)W)lap)dRe~ z8@q||u$7V2Rw~PO$6jYoQvfC|0B~dA%W+pPH{qK)P?s`f(KNlTYHi=BR#`0d*yD2& z(+v%3v+5DSF~1#U$*U{$(&nJIpoY(i*!g9k4K`Hb3F)>L&y{7yRn7Ui@$#kh-i_y3 zk)4lTUr3IcLSSrgW!0zSq5Pa=IH+dzo$hxrhVK@V8@zt>sx$fQT3|h<e0wX4`P%A?N_JKAnR8`+y zq~&C-vR|~;FCqe8VH?-v85)*wA|8?)N~f-}?7H)#2t~Q<$G3$w4oxw;(rQ4u&ISz( zkY?OhNSHvoWpLYye{IN8VW=VLI1$+yTos&=d9*c{1+=tVY9Xc^9-`-{yd|mT04O9s z6m~^;-6Y)N@;SUHLdlU(Kjp4ncH)`BarEZG>tHD@_vEua#jhlXnlp*x=ByMbioywZD}@rLa%d|KROG z%p(R4y@8TD@57vnqd=(}GM%ST1opTlGr_9+2Vvn$QxSUN-M^U1#V&>H)tw+LtuZ zQrN`5V#%E=yo4^6Rqh< zczp;j>WKd}(^;IR*BH553wn3FQt_0>%1&DXilZ5ZMX3;Jrwq&hYv&VbmyaI8@Qx5^ z2L*48GQ)|qE8#wbQ%e$QH=f{EPX-{ece794>^h3bUT-@N;b0BP*8L7rC;(krs!1MQX!1!Oz? z;a(gQB|ATv_Y!dH-BP19U)ssZ*Q<~JmQ;IlE%b1$`Uq(I-cQvizw;859 z{`fY)_OXBe(xM!C0ZD-Vrf?pi^47N3zi-ShRF<}=-hX<%-%4*U>Z!c@MP{#<66%m` zGiq+sQG|*;J*3D{tuahG5U+IjLE#I`#)9uhDz4+AuAorL6O!D; zkl?Zns}yyClsa??q#y(EBPJW=V%7R0CdMwlkZU_`PcM(0^}iwaC{^WSUJ&G?*$~;^ zpkv*B&7PlS3>NxtZW8i;WBGmhQTI z+T_?e#)f;SiFkI#tX0>UT?0!cm5i1}WPgR~E}#>9F+nF386QI7=Bo1(Lk)Hkrzptw zw;m}yh24p*a{}DyejlW?;A4DxXMQ(<3$Wt}j@*!7I)dwz#4@Rjy@zF#_kNIT>R@iF z0`sK}p~xzUWtvtgJtGfocX>B41-NnW z#8ZcufkW5el!*s+lpoi3jFP4@c?KLhG36AnjJa#y%ypN{B);T-RTS^>-|XQNu2pon z&m~xUZnl20rPr2iQA7%RR&Tpfzj!kzV=jJ;lxxPrMx8CVfr;ESLIcyVW=t>S6+zbe zqPvuO-hi|CUiUMR)k(7TA#2?Cb*qm)YHJqZuL;PZ44<<^rDQ?GS zP7e$Wu@v#s)UX7&g4uOK(ta^Osv6c9Dy*WMi3MZn!gqeQk^O;GSt89{aWizENOvL= zK2q2B>PPTa1=5-fGZ{MV|g8k?rJgySxAO*clXV^A_{hg1oC2urS)Qg;;w z$tZy#24pW^?;PJ0XI-Tl{2ry!$OCAuYq!SX7&42lyNjTlJrG>{a7Yn+9?GC) zyd%rmwQ6vtZou!K)0rY~##-*F{FY2h?G;U<HX=!!@M|_}pm1mBl(;e;$_+apbj$V_hk{?FxDMn!VJC%%{b~oy}Jk z4?}n*6=;m16`zLNwCeXJMsUiXdX)TkO0i%59;LCk5RElGB7%NB)RhUhX^Kaw66S4a zm)rb2k(>}f(f&Odz=7Qi{pW~QQ(fmtrK Date: Sat, 12 Aug 2017 15:03:19 -0700 Subject: [PATCH 002/108] Release 51.1 --- _config.yml | 4 ++-- source/_posts/2017-08-12-release-51.markdown | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 9168c907acc..5c941069f99 100644 --- a/_config.yml +++ b/_config.yml @@ -143,11 +143,11 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 51 -current_patch_version: 0 +current_patch_version: 1 date_released: 2017-08-12 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#" +patch_version_notes: "#release-0511--august-12" # Minor release (Example #release-0431---april-25): diff --git a/source/_posts/2017-08-12-release-51.markdown b/source/_posts/2017-08-12-release-51.markdown index 9ed257483ee..38d367e624a 100644 --- a/source/_posts/2017-08-12-release-51.markdown +++ b/source/_posts/2017-08-12-release-51.markdown @@ -55,6 +55,10 @@ As we have seen more vacuum cleaners land in Home Assistant, it was time to crea - Add new device tracker for Huawei Routers. ([@abmantis] - [#8488]) ([device_tracker.huawei_router docs]) (new-platform) - Add Shodan sensor ([@fabaff] - [#8902]) ([sensor.shodan docs]) (new-platform) +## {% linkable_title Release 0.51.1 - August 12 %} + + - Fixed a bug in the automation editor that would break if no conditions available in the config file. ([@balloob]) + ## {% linkable_title If you need help... %} ...don't hesitate to use our very active [forums][forum] or join us for a little [chat][discord]. The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. From a43299b754d66f76491d8796c6cf1e6edaedfded Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sat, 12 Aug 2017 18:31:48 -0700 Subject: [PATCH 003/108] Update sensor.shodan.markdown --- source/_components/sensor.shodan.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.shodan.markdown b/source/_components/sensor.shodan.markdown index c7b7bb7ba9a..7d7727ac109 100644 --- a/source/_components/sensor.shodan.markdown +++ b/source/_components/sensor.shodan.markdown @@ -14,7 +14,7 @@ ha_release: 0.51 --- -The `shodan` sensor platform is displaying the total of result of a [Shodan](https://pi-hole.net/) query. +The `shodan` sensor platform is displaying the total of result of a [Shodan](https://www.shodan.io/) query. Use "Show API Key" in the upper right corner when you are logged in or got to your "My Account" page to retrieve your API key. From 26df286f878638a0cee0a785fb7dd6e33cfa65c6 Mon Sep 17 00:00:00 2001 From: Steve Rhoades Date: Sun, 13 Aug 2017 01:12:34 -0700 Subject: [PATCH 004/108] Documentation for Launch Request support (#3104) --- source/_components/alexa.markdown | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/source/_components/alexa.markdown b/source/_components/alexa.markdown index 501915ee70a..d30584496fe 100644 --- a/source/_components/alexa.markdown +++ b/source/_components/alexa.markdown @@ -192,6 +192,29 @@ intent_script: Now say `Alexa ask homeassistant to run ` and Alexa will run that script for you. +### {% linkable_title Support for Launch Requests %} +There may be times when you want to respond to a launch request initiated from a command such as "Alexa, Red Alert!". + +To start you need to get the skill id: + + - Log in to [Amazon developer console][amazon-dev-console] + - Click the Alexa button at the top of the console + - Click the Alexa Skills Kit Get Started button + - Locate the skill for which you would like Launch Request support + - Click the "View Skill ID" link and copy the ID + +The configuration is the same as an intent with the exception being you will use your skill ID instead of the intent name. +```yaml +intent_script: + amzn1.ask.skill.08888888-7777-6666-5555-444444444444: + action: + service: script.turn_on + entity_id: script.red_alert + speech: + type: plain + text: OK +``` + ## {% linkable_title Giving Alexa Some Personality %} In the examples above, we told Alexa to say `OK` when she successfully completed the task. This is effective but a little dull! We can again use [templates] to spice things up a little. From 8d8f00e2c17f3bf205f60cc77d187dc776127db7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20H=C3=B8yer=20Iversen?= Date: Sun, 13 Aug 2017 15:20:15 +0200 Subject: [PATCH 005/108] Update switch.broadlink.markdown --- source/_components/switch.broadlink.markdown | 4 ---- 1 file changed, 4 deletions(-) diff --git a/source/_components/switch.broadlink.markdown b/source/_components/switch.broadlink.markdown index 9bca1dcf3ef..1eb034fcaa6 100644 --- a/source/_components/switch.broadlink.markdown +++ b/source/_components/switch.broadlink.markdown @@ -23,10 +23,6 @@ switch: - platform: broadlink host: IP_ADDRESS mac: 'MAC_ADDRESS' - switches: - reciever: - command_on: 'switch_packet on' - command_off: 'switch_packet off' ``` Configuration variables: From 64ed1174908d0532a1e68baee9a5ca397c2ddf48 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 13 Aug 2017 14:50:50 -0700 Subject: [PATCH 006/108] Update code_review_component.markdown --- source/developers/code_review_component.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/developers/code_review_component.markdown b/source/developers/code_review_component.markdown index fcc47210669..c47d184083e 100644 --- a/source/developers/code_review_component.markdown +++ b/source/developers/code_review_component.markdown @@ -19,6 +19,7 @@ Not all existing platforms follow the requirements in this checklist. This canno 1. Requirement version pinned: `REQUIREMENTS = ['phue==0.8.1']` 2. We no longer want requirements hosted on GitHub. Please upload to PyPi. + 3. Requirements only imported inside functions. This is necessary because requirements are installed on the fly. ### {% linkable_title Configuration %} From 34ee0e9848f5026a53f1e39f1b82aefa90ab3756 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 13 Aug 2017 14:54:32 -0700 Subject: [PATCH 007/108] Update code_review_platform.markdown --- source/developers/code_review_platform.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/developers/code_review_platform.markdown b/source/developers/code_review_platform.markdown index edf5ab5c3c7..0361d4bfc70 100644 --- a/source/developers/code_review_platform.markdown +++ b/source/developers/code_review_platform.markdown @@ -19,6 +19,7 @@ Not all existing platforms follow the requirements in this checklist. This canno 1. Requirement version should be pinned: `REQUIREMENTS = ['phue==0.8.1']` 2. We no longer want requirements hosted on GitHub. Please upload to PyPi. + 3. Requirements should only be imported inside functions. This is necessary because requirements are installed on the fly. ### {% linkable_title 2. Dependencies %} From 667609819e4d53c22b6e50b5579b0aaac62eab06 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 13 Aug 2017 14:54:41 -0700 Subject: [PATCH 008/108] Update code_review_component.markdown --- source/developers/code_review_component.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/developers/code_review_component.markdown b/source/developers/code_review_component.markdown index c47d184083e..4d708290c54 100644 --- a/source/developers/code_review_component.markdown +++ b/source/developers/code_review_component.markdown @@ -19,7 +19,7 @@ Not all existing platforms follow the requirements in this checklist. This canno 1. Requirement version pinned: `REQUIREMENTS = ['phue==0.8.1']` 2. We no longer want requirements hosted on GitHub. Please upload to PyPi. - 3. Requirements only imported inside functions. This is necessary because requirements are installed on the fly. + 3. Requirements should only be imported inside functions. This is necessary because requirements are installed on the fly. ### {% linkable_title Configuration %} From 6bf4db0cf2f78940d4c9da60c125a184c7c05808 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 13 Aug 2017 22:20:37 -0700 Subject: [PATCH 009/108] Release 0.51.2 --- _config.yml | 6 +++--- source/_posts/2017-08-12-release-51.markdown | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/_config.yml b/_config.yml index 5c941069f99..77f78049d6b 100644 --- a/_config.yml +++ b/_config.yml @@ -143,11 +143,11 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 51 -current_patch_version: 1 -date_released: 2017-08-12 +current_patch_version: 2 +date_released: 2017-08-14 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#release-0511--august-12" +patch_version_notes: "#release-0512--august-14" # Minor release (Example #release-0431---april-25): diff --git a/source/_posts/2017-08-12-release-51.markdown b/source/_posts/2017-08-12-release-51.markdown index 38d367e624a..36b32d9ad93 100644 --- a/source/_posts/2017-08-12-release-51.markdown +++ b/source/_posts/2017-08-12-release-51.markdown @@ -59,6 +59,18 @@ As we have seen more vacuum cleaners land in Home Assistant, it was time to crea - Fixed a bug in the automation editor that would break if no conditions available in the config file. ([@balloob]) +## {% linkable_title Release 0.51.2 - August 14 %} + +- Fix zwave power_consumption attribute ([@andrey-git] - [#8968]) ([zwave docs]) +- Turn foscam verbose mode off ([@andrey-git] - [#8967]) ([camera.foscam docs]) +- fix stack trace in pushbullet ([@Danielhiversen] - [#8965]) ([notify.pushbullet docs]) +- Harmoney remote: Fix call to ha_send_commands ([@MartinHjelmare] - [#8956]) ([remote.harmony docs]) +- fix DeviceException handling when updating xiaomi vacuum ([@azogue] - [#8954]) ([vacuum.xiaomi docs]) +- Sabnzbd: do not assume discovery info is a dict ([@balloob] - [#8951]) ([sensor.sabnzbd docs]) +- Fix login button ([@balloob]) +- Add workaround for broken toggles in Safari ([@balloob]) +- Fix weblink opening twice ([@azogue]) + ## {% linkable_title If you need help... %} ...don't hesitate to use our very active [forums][forum] or join us for a little [chat][discord]. The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. @@ -445,3 +457,10 @@ vacuum: [forum]: https://community.home-assistant.io/ [issue]: https://github.com/home-assistant/home-assistant/issues [discord]: https://discord.gg/c5DvZ4e +[#8951]: https://github.com/home-assistant/home-assistant/pull/8951 +[#8954]: https://github.com/home-assistant/home-assistant/pull/8954 +[#8956]: https://github.com/home-assistant/home-assistant/pull/8956 +[#8965]: https://github.com/home-assistant/home-assistant/pull/8965 +[#8967]: https://github.com/home-assistant/home-assistant/pull/8967 +[#8968]: https://github.com/home-assistant/home-assistant/pull/8968 +[@Danielhiversen]: https://github.com/Danielhiversen From 3e84bb4cc04ea8e389b94d245b3141d9314c2245 Mon Sep 17 00:00:00 2001 From: DrewSK Date: Mon, 14 Aug 2017 07:35:30 -0500 Subject: [PATCH 010/108] adding section of devices known to use port 80 (#3177) --- source/_components/device_tracker.netgear.markdown | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/_components/device_tracker.netgear.markdown b/source/_components/device_tracker.netgear.markdown index 4a5a94f638a..351e001b2ea 100644 --- a/source/_components/device_tracker.netgear.markdown +++ b/source/_components/device_tracker.netgear.markdown @@ -34,4 +34,7 @@ Configuration variables: - **password** (*Required*): The password for your given admin account. - **port** (*Optional*): The port your router communicates with (defaults to 5000, but 80 is also known to be used on some models) +List of models that are known to use port 80: +- Nighthawk X4S - AC2600 (R7800) + See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked. From 7b491dcbce7574c61d14469746fa4c17c6225fba Mon Sep 17 00:00:00 2001 From: Ioan Loosley Date: Mon, 14 Aug 2017 22:05:30 +0100 Subject: [PATCH 011/108] Fixed typo (#3179) --- source/_components/mailbox.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/mailbox.markdown b/source/_components/mailbox.markdown index 5e840303850..88ff203523f 100644 --- a/source/_components/mailbox.markdown +++ b/source/_components/mailbox.markdown @@ -12,7 +12,7 @@ footer: true Mailboxes provide an list of messages with short information about each. Mailbox messages appear on a separate panel in the frontend. -Home Assistant currently supports only the [Asterisk Vaoicemail](/component/mailbox.asterisk_mbox) mailbox. +Home Assistant currently supports only the [Asterisk Voicemail](/component/mailbox.asterisk_mbox) mailbox. Each mailbox also provides an entity to indicate the number of messages available on the main page. From 63bbd18c95d1bb1fa202c97523c41ec4d325446c Mon Sep 17 00:00:00 2001 From: BigMoby Date: Mon, 14 Aug 2017 23:06:53 +0200 Subject: [PATCH 012/108] Updating moon fase values according current source code (#3178) --- source/_components/sensor.moon.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.moon.markdown b/source/_components/sensor.moon.markdown index bcd2c780121..327d2214312 100644 --- a/source/_components/sensor.moon.markdown +++ b/source/_components/sensor.moon.markdown @@ -24,4 +24,4 @@ sensor: - platform: moon ``` This sensor will return one of the following values: -`Full moon`, `Last quarter`, `First quarter` or `New moon`. +`New moon`, `Waxing crescent`, `First quarter`, `Waxing gibbous`, `Full moon`, `Waning gibbous`, `Last quarter` or `Waning crescent` . From 257aa409bfc965ff92217c16da9727584ab299bb Mon Sep 17 00:00:00 2001 From: vanviegen Date: Mon, 14 Aug 2017 23:47:30 -0700 Subject: [PATCH 013/108] Update zha.markdown (#3181) --- source/_components/zha.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/zha.markdown b/source/_components/zha.markdown index 2f7e0f8ad73..a3f5fabf83d 100644 --- a/source/_components/zha.markdown +++ b/source/_components/zha.markdown @@ -42,4 +42,4 @@ Configuration variables: - **usb_path** (*Required*): Path to the serial device for the radio. - **database_path** (*Required*): Path to the database which will keep persistent network data. -To add new devices to the network, call the `permit` service on the `zha` domain, and then follow the device instructions. +To add new devices to the network, call the `permit` service on the `zha` domain, and then follow the device instructions for doing a scan or factory reset. In case you want to add Philips Hue bulbs that have previously been added to another bridge, have a look at: https://github.com/vanviegen/hue-thief From d1e2e51b8351340a65388faa3f47237f2d29c134 Mon Sep 17 00:00:00 2001 From: David Jackson Date: Tue, 15 Aug 2017 09:53:52 -0400 Subject: [PATCH 014/108] Update media_player.bluesound.markdown (#3183) Fix formatting for display on site. --- source/_components/media_player.bluesound.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/media_player.bluesound.markdown b/source/_components/media_player.bluesound.markdown index ff387ec1775..e0d81be772a 100644 --- a/source/_components/media_player.bluesound.markdown +++ b/source/_components/media_player.bluesound.markdown @@ -35,8 +35,8 @@ Configuration variables: - **port** (*Optional*): Port of communication to the device (default: 11000) ## Advanced configuration example - - ```yaml + +```yaml # Example configuration.yaml entry with manually specified addresses media_player: - platform: bluesound From a553f2ca2f4e0103c6ce9602b2c28adb80632121 Mon Sep 17 00:00:00 2001 From: Will Heid Date: Tue, 15 Aug 2017 10:03:03 -0700 Subject: [PATCH 015/108] grammar --- source/_docs/automation/trigger.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index ad97a001315..1d6c2cb57ba 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -186,7 +186,7 @@ automation: ### {% linkable_title Multiple triggers %} -When your want your automation rule to have multiple triggers, just prefix the first line of each trigger with a dash (-) and indent the lines following accordingly. Whenever one of the triggers fires, your rule is executed. +When your want your automation rule to have multiple triggers, just prefix the first line of each trigger with a dash (-) and indent the next lines accordingly. Whenever one of the triggers fires, your rule is executed. ```yaml automation: From 9324e70cadbcaafc5bfba011a382f6ca5c0a01d3 Mon Sep 17 00:00:00 2001 From: Henrik Aronsson Date: Wed, 16 Aug 2017 10:14:11 +0200 Subject: [PATCH 016/108] Update tradfri.markdown (#3185) Added a warning for windows users that the Tradfri component doesn't work. Source: https://github.com/home-assistant/home-assistant/issues/7735#issuecomment-304460322 If anyone has a more technical source it would be neat. --- source/_components/tradfri.markdown | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/_components/tradfri.markdown b/source/_components/tradfri.markdown index 512a427eebb..8505d4b21e1 100644 --- a/source/_components/tradfri.markdown +++ b/source/_components/tradfri.markdown @@ -18,6 +18,9 @@ The `tradfri` component supports for the IKEA Trådfri (Tradfri) gateway. The ga For this to work, you need to install a modified lib-coap library. +

+This component does **not** work on Windows, as the modified lib-coap doesn't exists for Windows. +

If you are using [Hass.io](/hassio/) then just move forward to the configuration as all requirements are already fullfilled.

From 9501883a228eaffc6444b376329a4d7fec13ba90 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 16 Aug 2017 21:31:51 +0200 Subject: [PATCH 017/108] Review/Edit: Hass.io (#3190) Documentation fixes (spelling, grammar, and punctuations) to the 'Hass.io' section of the website. --- source/_docs/installation.markdown | 2 +- source/hassio/external_storage.markdown | 4 ++-- source/hassio/index.markdown | 2 +- source/hassio/installing_third_party_addons.markdown | 4 ++-- source/hassio/run_local.markdown | 4 ++-- source/hassio/zwave.markdown | 5 +++-- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/source/_docs/installation.markdown b/source/_docs/installation.markdown index 7de9486a425..d0605f7f380 100644 --- a/source/_docs/installation.markdown +++ b/source/_docs/installation.markdown @@ -10,7 +10,7 @@ footer: true redirect_from: /getting-started/installation/ --- -Home Assistant provides multiple ways to be installed. A requirement is that you have [Python](https://www.python.org/downloads/) installed. For Windows we require at least **Python 3.5** and for other operating systems at least **Python 3.4.2**. +Home Assistant provides multiple ways to be installed. A requirement is that you have [Python](https://www.python.org/downloads/) installed. For Windows, we require at least **Python 3.5** and for other operating systems at least **Python 3.4.2**.
diff --git a/source/hassio/external_storage.markdown b/source/hassio/external_storage.markdown index 201ebbec411..a69b7b8a783 100644 --- a/source/hassio/external_storage.markdown +++ b/source/hassio/external_storage.markdown @@ -12,11 +12,11 @@ footer: true ### {% linkable_title ResinOS / Generic %} -Map the USB drive into add-on with `devices` options. If you need it on multiple add-ons you can use the `/share` folder which is accessible from multiple add-ons. +Map the USB drive into add-on with `devices` options. If you need it on multiple add-ons, you can use the `/share` folder which is accessible from various add-ons. It is also possible to create an add-on that only mounts stuff to `share`. You can format the USB device with multiple volumes and map it to a specific add-on. ### {% linkable_title Generic %} -The `share` is default on `/usr/share/hassio/share` so you can mount your volumes into this folder. +The `share` defaults to `/usr/share/hassio/share` so you can mount your volumes into this folder. diff --git a/source/hassio/index.markdown b/source/hassio/index.markdown index 776ec175b69..c6f15c61fcd 100644 --- a/source/hassio/index.markdown +++ b/source/hassio/index.markdown @@ -9,7 +9,7 @@ sharing: true footer: true --- -Hass.io turns your Raspberry Pi (or other device) into the ultimate home automation hub powered by Home Assistant. With Hass.io you can focus on integrating your devices and writing automations. +Hass.io turns your Raspberry Pi (or another device) into the ultimate home automation hub powered by Home Assistant. With Hass.io you can focus on integrating your devices and writing automations. [Go to the installation instructions »][install] diff --git a/source/hassio/installing_third_party_addons.markdown b/source/hassio/installing_third_party_addons.markdown index f3d8653add3..0bf6cb3166c 100644 --- a/source/hassio/installing_third_party_addons.markdown +++ b/source/hassio/installing_third_party_addons.markdown @@ -9,7 +9,7 @@ sharing: true footer: true --- -Hass.io allows anyone to create add-on repositories to easily share their add-ons for Hass.io. To try this locally, you can use our example add-on repository at +Hass.io allows anyone to create add-on repositories to share their add-ons for Hass.io easily. To try this locally, you can use our example add-on repository at ```text https://github.com/home-assistant/hassio-addons-example @@ -31,4 +31,4 @@ Add the URLs of repositories (one per line) and then press "Save". A new card fo ### {% linkable_title Help: Repository is not showing up %} -If you have added a repository but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel -> Three dot menu -> Advanced Settings -> Supervisor card -> View logs and scroll to the bottom. It should tell you what went wrong. Report this information to the repository author. +If you have added a repository, but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel -> Three dot menu -> Advanced Settings -> Supervisor card -> View logs and scroll to the bottom. It should tell you what went wrong. Report this information to the repository author. diff --git a/source/hassio/run_local.markdown b/source/hassio/run_local.markdown index 2b3b51a8430..00751ba6979 100644 --- a/source/hassio/run_local.markdown +++ b/source/hassio/run_local.markdown @@ -9,11 +9,11 @@ sharing: true footer: true --- -Hass.io is a managed environment. This means that you can install applications that can be embedded into Home Assistant using the `command_line` sensor/switch. +Hass.io is a managed environment, which means that you can install applications that can be embedded into Home Assistant using the `command_line` sensor/switch. There are two options if you need to run a script to read data from a sensor or send commands to other devices on Hass.io. -First option is to write a custom component for Home Assistant. Using Python you can communicate with your device. For custom component, take a look at the [developer documentation][custom-component]. +The first option is to write a custom component for Home Assistant. Using Python, you can communicate with your device. For more information about developing a custom component, take a look at the [developer documentation][custom-component]. The second option is to make a local add-on for Hass.io that sends the data to Home Assistant via MQTT. Before we dive into this, read up on [Hass.io add-on development][addons-tutorial] first. diff --git a/source/hassio/zwave.markdown b/source/hassio/zwave.markdown index ccd4b8b5a0f..c450e019626 100644 --- a/source/hassio/zwave.markdown +++ b/source/hassio/zwave.markdown @@ -21,11 +21,12 @@ If you need GPIO on raspberry-pi3 for you Z-Wave module add follow line into `co dtoverlay=pi3-miniuart-bt ``` -For very special device, the `/dev/ttyAMA0` will not detect by udev and not mapped with docker. So you need explicit set this device for mapping to Home-Assistant. Execute this command on ssh add-on: +For some exceptional devices, the `/dev/ttyAMA0` will not be detected by udev and are therefor not mapped with docker. +So you need explicit set this device for mapping to Home-Assistant. Execute this command on ssh add-on: ```bash $ curl -d '{"devices": ["ttyAMA0"]}' http://172.17.0.2/homeassistant/options ``` -After that you need change `usb_path` to `/dev/ttyAMA0`. +After that, you need change `usb_path` to `/dev/ttyAMA0`. ### HUSBZB-1: ```yaml From 1b2e1d46998a2c06119eece41cebab0852d7288f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Arnauts?= Date: Wed, 16 Aug 2017 21:39:20 +0200 Subject: [PATCH 018/108] Update sensor.nest.markdown Fix typo (batter_health -> battery_health) --- source/_components/sensor.nest.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.nest.markdown b/source/_components/sensor.nest.markdown index f9d08bf2d1f..37e5d83d5a5 100644 --- a/source/_components/sensor.nest.markdown +++ b/source/_components/sensor.nest.markdown @@ -47,6 +47,6 @@ The following conditions are available by device: - Nest Protect: - co\_status - smoke\_status - - batter\_health + - battery\_health - Nest Camera: none From 41815b9c9eb70a46bac93e7e41f70ea4b90cbb7a Mon Sep 17 00:00:00 2001 From: rbflurry Date: Thu, 17 Aug 2017 03:21:19 -0400 Subject: [PATCH 019/108] Update Numeric State (#3191) * Update Numeric State Add note on using above and below in the same trigger * Changed formating --- source/_docs/automation/trigger.markdown | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index 1d6c2cb57ba..0a9db0bd5e1 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -70,6 +70,11 @@ automation: below: 25 ``` +

+Listing above and below together means the numeric_state has to be between the two values. +In the example above, a numeric_state that is 17.1-24.9 would fire this trigger. +

+ ### {% linkable_title State trigger %} Triggers when the state of tracked entities change. If only entity_id given will match all state changes, even if only state attributes change. From f446833811f361fb491ee0a8c1217745155f385f Mon Sep 17 00:00:00 2001 From: Jay Stevens Date: Thu, 17 Aug 2017 00:43:43 -0700 Subject: [PATCH 020/108] Clarification about SMTP with Google accounts (#3193) The hint about enabling "Less secure apps" access to your Gmail account is a bit outdated; most people with the technical know-how to set up Home Assistant and edit the configuration files will likely have two-step verification enabled on their Gmail accounts. I added a small clarification about using application-specific passwords in that instance to hopefully save people an internet search. --- source/_components/notify.smtp.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/notify.smtp.markdown b/source/_components/notify.smtp.markdown index 7f94abf4e7d..533129e36cb 100644 --- a/source/_components/notify.smtp.markdown +++ b/source/_components/notify.smtp.markdown @@ -60,7 +60,7 @@ notify: sender_name: My Home Assistant ``` -Keep in mind that Google has some extra layers of protection which need special attention (Hint: 'Less secure apps'). +Keep in mind that Google has some extra layers of protection which need special attention (Hint: 'Less secure apps'). If you have 2-step verification enabled on your Google account, you'll need to use [an application-specific password](https://support.google.com/mail/answer/185833?hl=en). To use the SMTP notification, refer to it in an automation or script like in this example: From c035fb8fa9accc0a2f3b26373736466617ad96aa Mon Sep 17 00:00:00 2001 From: mauriciobonani Date: Fri, 18 Aug 2017 03:57:44 -0400 Subject: [PATCH 021/108] Distribution name correction (#3195) --- source/_docs/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation.markdown b/source/_docs/installation.markdown index d0605f7f380..5397426820c 100644 --- a/source/_docs/installation.markdown +++ b/source/_docs/installation.markdown @@ -23,7 +23,7 @@ Home Assistant provides multiple ways to be installed. A requirement is that you
-
Rasbian
+
Raspbian
From c43c586e904b156fa8f005633b43e4a485f271b6 Mon Sep 17 00:00:00 2001 From: Sebastian Muszynski Date: Fri, 18 Aug 2017 14:57:36 +0200 Subject: [PATCH 022/108] IoT class changed. The gateway provides updates immediately as multicast broadcast. (#3197) Device table added for binary sensors. Some glitches removed. --- .../_components/binary_sensor.xiaomi.markdown | 38 ++++++++++++------- source/_components/cover.xiaomi.markdown | 2 +- source/_components/light.xiaomi.markdown | 2 +- source/_components/sensor.xiaomi.markdown | 2 +- source/_components/switch.xiaomi.markdown | 2 +- source/_components/xiaomi.markdown | 12 +++--- 6 files changed, 34 insertions(+), 24 deletions(-) diff --git a/source/_components/binary_sensor.xiaomi.markdown b/source/_components/binary_sensor.xiaomi.markdown index d4f5a7672a4..71da18c7324 100644 --- a/source/_components/binary_sensor.xiaomi.markdown +++ b/source/_components/binary_sensor.xiaomi.markdown @@ -10,7 +10,7 @@ footer: true logo: xiaomi.png ha_category: Binary Sensor ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- @@ -20,12 +20,21 @@ The requirement is that you have setup the [`xiaomi` component](/components/xiao ### {% linkable_title Type of sensors supported %} -- Motion -- Door / Window -- Smoke -- Gas -- Xiaomi Wireless Button -- Xiaomi Cube + +| Name | ZigBee entity | Model no. | States | Event | Event key | Event values | +|-----------------------------------|---------------------|----------------------|----------------------------------------------------|-----------------------------------------|--------------------------------------------------------------------------------------------------------------------------| +| Motion Sensor (1st gen) | motion | RTCGQ01LM | on, off | `motion` | | | +| Motion Sensor (2nd gen) | sensor_motion.aq2 | RTCGQ11LM | on, off | `motion` | | | +| Door and Window Sensor (1st gen) | magnet | WSDCGQ01LM | on, off | | | | +| Door and Window Sensor (2nd gen) | sensor_magnet.aq2 | MCCGQ11LM | on, off | | | | +| Smoke Detector | smoke | JTYJ-GD-01LM/BW | on, off | | | | +| Gas Leak Detector | natgas | JTQJ-BF-01LM/BW | on, off | | | | +| Button (1st gen) | switch | WXKG01LM | on (thru long_click_press), off | `click` | `click_type` | `long_click_press`, `long_click_release`, `hold`, `single`, `double` | +| Button (2nd gen) | sensor_switch.aq2 | WXKG11LM | off (always) | `click` | `click_type` | `single`, `double` | +| Aqara Wireless Switch (Single) | 86sw1 | WXKG03LM | off (always) | `click` | `click_type` | `single` | +| Aqara Wireless Switch (Double) | 86sw2 | WXKG02LM | off (always) | `click` | `click_type` | `single`, `both` | +| Cube | cube | MFKZQ01LM | off (always) | `cube_action` | `action_type`, `action_value` (rotate) | `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall`, `rotate` (degrees at action_value) | + ### {% linkable_title Automation examples %} @@ -65,7 +74,7 @@ The requirement is that you have setup the [`xiaomi` component](/components/xiao data: entity_id: automation.Motion_off ``` - + #### {% linkable_title Door and/or Window %} ```yaml @@ -194,8 +203,8 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi platform: event event_type: cube_action event_data: - entity_id: binary_sensor.cube_15xxxxxxxxxxxx - action_type: flip180 + entity_id: binary_sensor.cube_15xxxxxxxxxxxx + action_type: flip180 action: - service: light.turn_on entity_id: light.gateway_light_28xxxxxxxxxx @@ -203,10 +212,10 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi color_name: "darkviolet" - alias: Cube event move trigger: - platform: event + platform: event event_type: cube_action - event_data: - entity_id: binary_sensor.cube_15xxxxxxxxxxxx + event_data: + entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: move action: - service: light.turn_on @@ -238,7 +247,8 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi data: color_name: "blue" ``` -#### #### {% linkable_title Aqara Wireless Switch %} + +#### {% linkable_title Aqara Wireless Switch %} The Aqara Wireless Switch is available as single-key and double-key version. Each key behaves like the Wireless Button limited to the click event `single`. The double key version adds a third device called `binary_sensor.wall_switch_both_158xxxxxxxxx12` which reports a click event called `both` if both keys are pressed. diff --git a/source/_components/cover.xiaomi.markdown b/source/_components/cover.xiaomi.markdown index ff2fa683b0e..5c7aa9e4d70 100644 --- a/source/_components/cover.xiaomi.markdown +++ b/source/_components/cover.xiaomi.markdown @@ -10,7 +10,7 @@ footer: true logo: xiaomi.png ha_category: Cover ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- diff --git a/source/_components/light.xiaomi.markdown b/source/_components/light.xiaomi.markdown index 24f84bc6b52..f33a907fc3d 100644 --- a/source/_components/light.xiaomi.markdown +++ b/source/_components/light.xiaomi.markdown @@ -10,7 +10,7 @@ footer: true logo: xiaomi.png ha_category: Light ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- diff --git a/source/_components/sensor.xiaomi.markdown b/source/_components/sensor.xiaomi.markdown index 61336ac1df6..3e9f776380f 100644 --- a/source/_components/sensor.xiaomi.markdown +++ b/source/_components/sensor.xiaomi.markdown @@ -10,7 +10,7 @@ footer: true logo: xiaomi.png ha_category: Sensor ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- diff --git a/source/_components/switch.xiaomi.markdown b/source/_components/switch.xiaomi.markdown index 1e4f1a5767e..f710778f911 100644 --- a/source/_components/switch.xiaomi.markdown +++ b/source/_components/switch.xiaomi.markdown @@ -10,7 +10,7 @@ footer: true logo: xiaomi.png ha_category: Switch ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- diff --git a/source/_components/xiaomi.markdown b/source/_components/xiaomi.markdown index d87d7167faa..a11431147e8 100644 --- a/source/_components/xiaomi.markdown +++ b/source/_components/xiaomi.markdown @@ -10,15 +10,15 @@ footer: true logo: xiaomi.png ha_category: Hub ha_release: "0.50" -ha_iot_class: "Local Polling" +ha_iot_class: "Local Push" --- -The `xiaomi_gw` platform allows you to integrate the following [Xiaomi](http://www.mi.com/en/) devices into Home Assistant. +The `xiaomi` platform allows you to integrate the following [Xiaomi](http://www.mi.com/en/) devices into Home Assistant. -- Temperature and Humidity Sensor (old and new version) -- Motion Sensor (old and new version) -- Door and Window Sensor (old and new version) -- Button (old and new version) +- Temperature and Humidity Sensor (1st and 2nd generation) +- Motion Sensor (1st and 2nd generation) +- Door and Window Sensor (1st and 2nd generation) +- Button (1st and 2nd generation) - Plug aka Socket (ZigBee version, reports power consumed, power load, state and if device in use) - Wall Plug (reports power consumed, power load and state) - Aqara Wall Switch (Single) From 460b93449894f5c160d101ff0ccca98502b8ec0f Mon Sep 17 00:00:00 2001 From: Johnny Chadda Date: Fri, 18 Aug 2017 14:58:13 +0200 Subject: [PATCH 023/108] Fix spelling error (#3198) --- source/_components/arlo.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/arlo.markdown b/source/_components/arlo.markdown index 6556ef17b71..51c6b32693e 100644 --- a/source/_components/arlo.markdown +++ b/source/_components/arlo.markdown @@ -40,7 +40,7 @@ The Arlo component also provides a service to enable/disable the motion detectio - alias: Enable Arlo upton HA start' initial_state: 'on' trigger: - platform: homeassitant + platform: homeassistant event: start action: service: camera.enable_motion_detection From 6731cd648e9b2bb8aab6f0e939d4366c188ac9d0 Mon Sep 17 00:00:00 2001 From: Alasdair Nicol Date: Fri, 18 Aug 2017 20:50:40 +0100 Subject: [PATCH 024/108] Fix typo on duck dns addon page (#3199) --- source/_addons/duckdns.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_addons/duckdns.markdown b/source/_addons/duckdns.markdown index 36d2ef0da4a..908a297c744 100644 --- a/source/_addons/duckdns.markdown +++ b/source/_addons/duckdns.markdown @@ -15,7 +15,7 @@ featured: true ```json { "token": "sdfj-2131023-dslfjsd-12321", - "domains": ["my-first-accound.duckdns.org", "my-second-account.duckdns.org"] + "domains": ["my-first-account.duckdns.org", "my-second-account.duckdns.org"] } ``` From c674080bd176a4da4b8bdfc71a36867153ff2a04 Mon Sep 17 00:00:00 2001 From: Paul Jimenez Date: Sat, 19 Aug 2017 07:19:00 -0400 Subject: [PATCH 025/108] Add ha_iot_class (#3202) --- source/_components/cover.myq.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_components/cover.myq.markdown b/source/_components/cover.myq.markdown index 1896f2e42d6..405065d88ab 100644 --- a/source/_components/cover.myq.markdown +++ b/source/_components/cover.myq.markdown @@ -10,6 +10,7 @@ footer: true logo: myq.png ha_category: Cover ha_release: 0.39 +ha_iot_class: Cloud Polling --- The `myq` cover platform lets you control MyQ-Enabled garage doors through Home Assistant. Device names in Home Assistant are generated based on the names defined in your MyQ Device mobile app. From 59fcf2626ee86d7a0749c03a898c96e60571849e Mon Sep 17 00:00:00 2001 From: Ken Davidson Date: Sat, 19 Aug 2017 07:21:23 -0400 Subject: [PATCH 026/108] Add information about selecting a theme. (#3201) --- source/_components/frontend.markdown | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/_components/frontend.markdown b/source/_components/frontend.markdown index 0fa79d15b31..d04a20945e3 100644 --- a/source/_components/frontend.markdown +++ b/source/_components/frontend.markdown @@ -55,3 +55,6 @@ automation: data: name: happy ``` +### {% linkable_title Manual Theme Selection %} + +When themes are enabled in the `configuration.yaml` file, a new option will show up in the Configuration panel under `configuration.yaml` called "Set a theme." You can then choose any installed theme from the dropdown list and it will be applied immediately. From 6a849c892c64c8edccf01ba07e1096a5ec7f6126 Mon Sep 17 00:00:00 2001 From: Ludeeus Date: Sat, 19 Aug 2017 15:17:01 +0200 Subject: [PATCH 027/108] Update sensor.openhardwaremonitor.markdown (#3205) --- source/_components/sensor.openhardwaremonitor.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_components/sensor.openhardwaremonitor.markdown b/source/_components/sensor.openhardwaremonitor.markdown index 2c511e888f0..af8aed48ce8 100644 --- a/source/_components/sensor.openhardwaremonitor.markdown +++ b/source/_components/sensor.openhardwaremonitor.markdown @@ -30,3 +30,7 @@ Configuration variables: - **host** (*Required*): The IP address or hostname of your Open Hardware Monitor. - **port** (*Optional*): The port of your Open Hardware Monitor API. Default to 8085. +

+OpenHardwareMonitor must be running on the host, with "Remote web server" active.
+You also need to open an inbound port for (TPC 8085) in the advanced firewall settings. +

From 1f6a9a4b60c930472fa79fc1f9729ca8d74b1060 Mon Sep 17 00:00:00 2001 From: Andrew Cockburn Date: Sun, 20 Aug 2017 10:43:51 -0400 Subject: [PATCH 028/108] Update updating.markdown --- source/_docs/ecosystem/appdaemon/updating.markdown | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/source/_docs/ecosystem/appdaemon/updating.markdown b/source/_docs/ecosystem/appdaemon/updating.markdown index 8b39e9ccf8b..132b4dc5d2e 100644 --- a/source/_docs/ecosystem/appdaemon/updating.markdown +++ b/source/_docs/ecosystem/appdaemon/updating.markdown @@ -13,14 +13,7 @@ redirect_from: /ecosystem/appdaemon/updating/ To update AppDaemon after I have released new code, just run the following command to update your copy: ```bash -$ git pull origin +$ sudo pip3 install --upgrade appdaemon ``` -If you are using pip3 for the install do this: - -```bash -$ sudo pip3 uninstall appdaemon -$ sudo pip3 install . -``` - -If you are using docker, rerun the steps to create a new docker image. +If you are using docker, rerun the steps to grab the latestdocker image. From bf23a8b5ec5c622fe399f27e39a92596ffd251b6 Mon Sep 17 00:00:00 2001 From: Andrew Cockburn Date: Sun, 20 Aug 2017 11:23:59 -0400 Subject: [PATCH 029/108] Update hadashboard.markdown --- source/_docs/ecosystem/hadashboard.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/ecosystem/hadashboard.markdown b/source/_docs/ecosystem/hadashboard.markdown index ecd636ecc89..c73560401ac 100755 --- a/source/_docs/ecosystem/hadashboard.markdown +++ b/source/_docs/ecosystem/hadashboard.markdown @@ -39,4 +39,4 @@ HADashboard is a modular, skinnable dashboard for [Home Assistant](https://home- -For full installation instructions see the HADashboard section in the [AppDaemon Project Documentation](http://appdaemon.readthedocs.io/en/latest/DASHBOARD/) +For full installation instructions see the HADashboard section in the [AppDaemon Project Documentation](http://appdaemon.readthedocs.io/en/latest/DASHBOARD_INSTALL.html) From cd22bbce4775ab589a840112f8dcf13a708b4a3d Mon Sep 17 00:00:00 2001 From: Alok Saboo Date: Sun, 20 Aug 2017 14:49:04 -0400 Subject: [PATCH 030/108] Use the right quotes for code (#3214) --- source/_components/switch.template.markdown | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/source/_components/switch.template.markdown b/source/_components/switch.template.markdown index d53b6881316..9941cf844bb 100644 --- a/source/_components/switch.template.markdown +++ b/source/_components/switch.template.markdown @@ -13,11 +13,11 @@ ha_iot_class: "Local Push" logo: home-assistant.png --- -The `template` platform creates switches that combine components. +The `template` platform creates switches that combines components. For example, if you have a garage door with a toggle switch that operates the motor and a sensor that allows you know whether the door is open or closed, you can combine these into a switch that knows whether the garage door is open or closed. -This can simplify the gui, and make it easier to write automations. You can mark the components you have combined as `hidden` so they don't appear themselves. +This can simplify the GUI and make it easier to write automations. You can mark the components you have combined as `hidden` so they don't appear themselves. To enable Template switches in your installation, add the following to your `configuration.yaml` file: @@ -48,8 +48,8 @@ Configuration variables: ## {% linkable_title Considerations %} -If you are using the state of a platform that takes extra time to load, the template switch may get an 'unknown' state during startup. This results in error messages in your log file until that platform has completed loading. If you use is_state() function in your template, you can avoid this situation. For example, you would replace {% raw %}'{{ states.switch.source.state }}'{% endraw %} with this equivalent that returns true/false and never gives an unknown result: -{% raw %}'{{ is_state('switch.source', 'on') }}'{% endraw %} +If you are using the state of a platform that takes extra time to load, the template switch may get an 'unknown' state during startup. This results in error messages in your log file until that platform has completed loading. If you use `is_state()` function in your template, you can avoid this situation. For example, you would replace {% raw %}`{{ states.switch.source.state }}`{% endraw %} with this equivalent that returns true/false and never gives an unknown result: +{% raw %}`{{ is_state('switch.source', 'on') }}`{% endraw %} ## {% linkable_title Examples %} @@ -128,4 +128,3 @@ switch: entity_id: cover.garage_door icon_template: {% raw %}"{% if is_state('cover.garage_door', 'open') %}mdi:garage-open{% else %}mdi:garage{% endif %}"{% endraw %} ``` - From fb6283fff17e6c3206f9d9ae63581e6d737bf7cd Mon Sep 17 00:00:00 2001 From: mattie47 Date: Mon, 21 Aug 2017 07:10:14 +1200 Subject: [PATCH 031/108] Update switch.broadlink.markdown (#3212) Have changed "type" from Optional, to "Required for some models". I don't know if this is non-standard for documentation... Regardless, my SP3 would not work without this field configured. I spent a lot of time reading various threads on what to troubleshoot. This post: https://community.home-assistant.io/t/broadlink-rm-pro-and-a1-sensor/3678/305 also implied the friendly_name is required but I found this not to be the case, and instead "Broadlink Switch" was simply displayed. After much googling and trying various things, I believe the following two pip packages were required for broadlink.py to work: sudo pip3 install pycrypto voluptuous Should I also add this to the documentation? Thanks, Matt --- source/_components/switch.broadlink.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/switch.broadlink.markdown b/source/_components/switch.broadlink.markdown index 1eb034fcaa6..c40d3ebd112 100644 --- a/source/_components/switch.broadlink.markdown +++ b/source/_components/switch.broadlink.markdown @@ -31,7 +31,7 @@ Configuration variables: - **mac** (*Required*): Device MAC address. - **timeout** (*Optional*): Timeout in seconds for the connection to the device. - **friendly_name** (*Optional*): The name used to display the switch in the frontend. -- **type** (*Optional*): Switch type. Choose one from: `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl`, `rm_mini_shate`, `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` or `spminiplus`. +- **type** (*Required for some models*): Switch type. Choose one from: `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl`, `rm_mini_shate`, `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` or `spminiplus`. - **switches** (*Optional*): The array that contains all switches. - **identifier** (*Required*): Name of the command switch as slug. Multiple entries are possible. - **friendly_name** (*Optional*): The name used to display the switch in the frontend. From 7079ac80b5777fcf93bead8fae25fe167807f0ae Mon Sep 17 00:00:00 2001 From: mauriciobonani Date: Sun, 20 Aug 2017 15:16:18 -0400 Subject: [PATCH 032/108] Correcting some command lines (#3210) --- source/_docs/installation/virtualenv.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_docs/installation/virtualenv.markdown b/source/_docs/installation/virtualenv.markdown index 3b46c19fced..1fb11753b7e 100644 --- a/source/_docs/installation/virtualenv.markdown +++ b/source/_docs/installation/virtualenv.markdown @@ -19,8 +19,8 @@ Virtualenvs are pretty easy to setup. This example will walk through one method ```bash $ sudo apt-get update $ sudo apt-get upgrade -$ sudo apt-get install python-pip python3-dev -$ sudo pip install --upgrade virtualenv +$ sudo apt-get install python3-pip python3-dev +$ sudo pip3 install --upgrade virtualenv ``` ### {% linkable_title Step 1: Create a Home Assistant user & group %} From d352ca9d8f50f66f2134ba01e779cdaae3b76fc7 Mon Sep 17 00:00:00 2001 From: Michael Luggen Date: Sun, 20 Aug 2017 21:17:22 +0200 Subject: [PATCH 033/108] took me 10 min to find the location (#3209) --- source/hassio/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index f8b06a9787b..ab268f16177 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -25,7 +25,7 @@ Hass.io images are available for all available Raspberry Pi and Intel NUC platfo

-- Enable either the [Samba add-on][samba] or the [SSH add-on][ssh] to manage your configuration (From the UI choose **Hass.io** which is located in the sidebar). +- Enable either the [Samba add-on][samba] or the [SSH add-on][ssh] to manage your configuration in `/config/` (From the UI choose **Hass.io** which is located in the sidebar).

If you copy over your existing Home Assistant configuration, make sure to enable the Hass.io panel by adding either `discovery:` or `hassio:` to your configuration. From 02fc819bbdbad33be6240bbfea40af81176ebfae Mon Sep 17 00:00:00 2001 From: Ludeeus Date: Sun, 20 Aug 2017 21:59:20 +0200 Subject: [PATCH 034/108] Update sensor.openhardwaremonitor.markdown (#3207) --- source/_components/sensor.openhardwaremonitor.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.openhardwaremonitor.markdown b/source/_components/sensor.openhardwaremonitor.markdown index af8aed48ce8..f0080919b0b 100644 --- a/source/_components/sensor.openhardwaremonitor.markdown +++ b/source/_components/sensor.openhardwaremonitor.markdown @@ -31,6 +31,6 @@ Configuration variables: - **port** (*Optional*): The port of your Open Hardware Monitor API. Default to 8085.

-OpenHardwareMonitor must be running on the host, with "Remote web server" active.
+OpenHardwareMonitor must be running on the host, with "Remote web server" active. You also need to open an inbound port for (TPC 8085) in the advanced firewall settings.

From fdb03bfb1d30f99d7b9383673a7cda5ae842c243 Mon Sep 17 00:00:00 2001 From: Fredrik Lindqvist Date: Sun, 20 Aug 2017 23:12:08 +0200 Subject: [PATCH 035/108] Fix wireless network for hassbian With later versions of wpa_supplicant the conf file needs a little bit more added to it. --- source/_docs/installation/hassbian/installation.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_docs/installation/hassbian/installation.markdown b/source/_docs/installation/hassbian/installation.markdown index afb735832f9..e190860f0fe 100644 --- a/source/_docs/installation/hassbian/installation.markdown +++ b/source/_docs/installation/hassbian/installation.markdown @@ -36,6 +36,10 @@ The following extras are included on the image: After flashing the image to your SD Card open the partition `boot` and create a new file `wpa_supplicant.conf`. Edit the file and enter your network credentials. For more information visit [Setting up Wifi for Raspbian][wifi-setup]. During start the file will automatically be copied in the right folder and the network connection will be established. The file could look like this: ```conf +country=SE +ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev +update_config=1 + network={ ssid="YOUR_SSID" psk="YOUR_PASSWORD" From 400e0a71b1bfc2ef4ea63422deaca5595b710d21 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 21 Aug 2017 07:30:26 +0200 Subject: [PATCH 036/108] Update --- source/developers/credits.markdown | 214 +++++++++++++++-------------- 1 file changed, 113 insertions(+), 101 deletions(-) diff --git a/source/developers/credits.markdown b/source/developers/credits.markdown index ab2ee56dd4b..5f9f3f1cbfb 100644 --- a/source/developers/credits.markdown +++ b/source/developers/credits.markdown @@ -2,7 +2,7 @@ layout: page title: "Credits" description: "Credits for the developers who contributed to Home Assistant." -date: 2017-07-30 19:56:19 +0000 +date: 2017-08-20 20:44:16 +0000 sidebar: true comments: false sharing: true @@ -13,28 +13,28 @@ This page contains a list of people who have contributed in one way or another t ### {% linkable_title Author %} -- [Paulus Schoutsen (@balloob)](https://github.com/balloob "5641 total commits to the home-assistant organization, 3411 commits to home-assistant, 1191 commits to home-assistant.github.io, 576 commits to home-assistant-polymer, 244 commits to home-assistant-js, 112 commits to netdisco, 40 commits to home-assistant-js-websocket, 19 commits to hass-release, 12 commits to home-assistant-assets, 8 commits to example-custom-config, 7 commits to micropython-home-assistant, 4 commits to LabelBot, 4 commits to hassio, 2 commits to issue-bot, 2 commits to lambda-home-assistant-github, 2 commits to hassio-addons, 2 commits to python-hassbian, 2 commits to hassio-addons-example, 1 commit to hassio-build, 1 commit to home-assistant-iOS, 1 commit to home-assistant-notebooks") +- [Paulus Schoutsen (@balloob)](https://github.com/balloob "5706 total commits to the home-assistant organization, 3436 commits to home-assistant, 1206 commits to home-assistant.github.io, 596 commits to home-assistant-polymer, 244 commits to home-assistant-js, 113 commits to netdisco, 42 commits to home-assistant-js-websocket, 21 commits to hass-release, 12 commits to home-assistant-assets, 8 commits to example-custom-config, 7 commits to micropython-home-assistant, 4 commits to LabelBot, 4 commits to hassio, 2 commits to lambda-home-assistant-github, 2 commits to python-hassbian, 2 commits to hassio-addons, 2 commits to hassio-addons-example, 2 commits to issue-bot, 1 commit to hassio-build, 1 commit to home-assistant-notebooks, 1 commit to home-assistant-iOS") ### {% linkable_title Contributors %} (in alphabetical order) - [15goudreau (@15goudreau)](https://github.com/15goudreau "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") -- [Aaron Bach (@bachya)](https://github.com/bachya "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Aaron Linville (@linville)](https://github.com/linville "1 total commits to the home-assistant organization, 1 commit to appdaemon") +- [Aaron Bach (@bachya)](https://github.com/bachya "6 total commits to the home-assistant organization, 4 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Aaron Linville (@linville)](https://github.com/linville "2 total commits to the home-assistant organization, 2 commits to appdaemon") - [Aaron Malone (@aaroncm)](https://github.com/aaroncm "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Aaron Morris (@Morrisai)](https://github.com/Morrisai "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Aaron Polley (@xarnze)](https://github.com/xarnze "2 total commits to the home-assistant organization, 1 commit to home-assistant, 1 commit to home-assistant.github.io") - [Aaron Wolen (@aaronwolen)](https://github.com/aaronwolen "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Abhishek Anand (@aa755)](https://github.com/aa755 "2 total commits to the home-assistant organization, 1 commit to home-assistant, 1 commit to home-assistant.github.io") -- [Abílio Costa (@abmantis)](https://github.com/abmantis "9 total commits to the home-assistant organization, 7 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Abílio Costa (@abmantis)](https://github.com/abmantis "14 total commits to the home-assistant organization, 9 commits to home-assistant, 4 commits to home-assistant.github.io, 1 commit to netdisco") - [Achilleas Pipinellis (@axilleas)](https://github.com/axilleas "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Adam (@SilvrrGIT)](https://github.com/SilvrrGIT "8 total commits to the home-assistant organization, 8 commits to home-assistant.github.io") - [Adam Allport (@AAllport)](https://github.com/AAllport "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Adam Baxter (@voltagex)](https://github.com/voltagex "2 total commits to the home-assistant organization, 1 commit to home-assistant-polymer, 1 commit to home-assistant") -- [Adam Dullage (@Dullage)](https://github.com/Dullage "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Adam Dullage (@Dullage)](https://github.com/Dullage "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Adam Garcia (@pancho-villa)](https://github.com/pancho-villa "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Adam Mills (@armills)](https://github.com/armills "187 total commits to the home-assistant organization, 122 commits to home-assistant, 32 commits to home-assistant.github.io, 29 commits to home-assistant-polymer, 3 commits to home-assistant-js, 1 commit to homebridge-homeassistant") +- [Adam Mills (@armills)](https://github.com/armills "195 total commits to the home-assistant organization, 127 commits to home-assistant, 34 commits to home-assistant.github.io, 30 commits to home-assistant-polymer, 3 commits to home-assistant-js, 1 commit to homebridge-homeassistant") - [ADeeds (@ADeeds)](https://github.com/ADeeds "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [AdithyanI (@AdithyanI)](https://github.com/AdithyanI "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Aditya Shevade (@adibis)](https://github.com/adibis "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") @@ -43,14 +43,15 @@ This page contains a list of people who have contributed in one way or another t - [Adrien Ball (@adrienball)](https://github.com/adrienball "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Adrien Brault (@adrienbrault)](https://github.com/adrienbrault "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Adrián López (@adrianlzt)](https://github.com/adrianlzt "8 total commits to the home-assistant organization, 6 commits to home-assistant.github.io, 2 commits to home-assistant") +- [AHS (@ahofelt)](https://github.com/ahofelt "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") - [Alan Bowman (@alanbowman)](https://github.com/alanbowman "5 total commits to the home-assistant organization, 4 commits to home-assistant, 1 commit to home-assistant.github.io") -- [Alan Fischer (@alanfischer)](https://github.com/alanfischer "11 total commits to the home-assistant organization, 9 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Alan Fischer (@alanfischer)](https://github.com/alanfischer "13 total commits to the home-assistant organization, 10 commits to home-assistant, 3 commits to home-assistant.github.io") - [Albert Lee (@trisk)](https://github.com/trisk "13 total commits to the home-assistant organization, 8 commits to home-assistant, 5 commits to home-assistant.github.io") - [Alberto Arias Maestro (@albertoarias)](https://github.com/albertoarias "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Aleksey Gureiev (@alg)](https://github.com/alg "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Alessandro Mogavero (@alexmogavero)](https://github.com/alexmogavero "4 total commits to the home-assistant organization, 3 commits to home-assistant, 1 commit to home-assistant.github.io") -- [Alex (@alexrockt)](https://github.com/alexrockt "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Alex (@asbach)](https://github.com/asbach "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") +- [Alex (@alexrockt)](https://github.com/alexrockt "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Alex Calderon (@AlexCalderon02)](https://github.com/AlexCalderon02 "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Alex Harvey (@infamy)](https://github.com/infamy "25 total commits to the home-assistant organization, 14 commits to home-assistant, 11 commits to home-assistant.github.io") - [Alex Mekkering (@AlexMekkering)](https://github.com/AlexMekkering "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") @@ -58,22 +59,17 @@ This page contains a list of people who have contributed in one way or another t - [Alex Tzonkov (@attzonko)](https://github.com/attzonko "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Alex Vernacchia (@vernak2539)](https://github.com/vernak2539 "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Alexander Bandukwala (@7h3kk1d)](https://github.com/7h3kk1d "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") -- [Alexander Groß (@agross)](https://github.com/agross "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Alexander Kratzer (@hexxter)](https://github.com/hexxter "8 total commits to the home-assistant organization, 8 commits to home-assistant") - [Alexander Rust (@binarybucks)](https://github.com/binarybucks "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Alexander Slansky (@aslansky)](https://github.com/aslansky "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") -- [Alexandre Perrin (@kAworu)](https://github.com/kAworu "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") +- [Alexandre Perrin (@kAworu)](https://github.com/kAworu "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Alfie Day (@Azelphur)](https://github.com/Azelphur "12 total commits to the home-assistant organization, 12 commits to home-assistant") -- [Aliaksandr (@minchik)](https://github.com/minchik "5 total commits to the home-assistant organization, 3 commits to home-assistant.github.io, 2 commits to home-assistant") +- [Aliaksandr (@minchik)](https://github.com/minchik "7 total commits to the home-assistant organization, 3 commits to home-assistant.github.io, 2 commits to appdaemon, 2 commits to home-assistant") - [Allan Glen (@allanglen)](https://github.com/allanglen "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Alok Saboo (@arsaboo)](https://github.com/arsaboo "72 total commits to the home-assistant organization, 52 commits to home-assistant.github.io, 18 commits to home-assistant, 1 commit to hassio-addons, 1 commit to pi-gen") +- [Alok Saboo (@arsaboo)](https://github.com/arsaboo "76 total commits to the home-assistant organization, 53 commits to home-assistant.github.io, 21 commits to home-assistant, 1 commit to hassio-addons, 1 commit to pi-gen") - [amigian74 (@amigian74)](https://github.com/amigian74 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [amorsillo (@AndrewMorsillo)](https://github.com/AndrewMorsillo "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") -- [Anastasia A. (@Sacret)](https://github.com/Sacret "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") -- [Anders Gjendem (@agjendem)](https://github.com/agjendem "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") -- [Anders Melchiorsen (@amelchio)](https://github.com/amelchio "95 total commits to the home-assistant organization, 68 commits to home-assistant, 25 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") +- [Anders Melchiorsen (@amelchio)](https://github.com/amelchio "97 total commits to the home-assistant organization, 70 commits to home-assistant, 25 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") - [Andrea Falcone (@asfalcone)](https://github.com/asfalcone "5 total commits to the home-assistant organization, 5 commits to issue-bot") -- [Andreas Ahrens (@DevvAndreas)](https://github.com/DevvAndreas "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Andreas Cambitsis (@acambitsis)](https://github.com/acambitsis "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Andreas Jacobsen (@andreasjacobsen93)](https://github.com/andreasjacobsen93 "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Andreas Rammhold (@andir)](https://github.com/andir "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") @@ -81,18 +77,17 @@ This page contains a list of people who have contributed in one way or another t - [Andreea-Daniela Ene (@AndreeaEne)](https://github.com/AndreeaEne "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Andrew (@aneisch)](https://github.com/aneisch "5 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 1 commit to home-assistant") - [Andrew (@aoakeson)](https://github.com/aoakeson "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") -- [Andrew Cockburn (@acockburn)](https://github.com/acockburn "454 total commits to the home-assistant organization, 331 commits to appdaemon, 88 commits to hadashboard, 25 commits to scenegen, 10 commits to home-assistant.github.io") -- [Andrew LeCody (@aceat64)](https://github.com/aceat64 "2 total commits to the home-assistant organization, 1 commit to home-assistant, 1 commit to home-assistant.github.io") -- [Andrew Patton (@acusti)](https://github.com/acusti "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") +- [Andrew Cockburn (@acockburn)](https://github.com/acockburn "564 total commits to the home-assistant organization, 439 commits to appdaemon, 88 commits to hadashboard, 25 commits to scenegen, 12 commits to home-assistant.github.io") +- [Andrew LeCody (@aceat64)](https://github.com/aceat64 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Andrew Smith (@andrewmichaelsmith)](https://github.com/andrewmichaelsmith "2 total commits to the home-assistant organization, 2 commits to pi-gen") -- [Andrew Starr-Bochicchio (@andrewsomething)](https://github.com/andrewsomething "1 total commits to the home-assistant organization, 1 commit to home-assistant.github.io") - [Andrew Stock (@watchforstock)](https://github.com/watchforstock "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Andrew Thigpen (@andythigpen)](https://github.com/andythigpen "33 total commits to the home-assistant organization, 32 commits to home-assistant, 1 commit to home-assistant-js") - [Andrew Williams (@nikdoof)](https://github.com/nikdoof "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [andrew-curtis (@andrew-curtis)](https://github.com/andrew-curtis "7 total commits to the home-assistant organization, 7 commits to home-assistant.github.io") -- [Andrey (@andrey-git)](https://github.com/andrey-git "148 total commits to the home-assistant organization, 78 commits to home-assistant, 45 commits to home-assistant-polymer, 25 commits to home-assistant.github.io") +- [Andrey (@andrey-git)](https://github.com/andrey-git "155 total commits to the home-assistant organization, 81 commits to home-assistant, 49 commits to home-assistant-polymer, 25 commits to home-assistant.github.io") +- [Andrey Kupreychik (@foxel)](https://github.com/foxel "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Andrzej (@andriej)](https://github.com/andriej "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") -- [Andy Castille (@Klikini)](https://github.com/Klikini "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Andy Castille (@Klikini)](https://github.com/Klikini "6 total commits to the home-assistant organization, 4 commits to home-assistant, 2 commits to home-assistant.github.io") - [Andy Loughran (@andylockran)](https://github.com/andylockran "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [andyat (@andyat)](https://github.com/andyat "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Anthony Hughes (@tony2nite)](https://github.com/tony2nite "2 total commits to the home-assistant organization, 1 commit to netdisco, 1 commit to home-assistant") @@ -110,11 +105,13 @@ This page contains a list of people who have contributed in one way or another t - [ArrayLabs (@arraylabs)](https://github.com/arraylabs "7 total commits to the home-assistant organization, 5 commits to home-assistant, 2 commits to home-assistant.github.io") - [Arthur Leonard Andersen (@leoc)](https://github.com/leoc "9 total commits to the home-assistant organization, 9 commits to home-assistant") - [Arttu mahlakaarto (@amahlaka)](https://github.com/amahlaka "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") +- [ashev (@ashev)](https://github.com/ashev "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Assaf Inbal (@shmuelzon)](https://github.com/shmuelzon "12 total commits to the home-assistant organization, 9 commits to homebridge-homeassistant, 3 commits to home-assistant") - [Audun Ytterdal (@auduny)](https://github.com/auduny "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [aufano (@aufano)](https://github.com/aufano "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Austin (@trainman419)](https://github.com/trainman419 "8 total commits to the home-assistant organization, 8 commits to home-assistant") - [Avraham David Gelbfish (@adgelbfish)](https://github.com/adgelbfish "2 total commits to the home-assistant organization, 1 commit to hadashboard, 1 commit to pi-gen") +- [azeroth12 (@azeroth12)](https://github.com/azeroth12 "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Barry Williams (@bazwilliams)](https://github.com/bazwilliams "10 total commits to the home-assistant organization, 6 commits to home-assistant, 2 commits to netdisco, 2 commits to home-assistant.github.io") - [Bart274 (@Bart274)](https://github.com/Bart274 "26 total commits to the home-assistant organization, 17 commits to home-assistant, 8 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [Bas Schipper (@basschipper)](https://github.com/basschipper "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") @@ -131,15 +128,17 @@ This page contains a list of people who have contributed in one way or another t - [bergemalm (@bergemalm)](https://github.com/bergemalm "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [bestlibre (@bestlibre)](https://github.com/bestlibre "13 total commits to the home-assistant organization, 7 commits to home-assistant, 4 commits to home-assistant.github.io, 1 commit to hassio, 1 commit to hassio-build") - [Bill Nelson (@xhostplus)](https://github.com/xhostplus "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [BioSehnsucht (@BioSehnsucht)](https://github.com/BioSehnsucht "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Bjarni Ivarsson (@bjarniivarsson)](https://github.com/bjarniivarsson "8 total commits to the home-assistant organization, 5 commits to home-assistant, 3 commits to home-assistant-polymer") - [bl8rnr (@bl8rnr)](https://github.com/bl8rnr "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Blanyal D'Souza (@blanyal)](https://github.com/blanyal "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [boojew (@boojew)](https://github.com/boojew "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") +- [boojew (@boojew)](https://github.com/boojew "7 total commits to the home-assistant organization, 5 commits to home-assistant.github.io, 2 commits to home-assistant") - [Boris K (@bokub)](https://github.com/bokub "11 total commits to the home-assistant organization, 6 commits to home-assistant.github.io, 5 commits to home-assistant") -- [Boyi C (@fanthos)](https://github.com/fanthos "4 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant-polymer, 1 commit to home-assistant") +- [Boyi C (@fanthos)](https://github.com/fanthos "7 total commits to the home-assistant organization, 3 commits to home-assistant-polymer, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Brad Buran (@bburan)](https://github.com/bburan "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Brad Johnson (@bradsk88)](https://github.com/bradsk88 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Brahma Fear (@brahmafear)](https://github.com/brahmafear "8 total commits to the home-assistant organization, 8 commits to home-assistant.github.io") +- [Bram Kragten (@bramkragten)](https://github.com/bramkragten "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") - [Brandon Mathis (@imathis)](https://github.com/imathis "484 total commits to the home-assistant organization, 484 commits to home-assistant.github.io") - [Brandon Weeks (@brandonweeks)](https://github.com/brandonweeks "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [brburns (@brburns)](https://github.com/brburns "2 total commits to the home-assistant organization, 2 commits to netdisco") @@ -160,22 +159,22 @@ This page contains a list of people who have contributed in one way or another t - [Caius Cioran (@caiuspb)](https://github.com/caiuspb "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Caleb (@finish06)](https://github.com/finish06 "7 total commits to the home-assistant organization, 7 commits to home-assistant") - [Cameron Bulock (@cbulock)](https://github.com/cbulock "4 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to netdisco, 1 commit to home-assistant") -- [Carlo Costanzo (@CCOSTAN)](https://github.com/CCOSTAN "87 total commits to the home-assistant organization, 79 commits to home-assistant.github.io, 5 commits to home-assistant, 1 commit to hassbian-scripts, 1 commit to fabric-home-assistant, 1 commit to homebridge-homeassistant") +- [Carlo Costanzo (@CCOSTAN)](https://github.com/CCOSTAN "87 total commits to the home-assistant organization, 79 commits to home-assistant.github.io, 5 commits to home-assistant, 1 commit to fabric-home-assistant, 1 commit to homebridge-homeassistant, 1 commit to hassbian-scripts") - [carlosmgr (@carlosmgr)](https://github.com/carlosmgr "6 total commits to the home-assistant organization, 6 commits to home-assistant") - [Carter (@BluGeni)](https://github.com/BluGeni "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") -- [cdce8p (@cdce8p)](https://github.com/cdce8p "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") +- [cdce8p (@cdce8p)](https://github.com/cdce8p "5 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [Cecron (@Cecron)](https://github.com/Cecron "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Cenk Gündoğan (@cgundogan)](https://github.com/cgundogan "1 total commits to the home-assistant organization, 1 commit to libcoap") - [cgtobi (@cgtobi)](https://github.com/cgtobi "6 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 2 commits to home-assistant") - [chanders (@chanders)](https://github.com/chanders "2 total commits to the home-assistant organization, 2 commits to hadashboard") -- [Charles Blonde (@CharlesBlonde)](https://github.com/CharlesBlonde "16 total commits to the home-assistant organization, 10 commits to home-assistant, 6 commits to home-assistant.github.io") +- [Charles Blonde (@CharlesBlonde)](https://github.com/CharlesBlonde "19 total commits to the home-assistant organization, 12 commits to home-assistant, 7 commits to home-assistant.github.io") - [Charles Spirakis (@srcLurker)](https://github.com/srcLurker "8 total commits to the home-assistant organization, 5 commits to home-assistant, 3 commits to home-assistant.github.io") - [Chayoung You (@yous)](https://github.com/yous "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Check your git settings! (@invalid-email-address)](https://github.com/invalid-email-address "1 total commits to the home-assistant organization, 1 commit to libcoap") - [Chema García (@sch3m4)](https://github.com/sch3m4 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Chia-liang Kao (@clkao)](https://github.com/clkao "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [Chris (@firstof9)](https://github.com/firstof9 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Chris (@chennin)](https://github.com/chennin "15 total commits to the home-assistant organization, 11 commits to home-assistant.github.io, 4 commits to home-assistant") +- [Chris (@firstof9)](https://github.com/firstof9 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Chris Aloi (@ctaloi)](https://github.com/ctaloi "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Chris Baumgartner (@mchrisb03)](https://github.com/mchrisb03 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Chris Huegle (@chuegle)](https://github.com/chuegle "1 total commits to the home-assistant organization, 1 commit to netdisco") @@ -185,6 +184,7 @@ This page contains a list of people who have contributed in one way or another t - [Chris Thorn (@chris-thorn)](https://github.com/chris-thorn "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") - [Christiaan Blom (@Deinara)](https://github.com/Deinara "7 total commits to the home-assistant organization, 7 commits to home-assistant") - [Christian Brædstrup (@LinuxChristian)](https://github.com/LinuxChristian "7 total commits to the home-assistant organization, 7 commits to home-assistant") +- [Christian Lasarczyk (@ChrisLasar)](https://github.com/ChrisLasar "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Christian Studer (@cstuder)](https://github.com/cstuder "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [ChristianKuehnel (@ChristianKuehnel)](https://github.com/ChristianKuehnel "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Christoph Wagner (@Christoph-Wagner)](https://github.com/Christoph-Wagner "5 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 1 commit to home-assistant") @@ -205,24 +205,26 @@ This page contains a list of people who have contributed in one way or another t - [Corey Pauley (@devspacenine)](https://github.com/devspacenine "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [corneyl (@corneyl)](https://github.com/corneyl "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Craig J. Ward (@wardcraigj)](https://github.com/wardcraigj "14 total commits to the home-assistant organization, 9 commits to home-assistant, 5 commits to home-assistant.github.io") -- [cribbstechnologies (@cribbstechnologies)](https://github.com/cribbstechnologies "40 total commits to the home-assistant organization, 25 commits to home-assistant, 13 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") +- [cribbstechnologies (@cribbstechnologies)](https://github.com/cribbstechnologies "41 total commits to the home-assistant organization, 26 commits to home-assistant, 13 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") - [CTLS (@CTLS)](https://github.com/CTLS "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Dale Higgs (@dale3h)](https://github.com/dale3h "26 total commits to the home-assistant organization, 15 commits to home-assistant.github.io, 9 commits to home-assistant, 1 commit to hassbot, 1 commit to homebridge-homeassistant") -- [Dan (@danieljkemp)](https://github.com/danieljkemp "22 total commits to the home-assistant organization, 15 commits to home-assistant, 7 commits to home-assistant.github.io") -- [Dan Cinnamon (@Cinntax)](https://github.com/Cinntax "13 total commits to the home-assistant organization, 11 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Dale Higgs (@dale3h)](https://github.com/dale3h "26 total commits to the home-assistant organization, 15 commits to home-assistant.github.io, 9 commits to home-assistant, 1 commit to homebridge-homeassistant, 1 commit to hassbot") +- [Dan (@danieljkemp)](https://github.com/danieljkemp "23 total commits to the home-assistant organization, 16 commits to home-assistant, 7 commits to home-assistant.github.io") +- [Dan Cinnamon (@Cinntax)](https://github.com/Cinntax "14 total commits to the home-assistant organization, 12 commits to home-assistant, 2 commits to home-assistant.github.io") - [Dan Ford (@dpford)](https://github.com/dpford "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Dan Ports (@drkp)](https://github.com/drkp "3 total commits to the home-assistant organization, 3 commits to home-assistant") +- [Dan Sarginson (@dansarginson)](https://github.com/dansarginson "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Dan Smith (@kk7ds)](https://github.com/kk7ds "84 total commits to the home-assistant organization, 68 commits to home-assistant, 14 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") - [Dan Sullivan (@dansullivan86)](https://github.com/dansullivan86 "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") - [Dan Van Brunt (@iDVB)](https://github.com/iDVB "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Dani (@danichispa)](https://github.com/danichispa "9 total commits to the home-assistant organization, 9 commits to home-assistant.github.io") - [Daniel Escoz (@Darkhogg)](https://github.com/Darkhogg "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") -- [Daniel Høyer Iversen (@Danielhiversen)](https://github.com/Danielhiversen "304 total commits to the home-assistant organization, 210 commits to home-assistant, 92 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") +- [Daniel Høyer Iversen (@Danielhiversen)](https://github.com/Danielhiversen "305 total commits to the home-assistant organization, 211 commits to home-assistant, 92 commits to home-assistant.github.io, 2 commits to home-assistant-polymer") - [Daniel Matuschek (@usul27)](https://github.com/usul27 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Daniel Perna (@danielperna84)](https://github.com/danielperna84 "57 total commits to the home-assistant organization, 32 commits to home-assistant.github.io, 25 commits to home-assistant") - [Daniel Peukert (@dpeukert)](https://github.com/dpeukert "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [Daniel Schaal (@schaal)](https://github.com/schaal "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Daniel Stone (@daniel-stoneuk)](https://github.com/daniel-stoneuk "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Daniel Trnka (@trnila)](https://github.com/trnila "2 total commits to the home-assistant organization, 2 commits to appdaemon") - [Daniel Watkins (@OddBloke)](https://github.com/OddBloke "4 total commits to the home-assistant organization, 4 commits to home-assistant-ansible") - [Danijel Stojnic (@danijelst)](https://github.com/danijelst "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Daniyar Yeralin (@yeralin)](https://github.com/yeralin "2 total commits to the home-assistant organization, 1 commit to homebridge-homeassistant, 1 commit to home-assistant") @@ -231,10 +233,10 @@ This page contains a list of people who have contributed in one way or another t - [Dave Banks (@djbanks)](https://github.com/djbanks "3 total commits to the home-assistant organization, 2 commits to appdaemon, 1 commit to home-assistant") - [Dave J (@kxtcd950)](https://github.com/kxtcd950 "3 total commits to the home-assistant organization, 3 commits to hassbian-scripts") - [DaveSergeant (@dethpickle)](https://github.com/dethpickle "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [David (@fanaticDavid)](https://github.com/fanaticDavid "9 total commits to the home-assistant organization, 9 commits to home-assistant.github.io") +- [David (@fanaticDavid)](https://github.com/fanaticDavid "10 total commits to the home-assistant organization, 9 commits to home-assistant.github.io, 1 commit to home-assistant") - [David Baumann (@daBONDi)](https://github.com/daBONDi "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [David De Sloovere (@DavidDeSloovere)](https://github.com/DavidDeSloovere "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") -- [David McNett (@nugget)](https://github.com/nugget "9 total commits to the home-assistant organization, 5 commits to home-assistant.github.io, 4 commits to home-assistant") +- [David De Sloovere (@DavidDeSloovere)](https://github.com/DavidDeSloovere "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") +- [David McNett (@nugget)](https://github.com/nugget "10 total commits to the home-assistant organization, 5 commits to home-assistant, 5 commits to home-assistant.github.io") - [David Ohayon (@ohayon)](https://github.com/ohayon "3 total commits to the home-assistant organization, 3 commits to issue-bot") - [David Straub (@DavidMStraub)](https://github.com/DavidMStraub "9 total commits to the home-assistant organization, 5 commits to home-assistant, 4 commits to home-assistant.github.io") - [David Wang (@dcwangmit01)](https://github.com/dcwangmit01 "2 total commits to the home-assistant organization, 2 commits to pi-gen") @@ -263,20 +265,22 @@ This page contains a list of people who have contributed in one way or another t - [Edwin Smulders (@Dutchy-)](https://github.com/Dutchy- "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Ellis Percival (@flyte)](https://github.com/flyte "31 total commits to the home-assistant organization, 25 commits to home-assistant, 6 commits to home-assistant.github.io") - [Emil Horpen Hetty (@emilhetty)](https://github.com/emilhetty "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") +- [engrbm87 (@engrbm87)](https://github.com/engrbm87 "2 total commits to the home-assistant organization, 2 commits to appdaemon") - [Eric Clymer (@ericwclymer)](https://github.com/ericwclymer "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Eric Hagan (@ehagan)](https://github.com/ehagan "2 total commits to the home-assistant organization, 1 commit to home-assistant-polymer, 1 commit to home-assistant") - [Eric Jansen (@ej81)](https://github.com/ej81 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Eric Rolf (@xrolfex)](https://github.com/xrolfex "13 total commits to the home-assistant organization, 13 commits to home-assistant") - [Eric Thompson (@er0ck)](https://github.com/er0ck "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Erik Eriksson (@molobrakos)](https://github.com/molobrakos "94 total commits to the home-assistant organization, 86 commits to home-assistant, 5 commits to home-assistant.github.io, 3 commits to netdisco") +- [Erik Eriksson (@molobrakos)](https://github.com/molobrakos "95 total commits to the home-assistant organization, 87 commits to home-assistant, 5 commits to home-assistant.github.io, 3 commits to netdisco") - [Erik-jan Riemers (@riemers)](https://github.com/riemers "11 total commits to the home-assistant organization, 11 commits to home-assistant.github.io") - [ettisan (@ettisan)](https://github.com/ettisan "8 total commits to the home-assistant organization, 8 commits to home-assistant") -- [Eugenio Panadero (@azogue)](https://github.com/azogue "54 total commits to the home-assistant organization, 33 commits to home-assistant, 19 commits to home-assistant.github.io, 2 commits to homebridge-homeassistant") -- [Fabian Affolter (@fabaff)](https://github.com/fabaff "3941 total commits to the home-assistant organization, 2479 commits to home-assistant.github.io, 1289 commits to home-assistant, 59 commits to home-assistant-ansible, 23 commits to home-assistant-dev-helper, 22 commits to home-assistant-assets, 22 commits to home-assistant-notebooks, 21 commits to home-assistant-cli, 10 commits to home-assistant-polymer, 8 commits to netdisco, 6 commits to hassio-build, 1 commit to home-assistant-js-websocket, 1 commit to hassio") +- [Eugenio Panadero (@azogue)](https://github.com/azogue "67 total commits to the home-assistant organization, 38 commits to home-assistant, 23 commits to home-assistant.github.io, 3 commits to homebridge-homeassistant, 3 commits to home-assistant-polymer") +- [Fabian Affolter (@fabaff)](https://github.com/fabaff "4016 total commits to the home-assistant organization, 2510 commits to home-assistant.github.io, 1322 commits to home-assistant, 59 commits to home-assistant-ansible, 23 commits to home-assistant-dev-helper, 22 commits to home-assistant-notebooks, 22 commits to home-assistant-assets, 21 commits to home-assistant-cli, 11 commits to hassio-build, 10 commits to home-assistant-polymer, 8 commits to netdisco, 5 commits to hassio-addons, 2 commits to hassio, 1 commit to home-assistant-js-websocket") - [Fabian Heredia Montiel (@fabianhjr)](https://github.com/fabianhjr "4 total commits to the home-assistant organization, 4 commits to home-assistant") - [Fabrizio Furnari (@fabfurnari)](https://github.com/fabfurnari "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [fakezeta (@fakezeta)](https://github.com/fakezeta "7 total commits to the home-assistant organization, 7 commits to home-assistant") - [Fares Rihani (@anchepiece)](https://github.com/anchepiece "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [fedor1210 (@fedor1210)](https://github.com/fedor1210 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Felix (@xifle)](https://github.com/xifle "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Felix Krause (@KrauseFx)](https://github.com/KrauseFx "48 total commits to the home-assistant organization, 48 commits to issue-bot") - [felix schwenzel (@diplix)](https://github.com/diplix "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -287,6 +291,7 @@ This page contains a list of people who have contributed in one way or another t - [Florian Holzapfel (@florianholzapfel)](https://github.com/florianholzapfel "11 total commits to the home-assistant organization, 4 commits to home-assistant, 4 commits to home-assistant.github.io, 3 commits to netdisco") - [florincosta (@florincosta)](https://github.com/florincosta "6 total commits to the home-assistant organization, 3 commits to home-assistant, 3 commits to home-assistant.github.io") - [Fonta (@f0nt4)](https://github.com/f0nt4 "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") +- [Franck Nijhof (@frenck)](https://github.com/frenck "1 total commits to the home-assistant organization, 1 commit to hassio") - [Frank (@syphernl)](https://github.com/syphernl "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") - [Frantz (@rofrantz)](https://github.com/rofrantz "3 total commits to the home-assistant organization, 2 commits to netdisco, 1 commit to home-assistant") - [François Martin (@martinfrancois)](https://github.com/martinfrancois "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") @@ -296,12 +301,13 @@ This page contains a list of people who have contributed in one way or another t - [freol35241 (@freol35241)](https://github.com/freol35241 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [froz (@froz)](https://github.com/froz "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [fuga2136 (@fuga2136)](https://github.com/fuga2136 "13 total commits to the home-assistant organization, 13 commits to home-assistant.github.io") +- [Gabor SZOLLOSI (@szogi)](https://github.com/szogi "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [GadgetReactor (@GadgetReactor)](https://github.com/GadgetReactor "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [garrettbeachy (@garrettbeachy)](https://github.com/garrettbeachy "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Gavin Mogan (@halkeye)](https://github.com/halkeye "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Geoff Norton (@kangaroo)](https://github.com/kangaroo "14 total commits to the home-assistant organization, 14 commits to home-assistant") - [George.M (@nodinosaur)](https://github.com/nodinosaur "8 total commits to the home-assistant organization, 6 commits to home-assistant.github.io, 2 commits to home-assistant") -- [Georgi Kirichkov (@kirichkov)](https://github.com/kirichkov "7 total commits to the home-assistant organization, 4 commits to home-assistant, 3 commits to home-assistant.github.io") +- [Georgi Kirichkov (@kirichkov)](https://github.com/kirichkov "8 total commits to the home-assistant organization, 4 commits to home-assistant, 4 commits to home-assistant.github.io") - [Georgi Yanev (@jumpalottahigh)](https://github.com/jumpalottahigh "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Georgii Staroselskii (@staroselskii)](https://github.com/staroselskii "1 total commits to the home-assistant organization, 1 commit to pi-gen") - [Gergely Imreh (@imrehg)](https://github.com/imrehg "16 total commits to the home-assistant organization, 11 commits to home-assistant, 5 commits to home-assistant.github.io") @@ -320,14 +326,16 @@ This page contains a list of people who have contributed in one way or another t - [GreenTurtwig (@GreenTurtwig)](https://github.com/GreenTurtwig "78 total commits to the home-assistant organization, 71 commits to home-assistant.github.io, 7 commits to home-assistant") - [Greg (@theCMack)](https://github.com/theCMack "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Greg Dowling (@pavoni)](https://github.com/pavoni "245 total commits to the home-assistant organization, 218 commits to home-assistant, 25 commits to home-assistant.github.io, 2 commits to netdisco") -- [Greg Laabs (@OverloadUT)](https://github.com/OverloadUT "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Greg Laabs (@OverloadUT)](https://github.com/OverloadUT "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Greg MacLellan (@gregmac)](https://github.com/gregmac "1 total commits to the home-assistant organization, 1 commit to pi-gen") - [Greg Stevenson (@gstevenson)](https://github.com/gstevenson "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") - [Gregor Gruener (@ggruner)](https://github.com/ggruner "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [groth-its (@groth-its)](https://github.com/groth-its "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [gsabbe (@gsabbe)](https://github.com/gsabbe "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Gunnar Helgason (@gunnarhelgason)](https://github.com/gunnarhelgason "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Gustav Ahlberg (@Gyran)](https://github.com/Gyran "20 total commits to the home-assistant organization, 20 commits to home-assistant") - [gwendalg (@gwendalg)](https://github.com/gwendalg "3 total commits to the home-assistant organization, 3 commits to home-assistant") +- [Haim Gelfenbeyn (@hageltech)](https://github.com/hageltech "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Hajime Morrita (@omo)](https://github.com/omo "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Hamid (@hamid-elaosta)](https://github.com/hamid-elaosta "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Hao Hu (@howiehu)](https://github.com/howiehu "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -340,7 +348,7 @@ This page contains a list of people who have contributed in one way or another t - [HBDK (@HBDK)](https://github.com/HBDK "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Heath Paddock (@heathbar)](https://github.com/heathbar "6 total commits to the home-assistant organization, 6 commits to home-assistant") - [Heiko Rothe (@mKeRix)](https://github.com/mKeRix "20 total commits to the home-assistant organization, 15 commits to home-assistant, 5 commits to home-assistant.github.io") -- [Hellowlol (@Hellowlol)](https://github.com/Hellowlol "4 total commits to the home-assistant organization, 3 commits to netdisco, 1 commit to appdaemon") +- [Hellowlol (@Hellowlol)](https://github.com/Hellowlol "5 total commits to the home-assistant organization, 3 commits to netdisco, 1 commit to appdaemon, 1 commit to home-assistant") - [Helmut Januschka (@hjanuschka)](https://github.com/hjanuschka "3 total commits to the home-assistant organization, 3 commits to issue-bot") - [Henning Dickten (@hensing)](https://github.com/hensing "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Henrik Nicolaisen (@hmn)](https://github.com/hmn "6 total commits to the home-assistant organization, 6 commits to home-assistant") @@ -364,6 +372,7 @@ This page contains a list of people who have contributed in one way or another t - [Issac Kelly (@issackelly)](https://github.com/issackelly "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [J-CMartin (@J-CMartin)](https://github.com/J-CMartin "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [J. B. Rainsberger (@jbrains)](https://github.com/jbrains "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Jack (@iamjackg)](https://github.com/iamjackg "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [jack (@jackmakesthings)](https://github.com/jackmakesthings "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Jack Chapple (@jchapple)](https://github.com/jchapple "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Jack Minardi (@jminardi)](https://github.com/jminardi "8 total commits to the home-assistant organization, 8 commits to home-assistant") @@ -381,7 +390,7 @@ This page contains a list of people who have contributed in one way or another t - [Jan Pobořil (@iBobik)](https://github.com/iBobik "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Jan Wh (@janwh)](https://github.com/janwh "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Jan-Preben Mossin (@jpmossin)](https://github.com/jpmossin "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Janne Grunau (@jannau)](https://github.com/jannau "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Janne Grunau (@jannau)](https://github.com/jannau "4 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 2 commits to home-assistant") - [Jared Beckham (@jtbeckha)](https://github.com/jtbeckha "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Jared J. (@jjensn)](https://github.com/jjensn "2 total commits to the home-assistant organization, 1 commit to netdisco, 1 commit to home-assistant") - [Jason Carter (@JasonCarter80)](https://github.com/JasonCarter80 "7 total commits to the home-assistant organization, 4 commits to home-assistant, 3 commits to home-assistant.github.io") @@ -398,6 +407,7 @@ This page contains a list of people who have contributed in one way or another t - [Jeremiah Wuenschel (@jer)](https://github.com/jer "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Jeremy (@Wutname1)](https://github.com/Wutname1 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Jeremy Volkman (@jvolkman)](https://github.com/jvolkman "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Jeroen ter Heerdt (@jeroenterheerdt)](https://github.com/jeroenterheerdt "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Jerold Albertson (@jeroldalbertson-wf)](https://github.com/jeroldalbertson-wf "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") - [Jesse Hills (@jesserockz)](https://github.com/jesserockz "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") - [Jesse Newland (@jnewland)](https://github.com/jnewland "14 total commits to the home-assistant organization, 11 commits to home-assistant, 3 commits to hubot-home-assistant") @@ -408,76 +418,68 @@ This page contains a list of people who have contributed in one way or another t - [jgriff2 (@jgriff2)](https://github.com/jgriff2 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Jim Rollenhagen (@jimrollenhagen)](https://github.com/jimrollenhagen "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [jnimmo (@jnimmo)](https://github.com/jnimmo "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Joakim af Sandeberg (@jotunacorn)](https://github.com/jotunacorn "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Joakim Nohlgård (@gebart)](https://github.com/gebart "2 total commits to the home-assistant organization, 2 commits to libcoap") - [Job Vermeulen (@jmvermeulen)](https://github.com/jmvermeulen "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Joe Lee (@xnoodle)](https://github.com/xnoodle "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Joe Rocklin (@joerocklin)](https://github.com/joerocklin "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [joe248 (@joe248)](https://github.com/joe248 "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [Joeboyc2 (@Joeboyc2)](https://github.com/Joeboyc2 "16 total commits to the home-assistant organization, 15 commits to home-assistant.github.io, 1 commit to home-assistant") -- [Joel Asher Friedman (@joelash)](https://github.com/joelash "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Joeboyc2 (@Joeboyc2)](https://github.com/Joeboyc2 "15 total commits to the home-assistant organization, 15 commits to home-assistant.github.io") - [joemcmonagle (@joemcmonagle)](https://github.com/joemcmonagle "8 total commits to the home-assistant organization, 8 commits to home-assistant.github.io") - [Johan Bloemberg (@aequitas)](https://github.com/aequitas "41 total commits to the home-assistant organization, 33 commits to home-assistant, 7 commits to home-assistant.github.io, 1 commit to netdisco") -- [Johan Carlquist (@theseal)](https://github.com/theseal "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Johan Haals (@jhaals)](https://github.com/jhaals "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Johan Klintberg (@moogblob)](https://github.com/moogblob "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Johann Kellerman (@kellerza)](https://github.com/kellerza "144 total commits to the home-assistant organization, 114 commits to home-assistant, 30 commits to home-assistant.github.io") - [Johannes K. (@roadrash2108)](https://github.com/roadrash2108 "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") -- [John Arild Berentsen (@turbokongen)](https://github.com/turbokongen "180 total commits to the home-assistant organization, 141 commits to home-assistant, 31 commits to home-assistant.github.io, 8 commits to home-assistant-polymer") +- [John Arild Berentsen (@turbokongen)](https://github.com/turbokongen "181 total commits to the home-assistant organization, 142 commits to home-assistant, 31 commits to home-assistant.github.io, 8 commits to home-assistant-polymer") - [John Coggeshall (@coogle)](https://github.com/coogle "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [John Lindley (@jwl17330536)](https://github.com/jwl17330536 "18 total commits to the home-assistant organization, 11 commits to hadashboard, 6 commits to home-assistant.github.io, 1 commit to home-assistant") - [John McLaughlin (@loghound)](https://github.com/loghound "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [John Mihalic (@mezz64)](https://github.com/mezz64 "39 total commits to the home-assistant organization, 27 commits to home-assistant, 11 commits to home-assistant.github.io, 1 commit to hadashboard") -- [John Williams (@Jaidan)](https://github.com/Jaidan "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [John Mihalic (@mezz64)](https://github.com/mezz64 "42 total commits to the home-assistant organization, 29 commits to home-assistant, 12 commits to home-assistant.github.io, 1 commit to hadashboard") - [johnappletree (@johnappletree)](https://github.com/johnappletree "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Jon (@JonMurphy)](https://github.com/JonMurphy "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Jon Caruana (@joncar)](https://github.com/joncar "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") -- [Jon Evans (@craftyjon)](https://github.com/craftyjon "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Jon Maddox (@maddox)](https://github.com/maddox "102 total commits to the home-assistant organization, 78 commits to home-assistant, 16 commits to homebridge-homeassistant, 8 commits to home-assistant.github.io") - [Jonatan Castro (@jcastro)](https://github.com/jcastro "7 total commits to the home-assistant organization, 7 commits to home-assistant.github.io") - [Jonathan Baginski (@patchedsoul)](https://github.com/patchedsoul "115 total commits to the home-assistant organization, 87 commits to fabric-home-assistant, 28 commits to home-assistant.github.io") - [joopert (@joopert)](https://github.com/joopert "6 total commits to the home-assistant organization, 6 commits to home-assistant") -- [Jordan Keith (@zeddD1abl0)](https://github.com/zeddD1abl0 "1 total commits to the home-assistant organization, 1 commit to home-assistant") - [Jose Juan Montes (@jjmontesl)](https://github.com/jjmontesl "9 total commits to the home-assistant organization, 6 commits to home-assistant, 3 commits to home-assistant.github.io") - [Joseph Carter (@iKarith)](https://github.com/iKarith "9 total commits to the home-assistant organization, 9 commits to pi-gen") - [Joseph Piron (@eagleamon)](https://github.com/eagleamon "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Josh (@karlw00t)](https://github.com/karlw00t "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Josh Anderson (@andersonshatch)](https://github.com/andersonshatch "6 total commits to the home-assistant organization, 3 commits to homebridge-homeassistant, 3 commits to home-assistant") - [Josh Nichols (@technicalpickles)](https://github.com/technicalpickles "24 total commits to the home-assistant organization, 15 commits to home-assistant, 9 commits to home-assistant.github.io") -- [Josh Wright (@JshWright)](https://github.com/JshWright "29 total commits to the home-assistant organization, 21 commits to home-assistant, 8 commits to home-assistant.github.io") +- [Josh Wright (@JshWright)](https://github.com/JshWright "28 total commits to the home-assistant organization, 20 commits to home-assistant, 8 commits to home-assistant.github.io") - [jpcomtois (@jpcomtois)](https://github.com/jpcomtois "1 total commits to the home-assistant organization, 1 commit to libcoap") -- [JudgeDredd (@kentcalero)](https://github.com/kentcalero "10 total commits to the home-assistant organization, 9 commits to home-assistant.github.io, 1 commit to home-assistant") +- [JudgeDredd (@kentcalero)](https://github.com/kentcalero "9 total commits to the home-assistant organization, 9 commits to home-assistant.github.io") - [Juggels (@Juggels)](https://github.com/Juggels "8 total commits to the home-assistant organization, 5 commits to home-assistant, 3 commits to home-assistant.github.io") -- [Julian Kahnert (@JulianKahnert)](https://github.com/JulianKahnert "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Julien Danjou (@jd)](https://github.com/jd "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Julian Kahnert (@JulianKahnert)](https://github.com/JulianKahnert "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Julius Mittenzwei (@Julius2342)](https://github.com/Julius2342 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [jumpkick (@jumpkick)](https://github.com/jumpkick "15 total commits to the home-assistant organization, 12 commits to home-assistant, 3 commits to home-assistant.github.io") - [Justin Dray (@justin8)](https://github.com/justin8 "9 total commits to the home-assistant organization, 7 commits to home-assistant.github.io, 2 commits to home-assistant") - [Justin Hayes (@GussyH)](https://github.com/GussyH "7 total commits to the home-assistant organization, 7 commits to hadashboard") -- [Justin Moy (@justincmoy)](https://github.com/justincmoy "1 total commits to the home-assistant organization, 1 commit to home-assistant") -- [Justin Weberg (@justweb1)](https://github.com/justweb1 "28 total commits to the home-assistant organization, 13 commits to home-assistant-polymer, 7 commits to hassbot, 4 commits to home-assistant, 2 commits to home-assistant.github.io, 1 commit to hassio, 1 commit to home-assistant-js") -- [Justyn Shull (@justyns)](https://github.com/justyns "6 total commits to the home-assistant organization, 6 commits to home-assistant") -- [jwillaz (@jwillaz)](https://github.com/jwillaz "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Kai (@luxus)](https://github.com/luxus "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to home-assistant") +- [Justin Weberg (@justweb1)](https://github.com/justweb1 "28 total commits to the home-assistant organization, 13 commits to home-assistant-polymer, 7 commits to hassbot, 4 commits to home-assistant, 2 commits to home-assistant.github.io, 1 commit to home-assistant-js, 1 commit to hassio") +- [Justyn Shull (@justyns)](https://github.com/justyns "5 total commits to the home-assistant organization, 5 commits to home-assistant") +- [jwillaz (@jwillaz)](https://github.com/jwillaz "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") +- [Kai (@luxus)](https://github.com/luxus "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Kane610 (@Kane610)](https://github.com/Kane610 "7 total commits to the home-assistant organization, 3 commits to home-assistant, 3 commits to home-assistant.github.io, 1 commit to netdisco") - [Karen Goode (@kfgoode)](https://github.com/kfgoode "4 total commits to the home-assistant organization, 4 commits to home-assistant") +- [karlkar (@karlkar)](https://github.com/karlkar "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [kaustubhphatak (@kaustubhphatak)](https://github.com/kaustubhphatak "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Keaton Taylor (@keatontaylor)](https://github.com/keatontaylor "7 total commits to the home-assistant organization, 4 commits to home-assistant, 3 commits to home-assistant.github.io") - [Keith (@seedzero)](https://github.com/seedzero "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Keith Lamprecht (@Nixon506E)](https://github.com/Nixon506E "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Ken Bannister (@kb2ma)](https://github.com/kb2ma "1 total commits to the home-assistant organization, 1 commit to libcoap") -- [Ken Davidson (@kwdavidson)](https://github.com/kwdavidson "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Ken Davidson (@kwdavidson)](https://github.com/kwdavidson "6 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 2 commits to appdaemon") - [Kevin (@Mister-Espria)](https://github.com/Mister-Espria "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Kevin Christensen (@nivekmai)](https://github.com/nivekmai "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Kevin Fronczak (@fronzbot)](https://github.com/fronzbot "10 total commits to the home-assistant organization, 6 commits to home-assistant, 4 commits to home-assistant.github.io") +- [Kevin Fronczak (@fronzbot)](https://github.com/fronzbot "12 total commits to the home-assistant organization, 8 commits to home-assistant, 4 commits to home-assistant.github.io") - [Kevin Gisi (@gisikw)](https://github.com/gisikw "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") -- [Kevin Gottsman (@gottsman)](https://github.com/gottsman "7 total commits to the home-assistant organization, 6 commits to home-assistant.github.io, 1 commit to home-assistant") +- [Kevin Gottsman (@gottsman)](https://github.com/gottsman "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") - [Kevin Panaro (@kevinpanaro)](https://github.com/kevinpanaro "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Kevin Siml (@appzer)](https://github.com/appzer "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Keyasha Brothern (@KMBrothern)](https://github.com/KMBrothern "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") -- [kfcook (@kfcook)](https://github.com/kfcook "2 total commits to the home-assistant organization, 2 commits to home-assistant") +- [kfcook (@kfcook)](https://github.com/kfcook "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [kireyeu (@kireyeu)](https://github.com/kireyeu "4 total commits to the home-assistant organization, 4 commits to home-assistant-notebooks") - [Klaas Hoekema (@KlaasH)](https://github.com/KlaasH "7 total commits to the home-assistant organization, 4 commits to home-assistant, 3 commits to home-assistant.github.io") -- [Koen Ekelschot (@peckham)](https://github.com/peckham "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Klaus (@k-laus)](https://github.com/k-laus "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Krasimir Chariyski (@Chariyski)](https://github.com/Chariyski "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") - [Krasimir Zhelev (@zhelev)](https://github.com/zhelev "1 total commits to the home-assistant organization, 1 commit to netdisco") - [Kyle Decot (@kyledecot)](https://github.com/kyledecot "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -490,7 +492,6 @@ This page contains a list of people who have contributed in one way or another t - [Lev Aronsky (@aronsky)](https://github.com/aronsky "11 total commits to the home-assistant organization, 8 commits to home-assistant, 3 commits to home-assistant.github.io") - [Lewis Juggins (@lwis)](https://github.com/lwis "52 total commits to the home-assistant organization, 41 commits to home-assistant, 10 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [lichtteil (@lichtteil)](https://github.com/lichtteil "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [LightIsLife (@LightIsLife)](https://github.com/LightIsLife "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Lindsay Ward (@lindsaymarkward)](https://github.com/lindsaymarkward "17 total commits to the home-assistant organization, 13 commits to home-assistant.github.io, 4 commits to home-assistant") - [linuxlurak (@linuxlurak)](https://github.com/linuxlurak "5 total commits to the home-assistant organization, 3 commits to home-assistant.github.io, 2 commits to hadashboard") - [lrmate (@lrmate)](https://github.com/lrmate "3 total commits to the home-assistant organization, 3 commits to home-assistant") @@ -517,7 +518,7 @@ This page contains a list of people who have contributed in one way or another t - [Marc Pabst (@mxtra)](https://github.com/mxtra "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") - [Marc Plano-Lesay (@Kernald)](https://github.com/Kernald "12 total commits to the home-assistant organization, 10 commits to home-assistant.github.io, 2 commits to home-assistant") - [Marcel030nl (@Marcel030nl)](https://github.com/Marcel030nl "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") -- [Marcelo Moreira de Mello (@tchellomello)](https://github.com/tchellomello "114 total commits to the home-assistant organization, 62 commits to home-assistant, 52 commits to home-assistant.github.io") +- [Marcelo Moreira de Mello (@tchellomello)](https://github.com/tchellomello "115 total commits to the home-assistant organization, 62 commits to home-assistant, 53 commits to home-assistant.github.io") - [Marcin Jaworski (@yawor)](https://github.com/yawor "12 total commits to the home-assistant organization, 12 commits to appdaemon") - [Marijn Giesen (@marijngiesen)](https://github.com/marijngiesen "7 total commits to the home-assistant organization, 5 commits to hadashboard, 2 commits to home-assistant.github.io") - [mariwing (@mariwing)](https://github.com/mariwing "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -525,22 +526,25 @@ This page contains a list of people who have contributed in one way or another t - [Mark Huson (@mehuman)](https://github.com/mehuman "9 total commits to the home-assistant organization, 9 commits to home-assistant.github.io") - [Mark Oude Veldhuis (@markoudev)](https://github.com/markoudev "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Markus Becker (@markushx)](https://github.com/markushx "6 total commits to the home-assistant organization, 6 commits to libcoap") +- [Markus Lipp (@LightIsLife)](https://github.com/LightIsLife "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Markus Peter (@bimbar)](https://github.com/bimbar "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") - [Markus Stenberg (@fingon)](https://github.com/fingon "6 total commits to the home-assistant organization, 6 commits to home-assistant") - [Martin Bernstorff (@ryqiem)](https://github.com/ryqiem "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Martin Hjelmare (@MartinHjelmare)](https://github.com/MartinHjelmare "124 total commits to the home-assistant organization, 99 commits to home-assistant, 25 commits to home-assistant.github.io") +- [Martin Donlon (@wickerwaka)](https://github.com/wickerwaka "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Martin Hjelmare (@MartinHjelmare)](https://github.com/MartinHjelmare "130 total commits to the home-assistant organization, 105 commits to home-assistant, 25 commits to home-assistant.github.io") +- [Martin Rowan (@shortbloke)](https://github.com/shortbloke "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Martin Vacula (@MatoKafkac)](https://github.com/MatoKafkac "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Martokk (@martokk)](https://github.com/martokk "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Mathew Peterson (@mathewpeterson)](https://github.com/mathewpeterson "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to homebridge-homeassistant") - [Matt N. (@mnoorenberghe)](https://github.com/mnoorenberghe "23 total commits to the home-assistant organization, 15 commits to home-assistant.github.io, 7 commits to home-assistant, 1 commit to home-assistant-polymer") - [Matt Rogers (@rogersmj)](https://github.com/rogersmj "20 total commits to the home-assistant organization, 20 commits to hadashboard") -- [Matt Schmitt (@schmittx)](https://github.com/schmittx "3 total commits to the home-assistant organization, 3 commits to homebridge-homeassistant") +- [Matt Schmitt (@schmittx)](https://github.com/schmittx "18 total commits to the home-assistant organization, 14 commits to homebridge-homeassistant, 4 commits to home-assistant") - [matt2005 (@matt2005)](https://github.com/matt2005 "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Matteo Lampugnani (@t30)](https://github.com/t30 "7 total commits to the home-assistant organization, 7 commits to home-assistant.github.io") - [Matthew Bowen (@mgbowen)](https://github.com/mgbowen "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Matthew Garrett (@mjg59)](https://github.com/mjg59 "10 total commits to the home-assistant organization, 7 commits to home-assistant, 3 commits to home-assistant.github.io") - [Matthew Schick (@mattsch)](https://github.com/mattsch "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [Matthew Treinish (@mtreinish)](https://github.com/mtreinish "13 total commits to the home-assistant organization, 9 commits to home-assistant, 4 commits to home-assistant.github.io") +- [Matthew Treinish (@mtreinish)](https://github.com/mtreinish "16 total commits to the home-assistant organization, 10 commits to home-assistant, 6 commits to home-assistant.github.io") - [Max Rumpf (@Maxr1998)](https://github.com/Maxr1998 "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") - [mboeru (@mboeru)](https://github.com/mboeru "1 total commits to the home-assistant organization, 1 commit to home-assistant-iOS") - [mertenats (@mertenats)](https://github.com/mertenats "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") @@ -571,18 +575,19 @@ This page contains a list of people who have contributed in one way or another t - [Mitesh Patel (@gurumitts)](https://github.com/gurumitts "9 total commits to the home-assistant organization, 5 commits to home-assistant, 4 commits to home-assistant.github.io") - [Mitko Masarliev (@masarliev)](https://github.com/masarliev "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [mje-nz (@mje-nz)](https://github.com/mje-nz "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [mjj4791 (@mjj4791)](https://github.com/mjj4791 "15 total commits to the home-assistant organization, 13 commits to home-assistant.github.io, 2 commits to home-assistant") +- [mjj4791 (@mjj4791)](https://github.com/mjj4791 "17 total commits to the home-assistant organization, 13 commits to home-assistant.github.io, 4 commits to home-assistant") - [mnestor (@mnestor)](https://github.com/mnestor "6 total commits to the home-assistant organization, 5 commits to home-assistant, 1 commit to home-assistant-polymer") -- [Molodax (@Molodax)](https://github.com/Molodax "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") +- [Molodax (@Molodax)](https://github.com/Molodax "7 total commits to the home-assistant organization, 7 commits to home-assistant.github.io") - [Moon Shot (@moonshot)](https://github.com/moonshot "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [moskovskiy82 (@moskovskiy82)](https://github.com/moskovskiy82 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [moskovskiy82 (@moskovskiy82)](https://github.com/moskovskiy82 "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [motir (@motir)](https://github.com/motir "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [mountainsandcode (@mountainsandcode)](https://github.com/mountainsandcode "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [mtl010957 (@mtl010957)](https://github.com/mtl010957 "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Mārtiņš Grunskis (@grunskis)](https://github.com/grunskis "1 total commits to the home-assistant organization, 1 commit to netdisco") +- [Naren Salem (@naren8642)](https://github.com/naren8642 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Nate (@BillyNate)](https://github.com/BillyNate "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Nathan Flynn (@eperdeme)](https://github.com/eperdeme "1 total commits to the home-assistant organization, 1 commit to hassio-addons") -- [Nathan Henrie (@n8henrie)](https://github.com/n8henrie "14 total commits to the home-assistant organization, 6 commits to home-assistant, 6 commits to home-assistant.github.io, 2 commits to homebridge-homeassistant") +- [Nathan Henrie (@n8henrie)](https://github.com/n8henrie "16 total commits to the home-assistant organization, 8 commits to home-assistant, 6 commits to home-assistant.github.io, 2 commits to homebridge-homeassistant") - [Neil Lathwood (@laf)](https://github.com/laf "5 total commits to the home-assistant organization, 3 commits to home-assistant.github.io, 2 commits to home-assistant") - [Nelis Willers (@NelisW)](https://github.com/NelisW "1 total commits to the home-assistant organization, 1 commit to fabric-home-assistant") - [NeLLyMerC (@NeLLyMerC)](https://github.com/NeLLyMerC "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -595,21 +600,21 @@ This page contains a list of people who have contributed in one way or another t - [Nick Waring (@nickwaring)](https://github.com/nickwaring "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Nicolas Graziano (@ngraziano)](https://github.com/ngraziano "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Nicolas Martignoni (@martignoni)](https://github.com/martignoni "1 total commits to the home-assistant organization, 1 commit to pi-gen") -- [Niklas (@niklaswa)](https://github.com/niklaswa "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Niklas (@niklaswa)](https://github.com/niklaswa "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Nikolas Beutler (@biacz)](https://github.com/biacz "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") - [Nils Uliczka (@darookee)](https://github.com/darookee "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [NMA (@nma83)](https://github.com/nma83 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [nodomain (@nodomain)](https://github.com/nodomain "9 total commits to the home-assistant organization, 7 commits to home-assistant.github.io, 2 commits to homebridge-homeassistant") - [Nolan Gilley (@nkgilley)](https://github.com/nkgilley "112 total commits to the home-assistant organization, 87 commits to home-assistant, 25 commits to home-assistant.github.io") - [nordlead2005 (@nordlead2005)](https://github.com/nordlead2005 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [NotoriousBDG (@notoriousbdg)](https://github.com/notoriousbdg "1 total commits to the home-assistant organization, 1 commit to hassio-addons") +- [NotoriousBDG (@notoriousbdg)](https://github.com/notoriousbdg "3 total commits to the home-assistant organization, 3 commits to hassio-addons") - [Nuno Sousa (@nunofgs)](https://github.com/nunofgs "7 total commits to the home-assistant organization, 4 commits to home-assistant, 2 commits to home-assistant.github.io, 1 commit to homebridge-homeassistant") - [nunojusto (@nunojusto)](https://github.com/nunojusto "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [obgm (@obgm)](https://github.com/obgm "480 total commits to the home-assistant organization, 480 commits to libcoap") - [Olav Alexander Mjelde (@olavxxx)](https://github.com/olavxxx "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [OLD PROFILE! Go to /dennisreimann (@dbloete)](https://github.com/dbloete "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") - [Ole-Kenneth (@olekenneth)](https://github.com/olekenneth "1 total commits to the home-assistant organization, 1 commit to homebridge-homeassistant") -- [Oleksii Serdiuk (@leppa)](https://github.com/leppa "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Oleksii Serdiuk (@leppa)](https://github.com/leppa "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") - [Oliv3rDog (@Oliv3rDog)](https://github.com/Oliv3rDog "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Oliver (@scarface-4711)](https://github.com/scarface-4711 "18 total commits to the home-assistant organization, 11 commits to home-assistant, 6 commits to home-assistant.github.io, 1 commit to netdisco") - [Oliver van Porten (@mcdeck)](https://github.com/mcdeck "10 total commits to the home-assistant organization, 10 commits to home-assistant") @@ -618,7 +623,7 @@ This page contains a list of people who have contributed in one way or another t - [oznu (@oznu)](https://github.com/oznu "1 total commits to the home-assistant organization, 1 commit to homebridge-homeassistant") - [Parker Moore (@parkr)](https://github.com/parkr "62 total commits to the home-assistant organization, 62 commits to home-assistant.github.io") - [Pascal Bach (@bachp)](https://github.com/bachp "10 total commits to the home-assistant organization, 9 commits to home-assistant, 1 commit to netdisco") -- [Pascal Vizeli (@pvizeli)](https://github.com/pvizeli "1789 total commits to the home-assistant organization, 685 commits to hassio, 375 commits to home-assistant, 255 commits to hassio-addons, 229 commits to hassio-build, 229 commits to home-assistant.github.io, 14 commits to hassio-addons-example, 1 commit to home-assistant-js-websocket, 1 commit to netdisco") +- [Pascal Vizeli (@pvizeli)](https://github.com/pvizeli "1870 total commits to the home-assistant organization, 727 commits to hassio, 377 commits to home-assistant, 274 commits to hassio-addons, 238 commits to hassio-build, 238 commits to home-assistant.github.io, 14 commits to hassio-addons-example, 1 commit to home-assistant-js-websocket, 1 commit to netdisco") - [patkap (@patkap)](https://github.com/patkap "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Patrick Aikens (@duckpuppy)](https://github.com/duckpuppy "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Patrick Easters (@patrickeasters)](https://github.com/patrickeasters "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") @@ -634,16 +639,16 @@ This page contains a list of people who have contributed in one way or another t - [PetePriority (@PetePriority)](https://github.com/PetePriority "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [petkov (@petkov)](https://github.com/petkov "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Petr Vraník (@konikvranik)](https://github.com/konikvranik "11 total commits to the home-assistant organization, 6 commits to home-assistant, 5 commits to home-assistant.github.io") -- [pezinek (@pezinek)](https://github.com/pezinek "6 total commits to the home-assistant organization, 6 commits to home-assistant") +- [pezinek (@pezinek)](https://github.com/pezinek "7 total commits to the home-assistant organization, 7 commits to home-assistant") - [Phil (@godloth)](https://github.com/godloth "10 total commits to the home-assistant organization, 10 commits to home-assistant.github.io") - [Phil Cole (@filcole)](https://github.com/filcole "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Phil Haack (@Haacked)](https://github.com/Haacked "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") -- [Phil Hawthorne (@philhawthorne)](https://github.com/philhawthorne "13 total commits to the home-assistant organization, 7 commits to home-assistant.github.io, 6 commits to home-assistant") +- [Phil Hawthorne (@philhawthorne)](https://github.com/philhawthorne "15 total commits to the home-assistant organization, 9 commits to home-assistant.github.io, 6 commits to home-assistant") - [Phileep (@Phileep)](https://github.com/Phileep "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Philip Hofstetter (@pilif)](https://github.com/pilif "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") - [Philip Lundrigan (@philipbl)](https://github.com/philipbl "65 total commits to the home-assistant organization, 56 commits to home-assistant, 9 commits to home-assistant.github.io") -- [Philipp Schmitt (@pschmitt)](https://github.com/pschmitt "20 total commits to the home-assistant organization, 13 commits to home-assistant, 7 commits to home-assistant.github.io") -- [PhracturedBlue (@PhracturedBlue)](https://github.com/PhracturedBlue "8 total commits to the home-assistant organization, 4 commits to home-assistant, 4 commits to home-assistant.github.io") +- [Philipp Schmitt (@pschmitt)](https://github.com/pschmitt "28 total commits to the home-assistant organization, 18 commits to home-assistant, 10 commits to home-assistant.github.io") +- [PhracturedBlue (@PhracturedBlue)](https://github.com/PhracturedBlue "12 total commits to the home-assistant organization, 6 commits to home-assistant, 5 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [Pierre Ståhl (@postlund)](https://github.com/postlund "34 total commits to the home-assistant organization, 22 commits to home-assistant, 8 commits to home-assistant.github.io, 4 commits to netdisco") - [pinksocks (@pinksocks)](https://github.com/pinksocks "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Piratonym (@Piratonym)](https://github.com/Piratonym "2 total commits to the home-assistant organization, 2 commits to home-assistant") @@ -664,9 +669,9 @@ This page contains a list of people who have contributed in one way or another t - [rkabadi (@rkabadi)](https://github.com/rkabadi "17 total commits to the home-assistant organization, 17 commits to home-assistant") - [Rob Capellini (@capellini)](https://github.com/capellini "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Rob Slifka (@rslifka)](https://github.com/rslifka "5 total commits to the home-assistant organization, 5 commits to home-assistant.github.io") -- [Robbie Trencheny (@robbiet480)](https://github.com/robbiet480 "1191 total commits to the home-assistant organization, 531 commits to home-assistant-iOS, 255 commits to home-assistant, 247 commits to home-assistant.github.io, 80 commits to homebridge-homeassistant, 15 commits to home-assistant-polymer, 9 commits to hubot-home-assistant, 8 commits to Analytics-Receiver, 6 commits to netdisco, 3 commits to home-assistant-js-websocket, 3 commits to hassbot, 3 commits to organization, 3 commits to home-assistant-cli, 3 commits to scenegen, 3 commits to hadashboard, 3 commits to appdaemon, 3 commits to home-assistant-js, 2 commits to fabric-home-assistant, 2 commits to LabelBot, 2 commits to home-assistant-ansible, 2 commits to micropython-home-assistant, 2 commits to home-assistant-dev-helper, 2 commits to lambda-home-assistant-github, 2 commits to home-assistant-assets, 2 commits to home-assistant-notebooks") +- [Robbie Trencheny (@robbiet480)](https://github.com/robbiet480 "1197 total commits to the home-assistant organization, 531 commits to home-assistant-iOS, 255 commits to home-assistant, 247 commits to home-assistant.github.io, 86 commits to homebridge-homeassistant, 15 commits to home-assistant-polymer, 9 commits to hubot-home-assistant, 8 commits to Analytics-Receiver, 6 commits to netdisco, 3 commits to hadashboard, 3 commits to home-assistant-cli, 3 commits to hassbot, 3 commits to scenegen, 3 commits to home-assistant-js, 3 commits to home-assistant-js-websocket, 3 commits to appdaemon, 3 commits to organization, 2 commits to LabelBot, 2 commits to fabric-home-assistant, 2 commits to micropython-home-assistant, 2 commits to home-assistant-notebooks, 2 commits to home-assistant-dev-helper, 2 commits to lambda-home-assistant-github, 2 commits to home-assistant-assets, 2 commits to home-assistant-ansible") - [Robby Grossman (@freerobby)](https://github.com/freerobby "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [Robin (@robmarkcole)](https://github.com/robmarkcole "6 total commits to the home-assistant organization, 3 commits to home-assistant, 3 commits to home-assistant.github.io") +- [Robin (@robmarkcole)](https://github.com/robmarkcole "8 total commits to the home-assistant organization, 4 commits to home-assistant, 4 commits to home-assistant.github.io") - [Robin Laurén (@llauren)](https://github.com/llauren "1 total commits to the home-assistant organization, 1 commit to appdaemon") - [Roddie Hasan (@eiddor)](https://github.com/eiddor "6 total commits to the home-assistant organization, 6 commits to home-assistant.github.io") - [Roi Dayan (@roidayan)](https://github.com/roidayan "6 total commits to the home-assistant organization, 6 commits to home-assistant") @@ -698,15 +703,16 @@ This page contains a list of people who have contributed in one way or another t - [Samuel Bétrisey (@betrisey)](https://github.com/betrisey "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [sander76 (@sander76)](https://github.com/sander76 "39 total commits to the home-assistant organization, 35 commits to home-assistant, 4 commits to home-assistant.github.io") - [schneefux (@schneefux)](https://github.com/schneefux "2 total commits to the home-assistant organization, 2 commits to home-assistant") -- [Scott Bradshaw (@swbradshaw)](https://github.com/swbradshaw "4 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io") +- [Scott Bradshaw (@swbradshaw)](https://github.com/swbradshaw "4 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 2 commits to home-assistant") - [Scott Griffin (@scottocs11)](https://github.com/scottocs11 "7 total commits to the home-assistant organization, 7 commits to home-assistant.github.io") - [Scott O'Neil (@americanwookie)](https://github.com/americanwookie "7 total commits to the home-assistant organization, 4 commits to home-assistant, 3 commits to home-assistant.github.io") - [Scott Reston (@ih8gates)](https://github.com/ih8gates "9 total commits to the home-assistant organization, 8 commits to home-assistant.github.io, 1 commit to home-assistant-polymer") - [Sean Dague (@sdague)](https://github.com/sdague "58 total commits to the home-assistant organization, 39 commits to home-assistant, 10 commits to home-assistant.github.io, 5 commits to home-assistant-polymer, 3 commits to netdisco, 1 commit to home-assistant-js") -- [Sean Gollschewsky (@gollo)](https://github.com/gollo "9 total commits to the home-assistant organization, 5 commits to home-assistant, 4 commits to home-assistant.github.io") +- [Sean Gollschewsky (@gollo)](https://github.com/gollo "12 total commits to the home-assistant organization, 8 commits to home-assistant, 4 commits to home-assistant.github.io") - [Sebastian (@sebk-666)](https://github.com/sebk-666 "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Sebastian (@sgso)](https://github.com/sgso "3 total commits to the home-assistant organization, 3 commits to libcoap") - [Sebastian Hartnick (@goir)](https://github.com/goir "1 total commits to the home-assistant organization, 1 commit to home-assistant") +- [Sebastian Muszynski (@syssi)](https://github.com/syssi "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Sebastian von Minckwitz (@teodoc)](https://github.com/teodoc "1 total commits to the home-assistant organization, 1 commit to home-assistant-polymer") - [sfam (@sfam)](https://github.com/sfam "65 total commits to the home-assistant organization, 58 commits to home-assistant, 5 commits to home-assistant.github.io, 1 commit to netdisco, 1 commit to home-assistant-polymer") - [Shawna (@Nightarrow85)](https://github.com/Nightarrow85 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -721,15 +727,15 @@ This page contains a list of people who have contributed in one way or another t - [Stefano Scipioni (@scipioni)](https://github.com/scipioni "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Stephen Edgar (@ntwb)](https://github.com/ntwb "1 total commits to the home-assistant organization, 1 commit to fabric-home-assistant") - [Stephen Hoekstra (@shoekstra)](https://github.com/shoekstra "2 total commits to the home-assistant organization, 2 commits to home-assistant") +- [Steven Looman (@StevenLooman)](https://github.com/StevenLooman "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Steven Webb (@cy1701)](https://github.com/cy1701 "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Stu Gott (@stu-gott)](https://github.com/stu-gott "9 total commits to the home-assistant organization, 5 commits to home-assistant.github.io, 4 commits to home-assistant") - [Stuart Mumford (@Cadair)](https://github.com/Cadair "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Stéphane Bidoul (ACSONE) (@sbidoul)](https://github.com/sbidoul "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [System Tester (@systemtester)](https://github.com/systemtester "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Sytone (@sytone)](https://github.com/sytone "11 total commits to the home-assistant organization, 6 commits to home-assistant.github.io, 2 commits to home-assistant-cli, 2 commits to home-assistant, 1 commit to hassio-build") -- [Sören Oldag (@soldag)](https://github.com/soldag "12 total commits to the home-assistant organization, 7 commits to home-assistant.github.io, 5 commits to home-assistant") +- [Sören Oldag (@soldag)](https://github.com/soldag "15 total commits to the home-assistant organization, 8 commits to home-assistant.github.io, 7 commits to home-assistant") - [Teagan Glenn (@Teagan42)](https://github.com/Teagan42 "59 total commits to the home-assistant organization, 49 commits to home-assistant, 9 commits to home-assistant.github.io, 1 commit to home-assistant-js") -- [techtrails (@techtrails)](https://github.com/techtrails "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [tedstriker (@tedstriker)](https://github.com/tedstriker "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Teemu Mikkonen (@T3m3z)](https://github.com/T3m3z "5 total commits to the home-assistant organization, 3 commits to home-assistant, 2 commits to home-assistant.github.io") - [Teemu Patja (@tpatja)](https://github.com/tpatja "2 total commits to the home-assistant organization, 2 commits to home-assistant") @@ -744,16 +750,19 @@ This page contains a list of people who have contributed in one way or another t - [Thibault Maekelbergh (@thibmaek)](https://github.com/thibmaek "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [ThinkPadNL (@ThinkPadNL)](https://github.com/ThinkPadNL "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") - [Thomas (@ktpx)](https://github.com/ktpx "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Thomas Friedel (@tfriedel)](https://github.com/tfriedel "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Thomas Petazzoni (@tpetazzoni)](https://github.com/tpetazzoni "1 total commits to the home-assistant organization, 1 commit to libcoap") - [Thomas Phillips (@thomas-teknique)](https://github.com/thomas-teknique "2 total commits to the home-assistant organization, 2 commits to pi-gen") - [Thomas Purchas (@thomaspurchas)](https://github.com/thomaspurchas "1 total commits to the home-assistant organization, 1 commit to homebridge-homeassistant") - [Thomas Pötsch (@thp-comnets)](https://github.com/thp-comnets "7 total commits to the home-assistant organization, 7 commits to libcoap") -- [thrawnarn (@thrawnarn)](https://github.com/thrawnarn "1 total commits to the home-assistant organization, 1 commit to netdisco") +- [thrawnarn (@thrawnarn)](https://github.com/thrawnarn "3 total commits to the home-assistant organization, 2 commits to home-assistant.github.io, 1 commit to netdisco") - [ThUnD3r|Gr33n (@thundergreen)](https://github.com/thundergreen "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") - [tijuca (@tijuca)](https://github.com/tijuca "106 total commits to the home-assistant organization, 106 commits to libcoap") - [Tim (@tinglis1)](https://github.com/tinglis1 "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Tim Gray (@tgray)](https://github.com/tgray "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") +- [Tim Lyakhovetskiy (@tlyakhov)](https://github.com/tlyakhov "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Tim Wilbrink (@TWilb)](https://github.com/TWilb "14 total commits to the home-assistant organization, 14 commits to home-assistant-iOS") +- [timstanley1985 (@timstanley1985)](https://github.com/timstanley1985 "4 total commits to the home-assistant organization, 4 commits to home-assistant.github.io") - [Tobie Booth (@tobiebooth)](https://github.com/tobiebooth "4 total commits to the home-assistant organization, 3 commits to home-assistant, 1 commit to home-assistant-polymer") - [Toby Gray (@tobygray)](https://github.com/tobygray "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Todd McNeal (@tmcneal)](https://github.com/tmcneal "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -762,7 +771,7 @@ This page contains a list of people who have contributed in one way or another t - [Tom Duijf (@tomduijf)](https://github.com/tomduijf "70 total commits to the home-assistant organization, 53 commits to home-assistant, 9 commits to home-assistant.github.io, 6 commits to home-assistant-polymer, 2 commits to netdisco") - [Tom Hoover (@tomhoover)](https://github.com/tomhoover "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [Tom J Nowell (@tomjn)](https://github.com/tomjn "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Tom Matheussen (@Tommatheussen)](https://github.com/Tommatheussen "10 total commits to the home-assistant organization, 4 commits to home-assistant-polymer, 3 commits to home-assistant, 3 commits to home-assistant.github.io") +- [Tom Matheussen (@Tommatheussen)](https://github.com/Tommatheussen "11 total commits to the home-assistant organization, 4 commits to home-assistant-polymer, 4 commits to home-assistant, 3 commits to home-assistant.github.io") - [Tom Usher (@tomusher)](https://github.com/tomusher "1 total commits to the home-assistant organization, 1 commit to netdisco") - [Tomi Tuhkanen (@ttu)](https://github.com/ttu "3 total commits to the home-assistant organization, 3 commits to home-assistant") - [Tony Torralba (@atorralba)](https://github.com/atorralba "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") @@ -771,24 +780,27 @@ This page contains a list of people who have contributed in one way or another t - [Trevor (@tboyce021)](https://github.com/tboyce021 "10 total commits to the home-assistant organization, 7 commits to home-assistant, 3 commits to home-assistant.github.io") - [Trey Hunner (@treyhunner)](https://github.com/treyhunner "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [trollkarlen (@trollkarlen)](https://github.com/trollkarlen "5 total commits to the home-assistant organization, 5 commits to home-assistant") -- [Tsvi Mostovicz (@tsvi)](https://github.com/tsvi "3 total commits to the home-assistant organization, 3 commits to home-assistant") +- [Tsvi Mostovicz (@tsvi)](https://github.com/tsvi "4 total commits to the home-assistant organization, 4 commits to home-assistant") - [Tyler Crumpton (@tylercrumpton)](https://github.com/tylercrumpton "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Tyler Page (@iamtpage)](https://github.com/iamtpage "2 total commits to the home-assistant organization, 2 commits to home-assistant") - [Tõnis Tobre (@tobre6)](https://github.com/tobre6 "1 total commits to the home-assistant organization, 1 commit to homebridge-homeassistant") +- [upsert (@upsert)](https://github.com/upsert "1 total commits to the home-assistant organization, 1 commit to netdisco") - [Valentin Alexeev (@valentinalexeev)](https://github.com/valentinalexeev "11 total commits to the home-assistant organization, 8 commits to home-assistant, 3 commits to home-assistant.github.io") - [Valentin VĂLCIU (@axiac)](https://github.com/axiac "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [viswa-swami (@viswa-swami)](https://github.com/viswa-swami "6 total commits to the home-assistant organization, 6 commits to home-assistant") +- [viswa-swami (@viswa-swami)](https://github.com/viswa-swami "7 total commits to the home-assistant organization, 7 commits to home-assistant") - [Vlad Korniev (@vkorn)](https://github.com/vkorn "5 total commits to the home-assistant organization, 2 commits to home-assistant, 2 commits to home-assistant.github.io, 1 commit to hassio-build") - [vllungu (@vllungu)](https://github.com/vllungu "3 total commits to the home-assistant organization, 3 commits to libcoap") -- [vrs01 (@vrs01)](https://github.com/vrs01 "18 total commits to the home-assistant organization, 13 commits to home-assistant.github.io, 5 commits to appdaemon") +- [vrs01 (@vrs01)](https://github.com/vrs01 "20 total commits to the home-assistant organization, 14 commits to home-assistant.github.io, 6 commits to appdaemon") - [Wagner Sartori Junior (@trunet)](https://github.com/trunet "1 total commits to the home-assistant organization, 1 commit to netdisco") +- [waxhell (@waxhell)](https://github.com/waxhell "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Wilco Land (@Wilco89)](https://github.com/Wilco89 "3 total commits to the home-assistant organization, 3 commits to home-assistant.github.io") - [wildcomputations (@wildcomputations)](https://github.com/wildcomputations "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") -- [Will Heid (@bassclarinetl2)](https://github.com/bassclarinetl2 "15 total commits to the home-assistant organization, 14 commits to home-assistant.github.io, 1 commit to fabric-home-assistant") +- [Will Heid (@bassclarinetl2)](https://github.com/bassclarinetl2 "16 total commits to the home-assistant organization, 15 commits to home-assistant.github.io, 1 commit to fabric-home-assistant") - [Will Hughes (@insertjokehere)](https://github.com/insertjokehere "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [Will W. (@tiktok7)](https://github.com/tiktok7 "6 total commits to the home-assistant organization, 4 commits to home-assistant, 2 commits to home-assistant.github.io") - [Willems Davy (@joyrider3774)](https://github.com/joyrider3774 "7 total commits to the home-assistant organization, 4 commits to home-assistant.github.io, 3 commits to home-assistant") -- [William Scanlon (@w1ll1am23)](https://github.com/w1ll1am23 "73 total commits to the home-assistant organization, 52 commits to home-assistant, 19 commits to home-assistant.github.io, 2 commits to netdisco") +- [William Johansson (@radhus)](https://github.com/radhus "1 total commits to the home-assistant organization, 1 commit to hassio") +- [William Scanlon (@w1ll1am23)](https://github.com/w1ll1am23 "79 total commits to the home-assistant organization, 55 commits to home-assistant, 22 commits to home-assistant.github.io, 2 commits to netdisco") - [wind-rider (@wind-rider)](https://github.com/wind-rider "5 total commits to the home-assistant organization, 5 commits to home-assistant") - [Wojciech Bederski (@wuub)](https://github.com/wuub "2 total commits to the home-assistant organization, 2 commits to home-assistant.github.io") - [wokar (@wokar)](https://github.com/wokar "12 total commits to the home-assistant organization, 8 commits to home-assistant, 4 commits to home-assistant.github.io") @@ -811,4 +823,4 @@ This page contains a list of people who have contributed in one way or another t This page is irregularly updated using the [`credits_generator` tool](https://github.com/home-assistant/home-assistant.github.io/tree/next/credits_generator). If you think that you are missing, please let us know. -This page was last updated Sunday, July 30th 2017, 7:56:19 pm UTC. +This page was last updated Sunday, August 20th 2017, 8:44:16 pm UTC. From 37432fceb4dfece8dfafb470bb4b6352dace9926 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 21 Aug 2017 07:56:55 +0200 Subject: [PATCH 037/108] Add the generation of the credits --- source/developers/releasing.markdown | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/developers/releasing.markdown b/source/developers/releasing.markdown index efcbf5cc10c..2d163ffd6ed 100644 --- a/source/developers/releasing.markdown +++ b/source/developers/releasing.markdown @@ -39,7 +39,8 @@ This page describes the steps for publishing a new Home Assistant release. Those 3. Update `config.yml` with link to the new release blog post and version number (at the bottom of the file). 4. Merge `current` into release branch (`$ git checkout release-0-40 && git merge current`) to make the PR mergeable. 5. Merge pull request (blog post, updated frontpage, and all new documentation) to `current`. DO NOT SQUASH! -6. Merge `current` into `next`. +6. Run `credits_generator`. +7. Merge `current` into `next`. ### {% linkable_title Docker Hub %} From 8723da898690e477b6e5a9876dd36a2c73a77787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20H=C3=B8yer=20Iversen?= Date: Mon, 21 Aug 2017 11:11:33 +0200 Subject: [PATCH 038/108] Update xiaomi.markdown --- source/_components/xiaomi.markdown | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/source/_components/xiaomi.markdown b/source/_components/xiaomi.markdown index a11431147e8..6ee2f3f811d 100644 --- a/source/_components/xiaomi.markdown +++ b/source/_components/xiaomi.markdown @@ -132,3 +132,18 @@ Automation example data: gw_mac: xxxxxxxxxxxx ``` + + +### {% linkable_title Troubleshooting %} + +**Connection problem** + +``` +2017-08-20 16:51:19 ERROR (SyncWorker_0) [homeassistant.components.xiaomi] No gateway discovered +2017-08-20 16:51:20 ERROR (MainThread) [homeassistant.setup] Setup failed for xiaomi: Component failed to initialize. +``` + +That means that Home Assistant is not getting any response from your Xiaomi gateway. Might be a local network problem or your firewall. +- Turn off the firewall on the HA computer +- Try to leave the mac address blank. +- Try to set `discovery_retry: 10` From abdc608c1c91872fa0ea3031a981d3f8914d55c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20H=C3=B8yer=20Iversen?= Date: Mon, 21 Aug 2017 11:40:50 +0200 Subject: [PATCH 039/108] Update xiaomi.markdown --- source/_components/xiaomi.markdown | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/_components/xiaomi.markdown b/source/_components/xiaomi.markdown index 6ee2f3f811d..4c1d2f8ae89 100644 --- a/source/_components/xiaomi.markdown +++ b/source/_components/xiaomi.markdown @@ -143,7 +143,9 @@ Automation example 2017-08-20 16:51:20 ERROR (MainThread) [homeassistant.setup] Setup failed for xiaomi: Component failed to initialize. ``` -That means that Home Assistant is not getting any response from your Xiaomi gateway. Might be a local network problem or your firewall. +That means that Home Assistant is not getting any response from your Xiaomi gateway. Might be a local network problem or your firewall. +- Make sure you have enabled LAN access: https://community.home-assistant.io/t/beta-xiaomi-gateway-integration/8213/1832 - Turn off the firewall on the HA computer - Try to leave the mac address blank. - Try to set `discovery_retry: 10` +- Try to disable and then renable LAN access From bb5ae582608846151ced04d4ccf6d208812c9001 Mon Sep 17 00:00:00 2001 From: Ken Davidson Date: Mon, 21 Aug 2017 08:28:05 -0400 Subject: [PATCH 040/108] Minor language edits. (#3215) --- source/_components/rss_feed_template.markdown | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/source/_components/rss_feed_template.markdown b/source/_components/rss_feed_template.markdown index 9dff1d5ffc5..178f3434b05 100644 --- a/source/_components/rss_feed_template.markdown +++ b/source/_components/rss_feed_template.markdown @@ -12,10 +12,9 @@ ha_category: Front end ha_release: 0.44 --- -The `rss_feed_template` component can export any information from Home Assistant as static RSS feed. This can be used to display those information on several devices using RSS readers. While native apps for Home Assistant are not widely available, native RSS readers exists for almost any platform. - -E.g. on android, the app "Simple RSS Widget" can be used to display temperatures on the home screen. +The `rss_feed_template` component can export any information from Home Assistant as a static RSS feed. This can be used to display that information on many types of devices using an RSS reader. While native apps for Home Assistant are not widely available, native RSS readers exist for almost any platform. +For example, on Android, the app "Simple RSS Widget" can be used to display temperatures on the home screen. ```yaml # Example configuration.yml entry @@ -30,9 +29,9 @@ rss_feed_template: Configuration variables: -- **requires_api_password:** (*Optional*): If true and an api password is set, the password must be passed via '?api_password=...' parameter (Default: True) -- **feed_id** (*Required*): The key is used as id of the feed. The feed can be accessed at /api/rss_template/feed_id (example: 'garden') +- **requires_api_password:** (*Optional*): If true and an API password is set, the password must be passed via '?api_password=...' parameter (Default: True) +- **feed_id** (*Required*): The key is used as the ID of the feed. The feed can be accessed at /api/rss_template/feed_id (example: 'garden') - **title** (*Optional*): The title of the feed, which is parsed as [template](/topics/templating/). -- **items** (*Required*): A list of feed items +- **items** (*Required*): A list of feed items. - **items/title** (*Optional*): The title of the item, which is parsed as [template](/topics/templating/). - **items/description** (*Optional*): The description of the item, which is parsed as [template](/topics/templating/). From 5d9e58830afde573521f714aa6e638bece6a2f79 Mon Sep 17 00:00:00 2001 From: Tsvi Mostovicz Date: Mon, 21 Aug 2017 15:42:24 +0300 Subject: [PATCH 041/108] Usage of file directive for pushbullet (#3216) * Usage of file directive for pushbullet This is the missing documentation for PR#8763 in home assistant * Fix spelling and grammar * Replace sample with link --- source/_components/notify.pushbullet.markdown | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/source/_components/notify.pushbullet.markdown b/source/_components/notify.pushbullet.markdown index d1cd11a92c0..83b512b437a 100644 --- a/source/_components/notify.pushbullet.markdown +++ b/source/_components/notify.pushbullet.markdown @@ -59,8 +59,6 @@ To use notifications, please see the [getting started with automation page](/get ### {% linkable_title URL support %} ```yaml -... - action: service: notify.NOTIFIER_NAME data: @@ -70,5 +68,23 @@ action: url: google.com ``` -- **url** (*Required*): Page URL to send with pushbullet. +- **url** (*Required*): Page URL to send with Pushbullet. + +### {% linkable_title File support %} + +```yaml +action: + service: notify.NOTIFIER_NAME + data: + title: Send file + message: This is a file + data: + file: /path/to/my/file +``` + +- **file** (*Required*): File to send with Pushbullet. + +

+Don't forget to [whitelist external directories](/docs/configuration/basic/), so Home Assistant has access to them. +

From 2dfa696621bfbd383d3de3cf2948358363a549f9 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 21 Aug 2017 15:16:01 +0200 Subject: [PATCH 042/108] Add link --- source/_components/notify.ciscospark.markdown | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/_components/notify.ciscospark.markdown b/source/_components/notify.ciscospark.markdown index f9b915b2cec..21ef7eec806 100644 --- a/source/_components/notify.ciscospark.markdown +++ b/source/_components/notify.ciscospark.markdown @@ -29,5 +29,8 @@ notify: token: roomid: ``` + + + To use notifications, please see the [getting started with automation page](/getting-started/automation/). From 350a062ca92a57a5ea6546f1aa45b81a21c57be6 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 21 Aug 2017 15:27:51 +0200 Subject: [PATCH 043/108] Add link to details --- source/_components/notify.gntp.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_components/notify.gntp.markdown b/source/_components/notify.gntp.markdown index f319a5980c2..29bda0c15ac 100644 --- a/source/_components/notify.gntp.markdown +++ b/source/_components/notify.gntp.markdown @@ -34,3 +34,5 @@ Configuration variables: - **hostname** (*Optional*): The hostname or IP address of the GNTP server to contact. - **password** (*Optional*): The password to authenticate to the GNTP server with. - **port** (*Optional*): The port that the GNTP server runs on. The specification states that servers should not allow users to use any port other than 23053 but `port` is provided here just in case. + +To use notifications, please see the [getting started with automation page](/getting-started/automation/). From 2ab796979ac3d1adef650971533ecbb08e9ee887 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 21 Aug 2017 15:28:55 +0200 Subject: [PATCH 044/108] Add description of configuration variables --- source/_components/notify.ciscospark.markdown | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/source/_components/notify.ciscospark.markdown b/source/_components/notify.ciscospark.markdown index 21ef7eec806..6892b4192e0 100644 --- a/source/_components/notify.ciscospark.markdown +++ b/source/_components/notify.ciscospark.markdown @@ -12,25 +12,28 @@ ha_category: Notifications ha_release: "0.40" --- -The `Cisco Spark` platform allows you to deliver notifications from Home Assistant to [Cisco Spark](https://ciscospark.com/). +The `ciscospark` notification platform allows you to deliver notifications from Home Assistant to [Cisco Spark](https://ciscospark.com/). To use this notification platform you need to get a developer token. To obtain a token visit [Spark for Devleopers](https://developer.ciscospark.com/index.html) -At this time you also need to specify the `Cisco Spark` `roomid`. The `roomid` can also be found at [Spark for Devleopers](https://developer.ciscospark.com/index.html). -Just look in the Doumentation under Rooms. +At this time you also need to specify the `Cisco Spark` `roomid`. The `roomid` can also be found at [Spark for Devleopers](https://developer.ciscospark.com/index.html). Just look in the Doumentation under Rooms. -To enable the `Cisco Spark` notification in your installation, add the following to your `configuration.yaml` file: +To enable the Cisco Spark notification in your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry notify: - name: NOTIFIER_NAME platform: ciscospark - token: - roomid: + token: YOUR_DEVELOPER_TOKEN + roomid: CISCO_SPARK_ROOMID ``` +Configuration variables: +- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`. +- **token** (*Required*): Your development token. +- **roomid** (*Required*): The Room ID. To use notifications, please see the [getting started with automation page](/getting-started/automation/). From 5e33316e39d46a7abd50757783526b41be3e1d9e Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 22 Aug 2017 08:02:09 +0200 Subject: [PATCH 045/108] Add night mode example --- source/_components/frontend.markdown | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/source/_components/frontend.markdown b/source/_components/frontend.markdown index d04a20945e3..34e9021ea3b 100644 --- a/source/_components/frontend.markdown +++ b/source/_components/frontend.markdown @@ -43,6 +43,8 @@ There are 2 themes-related services: Example in automation: +Set a theme at the startup of Home Assistant: + ```yaml automation: - alias: 'Set theme at startup' @@ -55,6 +57,22 @@ automation: data: name: happy ``` + +To enable "night mode": + +```yaml +automation: + - alias: 'Set dark theme for the night' + initial_state: True + trigger: + - platform: time + at: '21:00' + action: + - service: frontend.set_theme + data: + name: darkred +``` + ### {% linkable_title Manual Theme Selection %} When themes are enabled in the `configuration.yaml` file, a new option will show up in the Configuration panel under `configuration.yaml` called "Set a theme." You can then choose any installed theme from the dropdown list and it will be applied immediately. From 2efbed3ceb3af672e11ebe0c6b5eb8f1c9d79aa7 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 22 Aug 2017 10:31:33 +0200 Subject: [PATCH 046/108] Update --- source/help/talking-points.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/help/talking-points.markdown b/source/help/talking-points.markdown index b8675a1abc6..24f587f3928 100644 --- a/source/help/talking-points.markdown +++ b/source/help/talking-points.markdown @@ -12,9 +12,9 @@ footer: true People are starting to present Home Assistant at meetings and get-togethers. Below you find a couple of bullet points for your presentation. - [Numbers, numbers, numbers](/help/trivia/) and other details -- Over 700 implementations +- Over 750 implementations - Not depending on cloud services. We like to keep your privacy private -- Control all your devices from a single, mobile-friendly, interface +- Control all your devices from a single, mobile-friendly interface - Written in Python3 with 94% test coverage - Active and helpful community From d5e6fcf0ecf66832a5671c27833d6346d77f35fc Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 22 Aug 2017 10:34:28 +0200 Subject: [PATCH 047/108] Add link to hass --- source/help/trivia.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/help/trivia.markdown b/source/help/trivia.markdown index fb985dc2fe2..64089ecf5fd 100644 --- a/source/help/trivia.markdown +++ b/source/help/trivia.markdown @@ -13,7 +13,7 @@ This page contains only irrelevant and unhelpful information about Home Assistan ### {% linkable_title Name %} -Isn't it obvious? Home Assistant is the good soul that is assisting you in your home. It's also common to refer to Home Assistant simply as HA or hass (not to be confused with the German word "Hass", it's more like the abbreviation of **H**ome **A**ssistant **S**erver **S**ervice). +Isn't it obvious? Home Assistant is the good soul that is assisting you in your home. It's common to refer to Home Assistant simply as HA or `hass` (not to be confused with the German word "Hass", it's more like the abbreviation of **H**ome **A**ssistant **S**erver **S**ervice). [`hass`](/docs/tools/hass/) is also the name of the command-line part. ### {% linkable_title Website %} From 19738675e81072dc9059ea8fdfb0ec56138951f4 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Tue, 22 Aug 2017 13:06:01 +0200 Subject: [PATCH 048/108] Review/Edit components starting with the letter A (#3220) --- .../alarm_control_panel.alarmdotcom.markdown | 2 +- .../alarm_control_panel.egardia.markdown | 10 ++++----- .../alarm_control_panel.manual.markdown | 2 +- .../alarm_control_panel.manual_mqtt.markdown | 2 +- .../alarm_control_panel.mqtt.markdown | 2 +- .../alarm_control_panel.wink.markdown | 2 +- source/_components/alarmdecoder.markdown | 6 ++--- source/_components/alert.markdown | 6 ++--- source/_components/alexa.markdown | 12 +++++----- source/_components/amcrest.markdown | 6 ++--- source/_components/android_ip_webcam.markdown | 6 ++--- source/_components/apiai.markdown | 8 +++---- source/_components/apple_tv.markdown | 22 +++++++++---------- source/_components/arduino.markdown | 10 ++++----- source/_components/asterisk_mbox.markdown | 12 +++++----- source/_components/axis.markdown | 10 ++++----- 16 files changed, 59 insertions(+), 59 deletions(-) diff --git a/source/_components/alarm_control_panel.alarmdotcom.markdown b/source/_components/alarm_control_panel.alarmdotcom.markdown index fefdcaecff1..ebffcc5c0df 100644 --- a/source/_components/alarm_control_panel.alarmdotcom.markdown +++ b/source/_components/alarm_control_panel.alarmdotcom.markdown @@ -12,7 +12,7 @@ ha_category: Alarm ha_release: 0.11 --- -The `alarmdotcom` platform is consuming the information provided by a [Alarm.com](https://www.alarm.com/). +The `alarmdotcom` platform is consuming the information provided by [Alarm.com](https://www.alarm.com/). To enable this, add the following lines to your `configuration.yaml`: diff --git a/source/_components/alarm_control_panel.egardia.markdown b/source/_components/alarm_control_panel.egardia.markdown index bde37e66bfa..c9a5e285652 100644 --- a/source/_components/alarm_control_panel.egardia.markdown +++ b/source/_components/alarm_control_panel.egardia.markdown @@ -39,11 +39,11 @@ Configuration variables: - **report_server_codes** list (*Optional*): List of codes for the different states. Note that this basic configuration will only enable you to read the armed/armed away/disarmed status of your alarm and will **not** update the status if the alarm is triggered. This is because of how Egardia built their system. The alarm triggers normally go through their servers. -You can change this however, using the following procedure. This is an more advanced configuration. +You can change this, however, using the following procedure. This is a more advanced configuration. -1. Login into your alarm system's control panel. You will need to access http://[ip of your control panel]. You know this already, since you need it in the basic configuration from above. Login to the control panel with your Egardia/Woonveilig username and password +1. Log in into your alarm system's control panel. You will need to access http://[ip of your control panel]. You know this already since you need it in the basic configuration from above. Log in to the control panel with your Egardia/Woonveilig username and password. 2. Once logged in, go to *System Settings*, *Report* and change the Server Address for your primary server to the IP or hostname of your Home Assistant machine. Also, update the port number 85 or to anything you like. The provided software that you will set up in the next steps runs on port 85 by default. **Make sure to change the settings of the primary server otherwise the messages will not come through. Note that this will limit (or fully stop) the number of alarm messages you will get through Egardia's / Woonveilig services.** Maybe, that is just what you want. Make sure to save your settings by selecting 'OK'. -3. On your Home Assistant machine run `$ sudo python3 egardiaserver.py`. This will receive status codes from your alarm control panel and display them. You will need the codes to include in your configuration.yaml. Make sure to change the status of your alarm to all states (disarm, arm, armhome) as well as trigger the alarm in all ways possible to get 100% coverage. **Before triggering the alarm it might be good to temporarily disable the siren (can be done in Panel Settings).** +3. On your Home Assistant machine run `$ sudo python3 egardiaserver.py`. This will receive status codes from your alarm control panel and display them. You will need the codes to include in your configuration.yaml. Make sure to change the status of your alarm to all states (disarm, arm, armhome) as well as trigger the alarm in all ways possible to get 100% coverage. **Before triggering the alarm it might be good to disable the siren temporarily (can be done in Panel Settings).** 4. Once you have the codes, update your `configuration.yaml`: ```yaml # Example configuration.yaml entry @@ -61,10 +61,10 @@ alarm_control_panel: triggered: XXXXXXXXXXXXXXXX, XXXXXXXXXXXXXXXX, XXXXXXXXXXXXXXXX standby: XXXXXXXXXXXXXXXX ``` - Note that your can have more than one code for triggered, since every sensor generates it's own code. arm, disarm, armhome and standby will all be one code. + Note that you can have more than one code for triggered since every sensor generates its own code. arm, disarm, armhome and standby will all be one code. 5. Start the `egardiaserver.py` script on boot of your Home Assistant machine, for example by adding the following to your `/etc/rc.local`: ```bash python3 [path/to/]egardiaserver.py & ``` - **Do not forget the trailing & here, otherwise you will be having a hard time logging back in to the machine.** + **Do not forget the trailing & here; otherwise you will be having a hard time logging back into the machine.** 6. Test your setup and enjoy. The component will update if the alarm status changes, including triggers. You can use this to build your own automations and send notifications as you wish. diff --git a/source/_components/alarm_control_panel.manual.markdown b/source/_components/alarm_control_panel.manual.markdown index b30ceb63a2c..db5de63da78 100644 --- a/source/_components/alarm_control_panel.manual.markdown +++ b/source/_components/alarm_control_panel.manual.markdown @@ -31,7 +31,7 @@ Configuration variables: ## {% linkable_title Examples %} -In this section you find some real life examples of how to use this panel. +In this section, you find some real-life examples of how to use this panel. ### {% linkable_title Sensors %} diff --git a/source/_components/alarm_control_panel.manual_mqtt.markdown b/source/_components/alarm_control_panel.manual_mqtt.markdown index 0388ee6b4f3..263cac0fb41 100644 --- a/source/_components/alarm_control_panel.manual_mqtt.markdown +++ b/source/_components/alarm_control_panel.manual_mqtt.markdown @@ -51,7 +51,7 @@ All configuration variables from the base manual alarm platform are available: Additionally, the following MQTT configuration variables are also available: - **state_topic** (*Required*): The MQTT topic HA will publish state updates to. -- **command_topic** (*Required*): The MQTT topic HA will subscribe to to receive commands from a remote device to change the alarm state. +- **command_topic** (*Required*): The MQTT topic HA will subscribe to, to receive commands from a remote device to change the alarm state. - **qos** (*Optional*): The maximum QoS level for subscribing and publishing to MQTT messages. Default is 0. - **payload_disarm** (*Optional*): The payload to disarm this Alarm Panel. Default is "DISARM". - **payload_arm_home** (*Optional*): The payload to set armed-home mode on this Alarm Panel. Default is "ARM_HOME". diff --git a/source/_components/alarm_control_panel.mqtt.markdown b/source/_components/alarm_control_panel.mqtt.markdown index 20ad19ea290..7e6feaa7a2e 100644 --- a/source/_components/alarm_control_panel.mqtt.markdown +++ b/source/_components/alarm_control_panel.mqtt.markdown @@ -23,7 +23,7 @@ The component will accept the following states from your Alarm Panel (in lower c - 'pending' - 'triggered' -The component is able to control your Alarm Panel by publishing to the `command_topic` when a user interacts with the Home Assistant frontend. +The component can control your Alarm Panel by publishing to the `command_topic` when a user interacts with the Home Assistant frontend. To enable this platform, add the following lines to your `configuration.yaml`: diff --git a/source/_components/alarm_control_panel.wink.markdown b/source/_components/alarm_control_panel.wink.markdown index e8e394b8d10..032bbd3cb36 100644 --- a/source/_components/alarm_control_panel.wink.markdown +++ b/source/_components/alarm_control_panel.wink.markdown @@ -26,6 +26,6 @@ The requirement is that you have setup [Wink](/components/wink/).

-The above devices are confimed to work, but others may work as well. +The above devices are confirmed to work, but others may work as well.

diff --git a/source/_components/alarmdecoder.markdown b/source/_components/alarmdecoder.markdown index ae5b6c03f22..b3b54f2959f 100644 --- a/source/_components/alarmdecoder.markdown +++ b/source/_components/alarmdecoder.markdown @@ -13,7 +13,7 @@ ha_release: 0.43 ha_iot_class: "Local Push" --- -The `alarmdecoder` component will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and it's sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad. +The `alarmdecoder` component will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and its sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad. Please visit the [AlarmDecoder website](https://www.alarmdecoder.com/) for further information about the AlarmDecoder devices. @@ -46,10 +46,10 @@ alarmdecoder: Configuration variables: -- **type** (*Required*): The type of AlarmDecoder device: socket, serial or usb +- **type** (*Required*): The type of AlarmDecoder device: socket, serial or USB - **host** (*Optional*): The IP address of the AlarmDecoder device on your home network, if using socket type. Default: `localhost` - **port** (*Optional*): The port of the AlarmDecoder device on your home network, if using socket type. Default: `10000` - **path** (*Optional*): The path of the AlarmDecoder device, if using socket type. Default: `/dev/ttyUSB0` - **baud** (*Optional*): The baud rate of the AlarmDecoder device, if using serial type. Default: `115200` -- **panel_display** (*Optional*): Create a sensor called sensor.alarm_display to match the Alarm Keypad dispaly. Default: `off` +- **panel_display** (*Optional*): Create a sensor called sensor.alarm_display to match the Alarm Keypad display. Default: `off` - **zones** (*Optional*): AlarmDecoder has no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/components/binary_sensor.alarmdecoder/) docs. *Note: If no zones are specified, Home Assistant will not load any binary_sensor components.* diff --git a/source/_components/alert.markdown b/source/_components/alert.markdown index 96901866ebf..2f3f58d5184 100644 --- a/source/_components/alert.markdown +++ b/source/_components/alert.markdown @@ -12,11 +12,11 @@ ha_category: Automation ha_release: 0.38 --- -The `alert` component is designed to notify you when problematic issues arise. For example, if the garage door is left open, the `alert` component can be used remind you of this by sending you repeating notifications at customizable intervals. This is also useful for low battery sensors, water leak sensors, or any condition that may need your attention. +The `alert` component is designed to notify you when problematic issues arise. For example, if the garage door is left open, the `alert` component can be used remind you of this by sending you repeating notifications at customizable intervals. This is also used for low battery sensors, water leak sensors, or any condition that may need your attention. Alerts will add an entity to the front end only when they are firing. This entity allows you to silence an alert until it is resolved. -When using the `alert` component it is important that the timezone used for Home Assistant and the underlying operating system match. Failing to do so may result in multiple alerts being sent at the same time (such as when Home Assistant is set to the `America/Detroit` timezone but the operating system uses `UTC`). +When using the `alert` component, it is important that the time zone used for Home Assistant and the underlying operating system match. Failing to do so may result in multiple alerts being sent at the same time (such as when Home Assistant is set to the `America/Detroit` time zone but the operating system uses `UTC`). ### {% linkable_title Basic Example %} @@ -44,7 +44,7 @@ Configuration variables: - **entity_id** (*Required*): The ID of the entity to watch. - **state** (*Optional*): The problem condition for the entity. Defaults to `on`. - **repeat** (*Required*): Number of minutes before the notification should be repeated. Can be either a number or a list of numbers. -- **can_acknowledge** (*Optional*): Allows the alert to be unacknowledgable. Defaults to `true`. +- **can_acknowledge** (*Optional*): Allows the alert to be unacknowledgeable. Defaults to `true`. - **skip_first** (*Optional*): Controls whether the notification should be sent immediately or after the first delay. Defaults to `false`. - **notifiers** (*Required*): List of `notification` components to use for alerts. diff --git a/source/_components/alexa.markdown b/source/_components/alexa.markdown index d30584496fe..72a3648e481 100644 --- a/source/_components/alexa.markdown +++ b/source/_components/alexa.markdown @@ -99,7 +99,7 @@ When activated, the Alexa component will have Home Assistant's native intent sup One of the most useful applications of Alexa integrations is to call scenes directly. This is easily achieved with some simple setup on the Home Assistant side and by letting Alexa know which scenes you want to run. -First we will configure Alexa. In the Amazon Interaction module add this to the intent schema: +First, we will configure Alexa. In the Amazon Interaction module add this to the intent schema: ```json { @@ -144,7 +144,7 @@ intent_script: Here we are using [templates] to take the name we gave to Alexa e.g. `downstairs on` and replace the space with an underscore so it becomes `downstairs_on` as Home Assistant expects. -Now say `Alexa ask homeassistant to activate ` and Alexa will activate that scene for you. +Now say `Alexa ask Home Assistant to activate ` and Alexa will activate that scene for you. ### {% linkable_title Adding Scripts %} @@ -190,14 +190,14 @@ intent_script: text: OK ``` -Now say `Alexa ask homeassistant to run ` and Alexa will run that script for you. +Now say `Alexa ask Home Assistant to run ` and Alexa will run that script for you. ### {% linkable_title Support for Launch Requests %} There may be times when you want to respond to a launch request initiated from a command such as "Alexa, Red Alert!". -To start you need to get the skill id: +To start, you need to get the skill id: - - Log in to [Amazon developer console][amazon-dev-console] + - Log into [Amazon developer console][amazon-dev-console] - Click the Alexa button at the top of the console - Click the Alexa Skills Kit Get Started button - Locate the skill for which you would like Launch Request support @@ -305,7 +305,7 @@ Please refer to the [Amazon documentation][flash-briefing-api-docs] for more inf - All other settings are up to you - Hit "Next" - Test - - Having passed all validations to reach this screen you can now click on "< Back to All Skills" as your flash briefing is now available as in "Development" service. + - Having passed all validations to reach this screen, you can now click on "< Back to All Skills" as your flash briefing is now available as in "Development" service. - To invoke your flash briefing, open the Alexa app on your phone or go to the [Alexa Settings Site][alexa-settings-site], open the "Skills" configuration section, select "Your Skills", scroll to the bottom, tap on the Flash Briefing Skill you just created, enable it, then manage Flash Briefing and adjust ordering as necessary. Finally ask your Echo for your "news","flash briefing", or "briefing". [amazon-dev-console]: https://developer.amazon.com diff --git a/source/_components/amcrest.markdown b/source/_components/amcrest.markdown index 194592081bd..c910e10647e 100644 --- a/source/_components/amcrest.markdown +++ b/source/_components/amcrest.markdown @@ -38,7 +38,7 @@ amcrest: Configuration variables: -- **host** (*Required*): The IP address or hostname of your camera. If using hostname, make sure the DNS works as expected. +- **host** (*Required*): The IP address or hostname of your camera. If using a hostname, make sure the DNS works as expected. - **username** (*Required*): The username for accessing your camera. - **password** (*Required*): The password for accessing your camera. - **name** (*Optional*): This parameter allows you to override the name of your camera. The default is "Amcrest Camera". @@ -46,14 +46,14 @@ Configuration variables: - **resolution** (*Optional*): This parameter allows you to specify the camera resolution. For a high resolution (1080/720p), specify the option `high`. For VGA resolution (640x480p), specify the option `low`. If omitted, it defaults to *high*. - **stream_source** (*Optional*): The data source for the live stream. `mjpeg` will use the camera's native MJPEG stream, whereas `snapshot` will use the camera's snapshot API to create a stream from still images. You can also set the `rtsp` option to generate the streaming via RTSP protocol. If omitted, it defaults to *snapshot*. - **ffmpeg_arguments**: (*Optional*): Extra options to pass to ffmpeg, e.g. image quality or video filter options. -- **authentication**: (*Optional*): Defines which authentication method to use only when **stream_source** is **mjpeg**. Currently *aiohttp* only support *basic*. It defaults to *basic*. +- **authentication**: (*Optional*): Defines which authentication method to use only when **stream_source** is **mjpeg**. Currently, *aiohttp* only support *basic*. It defaults to *basic*. - **scan_interval** (*Optional*): Defines the update interval of the sensor in seconds. The default is 10 seconds. - **sensors** array (*Optional*): Conditions to display in the frontend. By default, *none* of the conditions are enabled. The following conditions can be monitored. - **motion_detector**: Return True/False when a motion is detected - **sdcard**: Return the SD card usage by reporting the total and used space - **ptz_preset**: Return the number of PTZ preset positions configured for the given camera -**Note:** Amcrest cameras with newer firmwares no longer have the ability to stream `high` definition video with MJPEG encoding. You may need to use `low` resolution stream or the `snapshot` stream source instead. If the quality seems too poor, lower the `Frame Rate (FPS)` and max out the `Bit Rate` settings in your camera's configuration manager. If you defined the *stream_source* to **mjpeg**, make sure your camera supports *Basic* HTTP authentication. Newer Amcrest firwmares may not work, then **rtsp** is recommended instead. +**Note:** Amcrest cameras with newer firmware no longer have the ability to stream `high` definition video with MJPEG encoding. You may need to use `low` resolution stream or the `snapshot` stream source instead. If the quality seems too poor, lower the `Frame Rate (FPS)` and max out the `Bit Rate` settings in your camera's configuration manager. If you defined the *stream_source* to **mjpeg**, make sure your camera supports *Basic* HTTP authentication. Newer Amcrest firmware may not work, then **rtsp** is recommended instead. **Note:** If you set the `stream_source` option to `rtsp`, make sure to follow the steps mentioned at [FFMPEG](https://home-assistant.io/components/ffmpeg/) documentation to install the `ffmpeg`. diff --git a/source/_components/android_ip_webcam.markdown b/source/_components/android_ip_webcam.markdown index 535a0c760cb..2823143f968 100644 --- a/source/_components/android_ip_webcam.markdown +++ b/source/_components/android_ip_webcam.markdown @@ -15,7 +15,7 @@ ha_iot_class: "Local Polling" The `android_ip_webcam` component turns an Android phone into a network camera with multiple viewing options. -It's setup as a mjpeg camera and all settings as switches inside of Home Assistant. You can also expose the sensors. If you have multiple phones, you can use all options inside a list. +It's setup as an M-JPEG camera and all settings as switches inside of Home Assistant. You can also expose the sensors. If you have multiple phones, you can use all options inside a list. To set it up, download [the IP Webcam app][app], and add the following information to your `configuration.yaml` file: @@ -33,8 +33,8 @@ Configuration variables: - **username** (*Optional*): The username to access the phone. - **password** (*Optional*): The password to access the phone. - **scan_interval** (*Optional*): Default is 10 seconds. Defines the update interval of the phone. -- **sensors** array (*Optional*): Conditions to display sensor in the frontend. See list of supported sensors. -- **switches** array (*Optional*): Conditions to display settings in the frontend. See list of supported settings. +- **sensors** array (*Optional*): Conditions to display sensor in the frontend. See the list of supported sensors. +- **switches** array (*Optional*): Conditions to display settings in the frontend. See the list of supported settings. - **motion_sensor** (*Optional*): Activate motion sensor if auto_discovery is disabled. ### {% linkable_title Supported features %} diff --git a/source/_components/apiai.markdown b/source/_components/apiai.markdown index 08c2857653d..bb77469703a 100644 --- a/source/_components/apiai.markdown +++ b/source/_components/apiai.markdown @@ -13,9 +13,9 @@ featured: false ha_release: 0.38 --- -This component is designed to be used with the "webhook" integration in [api.ai][apiai-web]. When a conversation ends with an user, api.ai sends an action and parameters to the webhook. +This component is designed to be used with the "webhook" integration in [api.ai][apiai-web]. When a conversation ends with a user, api.ai sends an action and parameters to the webhook. -api.ai requires a public endpoint (HTTPS recommended), so your Home Assistant should be exposed to Internet. api.ai will return fallback answers if your server do not answer, or takes too long (more than 5 seconds). +api.ai requires a public endpoint (HTTPS recommended), so your Home Assistant should be exposed to the Internet. api.ai will return fallback answers if your server does not answer, or takes too long (more than 5 seconds). api.ai could be integrated with many popular messaging, virtual assistant and IoT platforms, eg.: Google Assistant (Google Actions), Skype, Messenger. [See here](https://docs.api.ai/docs/integrations) the complete list. @@ -33,7 +33,7 @@ Using Api.ai will be easy to create conversations like: > > Bot: Turning on kitchen light -To use this integration you should define a conversation (intent) in Api.ai, configure Home Assistant with the speech to return and, optionally, the action to execute. +To use this integration, you should define a conversation (intent) in Api.ai, configure Home Assistant with the speech to return and, optionally, the action to execute. ### {% linkable_title Configuring your api.ai account %} @@ -41,7 +41,7 @@ To use this integration you should define a conversation (intent) in Api.ai, con - Click on "Create Agent" - Select name, language (if you are planning to use it with Google Actions check [here](https://support.google.com/assistant/answer/7108196?hl=en) supported languages) and time zone - Click "Save" -- Go to "Fullfiment" (in the left menu) +- Go to "Fulfillment" (in the left menu) - Enable Webhook and set your Home Assistant URL with the Api.ai endpoint. Eg.: ``https://myhome.duckdns.org/api/apiai?api_password=HA_PASSWORD`` - Click "Save" - Create a new intent diff --git a/source/_components/apple_tv.markdown b/source/_components/apple_tv.markdown index 4adef1bf14a..56bfd96c8bc 100644 --- a/source/_components/apple_tv.markdown +++ b/source/_components/apple_tv.markdown @@ -17,7 +17,7 @@ featured: true The `apple_tv` platform allows you to control an Apple TV (3rd and 4th generation). See the [remote platform](/components/remote.apple_tv/) if you want to send remote control buttons, e.g. arrow keys.

-Currently you must have Home Sharing enabled for this to work. Support for pairing Home Assistant with your device will be supported in a later release. +Currently, you must have Home Sharing enabled for this to work. Support for pairing Home Assistant with your device will be supported in a later release.

To use this component, you must first install some system libraries and a compiler. For Debian or a similar system, this should be enough: @@ -26,7 +26,7 @@ To use this component, you must first install some system libraries and a compil $ sudo apt-get install build-essential libssl-dev libffi-dev python-dev ``` -If you want to automatically discover new devices, just make sure you have `discovery:` in your `configuration.yaml` file. To manually add one or more Apple TVs to your installation, add the following to your `configuration.yaml` file: +If you want to discover new devices automatically, just make sure you have `discovery:` in your `configuration.yaml` file. To manually add one or more Apple TVs to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry @@ -48,10 +48,10 @@ Configuration variables: - **host** (*Required*): The IP-address of the device. - **login_id** (*Required*): An identifier used to login to the device, see below. - **name** (*Optional*): The name of the device used in the frontend. -- **start_off** (*Optional*): Set to true if device should start in fake standby. +- **start_off** (*Optional*): Set to true if the device should start in fake standby. - **credentials** (*Optional*): Credentials used for AirPlay playback. -In order to connect to the device you need a *login id*. The easiest way to obtain this identifier is to use the `apple_tv_scan` service (described below). Additional information about `start_off` and `credentials` can also be found under the guides section. +In order to connect to the device, you need a *login id*. The easiest way to obtain this identifier is to use the `apple_tv_scan` service (described below). Additional information about `start_off` and `credentials` can also be found under the guides section. ## {% linkable_title Guides %} @@ -69,7 +69,7 @@ Scanning will be done for three seconds and notification will be shown in the st -Alternatively you may use the application ``atvremote``. Install it with ``pip3 install --upgrade pyatv`` in your Home Assistant environment (note: do *not* use sudo). Then run ``atvremote scan`` to scan for all devices (try again if a device is missing): +Alternatively, you may use the application ``atvremote``. Install it with ``pip3 install --upgrade pyatv`` in your Home Assistant environment (note: do *not* use sudo). Then run ``atvremote scan`` to scan for all devices (try again if a device is missing): ```bash $ atvremote scan @@ -83,20 +83,20 @@ Just copy and paste the login id from the device you want to add. For more detai ### {% linkable_title My Apple TV turns on when I restart Home Assistant %} -The Apple TV will automatically turn on if a request is sent to it, e.g. if a button is pressed, something is streamed to it via AirPlay or if current state (currently playing) is accessed. This is how Apple has designed it and it will cause problems if you are using HDMI CEC. Every time Home Assistant is started, a new request is sent to the device to figure out what is currently playing. When using CEC, this will wake up your TV and other devices you have configured. +The Apple TV will automatically turn on if a request is sent to it, e.g., if a button is pressed, something is streamed to it via AirPlay or if current state (currently playing) is accessed. This is how Apple has designed it, and it will cause problems if you are using HDMI CEC. Every time Home Assistant is started, a new request is sent to the device to figure out what is currently playing. When using CEC, this will wake up your TV and other devices you have configured. -So, if your TV is randomly turning on, this is probably the reason. As stated, this is by design and there is no real fix for it. There's also no known way to turn off the Apple TV via the procotol used for communication. You basically have the following options: +So, if your TV is randomly turning on, this is probably the reason. As stated, this is by design, and there is no real fix for it. There's also no known way to turn off the Apple TV via the protocol used for communication. You have the following options: - Do not use this platform - Disable HDMI CEC on your Apple TV - Use "fake standby" -The first two points are quite obvious. Fake standby is a concept implemented in this platform that disables all requests to the device and make it appear as being "off" in the web interface. This will make sure that the device is not woken up, but it will of course not show any information or allow you to control it. It is however easy to turn it on (or off) in the web interface or using an automation with `turn_on`. To make it more useful, you can write automations that turns it on or off depending on some other device, like the input source on your receiver. +The first two points are quite obvious. Fake standby is a concept implemented in this platform that disables all requests to the device and makes it appear as being "off" in the web interface. This will make sure that the device is not woken up, but it will of course not show any information or allow you to control it. It is however easy to turn it on (or off) in the web interface or to use an automation with `turn_on`. To make it more useful, you can write automations that turn it on or off depending on some other device, like the input source on your receiver. To put a device into fake standby when starting Home Assistant, add `start_off: true` to your configuration.

-Turning the device on/off in the user interface will *not* turn the physical device on/off according to description above. +Turning the device on/off in the user interface will *not* turn the physical device on/off according to the description above.

@@ -128,13 +128,13 @@ apple_tv: credentials: 1B8C387DDB59BDF6:CF5ABB6A2C070688F5926ADB7C010F6DF847252C15F9BDB6DA3E09D6591E90E5 ``` -Restart Home Assistant and you should now be able to use `play_url` as before. +Restart Home Assistant, and you should now be able to use `play_url` as before. ## {% linkable_title Services %} ### {% linkable_title Service `apple_tv_authenticate` %} -In order to play media on an Apple TV with device authentication enabled (e.g. ATV4 with tvOS 10.2+), Home Assistant must properly authenticated. This method starts the process and presents the credentials needed for playback as a persistent notification. Please see guide above for usage. +To play media on an Apple TV with device authentication enabled (e.g., ATV4 with tvOS 10.2+), Home Assistant must be properly authenticated. This method starts the process and presents the credentials needed for playback as a persistent notification. Please see guide above for usage. | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | diff --git a/source/_components/arduino.markdown b/source/_components/arduino.markdown index 9ba29e20e6e..acfd091c727 100644 --- a/source/_components/arduino.markdown +++ b/source/_components/arduino.markdown @@ -14,13 +14,13 @@ ha_release: pre 0.7 ha_iot_class: "Local Polling" --- -The [Arduino](https://www.arduino.cc/) device family are microcontroller boards that are often based on the ATmega328 chip. They come with digital input/output pins (some can be used as PWM outputs), analog inputs, and a USB connection. The equipment depends on the [type](https://www.arduino.cc/en/Main/Products) of board. The most common ones are the Arduino Uno and the Arduino Leonardo with 14 digital input/output pins and 6 analog input pins. +The [Arduino](https://www.arduino.cc/) device family are microcontroller boards that are often based on the ATmega328 chip. They come with digital input/output pins (some can be used as PWM outputs), analog inputs, and a USB connection. The equipment depends on the [type](https://www.arduino.cc/en/Main/Products) of the board. The most common ones are the Arduino Uno and the Arduino Leonardo with 14 digital input/output pins and 6 analog input pins. -There are a lot of extensions (so called [shields](https://www.arduino.cc/en/Main/ArduinoShields)) available. Those shields can be plugged-in into the existing connectors and stacked on top of each other. This makes it possible to expand the capabilities of the Arduino boards. +There are a lot of extensions (so-called [shields](https://www.arduino.cc/en/Main/ArduinoShields)) available. Those shields can be plugged-in into the existing connectors and stacked on top of each other. This makes it possible to expand the capabilities of the Arduino boards. The `arduino` component is designed to let you use a directly attached board to your Home Assistant host over USB. -You need to have the [Firmata firmware](https://github.com/firmata/) on your board. Please upload the `StandardFirmata` sketch to your board, please refer to the [Arduino documentation](https://www.arduino.cc/en/Main/Howto) for further information. +You need to have the [Firmata firmware](https://github.com/firmata/) on your board. Please upload the `StandardFirmata` sketch to your board; please refer to the [Arduino documentation](https://www.arduino.cc/en/Main/Howto) for further information. To integrate an Arduino boards with Home Assistant, add the following section to your `configuration.yaml` file: @@ -32,7 +32,7 @@ arduino: Configuration variables: -- **port** (*Required*): The port where your board is connected to your Home Assistant host. If you are using an original Arduino the port will be named `ttyACM*` otherwise `ttyUSB*`. +- **port** (*Required*): The port where your board is connected to your Home Assistant host. If you are using an original Arduino, the port will be named `ttyACM*` otherwise `ttyUSB*`. The exact number can be determined with the command shown below. @@ -40,7 +40,7 @@ The exact number can be determined with the command shown below. $ ls /dev/ttyACM* ``` -If that's not working, check your `dmesg` or `journalctl -f` output. Keep in mind that Arduino clones are often using a different name for the port (eg. `/dev/ttyUSB*`). +If that's not working, check your `dmesg` or `journalctl -f` output. Keep in mind that Arduino clones are often using a different name for the port (e.g. `/dev/ttyUSB*`).

A word of caution: The Arduino boards are not storing states. This means that with every initialization the pins are set to off/low. diff --git a/source/_components/asterisk_mbox.markdown b/source/_components/asterisk_mbox.markdown index 245ef3f8923..b7201ee7571 100644 --- a/source/_components/asterisk_mbox.markdown +++ b/source/_components/asterisk_mbox.markdown @@ -12,11 +12,11 @@ ha_version: 0.51 ha_iot_class: "Local Push" --- -The Asterisk Voicemail integration for Home Assistant allows you to view, listen-to, and delete voicemails from a Asterisk voicemail mailbox. The component includes a panel on the frontend that provides caller-id and speech-to-text transcription (using Google's API) of messages in addition to playback and message deletion. There is also an included sensor that provides an indication of the number of available messages. There is no requirement that the Asterisk PBX and Home Assistant are running on the same machine. +The Asterisk Voicemail integration for Home Assistant allows you to view, listen to, and delete voicemails from an Asterisk voicemail mailbox. The component includes a panel on the frontend that provides caller-id and speech-to-text transcription (using Google's API) of messages in addition to playback and message deletion. There is also an included sensor that indicates of the number of available messages. There is no requirement that the Asterisk PBX and Home Assistant are running on the same machine. -To enable the component, configuration is required in both Home Assistant as well as on the Asterisk server. +To enable the component, a configuration is required in both Home Assistant as well as on the Asterisk server. -First follow the [Asterisk PBX configuration guide](/docs/asterisk_mbox) to setup the necessary server on the Asterisk PBX server (this is necessary even if Asterisk and Home Assistant are running on the same server) +First follow the [Asterisk PBX configuration guide](/docs/asterisk_mbox) to setup the necessary server on the Asterisk PBX server (this is needed even if Asterisk and Home Assistant are running on the same server) Once that is complete, add the the following entry `configuration.yaml` file: @@ -32,11 +32,11 @@ This will add a new 'Mailbox' side-panel, as well as a sensor to indicate # of m Configuration variables: -- **password** (*Required*): The password that was set during Asterisk PBX confguration +- **password** (*Required*): The password that was set during Asterisk PBX configuration - **host** (*Required*): The ip-address of the server that is running the Asterisk PBX -- **port** (*Required*): The port on the Asterisk PBX server that was configured during Asterisk PBX confguration +- **port** (*Required*): The port on the Asterisk PBX server that was configured during Asterisk PBX configuration

-Communication between the Asterisk PBX server and the Home Assistant server is password-protected, but the data transmission is not encrypted. It is recommended to only use this component when communication will be contained within a local area network. +Communication between the Asterisk PBX server and the Home Assistant server is password-protected, but the data transmission is not encrypted. It is recommended to only use this component when communication is contained within a local area network.

diff --git a/source/_components/axis.markdown b/source/_components/axis.markdown index 192c5774803..a312625a730 100644 --- a/source/_components/axis.markdown +++ b/source/_components/axis.markdown @@ -13,7 +13,7 @@ ha_release: "0.45" ha_iot_class: "Local Polling" --- -[Axis Communications](https://www.axis.com/) devices are surveillance cameras and other security related network connected hardware. Sensor API works with firmware 5.50 and newer. +[Axis Communications](https://www.axis.com/) devices are surveillance cameras and other security-related network connected hardware. Sensor API works with firmware 5.50 and newer. Home Assistant will automatically discover their presence on your network. @@ -62,7 +62,7 @@ Configuration variables: - **camera**: Stream MJPEG video to Home Assistant. - **motion**: The built-in motion detection in Axis cameras. - **vmd3**: ACAP Motion Detection app which has better algorithms for motion detection. - - **pir**: PIR sensor that can trigger on motion. + - **pir**: PIR sensor that can trigger on a motion. - **sound**: Sound detector. - **daynight**: Certain cameras have day/night mode if they have built-in IR lights. - **tampering**: Signals when camera believes that it has been tampered with. @@ -88,7 +88,7 @@ axis: ```

-If you are using Python3.6 you might need to replace the 34m with 36m in the _gi.*.so filename in the gi folder. +If you are using Python 3.6, you might need to replace the 34m with 36m in the _gi.*.so filename in the gi folder.

@@ -96,7 +96,7 @@ Any specific levels for triggers needs to be configured on the device.

- It is recommended that you create a user on your Axis device specifically for Home Assistant. For all current functionality it is enough to create a user belonging to user group viewer. + It is recommended that you create a user on your Axis device specifically for Home Assistant. For all current functionality, it is enough to create a user belonging to user group viewer.

## {% linkable_title Device services %} @@ -109,7 +109,7 @@ Send a command using [Vapix](https://www.axis.com/support/developer-support/vapi |---------------------------|----------|--------------------------------------------------| | `name` | no | Name of device to communicate with. | | `param` | no | What parameter to operate on. | -| `cgi` | yes | Which cgi to call on device. Default is `param.cgi`. | +| `cgi` | yes | Which cgi to call on the device. Default is `param.cgi`. | | `action` | yes | What type of call. Default is `update`. | Response to call can be subscribed to on event `vapix_call_response` From d6971e08b1d3ef49eb8f38261f06a930d3a73931 Mon Sep 17 00:00:00 2001 From: githubbuh <30601455+githubbuh@users.noreply.github.com> Date: Tue, 22 Aug 2017 21:53:12 -0700 Subject: [PATCH 049/108] Include remove -id: for !include_dir_list --- source/_docs/configuration/splitting_configuration.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_docs/configuration/splitting_configuration.markdown b/source/_docs/configuration/splitting_configuration.markdown index a101eb227ef..3a1a9b6e530 100644 --- a/source/_docs/configuration/splitting_configuration.markdown +++ b/source/_docs/configuration/splitting_configuration.markdown @@ -247,6 +247,8 @@ action: ``` It is important to note that each file must contain only **one** entry when using `!include_dir_list`. +It is also important to note that if you are splitting a file after adding -id: to support the automation UI, +the -id: line must be removed from each of the split files. #### {% linkable_title Example: `!include_dir_named` %} From 06abfe7823c2bcf351d081543cbcf869bbdad85b Mon Sep 17 00:00:00 2001 From: Ben Date: Wed, 23 Aug 2017 17:20:25 +1000 Subject: [PATCH 050/108] Reverse proxy details for Caddy Server (#3222) * Reverse proxy details for Caddy Server Code snippet to show a working example of using Caddy as a reverse proxy to Home Assistant. * Update docs_navigation to include link to Caddy Update sidebar with link to new doc showing example of Caddy reverse proxy * Update caddy.markdown --- source/_docs/ecosystem/caddy.markdown | 21 ++++++++++++++++++++ source/_includes/asides/docs_navigation.html | 1 + 2 files changed, 22 insertions(+) create mode 100644 source/_docs/ecosystem/caddy.markdown diff --git a/source/_docs/ecosystem/caddy.markdown b/source/_docs/ecosystem/caddy.markdown new file mode 100644 index 00000000000..22879119d91 --- /dev/null +++ b/source/_docs/ecosystem/caddy.markdown @@ -0,0 +1,21 @@ +--- +layout: page +title: "Caddy Server reverse proxy" +description: "Configure Caddy Server as a reverse proxy to Home Assistant." +date: 2017-08-22 22:20 +sidebar: true +comments: false +sharing: true +footer: true +--- + +Configure [Caddy Server](https://caddyserver.com/) for use as a reverse proxy to Home Assistant. + +``` +hass.example.org { + proxy / localhost:8123 { + websocket + transparent + } +} +``` diff --git a/source/_includes/asides/docs_navigation.html b/source/_includes/asides/docs_navigation.html index 25b6afd3a58..83fa9419bb0 100644 --- a/source/_includes/asides/docs_navigation.html +++ b/source/_includes/asides/docs_navigation.html @@ -163,6 +163,7 @@ Remote access