From d9a525d22d74cc23115560609393805bbd8a718f Mon Sep 17 00:00:00 2001 From: Joey Caparas Date: Mon, 5 Nov 2018 11:01:47 -0800 Subject: [PATCH 1/7] update win10 version req --- windows/security/threat-protection/TOC.md | 2 +- ...ard-configure-windows-defender-advanced-threat-protection.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/windows/security/threat-protection/TOC.md b/windows/security/threat-protection/TOC.md index 3145f56988..a328d38a24 100644 --- a/windows/security/threat-protection/TOC.md +++ b/windows/security/threat-protection/TOC.md @@ -186,7 +186,7 @@ ### [Configure and manage capabilities](windows-defender-atp/onboard.md) #### [Configure attack surface reduction](windows-defender-atp/configure-attack-surface-reduction.md) ##### [Hardware-based isolation](windows-defender-application-guard/install-wd-app-guard.md) -###### [Confguration settings](windows-defender-application-guard/configure-wd-app-guard.md) +###### [Configuration settings](windows-defender-application-guard/configure-wd-app-guard.md) ##### [Application control](windows-defender-application-control/windows-defender-application-control.md) ##### [Device control](device-guard/introduction-to-device-guard-virtualization-based-security-and-windows-defender-application-control.md) ###### [Memory integrity](windows-defender-exploit-guard/memory-integrity.md) diff --git a/windows/security/threat-protection/windows-defender-atp/onboard-configure-windows-defender-advanced-threat-protection.md b/windows/security/threat-protection/windows-defender-atp/onboard-configure-windows-defender-advanced-threat-protection.md index b2004cfea5..5c48e4903e 100644 --- a/windows/security/threat-protection/windows-defender-atp/onboard-configure-windows-defender-advanced-threat-protection.md +++ b/windows/security/threat-protection/windows-defender-atp/onboard-configure-windows-defender-advanced-threat-protection.md @@ -42,7 +42,7 @@ For more information, see [Windows 10 Licensing](https://www.microsoft.com/en-us - Windows 7 SP1 Pro - Windows 8.1 Enterprise - Windows 8.1 Pro -- Windows 10 +- Windows 10, version 1607 or later - Windows 10 Enterprise - Windows 10 Education - Windows 10 Pro From 23b75b71fd96b857af51a79bf89d10217b7f6e76 Mon Sep 17 00:00:00 2001 From: jaimeo Date: Mon, 5 Nov 2018 11:04:33 -0800 Subject: [PATCH 2/7] initial import of text and images from blog post --- .../images/UR-driver-issue-detail.png | Bin 0 -> 87943 bytes .../deployment/images/UR-example-feedback.png | Bin 0 -> 126533 bytes windows/deployment/images/UR-monitor-main.png | Bin 0 -> 177680 bytes .../UR-update-progress-failed-detail.png | Bin 0 -> 100226 bytes .../upgrade-readiness-deploy-windows.md | 4 +- .../upgrade-readiness-monitor-deployment.md | 48 ++++++++++++++++++ 6 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 windows/deployment/images/UR-driver-issue-detail.png create mode 100644 windows/deployment/images/UR-example-feedback.png create mode 100644 windows/deployment/images/UR-monitor-main.png create mode 100644 windows/deployment/images/UR-update-progress-failed-detail.png create mode 100644 windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md diff --git a/windows/deployment/images/UR-driver-issue-detail.png b/windows/deployment/images/UR-driver-issue-detail.png new file mode 100644 index 0000000000000000000000000000000000000000..933b2e2346d2422e693d2c852f051c1dfd3eb1b7 GIT binary patch literal 87943 zcmV)`Kz_f8P)*NoNP~xx zkdTC4LUDl52?0W{A)%L0ZHf!Faqm^`T~@Q|uB0vZ&b)uz-POvLfjs2N^W^vL_aABR zojY^p%$YeeXU?24wbq&h5=bC{1QJN#zXkcfO+W$(B#=M?3H&D`p-2-*Ab|uDNZ@d4F!buuuF&08ZvTgtDo2|+Mfrf8Q7o|-{|8(%$ z$>ZoU9lCUf-yB1y5Qs<}I?jiV>5TI68@_K}-*2e{pgZ7kyL1jQ-^z#MwZS*l$N7f1 z_C9`Hqr5$)ocMIQy*#z06~~qlpFZ-x(h8*oh7|4F>L}S28fceaH2-7E`NldPx32Bm zRx5=V}dR~+cvh4m{LSv#s>MLg0X42|+juFC`9D^EG=1cMDU6s| zrCq(^^VJ$HfOdmyyb_Ij9^=zD56a4pwqcu+j8|yFh|={v2X_%|i{s=GnMlO5{hPCE zDRfH7;< ztXa_?B5t-Qr9=urptXgN5}2j|N;m_h9pFfHExw?QlqPPMfk2^!j0~QjEt{6+7Ay?h zrs2#ORRCX07{fF%q#)GVL~UIozLpmJ{uca!5TFT!EL<+r860qE3Itnd2`Rj8laQ~D z>IOeyTVr}Wm{Op$MhZun`x_c)^aoI;8;=>8sVadqoH~VD{REW6Z5jxnX>P2gwy~L( zmKOZJ76O(+DMi>;xLjte(?$mahc_C(zZESFOv6$7Qb4P}k=nW@g0{fraXS-{s4|Tx zQ6VJ)3x8t+4b35>>B40i2wNcxi4cnB`UV?yAT5C)&Avt&nuBP-<8~v2LTN`PHKIcW70WI*D^dj&hsxN$b~z6{ z`#A-tUe1HRIf)br!Tk%k;f7ZUln$k!aSto@!GGO+I~R=11?331fnfFPv$*W<)%@X4 z4{%l=o2_g2@c9Q%^JaN5f4TQoMt4b~V#{J)|8zYqt|UyMQLS~XU$GU>)SvS5&F7G! zY=ksuE?>z_zrLO3DL3-t?rVAatwRhN-jnhT%V_F0od<9JIo;AF*meBlk^6Xg0}SY{ zSh+3C@9w&dGY5788K7p*AvUdF#`CYggZsp5`0G_CfL5&i@=a!MX~AO{7)hFjy}MYu z)6Z$Yy^9-8D~YVMa1=tYmA(77v3bF49(a8>7u|aYS54@S5Effr|1;NqxSw%j`*Lu_ zQvAgybNBr}r;iD?tq^F0VL-Tvzdd|2Z|zKFKu&-S`;xf&?mIcXUoue5d-pxStDB%- zH^sVLaQQvA@q@lOP98!#t7?3F`Q(ER-T)O}iNP)0?>Y+`$NKqmePizjMJ~x#`J;bQ{#2LmM~I^Yq_y_oYK|3C;ecf9ICR zz9hF#e~xU}K;GHE=H5#ul43yPzAw1*hQHBN(g&k_J57B~=ZQNmq>}_&YiG5tV{-@^ zwtvBOH$26`tnu9amm3+AE(jrT*YDuLJMZV6UCG=y>vn!JrV!h*5r%<*#p2iQK*)4==p z+{&x_^10{Fe_(j7g@p@OxQqvWb3Y%IC-d98{=h{e^HCZM5#p1lZsy_7n;15xF9m7I z)b85IjzBkld-pGy-X#ZtLMcay5;e^WNm5E0>C)@0N_Cuq(;5}OLXWppM4wA1tEf3# zAuxr_>en9PcW-QE@W>IAc$!$cZac#-_&v8>G#C>bTeWS69Mh*`Wh*2SLVmVwUQfAu zs*?_lQlOMT8W3nKXWfdmWS8c<4_Lu-841 z(cRP7w|*&0U89-vdPIhyQrrd@mm58wV z-+C=~-f|t6jmxBlY<_UcBvJ%~m6Nc1!(vu9b>sZgMp2YMh|6!C#jG2D%RRq51K+B5 zdHCH`0F-_B4EN00%jv(mf&2e>6Q^fZ@ZckFvlkG}Te$v^8Uote$Lgtrp&a@K1nZax2bne=npK|R_?%;zxbx4V`&jdgV!TcfI zc=IjHy5`qB@cS7A7Qe}}udi_i5JSdH+sog0oM%6)=iJ}i!-Eg~hLNuAJoVgb907KG z@*?+tbeL1GznKT_yM_}p%X#`wZ%`4!$wNA;&HZ1#!mM{UF!|Eo^1xlU@uMzHJofPG z>;SB?Pr2jSPv~~y&v@wWKXB#5Y~Fw66+YV?25Deh3MnCYcnJ^P|0>>LKjqO`cX0J- z{h0suBfMJ{hNe~AdDmOCl%C6@ci+OzKkLKl7oX(a^+DhuPyF$D)@P37?gwt?kzY)u zdj31S^g$UQ5XvzRNB1%Twyj)2g-WKip^Q17Z*3Djtq5y@r|B?XeZ7hXz?2#(K>5m; zzo3kOOJZAXG8iwd9&ZY1$=;Zmy$u@MvaoCw{pqx~?L2eFeuYaw-O3GYsI$p1_VeMF zYX}2|1hhb_AT6yqoOj)g+;;udJo><`oL#)1>;CIn-d|ZaIQx?E7(mZce#hJkI#c%i zFIce5j_uu9mJQfw>Bd#Rfk$3mO7YkWIeB<4XbWkYU>{=k`^(81cMfCwWRN3HqaT`9 z4f&-b7*O;vyS5!7zyKD`Sx?@8DV#946A)n3q*C5}aS4kzUPg}refj;fui~!X%KdlT z!eOF&D;i}hEL-Dto9tckE^p1PWZLa_(aRl~p-b)TU!qAXnaZ;to{q8iO-^6304W@W zpu*`4Kk4L1y%f2n6B*Ov@2ojcNozv`uiSS9A6HD}kw2ft($$-Am!8TQL)}0xrj9S< zv)P+iv27bwUu__5)MRG%&I1CB9odIZUSG@7@&goo@jTam(!})-{{j|oz+F6&lSg+4 zEQU`Rj`{F%R;{Vz$fmW_=w4iL#%KU0j315XllNJ=ViPC#9FC0Wu-(fSvDV*{TQ3|6 z!0=JS$bV}sD_3lyw95*%kDFPTZlJV&u z@%74;RL$s5zDKmJDgv#io0J;^+-qm5F|{(DCd(Sa0*jg}E}wgWd1VE(eTr1YA?g##;j;*CYD zxq3QdQ_W~5NJG==_d|LzWc1+j>uzGl)mQS|yI*m^sIyu2)?avgo1{zlAZ2zZPMA8L z#>FqNyz>P-c&fqucYMUC>+j^EVL3o8@7()GW(P~T=k`m;*z*N+!%%+P+tKQGkM%_GCuo&%7$9@ubR&bAMM1I z4tw`BGxF36xbm!0w!ix{f1JOM?nRj#E~}v5*+1vn^M~WMZKT_vZs!8-`Q2yKXF_>} z=B!J9$&bbqqih@7R%ko2D)#TPJjV~QnpnD0nd+fG;qTW@!-XOkQlyoP;JlJ(t2Of3 z^MB#p4Xt#}G1zn1$4NiEnoB43Kmh(dUvux{?@;5(qA=G>WgWOO6t*3a>961B&#x`T zm61-3&*Xxuf5jR7a-e1dk394$J9Hl2)~wAJbJSl$43%3kiHLw3DB<{fSJ9 z3RA$;SRv(@t0JkDvIz%+*d7m1&e!WJ$jR+amoBMJ9@H`C(>1uemU7ahE`UW^K_Q)! z1g#;*!!A~y6bKAl63Q0MWqqTYlTSUBOmOy1fVy?_n7uEF(@!2pjsPndBoMMm5>U5e zGrKE&^c*?_udZN!lOQ`ShZHY>i=2WSvRnZUA1((og)Z62WVsa0VcI$32q`h$Cg5Yq z?9Zw0F@+yYD2%+MooA;fIhRfaUW{NEt#oXF7ShJHEkdCXrYULIzM3_aCVhH$BPA_~ z;$DLpGpqzN5a38-J>J4x@*?FI6?esG3{vIa&%vrNoilUsx&XX%D$GTCn<=koq@bi9 zqehidZ2LKI#3C)V6Y0qS2AKsp+?@CKajKoybi}qNR2h+jcdOo{~g%dI|u^DV@p8Po}x*06Tq0u>2;4c?C{J zMrVq9xTvhHB@nRN#7f%;ploby z?2Uu~Lc4fx!G3y=7(xF67p)=v&kuIT@eb91R!-vv53OhZ@?G>iEFrmNH8)=MDC^Qja{Ilv@WTNOJagy6ENTcK?Pj*j{)oB0 z0&cx?7C)Ij5N%s14Jo zl<)#IJbU}yJiiJqxcPSOxVR51Uw(|oKi`ez^-#BRHcx%Ai!*+HEfQH8_M7ivW6NM}df-m37}=Sc+Bz)L!0mzNUGH$ib+1s}ZwB|> zdks@E%DC^gr`g@==fjs?;JuBCEAF|O+kQ5k!9BC_K+GvFfdsw}+Ko+Zdk8i*L`+QW zKhR3x@^~=p241`OUf$T@;-ZT$rI*K%$MBBz%-wRBqTv(i?*?T{$H9RP^3ob%8W29f z?8WOyDw)hFqcQ*+i3zka_oF2Q3%W46e+gitOb=eSNnq!f+;Y#~Xec>}YtHEfEnzT3 zWd8}kAUP!km&b7kiByNM;waBrAd(`qa}n>Y2yw!UN%TkoY)26gcYHxb>Y}2XIBi(~ z61UrpZ`TrTz3qAY15V?oGfNSMhqEugjk~Tnm40rCrD%6NB_|~{)*Mlf*l6C#scE=8 z76D%>-A}%lNAI|dk^S=Ug{-)G2$GUh@FY1C6=#v$rbNt~6w)H&MZ2m?9EX{xtvxk~ zY{#aFAq85sjWJ%2ha^w3v*+pT#6^@5Aah7bGmi2a)hJ~GLFO;oNLqx$AxcIrmo&Kc}jx`G1$LZjN}?&M{dq$Q<9WKCii0#{}sQ%*jK zED0g)!kd(gTiKA)g{h;5P`hLa+ku^HR#NRLpY(#?=bCsNq7 zmd}>%#pQBicvBg5(hPcLMq~ql%N5|uzx|ne?zoAk=UQBG+l`#o4O*1O(Ai9wK9#{) zCLGzsoUgW!+J8DfI=cq|)6Tz?ab2sJ^Wh4bl|Th7GJA~TywiFDg`D&2)9HD5Bl9*^ zV+$8(aHj~Gx2$AdSq+0vnaQ*~N$&8eOw4Uy!J^gFwYYGbilLLwXTpFyhL0Lbmu!=M z6HlaXQVxAa^uh@EDX(iJ*wBKHR5Fr{NE1aT?h=m)tyLSCyI?ydC!fbfBRT=OT==sy z=<46iS4%dtVaWnk?91lt%TJ>hf}*h#8CsG?D4;P-Sn=Tkw&(QXr_)B_ky%WbG#<~P zC49NMlC<<>!hRpiR_!2f)S3M5^3%xID&lbWT?8wE1dfk(rrmf?xejH^2E!u>RdXCx;}~+>x+nv~ttk8IW$wK9W0Iy` z&db-IPodlKlnjT1Xfp|c<2{UW25AXY)YW2TrIMeX%n>xUPzVK}X{@is)JYWPWdmWF zT20bTgy$*P(E`7-=TIehut1AJ{7Gzc%% z`_?jVMKza<$&HydquELU*a51JRN^ffNvm!0k7i0&gB9=l$VstTGv_r9&WC^%AZzGIx@BpsW`&fJ!u0%hm9uRRLncn= z?BSjGr8||JOm9T~6jpLF>6sn?td@f}xl z?!e9%F|X+FCSD07&=EQg$Ph*RhCP7CAXvYGyRLnRRrx3L+T&N!+3mbCOwdg`STJuL z`Qxu-d>0p>VyhQ$OsIy8TLcTILu_BahJ&&%myC91&bBa-gjum@DSQ0|{N{`i5yuR{ z#yQV$!$b3!aP>Xhan7K&yu7(|%N2Z8b&$GdC~~{-)z?#N=TqF>P1|}*Af*wvPo`1Q zK(dE&E-SI|R3L)8&hj-fTH{Y z+(%Zkw=%@kLQwvC8fj)gUN1^hx8Q5s%>Kjm&_5l*^)ywrQk37H>@0;hrI~HJ_rQeV z5Nx8nI!vdYg(Q0bZKJdc3GCjukzG|`PQ39NZaKv?VXnM?1Um0&rfq}D6;lwW%1wN;p3fdethwH z$_)#cyE~23Paj1(plyg>!-ZS@H29hw(Ahxp;;xAVykoAb_` zhOAk`%Wr;0<$+ba^xS+(&OD1zS!whiF_xa06}R!oTAA5)0M-KADOCQscJB~9?ETUleXimxs@%n3Tv9Y3(_g{UE z?fEBh(YRvLdJbe#|IRFV=T+wHE@#mzFR|3>$vLNvA_cIOM4CXLg1Pg)rb_nZgmHxs zSqXL@Jet1ghxvH+BCs^U=4SjY%~*Ii_xy>ZG*)1Ao5)FhfnY1mem}m}@ORtF5)y0; zNrSoQ>|q>O^ag)^b2H7sCcb{*8Q$6)VDj0g(;Ha);TNnAr!jhXf82m&K~kS#OexXK zTeyH-RRK^z8k!oYt~x@%s%PPwPw?BjKBUu0Kj)XH4FFmR2U}@s@)L@P7+TTdZ=$Is z9GSm$XUfPt4wS8CuNuMy(|ZFj?Ccp#a98u-Lyxny#>c^RA8`Fu53^2(F$vMw&_uv$ ztF;wqrJ>1Bb8EnnLDjZTVTW63Z1lCI&+Nz9r;SDJ`GTkawvqUQOq&_*QfFGaFPg6q}Z{M+;IjReDUwn+$Rv#eT zu$hOh{XMU&sz9bl{B;d9JDZ$nJA}{IM0120cBq9$Uo(N$0MLy~e{~sy{foKmw+}IY zYc*D&f#q*M!Ik&Dhsqwpxo3`~>dQBH@{1j)y6rsr#5-8MCh~*n!x=Pg1QW7qc=5S+ zD66eu>D%wIu&jnqxRurrO#I>L^sn2%Z4bT7VZWcvU%t#WH@(E+Kt1n1dOP>LyAy)R z2)7#}Ih|DZcM+%r68Lts3&;?Ib`HFYke|I3&2$+!jL`!+xOgpAN+-&`c%QP2q5S%yX=J(E_Ujz)O+jPT0h*G!a^l#b$eif8p5?VTu$F~sMxihRXdyLF=!aW2lQk_|E?T4xSkd3 z%Ba_U_{|@#VpO^T?n1_lE2L@D4%Tkk#2!kx=K8A`UFb#|>5LuOhhW74Hmuvkw#FpR z`^9fKXK0?YA09dG(OkEUmCLIrJo!{E9^DXrz%zQI^5} z@aI%qpgRmEYv z-9~WoucmL@7{HRC3iQoea5%hv9|-D3i`Tz@&elA*b=mg+hfIB^04 zI%hC=Vn4hG53p`)8LL)prplei^pmF2#p`3=-X@BNk7IP7Jgk-m4%LU~HDnwkdt}pE zUqMwkgK^_W(jz;Gl+JxPV`2&A8#l9I+g4Vr+Q5e0-P+9@kzKj`x~mym=yLYVzhV0+fdsx2^zopSR`I`W zTifb*iM95vc~ze{1 zby<_vTHD(GrotnzI!t0~J5o-EG-$2WQF+@(({&V%&PUr(y1xrl$9z;uD|MWA+Sb-l z1%x|H=+yNX`eJ0Z&qUeQanh+{c+&3Oar1AJnPbw#v23rbReh4W}!O# zzwP(2-$Ze=92}MNF?~%P)h_K*$Cuk)o{o{XZ;;JMLC2L1hu7cKHnu)qwT?^scWvtg z68IK;OVE0SZAVrZhD4&<&h15)YFZ-=6W#4(o_TdDoeGMGoEL~48HvVRRkn?S$lhXG zaCK$dP8m`}Y|Uw$d-EflpP5fVTIBmk;B2MrNLaV_Bu4`kC|ltiE7Y-r<4(x8wt(Ww zwjr`#tF;p!Rx5?Al(T;-+Xt#YYT^+K^=B*X9P*YDshuF;vCw!&(WWDG8-{@tI*!h^ zgY(V~Zu@r#=YYB)+n!6qIi#9AR~2|2rCVAnK8+P_~N1H;%-mjYPRowu;F@H1N0+I!-$> z7uP;YIY(+_RWzyu+P@F;rZMa6h5 zqFGBBv8W1!jP?nTh7pN*8>`d`yCL!(u@AzHoO1lgtToH7`ZhCC!E(e-hPq5|L+jHTtRx7bl#Oriah`C$Xo&m zB#^-O#rIaEZPzb}qgEsT{D9W>jX3Ixu7nazpbfg6>DI>9PK?!m=3dSO5=bC{e-*yB zB26HHe>d8jZq4@F1qmgZKmrN;n~{jsoInBzB#=M?-vbFnnm_^xB#=M?-vbFnnm_^x zB#=M?-vj>-DALGTRdmdA7>NB%;Alh-TqgLHKmrLQ@UOssgtJln5u4+rh+GBsuT=)| z-k}}k{J-WU8V#5cn?!tfTA~3X{$pHnVz+Y~T~}hy;sX=J+ADHbS}YAX$FiVZdx}`F zgAUp_dI@+eKuKicA)Kq`+T>A0qZT@}YK@Myjfi-(M}BwEZca6I2l5@ww|(2TJ8~AS z*SGN_j)(Eb)uQR*%lNi;#PLECty3g_L~N24&%-wQqet0}rM0abI(X;YM&ktai05s` zvfsWg9Fs2oxL*6QB|@8uw0TUP5@7@rI6nR(6zO+YSnUUz?}Jz#S~~$IjydG5|0U)8 zx6p2Ij8O9(X^GY;eqi{&dSoOtte)ZH^mnwQbU(V#l%~5t`bS>qGz(w8=}XZIq41aFl_v39I&Xfn$%4b;O5w zWn_gd43~4mPFu7soO;CNV@IwiL&qsmzr$oH^p_D8f9 zjAPpHZccc$Z&40MuWXKb8&RUp;2CJFp|;sV3XL$lWaeb!H99tl#*|gZrAE>mTjn>f zx{oOYp>10IEhtwqDITNUZ2qXEaVw?hx7E!1bO||wrZBX7c5ER1pT;rPh2zfnqv@P* zb1n%qH&AOQlaua_4Z6XG!;~GUM@kQcy?T-B70w-^MkGX>5Cr^3sBJYV%FRSXj?4J! zkDybsNq0-2g+n_JQWsQ63AUCbC3{It%cgTqnxhN394Yrb~kDquK|ZGSg7DLK>1#V->sh*AO&Z6m{=Qrxc0SZE+;E za>C|8GrKqMqe-Sv(yKceZm@03iOAG)gsr|J2wy>HfskPuD{2XN)5yz8K_--G0^fp;Z-4ne2q6S^sEV?6JE*L$ zW80eLY(7|z74mVUK1_CgA%@kAH?x3FnaMGskIp=!0p!}x{EsrZ#lLfUB2tFfyLJ`J zHgBh~xtYfL2KH@P&%V}ldKYC7F&efjN5_>LUuN56SsZ2dYahrWW|E70C))jv4D6zX zb#p#tx9&zsCvU9mW9mZGBt{%Bn%J~J<>b?}leeD#2TLnz*t>EiA1&BI*U2NvH=R|N))FaO`Q*`idFx;v zrwlLVP}xep_~<J>cy#p3em~} zX&@?AbIrXk(WP`E^=sbe^|_mF^){{Y9GZ6x+*Uja@S3cxG{SlUZ@F^9U zV;Iuaix7f_@-i0A{g^*L@Gj-uOBvh6xo39Y+PQqPcq6;_9AtlGIV~!sc-P>p zPWOKG9uL2}fSQ^E%>D2y!d)lOx08t=z`A#z<;f5C(a^Y>H$U0Lz~LjwO_nIfUh7(u_BEQzNWVeqfhJt zz_zb^?8_O!)Y8IOy3EpX0PXgU>~N58tu$oU=s|45QZ1GOGH)= zL3XVEf(_-_Oq+2gS<(9o?PjVQBKMFAr-NCc0G2jm3`{i{B*cU>-tZ*>g{KlSb75`X(5)p_W@f(5uI|=VwXuP%ckGtAJA`dTkSu1s*3Id zPNj=NMkW6!yaALKi?T7UNR&Ajx8E`g= zg@Cfp-r=*lo;-2a5AopRZ;_vU{^lor?{;S;b&Pz-kcqQi6&vQpb}H#o0S2LP3WEk@vUS;V4vjmXVvoSKoRHXiKL463cPd>{JPvdJlY9yi_+P<) zgd%M-YdJTL7=|Diwy;92C_sfZrpwQ=&ptw{1MR?Pi^#-vQVc8G?WBLq`>Fk|{y(o7)K z$mSJG*dy3%RobvKfBCO-xL3G54`OY>ZqOt(8r3 zY5`qSA=n(ilj3E_sNO7Faex4W@nB#8n^$}dxg!{m3s|}Q{O(&xmWR1-#|wmFmu4$$ zOJQk&#}#Jo^Z%fs?+iv}f(~0qmkH`Hi`SGh@XQ|pg5s{lUKY*@S%pEU%HAbipvd2HBg^Vw)u^ zc5!|uKbKzd8b5g8DNa1Fkwaa_a9uZ?drwPC$^83UtZoUCvU($3`=3o$kJGjKjPF7C z$yIFgO=VzO#N-;-!up+IrvGXzXaz<$Ms>IOe9aEd>20vIGM6)d)6?l-8QmF^s#&^e zCzCxpX$lNx>d18G^7cNZl*qX(U*Tuq_*BP1Nor6EVH&V+1z$H6@!QKs^7m&yX3K$T zjO*%h_!Vp*rRxAv>NhZF#bhp@+zHDR7|lC*YgsK5Ck*1S4*ySdfdu{^#Q)j#NIcrd z;5BG7r8vfnL2|D&K!+z{Q_20XK}{NnVd192NfGva3};q zw6JRaT&j}$bM{%MbMB;`>|M5u16tEqzaJyD2c2DjwlPf;({#mF5<)=DriCopt2y=j z(>Q(RDWsQg;Hw?AV0h5}YW7x{3_Iau&icU#q&AeXYFi@!yO+;pLsJgtoqHN*oiT>s z))lO-4uaQ3xT%7};X-DfbsEEpv!KPxi0S7sW5!I*oic!3>%Zo3GYl9%jsAIQ6c3%j z^hra=@&?(kU>*m}o}6>`>6~-Y01mJGn(eJXeHmXY*-5Vnr!(`k8BFMxjK4V;@j(4| zwxv^Er~c!)@a#$CL>SqTY1di3OT0-gz=y9j+-4q+n0~FWg)7Ai`1x}2PPz;kj2F;` zgwTE#t@kr*+AvJO!b7qNG&B*g;!W8CX-GUS1L`-kXs=@CiK76G6;bf@tCz6P=);sD zsi4BxwnbQZNp``3C5x#}FJX8Z9IEvpvy({yv;>k;=#rB}Q+YE0Ny!pu!XL2PnbL(J zF-oy@9L!9LI(cZSuV~|=#&JwSvvlEV zQVaW1oY#kOxy>wCx+RuQ(n_;g!Z{}oXV;Q1XaYRI-eoIjEEvF)t~rE*2}PQ~cf-GU z6peREP*~wGmaQVMoK9}pDt2e2ZG{P2cI@}}JIg2#vds%HXeKjgK!4H!%sjg0z0p*mJN6g^eMTBH0^Qhqm(B>`(dVgMTo4 z`A)#cwtbc46!pgy@YB+4lAj|f-&cu^L>sB}8y2BKWYRf5nWnmGpo+3`KgC^o5^VJm z@Tbu!J;c5}wIEDH*h|rXu9!G8{*=OQ7`3aJ{ozM^zIqSMb`U#k0XDW$*x{fxqA`&^B1k0XM2|Mb#)#yPV5P2q!I6d+;$hPQ;oJ-2%P8A zbYarW{3q|?la>Me>a6d1JcFB@mz7Ox;1B_NlZr;<_vGZ$ z25?}_mwa7S19m5bZPHY^g@ub8cOEO`rKEcfQd?+gBBUMTjna`-N-&I}Bvt#?vamv- zg~k$DlypjiP#BezOlpKxh7n@(ypLG#FJStKGs&_l`EdRcly*jD5zn`vjj0v;cdVjz zw^J7@rGS3vF05)nQd%+=-~wkc@(tIg{!bx#iLg5>S$584f;z=!ImuVx8-$S%g7^Z=4I>h4-Ji?KlGkN;%X=Gucv6Fq3uh)a2C1DZu@)aDkTFCC4g%=341n?$%Nikg5mZJy- zU^F*VYo{@+hZoDVkX9R=0lOZvHJ9uR01I#H`q{n?mn8wc=p027Rj$p#yPO->R)fCP$2LV1OxRn`V=-kI5%?yB#P?wOrkNeCOT z5%lkQ_Sxy`>dIB8&Z$%9WO3IEZ!q<&HugmaaOvm_y4OWh%2ggb91R~ZA=N1&sycS? z=${|KKk;JDnNk7P0iM3=5!wcv$OWg4#AkQ#>OUT2ogByIpPJ^V*pn{CeRrg5!S;m7 z)MAsoeBUd6N(?5Q1yTdqnfSvQjF~l;fth_W@%1M&`V#Bv5=oXiYCluQbixuB+}^IK}-egWmltO(%hL8 zXMxq)N-QFg&JM)kn%r_ZbqO={xVcp4_D*)s0Yzk2OG>j5qnkuGX^X|bXVFM1j!DCG z>hMo&qJ+_NKT#S6#MX23PadV{oU8c!j1ni3l#T+>{zWWrDCCmM2LSHXp0q1B(lAI> z-6cY5+h*3wQm!16iKCq3^uw}O789(Q!`K{G@krXdao_Dc+%lRwuRq;AYjj$$xV!+d zdj)k7m=Fd!+Sz3!I5#H?a7CfGPT5nHR@jD#q@I;)B8)wMf}7sE-=FT~vq+1TzLu5#opcB!X#)c+ePJQBd)jH+w}r*8FQq9071a~S>e#@`Z|$b7eLrhnUq#))uGE?GKiB&I zI+Sf8gkbZtcksolZe_a=2<37a?+Q(_T3S_Gj`i!Ill1*s!IR4V(6$ zfK9KgMhu_A*jzw?6zS}&MMrxFG202VwWDdhV(F_y{N)VvMY|L##|W(hf(`@-PB7VL7U(Q~2w^pe&&3TRw6QxMFF z3evl1c{P8y2#9#SFzCroI+#Ym<#HmH9G|?+8f>a_n6z2@)F1*(3WY#yrSMnn%5w`T zieWol{3&4cKbmA*Z%Rm+6dcks#k5o$hu{r-cA?j~8`Rg;+U%+j79Ki?9nR)rhG8#Z zb@0UTSi7cNC2+sJ`}avIU@ruK52e5#sfL5-yHa~g77ePCXhhzn=(5`4Rn%H4N zkc-*)gkHd^_zSqec+{FCB`mv)WRuMh6;#&qw>G?GSwuvbVv)QFs%<+Gbvtt5^;2a# zuJFcI4h6*`-t_b<@E+U7|7ISz3L6?>G+8=(9?O~{0rWEx#&J9GsPZS0CTlCm+K0d9 zP$$+5Gc%TwjwYlWQJ2=l2A`qk*V+!zGZnHPL7HRGh&XxCWe5#b;L0fd&0R5QFLSV> zssEc6&^3Stv=*-}OK@h~w{P#?1P%nqlfbw)e5hFIvyJ3mEk&ZVrss^J|4 zDUQP`6(e=5Z_65~=IWj8sRr!?uqkmyMnGn$eyTll=nd1=08~dx>~$g-pn7X;7HhHs z%`Jsma%ge^XWPFz?FG|r3O2iMt!bY^90dxToPsBrk}%y{?TM! z{*O=UfsU8e){=8S5i6=nIBfX{D`ch?rX>5zfO8sV1<3=+Kf{YzZsly4aq`%}rCFI( z^+XynJevOYu4XmW+O2Xe*e*xW9w{pVnF~u4x>v5@C;w{1u(?A25O#nUdgKv@4U)h} z(7{B;>j4GVm@es`e0zfG*k_g(r19c{qq z>jbx2NniCe^Q?g@@;AnhDVmHTLOnNUIJDf<%CIx=&~R09`p)Y+o5#1FI?`qmmx#2R zfvgyv4hxdPiC1>Z1Q!WGgYkQv<&;=LLnWtsPv}udfzP+oxhOfI*G-%$VMs=(cWDyo z^2XdloIhsOxP96k{?x^^=;U3IQ5ZEIo&EJJEYgTV84N;#L10|)QI6Ghjkc>&rjDpI zlX#L%$AsXd-@0c+pV}WOZX#4N7@}TBaRC+4AhO|Mcy%s+!r50G{==JV++Q`p(;?B> z7$6G0j+-s;DH4ceHNRZDb%wsC#&v$N%g4)H@9MjpO}SD_;GB*@S~r+z0GUQ^t|!T!^GhxoOx-=zTo}86V2+v#?cF$ zi+SyhEA91)#)Xv`cW>edJd}u{Ji@#RgU@T6&G`UtuY{zZ<|K`kwyQ!7LaFNvpBrA~ zhM(&yehtjB4!wnq5er)0;EjIiq9)7s{DkZZb7XFHC~?UZg?tL{cJ0dTbo%-cqcrn4 zerhTgEn4p0ifbNPd95kAHS4z*k-K9Tnt9?YH;(Ve-Qpy^u$D!`F05g8%cMw$e?)C; zSH%z@dqFafx?d?eg?Y!tdJB1u{cm;N3S_m1^k;Q?puT!bld?~2JVPal7j{pp9%+LV zFvUHTdiJcb4Z12t4&#!CP~zq#SgS%>T@}_Wb9`PS_rlAfZmb3P@G>DNe*R8W{#swu zsC@IHe3Fw@Em1gUeDc#BghglU=l)MmU9S0*ZaJKg>TW)3KO6{ARN33yW{UE~384hiA z`F1Co?4;}YD&t%9mQ(qmi;asWoKpBVk$P3%)S7zS?Jxcbw{TWj6_^Jw$Zyiy6dcPIM|S!-~j20^A~Y3|@rpCsa{S?&*Oc+)$RHNTEck zCe|(>%6woJ3}f zu}3B!+!WZcsBQ8-mo|&*@waXAb^0`?fTXH9!V(v7h|%sHF$pnJ;{-f;=)KX}iJ675 zK9s5Eds|EFg-X_U@3y)_B3wN~=XwVrf#1bhOdeSrF^;o;^L%fCK_M0>>Tajq?+*D- z_!s5tQ~!-TJxQ)$%l~uD^Xf`y3r+36(bl$K7eu5ESqz6MIm2>vGuiFgE00D1o> zf6PoQ+;;f<<1YWe z5Xsb-Q$8>(RFkB}lgt4{B3F|HijRS&wnF3gDcF8%iDcgwz2J)-H~x`$I37z~roDdsJ2$ikN7`LC zXeMG(EGA5|9zZ+U@9rJM8$={iyco)n{VfVVCVp@d5FaUa**}4Kr!Cg6Kn1%~noGh+R_%m=VefmNXR)|_f%)$}j#tp5L8fT1831?pY z7A7)CG1n|L%*04a>x0pq+}>#BLs)5l+~MCS23+1%`a?6*$>H%c3+nhq;5M=>LYX`s zP3)wt(K*Llo=&9y=`?;E2kh&iE9b#3N)l zB7+^F3YFff_)bpWuCH_R!oK1h0SHh_krxoL8C>>IKbJFHt>F2Xqr=R+bLwH9$##0= z;a8>!?YYmQYZzF-7njRyuG)ESb~jp%mJksAs436pw}Z`}Y8wRl%&cc(%G%$nFxR!) z;W+$l``Ly}5JhcIM^BwI^p@D4Pbj_L<2F#WR!1O2@^E4PcGOhtdrkA1Ae$i=e}*JJ zqt~9QNwhqc$%ERdX0_cQJ(A&Du^~I{_;c1hJA>d?40oP)_fzYWuwy1x|G6CSOd)}kb^0i2@=6?f(x zqlYZ>0)ly6SR8(gV{m=Ad5329CxmU~y5ySfkehQi4*7g~&;u>Eos~F(2yDa5 z63;RJF)Zfsaf|s$qm{3Kb{uilI#wF7EJryOmx!5g!iE=taO=6#gB9uw+P*b7>V7|r z|EPz9U#1_NWw%z36RsU@IK@jJnTnW9k?RNI@-0E7fm3alW7Nq5&S$qE%Xxl&MR;Ng z-rxHpqPK@~#X#4Q;)bMnW1cU{REj`R4zR6{w8;Ug`Tdz!!yYe$fdN;5HHrJOE%C>C zXDAmPT2Idmc}ni_EpK)?2OKmcUAcUn5Lj(9j>~3`-rH9451ArNY4qH5;3sdp|4*r;4hyZp>%wXSbXmOEL77U8cY7^C{qesWY~6->vLjDM9*uHgx4 zy(Y#XVadUR9+K&*Tcv!x62F!mNk>X}VwqvplE}a%O(VjXD4BBB&ys|cXm8rTz3h%B zN@YIQH*3xYsPJ}Epw8~ObVd)))r8O(u5>Rd<40;?mv8`m4>>nBFf4YSK8{+D$fArr zYW(M=@J+DsTCo&x)x%ICJvdc1El?E*i<)X?5OX-J~-|oF>bV#q`FY~U0z)RgR#tPWyl}dxLJR>d6JxFaBxBKH?UC-m#rZ4 zCrI@5Bj?Wsnxy+;t=T*_G;-xH0e)E5I*VsMJrh)B{I0oebJ$`LxwD0JM%`uvCh=q> zypgG&j77#Gi$bZDYocjnbOb!%+wbgZb_kx|%OesfV@ckRq=jFUadxaw@omXKV%Kjk zA!l@By8#t%`5dX@rf9H5n3TWR{2wgVo86H^ea}h*RE54) z7jXs#KHH{+L0;M&ftsqE*frK(cFIbk%D2lHJI3=G;C$w}PrIj;CAaBl4`#Zm|ND(- zrr2`qD3oo?sv&Pz-5RP(Z?vT~#h){+Z^cEFtAqKV?j(l=7x{Wc+T5*aMWQEX_VVEx z&yz}T`{nHX0)12z*nxv5RyF@(VgKLZTG(Rvw!S+SRe!yB2Mrt{!lW_J<;;qL($fAE zyQ*Nd+dKm77kKK5p%aa^e|(7gbgJ%^yT2sliJ33uyLX2O{QVPTBvSi@s=jQ}aBlfI3z;kcBGrsDDOw}b066=dJ*g{i`_+Idy z4LS&UK6!3I9>}~}GpvvzD)gciEH{N=OUbQHHGNefW;xVW(jzE{tC*p6GToR|*hjV{ z>yzrhpDfG~@&a0OiY1LpppaG?OulPIvS>VKrteX- z)NnL`weTR>T3qGlE#*l=6tDZS97_V~)_#Qoi^($Fn2gI3e*gv)8 z#M`SdHpX^{y`GI~4Gmgf#cyq2-kX?3po2JRCf^QV+9mhrU_rz`d1<~G^~p0H#GBW!fG$hO7~_A0P%7sr_?=AU@D@cyfbpHRNBVrU zdREI#fJPhIi{BdU(%QmD97pq4ly=&=`P-fR(6_nV{%;(*lfMU}(?&ps%3UHqNMxT}!hX9L_C6=il z@IR#+hy{G-uE6sWqYW*MN{(IT->~#x5g&D}Qf3D3sG`a|9S(z?{5<1i=>kJdWcjl> zDPcwWpffVM0|Wbi9`NLs!$rjOk8f~PWX-&m$BnW z;8S)q)q+O}=l{C*o?tC-)RwD3UDH(#ut73?M-zBmV|1;5e1MQ()hwPVSLwSMAQDn* z8#A?ED;;s2ZwJs-9T(JJxiJ!3UXW6tx#Tbd-q@BH#u=_ztkFghL@J9u)Dok=4MOjL zB6t__lhsmfCJk{*(rD)`V1?Q*ygG*!HBc~%yFL$LPgU07k zwSPUBw>w;#w_m=vFa?+X>o7Vs#7xw#4lx9mH~X%9`p>_8nzfI|#j+UaVa)u7pw7b7 z&G$R^o>GHh&HC5E9Vf6%{z6KVoQ769dIr&lF8mTpagUyG6(}0b2g}ute@a>xI(6ty zCVItbJzgwOsHVg5)D{!`@vNwEdZ^i5Q$g4^T#Mjb%U&sCgxr1aZ6I*T;PrNLu!e>~ z8414ZZMUt7JBnzokrnLrNa^fN82VJB*pLn()sf+L{Q(PpAP5A@#mx4cZ_0+cj!yrKxJ&eqJGVnO6uCx)cEgV6Nbr7=nPsSuBC~$Qn z-OPBa;E8O~Ma7Xq+&HM@C&HeKwBbKO9V1eo@QC8m^FVg11>2=pcmyqbqig@}wG2)p zUINNh5NK&ak$Y`$B2)eO{$Bffmn2&}#m-dz(B8_O6=ODHRytjti!F;l#d3i&l zZ*Q0iY>6$V;`;V^VqV+nko%zSBr!sF zNoWsfF@s=gSptVjHj@Y9bc(8m_L&kiqDe}iBsA!*J6RDmfjQ;ZHYQiFo*G$7M)al= zfXB>W&aFQ1@amf#hH}ex&wv)68=^5TyW(BNG`SryJQ$pq5tRul@vz(GGhaPSv&-Q< zx8rNi`BDZr;%eOQ^|q)Yr|1Chp|7Oep&zEI@zmZExO|P@?Ek3e?|v!92mVmG-^~36 z%GYY(Uje^=ja>V_1mCt^CDWNfrlR8p zv4%ZE8=>FycBBLxUd&_PPG*P823M7d&WB>O+yqox#s>fpegMHcyCy2PZ5DkoK4*To zj0+N=T7ZESqsyQ5kaxAx5L+N8aDZ-80=rsI`o7OBANq&bxMu)Ukdc&Nr<$ODy zA18f#@{5-kigtqlFL`7zAFogZ3l*d8)4rXsCrPS+0f$qVRah5H|xFNC{h*8cO z_y_#E_k1;;O{}>DR}oumgh;!#VsfyGF?46Pk<0oHj`{w-mxAOYKn}DU#AQ z1Z;;^iFozYE}MlY>OyvWWL=eyOxz%NrA(b65Btjf3i-iOO2nutrIj}HiF}g&Y9VKR-auK1SbEB^Bbfo(o;KVKb(Q7Z2`tqf8CgA+M z$FtDvE}n~qe?N^FqMmDrVD6DL= z(pgX;^6V{t`9cbG{o#EfAcRUVp=vNxGR@VnL9wTKqG6%mf_H*Z50Md3(N)s1%rpuT z-i#)577{qu{3jTz%x3m#5$PvfV3){3HF%6WSRuoaEc^1+>LAgHm`!dPWMlEZhyDnL zwEz^gWp-1whQ^Zi4#rcnVD`@xXS;5DWeaqK@AP~REpPGA0*9D8LAY>eM&jfX5P++m8pL{=&S%Qe zt%Kvl-*<&~%WF9T77@c;SN?~1ApZj@)He`uD!>Y;0$CKOr4&`?52 z3vIR}p)b}wQN>t_D1gsWsp1=HVSXS;1Gaat>$<*m>&d#Pn03^e$KRDVvC3VeEEHox zFrs{4H2HiZ=sr14z*nO{ScSGS+1Z~?pJvA?r^fa%Wk##VOA9!89h%~;>xB-WYg|rp3hXg_9RVPESCyk8q-=4Qdqm=*!Xur z!a{3aDoi-@n zvat@C|KrST$>&6UGzTYw1Si$}-n*$%BJbu=$z!*k`}A_{&a;{|r3M*qR*u*0ILCWZ z-dsQ8F3eol?;siA@$wLJqK>vIM@U^M{yOGYkg~ASgv^wYa-=IP;Q60l8FPFDAm@cy7;@$R- zlnpVW2J8udfXjVuJ3+`BBtWt>qAD<}N210>YMv~JmumRcTRm+r5Kz$IPR&YXMV^1* zFEW(U`Q!%qhKM@0f(yODPf;&Figg+`-yysqz2Wg?ftY z`G3@J`adH4?V zwHKRpN&znR%hmJ>ljBlkKsAiX&XHvxY=*qnG@l5qCn<*=~Y_jq%5hPXvG0-s-0Z5C3jc2hI|K)}^K_%N{wGu5%uY=JUPR zPsX@jHJX>~)U!@2L$a%NSh7t^LRVY?&$kc{t0ISb#I2Wj?vh>G za-2>3d%$I2c0*mQ?J8Y@xz8XOu~03KltjB=Wd9Chl`^W+VFgk;tviP#5M>XH$3#Rn zGsGxjYKWuO?k1<0qXhHYTIvu2E+#b6A|SGhM)v$E$KkbPe<<0{uP<8e(fz`%Wjhr+ z9k_~9iAh>xg6+U5r8~7TGWN@)#7qq0s-H1+-ovFMYrX(^JRv!)o=wKXF_+Q9+4%9_ zXgdl5vZyL7kmuZyQc2&Y0Suk!Y^fy$N8cUbtbvr5s}oo!l9^+x-wZCe9%ZkOpEoJv z(p7mJFW%+wD|5p*A^-v`{Mfxgjg~AiJgV;)hKedY19N&s3D57?M{&QYu`e!s6YDsf z-FXP^HJk5cY_4xcj-p7MG>k(f(fi}-H-S}!KvK2eEBTH1&vSX4+8+|@PY}JVKD>QR zDYM*y@eQ+t7B&Q7L5TA14wc25y2dm*(HeL^6;1TH!hxhdal!~7qwt~eQRjhB#Kf$$ zb3Ww7CD^x;Wk6m-oHOsc8FBdzq07aQfT!mt&jD;XX0UB1gZz#ZyAro@ z<*A9P21W7SUr{fGNf`d=@!%Y|8%588FVq;8ZuXCp(tqV4STF|CX?#} zWIj1SdfutHtK02i4%>kCJ}WyUpMINXo2a9d8}9U4x8mv!2Y7LYXop&oXj8$mPfe1W z9khi9ceSg0hX8rRhkySpfxcIVxOxu3PV@<@Xcxo?f><_Q&C~LU)(0OT0R&b=I!i+| z9faDz;pX`2PE%bsM*4#|RkUgD%>Km4)F;xHXnQ*Z8w!f-<41rnii7p;ynXleJD{bE zG0@HiQ5@CoWJlYLO|M}qyStSzkHsgF&ew|E>>Rxe^3-rY42i4Mz?EF`lDcUjTBRFS zNRXl{=5cMbY+D<^cXsE+O4wrwVdX0%+dCln_I}*VoBm^B`RmkqL{6fQEj$4^ii{2? zFi>qyF_5nzReluDfr z0No1v(HHyItUlhpjWFF!YW!`mr2$OvlJv4f4ia5()Ot{P2((09r)7`F`Y$6VN}0gM zSlV}{2!=54TBa$jZ|VFCS89KLf0|{MCyI^O`6msEN-C< z^*a-cI-S0IZZk&nJ>Cp$essTtBjaEEP06WO+OFU26?i>BrjOncc$_h`F!baC(7W)o z9BUFAwgg3n2crR=*M?2i&TVO^zR}w9m)q|3R_l9xB$n!EE-K6~wSIRTp?!mRa4;N* zrVhE8(8E4s+Pcl-4O82!JzAar5?(~0d~e8N-jMxh1s61y_V!QkqLr_$rRuJV|CY7F zgujA*7Im7OUIA1Nty~B1;Gs{G2Qb~pm{?{&|N2X=Wpjm+!+w5myy%elrfia zW8|*+DFoJqf%(OaNt=u|7MkQ;x>#f*3jHB5CthU+R~ck@u9x=Pt2PvY^@YIm@aJ84 z+_{l&#RxBt*Go=_TYFY3dlnLEmIt=0WWOw%JIx3+mN$nB*b6u*scWYlR0 zcW;iDzVH#%UKFJ-{W0Q|;^TR=-B{iePLXpEau!}?~NAOHEHRBKVW3D35wTkLpGarZfjcKe!t&NiG_Qwe#_MtMzGd5XG2P${2|J zX?tSW9zn9v99=Mb=saZn3M_z^E^5kFmUU0%j5HbsE4yT=s>dZ zO=R$)c~y$c3%yF;pS7~+-gn&ztP z=Z$X%2S?Y_FV?gK^Sac@w0GduT%!cBzXix7S;uML%G<*$Lvp?KraP4Sm$vkD2@v|<3=PrXj=Wm zA$aHaP*j9XYl{d5H}#ga%+zd-S`dP>omP_$E^m#Ub}%j~JJdV8n6Hy(;5Ov#lSR2~ z#O7WnOayNgd7iFue~%Wzlt5ioM$d^!)dh~3iK5UVX79h%Rds`FW9En%)@eP!&L4-H zEuu}6nguJm1OZei8S~k4c;5Hlc@!OQEN`Zk5UjPDYQtqI5uY8&PB?yXfRY5Gg^V9N z>XP?w=V9yVt>So#!ZCkG&|=HSN}X3YM%W)!wQ)j1+;DkK%Q#k+2!meyEkyl&y66~9k`lh+1VTBM8xBc_de;>qS!LdBd)eM;9vF z+djF0_!>i#BqccLa!@M*Pb=ULRD|eLHJu>@&F&z)ArqBcpAI_kVz?K?@Tc#1jvU?b zWk!90A{81X9K(3CUj7J=pfz1!T!eAr|uP4 z6eJFi9)C=Bji<39LIUwz>?KKwx~K@>Ilg){TLu~X8us<8LUd9@ZR)^)E~98|seaAh z@)QRa?wTM$Bsh(zS!kfN3km!Tmc!Rv7m!esLRTj0;v#gc)^~sJ@agLS>2l&QL2jjY zvC|o{0O^D*@Ce4u%r-@~)acK@PsIh6*b=v&D{6vheA8viWxLv26VBNX%ae$(L$Lg> z9N9-4!7Bw2#MN|($ac454Yq^*G)_tZ@jS;x9NLZln*A%SEy&27_yU8gaGge}SLWf&g6#@iu#t9r1o|AB)W)YTw!(>H~g6!lG(KPj#`=J4rmi7A|tKqYw+x zJq5y*yQeTv*80V?UR30fDYwVx1=#b|nFZ~@b;!{z9wz}Qy_Ovi>d(r$!2R_>DcP_}$QiDa*7zSN= z!1D^gqNGqc3{n}v_cF&OgS5Z&ZdsxhDf=~!KPXu2qNmcgP4%dc)`{NStNT%unRa;~ z$>Y$fzVAoUbE5u4r^v`Dpc_TL8aHk|vPT$A_T@HHF%fG&pIdiKWo6Dv9ZzE6x`lz* zqiGCwce~1Z=UU9u8^MIjK|<@ePj&A^?Mqg2!kYM}(L6KkQ#`<|t!PO3x z-k%XZ%8iRgNu%(a9Fg+t1Y|3AgKj(e&bX`g2c(_pM#uV8z{tk3ZR3UCO%5I|iweYl z23%VXkB)%bqC$vMdKnIVeyQdf<^|bY zC*k!g-Fr$%G`{Tv;ABJ0cBL3`UEX|e2sRF;7cFl3cjXgPd*myfi`3^NDg>oQJ~gV{ql6#(h{V)vk;JdTP2$pJCJNc_q%(igaTjwNYND z$re(Px&A75Ql?us6sjtzX;1eoRkZ=>2PhaL~&Y&0q%*y>t!0<7EUo%FxFT&(~v)Uof$jP-Ld#WAeEwwg9qlWE>=n+ z`uS5#BtnJ54IJINYT;QJ(dR&XcNT-b1NSdkBZLSsz*6ICA~h z@TKN!RLd(M7Ti>slBOy8aIqaY6;&PwUOvi4HsM9xvA95}iLI5^MEF zf*ZS&Sh|#MNI76blDg+nKBSJm+8K?NifxYajL{t|$MQF6kEM zdmJVuwNK|<=cf?MPv9#as7wtk3?F0FPN;2h?-$A)K{9C^#M4e3=PdT;<9wPqNtsds zFh)#rNwv22Bb}v6pAnK^?4b76h9~>yNWuoORHi7dExC?V(h852U|-cp5jB=={O#$iyC@zWd2ZAO!@-Z2AH)!F1)IBT#epHF00b@9p$pwvK_z>pe`=O&xA5@brtLMU7*FU@W z5{(?hgT2xMa*fS7eGhF)uiN!M5;*&x%O2ccCSN!<1&R?>WI9purjvey(DROec3y!U z#Iqb$5mcL>2KePNNJD4;W*&BzcK%4~6dPm;*v`ECCu>0p9ai}Cz>-RsqXh1bA`7$$eRa z+?S!s`YSJ<@O$9~ob|rH(W;yWm8~7aemMWL8;$L{-Q(WuwB4~m4%|ABp^~Y%-LAM% zjW4stttT#7L7hRLXl=A3csO)o4*i6dN> zrTKi~?PF=(=W9Mg|)a+79+n~S&1B0s%8ZUcsm~*s>wsRU%^gcjO9Kf2b9dyPD!ii z*-_IZa;;!3R+~}lHd4vZial|pEfYgimu-i|s;JaR;VjV6Cj{qKd`-kEQ|s?9u4pNe zNYR2>Gka)%vDVc1{wI3$G<(L*d(2S=N<8sP%}x0SA_&xrlBJzuZeCHum!I6AL5dqa zte(68qGzE~g^6a+7-Eu^qpFOAhZY<8DMttVv>RChAaa zL^;sOyzKpeoMUy^6B4&WHiAgOG#78v%wo1Y-$<*XZQs6XPr1A?KceH!Ayxm458`2K z$#w!i%v`pzu7F_mswh~rVSjASBGtqbJx%JQXJND1yffqNscV9v~;4kKXbBHTNE?H)!-fU zpwD-5ZNdk6k!$vqxCM@;`8bm6I^V~JCa8LcX^LGZtf7SRSoE+12MJ!8s65pHb{Q_X zC;mCVPvL=d90AaFZ+%<7?v%x1@=B$4&TabT=R6Q$7uPFk-GrH(y&;>C?@~u*2YXBX z;Qo1wOe;;8tpX!4x+Fyn?>rQUzW%Qne581aK%7%eE@i$NB!P{>01v}H8c0Y*EN**x*f<}J| z6`rJ6tDBm6WjcH+3@7u3RMCd?2yp=$tr~qL2B5xO8joii_NjGd6_kI&_leE`ZM5Cz z?&Fw4?NPslKa!P?rZMLZf)1x{Qzy4img5`Jr^24COw-Oa-UOfaqFVS#R~REg4P)Fs zxhlWl-f(tdo%Hhl7jyJ8Lxy(dzqHbC=sbv&n85#K<4p*S9?kI|ckeHYZ{+_UqckEY z^gl?`|K8{o5lj4f9sdQR8k7EiuHUR*=ZpVo22SaS`+r{^Gty(EGMSv5;8SS}R&;Lo zub3Wns=}S|Xk?m06j0Ay#S8s!FfK}Ra(XIOO8GYjbSot3$k~^H=^u>dFyrwFALQq> znpW3nV*VT^XzCK*1JCjdCzPdqIWWs@U&3m7^@pi}jV%w|1=)F@IASezq*Jb6kk3(T z^u~SCiSq#J7UTY31*U5q^Nl)YSdtt!aa2^WNCx~ZX9Kgut>1fWhE#SPrzpdf;jy*-Ellg^o}GFm9l2JmE;5 zg9)4Ws5BlU%RXv~b`*5SJ;y1YHg$x1aSbhlzR{(E zBR(-qps6Gdj`y4vUrRyBN9hO)S7gXNxR8*MlUg&TbKGZ?+6OQahjkrJmnubMR*wru zhQ{toI0>OjtBo!8#WGK*8&i!XNC$TQ9D&1oxIE0n*hAc>XCd3!iR7!5UB9v>$F{!$ z)g6S(Cq0mQI2ULzelskb3ag|KO#eIj@^8%WZ`?=W;0)dRQ${jy*R$>Vyq-qupRRY- z1T{NRse~rN^O}&`?gW?js+v^?iTuBY6svqshTA4hm!2bIN+1)%OCE~-CWAB`C(tI_ z1S2ziBQ%WZrpw=0{+CrI&A_dd#xH7T+{)joTv1{%Bgx71@mf(D_|6z5In5^)8JrqVTCodo;if#SVZY1N4D{D$um)T3E+=)wFOHDo6 z`ns-?y+I&xa~9T8yC7MYV>)Kj8R>H4{JlUcS6`RX@E*Pq{TWe(T6)EG)zk*wYL7$3 z5~f{CyBrN|oqitkx6C9hK9}JpA19tcjLEl5uX-BsLyjTrcLGXL{okC_Pw)3CtlN@L{lhta$g%kWJKlu|Eb zp=4y(_SE=b zFPe|%tx<(vsk7VbLLaj}YI%F{_;a+HCypx~U0gPKYAU!`!RG=9A?`oQxoe8VRsX-W z0JrBks1T!dgm`GG#AG6R5Q-7&qnrC-$7od@pXl(2(xTcI+bP@|2d_O~c<0cL%gHXs zsTRhW@jG!bg4R+B9Mw3#tpN^y@8PuX@Dxj3ea@EL7*O%Ut0+{`Q^Th2tng;)Z1+oS zR3#6Us;W$I#6+z4CpSNlbq|%cwZ&H;-59+;ku3gHf5Rg87&=~aeqg1^rKbg&@MS?L zE>1yBhuyq+l-~5C+`|G=l2|%3;RKUd6%l%;mg{$13^Q7T+w@r8sk2ATOYeF>*d-7K zvxV)Rqlsi`)gy^e;>~H5a(d|{VS}f|{*(A6eoY~0y%C8;S?M$J1%$hWeRYh|WN@zQ zsjB+%wxXaJG5Vka1jgA5^>#aN41`cqRY&aUQ6aCOgboJjus6cT-weEdD%fA&$GrKI zpE!>zW+q=^^r*YKS|COUPe^Xje|QchmCScI9SLpaUO1NyCyoqKbUuFnZ8v9<4mdS* zCXmd)%$wsrjIFlZAXU+Hy-n~ViSt8D={PO?f6#VL&y_x3xQ}g2teMyo+qRvZOzcd! zV@+(^*2Fd@wr$%xPENj6=U3-1I9Kn@d(qWh-K*E?XMG-1?c=t|j|En@gF92TrRQV! z^RzGXQ!u_!5gH;21~z^3haslxlWbQ#r;U|;Ps6R%w2qHngj2RyZT=Rs(dy%LMrMYv zJZmi5%!!7_uDnu#umEGK>kQVA9Zm+hU%FasJEJKuqayG``b(J(R#)@v@}f(P%Y6A~ zlWwY7vm$Ur4B6e^i$%*_8TXScow(7i=j?j4s=D^IX8m6_DxO|>S*hVqpwv-t^qk-e zRw;NRg8nErNUq~qa^dc*#iN0n*Q|`H)V1>sPkJ2LK>Am~cT5WE|8sQ=HtW8#fDna~ zvlM*9gFqg>J=uS8krZA%NmP-ds$MLlCnI#KQB9F_N-7nyR>`5nq6D#4UlzJVlA8^i zm^y^gS~gobS;jVL({wP?hEPeEI_YW-^gBhkwbBz}qftb6ux2dFXbxG3he^!QtdUzB z^Q0I5azo-HhSZ;{DU765Zl{Ng8H(5fD`IImXYxJD9)p=0sq1_cOxa9_m+R6Io zfB*$8xKvtG+VlEi;~Lt&`xRL{Ntm<#?>=${O#d``vKaiYqXlsFLGw9*{jrNzxIld; z!_+B2#^5B!UfRnw5t8be+w&jn)Mc+l_6!YEd-EH&&SO7LhM@6rB(Js#QuY!%RANy{ z(%Qft=E&oJ)r7>SjHu#!VB1x*5X*u`qJZp9e@OKQ*HtK=LbILj)gMr`|OgW_AutRMw7FXb&vjyYT>@?vOSqD%!n)Xq!7qubJA^ zUvW0+Wpxe9QLy z5M9l7W{(kcqwC+N&GxXS$t{3Sc&_H_VSnr#yocUWRx^Lhs5*mcX4)yUl*MyD(dTn~ zB@aL98hI5|^P5&?37B;$)t`F3n%G?J#szufdilA~l><<5LNXa*r{Rc9%} zR51hh$P44;>i45^yI&?srR5YTV1WMg_h&#(8&Ube*gQQ zU2|~(y2)iX!1zSLV#}HwC!0NxoaSfkUn1)x`4V~;(jTnOBE_oJc!t)t3>zK~5Guzr z6cMJL1k8T&PTj?I+ZGbQu{wC_jh>1t`rPpZxv8oXH|JkDa}dOe{98WvG>FYf`PfK1 zZ3fX4WxoXH1P#PX97-IVb%~&`e41m`7oIacycCg!)?qJ2M#Scj$7j_$TFHi)B(VG( zv0NO%sfZ1>uPxDxVG3_|KHh~;kwhx9?zrccu=6F~ka$eLCq!R@EfA!&=4Yx_bw-2m znRobLnA#H3oPe{h`*!n*SSkndzbu-u;;D20Dk@`Qpsh~byL;kt_+VY|D9#Q@2E|Z@V~mzvu-U|Mr0 z!oAv{T>ALWjX8W8RSK8s{`03DPoBrFpi2S6{j$i^T0fE|9M&phUIFhjms6O}@b;K1 z!XysMbg=m#kwWvM*!{ily{C47O4)j?<#!eCXauD!SSG zTXm`2rNqEXD;AI|x_d}P z>Wn`-FY7B>)iJ=y1o%A|c*}b~VshIX>Vh%y{1trkW=jdbNl|5XW2-VD=67W)%ki1q z^f*2cyeIekcOeB{NTaPuZ06~b`k;;u(hOQ5Qc>=u*}ySOIoW$DsB2-_*iTbGutD@^ z{67BLl_?1f!CfN@Qf?*Q_ouDW)0Qk*XJfoLHaA!H!!9OWDxjvRIGAJj1%^)x$=BW% z;CopQM5$Ky8bWQ6Gx`39WtjT!?#=|bkdnIo(EPzcW$jz$8h09~&1Ch> zXtR2*r5uQ0j9>WPUF*PyGyEGMdgXbeb;+-&Tn4?VoZ>4)7_8K)tz#{qe z&4cyVf7XF*gj3ulgrbIf-!)QXI@-VkpWg;T++4B-EW7#A);sH49|xXeGe<8?b8bf7 zCKM3Q(pZgoD(K{p&Yh^5-<#Ywz(${zBDSV&cL$KhQ=oo;Jmska7AS1CI%7Jmaq2rt z8IE#1=)wH+8N9kRe>#j}70aFX?*cz2*I9Dg0y=$2yl>ZCd|93?PtI5DuWp@UvU{Ya z6fQmYiL%>|h{IoV1`7pzs8v&-!CAK9ln>u5Cm1b3O4p^Hr}PxdYCs{ zjW#ivO?EH@g2xPz*4*)K>Z%MLvr_%cQw{AF?tBrzCX#U6r1>L-ppK68 zw9<0?LqMk!)l+PV<*Gn&Su>^Y>)NQc$Tf?L36xLqOHsz0B&~VI zJUpi}--tZ1QNZsFbhsd`%eq(~mOz>;Iql)#uw!aqUTh_a%F!6`dK# zs*;r%Lnw10z$-2BdGu+*&Jd#gBN0u`-7Uk&Q8>Rv?BuqD8S+)L@Yxd z^I$RhW?ad%In4zADiz|dg39RS0iCb(f9S70Id7s2X0fD26EhcmZ|%2?yl99CA@NS? z{B1c~~?tzssZt46SrVVUD>s=}DNqC)alNpqL=QTNu0 zA%6Ew>-nVFv2=5ZaUr{2AgaO^da^-`2r!=I{EM|gb$O+GrZ&7@9+rbKe}3LLCZt8E z(6SY-W8~7hvz4tEu2Mv=DeS-aftqfY)BliluM6<~plqWHnr+a4R(9(s6raWOxm<~) zKOXIg!}M)ms?fhvB>;N`AfA>OUmX|hF3_ncKdt%#2C&-YtVJb zLxK{eHKYUKSSL5r0Om>|?@X-2PW}_2G>|Mr(=~nk9f;1a2 zcVi<|)19J*uy6Sc7JKxp{!6GHH(lSa$K7tWh`oen2S@hQ>R=G+ zenWCqgIhg3oGs3Rfm+!Mn-*Y#^>b$xq?~@Rsp79E*+BGg+zFzZfk%wztNA1-uAXV# z*_1ujoK6|@0m7%9br~s(!{B7{q-LF^sDdjsL}xub%kdO3<;IHCGxfm7%Jiev-1i@? zB(ewG!F*HFBoN~=kF^Lm-8g&N?tDxIJ;2<)fC{1nA*dr!{i$@LPXYYw#J z%}4c)5lA;Ma3LlFi;Gv#sAJNp+L8UizhO^+5-7G{%KWlx@LNq-GdRnK-5gkM{PGrM zs9xvv>U!HAlb`#k#n`>g#&ZZX*@cH(?sQ})BkeFHlZAxV^U}d_tz4I5$iiE1N2JR1 zMNbH61Txle5s@^XNM9-mRYz0GZh1$X$f8c${#LvNH{p(})6tlC$<*9>k6$uyi+e5h z83st!wB3^k4_z~EzAR{F8kuNhTB=K@vuEn(mVt0v~W-E(rMhUY5zg31nh!^EWsBU~tmy-l zz3Tj(jgRlDQX4Y2zwYGKNC1<7f7Otq$`slb{W^FLsK|OcMj*_14cu(5ULI2)o~@`= zG_K*EzAj#+v>wb#t8-fx;C*1cIDf=a>Z#lJ)9g3%+j;TEv3nfa%$jfQnn&#xg8#JG zc|Fu4(y@{fX#(GWiFV?+L(uL)92Fz7*C|hBdmN%S<_UlepV{71ig|I&=D+K_O&z-_n0iEBM4B3 zAcCcGWzmybiJ266IFHnOr&_5dL2!B9ihmIUF&sQAgw6X2dkWw6{ix1BZ zgWU3`V%Xl6$0TO%HK39f{3oAv)T-({4rX1gW7`a4iA2nuKfS=d7l&cM0Emt-!dTsb z_>(o26keTmk(WbJN6VHzlQ zLmePd>dML_@T|!vle>Uj-?jOtxhohI;7i2*BIh%MEwcoLCe=pLb+goZv#y}FXzJiGg_N5K35!J(ykaH{t@S-ClHR{3zsr?mr_XWI=eD{~ zCTwA(NB>ZjD`}u4qy53m4R{hw|?AC@Oj@& z(BrYCBUYu2=Q>wA)zWgj6gI>r*W)oWL|zgd7yUvNlAmtW6&Q;cjeT*@dmdBf<9hg( z{75(sjgvVx9W8y2#~QqUaJTXeV$qKL@4KO+|GMm?`GPl-!$6iSw@=@So|_5@5`E%q ze)F|_-Y=#8kg4}S$ddZQqUK0or%y-vz&ke=VqYG?pqFqR7AoQ)hLT5!QTLt2_Ai58 zTsuDQoUWnI_^zR~3u=AtDBf)MplHRd{_AlCJ%=@U`t0t^tOpvxFE5isHLr-|%keRu z2`Ws}Ep~^8SQxdXMI$rwcoLd}E5*s;{(V`zcnI+a%C=ZBIiVQRI>eTz(+qIxms8U! zuP5kB&vTz(^Q*nql23p0Spzp4Bi-ECqmOGi)y4?!&3f$m4W+iiwj{c?W+3ukbObuc z^Q~IHkZkQ3Bmy=p+q_=hMA|nb!E#oEYCV4!4NZ-|6^8S8{WIXQOVe4h9y4a}Xp;@3 zenQ^-;N1$IkfbqTDIdXMLj6^E>yB#)iSN%-ddr-cC+VTOy;GG^dv?s_%oMO7V-puj zUTs)8+DB{*X4vR{;}kTFU!tr=7icJiV=@o;|i-qiR6=D&!pi~W&iQPIdfbWH<(x5MTbUwjra;f zB2r?d%kSSoukwyQ?kD!RibysF(T$orGMX+o7N+_)4$odYeuO~L%%K=Y38r?6eCHQv(Z1L;O52RLy*=BphR zb3C%mYeRIg^DN?vLvJ-B1)ZK;k4*6dGIt@a-_P&_7zVS0+cX>P_KYs79P@f%919ul z=I`uK>Xq8h{2D>K6GJ3FFc2JbYXaI%s_!HQ)%944>8Pcd(S#Hgb~;9kQ=j+0fr9hS z=M!T8AD-_se8q|AZUDle`ZZ^w#%-ZVuY3Z_hUrorV&Cu{Lm(zir6&S&>XK z?=412N6fceX3!D|OC?+tL?PRvx&w}47)=K5IiL27r|ypVn^~y4Q6Xo|>Wx0E=Bt=H zhlp%_1>!mUGIG2kZ7WjlZYxl4osXH;Im#luT|<7`+Gq7{t@!?2k+esh{&%#6$$odQclM&W4zQy$fAL7CioU37uk9ulP-B8u{MuWWJfU81#Zd z^2(5koo{%k02iLGOAXX1{4q^K#&7%~-&-n;^T3@vhI7v7!^1G!yu9d_LN7bFV`4zZ zvjVZ2=+l^}@w6Nw(nc59sYA02#Ku|4RA@qrqY6{`SozOcrhI(`79Y~P#J!W73qFC2 zcM5A!Zn={rn8~tEjLRdlZ?Pge;W_!Ej=HYktZK65f(heT=5ndv_z=V@?b+i`dG*hB z3kr?G-*gfHp_0cZ6~>fkzhmLU(lG{s1BA}NUOiL zG!~x9 z^1Rws)XbIx_yDWkHYl7y=5wuoQl1UI0E#h@YLH)B8hI_x+m$Ep80fQdPZB$F%OqF= z<>{!$YtBJHi$#kh%|95Q(U8>mD&l;)_y@p$OTE#Nl8dr!x?JmB`nLZgIkY#EnGJi5 zkG!_<{W-R;uVFULd5^#2e!P?K_ahPCThHIfi`a?S`s)4opZaC%wJF}n!fzuqZn5JT zwej=d{l`1d3%O|0mQQ}e$=n^!4`zv)!XBD1l$y6AC3H4jSK2*wodOc~V}D$|rK+_j z$0-`O6^E*OFV)vd?@bfZ@X5}>17SP8V0BRfrALp4wY$^AJZyiy(&ZU6yQBJ}%ftO5a#>C){9RYb28B#7B_0KAQu9j$b)oy2wf=0*Cpx5=G#r5J&$JO#WL z285l&CDI-yX`nm)b5DT+^U-UKDB}hNpAYG3EBe8}YlIQ3{AoAi@BQUwM5O@L&Hh&L z?bAl{&9-;<(Z`5n!lDBd@Dt=**T-(N)rhL7f^Y&T)#gZ%zu#Zp6bfNx zlnM8nl|NfKn;@kV&&Bi0+uJmZ=9Xl}<=&+})vU^8DM9AxXfsHC^!J-a4MIskfzMau5x3I!UwO zoASHeh-?D|)WbsZtjY7hm{MG1ck)R_mzApK;4k+EB5 z7HW&054-si%q$^k`9o0eH()ibi9|3-J;(U8!pVB_RU@`PF>6sFe!!!vT77qUv{KLa zkqW1aT3c?qegWfo=)YbzpE<~{ywXwmE_ZGZstEupRH`%5b`?trsmtkv%y{m%4ONngGRT*(s+-e$;roz*?T{9#KuC{%bep%#D0(a0X-2q5HRhAjBq? zk9_c4V7|eY-l2`f5d5DzVe#1SK~7b#$i7)TNd!&Kl>F0vnfz+J(jVUE0T@eRFyh^&* zhSyJXX|n|Mb7FbSNT}%W0x|xM8bMTm-wXpx-J=W5_9f=7skdm6xK6~XOr?88OT>r4 zQ)>>F&zuhH+DlG=8_ac=*M8^m;LLeF1Rj4R*q*sCT_)}**bfjFaMCJ*GQx80N~KD0 zlvsf11(}k<5{5qnsVE`%j=>JG9S^J6RF}wEE^sJ<(RQv%qdp1;p%;ktKP^BBzv90& zVtW%oX(B4et${r-T*p)GaSss58who4mVZj}k<5DpjuXsX&ut7_jgKQrmpB!6hg_lS z7C+bw;(jOnY-&3VNW7g~%@g+}2lj^KevPIwyj$aQpSv0+@gZJ9RqX(s3jUm9VIHkG zao<^pv_t$jXHBiyhQI7MQ1-wviBFtMLs>QtkP(?w_P%Cx&+s&dg43LL8ZQDmYA~Vp z#%Fn5zj>-1HI?KQhhI|Z599HxDkFGgvn9VhYG9nq$4r8y8;vb}?$#oIvz@cHynZ+u zr2#?HZG_7Aa!}p1yj5AdS)Q(~KlEr?AO{uRcc-pR;lcH!Ep3KAk4nDnJj#~d(ZIxX z2gnW;in>unY@QR5-6G_PL+$QjHxBmiC zV!L?}^CRfEaO4NT6#UTKaAp0&0@mgd;EgpBS!xUZ^@s^?1FqOxOrM#ZNHMb6|fbT$Mzk-aeRW{%N!?)Gpq( zX_906IZDKmMnKg)NWi(?@A*tqh?UuQ#dM6UR^zbQ{j?9AfYMr1-8;5#ZNI;NNkdID z(4_DhvkcIBY;c?<$wef~dHYPi_{Ri);h>?bfz$cXn9^C*!h!$K6Z=mWG=puZ=x zT>PUo(kW-LDDMjnT{W;T_n^{`jQ)XH>%*r0kFB7?a+T6@B{S??uh0khIA>)mFSVeN zSQby4f~lgNOedFIPRpb^K!IJ(Xd)O9C_;MiTCf5`OpWzwrW^r@G* zs6bd7DO8z_EH$LAB(yTJb$#W*`kDyY3VpA_E}f*r#Pax29Z3nJI=hmHQbXoKxw1rO zRvK0H#FVo5coua4LHG@eR)vhrsJb_Gv;nqhc}t~?c%q61SK)UDV@a4ZHEGKP<{n9+ghEbeFAo1F9y5sj0(GN?|1g2HRN&@!@-9}wH+m?AUUd-IyG;X zBw7XrRf?jdnOpggT8$csuhEp9!l=@imi=B1k5XmL9hH$$6ZihN> zUPT?ScRNpf)Z1pIuA@>cL%VS+hy622LH!PgN!h6zP^n?Zle zYf94`Gy1h&Wwh0(y!y7>2P9sL?`goo$)TM-S3y%;fzb42sJ>^oFQ^LS1oJfp5WGko z$I^ijf*qZGZgr>@G(ZvKsd3;2D-Aj(_cVIuM{xoCaNVKVjM4_EtdCAVIPNYFY=}3j z*y+3ek`W6d9U>XC$DMSNcj~gO1L~z4@3QjoJS(rBJF?4f1ND|^hA?H!5(c_X2;JIo z8luGv+Gl(go!3+xLRnSvuy&OE&;Tm+jy9N;@lDMH@}kmfqDo&$99xVELjQ9qfSYlo z5aRC`b8)7Pq4;+{*gS%#doBRa0X#$4`Ff$mfn~bCe<Pk^UoWG&toJAWp^@wsi12 zvgyABg|z@5=i%#R&7&-j&_}TS%nfP^=1f+=!8&FvM&!QpZF~V1+STO5VUGXQH^!cw zKg9{yQ?N9)F*;ppx3}v}%k8m|m6;YRZXF<60QaVW7tQ{&%I@jlgGK1jS?yE^xQNU7 zW@|!tY)^qT9Gx5~gWP9V=kPtR1Sv&63QFSM+jnmMKNfSbQZ)G}2y6yAi5g(9fGqER zgJU1Z+qapfohOSVg|7AE1KqWGMz*ZPal-Xv@*=a?M10d|&+uRjKwX_vfeSvM->&kq z7c!S(hLVX!qq;`_YZS9#wbDj9Ji*}Bn;(Jk3RF%aoI)~dzD+}l8cl+W%ye?%Hvo<+ z3(^r|gT-(u|IK15Z)wp}>HRjAvSd(CX`k^QImj2W`ug!yi& zBO~%rUCo3;2+}9oAZQh6H={NYxC}uIVMhrKIoI`@!bI!Mw#zS{4U;}^=94?pc0 zId6}O+JNu9*hNX+eK@RrC!geX(i4I_Ayf8lXmYo@?+7?5t1iaDF_ zxH&?^_eiK)mo9U-`3bOOSY*hgsJm0(B93xI;JVU;ZU{`B+Wa=CxHoG{EPM{*iwQ@D zrjr0 zy#$UBdW+oA7CNeXMQZ47hK-uf0ViIF^Lz1kUwdpto!`)^Q-%DrJlul$d|JNL*u`kf( z|GK4K_;bfb!(lG$R;k<9q?Pf9uZ?yT<6s-+Qm@;5VP!JzDs94EPWwSae3JtnEcYuP zbzt(yl#ivzA8X@bXrbI9QOWOyDM0Ur+)qr7Qz; z%RwnQD0;Y#o^YuH#JlT#&p{OUll%9A*q2>>bjnXx-gxMSw3rHrI0^F@H8{r;!gG zd~-;QRYIWoTY6>x+Xhibm83&{#4>2}&rMaMKosM8dWz?DEp}FcrBgN^3vQlWJ*cln3`L3c?-DWXSk7GSFHa+4 zoRP@_q+I7bAI9hhCBeTMeBk#!P1baU&O@d8_v!^N>L)%y3S|S(u{G}_O{byz-GM+s zCZkcMIcJ?tl6(8*$p2*VpS4dj?e|a^PoI$*rtD-5pV(aAy)XVJfA>ZB|1OvRe`+4rgAuo>*A!D$(+v_HvMk_iVAr7@rFG@Ua% z=OC>cue>CVW)LS^!KWa~O-EEr=9~ytmM9k1kagGrm#(Iak@QNbAc3a+r)!qskf60% zb|P$&f3f3>@qRNpD&b3EA_`Htc)AZEiIJ`C>SI(6yF!SH)R+}LZ%FxsJRRyp!6!}n z-9p~l-?O3X76<>C4*9h;oi?*~&!-8QZMZ)4UF#)e^SN|ZbKSh-ncpG`7G*85f_5#l zT5cu%epU)Gx~P|*zBXgK`6kP3s}7Ir-5HH5QG`2z^c@DZ6!2^!Ot3Pq~ObMy>7Zgk9qO57y zCS1=y?PKc?Ya_EjGc8pl6IAGk7r<%IVA1P{3;DG#g5-Ske0C_-!>@?<2g=t|dC
~~B#e*Je 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 yM-ljU^ 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 literal 0 HcmV?d00001 diff --git a/windows/deployment/images/UR-example-feedback.png b/windows/deployment/images/UR-example-feedback.png new file mode 100644 index 0000000000000000000000000000000000000000..5a05bb54e154d81650b4cf4b65c940c2a6753979 GIT binary patch literal 126533 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 {{s zr@8Ng=(i`LQo;6KzNgedIJJ2r;H+yg$#vmwfdj$G|!YMd!J?&q_BQH(V|1XV+vrG%KA94{Sdm)K#+E z5s~bLh136*63~>X|5gUnK?8%sO=Rs&sQ zDMe>EdL;iHwU%Q0g#45+zOe`%uIu4tkT*Jy?$v(WXL~AMZP{5^i5>#W1;`bN3+L83 z*fd;?!T9!PfK~^yJp!r+=|2`IZG#eHtd724g*!%}Vc{mbVd^E{n*J0#?~E^?Hcey{ zfK{O~>!dgiIdJMoRoc4vb-@s1VBGMV+yLhRuL_c~Jk?G*Wo&r_{NHuuzaNaqs`a$& zdl8|(mtXeZu2<}TH9Y`tSeD2!-%vD=htZ(~;3kxm_Ko5SgBq9+2VUD(^dN&N&2|;8 zkMKJ;>N%J~NGh&9AIb(_qiD}B$zPaYC9&ZOxf za(7@@UV{*<)`9&HK{@fLk>M9C4R;si(!{p4x@1fA<5a^7kTEW6l>l zn)fR696%vu$rSQHn=fFtUlA=i+iPn_m;(jCBo?E|TW%rBfnxFK#X-G-#}D0b@o=hB5w?St z(4r^*yYIiP5*A2h3cmb~Y}F~8#Q+}sg0?O2w~czLRydHhILH|9FR~F*xZT%eiDK&E zO`gJeZ}%U*;_EV`IR*J7Cq0ibSAMw}b^=N=N6rv0=7p^zmE3F^K+Od)(_*Q++}p#F zL{+o$ywvW|4z)&KQhAS>IC$B%Ab72P1-7Y8`x1eDZ;T-I*4;R$pCT`_(U`3#$Q6f! zRyO($<_*IC>zJ)?2jbgJ2Gf}w@o19rLk6Vyix&iaM9Wg=oKeg*XkY#|1K5Yo}Wc)8#m@@|Hc(Gj=InbWC>++^*v47PEJSf+7eL*sS-Kw zp>iZVpSTPHG*)w1n~Q<*Yx-^Qaz&|*z5*@K0v{YcU*s?_UFJq7C^zv1ZStz|4SLhu z#&!67>N^x4H}h)RM~s4p&2W@~j&8|OAJht0&;Wn@qxhudJ11{605ex?3HY3$G=o|Y zDzdZAmL4i_ny~O*U1w-{5MHn)-)DEY=@aH_Hvy(q1;xD(pYvJ|9&zL&Zo4Nm=SNB# zJ^X=WGNnxK+WniA3XN$qQ)k@27TEm4BTrpOrVaVUDb%x!V%tp+nsVK97~0@2;FWlX zo2RQFwuVW0dM{jcN+L1wYM&>1XQyggdkG8)O%xsvqM6|NC^Ayc8jXs1qPKO0yr8p``;1E~A ze+!_^|8kdx!F-|(2bCnep)oH}Jk_t2a`2ua5RD!*^S}qJFIeQM`D}C|mg6N@P%D7~ zIy5en0Tbqg@W)h2W`KX$c_=@6+1IFe|(N9r%mNNNMhxez>q>TD|xtT|8)T z)X~Lj&hkOPvdp0Ijk+H3)Us~+i{G?j2FJ(IfB%Saam{@qMO+d6lG#y_u48ZHAa`u& zP`>;KXSI@Dg}kdQChrkX8VwXE7H+v2xhpv+wUSpQR`F_)tR=eFr)PX?c*UzyfB})y z7bvQX1tJ_5U(cCs9@!WKQ~OZbPSci#3oD3>fbFIo7f8b9=^oy*hEMw>)r>Q=Iyj|y z%wHLNJh-VBvS|fr-r=%x5w-OS`RO3c@G*(Js%EuVGMxrN z^w!=qsPth7h)@+AeT`iWKHlQlceC;eDqS6j4?aLc_BZqW_9B9#wyKq>tb!wMIs9tp zI%^zJ-id}DkM-~bz(a<)r1Z2!eFHvKJ05Z!nhSc!|9RC4wN1*iopL4_0?*W5%xx=5GH?d6%C#1RKVU#-(=&_X;MFiHWMYNGRUO5`6? zr|0u=jZ0pYjs+(~?WG1T68>URff7(QcUwZyJY0zl5f-^%=I2C{>X;EA$;eZwqiIy7 z*e4)c54@`m&vR8$r*rtv4Q%7?%2k?-n(Zf_U6+jgVK9{P-1$#r}|V+7;EE6zLYcpi8HqV@jq@A;uB@iL6+wS*W9Is z1w+dFmwk?UGSUcjV1=inQR+OC9N)nGc)k=c)29RVO)f}| zvg`9Cq##Je;6_QrG1|k5ycb^;!<{{59*ycueD9H?1K)Hz?$Z{RXKkx#8deibdChwd z{M(>z5fZxkyrJ4-sH^cE{%9@FRPSzL=dcD3ZJ=^+gog>8Yy@*49uP+R9@t%bch^h8 zi+laEzo0Z8o5wM+lG-5HgR}5jWvHJTT>R0FKuTCn84>AL4BqQG#E|EzQTa2g-Vw=m za?^x7QY{k|?XSuvK53{VJucD0H|TJuO;ti|)&LmHD{d&`{c3u?J2*a!I^|us7Qbw? zkhdh{p>vN89^)eiBIL!dPI(^=WrHACmu`)f^YauP*5k}v+k#< z?}fwCFXbk!nK0ODf?lwNgfgd21m+7{eYKn1l?L-9f>mxkOw2CLNu;<=3TTe+R$J!e zK(EVxZ_8MBUTXG*FB^W71%F~=HIW$bfakvVSo?(VIri0OydgF-*_tzQR=?oP>gI%c z3S(Z@;r$RUiN7%wcB}VVy+S0b4}Fdr$^ zS7FSSqksVkIlAU6t2L7P8ARgFp@GWD)4;CWGS0-c$?AK~kOU#75(##lID@)WS7&7M zgB8NWp6KGYihxmR4bDg3+Zp04LYJ>jkoU4W@C2w;Ph?Tw7p||M+p5wdgwNbc6F3Nd3|h5Q$y_bsXY$=EpAB(JKpZ3)ELC* z#igj=(-?IC{VQ6p-PBDBj(Rnrh>*q6_;sL6wXd3_K$?(UQ(+IORZ___3I6pN@nCs2 zo}(e@_X_TXW?9@T* zhH_wT(A z%`!%e-6$pz~=U_cxn{Re4 zyrSy$@)8B)3!eY;*~(@*qzJk-SA=C*C~!c$@fVCaW)J<=n-f6hK6#|1h!gsH(_>*# z^5>M3(r(ys!L`dN_2aD!U$w;~S@WtwWWNceSgL$nzMnd~RxmnF`hEOX z*(-UYK&-cz?UwN0HjbcguLkwBt7->#yZg2jcdct+IsV&Q)@GL+x&_QSE-MED?OJx9 zW7VTM0^Tp?ItOoVhW6&6e#IM#<35{YEb3C}uQ~gX&%{t#A1}87fjBQl_*$pQyvg`nqp|h9BsA&;a!WSJ z#8SJ?M%cSi4v(>oARBTBtDIE)LYFlrl9U+`@&P{EJ{TsuB}z$nR!OvXvaQs^tR(C2 z!>MnR-Zp&GX?#C)_^dV$!%#~Z9WSi3RNWjwq>mW}WwIx-@yagSe>9(=se@${*WXii z|F$zl`D>^2t3O;amppY8F3O&X_pZ*ZpqWE*Vp8|rQ*Nd+w-+xTTmKIWplFHj#Zf=g zR+7C$>W9f-y?267Rqk)Af!y_A8q!Y=!xP7{6t8P_y=R$_&n+;A$J{J)NsFCH1Lf#n zueBmr=tNpxzFFZ#68vz=eFCgcz6z@>^*H}rB(F~FmhEQC$F(VaTuPG8V+q;z&)Dgr z>5%W1QLNvNLaN}(+9pNcKhkb4;O;2!($dw}3UR$!c;C0Y(1VrL*+jR_T4HjG~nqc6_-fZqL5+HbW1aQ zb-6zHLvz1lJ)r5?D(LF*h8#`U^MQ7T(pNjv>%NkM4E(btO${&i(|?8xE!vZKcy~-Z z{+2YnGJWt!X}E9OKx;^P!t~nL@cK@`*}I3=XzOy}D?W6X4x^Dv5e~Vd0Q!|monP#9_fX8dVlJJE|6TVRc(_@N=3Wh$7b;2B(+GfeH7lp^;OES4w%@Y z6Z+*q>QcabKU10gCGy5i_PkK)S28U=RYb9oUWpQwzYAi#wEzeWZ=K0f@Co>~T&`pm zcu7EnerKh!D~!kWD79|@ILkL2l8#aw>T^5YCytr-_hsp%f1R~IJxy|`qsAi^2RSA% zOTFb6FA}jrKj)@|y!&vEC8ql5m;ws~Q)bif&zqY|bR?uiPujtEA0jecQfS$-{88-8GzEi)+D*&D4n_PN^d!Yq0- zGzsl<`4Hp4p1oJ6RwsSELFve2qeO^DDKx&V&vO2>??htXP@5D(-SRS?Il0+!(yOp7oGB{d42eet>Mz(3`HX@%5K=)?^}49L`B(#B?qAp0Zn%Ax}8xc z9vmTnt7g#IvQYcx$1(N9X6=%zW!6}a=T5hE+}>sK4&UbNPHf&%@`plz0xmJdD0o>2 zVeRJ~nI!6WOGgfo(fQWV$zBd-n|~sxjFQBepeTK>bmaRoR$li;`<1)xIVq9rbSfHn zy9bpiH{J-%bf730qT{z35|)ejpkim7x^Zk;+x#97yuf967!r9M|4^?c7P_4iGjOou zRTb4IrZ}YOe84=&#wRls-^Ya7HC6iMClacK*E-gI@T8)}z9O%_?)F|-De~|kt5rqF zc%yqWQmhd2&am?3qOu;v6Zo>ypiMkt`p+!u5H%%_awke3 z)281FbB=U~m@w$=KQc`0zT6&iBk<+#|HnHP$BSWv5y1;?&i8@i92a4ubjyiw! z13?d^TXHmed&Jv*>xNhCT$2;cnA0F$xp+uIDWw}2K6ecL_8P(>bgk`rWb~gw*{3I+ zMr4sR!j2PX*2(VK`MZB~Ex!Pme>8Hoj{V_36vD7L%VNh1UFYvINjx5E^HxCXs?o7E zF@RzY7-E{XBgk}fa}Eo+O>0PiL1&H=5pr&Nbji`Vt=3*d{s6)`5(+P=;nk3aWOFKX zd^SkBI%%MA(xd4e8TDsI+B*%}fxL9BQ_iveamO~@o5q8gOJ)EIdvQrDoen$U=5o}){+Q1Qtc9u@1%2kr{z4Orf~E$SONI5Yh0xLWhm zC?r!F0Mg#pxbGCsMDAe{p8t3mBkSS&ZYEbk#mQH1!YeT?XVSEm^Cp-d(? zp>t}DEqpH)l{TW`eDREP0-b}|m97`$;dnqlQ0kepnzD(NvKs&0xj#RNZ&%>i#f4$c zdD@kbP4=C(v)4?9Dv`nmH5F2;tOeaS?-Y-9)>8xm?Rit~FVAwIPW*xom;e$o(wMca zD@>O?{SO+P%F6^w^B}9@Pb(b8|yS)?VGb?!FSJyuFWAIB8Yq%~f+;Wifm0Wp^Tt^n6{mc}XNIe%DI2 zrIJsMg?ZWDC3v5nV|w6z+Wk4hJjC&)>3fb>m5#tRkt7yK6Q(!r#YkyS7YA;322P(& za|^f;!lbj+O*cq6-GoM-qqc(W_|2-{H~HkK>}Z%K0@d+n((8t_+h+DuT$O#yf%<`T z?{`0{%U~KdC*EHyn)vnMCyqVcP$KKR#RJUTMpNSJNtdbmh?!LrX2!WtAw6Nb9Zlp| zea(HWU~Y{&EV>zZn(#2sM(XG3AZ0BHAf99nQi)TmXuN|cT0JUTG4p-Ckgc~Dz{s1| z*l_~gMp=YY2+g2U7g@(9^0QsI%b&o#VzOXEdH1f7T?0S9eFO+SZNM6h7hxZ>#Uv?w zF9vxH|2v-QQG%a>PVyrf%-Myz3XyakYr|bebbLUgv~J#aP-62CwU!vM$^_RYE|2oW%~GiNK@|OL8>) zM&ELosidd6;}zf^F_+1&-X<)N7`FPL@2*}9<|a52`Cd-kJ1d0w()rOa=BDRLA~9u> zBuWW=nS1BSErPl}i~})8H*SmT6)CjCD@N^t{iD2?oHFKce4u1O2-!8k}@p^KD+coV|A7}cF^dIu2{)z|F zV0AxiKy;$R|#PUntm{z6bU$72g_+7ro{@6DF$D#;V`&+>27U)yp$NQBW$H zludcb%S1jWOk;S^gD9D&g5s?;$D5zu3bl+07jXamx?E?<87p=cdQCos(|VFTca^a0 zvUl7a@oA{T=`vcR`^`x%+geG)@8}nv*LEBOH<*2R(#D2geOBe##G+?Au`yGfsTBs? zOn7P3kZt5@tTts z^m@KFQk?fVjwhQMUJ*K~d$aEMz;m zXbV9w1=ZY+d3UJw`i;1S5p7N(iuB9i3x&(d7Y8pijUw|i${b5v*J;_SQyIiQ-_^4iA3dpc9O z6~Ymz)qB@#CHv*&G}K5unL@1ml@4!RS-I`L3Sh!s$9Anu+>uL7V`gK^*$Wiv@S(rE zDE#jEL*TPu|H!aqntHGg4A70#YDjTZ)|t%LvUFt$nYPT<7kKgYI9a>r&-6@>3a9!n z{+Qpz)S{O8*Am6kSyM}It<%qGU^Mf=U^QYQ_WJdxf&KxFnR@!W05UDEeOaV$)ngfJ zgLLyVHLBLC^mY3(AF~Xy^$m7!M8@qF5EAAIv4|b40UJi<=;Nb(H=)^KXNICu0nS^! zcKA+yHS;@?hC~}vJ>Lgon%HrMo}LaC_7&UL-Xpiom7Qy({~S-KkI?>-d0TFM%x<45 z`uO`xv3~s1gSR{Twb%$0M!(7DX28kl(gV0{py!9^jI%qd_f4fHTO%Aw21aJkIW>^| zwMq4^&q9$rcOtzl7ZyR?kGgc)aBxXBd9C&R7vU#oM>rbO%7q-5;px_%RWTVYR|SEt zoa4b?Buvcee2--E8kj=$;C7}LOk8py8^WW!LSyt(I+y69Ga#AObzwwY)OO2d zpn;W@>g-DiYG!K5MZp<5EvxtRkP^t>&Qz-Z{mw|vZ`c?wx(emH>EcnBB~aVQ)2QiXg-V?@;1*eQvlD z4o#Lb)Ncvqzow@0>nQkrh%RBrSvYZCy5MzytC% zKFE#S({^{|Z$&a5zEa&Ax_G=qqloNOMRmJd;Ed_bQ%^Y`YZ8Zz?b|}tKUVPqgH{*^oj1TH6MMwiO9|>{F%}r-0d-M#D6#UAxlnOETM@?e~#yde#2cGHj<#uuSl%YJQP3@5+j1sZgTv5b`sviK_1#|#2 zgMm>0euTP(&nTpP_x^c?H9vin30&|bm)z9Z8F30)lPsql{23?%hM|6~p$vgkj+1_l zlURc~vI^EQ-G3t({L6-66S`%k;dP!&Li#Vg;m9tLdG^rk_j^C(_Wj|US0e;~VZigG z&&tfa0Ms|i6#wUopA(EszB65&rTavKxw!#A6|wt2f8>8_ZS~a16cZBzVZ!zG4OO_~ zG()Y={yZ~(7pC_>Lrg~I8K-VLPHXRiaPk8VTif6`N+N51DUJ_S^}zx!eDeIwh49t4 zuME_GS6sQkHP3iAmf^;&9-&qaRy%3NTw1qpYz)3e^4dQBn2@+|E9STWS->?4#QyGP z_AUD!9>=*hcK7+mtnAht7jv+hr|-KKv<=47K3U__*e@T3i$BlQ@eJQR;$>lGX+wZp zU_RAkmo#_oXHTtfKSd#)h-rjcKel#`Zi%(F*Vn6YaefHAlatAb*lw}z7|`{qV}A`%XgJrqZ%GQbo83 zuj=BjDTbn~Bf|{z&9M?c-`>8+v#{pk@(}p?wg~b^v-s~lXLw{gm&?qn=h}ZZfAsyV zs)!>r-nu|H)|i`&gWb5)>0sJmeO@)7PSVA!?X{W^@KR@fQL#hs(Iw2sxvHu?aqX+} z(k2X7U+{|x^fW~>oXd4&p>~r_f|hD0s2XZJCs|W$Xz1|jWzNjYI3!C z+Zd;yuUV_5hUYKA1Mb@*8?H9^-t;R5wAGwEvQEig4zhwy)`b{-WU8O2-~rYv^d z_|A&XtC2%Q*Jx)}vyS6+`!J~*#z4ti%&Xbeg^0HS^o1Breqmv|;gu+taotwkO>Vp4 zg$qSzq=W>^9wfKu1O#04VFgx{BX4aP=v!!<)QA+7@}KzuX}h$vnN#fd{Yd~lt5C$u zTZI-e)tnqd*uqEUo(X!NNWZH75U+0oM^Qu5NA&Lk)Gl_52_R}Zd2n78V6Svo^N1TvdErZGm*v^h8MsugT z50F_Ocp4<{c`dxa%(QpK$5}u-dSE~T)VrcTF&RJQbzuLj+4}~$yBAKxHZb-Prf!|; zej2E7LSpC&iUjgXv(ntvr6zqP?=Y|bsBS2uj9A=6x%anX+PP&!o>?9z< zpNXvh@bWijYLbpo@3n9`PXSS(tj0e&gM0Ru`1GgtnvY+>IXG|M)HOF({j+KQ-Jl{v zfoZrg;jlFVI*n63;eBPO zWOArxk7A-m5RVQ^_hY{q*~ge)Z*OF>`_-X1NM7T_bYpqWUcMj(4X2jAGls0U9uy;@+cP2p_Is!$$0`eQBG zVl#j+)MOf@5qzsA{Yc7>9jtulX`a4-{K=cinw^lq&FCoJoKEVMnhOi)f;xkv%c3lQw|lo>H+8W|`-?WL#IM^QV?>^I zdfKttLFBD=jnk=5{&lFbz-K^{riYyVSsp&b4BcZ?0;VIq7>m=a1}U&{(LsR-6ce1c zdXCrNYhP3!{nw-ks5f=@HjB=agY35Tf^f3!^Svs)4w^pES8M`a+CMX^qIY*f#p>ccM9Ip^joGs5oRwsOB_qxs*^X911yk!3Tz+wC~rRmL-G=V;(QZ$OS`A zZyy?+8jUY>P%{-6i`C(2YYiPHxj>p3-XRf9p-~Qp)lND&2A})xq6AU)EiBi!yT z1~&n~%>X~Bg_8noMW=MzY@>Q8v?_rjbs|auSS?8?)9r!p{o#dEV?G-|TRZeiLAXi{msS|hzAjC{#0QvzN0JTP#L^C199NxVo z5#@FS%EM>31oQ(M0uJtgJp%TUmYW55fzW_rj#7WEOEdbE)ojaXa%#`n;pWi^<3p?f z)*B+~11Z?oa)VWnpg$k*&CrO)Rhoan=VKZSO{Q4~nKo%)t<40D4!oWO0RyQa6`jjd z3@j>Q$V;M=e(^ct-C>$ZYl5b{zTblC59FpD6}5{5q08Z&boRq3`8sL<>3}>o-qSl@ z)AMzFGL+)2hi4Nz+UP4azPN;m8y=-gLIRM5m*K&15gbSP_OFGcHBgShqKWBg_YO$G zWWB&!_P|?ug~EeXW-vw8_jim|sddk<&MzN@V<0Jzep(dV<&1ny9`huW)w=u2OX!pM zL(N=#acRn!^PQl0R_LIDXQ3-YAW;54Ku~p>H$ZSFBG8+-EWu*TW@V&h|Bq(Ey3nXB z8b!TOfx7|37q|rT^-w4AXI~F|OIMxivKWbB`)jbGx!*z7gxE2FA0n^6;Cs0fiWj(vx-p%^bDd=h9>&THN#?-&3w>8rLaB z@a9pIYQ3Z-}HtJTtfwNK-*j!pjuYql6aq>kXAh?TGp z8&XZSM7jHqm+i1BwI+>j)u8ce;e6hTBne|bjBjn8A+P$HR4t4lZ;4~NnkhxlG`Gg# z4%FZnrkTsk7yDv(Er|=WCzP7$J!?Rk{(8 zgQg*;T*bD+b(*K-=6Tu|?r*1W;+J`_NTx>d$!Xa2uPX)3JxP%5dtPAJ8=FWYS(iIPgLX$%;4kQ6#0tzjv^(%~ zrCLCLiV|>rQ*fFS!Z11QjdA*2jJLIEc>7h5>g{hgDyW#Uq%nx0Y#I}39CN2g+IdG) z?MPbTb-%DSIY}ek|D)(>X#IqeX%B4_C@%uJFs+Nh(G|?o%ZHm@a#nZegNFrfzn6`F zqRMxlQ}Y_|qh0i!1Kal|vO3<;7*S#!Q=PVz5h0=@YbOy?D?VM{Ix6Mv!0;VC&@rN( z#p((1@Dq(sAEMXvD435R5`GUc=9_DW@2IlKQR}P?>7`ku$75*dr*ev<%J7!^k;-mj zkJ9bhNip4yajm2!<@i_VGBiPy5Vrt#5<{=Wk8@%Y_fjRJUJ|Dm$_tNb@}JijHa#Pn z!!2s9_*YGkzp$QGiBy~5DVvAbfJAUQv)zfFL&NnnFMReWrcAcar^)z>UJrCSQg^sm zP}wjDX(hCO4KD0a5cqM43E*ibB|t*-5RvI7vnIV~O*gtdANS^AEiGN_NSZMG|1OL7 zDjV-khga={U)p6k5b}_RgkXJP1cj^Dv%Y*Aj}*`Qa9PI`)m%(pJyqHs%o0ZVyQc+oUEpasxr*-^OiCRa)nqucRvNM!#E{HD*2 zQPZwT zoBeP#C@HNe)3Sp0T!98h_e)w|!NV3EKXVC8b6f)j_iJ!pwXL?B;$M7LOUP>Fv0-F9 zyYN3O00T*DH>O9_v~3W53y-~K2)nFpRr_e!0v9q~_{}7d3farPA14@)yZ4AxX#n9p z`5pH3%X4W9!^Zk4*h13FyzsQ^@km~kP|N19M!6>OW6*KA@TN)%@_yo;gr&0BdKa<< za-RuK^&zX8x7!WG*i}rg?WMX2ricf@X#fK4ST2X}KZaEkaC@CbB>-m%ot}-vOcPT6 zodjYma5Io7?;Y30IcY~Nf{l=xh`@H|VT$gubhTQpT7tk%xTl>G481oIenqouMJseGvtMAGzGA3+)J zWyJ}t>TwnqF=1BJ+8@Oiueyl`saU1N82PJCT%@u*NjcwfAa^7eu;7iEHn>fMT_0*{mjYT{U*K)>6&5 zSL#(aPF!e8i&2vYczBe(3-TLf>C(K%0OX)KAYCoJ7L!E&g&tTQTE4wLF#Hq81o3Ro zK_=x`6pDpOCl6(J7m^A^f$a;`+7ds9t?!j;*}Ps6A_nl5?};-Q0zu-T@fMOTKU%Zn zi{*jK661$4ak!!XFMkqns^DY?W#r}>PoNdEht{sW`IIc;>87jmFm5)S6RY%E51Y>sl9&e$$qBWXz|5fb|%N0V~f4jtUY3{9^g@sT@gn>)ZE z$H$cAQEDnzQjmJPeR8^%aBF;M=?=ohGU$+xg1!mnzVVt*cITt=f)2al({nF-wYJx( zM_uXc(VE**mb4ArpP^@p5^pH$(39tMlmZ>NspKqk2!@yqv?ZGScHvc8%k zd53@+^}a8}Uqj%e$F)9yzD9!gt+Hc#Rr`(M5FjFT_hM}*0j4Hi=NEh`^frBT;&3yQ zR{1_8{B^wkB8nd`LR7JoJD%FbA8hLwFfh|Tx*n}2I1lqjNU zzCpvp_Y@Vf2t6~T6KNRjnGvQX+|;Nfpn+v&4|~jTwe|1ykA+zYhaxuR+-wr+tpaHq zzqDMfzNhBLgcZoNDJ3Vr6o;6)2wc-&`l>RJE0^(Ct=Ee(lgs~fk{4E0{@zx+qdJy3 zOMoAHwd@h#_q=y{OLlKJ=-Ro^5tYA3wsE?D`e3bRLh1B<<1{~B!;-PPN`7*)%~z=qL(0)ftS@=6ux(%vyk80aA*uW<7!v-Atu?iL zO#4yjovF38znx3h`#)S88BLti>3r+#=HSh%?P0{`!+5cW{=lO;=+>1=U()?+=T0Z< zM~Ws@C}XCVXfi|3B+@rG>^>O3aM+J!MLkthh`|ePz2RAW>$v*bM!E&*W6mFrI~I7X zh{>TlKh_^iGhW^4 z>O8+@cDtn_P7)p*Hft-29%@vk`3+Y|`-!lD$mH&{VkP?d~nMPWSnJl8YU}%VQ{ny5Lufsv{p8$uyUbe-qSy^AuEo=C^YH z=d~xfXu)%L;X*6H)j_FE&ZIiNYk(W=XPH^k=1`4FJ>|2^5(Zwu>ub!@UeY3#43w|& zT;4n`6JL4B6N&1C+98g7frpR9TT=QjXm@kHskC5@mWcnheL{NUjmutI%J>V0Kga=O z{4I}YqdCG}Jt7E%28Mo$kdXG}L}xLn`Mb(I?fT7)cg*079hh7gxn-v=ydmFbdzDMH z_We}ozG{Zdu(rnE6l%)iR9K;VS)4G0%W3%xSh2O`o3(zsPL9+m&%7`&HXdY#QHwGc@=U`WOASqxJ)N?AF?Y zB&#E-m?rN;?lbCNE<*9-DjmF7`cS?Z z7rsB(oEz)7y1#C5_KD!**1;Gh%&P18sb8TV5bR2AE;e80`V=}Pi1IAU^%&*T9iA69 z9)xY~uvd|a)D4q%*ECj>nC&b+D{Gg)@KMCk zRXlk%0)&eq4FI6%>So!aRI}xb6iY+aiX3N{pcNbh43V>}Pou2{Zy+FVF-stqk?}{X z&*j+l^1gK$qHxjx;C;CVyfyM6-xo*exd3fbt|=3uof_>w(=;7ZGS_yi9ZTeWR@VCI z-Pvv=u8XJF|0=Y}!+1>>g%&QNdio$haftua(MM5fIm^weL%_b{|KjPZgW7DqaG|u& zQmn-_g$i1NI|Pcg6nA%r;!Yq)ar-D%pm-_n#ogTr?(P-{7LuF(?%exN=AE6%yu0u2 zIcLvvsE^>olJU_`a3VHFIF<@SWX-W!`@xc)InA;!Dsd zYJAmKX2IFOD%S`)n&V1p8ZN_?=)Sl6%eyjDCP$jEI4hA!7dWAyKd58 zJbpa6)gWibm`TQQlFcBD8)FJ`6o@6xiGQSvqlR!m!&1^E!+&mSs_b^VzZViamD`$D zelmK&gMt6m_DMslSa>t58wu&%MK3nMp@MT_`CB$4Np~G4ZQMBi`i2gsl<%ehV5eP$ z6LoG+{!I06){mUaRNAi&ek2f|xz_?ew<+&lm=ywJhBmoWWxTS9ySo)fbgQv%R=hth zOIlU!Sd$nbroJ_JjLI!nTfU0*`%60ZY;F_I%j$fS0toQ16jt;Mk*^-Abdr0a`0J=I zWH+Hux8?OqmKA~3#Ta5nP;bkQ>pF#4)JNG+r=>D}(-Vc8?B6#;iXnO8LxIe!nj4|K ztQYysjy)lMI1{8e0q+!P7UME};dzalOf=PCn zy0r!xj2c?i`ngW9S(ob)cbY!(?AKYWhM8lZ))NL`l*Z(1i=*s2x98c~+I=j;+WiEf~stv^x%ri(oo=X4<=F3tMgy zbJt(*wtJiK>&+~n77v!?x*?~YS)HNjr=f9XQQc}mdSv&N&POWiVCvbG8UnvFzo!`C z{b8>T#G;H)S6Ubts1ZRYn-_SpLg(pLvb)MW#H5(y*e@KhTQM7cu?z6vJ6K^yFmYrT zaL%34Uepca<5R5{^=Y-c0#>~acoFq`Jcx}fk=O-NLy2E~gh|ULHX6_S8q|HOI01Korv-UnY7-yH4idIy$9KL4NksH3H^3|W&;08eDZr4 zBxc{|Lh@G0$w}HAWxyZywpWn*0wdX_oHC~*Xs$~GZNZY{+e;j5j=UnwZ?bws&xlTi zV=!BvDC7rn!Zo1sA*+i)acb|iRbR~Tj)@;1+x#M!G4)TyoS8AP@e?d>J@7~O0o1za zSh1T}cgNfy^2o5p#NYu42g$qB%E@dw38ruj(zhVH9Gzg~XWdnVd|P0qu_~?pu3G+_ zt?s=^ojQt_M^Extcc9ZMT5|!yboX3sk3HQDt|zK9a~dWd*XpHhH~!#K{^h`LJ6Aoa$%?emf(kxj$QQi8BN#7gG^}E)?{Q=Hj+KntYn_`ZPLL zv`qj7ml6esuj_a(2-evYZ`;H1pb6CvOpwCOtp&?+%6RZ$U~-tKFz`o;fz^&0eBg8e zrcNVeH8SrF6G4!CQQdxblrhtt9SLR)w#s9JNZozeAn8p=<33W3iH~$FdeFbk>izQr zb&Qplq_5t~xb;;BHGGpYj&2DnZDrn63RkjSL3i|AX!)}VVue>)S=<%;$eKa3?LKmi zRJZb>%$8eN#4^9}p_UNi(=hKHNdL4F=#j?)!!dJFOMm4%bWT6GaoTo+y}awtZr0>3 z$maRe$V%e_UhP(Uy2zIDNk@#IFR?LR9|){kD{O5DV%}cGzbkgf(rf0@UZ1OM<&Ury z2)tP|)fOsyI;YVvF-_iEP(|W#{lUqLBN#Zw(r1qjLkCi{Nc)dGe?pf+Tth<%rhqzG zwGt+^;jIc%_tqgvZ1t&j)gP39$>%NY^hBC6VoSdG{>y=l$vvB&M7Hmw7r}+|M`-Hy z;(*D+t)GZr|EJMrz}S2TEF-B$-DY>!-Ei_^Gbuy3#)`Yn)2GVbvi9KUFy#h^m0Cq> zDy-hn2k;O}*NY^!Qdtpr*(Sw!zk**Fp4Gux;UDlgT2N&TEz{;`esR4cRM*x{*$k)a ztE|T@Nd|s8UN%JR=K0M}FUJUvIbW~Z= z2zfnc91q+0oYlP%C?taDbw9t!>WFV+VEd)%KR8RGJDwq_vLzyKXD#JYi8ZZd81=`6 z&}S?wu*5|04}W6z&~)5d3z8mAEBHOUnXJZY#!M~->#P;d4yO|ejZ)z!8?zU8PK}LQ zTMRO^Vzvdpz%w7JG!7*!P$Do!RyUp>eEB8nM-cN>(|E82muBtqRUJSqR$eFuMh|GK zY@niE^T%1bq3Nsi6>`vR$B?GO@sga;URWMnjdGFW1&wmeBg}3F?w=>MSGS7LaOK8l z6kwlqhSV$Kvyid$SoigdHPqBa_|%Ljs)#THA`xE>a={V{9i}9A(U-2 z{f>uwNKE_k3crIND#CCJlKFy~a(6^(W6*uzT>j}Q*gSGfG1Rdl*=skb8~hKcUUo48pgT-v|SMasd&9)e!J!~;I1SlXnV~D z1TZccB~Zd5l9MX*(^0S#8yE;8uiic^4Tttvg-m6Ln!(yfQJQn#kmCyF+z&Dx2+hv* zmfBaXlLKwcCKl#r-h0vyqc{k9DSwQ=}c z&+$P2vh{q$aLg%%js9NwGN7&py7Y;)x#J|$0$TfTu zMMQ6_Vx>OUiosgYVR)8 zGqkIJ(IUUD=E2+7ODthjM-Ye}=w3oIsvov$y+y&mZzA*mEq~ZHZjVqi);6xPSnaz3 zk1T!?)!s?{9YlmL9rX=qJ2eMCFI_82_0CX4SgXkw{}2_AQNBIwOVvtq@Hp zCIxm!{CifJOv4&*yeI?peAo+UYa#)iN8Oim+zfv6y1mzccu^9vL;4tll#QJQ_U?hx zq=TV;IOioT`_rJ);Tswq5nrimCcEvHd(E=1@hENDneM=mg4~807)g=xUfDL0Qn}pn zg11iFpv(6r%_`aV$s%|xZ8_l~wFcXaLvdWf8t~#i-O%_^GZpsp@&$=&7}&HZXq1KU z=S}4OsQEdFRZCOtpHTsJ4V;eFwyDEn4w*&%_twHGU;BU8ol&fR>*dG88atL5!kjVD ze5Lm**KSg%V!}H(ML*Xy*EdsC6HYeeVG9(lzPE7kmaOBSyB&Z>+Q$#(o~!t3Y`wko zF8B4mspdtuS4(hzZ(qQn9b=ILzjPz-%KTKWS2TJ2GhDlRZbqoWzeraND!tHsXbjNB zolGd*{&Q%UMCZwS^^O&Oj;4hQYaQcF-Zl9rc)4h!s8o7Ff}M_XjeGAnkH`X8ZKtKT z0}pFjPW+GMdW3c&vaIl1FJ9N*AI3T z$K*GIrv@QEY+$Gz^i-y+|9z}><)$*@me*Y0kN}W9ay$m*?s{ns@w#Ei*Sbu2Z#>Ik zC^2B4XRlH9D0d&kz`tr$UWcaH8`HiXmGV>ND_I|WPw2&E-t?i1Jl887XPjK~n^i^G zy!!LCfvcKEhq1L!^J9kzC!KAc7Y)WVR!hWyp= z08Q2^?~4rfYc4!OO?}IG^SJoqy;Yts;Z6ce7tJ+f%j+t$(0YI2ffWk-(9H)&!iG>n zKP6gCl>J~%`S7SQSQ=a^4t#F)(v;zPj}^2gaiA3gmD)-fEWkaJJJ1r%VihBOB-YUi z39n$1AvQ2-#A8MNIz|Am?mq2JNo~#XTtMQID-b0+Eu*Nrqk19qc0Gb~LjOsA6#6$r z)Deb)I{Pob#IRL%T)13ubkJw1UZ^mxyf18Jx%7e&TL9fx4|Sk@pWr zJ(5~tRhm%85YT03f2{s}1@xXt3PqYx?}FYYyL)>i`S=pT5!Ox$KCZl5+l9nOuW2Fo z+AxftRf(&o5m!`QjHwtEabyjK?Bh!!jp)POE>=Gj4{Y3pC9z%t-D7(h(h^8<^VbkX zk&|rWa>O~Nc?^={6)? zs>F*{OAKb8S4qxNtJ4LI_-fdOFwX5lbP0w3r&PkGcTvM=S|{`wye%?;fj%15Wo<$V zY%A3xljoe6jjMxRi@H@R#4^wi@ln1Qeyx%3HQMC;MRsAhdC$ZOGB@uT70qfdJ;c%_yTzb-TTYL_y!Xx>-L z85O|QT*{otl;Y%Qysk~ex)b^j>;CP=s{g9tYSVznKQ+0Rp|yi)2&qAjqmCEG8BoGH zc~Zf=q0huuYGlsM&wqpnu_gegKPD7xzO3mka*r38B|oMkHPTrDR`-f{IVTThI~Cqe zfydUPofi--s37mDKcpV>}*XbDU4} z+ofR;PEU9D^WGn3_B>l=APepJ+RxTRt$vUDM*t}X{5KgrP6DBLFpnr`_hL^RCg7#? zVzu35_G(|m>cHT3B}~1oFf)I49=x@oHOL(=rjl7H#GG0j+zX5hmK&=?Zrp{uCrOp3 zGn}N9D~OD#_V4O`e?)5EHn2IYr*@tCIkps~{EoTHQOqhIsR8)qZDqk#bpP92J0i>5 zV8%#lOYWlGRv&i|#R8Ux*0O;r9FTxDS>|S!9SBQ`#bfU-)Wl~_s==J`nSf7r{f(O4(*)uuDupm+Ei?kxm@^{KD8Qb z4Wcoo&mreS+^8T+KVIa0oI}`npmUR#d8co4UzC+By12_{%W#H|NBqdHe`E4X;3s3@M>25I5s@<+`ydB^N2 z9iHSdDJHhEvBL~iVyawcsM2NCPYN@4Hj=L~R_V9}2RDu3_=M@+;h%pTlCqJ>wGSwI z#K~ouKGIW*M5~XT+nZS^Ul-*XjgW8RIBU|yHaOq?zg&QlU|sIvAJBrrc6l+>^!+WHPlFHWvIj0$R`y>@=gGyLjW2u5iLB)|TnFYrrCxY)|O!9p~kK5R!{g=VB} z!-SiVWi{8Z(=_KQ>e&3I@QQgBP%Ux60<`j~tKurWSD&otBIgp8=B3|a)A73;6JB^x z*LXqGV+Wt%-5GEW{f*b+X8-)Aw6wD}@T(7JZUKm8=H>4*OpdtJ+pLCNFUtE|4=cW#X5+l4&@R%E-ftn_2T3L}$A z>W?DL7gBVWuJWDlh;|{IO>Uf60Z7^{iVqu8IaCm{KIwq3k~|UPcPMi2X1+y+4D^ev zRX=?CR^VJY7j+#){e?ECliKu?q%d2 zyJY^H_*|nU-u)p*!MhMF#>M}rr~)*(aY}YIw>n}K8U(h{?M#O`OJ-s|RzSk-+TibI z=bi=1V~3J;XYvzfKbrE3A&h|zhRv_v%Yf>>fdV>z2Qs@R8y`f=efI@!dMy!c2KzB( zH9p^&gw4+_KMSj%DABBtXas!5b2ocfefzm1FfErMk!Q3&ngzfROnx!g&q(w_a|3Qi z-n}z%ch`4O5=~R&9Vs&J^J*6)OQ4ie$XT>r5T4ol^GNcEqq1mdSd?tbf_G%L21f)K zSZ%P4Q*vFTI?b?LeCypdutOiX-mSsa5oi<{ zZ4VX0C4gCAt`GE&86;EP2w7h>3lUv+EQ8G*`;A=wEemt}urMBXAGyf*2mk#eQ z;g+LV%+{o!n7y!A!02N~%yi4Vb1q<24s>Whyf>DU{PuR;o{DvE_O&pVK+~hB)S;&7 zHz-kEeN&Z}4=Ifzd64w`=ikRSR#q~!Yg`CC+V64y-p%ETVbCnVsc957O`KH#$Q^Xi z8gxoSTcC^tXVs73At6Rva5QS|(Sy2}oLyXHSA-9FN)lA7QON%CQy8`qmE0db+ptl!G?a9@tJ%o(+(!ndk zM2}4fedoLX_bApcX|-lt2-X!fqq{Psof~25Ccai|@%RluxruytqMBcz>KnPlNKO*w zZ08LBWByb&?4TmF!HxEa+ON>vsW(RFP_d{`u>qAW zf<3W$dVV#&W5k6J1IO|i{_)umMp~%5+LNDvD`US@EQK90Hf9e~_h(KyN~4aAx4P3j z>g;WpYi*8#jr_z1oyg#mLKc@U4b>3W2f{r5w7?~!=)Oa)V-Yu8{x#p1R8bi^MO)w# z=913HXEiFva$Aq0R#jexZ^7?1nB3iR?v^o<9lVGLjf~>TfTD3IuM;e(*HkR5!y7M2 za{kmk@i{W#F~go^x9y5~u@K6}3)NiEKS{?1U%mIUzT_ zt!ew6-|5C3X^r(p>%6RVaiGOm-%Nenm($43S&qBcnVzUZJ;%-^-ZO)a>)VYSF0iT$ zYr!Z>E-NfWwd}^gnP713A!l4f-JaZn|NF|F%?j51JzG)N_lWBUx?%m3N*}mwOnwIU z?6rQGAk6#n0$SWJ@?nuKLwDV8MMmR=ucjy`t+q)1bJQ6xsdaSU`6pSL$=`vh^=58L z;y9+v7*xhizy37S7S8azNtPIxP}yxO<&Wq3Z|rwf4Qp(M3T-{_-Nsx%Zoo@IHn#3H z;DzyU75(1=w`J9n&fT%+9)Alee~*P2t6)Hy1p-bA9xjynLnpI%a0bP>@ZG{x=NCw2 zM*tm>#qsURXPz;}ZifL%IP(;HY3Ax+^@NhG#X+&IJ_fBh>I4BSW5W3ESF(G$Z zsOQrR{pa_{C^KZB^xL!mGNz#NIAd6&NO<4tx7Dn2L{I;twC-$2J)BkEj^SL?;*`ra zQj7ComNk&D-#q^?m*4(1UQRmDnnpH`rn@u21l^lW?&*ptN=1ycS2n*=y}eDYSM^Hc z!(p^M;hAghSmgr~qVbCIuoT)5e)V&YQB|qDE{bFLT+K&)Ona162jO~w8KrS8Pk$1> zk+Kv0yyUKc2p--hR1%pbY6peuAIF#N*!s3L>V!8G-cClwX;fADlnq(Qw)wbJ8T`?D zABqMAjww9=A?W+}vOT#;@ zyTW7;9;-7>AuvlR&0^LufzkelK3ll*&sfx>feGG+z}xX9<0R{JK5Uvu=*{?*s*s!7s(7 z^8kT$^uH#TwaMHVIDZ9fTyKFsvITMel!81t7v%XqZG+*!R_64{)7r~i27_NqP|8&qY%0h8+4kIX)%m67SfOP6S`>Ey zNSYxD(+!`_AZ+{uOJA`;?aS|k09QCz-IK2KuI;I6JU!T@`sG|%rr<8?Lnz<(?}jmb zF6-N4qSi053T=Wat}%3da>Ma!&DJJ8FvK5c^3Smow5#Ag%dY*lJjqGjy$IfyHK=*S z*jUwE_58VM4;dBpTNq7LNXAx%#hkR4l$Z2_#$igCMG}H%OY4Mm*92bnyyCd@P;6+f z#cp!#%hp}w&{@MmD_rJHR_M}~;>r}24cH)?< z%)Not66Wc05Y8k1v%K??Lo17tE5cO##Ecfi_Q}pQeWnPl>z+I-Y z>TPTzsRIw0H%D(p4x@>&bP`TL>>n`Ttvaw&le<04Quf%0^`^I81bVLajwQ46D3r-+Y`MvQbk61fZ36!#(_o-DqAfxz>;FJ)zvN3% zcJM}XthjeDL+?EO+e77E$BUiDfH}9$$N0-beaGuP~yY z&a`CXh24L}X&g~-$zw4myd-W-v=tHEwRpBfA?-aPMihRT8WY0gFY-9EBy0$_xR-*f z)TP~|U!+~s>@kgq(6Y2?b~07R^|D5#L=tGGd^YlkZMC|AZL%(!J*#IUFNKpYc&mVG zVCu+$^CA0egc5#9ZC43Mhc4>;60V9QTj=n`sG2fjY9#R|ZP9dzPa55Yq{)hhP{CoG0EidqV$OE7TMdO#2O8^?{q zh@ipK>)?!_*6}tAcDiTB>hTCsW9+E(y_S1r7iFY)i-P8g7MXo#PYulCg z^YtPN-eiRCnN$73Sq3lrw{D>uCL<1PlC5#5T8>maZbLYY9pF9V9DVg%F|b!2Hl9+`OO2j5xt(DmCy{a`X)ugi`@g@yb42ImoLrLvt(x6Dya9-9noF1bE*53-m zCICmE1+nnuhOExxo?aYD+u%ARQw;uV6qPWHx`Vr-|04E3d_U}eF@Q1BF0oa^p${JC zw%iX&EpfP;FD&Q0-lTzUDUrKtH(O|`-#G19$=jhh6y_RYFKc70j{_Oke*aQ^<&gw= zPdM9=Guh!SWHHAkMpjbjtonBSVto*5IHd{W-2tS6yd%02@-`u_6kkPX#{=Jf&@5;A zz|!FDGwR=Ta|B^YEGbUddpR_#zpZxnC4>Kn{BFY5Z)n#w2`DVPgOiVjevXxkhz&;y zsgf2LkAP^ZYUB6~k`oKppU?{3wMOHFg%lKZ-M>*S!nYiuw86Rb zX4sC5x_SH`5{U-w+tCmu8Z8&8{s;8HAKT7R`}`R5&!CnGv^&#t>(tY8`c3IUjL6M6 zc7q3}v%IxLDsg-j45^cPuel(kZrxYC>j) z+h5M{cxxL6oiCa% zr}ACx&K>G*(C{N!7&6x`v+xi#0t}ial|WqLyM394WMegu1>4$_86`C7DBu>!N!35- zQGZNN&`@NV?CQp==0fhs3 zh-`-D|LT;a5JlMO6(__=4#0AkO~h63fs@?kLn*XDk-@I8=v0`Kws?b`NU?DH=_g{sKSPZQp+|Fn`$NL>6B> zmR<*b>d8uLU;Kts+AclLyV`Q64>sD5Ck*{`Z(9975X7m6sjA2MVeCK@%3!B^@HZiW~yV4T5Lv}aI47VT{yMUlI?c~E@_(m~A2C>W&gN%dIO>V#jZz;$8((j)5N5yxFA zB=JH=xgPyHkC>!!yYO5JwTnE{{7s`ng`&HJxd|_!vOd|rWA|A@j&u(2w0fl-k!$hJ zqu^t)B;=n%Q0g~^F3w@z2bJWk+)U|(@*itxb=VWe7#tQ?%&Fp6g$D5SAINJJ2Y3Eq zH0dbsz5m6tcR{O7qo^zIe{0%XNU%fY&T63Jx@}c?tJ{~6K3uaJ=T#ve^sII+ch%>L zxHYd}v)*trRWZkm>L}XkTa~@CQnlbwqt&}XUH-EwQ9o9Sa>EH!x zef5tzRN)n4c~q%$fT3==8+Yr+L_?|^LDh;mtCl|liwTnWfeeqwP0y9!Eoj4)P6ica zL7MI{M>FWOh~D)?U2^g&;cEbN8L2{PENGh=Q-r2;a}Oq31??Y2svNpL;vOLbowZbl= zrYv9}04PM(JnA`N(poW+?4aIdoSNmX|1=3I3~e{J(xLnpf>1h`^2V)k-SviN@)x?p zPq2k$TOT=aBE!O_ln#h8ENIJBNkpi1T8g{%3%PV!zOSFWYPHy0f$c8vf94XgZ$qQP zS$Uhor}^gRZV|_?c`=i`ssyEW>L`h+wP1o!gsJ=BalT8SEt4gxWL9Y0V-{pToe1Sh z0=0zs@L`u`N%M{$eG@^HI!XnTTV;Zz+?lG4cBwPv4IfqKi`)&%Yv8JP7GlFN`Xt#> zLqkaNM*g{)Xmr?UbW~VUSNBm!DS?iEx^wEC1dr5pnQ8OC&4sxQUiL?)OpSNj|I>!W z2-z|4LoosKnf&ReFYm#xV%W=BxsFZ&N!%D2EIhVs` z%T01p-#pt+n7>tibJEFARU2fJMvuwi1Gmo@z zGuXEvOf0~&w`&(OYD%ICtqYuM=^zWqt3N@0QC*o|dVHLYJ6`<~^rYL<8~X%I3pE8m zfOc$WF_Ai1cM5oCBZI*Y#);}3XKv5G&GO(Ec|CoA(@NP$iiVESb!AExOw6uEM(ybl z%?+#QZwHNCu%4|BrPF5;YU|8!R9J*IUo6AUItq(}YtEjp3Xyd#HsaH)VEZT@cW|eV z8*eOsxT0GPn!D+*v{Vs|sI9mrMx5W}HP}3U5_u>ALY)Kqpo>1RC2D#TDibtghWg%#K_NfP^u+6(c4YF-y9?VWH@--+}hDK&!^H1`%u zTfrH(H-MJ!2mEEybFt)AHMQ7LmWfRL0i)w}c}wS0VIP0;Hou_j-+7!Y=f2$-=Qml! zXI1&mGe&p!w4(J<3{EE)5?S<8Wm9f*pl)p=|E6xs_$z>HBojMD(#oyC`SiBmYX^FB zG1*!3lgsf#q&~rS-=*{WbjS6)lV&2=xRhBEdD;ud{=u@_gNKg|&O6JTw@Q$!4~9tf z{`EernF$FLGEsx_xcibJcQeEEaN-aBEZ}kUg z@@jCkeObRP|LA45#YZCqja)2pRo?z$R#-vUT=z}7poS(UAIa%YJGvl`>xZru@Y=F8 zFW${tCY168uJ6pP_S6~RIB_0!jxZ-p#PFnfI(EX&9J&M5$R{Q^NF^$;zV&-<%sIBi zDG~e%sA<8j&G)yKVvBKmo^I%kU!W4J1MM}No!=dyZt)q)ADj2F^d-<3XN%RJ)fvg< zMyJIXFvyFb6U(ZP)Yty(mR=@}tci%NUt^IaFwwP0EQ}oqv(PX$k)I6n&Xqq!l?ClE>}qze{1X}SfQgPVH`U-6TC3bw-!Gk$zbu-M7$`hu?m z+1dDWANlzMH8EXQ72nPjz`{??9cY0QwXh4h{{K^0L_n_3+u2!shB&JMt74Se-5f+m zXC1P_vDxPLs`|bswc54jVhD${ks>7>*Uf`D9(+H8jPT!6s_B?-5)^Yt3*x>eUk*X#yqJQoqg5fmI??a4QSF%5DR~gqy|Y*CIR|Uz|2sVg@~-O_h4?_zg@x z$~g8m=?}oIl!x%+RD_n{a)@2qC8q53E89mqj#`E3 z5v_Br1~1l`eH;Pcv_4n^En}b!$}1u3qllHnv)VQ2n+lD>{(AQ+WUBJwMt- z@+O5;ALR<@4cg&m6|PEommOl!VS5zrGVWlp+-N+0gi*UYlJcLGj%1;8>9*|A7Z?d> zaO6oYVuA->5q|W<60@ZOuM+zlZ*$Nrh9U(+1~-dtHIDhKWABU{xiQ6gvSzm#MR;hF zvlmLGhlX7W2WPU<9DkSJs|xk_aew-dXyhuJ|3p$_B2fK9(0?jXdb7Yj`l<{9(>&A?Knddf^ zZps2Bl{RMj)0O$m@WBuFn9;@uHiF-?L|yUx41$>qs>$M(+i>?CI>-I5`KBa5QyX;O zCwX#tDEr`RZ80BEQ;E(ZA9BD{ME1XhGz7m;M!IQi;-4*etm@YqaFV-TO_=uPR$ zsdE@9wWct0+?h#DDIeynT@F5-;J|wuNDe{JG;xbrS3PIPdoMe#FM!sNQ*cb|C1K^( zQ+hkY<7KjW*bG9CECI>{f3a|Hoai zr;%SdCj7}3r@XgdIWQu4CToAzvasg}_?sD)@$bnw@=w{-xQgGlmng~Ojysf;PNcMq z2rWySv5a&V!ec5}fGD`q1-fZu(0t(-(W>tqFU?tacUf=cWjUz( zkh0|52xZS_i0V|5{RU(ylX(^3mP>r$hLPVZgq;rTGT_GQ#fVI^q;GVlZtAk*^xfs5 z2o2m^^iekkhIV7yZl2r@0*$15bnrxpJ02mIZ>UWDynJO@HG%1&L6i#kX<{wWSBbajn? zW^Yv_IbJ64vUUZb^La@JmG-Uu2f~r}lvv}elmPlut&PdNRqf&OqJVU%>^5jl3-{z@ zs*y_(E17Rw9XShxdC9v8Hj1TFp>`6&u%vNbe08jEQFx!;HN4orT4NXTH)C%c{Ec^x zIV7bT8hLWJD{|A0Ny3X|drlHzURfROhP^^>ED<5Ln_`P00NKajf<`&5EbE%TKACU1 zWBQW_493j1T*PBbZ8wnoH;> zuTx8_w4qn@yC0nRq3LHS$D&Xv?@rT4d!+f^VR<7pq+WlIEagv<@rlAw70{1H$$y9J z*BXofuZ+f1%mXx}+I_p>3Hffu50rIZlCVF7Z|WV{Rk<3W@~6K@UB998J|1?WTDe`g z$&!Qx+3bVQNafqFzbsb`#KD@4`caE62Px;uxJmp*alT}{*$*Afw{f2E^>&dqY}Vvi ziHpH1#St9=c--&NIyb;QQGY1wMGP}(L*&@jST8YJ!LVwgMxC!1<+*lB&i}n2E^WUdtnzOHjH4dn zoU>hpW|f$!x3*%Zo2#m(!yFCuB3iRDG5_m~_@>7p@`w%Ii+#T@T1$<(iW23(!z$Yl zh>lz9C@ORAxmE>VZ}_Tc3gWvy>A#3FdZfaB(r~h~nX2wK=iP#+hf8JO5PHRe8 zvWctNyk5%keJ0I%*3Dm@8YIt!NnvB}|L{y+=bq>)pETES0?3502p+o+e`o--vRwG9&G}g7ia2F7Ok_$9&8E2I;;!!hh z-muWxvY5C7;5C2L${$y|Gie)}^U(YwXY^wSCq!kN94_MfF|ye{+y%{hXx@o-dtSWN z~zGP8iS0G`de_FrTVyJHPp{3m#AHj91K`07Npl`4HYKV#O;{xyxWHV)VY(n211$ zIL|mvzMCT8*LM(mRr24j0SJq;^LZj#DRin64u$p!yB_pV@$o0+#o0~ad zefZXA0%6wn6b4xIUh7f@ezYy@_~OrohIpky-&)&1omcEZZVIy5fAIX>V)j|syP_ja z(Xp_!CSBt~(pGXMv*E$#ZI7dj>k74-M*in4RDZx&{HrJn9vVqk7St$2+bMz+;qY;NFQQ?1HzwM{4y0&IqFYCzQAL(0ir0XfwbCl8B zqm=5F+&?{&*0SRN11t(Fw>ig&+PGcvQZ`R&wcsj= z2@&R~>0PuN&VL7?hFI(uFEM>S+3<`sW81L^SJg9yJ3?TD>*1N5s9WT4p^vrbe|*N) zR6H0L4Fp-B2)F}&$q{Rgjkxm{N|Dp2TnGMm1tQkZy)eUwlXmjOpLU3|X8P`7;mN2K zX4RANYhqA3K5M&5!cn0->GFh}3pLG-%Y55X6+xEu?mG%cLJ$`vKOeQ$u-BzmuBaMl zF@{)_PZb#Gl*GT9SKcQ3RyB=;C;*YTXIc9l!K{CxhYK?6$mH#s01^dQ0a%%n21@v@KxM8@B?p2){XKP{8T)R3{6fnc7BkM=m0eeFI|*c9OXp~XEFSay3RcL7o=CxwJp>WqF#jRxCAcxt|bF!+|qx7*?s{;Yh|eHY9a zH`EUPw%2;B5-;&MW%De(SP2b^-aN|$THNYT77LY`CJt8Kp{YkyvfQdMEF6EUSB&Bo z@e}QOuN-`up5gihT8V9vj&VAoik7FM+-Guap3M4eoMzH7fX9$<(S6_qL-0CCnRO4C zW8h0tg#Y23JL%3|ijZQ!>prKaQPS`8IhfvX%5Erps+LkJEvXz9uZY!z_FORyJTFNt z9uvRhos3X6u>8rLm*p2YEc+qHrVh7K{ql~Bs>NaNr>lq`2GJp{6pvX)di2(n_>=l% zUrsA1xaWS!30?3RfBt6CCzJ!9@(TYd8sP{3EZpSF!^XxgT?L9oX7WU1<6j`p_qDoS z#pViAg_%%TgFFdz4Me9d*x$K<5bRh@HP27wDdN3wC!#nU2N`~c>Q=hekbBO|8td9% zW$LHZE_58MoULbA;vly#9$wAxVo*K}lDLB7zppGwgt4FR)Pucoj!pF3JueRw^W*ipDNCS+h6G;IGzA4!sLCrTp4Xqa z4nqHscBc~Lfs$n28`OPnt0*8M@$?$cG!;+P2468O zHaAkYfy?Colyu!;Nxf~@ew8gpyx$pZClB0ih?l}B@4<~&*#W+a& zO=ETWImU@K(Ew6`ibC3X)bEG(6mNDo;mSpJ>yMGe7qTAmDYz!RW`b6>59~(MBIT3Q zZ)49ey1M6%ygcvEM8AIGb~eLWX>mXV+@a*nF8=Epgp99kw0X$`X!EDf{dPu>MNh|; z{#0F`^NdLR!|Tyi*S9@Xh6C0mXTzYw;IA&Xv+obDaBBIYzR5C={4|?r6;*|Us|Nd4 zb_>>ZwCdpf7hw%UKV`ymq|vFcT?_lmYZ3?tcZak+i`xW<&pRlg$*Q{L5g9{kHCq~g zexaY5BC z>tO*OZuoZm=;QLo(@CdcosGIhDUv=ewZ~6}zwNR?_WaIMNEk3*19YRR5~hd46K?)K zZ4q?{XJ(%?eq9@}71LVzaysk*y2h5ssqvMgpdNih!mz{$sXnUR2^+{Xi`#-?X$B`m z@KKPiI=xKpz3cM2`@dy(j&|)lWn}(#lW8SSoD8$_{zy5MS&5|XJP#@SCHgo*!reN2 zAJ=8=ud%8PvXfw+Bj3pGvwsMI`X8i5-3DISpOgU8(S4S-ff2W{-`DwpP|zW-R#4;F zmgIiW$ZyrAD{YW^zNnT8n->`PqsOvrN+3<1wvhGi%sWNgxHO*Ng-Eqh2t3l1A??m` zbPl)Pxvx8283d0nL5CLS%D^3m`K_^_24nQyDHVpUmRH#C$7;SEfo(4@AA!(yzPZRp+LoF*G6MOX-FlCT=08Po9N)d*{)=+Mi)Vdt zy$-qGR~7MQ(^n}M=G#6H{ZzDhjhp;?4YX`;E~bjf)hYM9mRsoz3~^wIz!h!`+idIE z5zc$|TP5_LAD8U-R-(60hRNK>yjU1EQIVPLi>}4^L^*Eh6}K^$?S-G4xW^p*p@8t4 ziM&%}MS}yKDU89+29~nEZQ)W8ryZDTrNw*WqUe`Om_>`%(Y6xcE(!;zJux!kzccFZ zI~yR3hTOW2OqqfEKQ4fm3a`9cNWBLtzn1t*o~3%835BPy|IU7WMO_+5Ar|#$(|=jh zR`cS$fE$&#a0bfJKUsxN`130vA4p{w8lSwc1ZmtJQS<92Un9M49rK%#zUPt!A9%?% z5(|(V@CZ4LFO}tLXWz=+Qj%j>zqu{LdWnE_J2X>uohnasJE>S)nz=D+^2=^eDQnN- z84{o@ijq?q7v-dC<(ilCZsi&v%DNt}6(r5d#BHW8Mw&{xGA~F1BLJG!bt=oC6(Tb$^Hbtf9~p0>;H6z?D#)F{wP}b?i9PDEmyFQI^w^852S_`$ zzVA*5y5(|EzbmU48MKvx%1q{-NCo5>{#el!NLQ50icdBcj`vhh4dYKtSd8gp(Y=)_ zYZlv>{LmreT4HCyS0~PrRbe070hJ^DAg~+wP$WHu3!SVSdo#~~d&$#hywXp|i-DPu zD@yC8V3zyp=Tu!$-aDi4L*0+2E+KwBoSaOF$H3HH&g9`F+1tvlZ)qcC1tjw&yiM>F z@?l_L;wtcTw(wQuQlh^Ajep&ql-wvJ2;iGhVvT!$>{tHmsUZ6$uCq~Eg_=t?0S7ya zi%GJq@41&A{h(P3=*j`^2qYKFDk!)zFuarL7S2=bK%)gS1q7Q?_{#I+Ejli~bJ10m z56GX;buC8I3R3P57iRPL?;(td*3C! zYs8J#((3yDs3%5Oppf!}_{qFi7I!CpyqK9DiiU4X0^|iou04z@h)FgEWw2dJ+)2D; z=CTvp{ZUski@U`{*jaD`dS6%WS*A0G>~*n8-&B-oGc^7IFjU0~z5^g}DLVI#$ISN} zL3&-~bOqS&e2iUP<9z(v!zwIq2RbM+(!!P}N47fl*EoDguPYHo=*+AFuq~{+G_%<@ zbu|rhR**9Zt^zJuCUaGXKxtQiO@f28#!xqs4}&C|08CsZ z0~3B}JFSvzEHf<0)*Tz9ReudmLT>{Ee}h9^ymheqg+xtpoh+69)jbrOEbIIY;f@yN z1+I>?67!{zkIKL1;2~QA-;E*Qc!mARd#T}sN`0T zc*D2xpi6#DG9YjGYQjWG`z|g%QexS!J#bTklKr`T4bZGdv;SlGzUz;^&G6e;i5K2# zm^|U+H~)QqzT=SwveGS}7SAiq{NE5xW2n-bNrcQK!hn8-UW;Bh&l&BJ3!obg68VpE z?JOhmiUyqCJ}%j|VT%84V*3*A_`_3fl!oqS^t+D&Q=AarDt_NF{#ov5SzV|T9RNfJ z7;Ag>9l^I^((q^0+P;gTe_Mf(^5iN?b_n#1Ze3R>Xu*V zqg8x-LLK&%=2h1(p8FTxtPpg91#B#Y>U09Xobc{n=e#bUO|w8iKKNlo%?m9aaKoAJ{1@N%VU8znGc=+!8egsuey-s<&VS3V zo=RKjT9q&#bEP`puEB>)p=N19)vY`cQ0J}mhB0@w@}ozy3$aR57C@W)FQ@71-klmV zp;;}GOnrcfqyGJ}X^DPeOKS1rXP+mhf@1xOeecU&Q^kCC zawQ{e97qSuj*%%urF4WuDQLto{ds!!;w}df%q|0VxCL@e>_P6dcxk$CSZ<*&2b(IF z0}}s7Bxz)f?a;FevUvysyTiKof4_vDX^#qj?)R6k$B7( zoS(?Ymm9biDnVv{C79{^0jR_<$F6b^N@h@O3@>=wo>VLJY`xODwB{JNW~%e;)B zv?==2q+9RM@r3#*0rC1pY1_giBjO388gWf4i6|EDqa5=7ylH{?uh7(I|be^=J)^H2x=eC?8i_ zVt79{{A!7UMrp6>R1lKmOk4O|gzb%K_nY2AX><1L(?XULn7(DFjouFsG}>vt>{}wS zP;|)RY~j9LC|YE!@OqSepqXofD8h%V%^YhLkWh1Pf0a~ z$PtbZi9+U!K%uWEj7S+u+PF^#=F@I%Li>l+$|0`E?Ctf?GGg(^h0BUr(l3}X{5z^A z!}o}Srqsn81DMyw(qVQJ94q0!5fu!Y-R%0t7_9#~a}9T3>t7$o2lR+_wGlIRB(U_R z4w`Bw!R)Q*O`s%4cg^i9rFUKP)9eo&>r8EX&jW@aZasL*PVCOrYi$oIUe~n zXd9)MT1v=;G={3W5=!gDQp&hltVF;L6PQd@J`d zd_SzQ7+f-2l(HfaDo*OdrglynJS)b^uJj#`h;!89Lr(tQkfwyWTYkFzzdshhlx07W z`9(E!yEKBHCIMcHH2^-Nv;n(L+30LjV$Q+h<(Ual|LvK75}bOTF3;kmCPNDO6YZ3A z$nhW2GRwLnU)&$QDf&ZH+t-$eOwYBhD6`kqkgG_N+H*`hVM)%H%YDaL+T<$yr%L;o zV=N+tFKu@{d`9cjLp=>;5xItt-0tc5Dy!v33e@>894k9Pzgn#jFU zkutSrryHGqOG*vn?NighA$R)jhf*@W|>^d-ylgurLD+rUk|zb$j{%_rtqQw?KxQcm-e-*2qCN}}5069=jAe>_Z+Xv+Qm zf8weMnrIcIPS#vMPq)YT@WmIS>_6<#Kf0KQkdFkbshO8G&k;uAfu-9uFHtw_E|vBy zkescPG2RyI@*kCQP>>JvVWua=3Dh6^ z)JzUK_nWA<%Pj>3>(dR#;v2S-J6vA;YQuz`Fvb&G2uA> z!C6QRy|vMqC-r1L*B06HLR`jTx5y`LMjF;Ee(R9or)y~Fy%w=g+-l83{ne0pjX3AK zYo(=aA&UExgOrrK!u9fXVDk`yZK9-y>2eM!H5jpLS1#>nV!erBb@%!O(cp-zsZLdo zkMT1*DW8;h?#Kq+`er~?!r;gc*IL=;>;6xpdTL8!gysF!JJT}p1jc+jwU=sKpK0^@ zF5FM(y!VVF+0m_Z)^c- zdZavcL7t}Rp&S-cR$tT(@5BQ!J|Hz_wQRbx89tL<=12h8GU6r!O4QOJbpiSPkJ_aO z?=HW$4_eLPX&P^{RjjHf4Dtbd%fc@wdpA9)eoO`O)?}`Yp18g!Ik;aYn@)V0<-oU(TY?9m$NG3ALVZ{M9l*8vvQRsi-78{gR zB^J8w9XA~^9a_H+=|-&W7T(4kRKI}Tj)_a`=s{ddZeb|vaooBY+tHcBk%xq|JAXKc z0lb*zb#p5or(^Rr%?%0BZbG9wC(kh_{+=i6uK}6)n{{W5H?M9k&-B$M;-fB?z=AUU z`|#p$-Ve@QeTz#qvsc9Cc2pcGWk2HjtS87twALywYbb`j?EcB6gX3CE&#TOo1ONp) z=|tu%M+5^Q*I>_lvqT`jY@NmhRixIwsOA)FY+b^0E%DJI z{!n@FMo0p}gCSf>z-aO!LbC5Q5C{}8y>vqrW9NY}J;bM29^Mrk?Nww(RItXH;-?8a zsxo4>z?}$y;)|FbeIY0mMpR)to6Lt2cmm68(4Bd(meIq{+GNg{wqa;{w!rJr9i#<5 zEqj9mdK=rIyP1^CXo85b(P_Eo$|A!NdMw%o3wTuuo>VktPMHziVgah}L-o&+Z5G&?UXiq?b7xT)}za=uiNb32!PzEzY zywjK*0WlD_$-=$_An)Hr#6naWncs=Xp;j4F`2Q@>W#1z_n34RB5(ziDRvW7MJeu)6 zX_ovn0~2^-k2jG)bORrkGa-T2W4k1rLo+XMMaVC}4q{eu&NtEhu$yZfm!Y9;7pu7B ztBS=S<$z=+@h*3sV&zA;w6zpbsJ60>M=^Qn^b7I99e#wAB)y}9sm5XjE+8w|_!g8{ z<(cm_kHgy*Awm!Lu{wm0h)=Us7ALG_Q)KiwZdBrW3I`P?2& z3o;ElU13>^_niMXIUyyF`=Qjl@~iVaan(=;2IhDEjY_Y-)i^7pE9;&YS=Q&><%}NV z`2JD+59i8YU+M^FYeUib$OCFauvDABl{GD+hj;D$Ir}r##r3+#nwV$YE7mltwd&$& zIxl#-czWrL5$RHc;-GuhzlhAmkBSVQ-LrV3bH-B2;(VN$C*a&g<2NijLQK^xIm*iK z)yH%)SBG$+zreRli(8wsNLckhxeI$hP2HYQzboG^+IYzaX*{=@AmOh^{HbD@4xLg~ ztn1+g0-y2sw4wZs4_V7Ih7V@8c`h|~iL4vDVd8Rrpz#;1T~k{2!yl5J_w-foSK3E- zsa%~W0t3%u)(Y#Kod?tn6A~5WOKbyL7l#zEUk?>flU$uuQd0COfU>SS4lxO7d+cMm zx=H8({w|cg8;Y=P;_rKaxqi#nRxSf0ESUlvG%2|-Dlc8tq@tCtPB7{a`*r2nJ7s0b zB?ocAmY#71s$dh6pqWS2$Nn9_CfQ^oQk6PJ;zxkW2%2S#f+ha^sv)eAS!7;sx8+JAqvr%YieHH2ZHV-z7et;n7tR49l^@SUuNyq#8H8a^)GFmyWhd*O3q(+|PuLhHC3;-?NyE1cZvcH@jzt$&HYhYQiK{ z373)HI3J*TLIM}Yb}F^Yodf!!I?bu9T5HXUtm1OAbvHVHq1ywc{g;%(1M^q<{HGvJ z#P2p(S(_#V=k^uG`~!jI%@aW7Xl;XtzIv%IA;0}8QF~X?{m>S(Nd~oz(m?shA&%U{ zPxkQraX~9tmGmKM5GA~NV)+UqXq1GZFw&{Z%7}CBdZRd18iM#hlUdQur1do&DVy7w3?xi9XM?NHAe? z#MC8T6=t6W)mJA_o_+k!vFR3zjvxCs0KXyP;URteqStzBJ$NZzy=_)Qe}kI7dzSe7 zLfv?%WcTC7?tt;e#~A%*Y&5Ca*$Xwp$5# z@`a90R4NZ`(aNLQ5=h6trx~YCD9cpezl8YJ{HA-4uba6$?ub~HdY8a`7`e~oj&b~s z?X?B|!6Gw3QZ7@gVv={tqt1PZKYMZu2VJox`*e%ejF}&;EXnLoHHeI;0^jEEO~>GF zJ=w#GLCkjAW!jpqDb;OEgF+fXk&>F8l;U$H->hvFJX63;oVLex>ZJ?l-s4XF6|voS z9vK+r@{C+4GU&5E{z>i8f5poWiBMG)6^R!an$DqKxN3aH7^wI3OQc^w3aFCRB&=(b zfKO8%2?>L2FLCv&cX?#zPIfzQr>>v>ReNBlxQSmahO=~=tZ*IotBOKo=Z|y2$DQ+*9%F={s%FdX;CH zq$Qn?eb{rlKMy$-SB3JK48>+KP@&x7u#@KrhV-S@YAe@^oneX>ePw44jjY{SZFR)ai7`xw6{NUb#gf!=7TA6NDK{ zDuN3<4Rz!d4i%HOPaMVzxZm|BYOm-&w~M&4{dzVf;7z~0vCFbN=vA>rHYW>v{#?IvixnS&V@Obx1KSKX30Cb6`r{6G;%S;88S%GToF z_Ww+5MBIP&`EO!$Djy|*TK=UA#tUm7i38LPQvL>$vS0htiHPdqSMz4)ifUM?^o@>HM;JG}0B1B}Wg)n;5qli>~Qk_Q7WW6R%XQhgq1>4!bt|2+(8 z|5fp>;p;{$va@}ZAM39%9^_Y(EmN#66 zL7rNr0Lm3iIk|e7XWP62>@TC6(uQieKjzZHDvZ0M6fbN%pBt~T(g?-qdw*vMEQ{>Q z4PA9!2Up0$w~}35yrjk0!!m-HM!6sSEh`l$*b>sI`k)JIsM4D!Ty1Onx8Ah56CP(# zL$UBTmp30}Qr`(jy+&9u&~NlxZh)|ZLn~Kj{inL5QK3Nqi6X=Q;E~2X>wXLCj=&R~ zzt0{|$GaJGo8Q<@?Qkwbb-s{2O}+hn^;6E>zLmTw<`oK`T{0CP!M177t|sygH#Z;$ zK-KckjCuG46kXysLEPKEdjUH$9Iu(*_=*|nF)}t1ySq{`-2%2H7rnircNBM0RO9tcs4ZYHy|1(N zgTJ8{mRFj)Smgue>>2$qh&jUXJ9O0`EA#t4$G>w5UMsLlTnhdB z)x`SmaW5~>OmnDPp=NkrPaawA(a6?tpyW7frx6SQ^8%xq>gvTw>#fqjnJLSnKWa)$ zjtl|;jl0pW4e>5H^thGk8$EQx!!dbE4#7|Nel{>v1Z!)Z34XTQCKPy5e{Ifj>D*#Q zgiZZ9|ca;6Kt~>Kn{bk&>Y@lt&`g`Bte@++xAf zi~)viu8FYxJLSMAxbu3ew;{LvB;?D1KS~HOc_aO}sB0<;6n1Ixz&sQjndak<&s`|b zJ=~vY3|Vjc>Wnw)e{K?)yfrnpP$G3ja|%>WDRUa$@sAi?7yBbQXlT+#Tu=3&Jg~2@ z72iyCca|azlHQ=fPLundr=8)}Xi<`3PX6PU2KFvnsViFHnIincF|J0w5fwc=!e#t8nD`LH1_0lX)e?L$~aDqSm&!Ju~y9kCf z*!Prqp)dF_|IDX1<1==*D!W+(%YOUxTJCP}1T=<@-S+)ue>K+o-e);8Guuy})+IL! zUl*X0#&n`qp0$mSw#6(t^OZnqAPqn^Ax2(!ks00!_?iiFB!VF`K`aNcqw%S2>u|bhi z=<+aqPM6NIAZd8p`Vy>LW)$FHPfgv?uM=5HQ8x8aSicF_MX;-t1pE6VVg2SM8RB?W zek8_@n(HtGAii6ZiL;zV9*V;E=e8opnbZ@r3JZWx{W5*Ad3#DAAtlGdac-W}y~#{6 zZ8f8q?~DR=r)D9A8cAOQBXD@+sp{u8Pa8?p=qNVu)Nt!0SGo+^J)l|E_Ndan#ZNtd zYjpX#^B6vByR8lnhZqoIw+fWMauxe0A3e}GIJWFq#=*YoaZFK#!Y6&Ewo+>iN!~5d z&B#vUEeHF#&1Jko>Lm)--4dF|!E1&%qw_wSV4cXo`Yj+F<5XV7R>;SQUE)X?xgH&u z@kwO0osA7?F77UtRSXINZOYsnm$s&}zdk0EloCItg{fOzrAMSeQuvGBuKE~E1B2_L z%l%V#-pa0JCv|1@JxzGf;eN*(Ys-CcG{w1iX@%@evi64LqTU&Kj{>;9brXTT%vO%0 zYLnkrxtrmFP^0Biq7}F$Bru8~GF6qb{vH`E8KHoXZAt%Gdt8jn_s2CXv-Ih!XQPc} zNgHi@n(P(xS~zo1pj--bG2&|BB=h~e$(^Kw=s)T$20488(*AXey{7ui>i;%D!oH({ z>S2wpN_kYco78(=#n`e*yB6Z|U_ub3syn=5h&m^a0TLvxBuzYMY}U6L4bN!Jd{a?A zEdakf5UA7}w`SF!_la}6NG3MXyNO`=<8hT*b=cF|_Y+jheO!90)?UEL5>iiw@9Vr8 zdq&t?!JjH!vUl~y2-iy0zOc|b(k!2QiE^4*&oF literal 0 HcmV?d00001 diff --git a/windows/deployment/images/UR-monitor-main.png b/windows/deployment/images/UR-monitor-main.png new file mode 100644 index 0000000000000000000000000000000000000000..83904d3be2de80b1860b56a97e83a7bf1b71921b GIT binary patch literal 177680 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%0Ap^Tk#62*8Tu&%FL3djk>l42A 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

4xmiF(Yo?o233=gm5 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 z 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 literal 0 HcmV?d00001 diff --git a/windows/deployment/upgrade/upgrade-readiness-deploy-windows.md b/windows/deployment/upgrade/upgrade-readiness-deploy-windows.md index b5f0b2b68b..3aabb7b13b 100644 --- a/windows/deployment/upgrade/upgrade-readiness-deploy-windows.md +++ b/windows/deployment/upgrade/upgrade-readiness-deploy-windows.md @@ -1,8 +1,8 @@ --- -title: Upgrade Readiness - Get a list of computers that are upgrade-ready (Windows 10) +title: Upgrade Readiness - Get a list of computers that are upgrade ready (Windows 10) description: Describes how to get a list of computers that are ready to be upgraded in Upgrade Readiness. ms.prod: w10 -author: greg-lindsay +author: jaimeo ms.date: 04/19/2017 --- diff --git a/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md b/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md new file mode 100644 index 0000000000..0f5b9e3730 --- /dev/null +++ b/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md @@ -0,0 +1,48 @@ +--- +title: Monitor deployment with Upgrade Readiness +description: Describes how to use Upgrade Readiness to monitor the deployment after Windows upgrades. +keywords: windows analytics, oms, operations management suite, prerequisites, requirements, upgrades, log analytics, +ms.localizationpriority: medium +ms.prod: w10 +author: jaimeo +ms.author: jaimeo +ms.date: 11/05/2018 +--- + +# Upgrade Readiness - Step 4: Monitor + +Now that you have started deploying an update with Upgrade Readiness, you can use it to monitor important elements. + +![Upgrade Readiness dialog showing "STEP 4: Monitor" and blades for "Update progress," "Driver issues," and "User feedback"](../images/UR-monitor-main.png) + + +## Update progress + +The **Update progress** blade allows you to monitor the progress and status of your deployment. Any device that has attepted to upgrade in the last 30 days displays the **DeploymentStatus**. You'll be able to see the number of computers that have successfully upgraded, failed to upgrade, are stalled, etc. {what does "uninstalled" mean? Should we have some more detailed explication of each of the states and what admin actions are recommended for each?} + + +Selecting this blade allows you to view device-level details about the deployment. For example, select **Failed**, to view the original operating system version, the target operating system version, and the reason the update failed for each of the devices that failed to upgrade. In the case of the device illustrated in the following image, an attempt was made to upgrade from Windows 10, version 1703 to 1709, but the operation timed out.' + +!["Update progress" blade showing detailed information after selecting the "failed" item](../images/UR-update-progress-failed-detail.png) + + +## Driver issues + +The **Driver issues** blade allows you to see Device Manager errors for your upgraded devices. We include data for all compatibility-related device errors, such as "driver not found" and "driver not started". The blade summarizes errors by error type, but you can select a particular error type to see device-level details about which device(s) are failing and where to obtain a driver. + + +For example, by selecting error code **28 - driver not installed**, you would see that the device below is missing the driver for a network controller. Upgrade Readiness also notifies that a suitable driver is available online through Windows Update. If this device is configured to automatically receive updates from Windows Update, this issue would likely resolve itself following the device's next Windows Update scan. If this device does not automatically receive updates from Windows Update, you would need to deliver the driver manually. + +!["Driver issue" blade showing detailed information after selecting a specific driver error](../images/UR-driver-issue-detail.png) + +## User Feedback + +The **User Feedback** blade focuses on gathering subjective feedback from your end users. If a user submits feedback through Feedback Hub app on a device in your workspace, we will make that feedback visible to you in this blade. The Feedback Hub app is built into Windows 10 and can be accessed by typing "Feedback Hub" in the Cortana search bar. + + +We recommend that you encourage your end users to submit any feedback they have through Feedback Hub. Not only will this feedback be sent directly to Microsoft for review, but you'll also be able to see it by using Upgrade Readiness. You should be aware that **feedback submitted through Feedback Hub will be publicly visible**, so it's best to avoid submitting feedback about internal line-of-business applications. + +When viewing user feedback in Upgrade Readiness, you'll be able to see the raw "Title" and "Feedback" text from the user's submission in Feedback Hub, as well as the number of upvotes the submission has received. (Since feedback is publicly visible, the number of upvotes is a global value and not specific to your company.) If a Microsoft engineer has responded to the submission in Feedback Hub, we'll pull in the Microsoft response for you to see as well. + +![Example user feedback item](../images/UR-example-feedback.png) + \ No newline at end of file From 126402c462f01a51c838375e366ec7d4f9a4b796 Mon Sep 17 00:00:00 2001 From: Justin Hall Date: Tue, 6 Nov 2018 13:56:41 -0800 Subject: [PATCH 3/7] edit --- .../protect-enterprise-data-using-wip.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/windows/security/information-protection/windows-information-protection/protect-enterprise-data-using-wip.md b/windows/security/information-protection/windows-information-protection/protect-enterprise-data-using-wip.md index 8ce020a25f..ed41a8ef23 100644 --- a/windows/security/information-protection/windows-information-protection/protect-enterprise-data-using-wip.md +++ b/windows/security/information-protection/windows-information-protection/protect-enterprise-data-using-wip.md @@ -8,7 +8,7 @@ ms.mktglfcycl: explore ms.sitesec: library ms.pagetype: security ms.author: justinha -ms.date: 06/18/2018 +ms.date: 11/06/2018 ms.localizationpriority: medium --- @@ -24,6 +24,10 @@ With the increase of employee-owned devices in the enterprise, there’s also an Windows Information Protection (WIP), previously known as enterprise data protection (EDP), helps to protect against this potential data leakage without otherwise interfering with the employee experience. WIP also helps to protect enterprise apps and data against accidental data leak on enterprise-owned devices and personal devices that employees bring to work without requiring changes to your environment or other apps. Finally, another data protection technology, Azure Rights Management also works alongside WIP to extend data protection for data that leaves the device, such as when email attachments are sent from an enterprise aware version of a rights management mail client. +## Video: Protect enterprise data from being accidentally copied to the wrong place + +> [!Video https://www.youtube.com/embed/1s09SrwxccM] + ## Prerequisites You’ll need this software to run WIP in your enterprise: From a94397275a6917bad14c86e207fe0c041d0f29d0 Mon Sep 17 00:00:00 2001 From: Joey Caparas Date: Tue, 6 Nov 2018 14:11:52 -0800 Subject: [PATCH 4/7] add link to PDF --- ...uirements-windows-defender-advanced-threat-protection.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/windows/security/threat-protection/windows-defender-atp/minimum-requirements-windows-defender-advanced-threat-protection.md b/windows/security/threat-protection/windows-defender-atp/minimum-requirements-windows-defender-advanced-threat-protection.md index db250caeda..97ff492e3b 100644 --- a/windows/security/threat-protection/windows-defender-atp/minimum-requirements-windows-defender-advanced-threat-protection.md +++ b/windows/security/threat-protection/windows-defender-atp/minimum-requirements-windows-defender-advanced-threat-protection.md @@ -11,7 +11,7 @@ ms.pagetype: security ms.author: macapara author: mjcaparas ms.localizationpriority: medium -ms.date: 07/01/2018 +ms.date: 11/06/2018 --- # Minimum requirements for Windows Defender ATP @@ -30,7 +30,9 @@ Windows Defender Advanced Threat Protection requires one of the following Micros - Windows 10 Education E5 - Microsoft 365 E5 (M365 E5) which includes Windows 10 Enterprise E5 -For more information, see [Windows 10 Licensing](https://www.microsoft.com/en-us/Licensing/product-licensing/windows10.aspx#tab=2). +For more information on the array of features in Windows 10 editions, see [Compare Windows 10 editions](https://www.microsoft.com/en-us/windowsforbusiness/compare). + +For a detailed comparison table of Windows 10 commercial edition comparison, see the [comparison PDF](https://wincom.blob.core.windows.net/documents/Windows10_Commercial_Comparison.pdf). ## Related topic From 200b733f9117d10fc0682e1b8703a2f978df257b Mon Sep 17 00:00:00 2001 From: "Andrea Bichsel (Aquent LLC)" Date: Wed, 7 Nov 2018 17:13:23 +0000 Subject: [PATCH 5/7] Lsass rule does honor exclusions. --- .../customize-attack-surface-reduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows/security/threat-protection/windows-defender-exploit-guard/customize-attack-surface-reduction.md b/windows/security/threat-protection/windows-defender-exploit-guard/customize-attack-surface-reduction.md index a948e7db7e..8bbe633287 100644 --- a/windows/security/threat-protection/windows-defender-exploit-guard/customize-attack-surface-reduction.md +++ b/windows/security/threat-protection/windows-defender-exploit-guard/customize-attack-surface-reduction.md @@ -58,7 +58,7 @@ Block JavaScript or VBScript from launching downloaded executable content | [!in Block executable content from email client and webmail | [!include[Check mark no](images/svg/check-no.svg)] | BE9BA2D9-53EA-4CDC-84E5-9B1EEEE46550 Block executable files from running unless they meet a prevalence, age, or trusted list criteria | [!include[Check mark yes](images/svg/check-yes.svg)] | 01443614-cd74-433a-b99e-2ecdc07bfc25 Use advanced protection against ransomware | [!include[Check mark yes](images/svg/check-yes.svg)] | c1db55ab-c21a-4637-bb3f-a12568109d35 -Block credential stealing from the Windows local security authority subsystem (lsass.exe) | [!include[Check mark no](images/svg/check-no.svg)] | 9e6c4e1f-7d60-472f-ba1a-a39ef669e4b2 +Block credential stealing from the Windows local security authority subsystem (lsass.exe) | [!include[Check mark yes](images/svg/check-yes.svg)] | 9e6c4e1f-7d60-472f-ba1a-a39ef669e4b2 Block process creations originating from PSExec and WMI commands | [!include[Check mark yes](images/svg/check-yes.svg)] | d1e49aac-8f56-4280-b9ba-993a6d77406c Block untrusted and unsigned processes that run from USB | [!include[Check mark yes](images/svg/check-yes.svg)] | b2b3f03d-6a65-4f7b-a9c7-1c7ef74a9ba4 Block Office communication applications from creating child processes | [!include[Check mark yes](images/svg/check-yes.svg)] | 26190899-1602-49e8-8b27-eb1d0a1ce869 From f66ed3b32c9ae5d1792e3dd36571709f540829df Mon Sep 17 00:00:00 2001 From: jaimeo Date: Wed, 7 Nov 2018 09:59:20 -0800 Subject: [PATCH 6/7] fixed some typos and yooked up TOC --- windows/deployment/TOC.md | 1 + .../upgrade-readiness-monitor-deployment.md | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/windows/deployment/TOC.md b/windows/deployment/TOC.md index ce9e1629c5..aa375d690f 100644 --- a/windows/deployment/TOC.md +++ b/windows/deployment/TOC.md @@ -260,6 +260,7 @@ ##### [Step 1: Identify apps](upgrade/upgrade-readiness-identify-apps.md) ##### [Step 2: Resolve issues](upgrade/upgrade-readiness-resolve-issues.md) ##### [Step 3: Deploy Windows](upgrade/upgrade-readiness-deploy-windows.md) +##### [Step 4: Monitor deployment](upgrade/upgrade-readiness-monitor-deployment.md) ##### [Additional insights](upgrade/upgrade-readiness-additional-insights.md) ##### [Targeting a new operating system version](upgrade/upgrade-readiness-target-new-OS.md) ### [Monitor Windows Updates with Update Compliance](update/update-compliance-monitor.md) diff --git a/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md b/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md index 0f5b9e3730..be3d2aee32 100644 --- a/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md +++ b/windows/deployment/upgrade/upgrade-readiness-monitor-deployment.md @@ -6,7 +6,7 @@ ms.localizationpriority: medium ms.prod: w10 author: jaimeo ms.author: jaimeo -ms.date: 11/05/2018 +ms.date: 11/07/2018 --- # Upgrade Readiness - Step 4: Monitor @@ -18,26 +18,26 @@ Now that you have started deploying an update with Upgrade Readiness, you can us ## Update progress -The **Update progress** blade allows you to monitor the progress and status of your deployment. Any device that has attepted to upgrade in the last 30 days displays the **DeploymentStatus**. You'll be able to see the number of computers that have successfully upgraded, failed to upgrade, are stalled, etc. {what does "uninstalled" mean? Should we have some more detailed explication of each of the states and what admin actions are recommended for each?} +The **Update progress** blade allows you to monitor the progress and status of your deployment. Any device that has attepted to upgrade in the last 30 days displays the **DeploymentStatus** attribute. You'll be able to see the number of computers that have successfully upgraded, failed to upgrade, are stalled, etc. -Selecting this blade allows you to view device-level details about the deployment. For example, select **Failed**, to view the original operating system version, the target operating system version, and the reason the update failed for each of the devices that failed to upgrade. In the case of the device illustrated in the following image, an attempt was made to upgrade from Windows 10, version 1703 to 1709, but the operation timed out.' +Selecting this blade allows you to view device-level details about the deployment. For example, select **Failed** to view the original operating system version, the target operating system version, and the reason the update failed for each of the devices that failed to upgrade. In the case of the device illustrated in the following image, an attempt was made to upgrade from Windows 10, version 1703 to 1709, but the operation timed out. !["Update progress" blade showing detailed information after selecting the "failed" item](../images/UR-update-progress-failed-detail.png) ## Driver issues -The **Driver issues** blade allows you to see Device Manager errors for your upgraded devices. We include data for all compatibility-related device errors, such as "driver not found" and "driver not started". The blade summarizes errors by error type, but you can select a particular error type to see device-level details about which device(s) are failing and where to obtain a driver. +The **Driver issues** blade allows you to see Device Manager errors for your upgraded devices. We include data for all compatibility-related device errors, such as "driver not found" and "driver not started." The blade summarizes errors by error type, but you can select a particular error type to see device-level details about which device(s) are failing and where to obtain a driver. -For example, by selecting error code **28 - driver not installed**, you would see that the device below is missing the driver for a network controller. Upgrade Readiness also notifies that a suitable driver is available online through Windows Update. If this device is configured to automatically receive updates from Windows Update, this issue would likely resolve itself following the device's next Windows Update scan. If this device does not automatically receive updates from Windows Update, you would need to deliver the driver manually. +For example, by selecting error code **28 - driver not installed**, you would see that the device in the following image is missing the driver for a network controller. Upgrade Readiness also notifies that a suitable driver is available online through Windows Update. If this device is configured to automatically receive updates from Windows Update, this issue would likely resolve itself following the device's next Windows Update scan. If this device does not automatically receive updates from Windows Update, you would need to deliver the driver manually. !["Driver issue" blade showing detailed information after selecting a specific driver error](../images/UR-driver-issue-detail.png) -## User Feedback +## User feedback -The **User Feedback** blade focuses on gathering subjective feedback from your end users. If a user submits feedback through Feedback Hub app on a device in your workspace, we will make that feedback visible to you in this blade. The Feedback Hub app is built into Windows 10 and can be accessed by typing "Feedback Hub" in the Cortana search bar. +The **User Feedback** blade focuses on gathering subjective feedback from your end users. If a user submits feedback through the Feedback Hub app on a device in your workspace, we will make that feedback visible to you in this blade. The Feedback Hub app is built into Windows 10 and can be accessed by typing "Feedback Hub" in the Cortana search bar. We recommend that you encourage your end users to submit any feedback they have through Feedback Hub. Not only will this feedback be sent directly to Microsoft for review, but you'll also be able to see it by using Upgrade Readiness. You should be aware that **feedback submitted through Feedback Hub will be publicly visible**, so it's best to avoid submitting feedback about internal line-of-business applications. From de2ca4f5e542e167cf943a8f1329afa53f4259bb Mon Sep 17 00:00:00 2001 From: Brian Lich Date: Wed, 7 Nov 2018 21:36:06 +0000 Subject: [PATCH 7/7] Additional diagnostic data events --- ...ndows-diagnostic-events-and-fields-1703.md | 497 +++++- ...ndows-diagnostic-events-and-fields-1709.md | 1092 +++++++++--- ...ndows-diagnostic-events-and-fields-1803.md | 1331 ++++++++++++++- ...ndows-diagnostic-events-and-fields-1809.md | 1504 ++++++++++++++++- 4 files changed, 4075 insertions(+), 349 deletions(-) diff --git a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1703.md b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1703.md index dce0c91085..ada643a31a 100644 --- a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1703.md +++ b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1703.md @@ -9,7 +9,7 @@ ms.pagetype: security localizationpriority: high author: brianlic-msft ms.author: brianlic -ms.date: 09/10/2018 +ms.date: 11/07/2018 --- @@ -28,6 +28,7 @@ Use this article to learn about diagnostic events, grouped by event area, and th You can learn more about Windows functional and diagnostic data through these articles: + - [Windows 10, version 1809 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1809.md) - [Windows 10, version 1803 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1803.md) - [Windows 10, version 1709 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1709.md) @@ -60,15 +61,15 @@ The following fields are available: - **DecisionMatchingInfoPostUpgrade_RS3** The total DecisionMatchingInfoPostUpgrade objects targeting the next release of Windows on this device. - **DecisionMediaCenter_RS3** The total DecisionMediaCenter objects targeting the next release of Windows on this device. - **DecisionSystemBios_RS3** The total DecisionSystemBios objects targeting the next release of Windows on this device. -- **InventoryLanguagePack** The count of DecisionApplicationFile objects present on this machine targeting the next release of Windows -- **InventorySystemBios** The count of DecisionDevicePnp objects present on this machine targeting the next release of Windows -- **PCFP** The count of DecisionDriverPackage objects present on this machine targeting the next release of Windows -- **SystemProcessorCompareExchange** The count of DecisionMatchingInfoBlock objects present on this machine targeting the next release of Windows -- **SystemProcessorNx** The count of DataSourceMatchingInfoPostUpgrade objects present on this machine targeting the next release of Windows -- **SystemProcessorSse2** The count of DecisionMatchingInfoPostUpgrade objects present on this machine targeting the next release of Windows -- **SystemWim** The count of DecisionMediaCenter objects present on this machine targeting the next release of Windows -- **SystemWindowsActivationStatus** The count of DecisionSystemBios objects present on this machine targeting the next release of Windows -- **SystemWlan** The count of InventoryApplicationFile objects present on this machine. +- **InventoryLanguagePack** The total InventoryLanguagePack objects that are present on this device. +- **InventorySystemBios** The total InventorySystemBios objects that are present on this device. +- **PCFP** An ID for the system that is calculated by hashing hardware identifiers. +- **SystemProcessorCompareExchange** The total SystemProcessorCompareExchange objects that are present on this device. +- **SystemProcessorNx** The total SystemProcessorNx objects that are present on this device. +- **SystemProcessorSse2** The total SystemProcessorSse2 objects that are present on this device. +- **SystemWim** The total SystemWim objects that are present on this device +- **SystemWindowsActivationStatus** The total SystemWindowsActivationStatus objects that are present on this device. +- **SystemWlan** The total SystemWlan objects that are present on this device. - **Wmdrm_RS3** The total Wmdrm objects targeting the next release of Windows on this device. @@ -334,7 +335,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.DecisionApplicationFileRemove -This event indicates that the DecisionApplicationFile object is no longer present. +This event indicates Indicates that the DecisionApplicationFile object is no longer present. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -670,7 +671,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.InventoryApplicationFileStartSync -This event indicates that a new set of InventoryApplicationFileAdd events will be sent. +This event indicates indicates that a new set of InventoryApplicationFileAdd events will be sent. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -1472,6 +1473,12 @@ The following fields are available: - **SocketCount** Number of physical CPU sockets of the machine. +### Census.Security + +Provides information on several important data points about security settings. + + + ### Census.Speech This event is used to gather basic speech settings on the device. @@ -2058,6 +2065,23 @@ The following fields are available: - **devinv.dll** The file version of the Device inventory component. +### Microsoft.Windows.Inventory.Core.FileSigningInfoAdd + +This event enumerates the signatures of files, either driver packages or application executables. For driver packages, this data is collected on demand via Telecommand to limit it only to unrecognized driver packages, saving time for the client and space on the server. For applications, this data is collected for up to 10 random executables on a system. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **CatalogSigners** Signers from catalog. Each signer starts with Chain. +- **DriverPackageStrongName** Optional. Available only if FileSigningInfo is collected on a driver package. +- **EmbeddedSigners** Embedded signers. Each signer starts with Chain. +- **FileName** The file name of the file whose signatures are listed. +- **FileType** Either exe or sys, depending on if a driver package or application executable. +- **InventoryVersion** The version of the inventory file generating the events. +- **Thumbprint** Comma separated hash of the leaf node of each signer. Semicolon is used to separate CatalogSigners from EmbeddedSigners. There will always be a trailing comma. + + ### Microsoft.Windows.Inventory.Core.InventoryApplicationAdd This event sends basic metadata about an application on the system to help keep Windows up to date. @@ -2251,7 +2275,7 @@ The following fields are available: - **Enumerator** The bus that enumerated the device - **HWID** A JSON array that provides the value and order of the HWID tree for the device. See [HWID](#hwid). - **Inf** The INF file name. -- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/library/windows/hardware/ff543130.aspx +- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/en-us/library/windows/hardware/ff543130.aspx - **InventoryVersion** The version of the inventory file generating the events. - **LowerClassFilters** Lower filter class drivers IDs installed for the device. - **LowerFilters** Lower filter drivers IDs installed for the device @@ -2379,6 +2403,90 @@ The following fields are available: - **InventoryVersion** The version of the inventory file generating the events. +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeAddInAdd + +Invalid variant - Provides data on the installed Office Add-ins + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeAddInRemove + +Indicates that this particular data object represented by the objectInstanceId is no longer present. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeAddInStartSync + +This event indicates that a new sync is being generated for this object type. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeIdentifiersAdd + +Provides data on the Office identifiers. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeIdentifiersStartSync + +Diagnostic event to indicate a new sync is being generated for this object type. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeIESettingsAdd + +Provides data on Office-related Internet Explorer features. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeIESettingsStartSync + +Diagnostic event to indicate a new sync is being generated for this object type. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeInsightsAdd + +This event provides insight data on the installed Office products + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeProductsAdd + +Describes Office Products installed. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeProductsStartSync + +Diagnostic event to indicate a new sync is being generated for this object type. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeSettingsAdd + +This event describes various Office settings + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeSettingsStartSync + +Indicates a new sync is being generated for this object type. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousUUPInfoAdd + +Provides data on Unified Update Platform (UUP) products and what version they are at. + + + +### Microsoft.Windows.Inventory.General.InventoryMiscellaneousUUPInfoStartSync + +Diagnostic event to indicate a new sync is being generated for this object type. + + + ### Microsoft.Windows.Inventory.Indicators.Checksum This event summarizes the counts for the InventoryMiscellaneousUexIndicatorAdd events. @@ -2546,14 +2654,14 @@ The following fields are available: - **AppVersion** The version of the app. - **BuildArch** Is the architecture x86 or x64? - **Environment** Is the device on the production or int service? -- **IsMSFTInternal** Is this an internal Microsoft device? -- **MachineGuid** The CEIP machine ID. +- **IsMSFTInternal** TRUE if the device is an internal Microsoft device. +- **MachineGuid** The GUID (Globally Unique ID) that identifies the machine for the CEIP (Customer Experience Improvement Program). - **Market** Which market is this in? - **OfficeVersion** The version of Office that is installed. - **OneDriveDeviceId** The OneDrive device ID. - **OSDeviceName** Only if the device is internal to Microsoft, the device name. - **OSUserName** Only if the device is internal to Microsoft, the user name. -- **UserGuid** A unique global user identifier. +- **UserGuid** The GUID (Globally Unique ID) of the user currently logged in. ### Microsoft.OneDrive.Sync.Updater.ComponentInstallState @@ -2605,12 +2713,12 @@ The following fields are available: ### Microsoft.OneDrive.Sync.Updater.UpdateOverallResult -This event determines the outcome of the operation. +This event sends information describing the result of the update. The following fields are available: - **hr** The HResult of the operation. -- **IsLoggingEnabled** Is logging enabled? +- **IsLoggingEnabled** Indicates whether logging is enabled for the updater. - **UpdaterVersion** The version of the updater. @@ -2642,6 +2750,43 @@ The following fields are available: - **winInetError** The HResult of the operation. +## Other events + +### Microsoft.Xbox.XamTelemetry.AppActivationError + +This event indicates whether the system detected an activation error in the app. + +The following fields are available: + +- **ActivationUri** Activation URI (Uniform Resource Identifier) used in the attempt to activate the app. +- **AppId** The Xbox LIVE Title ID. +- **AppUserModelId** The AUMID (Application User Model ID) of the app to activate. +- **Result** The HResult error. +- **UserId** The Xbox LIVE User ID (XUID). + + +### Microsoft.Xbox.XamTelemetry.AppActivity + +This event is triggered whenever the current app state is changed by: launch, switch, terminate, snap, etc. + +The following fields are available: + +- **AppActionId** The ID of the application action. +- **AppCurrentVisibilityState** The ID of the current application visibility state. +- **AppId** The Xbox LIVE Title ID of the app. +- **AppPackageFullName** The full name of the application package. +- **AppPreviousVisibilityState** The ID of the previous application visibility state. +- **AppSessionId** The application session ID. +- **AppType** The type ID of the application (AppType_NotKnown, AppType_Era, AppType_Sra, AppType_Uwa). +- **BCACode** The BCA (Burst Cutting Area) mark code of the optical disc used to launch the application. +- **DurationMs** The amount of time (in milliseconds) since the last application state transition. +- **IsTrialLicense** This boolean value is TRUE if the application is on a trial license. +- **LicenseType** The type of licensed used to authorize the app (0 - Unknown, 1 - User, 2 - Subscription, 3 - Offline, 4 - Disc). +- **LicenseXuid** If the license type is 1 (User), this field contains the XUID (Xbox User ID) of the registered owner of the license. +- **ProductGuid** The Xbox product GUID (Globally-Unique ID) of the application. +- **UserId** The XUID (Xbox User ID) of the current user. + + ## Remediation events ### Microsoft.Windows.Remediation.Applicable @@ -2807,7 +2952,7 @@ The following fields are available: - **usoScanIsNoAutoUpdateKeyPresent** TRUE if no Auto Update registry key is set/present. - **usoScanIsUserLoggedOn** TRUE if the user is logged on. - **usoScanPastThreshold** TRUE if the most recent USO (Update Session Orchestrator) scan is past the threshold (late). -- **usoScanType** The type of USO (Update Session Orchestrator) scan (Interactive or Background). +- **usoScanType** The type of USO (Update Session Orchestrator) scan: "Interactive" or "Background". - **WindowsHyberFilSysSizeInMegabytes** The size of the Windows Hibernation file, measured in Megabytes. - **WindowsInstallerFolderSizeInMegabytes** The size of the Windows Installer folder, measured in Megabytes. - **WindowsOldFolderSizeInMegabytes** The size of the Windows.OLD folder, measured in Megabytes. @@ -2939,11 +3084,11 @@ This event reports whether a plug-in started, to help ensure Windows is up to da The following fields are available: -- **CV** The Correlation Vector. -- **GlobalEventCounter** The client-side counter that indicates ordering of events. -- **PackageVersion** The version number of the current remediation package. -- **PluginName** The name of the plug-in specified for each generic plug-in event. -- **Result** The HRESULT for Detection or Perform Action phases of the plug-in. +- **CV** Correlation vector. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. ### Microsoft.Windows.Remediation.wilResult @@ -3821,7 +3966,7 @@ The following fields are available: - **RelatedCV** The previous Correlation Vector that was used before swapping with a new one - **RepeatFailFlag** Indicates whether this specific piece of content had previously failed to download. - **RevisionNumber** Identifies the revision number of this specific piece of content. -- **ServiceGuid** An ID which represents which service the software distribution client is installing content for (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** An ID which represents which service the software distribution client is installing content for (Windows Update, Windows Store, etc.). - **Setup360Phase** If the download is for an operating system upgrade, this datapoint indicates which phase of the upgrade is underway. - **ShippingMobileOperator** The mobile operator that a device shipped on. - **StatusCode** Indicates the result of a Download event (success, cancellation, failure code HResult). @@ -4118,6 +4263,22 @@ The following fields are available: - **UpdateId** Unique ID for each update. +### Update360Telemetry.UpdateAgent_FellBackToCanonical + +This event collects information when Express could not be used, and the update had to fall back to “canonical” during the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **PackageCount** The number of packages that fell back to “canonical”. +- **PackageList** PackageIDs which fell back to “canonical”. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + ### Update360Telemetry.UpdateAgent_Initialize This event sends data during the initialize phase of updating Windows. @@ -4152,6 +4313,22 @@ The following fields are available: - **UpdateId** Unique ID for each update. +### Update360Telemetry.UpdateAgent_Merge + +This event sends data on the merge phase when updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current reboot. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + ### Update360Telemetry.UpdateAgent_ModeStart This event sends data for the start of each mode during the process of updating Windows. @@ -4184,6 +4361,130 @@ The following fields are available: - **UpdateId** Unique ID for each update. +### Update360Telemetry.UpdateAgentDownloadRequest + +This event sends data for the download request phase of updating Windows via the new Unified Update Platform (UUP) scenario. Applicable to PC and Mobile. + +The following fields are available: + +- **DeletedCorruptFiles** Boolean indicating whether corrupt payload was deleted. +- **DownloadRequests** Number of times a download was retried. +- **ErrorCode** The error code returned for the current download request phase. +- **ExtensionName** Indicates whether the payload is related to Operating System content or a plugin. +- **FlightId** Unique ID for each flight. +- **InternalFailureResult** Indicates a non-fatal error from a plugin. +- **ObjectId** Unique value for each Update Agent mode (same concept as InstanceId for Setup360). +- **PackageCountOptional** # of optional packages requested. +- **PackageCountRequired** # of required packages requested. +- **PackageCountTotal** Total # of packages needed. +- **PackageCountTotalCanonical** Total number of canonical packages. +- **PackageCountTotalDiff** Total number of diff packages. +- **PackageCountTotalExpress** Total number of express packages. +- **PackageExpressType** Type of express package. +- **PackageSizeCanonical** Size of canonical packages in bytes. +- **PackageSizeDiff** Size of diff packages in bytes. +- **PackageSizeExpress** Size of express packages in bytes. +- **RangeRequestState** Indicates the range request type used. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the download request phase of update. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each attempt (same value for initialize, download, install commit phases). +- **UpdateId** Unique ID for each Update. + + +### Update360Telemetry.UpdateAgentInitialize + +This event sends data for the initialize phase of updating Windows via the new Unified Update Platform (UUP) scenario, which is applicable to both PCs and Mobile. + +The following fields are available: + +- **ErrorCode** The error code returned for the current install phase. +- **FlightId** Unique ID for each flight. +- **FlightMetadata** Contains the FlightId and the build being flighted. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the install phase of the update. +- **ScenarioId** Indicates the update scenario. +- **SessionData** String containing instructions to update agent for processing FODs and DUICs (Null for other scenarios). +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentMitigationResult + +This event sends data indicating the result of each update agent mitigation. + +The following fields are available: + +- **Applicable** Indicates whether the mitigation is applicable for the current update. +- **CommandCount** The number of command operations in the mitigation entry. +- **CustomCount** The number of custom operations in the mitigation entry. +- **FileCount** The number of file operations in the mitigation entry. +- **FlightId** Unique identifier for each flight. +- **Index** The mitigation index of this particular mitigation. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **Name** The friendly name of the mitigation. +- **ObjectId** Unique value for each Update Agent mode. +- **OperationIndex** The mitigation operation index (in the event of a failure). +- **OperationName** The friendly name of the mitigation operation (in the event of failure). +- **RegistryCount** The number of registry operations in the mitigation entry. +- **RelatedCV** The correlation vector value generated from the latest USO scan. +- **Result** The HResult of this operation. +- **ScenarioId** The update agent scenario ID. +- **SessionId** Unique value for each update attempt. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). +- **UpdateId** Unique ID for each Update. + + +### Update360Telemetry.UpdateAgentMitigationSummary + +This event sends a summary of all the update agent mitigations available for an this update. + + + +### Update360Telemetry.UpdateAgentModeStart + +This event sends data for the start of each mode during the process of updating Windows via the new Unified Update Platform (UUP) scenario. Applicable to both PCs and Mobile. + +The following fields are available: + +- **FlightId** Unique ID for each flight. +- **Mode** Indicates the mode that has started. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. +- **Version** Version of update + + +### Update360Telemetry.UpdateAgentOneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + + + +### Update360Telemetry.UpdateAgentSetupBoxLaunch + +The UpdateAgent_SetupBoxLaunch event sends data for the launching of the setup box when updating Windows via the new Unified Update Platform (UUP) scenario. This event is only applicable to PCs. + +The following fields are available: + +- **ContainsExpressPackage** Indicates whether the download package is express. +- **FlightId** Unique ID for each flight. +- **FreeSpace** Free space on OS partition. +- **InstallCount** Number of install attempts using the same sandbox. +- **ObjectId** Unique value for each Update Agent mode. +- **Quiet** Indicates whether setup is running in quiet mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **SandboxSize** Size of the sandbox. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **SetupMode** Mode of setup to be launched. +- **UpdateId** Unique ID for each Update. +- **UserSession** Indicates whether install was invoked by user actions. + + ## Upgrade events ### Setup360Telemetry.Downlevel @@ -4242,9 +4543,9 @@ The following fields are available: - **Setup360Extended** Detailed information about the phase or action when the potential failure occurred. - **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. - **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. -- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. - **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). -- **State** Exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **State** Exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled - **TestId** ID that uniquely identifies a group of events. - **WuId** Windows Update client ID. @@ -4375,6 +4676,24 @@ This event helps determine whether the device received supplemental content duri +### Setup360Telemetry.Setup360MitigationResult + +This event sends data indicating the result of each setup mitigation. + + + +### Setup360Telemetry.Setup360MitigationSummary + +This event sends a summary of all the setup mitigations available for this update. + + + +### Setup360Telemetry.Setup360OneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + + + ### Setup360Telemetry.UnexpectedEvent This event sends data indicating that the device has invoked the unexpected event phase of the upgrade, to help keep Windows up to date. @@ -4388,7 +4707,7 @@ The following fields are available: - **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. - **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. - **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. -- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used to diagnose errors. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used used to diagnose errors. - **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. - **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). - **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. @@ -4819,11 +5138,11 @@ The following fields are available: - **errorCode** The error code that was returned. - **experimentId** When running a test, this is used to correlate events that are part of the same test. - **fileID** The ID of the file being downloaded. -- **isVpn** Is the device connected to a Virtual Private Network? +- **isVpn** Indicates whether the device is connected to a VPN (Virtual Private Network). - **scenarioID** The ID of the scenario. - **sessionID** The ID of the file download session. - **updateID** The ID of the update being downloaded. -- **usedMemoryStream** Did the download use memory streaming? +- **usedMemoryStream** TRUE if the download is using memory streaming for App downloads. ### Microsoft.OSG.DU.DeliveryOptClient.DownloadCompleted @@ -4862,7 +5181,7 @@ The following fields are available: - **updateID** The ID of the update being downloaded. - **uplinkBps** The maximum measured available upload bandwidth (in bytes per second). - **uplinkUsageBps** The upload speed (in bytes per second). -- **usedMemoryStream** Did the download use memory streaming? +- **usedMemoryStream** TRUE if the download is using memory streaming for App downloads. ### Microsoft.OSG.DU.DeliveryOptClient.DownloadPaused @@ -5146,6 +5465,17 @@ The following fields are available: - **wuDeviceid** The Windows Update device GUID. +### Microsoft.Windows.Update.Orchestrator.DeferRestart + +This event indicates that a restart required for installing updates was postponed. + +The following fields are available: + +- **filteredDeferReason** Applicable filtered reasons why reboot was postponed (such as user active, or low battery). +- **raisedDeferReason** Indicates all potential reasons for postponing restart (such as user active, or low battery). +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.Detection This event indicates that a scan for a Windows Update occurred. @@ -5192,7 +5522,7 @@ The following fields are available: - **EventPublishedTime** Time when this event was generated. - **flightID** The specific ID of the Windows Insider build. - **revisionNumber** Update revision number. -- **updateId** Unique Windows Update ID. +- **updateId** Unique Update ID. - **updateScenarioType** Update session type. - **UpdateStatus** Last status of update. - **wuDeviceid** Unique Device ID. @@ -5240,6 +5570,30 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.LowUptimes + +This event is sent if a device is identified as not having sufficient uptime to reliably process updates in order to keep secure. + +The following fields are available: + +- **lowUptimeMinHours** Current setting for the minimum number of hours needed to not be considered low uptime. +- **lowUptimeQueryDays** Current setting for the number of recent days to check for uptime. +- **uptimeMinutes** Number of minutes of uptime measured. +- **wuDeviceid** Unique device ID for Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.OneshotUpdateDetection + +This event returns data about scans initiated through settings UI, or background scans that are urgent; to help keep Windows up to date. + +The following fields are available: + +- **externalOneshotupdate** The last time a task-triggered scan was completed. +- **interactiveOneshotupdate** The last time an interactive scan was completed. +- **oldlastscanOneshotupdate** The last time a scan completed successfully. +- **wuDeviceid** The Windows Update Device GUID (Globally-Unique ID). + + ### Microsoft.Windows.Update.Orchestrator.PostInstall This event is sent after a Windows update install completes. @@ -5256,6 +5610,15 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.PreShutdownStart + +This event is generated before the shutdown and commit operations. + +The following fields are available: + +- **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue. + + ### Microsoft.Windows.Update.Orchestrator.RebootFailed This event sends information about whether an update required a reboot and reasons for failure, to help keep Windows up to date. @@ -5276,6 +5639,18 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.RefreshSettings + +This event sends basic data about the version of upgrade settings applied to the system to help keep Windows up to date. + +The following fields are available: + +- **errorCode** Hex code for the error message, to allow lookup of the specific error. +- **settingsDownloadTime** Timestamp of the last attempt to acquire settings. +- **settingsETag** Version identifier for the settings. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.RestoreRebootTask This event sends data indicating that a reboot task is missing unexpectedly on a device and the task is restored because a reboot is still required, to help keep Windows up to date. @@ -5332,6 +5707,32 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.updateSettingsFlushFailed + +This event sends information about an update that encountered problems and was not able to complete. + +The following fields are available: + +- **errorCode** The error code encountered. +- **wuDeviceid** The ID of the device in which the error occurred. + + +### Microsoft.Windows.Update.Orchestrator.UsoSession + +This event represents the state of the USO service at start and completion. + +The following fields are available: + +- **activeSessionid** A unique session GUID. +- **eventScenario** The state of the update action. +- **interactive** Is the USO session interactive? +- **lastErrorcode** The last error that was encountered. +- **lastErrorstate** The state of the update when the last error was encountered. +- **sessionType** A GUID that refers to the update session type. +- **updateScenarioType** A descriptive update session type. +- **wuDeviceid** The Windows Update device GUID. + + ### Microsoft.Windows.Update.UpdateStackServicing.CheckForUpdates This event sends data about the UpdateStackServicing check for updates, to help keep Windows up to date. @@ -5352,6 +5753,28 @@ The following fields are available: - **WUDeviceID** The Windows Update device ID. +### Microsoft.Windows.Update.Ux.MusNotification.EnhancedEngagedRebootUxState + +This event sends information about the configuration of Enhanced Direct-to-Engaged (eDTE), which includes values for the timing of how eDTE will progress through each phase of the reboot. + +The following fields are available: + +- **AcceptAutoModeLimit** The maximum number of days for a device to automatically enter Auto Reboot mode. +- **AutoToAutoFailedLimit** The maximum number of days for Auto Reboot mode to fail before a Reboot Failed dialog will be shown. +- **DeviceLocalTime** The date and time (based on the device date/time settings) the reboot mode changed. +- **EngagedModeLimit** The number of days to switch between DTE (Direct-to-Engaged) dialogs. +- **EnterAutoModeLimit** The maximum number of days a device can enter Auto Reboot mode. +- **ETag** The Entity Tag that represents the OneSettings version. +- **IsForcedEnabled** Identifies whether Forced Reboot mode is enabled for the device. +- **IsUltimateForcedEnabled** Identifies whether Ultimate Forced Reboot mode is enabled for the device. +- **OldestUpdateLocalTime** The date and time (based on the device date/time settings) this update’s reboot began pending. +- **RebootUxState** Identifies the reboot state: Engaged, Auto, Forced, UltimateForced. +- **RebootVersion** The version of the DTE (Direct-to-Engaged). +- **SkipToAutoModeLimit** The maximum number of days to switch to start while in Auto Reboot mode. +- **UpdateId** The ID of the update that is waiting for reboot to finish installation. +- **UpdateRevision** The revision of the update that is waiting for reboot to finish installation. + + ### Microsoft.Windows.Update.Ux.MusNotification.RebootNoLongerNeeded This event is sent when a security update has successfully completed. @@ -5390,7 +5813,7 @@ The following fields are available: ### Microsoft.Windows.Update.Ux.MusUpdateSettings.RebootScheduled -This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up-to-date. +This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up to date. The following fields are available: @@ -5406,6 +5829,14 @@ The following fields are available: - **wuDeviceid** The Windows Update device GUID. +## Windows Update mitigation events + +### Mitigation360Telemetry.MitigationCustom.FixupEditionId + +This event sends data specific to the FixupEditionId mitigation used for OS Updates. + + + ## Winlogon events ### Microsoft.Windows.Security.Winlogon.SetupCompleteLogon diff --git a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1709.md b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1709.md index f1ca2eae5e..e6b7d5cbc6 100644 --- a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1709.md +++ b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1709.md @@ -9,7 +9,7 @@ ms.pagetype: security localizationpriority: high author: brianlic-msft ms.author: brianlic -ms.date: 10/10/2018 +ms.date: 11/07/2018 --- @@ -65,20 +65,20 @@ The following fields are available: - **DecisionSystemBios_RS4** The total DecisionSystemBios objects targeting Windows 10 version, 1803 present on this device. - **DecisionTest_RS1** An ID for the system, calculated by hashing hardware identifiers. - **InventoryApplicationFile** The count of the number of this particular object type present on this device. -- **InventoryLanguagePack** The count of InventoryLanguagePack objects present on this machine. +- **InventoryLanguagePack** The count of the number of this particular object type present on this device. - **InventoryMediaCenter** The count of the number of this particular object type present on this device. - **InventorySystemBios** The count of the number of this particular object type present on this device. - **InventoryTest** The count of the number of this particular object type present on this device. - **InventoryUplevelDriverPackage** The count of the number of this particular object type present on this device. -- **PCFP** An ID for the system, calculated by hashing hardware identifiers. +- **PCFP** The count of the number of this particular object type present on this device. - **SystemMemory** The count of the number of this particular object type present on this device. - **SystemProcessorCompareExchange** The count of the number of this particular object type present on this device. - **SystemProcessorLahfSahf** The count of the number of this particular object type present on this device. - **SystemProcessorNx** The count of the number of this particular object type present on this device. -- **SystemProcessorPrefetchW** The count of SystemProcessorPrefetchW objects present on this machine. -- **SystemProcessorSse2** The count of SystemProcessorSse2 objects present on this machine. +- **SystemProcessorPrefetchW** The count of the number of this particular object type present on this device. +- **SystemProcessorSse2** The count of the number of this particular object type present on this device. - **SystemTouch** The count of the number of this particular object type present on this device. -- **SystemWim** The count of SystemWim objects present on this machine. +- **SystemWim** The count of the number of this particular object type present on this device. - **SystemWindowsActivationStatus** The count of the number of this particular object type present on this device. - **SystemWlan** The count of the number of this particular object type present on this device. - **Wmdrm_RS1** An ID for the system, calculated by hashing hardware identifiers. @@ -359,7 +359,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.DecisionApplicationFileRemove -This event indicates that the DecisionApplicationFile object is no longer present. +This event indicates Indicates that the DecisionApplicationFile object is no longer present. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -706,7 +706,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.InventoryApplicationFileStartSync -This event indicates that a new set of InventoryApplicationFileAdd events will be sent. +This event indicates indicates that a new set of InventoryApplicationFileAdd events will be sent. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -1209,6 +1209,23 @@ The following fields are available: - **AppraiserVersion** The version of the Appraiser file that is generating the events. +### Microsoft.Windows.Appraiser.General.SystemWlanAdd + +This event sends data indicating whether the system has WLAN, and if so, whether it uses an emulated driver that could block an upgrade, to help keep Windows up-to-date. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **AppraiserVersion** The version of the Appraiser file that is generating the events. +- **Blocking** Is the upgrade blocked because of an emulated WLAN driver? +- **HasWlanBlock** Does the emulated WLAN driver have an upgrade block? +- **WlanEmulatedDriver** Does the device have an emulated WLAN driver? +- **WlanExists** Does the device support WLAN at all? +- **WlanModulePresent** Are any WLAN modules present? +- **WlanNativeDriver** Does the device have a non-emulated WLAN driver? + + ### Microsoft.Windows.Appraiser.General.SystemWlanRemove This event indicates that the SystemWlan object is no longer present. @@ -1525,16 +1542,16 @@ The following fields are available: - **KvaShadow** Microcode info of the processor. - **MMSettingOverride** Microcode setting of the processor. - **MMSettingOverrideMask** Microcode setting override of the processor. -- **ProcessorArchitecture** Retrieves the processor architecture of the installed operating system. -- **ProcessorClockSpeed** Clock speed of the processor in MHz. -- **ProcessorCores** Number of logical cores in the processor. -- **ProcessorIdentifier** Processor Identifier of a manufacturer. -- **ProcessorManufacturer** Name of the processor manufacturer. -- **ProcessorModel** Name of the processor model. +- **ProcessorArchitecture** Retrieves the processor architecture of the installed operating system. The complete list of values can be found in DimProcessorArchitecture. +- **ProcessorClockSpeed** Retrieves the clock speed of the processor in MHz. +- **ProcessorCores** Retrieves the number of cores in the processor. +- **ProcessorIdentifier** The processor identifier of a manufacturer. +- **ProcessorManufacturer** Retrieves the name of the processor's manufacturer. +- **ProcessorModel** Retrieves the name of the processor model. - **ProcessorPhysicalCores** Number of physical cores in the processor. -- **ProcessorUpdateRevision** Microcode revision +- **ProcessorUpdateRevision** Retrieves the processor architecture of the installed operating system. - **ProcessorUpdateStatus** Enum value that represents the processor microcode load status -- **SocketCount** Count of CPU sockets. +- **SocketCount** Number of physical CPU sockets of the machine. - **SpeculationControl** If the system has enabled protections needed to validate the speculation control vulnerability. @@ -1545,14 +1562,14 @@ This event provides information on about security settings used to help keep Win The following fields are available: - **AvailableSecurityProperties** This field helps to enumerate and report state on the relevant security properties for Device Guard. -- **CGRunning** Is Credential Guard running? +- **CGRunning** Credential Guard isolates and hardens key system and user secrets against compromise, helping to minimize the impact and breadth of a Pass the Hash style attack in the event that malicious code is already running via a local or network based vector. This field tells if Credential Guard is running. - **DGState** This field summarizes the Device Guard state. -- **HVCIRunning** Is HVCI running? +- **HVCIRunning** Hypervisor Code Integrity (HVCI) enables Device Guard to help protect kernel mode processes and drivers from vulnerability exploits and zero days. HVCI uses the processor’s functionality to force all software running in kernel mode to safely allocate memory. This field tells if HVCI is running. - **IsSawGuest** Indicates whether the device is running as a Secure Admin Workstation Guest. - **IsSawHost** Indicates whether the device is running as a Secure Admin Workstation Host. - **RequiredSecurityProperties** Describes the required security properties to enable virtualization-based security. -- **SecureBootCapable** Is this device capable of running Secure Boot? -- **VBSState** Is virtualization-based security enabled, disabled, or running? +- **SecureBootCapable** Systems that support Secure Boot can have the feature turned off via BIOS. This field tells if the system is capable of running Secure Boot, regardless of the BIOS setting. +- **VBSState** Virtualization-based security (VBS) uses the hypervisor to help protect the kernel and other parts of the operating system. Credential Guard and Hypervisor Code Integrity (HVCI) both depend on VBS to isolate/protect secrets, and kernel-mode code integrity validation. VBS has a tri-state that can be Disabled, Enabled, or Running. ### Census.Speech @@ -1889,6 +1906,82 @@ The following fields are available: - **VortexHttpResponsesWithDroppedEvents** Number of Vortex responses containing at least 1 dropped event. +## DxgKernelTelemetry events + +### DxgKrnlTelemetry.GPUAdapterInventoryV2 + +This event sends basic GPU and display driver information to keep Windows and display drivers up-to-date. + +The following fields are available: + +- **AdapterTypeValue** The numeric value indicating the type of Graphics adapter. +- **aiSeqId** The event sequence ID. +- **bootId** The system boot ID. +- **ComputePreemptionLevel** The maximum preemption level supported by GPU for compute payload. +- **DedicatedSystemMemoryB** The amount of system memory dedicated for GPU use (in bytes). +- **DedicatedVideoMemoryB** The amount of dedicated VRAM of the GPU (in bytes). +- **DisplayAdapterLuid** The display adapter LUID. +- **DriverDate** The date of the display driver. +- **DriverRank** The rank of the display driver. +- **DriverVersion** The display driver version. +- **GPUDeviceID** The GPU device ID. +- **GPUPreemptionLevel** The maximum preemption level supported by GPU for graphics payload. +- **GPURevisionID** The GPU revision ID. +- **GPUVendorID** The GPU vendor ID. +- **InterfaceId** The GPU interface ID. +- **IsDisplayDevice** Does the GPU have displaying capabilities? +- **IsHybridDiscrete** Does the GPU have discrete GPU capabilities in a hybrid device? +- **IsHybridIntegrated** Does the GPU have integrated GPU capabilities in a hybrid device? +- **IsLDA** Is the GPU comprised of Linked Display Adapters? +- **IsMiracastSupported** Does the GPU support Miracast? +- **IsMismatchLDA** Is at least one device in the Linked Display Adapters chain from a different vendor? +- **IsMPOSupported** Does the GPU support Multi-Plane Overlays? +- **IsMsMiracastSupported** Are the GPU Miracast capabilities driven by a Microsoft solution? +- **IsPostAdapter** Is this GPU the POST GPU in the device? +- **IsRemovable** TRUE if the adapter supports being disabled or removed. +- **IsRenderDevice** Does the GPU have rendering capabilities? +- **IsSoftwareDevice** Is this a software implementation of the GPU? +- **MeasureEnabled** Is the device listening to MICROSOFT_KEYWORD_MEASURES? +- **NumVidPnSources** The number of supported display output sources. +- **NumVidPnTargets** The number of supported display output targets. +- **SharedSystemMemoryB** The amount of system memory shared by GPU and CPU (in bytes). +- **SubSystemID** The subsystem ID. +- **SubVendorID** The GPU sub vendor ID. +- **TelemetryEnabled** Is the device listening to MICROSOFT_KEYWORD_TELEMETRY? +- **TelInvEvntTrigger** What triggered this event to be logged? Example: 0 (GPU enumeration) or 1 (DxgKrnlTelemetry provider toggling) +- **version** The event version. +- **WDDMVersion** The Windows Display Driver Model version. + + +## Fault Reporting events + +### Microsoft.Windows.FaultReporting.AppCrashEvent + +This event sends data about crashes for both native and managed applications, to help keep Windows up to date. The data includes information about the crashing process and a summary of its exception record. It does not contain any Watson bucketing information. The bucketing information is recorded in a Windows Error Reporting (WER) event that is generated when the WER client reports the crash to the Watson service, and the WER event will contain the same ReportID (see field 14 of crash event, field 19 of WER event) as the crash event for the crash being reported. AppCrash is emitted once for each crash handled by WER (e.g. from an unhandled exception or FailFast or ReportException). Note that Generic Watson event types (e.g. from PLM) that may be considered crashes\" by a user DO NOT emit this event. + +The following fields are available: + +- **AppName** The name of the app that has crashed. +- **AppSessionGuid** GUID made up of process ID and is used as a correlation vector for process instances in the telemetry backend. +- **AppTimeStamp** The date/time stamp of the app. +- **AppVersion** The version of the app that has crashed. +- **ExceptionCode** The exception code returned by the process that has crashed. +- **ExceptionOffset** The address where the exception had occurred. +- **Flags** Flags indicating how reporting is done. For example, queue the report, do not offer JIT debugging, or do not terminate the process after reporting. +- **ModName** Exception module name (e.g. bar.dll). +- **ModTimeStamp** The date/time stamp of the module. +- **ModVersion** The version of the module that has crashed. +- **PackageFullName** Store application identity. +- **PackageRelativeAppId** Store application identity. +- **ProcessArchitecture** Architecture of the crashing process, as one of the PROCESSOR_ARCHITECTURE_* constants: 0: PROCESSOR_ARCHITECTURE_INTEL. 5: PROCESSOR_ARCHITECTURE_ARM. 9: PROCESSOR_ARCHITECTURE_AMD64. 12: PROCESSOR_ARCHITECTURE_ARM64. +- **ProcessCreateTime** The time of creation of the process that has crashed. +- **ProcessId** The ID of the process that has crashed. +- **ReportId** A GUID used to identify the report. This can used to track the report across Watson. +- **TargetAppId** The kernel reported AppId of the application being reported. +- **TargetAppVer** The specific version of the application being reported +- **TargetAsId** The sequence number for the hanging process. + + ## Feature update events ### Microsoft.Windows.Upgrade.Uninstall.UninstallFailed @@ -1916,6 +2009,33 @@ This event sends basic metadata about the starting point of uninstalling a featu +## Hang Reporting events + +### Microsoft.Windows.HangReporting.AppHangEvent + +This event sends data about hangs for both native and managed applications, to help keep Windows up to date. It does not contain any Watson bucketing information. The bucketing information is recorded in a Windows Error Reporting (WER) event that is generated when the WER client reports the hang to the Watson service, and the WER event will contain the same ReportID (see field 13 of hang event, field 19 of WER event) as the hang event for the hang being reported. AppHang is reported only on PC devices. It handles classic Win32 hangs and is emitted only once per report. Some behaviors that may be perceived by a user as a hang are reported by app managers (e.g. PLM/RM/EM) as Watson Generics and will not produce AppHang events. + +The following fields are available: + +- **AppName** The name of the app that has hung. +- **AppSessionGuid** GUID made up of process id used as a correlation vector for process instances in the telemetry backend. +- **AppVersion** The version of the app that has hung. +- **PackageFullName** Store application identity. +- **PackageRelativeAppId** Store application identity. +- **ProcessArchitecture** Architecture of the hung process, as one of the PROCESSOR_ARCHITECTURE_* constants: 0: PROCESSOR_ARCHITECTURE_INTEL. 5: PROCESSOR_ARCHITECTURE_ARM. 9: PROCESSOR_ARCHITECTURE_AMD64. 12: PROCESSOR_ARCHITECTURE_ARM64. +- **ProcessCreateTime** The time of creation of the process that has hung. +- **ProcessId** The ID of the process that has hung. +- **ReportId** A GUID used to identify the report. This can used to track the report across Watson. +- **TargetAppId** The kernel reported AppId of the application being reported. +- **TargetAppVer** The specific version of the application being reported. +- **TargetAsId** The sequence number for the hanging process. +- **TypeCode** Bitmap describing the hang type. +- **WaitingOnAppName** If this is a cross process hang waiting for an application, this has the name of the application. +- **WaitingOnAppVersion** If this is a cross process hang, this has the version of the application for which it is waiting. +- **WaitingOnPackageFullName** If this is a cross process hang waiting for a package, this has the full name of the package for which it is waiting. +- **WaitingOnPackageRelativeAppId** If this is a cross process hang waiting for a package, this has the relative application id of the package. + + ## Inventory events ### Microsoft.Windows.Inventory.Core.AmiTelCacheChecksum @@ -1992,13 +2112,13 @@ This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedevic The following fields are available: -- **InventoryVersion** The version of the inventory component +- **InventoryVersion** The version of the inventory component. - **ProgramIds** The unique program identifier the driver is associated with. ### Microsoft.Windows.Inventory.Core.InventoryApplicationDriverStartSync -The InventoryApplicationDriverStartSync event indicates that a new set of InventoryApplicationDriverStartAdd events will be sent. +This event indicates that a new set of InventoryApplicationDriverStartAdd events will be sent. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -2185,12 +2305,12 @@ This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedevic The following fields are available: - **BusReportedDescription** System-supplied GUID that uniquely groups the functional devices associated with a single-function or multifunction device installed in the computer. -- **Class** System-supplied GUID that uniquely groups the functional devices associated with a single-function or multifunction device installed in the computer. -- **ClassGuid** A unique identifier for the driver installed. -- **COMPID** Name of the .sys image file (or wudfrd.sys if using user mode driver framework). -- **ContainerId** INF file name (the name could be renamed by OS, such as oemXX.inf) -- **Description** The version of the inventory binary generating the events. -- **DeviceState** The current error code for the device. +- **Class** The device setup class of the driver loaded for the device. +- **ClassGuid** The device setup class guid of the driver loaded for the device. +- **COMPID** The list of compat ids for the device. +- **ContainerId** System-supplied GUID that uniquely groups the functional devices associated with a single-function or multifunction device installed in the computer. +- **Description** The device description. +- **DeviceState** DeviceState is a bitmask of the following: DEVICE_IS_CONNECTED 0x0001 (currently only for container). DEVICE_IS_NETWORK_DEVICE 0x0002 (currently only for container). DEVICE_IS_PAIRED 0x0004 (currently only for container). DEVICE_IS_ACTIVE 0x0008 (currently never set). DEVICE_IS_MACHINE 0x0010 (currently only for container). DEVICE_IS_PRESENT 0x0020 (currently always set). DEVICE_IS_HIDDEN 0x0040. DEVICE_IS_PRINTER 0x0080 (currently only for container). DEVICE_IS_WIRELESS 0x0100. DEVICE_IS_WIRELESS_FAT 0x0200. The most common values are therefore: 32 (0x20)= device is present. 96 (0x60)= device is present but hidden. 288 (0x120)= device is a wireless device that is present - **DriverId** A unique identifier for the driver installed. - **DriverName** Name of the .sys image file (or wudfrd.sys if using user mode driver framework). - **DriverPackageStrongName** The immediate parent directory name in the Directory field of InventoryDriverPackage. @@ -2703,6 +2823,183 @@ The following fields are available: - **UserInputTime** The amount of time the loader application spent waiting for user input. +## OneDrive events + +### Microsoft.OneDrive.Sync.Setup.APIOperation + +This event includes basic data about install and uninstall OneDrive API operations. + +The following fields are available: + +- **APIName** The name of the API. +- **Duration** How long the operation took. +- **IsSuccess** Was the operation successful? +- **ResultCode** The result code. +- **ScenarioName** The name of the scenario. + + +### Microsoft.OneDrive.Sync.Setup.EndExperience + +This event includes a success or failure summary of the installation. + +The following fields are available: + +- **APIName** The name of the API. +- **HResult** The result code of the last action performed before this operation +- **IsSuccess** Was the operation successful? +- **ScenarioName** The name of the scenario. + + +### Microsoft.OneDrive.Sync.Setup.OSUpgradeInstallationOperation + +This event is related to the OS version when the OS is upgraded with OneDrive installed. + +The following fields are available: + +- **CurrentOneDriveVersion** The current version of OneDrive. +- **CurrentOSBuildBranch** The current branch of the operating system. +- **CurrentOSBuildNumber** The current build number of the operating system. +- **CurrentOSVersion** The current version of the operating system. +- **HResult** The HResult of the operation. +- **SourceOSBuildBranch** The source branch of the operating system. +- **SourceOSBuildNumber** The source build number of the operating system. +- **SourceOSVersion** The source version of the operating system. + + +### Microsoft.OneDrive.Sync.Setup.RegisterStandaloneUpdaterAPIOperation + +This event is related to registering or unregistering the OneDrive update task. + +The following fields are available: + +- **APIName** The name of the API. +- **IsSuccess** Was the operation successful? +- **RegisterNewTaskResult** The HResult of the RegisterNewTask operation. +- **ScenarioName** The name of the scenario. +- **UnregisterOldTaskResult** The HResult of the UnregisterOldTask operation. + + +### Microsoft.OneDrive.Sync.Updater.ComponentInstallState + +This event includes basic data about the installation state of dependent OneDrive components. + +The following fields are available: + +- **ComponentName** The name of the dependent component. +- **isInstalled** Is the dependent component installed? + + +### Microsoft.OneDrive.Sync.Updater.OverlayIconStatus + +This event indicates if the OneDrive overlay icon is working correctly. 0 = healthy; 1 = can be fixed; 2 = broken + +The following fields are available: + +- **32bit** The status of the OneDrive overlay icon on a 32-bit operating system. +- **64bit** The status of the OneDrive overlay icon on a 64-bit operating system. + + +### Microsoft.OneDrive.Sync.Updater.UpdateOverallResult + +This event sends information describing the result of the update. + +The following fields are available: + +- **hr** The HResult of the operation. +- **IsLoggingEnabled** Indicates whether logging is enabled for the updater. +- **UpdaterVersion** The version of the updater. + + +### Microsoft.OneDrive.Sync.Updater.UpdateXmlDownloadHResult + +This event determines the status when downloading the OneDrive update configuration file. + +The following fields are available: + +- **hr** The HResult of the operation. + + +### Microsoft.OneDrive.Sync.Updater.WebConnectionStatus + +This event determines the error code that was returned when verifying Internet connectivity. + +The following fields are available: + +- **winInetError** The HResult of the operation. + + +## Other events + +### CbsServicingProvider.CbsCapabilityEnumeration + +This event reports on the results of scanning for optional Windows content on Windows Update. + +The following fields are available: + +- **architecture** Indicates the scan was limited to the specified architecture. +- **capabilityCount** The number of optional content packages found during the scan. +- **clientId** The name of the application requesting the optional content. +- **duration** The amount of time it took to complete the scan. +- **hrStatus** The HReturn code of the scan. +- **language** Indicates the scan was limited to the specified language. +- **majorVersion** Indicates the scan was limited to the specified major version. +- **minorVersion** Indicates the scan was limited to the specified minor version. +- **namespace** Indicates the scan was limited to packages in the specified namespace. +- **sourceFilter** A bitmask indicating the scan checked for locally available optional content. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionFinalize + +This event provides information about the results of installing or uninstalling optional Windows content from Windows Update. + +The following fields are available: + +- **capabilities** The names of the optional content packages that were installed. +- **clientId** The name of the application requesting the optional content. +- **highestState** The highest final install state of the optional content. +- **hrStatus** The HReturn code of the install operation. +- **rebootCount** The number of reboots required to complete the install. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionPended + +This event provides information about the results of installing optional Windows content that requires a reboot to keep Windows up to date. + +The following fields are available: + +- **clientId** The name of the application requesting the optional content. +- **pendingDecision** Indicates the cause of reboot, if applicable. + + +### Microsoft.Windows.WaaSAssessment.Error + +This event returns the name of the missing setting needed to determine the Operating System build age. + +The following fields are available: + +- **m** The WaaS (“Workspace as a Service”—cloud-based “workspace”) Assessment Error String. + + +### Microsoft.Xbox.XamTelemetry.AppActivationError + +This event indicates whether the system detected an activation error in the app. + + + +### Microsoft.Xbox.XamTelemetry.AppActivity + +This event is triggered whenever the current app state is changed by: launch, switch, terminate, snap, etc. + + + ## Remediation events ### Microsoft.Windows.Remediation.Applicable @@ -2716,7 +3013,6 @@ The following fields are available: - **AppraiserDetectCondition** Indicates whether the plug-in passed the appraiser's check. - **AppraiserRegistryValidResult** Indicates whether the registry entry checks out as valid. - **AppraiserTaskDisabled** Indicates the appraiser task is disabled. -- **AppraiserTaskValidFailed** Indicates the Appraiser task did not function and requires intervention. - **CV** Correlation vector - **DateTimeDifference** The difference between local and reference clock times. - **DateTimeSyncEnabled** Indicates whether the datetime sync plug-in is enabled. @@ -2911,7 +3207,7 @@ The following fields are available: - **usoScanIsNoAutoUpdateKeyPresent** TRUE if no Auto Update registry key is set/present. - **usoScanIsUserLoggedOn** TRUE if the user is logged on. - **usoScanPastThreshold** TRUE if the most recent USO (Update Session Orchestrator) scan is past the threshold (late). -- **usoScanType** The type of USO (Update Session Orchestrator) scan (Interactive or Background). +- **usoScanType** The type of USO (Update Session Orchestrator) scan: "Interactive" or "Background". - **windows10UpgraderBlockWuUpdates** Event to report the value of Windows 10 Upgrader BlockWuUpdates Key. - **windowsEditionId** Event to report the value of Windows Edition ID. - **WindowsHyberFilSysSizeInMegabytes** The size of the Windows Hibernation file, measured in Megabytes. @@ -2970,6 +3266,41 @@ The following fields are available: - **Time** The time the event was fired. +### Microsoft.Windows.Sediment.Info.Error + +This event indicates an error in the updater payload. This information assists in keeping Windows up to date. + + + +### Microsoft.Windows.Sediment.OSRSS.CheckingOneSettings + +This event indicates the parameters that the Operating System Remediation System Service (OSRSS) uses for a secure ping to Microsoft to help ensure Windows is up to date. + +The following fields are available: + +- **CustomVer** The registry value for targeting. +- **IsMetered** TRUE if the machine is on a metered network. +- **LastVer** The version of the last successful run. +- **ServiceVersionMajor** The Major version information of the component. +- **ServiceVersionMinor** The Minor version information of the component. +- **Time** The system time at which the event occurred. + + +### Microsoft.Windows.Sediment.OSRSS.Error + +This event indicates an error occurred in the Operating System Remediation System Service (OSRSS). The information provided helps ensure future upgrade/update attempts are more successful. + +The following fields are available: + +- **FailureType** The type of error encountered. +- **FileName** The code file in which the error occurred. +- **HResult** The failure error code. +- **LineNumber** The line number in the code file at which the error occurred. +- **ServiceVersionMajor** The Major version information of the component. +- **ServiceVersionMinor** The Minor version information of the component. +- **Time** The system time at which the event occurred. + + ### Microsoft.Windows.Sediment.OSRSS.UrlState This event indicates the state the Operating System Remediation System Service (OSRSS) is in while attempting a download from the URL. @@ -3195,6 +3526,32 @@ The following fields are available: ## Setup events +### SetupPlatformTel.SetupPlatformTelActivityEvent + +This event sends basic metadata about the SetupPlatform update installation process, to help keep Windows up to date. + +The following fields are available: + +- **FieldName** Retrieves the event name/data point. Examples: InstallStartTime, InstallEndtime, OverallResult etc. +- **GroupName** Retrieves the groupname the event belongs to. Example: Install Information, DU Information, Disk Space Information etc. +- **Value** Value associated with the corresponding event name. For example, time-related events will include the system time + + +### SetupPlatformTel.SetupPlatformTelActivityStarted + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + +The following fields are available: + +- **Name** The name of the dynamic update type. Example: GDR driver + + +### SetupPlatformTel.SetupPlatformTelActivityStopped + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + + + ### SetupPlatformTel.SetupPlatformTelEvent This service retrieves events generated by SetupPlatform, the engine that drives the various deployment scenarios. @@ -3780,6 +4137,131 @@ The following fields are available: ## Update events +### Update360Telemetry.UpdateAgent_DownloadRequest + +This event sends data during the download request phase of updating Windows. + +The following fields are available: + +- **DeletedCorruptFiles** Boolean indicating whether corrupt payload was deleted. +- **ErrorCode** The error code returned for the current download request phase. +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode (same concept as InstanceId for Setup360). +- **PackageCountOptional** # of optional packages requested. +- **PackageCountRequired** # of required packages requested. +- **PackageCountTotal** Total # of packages needed. +- **PackageCountTotalCanonical** Total number of canonical packages. +- **PackageCountTotalDiff** Total number of diff packages. +- **PackageCountTotalExpress** Total number of express packages. +- **PackageSizeCanonical** Size of canonical packages in bytes. +- **PackageSizeDiff** Size of diff packages in bytes. +- **PackageSizeExpress** Size of express packages in bytes. +- **RangeRequestState** Indicates the range request type used. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the download request phase of update. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each attempt (same value for initialize, download, install commit phases) +- **UpdateId** Unique ID for each Update. + + +### Update360Telemetry.UpdateAgent_FellBackToCanonical + +This event collects information when Express could not be used, and the update had to fall back to “canonical” during the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **PackageCount** The number of packages that fell back to “canonical”. +- **PackageList** PackageIDs which fell back to “canonical”. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + +### Update360Telemetry.UpdateAgent_Initialize + +This event sends data during the initialize phase of updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current initialize phase. +- **FlightId** Unique ID for each flight. +- **FlightMetadata** Contains the FlightId and the build being flighted. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Result of the initialize phase of update. 0 = Succeeded, 1 = Failed, 2 = Cancelled, 3 = Blocked, 4 = BlockCancelled +- **ScenarioId** The scenario ID. Example: MobileUpdate, DesktopLanguagePack, DesktopFeatureOnDemand, or DesktopDriverUpdate +- **SessionData** Contains instructions to update agent for processing FODs and DUICs (Null for other scenarios). +- **SessionId** Unique value for each Update Agent mode attempt . +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgent_Install + +This event sends data during the install phase of updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current install phase. +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest scan. +- **Result** Result of the install phase of update. 0 = Succeeded 1 = Failed, 2 = Cancelled, 3 = Blocked, 4 = BlockCancelled +- **ScenarioId** The scenario ID. Example: MobileUpdate, DesktopLanguagePack, DesktopFeatureOnDemand, or DesktopDriverUpdate +- **SessionId** Unique value for each Update Agent mode attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgent_Merge + +This event sends data on the merge phase when updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current reboot. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + +### Update360Telemetry.UpdateAgent_ModeStart + +This event sends data for the start of each mode during the process of updating Windows. + +The following fields are available: + +- **FlightId** Unique ID for each flight. +- **Mode** Indicates that the Update Agent mode that has started. 1 = Initialize, 2 = DownloadRequest, 3 = Install, 4 = Commit +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest scan. +- **ScenarioId** The scenario ID. Example: MobileUpdate, DesktopLanguagePack, DesktopFeatureOnDemand, or DesktopDriverUpdate +- **SessionId** Unique value for each Update Agent mode attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgent_SetupBoxLaunch + +This event sends data during the launching of the setup box when updating Windows. + +The following fields are available: + +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode. +- **Quiet** Indicates whether setup is running in quiet mode. 0 = false 1 = true +- **RelatedCV** Correlation vector value generated from the latest scan. +- **SandboxSize** The size of the sandbox folder on the device. +- **ScenarioId** The scenario ID. Example: MobileUpdate, DesktopLanguagePack, DesktopFeatureOnDemand, or DesktopDriverUpdate +- **SessionId** Unique value for each Update Agent mode attempt. +- **SetupMode** Setup mode 1 = predownload, 2 = install, 3 = finalize +- **UpdateId** Unique ID for each update. + + ### Update360Telemetry.UpdateAgentCommit This event collects information regarding the commit phase of the new Unified Update Platform (UUP) update scenario, which is leveraged by both Mobile and Desktop. @@ -3975,6 +4457,24 @@ The following fields are available: - **Version** Version of update +### Update360Telemetry.UpdateAgentOneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **Count** The count of applicable OneSettings for the device. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **Parameters** The set of name value pair parameters sent to OneSettings to determine if there are any applicable OneSettings. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. +- **Values** The values sent back to the device, if applicable. + + ### Update360Telemetry.UpdateAgentPostRebootResult This event collects information for both Mobile and Desktop regarding the post reboot phase of the new Unified Update Platform (UUP) update scenario. @@ -4028,7 +4528,7 @@ The following fields are available: - **CV** Correlation vector. - **DetectorVersion** Most recently run detector version for the current campaign. - **GlobalEventCounter** Client side counter that indicates the ordering of events sent by this user. -- **key1** UI interaction data +- **key1** Interaction data for the UI - **key10** UI interaction data - **key11** UI interaction data - **key12** UI interaction data @@ -4039,9 +4539,9 @@ The following fields are available: - **key17** UI interaction data - **key18** UI interaction data - **key19** UI interaction data -- **key2** UI interaction data +- **key2** Interaction data for the UI - **key20** UI interaction data -- **key21** Interaction data for the UI +- **key21** UI interaction data - **key22** UI interaction data - **key23** UI interaction data - **key24** UI interaction data @@ -4050,12 +4550,12 @@ The following fields are available: - **key27** UI interaction data - **key28** UI interaction data - **key29** UI interaction data -- **key3** UI interaction data +- **key3** Interaction data for the UI - **key30** UI interaction data -- **key4** UI interaction data -- **key5** UI interaction data -- **key6** UI interaction data -- **key7** UI interaction data +- **key4** Interaction data for the UI +- **key5** UI interaction type +- **key6** Current package version of UNP +- **key7** UI interaction type - **key8** UI interaction data - **key9** UI interaction data - **PackageVersion** Current package version of the update notification. @@ -4353,6 +4853,12 @@ This event sends a summary of all the setup mitigations available for this updat +### Setup360Telemetry.Setup360OneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + + + ### Setup360Telemetry.UnexpectedEvent This event sends data indicating that the device has invoked the unexpected event phase of the upgrade, to help keep Windows up to date. @@ -4366,7 +4872,7 @@ The following fields are available: - **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. - **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. - **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. -- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used to diagnose errors. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used used to diagnose errors. - **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. - **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). - **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. @@ -4402,17 +4908,37 @@ This event provides the results from the WaaSMedic engine The following fields are available: - **detectionSummary** Result of each applicable detection that was run. -- **featureAssessmentImpact** Windows as a Service (WaaS) Assessment impact on feature updates +- **featureAssessmentImpact** WaaS Assessment impact for feature updates. - **hrEngineResult** Indicates the WaaSMedic engine operation error codes -- **insufficientSessions** True, if the device has enough activity to be eligible for update diagnostics. False, if otherwise -- **isManaged** Indicates the device is managed for updates -- **isWUConnected** Indicates the device is connected to Windows Update -- **noMoreActions** All available WaaSMedic diagnostics have run. There are no pending diagnostics and corresponding actions -- **qualityAssessmentImpact** Windows as a Service (WaaS) Assessment impact for quality updates +- **insufficientSessions** Device not eligible for diagnostics. +- **isManaged** Device is managed for updates. +- **isWUConnected** Device is connected to Windows Update. +- **noMoreActions** No more applicable diagnostics. +- **qualityAssessmentImpact** WaaS Assessment impact for quality updates. - **remediationSummary** Result of each operation performed on a device to fix an invalid state or configuration that's preventing the device from getting updates. For example, if Windows Update service is turned off, the fix is to turn the it back on. -- **usingBackupFeatureAssessment** The WaaSMedic engine contacts Windows as a Service (WaaS) Assessment to determine whether the device is up-to-date. If WaaS Assessment isn't available, the engine falls back to backup feature assessments, which are determined programmatically on the client -- **usingBackupQualityAssessment** The WaaSMedic engine contacts Windows as a Service (WaaS) Assessment to determine whether the device is up-to-date. If WaaS Assessment isn't available, the engine falls back to backup quality assessments, which are determined programmatically on the client -- **versionString** Installed version of the WaaSMedic engine +- **usingBackupFeatureAssessment** Relying on backup feature assessment. +- **usingBackupQualityAssessment** Relying on backup quality assessment. +- **versionString** Version of the WaaSMedic engine. + + +## Windows Error Reporting events + +### Microsoft.Windows.WERVertical.OSCrash + +This event sends binary data from the collected dump file wheneveer a bug check occurs, to help keep Windows up to date. The is the OneCore version of this event. + +The following fields are available: + +- **BootId** Uint32 identifying the boot number for this device. +- **BugCheckCode** Uint64 "bugcheck code" that identifies a proximate cause of the bug check. +- **BugCheckParameter1** Uint64 parameter providing additional information. +- **BugCheckParameter2** Uint64 parameter providing additional information. +- **BugCheckParameter3** Uint64 parameter providing additional information. +- **BugCheckParameter4** Uint64 parameter providing additional information. +- **DumpFileAttributes** Codes that identify the type of data contained in the dump file +- **DumpFileSize** Size of the dump file +- **IsValidDumpFile** True if the dump file is valid for the debugger, false otherwise +- **ReportId** WER Report Id associated with this bug check (used for finding the corresponding report archive in Watson). ## Windows Store events @@ -4798,144 +5324,6 @@ The following fields are available: ## Windows Update Delivery Optimization events -### Microsoft.OSG.DU.DeliveryOptClient.DownloadCanceled - -This event describes when a download was canceled with Delivery Optimization. It's used to understand and address problems regarding downloads. - -The following fields are available: - -- **background** Is the download being done in the background? -- **bytesFromCacheServer** Bytes received from a cache host. -- **bytesFromCDN** The number of bytes received from a CDN source. -- **bytesFromGroupPeers** The number of bytes received from a peer in the same group. -- **bytesFromIntPeers** The number of bytes received from peers not in the same LAN or in the same group. -- **bytesFromLocalCache** Bytes copied over from local (on disk) cache. -- **bytesFromPeers** The number of bytes received from a peer in the same LAN. -- **callerName** Name of the API caller. -- **cdnErrorCodes** A list of CDN connection errors since the last FailureCDNCommunication event. -- **cdnErrorCounts** The number of times each error in cdnErrorCodes was encountered. -- **clientTelId** A random number used for device sampling. -- **dataSourcesTotal** Bytes received per source type, accumulated for the whole session. -- **doErrorCode** The Delivery Optimization error code that was returned. -- **errorCode** The error code that was returned. -- **experimentId** When running a test, this is used to correlate events that are part of the same test. -- **fileID** The ID of the file being downloaded. -- **gCurMemoryStreamBytes** Current usage for memory streaming. -- **gMaxMemoryStreamBytes** Maximum usage for memory streaming. -- **isVpn** Is the device connected to a Virtual Private Network? -- **jobID** Identifier for the Windows Update job. -- **reasonCode** Reason the action or event occurred. -- **scenarioID** The ID of the scenario. -- **sessionID** The ID of the file download session. -- **updateID** The ID of the update being downloaded. -- **usedMemoryStream** Did the download use memory streaming? - - -### Microsoft.OSG.DU.DeliveryOptClient.DownloadCompleted - -This event describes when a download has completed with Delivery Optimization. It's used to understand and address problems regarding downloads. - -The following fields are available: - -- **background** Is the download a background download? -- **bytesFromCacheServer** Bytes received from a cache host. -- **bytesFromCDN** The number of bytes received from a CDN source. -- **bytesFromGroupPeers** The number of bytes received from a peer in the same domain group. -- **bytesFromIntPeers** The number of bytes received from peers not in the same LAN or in the same domain group. -- **bytesFromLocalCache** Bytes copied over from local (on disk) cache. -- **bytesFromPeers** The number of bytes received from a peer in the same LAN. -- **bytesRequested** The total number of bytes requested for download. -- **cacheServerConnectionCount** Number of connections made to cache hosts. -- **callerName** Name of the API caller. -- **cdnConnectionCount** The total number of connections made to the CDN. -- **cdnErrorCodes** A list of CDN connection errors since the last FailureCDNCommunication event. -- **cdnErrorCounts** The number of times each error in cdnErrorCodes was encountered. -- **cdnIp** The IP address of the source CDN. -- **clientTelId** A random number used for device sampling. -- **dataSourcesTotal** Bytes received per source type, accumulated for the whole session. -- **doErrorCode** The Delivery Optimization error code that was returned. -- **downlinkBps** The maximum measured available download bandwidth (in bytes per second). -- **downlinkUsageBps** The download speed (in bytes per second). -- **downloadMode** The download mode used for this file download session. -- **downloadModeSrc** Source of the DownloadMode setting (KvsProvider = 0, GeoProvider = 1, GeoVerProvider = 2, CpProvider = 3, DiscoveryProvider = 4, RegistryProvider = 5, GroupPolicyProvider = 6, MdmProvider = 7, SettingsProvider = 8, InvalidProviderType = 9). -- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. -- **fileID** The ID of the file being downloaded. -- **fileSize** The size of the file being downloaded. -- **gCurMemoryStreamBytes** Current usage for memory streaming. -- **gMaxMemoryStreamBytes** Maximum usage for memory streaming. -- **groupConnectionCount** The total number of connections made to peers in the same group. -- **internetConnectionCount** The total number of connections made to peers not in the same LAN or the same group. -- **isVpn** Is the device connected to a Virtual Private Network? -- **jobID** Identifier for the Windows Update job. -- **lanConnectionCount** The total number of connections made to peers in the same LAN. -- **numPeers** The total number of peers used for this download. -- **restrictedUpload** Is the upload restricted? -- **scenarioID** The ID of the scenario. -- **sessionID** The ID of the download session. -- **totalTimeMs** Duration of the download (in seconds). -- **updateID** The ID of the update being downloaded. -- **uplinkBps** The maximum measured available upload bandwidth (in bytes per second). -- **uplinkUsageBps** The upload speed (in bytes per second). -- **usedMemoryStream** Did the download use memory streaming? - - -### Microsoft.OSG.DU.DeliveryOptClient.DownloadPaused - -This event represents a temporary suspension of a download with Delivery Optimization. It's used to understand and address problems regarding downloads. - -The following fields are available: - -- **background** Is the download a background download? -- **callerName** The name of the API caller. -- **clientTelId** A random number used for device sampling. -- **errorCode** The error code that was returned. -- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. -- **fileID** The ID of the file being paused. -- **isVpn** Is the device connected to a Virtual Private Network? -- **jobID** Identifier for the Windows Update job. -- **reasonCode** The reason for pausing the download. -- **scenarioID** The ID of the scenario. -- **sessionID** The ID of the download session. -- **updateID** The ID of the update being paused. - - -### Microsoft.OSG.DU.DeliveryOptClient.DownloadStarted - -This event sends data describing the start of a new download to enable Delivery Optimization. It's used to understand and address problems regarding downloads. - -The following fields are available: - -- **background** Indicates whether the download is happening in the background. -- **bytesRequested** Number of bytes requested for the download. -- **callerName** Name of the API caller. -- **cdnUrl** The URL of the source CDN. -- **clientTelId** Random number used for device selection -- **costFlags** A set of flags representing network cost. -- **deviceProfile** Identifies the usage or form factor (such as Desktop, Xbox, or VM). -- **diceRoll** Random number used for determining if a client will use peering. -- **doClientVersion** The version of the Delivery Optimization client. -- **doErrorCode** The Delivery Optimization error code that was returned. -- **downloadMode** The download mode used for this file download session (CdnOnly = 0, Lan = 1, Group = 2, Internet = 3, Simple = 99, Bypass = 100). -- **downloadModeSrc** Source of the DownloadMode setting (KvsProvider = 0, GeoProvider = 1, GeoVerProvider = 2, CpProvider = 3, DiscoveryProvider = 4, RegistryProvider = 5, GroupPolicyProvider = 6, MdmProvider = 7, SettingsProvider = 8, InvalidProviderType = 9). -- **errorCode** The error code that was returned. -- **experimentId** ID used to correlate client/services calls that are part of the same test during A/B testing. -- **fileID** The ID of the file being downloaded. -- **filePath** The path to where the downloaded file will be written. -- **fileSize** Total file size of the file that was downloaded. -- **fileSizeCaller** Value for total file size provided by our caller. -- **groupID** ID for the group. -- **isVpn** Indicates whether the device is connected to a Virtual Private Network. -- **jobID** The ID of the Windows Update job. -- **minDiskSizeGB** The minimum disk size (in GB) policy set for the device to allow peering with delivery optimization. -- **minDiskSizePolicyEnforced** Indicates whether there is an enforced minimum disk size requirement for peering. -- **minFileSizePolicy** The minimum content file size policy to allow the download using peering with delivery optimization. -- **peerID** The ID for this delivery optimization client. -- **scenarioID** The ID of the scenario. -- **sessionID** The ID for the file download session. -- **updateID** The ID of the update being downloaded. -- **usedMemoryStream** Indicates whether the download used memory streaming. - - ### Microsoft.OSG.DU.DeliveryOptClient.FailureCdnCommunication This event represents a failure to download from a CDN with Delivery Optimization. It's used to understand and address problems regarding downloads. @@ -4959,20 +5347,6 @@ The following fields are available: - **sessionID** The ID of the download session. -### Microsoft.OSG.DU.DeliveryOptClient.JobError - -This event represents a Windows Update job error. It allows for investigation of top errors. - -The following fields are available: - -- **clientTelId** A random number used for device sampling. -- **doErrorCode** Error code returned for delivery optimization. -- **errorCode** The error code returned. -- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. -- **fileID** The ID of the file being downloaded. -- **jobID** The Windows Update job ID. - - ## Windows Update events ### Microsoft.Windows.Update.DeviceUpdateAgent.UpdateAgentCommit @@ -5067,6 +5441,24 @@ The following fields are available: - **updateId** Unique ID for each Update. +### Microsoft.Windows.Update.NotificationUx.DialogNotificationToBeDisplayed + +This event indicates that a notification dialog box is about to be displayed to user. + + + +### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootRebootFailedDialog + +This event indicates that the Enhanced Engaged restart "restart failed" dialog box was displayed. + + + +### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootRebootImminentDialog + +This event indicates that the Enhanced Engaged restart "restart imminent" dialog box was displayed. + + + ### Microsoft.Windows.Update.NotificationUx.RebootScheduled Indicates when a reboot is scheduled by the system or a user for a security, quality, or feature update. @@ -5085,6 +5477,18 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.ActivityRestrictedByActiveHoursPolicy + +This event indicates a policy is present that may restrict update activity to outside of active hours. + + + +### Microsoft.Windows.Update.Orchestrator.BlockedByActiveHours + +This event indicates that update activity was blocked because it is within the active hours window. + + + ### Microsoft.Windows.Update.Orchestrator.CommitFailed This event indicates that a device was unable to restart after an update. @@ -5114,16 +5518,16 @@ This event indicates that a scan for a Windows Update occurred. The following fields are available: - **deferReason** Reason why the device could not check for updates. -- **detectionBlockreason** Reason for detection not completing. +- **detectionBlockreason** Reason for blocking detection - **detectionRetryMode** Indicates whether we will try to scan again. -- **errorCode** The returned error code. -- **eventScenario** End-to-end update session ID, or indicates the purpose of sending this event - whether because the software distribution just started installing content, or whether it was cancelled, succeeded, or failed. +- **errorCode** Error value +- **eventScenario** End to end update session ID, or indicates the purpose of sending this event - whether because the software distribution just started installing content, or whether it was cancelled, succeeded, or failed. - **flightID** The specific ID of the Windows Insider build the device is getting. - **interactive** Indicates whether the session was user initiated. - **revisionNumber** Update revision number. - **updateId** Update ID. -- **updateScenarioType** Update Session type -- **wuDeviceid** Device ID +- **updateScenarioType** The update session type. +- **wuDeviceid** Unique device ID used by Windows Update. ### Microsoft.Windows.Update.Orchestrator.DisplayNeeded @@ -5142,6 +5546,23 @@ The following fields are available: - **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue +### Microsoft.Windows.Update.Orchestrator.Download + +This event sends launch data for a Windows Update download to help keep Windows up to date. + +The following fields are available: + +- **deferReason** Reason for download not completing. +- **errorCode** An error code represented as a hexadecimal value. +- **eventScenario** End-to-end update session ID. +- **flightID** The specific ID of the Windows Insider build the device is getting. +- **interactive** Indicates whether the session is user initiated. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.FlightInapplicable This event indicates that the update is no longer applicable to this device. @@ -5169,6 +5590,48 @@ The following fields are available: - **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue. +### Microsoft.Windows.Update.Orchestrator.InitiatingReboot + +This event sends data about an Orchestrator requesting a reboot from power management to help keep Windows up to date. + +The following fields are available: + +- **EventPublishedTime** Time of the event. +- **flightID** Unique update ID +- **interactive** Indicates whether the reboot initiation stage of the update process was entered as a result of user action. +- **rebootOutsideOfActiveHours** Indicates whether the reboot was to occur outside of active hours. +- **revisionNumber** Revision number of the update. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.Install + +This event sends launch data for a Windows Update install to help keep Windows up to date. + +The following fields are available: + +- **batteryLevel** Current battery capacity in mWh or percentage left. +- **deferReason** Reason for install not completing. +- **errorCode** The error code reppresented by a hexadecimal value. +- **eventScenario** End-to-end update session ID. +- **flightID** The specific ID of the Windows Insider build the device is getting. +- **flightUpdate** Indicates whether the update is a Windows Insider build. +- **ForcedRebootReminderSet** A boolean value that indicates if a forced reboot will happen for updates. +- **installCommitfailedtime** The time it took for a reboot to happen but the upgrade failed to progress. +- **installRebootinitiatetime** The time it took for a reboot to be attempted. +- **interactive** Identifies if session is user initiated. +- **minutesToCommit** The time it took to install updates. +- **rebootOutsideOfActiveHours** Indicates whether a reboot is scheduled outside of active hours. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.LowUptimes This event is sent if a device is identified as not having sufficient uptime to reliably process updates in order to keep secure. @@ -5182,6 +5645,18 @@ The following fields are available: - **wuDeviceid** Unique device ID for Windows Update. +### Microsoft.Windows.Update.Orchestrator.OneshotUpdateDetection + +This event returns data about scans initiated through settings UI, or background scans that are urgent; to help keep Windows up to date. + +The following fields are available: + +- **externalOneshotupdate** The last time a task-triggered scan was completed. +- **interactiveOneshotupdate** The last time an interactive scan was completed. +- **oldlastscanOneshotupdate** The last time a scan completed successfully. +- **wuDeviceid** The Windows Update Device GUID (Globally-Unique ID). + + ### Microsoft.Windows.Update.Orchestrator.PreShutdownStart This event is generated before the shutdown and commit operations. @@ -5191,6 +5666,166 @@ The following fields are available: - **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue. +### Microsoft.Windows.Update.Orchestrator.RebootFailed + +This event sends information about whether an update required a reboot and reasons for failure, to help keep Windows up to date. + +The following fields are available: + +- **batteryLevel** Current battery capacity in mWh or percentage left. +- **deferReason** Reason for install not completing. +- **EventPublishedTime** The time that the reboot failure occurred. +- **flightID** Unique update ID. +- **rebootOutsideOfActiveHours** Indicates whether a reboot was scheduled outside of active hours. +- **RebootResults** Hex code indicating failure reason. Typically, we expect this to be a specific USO generated hex code. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.RefreshSettings + +This event sends basic data about the version of upgrade settings applied to the system to help keep Windows up to date. + +The following fields are available: + +- **errorCode** Hex code for the error message, to allow lookup of the specific error. +- **settingsDownloadTime** Timestamp of the last attempt to acquire settings. +- **settingsETag** Version identifier for the settings. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.RestoreRebootTask + +This event sends data indicating that a reboot task is missing unexpectedly on a device and the task is restored because a reboot is still required, to help keep Windows up to date. + +The following fields are available: + +- **RebootTaskRestoredTime** Time at which this reboot task was restored. +- **wuDeviceid** Device ID for the device on which the reboot is restored. + + +### Microsoft.Windows.Update.Orchestrator.SystemNeeded + +This event sends data about why a device is unable to reboot, to help keep Windows up to date. + +The following fields are available: + +- **eventScenario** End-to-end update session ID. +- **rebootOutsideOfActiveHours** Indicates whether a reboot is scheduled outside of active hours. +- **revisionNumber** Update revision number. +- **systemNeededReason** List of apps or tasks that are preventing the system from restarting. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.UpdatePolicyCacheRefresh + +This event sends data on whether Update Management Policies were enabled on a device, to help keep Windows up to date. + +The following fields are available: + +- **configuredPoliciescount** Number of policies on the device. +- **policiesNamevaluesource** Policy name and source of policy (group policy, MDM or flight). +- **policyCacherefreshtime** Time when policy cache was refreshed. +- **updateInstalluxsetting** Indicates whether a user has set policies via a user experience option. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.updateSettingsFlushFailed + +This event sends information about an update that encountered problems and was not able to complete. + +The following fields are available: + +- **errorCode** The error code encountered. +- **wuDeviceid** The ID of the device in which the error occurred. + + +### Microsoft.Windows.Update.Orchestrator.USODiagnostics + +This event sends data on whether the state of the update attempt, to help keep Windows up to date. + +The following fields are available: + +- **errorCode** result showing success or failure of current update +- **LastApplicableUpdateFoundTime** The time when the last applicable update was found. +- **LastDownloadDeferredReason** The last reason download was deferred. +- **LastDownloadDeferredTime** The time of the download deferral. +- **LastDownloadFailureError** The last download failure. +- **LastDownloadFailureTime** The time of the last download failure. +- **LastInstallCompletedTime** The time when the last successful install completed. +- **LastInstallDeferredReason** The reason the last install was deferred. +- **LastInstallDeferredTime** The time when the last install was deferred. +- **LastInstallFailureError** The error code associated with the last install failure. +- **LastInstallFailureTime** The time when the last install failed to complete. +- **LastRebootDeferredReason** The reason the last reboot was deferred. +- **LastRebootDeferredTime** The time when the last reboot was deferred. +- **LastRebootPendingTime** The time when the last reboot state was set to “Pending”. +- **LastScanDeferredReason** The reason the last scan was deferred. +- **LastScanDeferredTime** The time when the last scan was deferred. +- **LastScanFailureError** The error code for the last scan failure. +- **LastScanFailureTime** The time when the last scan failed. +- **LastUpdateCheckTime** The time of the last update check. +- **LastUpdateDownloadTime** The time when the last update was downloaded. +- **LastUpgradeInstallFailureError** The error code for the last upgrade install failure. +- **LastUpgradeInstallFailureTime** The time of the last upgrade install failure. +- **LowUpTimeDetectTime** The last time “low up-time” was detected. +- **NoLowUpTimeDetectTime** The last time no “low up-time” was detected. +- **RebootRequired** Indicates reboot is required. +- **revisionNumber** Unique revision number of the Update +- **updateId** Unique ID for Update +- **updateState** Progress within an update state +- **UpgradeInProgressTime** The amount of time a feature update has been in progress. +- **WaaSFeatureAssessmentDays** The number of days Feature Update Assessment has been out of date. +- **WaaSFeatureAssessmentImpact** The impact of the Feature Update Assessment. +- **WaaSUpToDateAssessmentDays** The number of days Quality Update Assessment has been out of date. +- **WaaSUpToDateAssessmentImpact** The impact of Quality Update Assessment. +- **wuDeviceid** Unique ID for Device + + +### Microsoft.Windows.Update.Orchestrator.UsoSession + +This event represents the state of the USO service at start and completion. + +The following fields are available: + +- **activeSessionid** A unique session GUID. +- **eventScenario** The state of the update action. +- **interactive** Is the USO session interactive? +- **lastErrorcode** The last error that was encountered. +- **lastErrorstate** The state of the update when the last error was encountered. +- **sessionType** A GUID that refers to the update session type. +- **updateScenarioType** A descriptive update session type. +- **wuDeviceid** The Windows Update device GUID. + + +### Microsoft.Windows.Update.Ux.MusNotification.EnhancedEngagedRebootUxState + +This event sends information about the configuration of Enhanced Direct-to-Engaged (eDTE), which includes values for the timing of how eDTE will progress through each phase of the reboot. + +The following fields are available: + +- **AcceptAutoModeLimit** The maximum number of days for a device to automatically enter Auto Reboot mode. +- **AutoToAutoFailedLimit** The maximum number of days for Auto Reboot mode to fail before a Reboot Failed dialog will be shown. +- **DeviceLocalTime** The date and time (based on the device date/time settings) the reboot mode changed. +- **EngagedModeLimit** The number of days to switch between DTE (Direct-to-Engaged) dialogs. +- **EnterAutoModeLimit** The maximum number of days a device can enter Auto Reboot mode. +- **ETag** The Entity Tag that represents the OneSettings version. +- **IsForcedEnabled** Identifies whether Forced Reboot mode is enabled for the device. +- **IsUltimateForcedEnabled** Identifies whether Ultimate Forced Reboot mode is enabled for the device. +- **OldestUpdateLocalTime** The date and time (based on the device date/time settings) this update’s reboot began pending. +- **RebootUxState** Identifies the reboot state: Engaged, Auto, Forced, UltimateForced. +- **RebootVersion** The version of the DTE (Direct-to-Engaged). +- **SkipToAutoModeLimit** The maximum number of days to switch to start while in Auto Reboot mode. +- **UpdateId** The ID of the update that is waiting for reboot to finish installation. +- **UpdateRevision** The revision of the update that is waiting for reboot to finish installation. + + ### Microsoft.Windows.Update.Ux.MusNotification.RebootNoLongerNeeded This event is sent when a security update has successfully completed. @@ -5209,6 +5844,25 @@ The following fields are available: - **Reason** The reason sent which will cause the reboot to defer. +### Microsoft.Windows.Update.Ux.MusNotification.RebootScheduled + +This event sends basic information about scheduling an update-related reboot, to get security updates and to help keep Windows up-to-date. + +The following fields are available: + +- **activeHoursApplicable** Indicates whether Active Hours applies on this device. +- **forcedReboot** True, if a reboot is forced on the device. Otherwise, this is False +- **rebootArgument** Argument for the reboot task. It also represents specific reboot related action. +- **rebootOutsideOfActiveHours** True, if a reboot is scheduled outside of active hours. False, otherwise. +- **rebootScheduledByUser** True, if a reboot is scheduled by user. False, if a reboot is scheduled automatically. +- **rebootState** Current state of the reboot. +- **revisionNumber** Revision number of the update that is getting installed with this reboot. +- **scheduledRebootTime** Time scheduled for the reboot. +- **scheduledRebootTimeInUTC** Time scheduled for the reboot, in UTC. +- **updateId** Identifies which update is being scheduled. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Ux.MusNotification.UxBrokerFirstReadyToReboot This event is fired the first time when the reboot is required. @@ -5227,7 +5881,7 @@ The following fields are available: ### Microsoft.Windows.Update.Ux.MusUpdateSettings.RebootScheduled -This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up-to-date +This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up to date. The following fields are available: @@ -5244,6 +5898,32 @@ The following fields are available: - **wuDeviceid** The Windows Update device GUID. +## Windows Update mitigation events + +### Mitigation360Telemetry.MitigationCustom.CleanupSafeOsImages + +This event sends data specific to the CleanupSafeOsImages mitigation used for OS Updates. + +The following fields are available: + +- **ClientId** In the WU scenario, this will be the WU client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightId** Unique identifier for each flight. +- **InstanceId** Unique GUID that identifies each instances of setuphost.exe. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **MountedImageCount** Number of mounted images. +- **MountedImageMatches** Number of mounted images that were under %systemdrive%\$Windows.~BT. +- **MountedImagesFailed** Number of mounted images under %systemdrive%\$Windows.~BT that could not be removed. +- **MountedImagesRemoved** Number of mounted images under %systemdrive%\$Windows.~BT that were successfully removed. +- **MountedImagesSkipped** Number of mounted images that were not under %systemdrive%\$Windows.~BT. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** HResult of this operation. +- **ScenarioId** ID indicating the mitigation scenario. +- **ScenarioSupported** Indicates whether the scenario was supported. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each Update. +- **WuId** Unique ID for the Windows Update client. + + ## Winlogon events ### Microsoft.Windows.Security.Winlogon.SetupCompleteLogon diff --git a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1803.md b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1803.md index 9af3127db4..945ae68322 100644 --- a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1803.md +++ b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1803.md @@ -9,7 +9,7 @@ ms.pagetype: security localizationpriority: high author: brianlic-msft ms.author: brianlic -ms.date: 09/10/2018 +ms.date: 11/07/2018 --- @@ -28,6 +28,7 @@ Use this article to learn about diagnostic events, grouped by event area, and th You can learn more about Windows functional and diagnostic data through these articles: + - [Windows 10, version 1809 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1809.md) - [Windows 10, version 1709 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1709.md) - [Windows 10, version 1703 basic diagnostic events and fields](basic-level-windows-diagnostic-events-and-fields-1703.md) @@ -35,6 +36,8 @@ You can learn more about Windows functional and diagnostic data through these ar - [Configure Windows diagnostic data in your organization](configure-windows-diagnostic-data-in-your-organization.md) + + ## Appraiser events ### Microsoft.Windows.Appraiser.General.ChecksumTotalPictureCount @@ -75,7 +78,7 @@ The following fields are available: - **DecisionSystemBios_RS3** The total DecisionSystemBios objects targeting the next release of Windows on this device. - **DecisionTest_RS1** An ID for the system, calculated by hashing hardware identifiers. - **InventoryApplicationFile** The count of the number of this particular object type present on this device. -- **InventoryLanguagePack** The count of the number of this particular object type present on this device. +- **InventoryLanguagePack** The count of InventoryLanguagePack objects present on this machine. - **InventoryMediaCenter** The count of the number of this particular object type present on this device. - **InventorySystemBios** The count of the number of this particular object type present on this device. - **InventoryTest** The count of the number of this particular object type present on this device. @@ -369,7 +372,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.DecisionApplicationFileRemove -This event indicates that the DecisionApplicationFile object is no longer present. +This event indicates Indicates that the DecisionApplicationFile object is no longer present. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -575,6 +578,17 @@ The following fields are available: - **AppraiserVersion** The version of the Appraiser file that is generating the events. +### Microsoft.Windows.Appraiser.General.DecisionMatchingInfoPostUpgradeStartSync + +This event indicates that a new set of DecisionMatchingInfoPostUpgradeAdd events will be sent. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **AppraiserVersion** The version of the Appraiser file that is generating the events. + + ### Microsoft.Windows.Appraiser.General.DecisionMediaCenterAdd This event sends decision data about the presence of Windows Media Center, to help keep Windows up to date. @@ -701,7 +715,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.InventoryApplicationFileStartSync -This event indicates that a new set of InventoryApplicationFileAdd events will be sent. +This event indicates indicates that a new set of InventoryApplicationFileAdd events will be sent. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -822,6 +836,31 @@ The following fields are available: - **AppraiserVersion** The version of the Appraiser file that is generating the events. +### Microsoft.Windows.Appraiser.General.InventoryUplevelDriverPackageAdd + +This event is only runs during setup. It provides a listing of the uplevel driver packages that were downloaded before the upgrade. Is critical to understanding if failures in setup can be traced to not having sufficient uplevel drivers before the upgrade. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **AppraiserVersion** The version of the Appraiser file that is generating the events. +- **BootCritical** Is the driver package marked as boot critical? +- **Build** The build value from the driver package. +- **CatalogFile** The name of the catalog file within the driver package. +- **Class** The device class from the driver package. +- **ClassGuid** The device class unique ID from the driver package. +- **Date** The date from the driver package. +- **Inbox** Is the driver package of a driver that is included with Windows? +- **OriginalName** The original name of the INF file before it was renamed. Generally a path under $WINDOWS.~BT\Drivers\DU. +- **Provider** The provider of the driver package. +- **PublishedName** The name of the INF file after it was renamed. +- **Revision** The revision of the driver package. +- **SignatureStatus** Indicates if the driver package is signed. Unknown = 0, Unsigned = 1, Signed = 2. +- **VersionMajor** The major version of the driver package. +- **VersionMinor** The minor version of the driver package. + + ### Microsoft.Windows.Appraiser.General.InventoryUplevelDriverPackageRemove This event indicates that the InventoryUplevelDriverPackage object is no longer present. @@ -1179,6 +1218,23 @@ The following fields are available: - **AppraiserVersion** The version of the Appraiser file that is generating the events. +### Microsoft.Windows.Appraiser.General.SystemWlanAdd + +This event sends data indicating whether the system has WLAN, and if so, whether it uses an emulated driver that could block an upgrade, to help keep Windows up-to-date. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **AppraiserVersion** The version of the Appraiser file that is generating the events. +- **Blocking** Is the upgrade blocked because of an emulated WLAN driver? +- **HasWlanBlock** Does the emulated WLAN driver have an upgrade block? +- **WlanEmulatedDriver** Does the device have an emulated WLAN driver? +- **WlanExists** Does the device support WLAN at all? +- **WlanModulePresent** Are any WLAN modules present? +- **WlanNativeDriver** Does the device have a non-emulated WLAN driver? + + ### Microsoft.Windows.Appraiser.General.SystemWlanRemove This event indicates that the SystemWlan object is no longer present. @@ -1292,7 +1348,7 @@ The following fields are available: - **AppraiserTaskExitCode** The Appraiser task exist code. - **AppraiserTaskLastRun** The last runtime for the Appraiser task. - **CensusVersion** The version of Census that generated the current data for this device. -- **IEVersion** Retrieves which version of Internet Explorer is running on this device. +- **IEVersion** IE version running on the device. ### Census.Battery @@ -2594,6 +2650,91 @@ The following fields are available: - **CV** Correlation vector. +## DxgKernelTelemetry events + +### DxgKrnlTelemetry.GPUAdapterInventoryV2 + +This event sends basic GPU and display driver information to keep Windows and display drivers up-to-date. + +The following fields are available: + +- **AdapterTypeValue** The numeric value indicating the type of Graphics adapter. +- **aiSeqId** The event sequence ID. +- **bootId** The system boot ID. +- **BrightnessVersionViaDDI** The version of the Display Brightness Interface. +- **ComputePreemptionLevel** The maximum preemption level supported by GPU for compute payload. +- **DedicatedSystemMemoryB** The amount of system memory dedicated for GPU use (in bytes). +- **DedicatedVideoMemoryB** The amount of dedicated VRAM of the GPU (in bytes). +- **DisplayAdapterLuid** The display adapter LUID. +- **DriverDate** The date of the display driver. +- **DriverRank** The rank of the display driver. +- **DriverVersion** The display driver version. +- **DX10UMDFilePath** The file path to the location of the DirectX 10 Display User Mode Driver in the Driver Store. +- **DX11UMDFilePath** The file path to the location of the DirectX 11 Display User Mode Driver in the Driver Store. +- **DX12UMDFilePath** The file path to the location of the DirectX 12 Display User Mode Driver in the Driver Store. +- **DX9UMDFilePath** The file path to the location of the DirectX 9 Display User Mode Driver in the Driver Store. +- **GPUDeviceID** The GPU device ID. +- **GPUPreemptionLevel** The maximum preemption level supported by GPU for graphics payload. +- **GPURevisionID** The GPU revision ID. +- **GPUVendorID** The GPU vendor ID. +- **InterfaceId** The GPU interface ID. +- **IsDisplayDevice** Does the GPU have displaying capabilities? +- **IsHybridDiscrete** Does the GPU have discrete GPU capabilities in a hybrid device? +- **IsHybridIntegrated** Does the GPU have integrated GPU capabilities in a hybrid device? +- **IsLDA** Is the GPU comprised of Linked Display Adapters? +- **IsMiracastSupported** Does the GPU support Miracast? +- **IsMismatchLDA** Is at least one device in the Linked Display Adapters chain from a different vendor? +- **IsMPOSupported** Does the GPU support Multi-Plane Overlays? +- **IsMsMiracastSupported** Are the GPU Miracast capabilities driven by a Microsoft solution? +- **IsPostAdapter** Is this GPU the POST GPU in the device? +- **IsRemovable** TRUE if the adapter supports being disabled or removed. +- **IsRenderDevice** Does the GPU have rendering capabilities? +- **IsSoftwareDevice** Is this a software implementation of the GPU? +- **KMDFilePath** The file path to the location of the Display Kernel Mode Driver in the Driver Store. +- **MeasureEnabled** Is the device listening to MICROSOFT_KEYWORD_MEASURES? +- **NumVidPnSources** The number of supported display output sources. +- **NumVidPnTargets** The number of supported display output targets. +- **SharedSystemMemoryB** The amount of system memory shared by GPU and CPU (in bytes). +- **SubSystemID** The subsystem ID. +- **SubVendorID** The GPU sub vendor ID. +- **TelemetryEnabled** Is the device listening to MICROSOFT_KEYWORD_TELEMETRY? +- **TelInvEvntTrigger** What triggered this event to be logged? Example: 0 (GPU enumeration) or 1 (DxgKrnlTelemetry provider toggling) +- **version** The event version. +- **WDDMVersion** The Windows Display Driver Model version. + + +## Fault Reporting events + +### Microsoft.Windows.FaultReporting.AppCrashEvent + +This event sends data about crashes for both native and managed applications, to help keep Windows up to date. The data includes information about the crashing process and a summary of its exception record. It does not contain any Watson bucketing information. The bucketing information is recorded in a Windows Error Reporting (WER) event that is generated when the WER client reports the crash to the Watson service, and the WER event will contain the same ReportID (see field 14 of crash event, field 19 of WER event) as the crash event for the crash being reported. AppCrash is emitted once for each crash handled by WER (e.g. from an unhandled exception or FailFast or ReportException). Note that Generic Watson event types (e.g. from PLM) that may be considered crashes\" by a user DO NOT emit this event. + +The following fields are available: + +- **AppName** The name of the app that has crashed. +- **AppSessionGuid** GUID made up of process ID and is used as a correlation vector for process instances in the telemetry backend. +- **AppTimeStamp** The date/time stamp of the app. +- **AppVersion** The version of the app that has crashed. +- **ExceptionCode** The exception code returned by the process that has crashed. +- **ExceptionOffset** The address where the exception had occurred. +- **Flags** Flags indicating how reporting is done. For example, queue the report, do not offer JIT debugging, or do not terminate the process after reporting. +- **FriendlyAppName** The description of the app that has crashed, if different from the AppName. Otherwise, the process name. +- **IsCrashFatal** (Deprecated) True/False to indicate whether the crash resulted in process termination. +- **IsFatal** True/False to indicate whether the crash resulted in process termination. +- **ModName** Exception module name (e.g. bar.dll). +- **ModTimeStamp** The date/time stamp of the module. +- **ModVersion** The version of the module that has crashed. +- **PackageFullName** Store application identity. +- **PackageRelativeAppId** Store application identity. +- **ProcessArchitecture** Architecture of the crashing process, as one of the PROCESSOR_ARCHITECTURE_* constants: 0: PROCESSOR_ARCHITECTURE_INTEL. 5: PROCESSOR_ARCHITECTURE_ARM. 9: PROCESSOR_ARCHITECTURE_AMD64. 12: PROCESSOR_ARCHITECTURE_ARM64. +- **ProcessCreateTime** The time of creation of the process that has crashed. +- **ProcessId** The ID of the process that has crashed. +- **ReportId** A GUID used to identify the report. This can used to track the report across Watson. +- **TargetAppId** The kernel reported AppId of the application being reported. +- **TargetAppVer** The specific version of the application being reported +- **TargetAsId** The sequence number for the hanging process. + + ## Feature update events ### Microsoft.Windows.Upgrade.Uninstall.UninstallFailed @@ -2618,6 +2759,34 @@ This event sends basic metadata about the starting point of uninstalling a featu +## Hang Reporting events + +### Microsoft.Windows.HangReporting.AppHangEvent + +This event sends data about hangs for both native and managed applications, to help keep Windows up to date. It does not contain any Watson bucketing information. The bucketing information is recorded in a Windows Error Reporting (WER) event that is generated when the WER client reports the hang to the Watson service, and the WER event will contain the same ReportID (see field 13 of hang event, field 19 of WER event) as the hang event for the hang being reported. AppHang is reported only on PC devices. It handles classic Win32 hangs and is emitted only once per report. Some behaviors that may be perceived by a user as a hang are reported by app managers (e.g. PLM/RM/EM) as Watson Generics and will not produce AppHang events. + +The following fields are available: + +- **AppName** The name of the app that has hung. +- **AppSessionGuid** GUID made up of process id used as a correlation vector for process instances in the telemetry backend. +- **AppVersion** The version of the app that has hung. +- **IsFatal** True/False based on whether the hung application caused the creation of a Fatal Hang Report. +- **PackageFullName** Store application identity. +- **PackageRelativeAppId** Store application identity. +- **ProcessArchitecture** Architecture of the hung process, as one of the PROCESSOR_ARCHITECTURE_* constants: 0: PROCESSOR_ARCHITECTURE_INTEL. 5: PROCESSOR_ARCHITECTURE_ARM. 9: PROCESSOR_ARCHITECTURE_AMD64. 12: PROCESSOR_ARCHITECTURE_ARM64. +- **ProcessCreateTime** The time of creation of the process that has hung. +- **ProcessId** The ID of the process that has hung. +- **ReportId** A GUID used to identify the report. This can used to track the report across Watson. +- **TargetAppId** The kernel reported AppId of the application being reported. +- **TargetAppVer** The specific version of the application being reported. +- **TargetAsId** The sequence number for the hanging process. +- **TypeCode** Bitmap describing the hang type. +- **WaitingOnAppName** If this is a cross process hang waiting for an application, this has the name of the application. +- **WaitingOnAppVersion** If this is a cross process hang, this has the version of the application for which it is waiting. +- **WaitingOnPackageFullName** If this is a cross process hang waiting for a package, this has the full name of the package for which it is waiting. +- **WaitingOnPackageRelativeAppId** If this is a cross process hang waiting for a package, this has the relative application id of the package. + + ## Inventory events ### Microsoft.Windows.Inventory.Core.AmiTelCacheChecksum @@ -2693,6 +2862,18 @@ The following fields are available: - **Version** The version number of the program. +### Microsoft.Windows.Inventory.Core.InventoryApplicationDriverAdd + +This event represents what drivers an application installs. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **InventoryVersion** The version of the inventory component. +- **ProgramIds** The unique program identifier the driver is associated with. + + ### Microsoft.Windows.Inventory.Core.InventoryApplicationFrameworkAdd This event provides the basic metadata about the frameworks an application may depend on. @@ -2839,6 +3020,17 @@ The following fields are available: - **InventoryVersion** The version of the inventory file generating the events. +### Microsoft.Windows.Inventory.Core.InventoryDeviceMediaClassRemove + +This event indicates that the InventoryDeviceMediaClassRemove object is no longer present. + +This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). + +The following fields are available: + +- **InventoryVersion** The version of the inventory file generating the events. + + ### Microsoft.Windows.Inventory.Core.InventoryDeviceMediaClassStartSync This event indicates that a new set of InventoryDeviceMediaClassSAdd events will be sent. @@ -2873,7 +3065,7 @@ The following fields are available: - **Enumerator** The date of the driver loaded for the device. - **HWID** The version of the driver loaded for the device. - **Inf** The bus that enumerated the device. -- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/library/windows/hardware/ff543130.aspx +- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/en-us/library/windows/hardware/ff543130.aspx - **InventoryVersion** List of hardware ids for the device. - **LowerClassFilters** Lower filter class drivers IDs installed for the device - **LowerFilters** Lower filter drivers IDs installed for the device @@ -3438,6 +3630,557 @@ The following fields are available: - **UptimeDeltaMS** Total time (in milliseconds) added to Uptime since the last event +## OneDrive events + +### Microsoft.OneDrive.Sync.Setup.APIOperation + +This event includes basic data about install and uninstall OneDrive API operations. + +The following fields are available: + +- **APIName** The name of the API. +- **Duration** How long the operation took. +- **IsSuccess** Was the operation successful? +- **ResultCode** The result code. +- **ScenarioName** The name of the scenario. + + +### Microsoft.OneDrive.Sync.Setup.EndExperience + +This event includes a success or failure summary of the installation. + +The following fields are available: + +- **APIName** The name of the API. +- **HResult** HResult of the operation +- **IsSuccess** Whether the operation is successful or not +- **ScenarioName** The name of the scenario. + + +### Microsoft.OneDrive.Sync.Setup.OSUpgradeInstallationOperation + +This event is related to the OS version when the OS is upgraded with OneDrive installed. + +The following fields are available: + +- **CurrentOneDriveVersion** The current version of OneDrive. +- **CurrentOSBuildBranch** The current branch of the operating system. +- **CurrentOSBuildNumber** The current build number of the operating system. +- **CurrentOSVersion** The current version of the operating system. +- **HResult** The HResult of the operation. +- **SourceOSBuildBranch** The source branch of the operating system. +- **SourceOSBuildNumber** The source build number of the operating system. +- **SourceOSVersion** The source version of the operating system. + + +### Microsoft.OneDrive.Sync.Setup.RegisterStandaloneUpdaterAPIOperation + +This event is related to registering or unregistering the OneDrive update task. + +The following fields are available: + +- **APIName** The name of the API. +- **IsSuccess** Was the operation successful? +- **RegisterNewTaskResult** The HResult of the RegisterNewTask operation. +- **ScenarioName** The name of the scenario. +- **UnregisterOldTaskResult** The HResult of the UnregisterOldTask operation. + + +### Microsoft.OneDrive.Sync.Updater.ComponentInstallState + +This event includes basic data about the installation state of dependent OneDrive components. + +The following fields are available: + +- **ComponentName** The name of the dependent component. +- **isInstalled** Is the dependent component installed? + + +### Microsoft.OneDrive.Sync.Updater.OverlayIconStatus + +This event indicates if the OneDrive overlay icon is working correctly. 0 = healthy; 1 = can be fixed; 2 = broken + +The following fields are available: + +- **32bit** The status of the OneDrive overlay icon on a 32-bit operating system. +- **64bit** The status of the OneDrive overlay icon on a 64-bit operating system. + + +### Microsoft.OneDrive.Sync.Updater.UpdateOverallResult + +This event sends information describing the result of the update. + +The following fields are available: + +- **hr** The HResult of the operation. +- **IsLoggingEnabled** Indicates whether logging is enabled for the updater. +- **UpdaterVersion** The version of the updater. + + +### Microsoft.OneDrive.Sync.Updater.UpdateXmlDownloadHResult + +This event determines the status when downloading the OneDrive update configuration file. + +The following fields are available: + +- **hr** The HResult of the operation. + + +### Microsoft.OneDrive.Sync.Updater.WebConnectionStatus + +This event determines the error code that was returned when verifying Internet connectivity. + +The following fields are available: + +- **winInetError** The HResult of the operation. + + +## Other events + +### CbsServicingProvider.CbsCapabilityEnumeration + +This event reports on the results of scanning for optional Windows content on Windows Update. + +The following fields are available: + +- **architecture** Indicates the scan was limited to the specified architecture. +- **capabilityCount** The number of optional content packages found during the scan. +- **clientId** The name of the application requesting the optional content. +- **duration** The amount of time it took to complete the scan. +- **hrStatus** The HReturn code of the scan. +- **language** Indicates the scan was limited to the specified language. +- **majorVersion** Indicates the scan was limited to the specified major version. +- **minorVersion** Indicates the scan was limited to the specified minor version. +- **namespace** Indicates the scan was limited to packages in the specified namespace. +- **sourceFilter** A bitmask indicating the scan checked for locally available optional content. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionFinalize + +This event provides information about the results of installing or uninstalling optional Windows content from Windows Update. + +The following fields are available: + +- **capabilities** The names of the optional content packages that were installed. +- **clientId** The name of the application requesting the optional content. +- **currentID** The ID of the current install session. +- **highestState** The highest final install state of the optional content. +- **hrStatus** The HReturn code of the install operation. +- **rebootCount** The number of reboots required to complete the install. +- **retryID** The session ID that will be used to retry a failed operation. +- **retryStatus** Indicates whether the install will be retried in the event of failure. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionPended + +This event provides information about the results of installing optional Windows content that requires a reboot to keep Windows up to date. + +The following fields are available: + +- **clientId** The name of the application requesting the optional content. +- **pendingDecision** Indicates the cause of reboot, if applicable. + + +### CbsServicingProvider.CbsPackageRemoval + +This event provides information about the results of uninstalling a Windows Cumulative Security Update to help keep Windows up to date. + +The following fields are available: + +- **buildVersion** The build number of the security update being uninstalled. +- **clientId** The name of the application requesting the uninstall. +- **currentStateEnd** The final state of the update after the operation. +- **failureDetails** Information about the cause of a failure, if applicable. +- **failureSourceEnd** The stage during the uninstall where the failure occurred. +- **hrStatusEnd** The overall exit code of the operation. +- **initiatedOffline** Indicates if the uninstall was initiated for a mounted Windows image. +- **majorVersion** The major version number of the security update being uninstalled. +- **minorVersion** The minor version number of the security update being uninstalled. +- **originalState** The starting state of the update before the operation. +- **pendingDecision** Indicates the cause of reboot, if applicable. +- **primitiveExecutionContext** The state during system startup when the uninstall was completed. +- **revisionVersion** The revision number of the security update being uninstalled. +- **transactionCanceled** Indicates whether the uninstall was cancelled. + + +### Microsoft.Windows.Remediation.Applicable + +This event indicates a remedial plug-in is applicable if/when such a plug-in is detected. This is used to ensure Windows is up to date. + +The following fields are available: + +- **ActionName** The name of the action to be taken by the plug-in. +- **AppraiserBinariesValidResult** Indicates whether plug-in was appraised as valid. +- **AppraiserDetectCondition** Indicates whether the plug-in passed the appraiser's check. +- **AppraiserRegistryValidResult** Indicates whether the registry entry checks out as valid. +- **AppraiserTaskDisabled** Indicates the appraiser task is disabled. +- **AppraiserTaskValidFailed** Indicates the Appraiser task did not function and requires intervention. +- **CV** Correlation vector +- **DateTimeDifference** The difference between local and reference clock times. +- **DateTimeSyncEnabled** Indicates whether the datetime sync plug-in is enabled. +- **DaysSinceLastSIH** The number of days since the most recent SIH executed. +- **DaysToNextSIH** The number of days until the next scheduled SIH execution. +- **DetectedCondition** Indicates whether detect condition is true and the perform action will be run. +- **EvalAndReportAppraiserBinariesFailed** Indicates the EvalAndReportAppraiserBinaries event failed. +- **EvalAndReportAppraiserRegEntries** Indicates the EvalAndReportAppraiserRegEntriesFailed event failed. +- **EvalAndReportAppraiserRegEntriesFailed** Indicates the EvalAndReportAppraiserRegEntriesFailed event failed. +- **GlobalEventCounter** Client side counter that indicates ordering of events sent by the remediation system. +- **HResult** The HRESULT for detection or perform action phases of the plugin. +- **IsAppraiserLatestResult** The HRESULT from the appraiser task. +- **IsConfigurationCorrected** Indicates whether the configuration of SIH task was successfully corrected. +- **LastHresult** The HRESULT for detection or perform action phases of the plugin. +- **LastRun** The date of the most recent SIH run. +- **NextRun** Date of the next scheduled SIH run. +- **PackageVersion** The version of the current remediation package. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Reload** True if SIH reload is required. +- **RemediationNoisyHammerAcLineStatus** Event that indicates the AC Line Status of the machine. +- **RemediationNoisyHammerAutoStartCount** The number of times hammer auto-started. +- **RemediationNoisyHammerCalendarTaskEnabled** Event that indicates Update Assistant Calendar Task is enabled. +- **RemediationNoisyHammerCalendarTaskExists** Event that indicates an Update Assistant Calendar Task exists. +- **RemediationNoisyHammerCalendarTaskTriggerEnabledCount** Event that indicates calendar triggers are enabled in the task. +- **RemediationNoisyHammerDaysSinceLastTaskRunTime** The number of days since the most recent hammer task ran. +- **RemediationNoisyHammerGetCurrentSize** Size in MB of the $GetCurrent folder. +- **RemediationNoisyHammerIsInstalled** TRUE if the noisy hammer is installed. +- **RemediationNoisyHammerLastTaskRunResult** The result of the last hammer task run. +- **RemediationNoisyHammerMeteredNetwork** TRUE if the machine is on a metered network. +- **RemediationNoisyHammerTaskEnabled** Indicates whether the Update Assistant Task (Noisy Hammer) is enabled. +- **RemediationNoisyHammerTaskExists** Indicates whether the Update Assistant Task (Noisy Hammer) exists. +- **RemediationNoisyHammerTaskTriggerEnabledCount** Indicates whether counting is enabled for the Update Assistant (Noisy Hammer) task trigger. +- **RemediationNoisyHammerUAExitCode** The exit code of the Update Assistant (Noisy Hammer) task. +- **RemediationNoisyHammerUAExitState** The code for the exit state of the Update Assistant (Noisy Hammer) task. +- **RemediationNoisyHammerUserLoggedIn** TRUE if there is a user logged in. +- **RemediationNoisyHammerUserLoggedInAdmin** TRUE if there is the user currently logged in is an Admin. +- **RemediationShellDeviceManaged** TRUE if the device is WSUS managed or Windows Updated disabled. +- **RemediationShellDeviceNewOS** TRUE if the device has a recently installed OS. +- **RemediationShellDeviceSccm** TRUE if the device is managed by SCCM (Microsoft System Center Configuration Manager). +- **RemediationShellDeviceZeroExhaust** TRUE if the device has opted out of Windows Updates completely. +- **RemediationTargetMachine** Indicates whether the device is a target of the specified fix. +- **RemediationTaskHealthAutochkProxy** True/False based on the health of the AutochkProxy task. +- **RemediationTaskHealthChkdskProactiveScan** True/False based on the health of the Check Disk task. +- **RemediationTaskHealthDiskCleanup_SilentCleanup** True/False based on the health of the Disk Cleanup task. +- **RemediationTaskHealthMaintenance_WinSAT** True/False based on the health of the Health Maintenance task. +- **RemediationTaskHealthServicing_ComponentCleanupTask** True/False based on the health of the Health Servicing Component task. +- **RemediationTaskHealthUSO_ScheduleScanTask** True/False based on the health of the USO (Update Session Orchestrator) Schedule task. +- **RemediationTaskHealthWindowsUpdate_ScheduledStartTask** True/False based on the health of the Windows Update Scheduled Start task. +- **RemediationTaskHealthWindowsUpdate_SihbootTask** True/False based on the health of the Sihboot task. +- **RemediationUHServiceBitsServiceEnabled** Indicates whether BITS service is enabled. +- **RemediationUHServiceDeviceInstallEnabled** Indicates whether Device Install service is enabled. +- **RemediationUHServiceDoSvcServiceEnabled** Indicates whether DO service is enabled. +- **RemediationUHServiceDsmsvcEnabled** Indicates whether DSMSVC service is enabled. +- **RemediationUHServiceLicensemanagerEnabled** Indicates whether License Manager service is enabled. +- **RemediationUHServiceMpssvcEnabled** Indicates whether MPSSVC service is enabled. +- **RemediationUHServiceTokenBrokerEnabled** Indicates whether Token Broker service is enabled. +- **RemediationUHServiceTrustedInstallerServiceEnabled** Indicates whether Trusted Installer service is enabled. +- **RemediationUHServiceUsoServiceEnabled** Indicates whether USO (Update Session Orchestrator) service is enabled. +- **RemediationUHServicew32timeServiceEnabled** Indicates whether W32 Time service is enabled. +- **RemediationUHServiceWecsvcEnabled** Indicates whether WECSVC service is enabled. +- **RemediationUHServiceWinmgmtEnabled** Indicates whether WMI service is enabled. +- **RemediationUHServiceWpnServiceEnabled** Indicates whether WPN service is enabled. +- **RemediationUHServiceWuauservServiceEnabled** Indicates whether WUAUSERV service is enabled. +- **Result** This is the HRESULT for Detection or Perform Action phases of the plugin. +- **RunAppraiserFailed** Indicates RunAppraiser failed to run correctly. +- **RunTask** TRUE if SIH task should be run by the plug-in. +- **TimeServiceNTPServer** The URL for the NTP time server used by device. +- **TimeServiceStartType** The startup type for the NTP time service. +- **TimeServiceSyncDomainJoined** True if device domain joined and hence uses DC for clock. +- **TimeServiceSyncType** Type of sync behavior for Date & Time service on device. + + +### Microsoft.Windows.Remediation.ChangePowerProfileDetection + +Indicates whether the remediation system can put in a request to defer a system-initiated sleep to enable installation of security or quality updates. + +The following fields are available: + +- **ActionName** A descriptive name for the plugin action +- **CurrentPowerPlanGUID** The ID of the current power plan configured on the device +- **CV** Correlation vector +- **GlobalEventCounter** Counter that indicates the ordering of events on the device +- **PackageVersion** Current package version of remediation service +- **RemediationBatteryPowerBatteryLevel** Integer between 0 and 100 indicating % battery power remaining (if not on battery, expect 0) +- **RemediationFUInProcess** Result that shows whether the device is currently installing a feature update +- **RemediationFURebootRequred** Indicates that a feature update reboot required was detected so the plugin will exit. +- **RemediationScanInProcess** Result that shows whether the device is currently scanning for updates +- **RemediationTargetMachine** Result that shows whether this device is a candidate for remediation(s) that will fix update issues +- **SetupMutexAvailable** Result that shows whether setup mutex is available or not +- **SysPowerStatusAC** Result that shows whether system is on AC power or not + + +### Microsoft.Windows.Remediation.Completed + +This event enables completion tracking of a process that remediates issues preventing security and quality updates. + +The following fields are available: + +- **ActionName** Name of the action to be completed by the plug-in. +- **AppraiserTaskCreationFailed** TRUE if the appraiser task creation failed to complete successfully. +- **AppraiserTaskDeleteFailed** TRUE if deletion of appraiser task failed to complete successfully. +- **AppraiserTaskExistFailed** TRUE if detection of the appraiser task failed to complete successfully. +- **AppraiserTaskLoadXmlFailed** TRUE if the Appraiser XML Loader failed to complete successfully. +- **AppraiserTaskMissing** TRUE if the Appraiser task is missing. +- **AppraiserTaskTimeTriggerUpdateFailedId** TRUE if the Appraiser Task Time Trigger failed to update successfully. +- **AppraiserTaskValidateTaskXmlFailed** TRUE if the Appraiser Task XML failed to complete successfully. +- **branchReadinessLevel** Branch readiness level policy. +- **cloudControlState** Value indicating whether the shell is enabled on the cloud control settings. +- **CrossedDiskSpaceThreshold** Indicates if cleanup resulted in hard drive usage threshold required for feature update to be exceeded. +- **CV** The Correlation Vector. +- **DateTimeDifference** The difference between the local and reference clocks. +- **DaysSinceOsInstallation** The number of days since the installation of the Operating System. +- **DiskMbCleaned** The amount of space cleaned on the hard disk, measured in Megabytes. +- **DiskMbFreeAfterCleanup** The amount of free hard disk space after cleanup, measured in Megabytes. +- **DiskMbFreeBeforeCleanup** The amount of free hard disk space before cleanup, measured in Megabytes. +- **ForcedAppraiserTaskTriggered** TRUE if Appraiser task ran from the plug-in. +- **GlobalEventCounter** Client-side counter that indicates ordering of events sent by the active user. +- **HandlerCleanupFreeDiskInMegabytes** The amount of hard disk space cleaned by the storage sense handlers, measured in Megabytes. +- **hasRolledBack** Indicates whether the client machine has rolled back. +- **hasUninstalled** Indicates whether the client machine has uninstalled a later version of the OS. +- **hResult** The result of the event execution. +- **HResult** The result of the event execution. +- **installDate** The value of installDate registry key. Indicates the install date. +- **isNetworkMetered** Indicates whether the client machine has uninstalled a later version of the OS. +- **LatestState** The final state of the plug-in component. +- **MicrosoftCompatibilityAppraiser** The name of the component targeted by the Appraiser plug-in. +- **PackageVersion** The package version for the current Remediation. +- **PageFileCount** The number of Windows Page files. +- **PageFileCurrentSize** The size of the Windows Page file, measured in Megabytes. +- **PageFileLocation** The storage location (directory path) of the Windows Page file. +- **PageFilePeakSize** The maximum amount of hard disk space used by the Windows Page file, measured in Megabytes. +- **PluginName** The name of the plug-in specified for each generic plug-in event. +- **RanCleanup** TRUE if the plug-in ran disk cleanup. +- **RemediationBatteryPowerBatteryLevel** Indicates the battery level at which it is acceptable to continue operation. +- **RemediationBatteryPowerExitDueToLowBattery** True when we exit due to low battery power. +- **RemediationBatteryPowerOnBattery** True if we allow execution on battery. +- **RemediationConfigurationTroubleshooterExecuted** True/False based on whether the Remediation Configuration Troubleshooter executed successfully. +- **RemediationConfigurationTroubleshooterIpconfigFix** TRUE if IPConfig Fix completed successfully. +- **RemediationConfigurationTroubleshooterNetShFix** TRUE if network card cache reset ran successfully. +- **RemediationDiskCleanSizeBtWindowsFolderInMegabytes** The size of the Windows BT folder (used to store Windows upgrade files), measured in Megabytes. +- **RemediationDiskCleanupBTFolderEsdSizeInMB** The size of the Windows BT folder (used to store Windows upgrade files) ESD (Electronic Software Delivery), measured in Megabytes. +- **RemediationDiskCleanupGetCurrentEsdSizeInMB** The size of any existing ESD (Electronic Software Delivery) folder, measured in Megabytes. +- **RemediationDiskCleanupSearchFileSizeInMegabytes** The size of the Cleanup Search index file, measured in Megabytes. +- **RemediationDiskCleanupUpdateAssistantSizeInMB** The size of the Update Assistant folder, measured in Megabytes. +- **RemediationDoorstopChangeSucceeded** TRUE if Doorstop registry key was successfully modified. +- **RemediationDoorstopExists** TRUE if there is a One Settings Doorstop value. +- **RemediationDoorstopRegkeyError** TRUE if an error occurred accessing the Doorstop registry key. +- **RemediationDRFKeyDeleteSucceeded** TRUE if the RecoveredFrom (Doorstop) registry key was successfully deleted. +- **RemediationDUABuildNumber** The build number of the DUA. +- **RemediationDUAKeyDeleteSucceeded** TRUE if the UninstallActive registry key was successfully deleted. +- **RemediationDuplicateTokenSucceeded** TRUE if the user token was successfully duplicated. +- **remediationExecution** Remediation shell is in "applying remediation" state. +- **RemediationHibernationMigrated** TRUE if hibernation was migrated. +- **RemediationHibernationMigrationSucceeded** TRUE if hibernation migration succeeded. +- **RemediationImpersonateUserSucceeded** TRUE if the user was successfully impersonated. +- **RemediationNoisyHammerTaskKickOffIsSuccess** TRUE if the NoisyHammer task started successfully. +- **RemediationQueryTokenSucceeded** TRUE if the user token was successfully queried. +- **RemediationRanHibernation** TRUE if the system entered Hibernation. +- **RemediationRevertToSystemSucceeded** TRUE if reversion to the system context succeeded. +- **RemediationShellHasUpgraded** TRUE if the device upgraded. +- **RemediationShellMinimumTimeBetweenShellRuns** Indicates the time between shell runs exceeded the minimum required to execute plugins. +- **RemediationShellRunFromService** TRUE if the shell driver was run from the service. +- **RemediationShellSessionIdentifier** Unique identifier tracking a shell session. +- **RemediationShellSessionTimeInSeconds** Indicates the time the shell session took in seconds. +- **RemediationShellTaskDeleted** Indicates that the shell task has been deleted so no additional sediment pack runs occur for this installation. +- **RemediationUpdateServiceHealthRemediationResult** The result of the Update Service Health plug-in. +- **RemediationUpdateTaskHealthRemediationResult** The result of the Update Task Health plug-in. +- **RemediationUpdateTaskHealthTaskList** A list of tasks fixed by the Update Task Health plug-in. +- **RemediationWindowsLogSpaceFound** The size of the Windows log files found, measured in Megabytes. +- **RemediationWindowsLogSpaceFreed** The amount of disk space freed by deleting the Windows log files, measured in Megabytes. +- **RemediationWindowsSecondaryDriveFreeSpace** The amount of free space on the secondary drive, measured in Megabytes. +- **RemediationWindowsSecondaryDriveLetter** The letter designation of the first secondary drive with a total capacity of 10GB or more. +- **RemediationWindowsSecondaryDriveTotalSpace** The total storage capacity of the secondary drive, measured in Megabytes. +- **RemediationWindowsTotalSystemDiskSize** The total storage capacity of the System Disk Drive, measured in Megabytes. +- **Result** The HRESULT for Detection or Perform Action phases of the plug-in. +- **RunResult** The HRESULT for Detection or Perform Action phases of the plug-in. +- **ServiceHealthPlugin** The nae of the Service Health plug-in. +- **StartComponentCleanupTask** TRUE if the Component Cleanup task started successfully. +- **systemDriveFreeDiskSpace** Indicates the free disk space on system drive in MBs. +- **systemUptimeInHours** Indicates the amount of time the system in hours has been on since the last boot. +- **TotalSizeofOrphanedInstallerFilesInMegabytes** The size of any orphaned Windows Installer files, measured in Megabytes. +- **TotalSizeofStoreCacheAfterCleanupInMegabytes** The size of the Windows Store cache after cleanup, measured in Megabytes. +- **TotalSizeofStoreCacheBeforeCleanupInMegabytes** The size of the Windows Store cache (prior to cleanup), measured in Megabytes. +- **uninstallActive** TRUE if previous uninstall has occurred for current OS +- **usoScanDaysSinceLastScan** The number of days since the last USO (Update Session Orchestrator) scan. +- **usoScanInProgress** TRUE if a USO (Update Session Orchestrator) scan is in progress, to prevent multiple simultaneous scans. +- **usoScanIsAllowAutoUpdateKeyPresent** TRUE if the AllowAutoUpdate registry key is set. +- **usoScanIsAllowAutoUpdateProviderSetKeyPresent** TRUE if AllowAutoUpdateProviderSet registry key is set. +- **usoScanIsAuOptionsPresent** TRUE if Auto Update Options registry key is set. +- **usoScanIsFeatureUpdateInProgress** TRUE if a USO (Update Session Orchestrator) scan is in progress, to prevent multiple simultaneous scans. +- **usoScanIsNetworkMetered** TRUE if the device is currently connected to a metered network. +- **usoScanIsNoAutoUpdateKeyPresent** TRUE if no Auto Update registry key is set/present. +- **usoScanIsUserLoggedOn** TRUE if the user is logged on. +- **usoScanPastThreshold** TRUE if the most recent USO (Update Session Orchestrator) scan is past the threshold (late). +- **usoScanType** The type of USO (Update Session Orchestrator) scan: "Interactive" or "Background". +- **windows10UpgraderBlockWuUpdates** Event to report the value of Windows 10 Upgrader BlockWuUpdates Key. +- **windowsEditionId** Event to report the value of Windows Edition ID. +- **WindowsHyberFilSysSizeInMegabytes** The size of the Windows Hibernation file, measured in Megabytes. +- **WindowsInstallerFolderSizeInMegabytes** The size of the Windows Installer folder, measured in Megabytes. +- **WindowsOldFolderSizeInMegabytes** The size of the Windows.OLD folder, measured in Megabytes. +- **WindowsOldSpaceCleanedInMB** The amount of disk space freed by removing the Windows.OLD folder, measured in Megabytes. +- **WindowsPageFileSysSizeInMegabytes** The size of the Windows Page file, measured in Megabytes. +- **WindowsSoftwareDistributionFolderSizeInMegabytes** The size of the SoftwareDistribution folder, measured in Megabytes. +- **WindowsSwapFileSysSizeInMegabytes** The size of the Windows Swap file, measured in Megabytes. +- **WindowsSxsFolderSizeInMegabytes** The size of the WinSxS (Windows Side-by-Side) folder, measured in Megabytes. +- **WindowsSxsTempFolderSizeInMegabytes** The size of the WinSxS (Windows Side-by-Side) Temp folder, measured in Megabytes. +- **windowsUpgradeRecoveredFromRs4** Event to report the value of the Windows Upgrade Recovered key. + + +### Microsoft.Windows.Remediation.RemediationShellMainExeEventId + +Enables tracking of completion of process that remediates issues preventing security and quality updates. + +The following fields are available: + +- **CV** Client side counter which indicates ordering of events sent by the remediation system. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by the remediation system. +- **PackageVersion** Current package version of Remediation. +- **RemediationShellCanAcquireSedimentMutex** True if the remediation was able to acquire the sediment mutex. False if it is already running. +- **RemediationShellExecuteShellResult** Indicates if the remediation system completed without errors. +- **RemediationShellFoundDriverDll** Result whether the remediation system found its component files to run properly. +- **RemediationShellLoadedShellDriver** Result whether the remediation system loaded its component files to run properly. +- **RemediationShellLoadedShellFunction** Result whether the remediation system loaded the functions from its component files to run properly. + + +### Microsoft.Windows.Remediation.Started + +This event reports whether a plug-in started, to help ensure Windows is up to date. + +The following fields are available: + +- **CV** Correlation vector. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. + + +### Microsoft.Windows.SedimentLauncher.Applicable + +Indicates whether a given plugin is applicable. + +The following fields are available: + +- **CV** Correlation vector. +- **DetectedCondition** Boolean true if detect condition is true and perform action will be run. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **IsSelfUpdateEnabledInOneSettings** True if self update enabled in Settings. +- **IsSelfUpdateNeeded** True if self update needed by device. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. + + +### Microsoft.Windows.SedimentLauncher.Completed + +Indicates whether a given plugin has completed its work. + +The following fields are available: + +- **CV** Correlation vector. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. +- **SedLauncherExecutionResult** HRESULT for one execution of the Sediment Launcher. + + +### Microsoft.Windows.SedimentLauncher.Started + +This event indicates that a given plug-in has started. + +The following fields are available: + +- **CV** Correlation vector. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. + + +### Microsoft.Windows.SedimentService.Applicable + +This event indicates whether a given plug-in is applicable. + +The following fields are available: + +- **CV** Correlation vector. +- **DetectedCondition** Determine whether action needs to run based on device properties. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. + + +### Microsoft.Windows.SedimentService.Completed + +This event indicates whether a given plug-in has completed its work. + +The following fields are available: + +- **CV** Correlation vector. +- **FailedReasons** List of reasons when the plugin action failed. +- **GlobalEventCounter** Client side counter which indicates ordering of events sent by this user. +- **PackageVersion** Current package version of Remediation. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for detection or perform action phases of the plugin. +- **SedimentServiceCheckTaskFunctional** True/False if scheduled task check succeeded. +- **SedimentServiceCurrentBytes** Number of current private bytes of memory consumed by sedsvc.exe. +- **SedimentServiceKillService** True/False if service is marked for kill (Shell.KillService). +- **SedimentServiceMaximumBytes** Maximum bytes allowed for the service. +- **SedimentServiceRetrievedKillService** True/False if result of One Settings check for kill succeeded - we only send back one of these indicators (not for each call). +- **SedimentServiceStopping** True/False indicating whether the service is stopping. +- **SedimentServiceTaskFunctional** True/False if scheduled task is functional. If task is not functional this indicates plugins will be run. +- **SedimentServiceTotalIterations** Number of 5 second iterations service will wait before running again. + + +### Microsoft.Windows.SedimentService.Started + +This event indicates a specified plug-in has started. This information helps ensure Windows is up to date. + +The following fields are available: + +- **CV** The Correlation Vector. +- **GlobalEventCounter** The client-side counter that indicates ordering of events. +- **PackageVersion** The version number of the current remediation package. +- **PluginName** Name of the plugin specified for each generic plugin event. +- **Result** This is the HRESULT for Detection or Perform Action phases of the plugin. + + +### Microsoft.Xbox.XamTelemetry.AppActivationError + +This event indicates whether the system detected an activation error in the app. + + + +### Microsoft.Xbox.XamTelemetry.AppActivity + +This event is triggered whenever the current app state is changed by: launch, switch, terminate, snap, etc. + +The following fields are available: + +- **AppActionId** The ID of the application action. +- **AppCurrentVisibilityState** The ID of the current application visibility state. +- **AppId** The Xbox LIVE Title ID of the app. +- **AppPackageFullName** The full name of the application package. +- **AppPreviousVisibilityState** The ID of the previous application visibility state. +- **AppSessionId** The application session ID. +- **AppType** The type ID of the application (AppType_NotKnown, AppType_Era, AppType_Sra, AppType_Uwa). +- **BCACode** The BCA (Burst Cutting Area) mark code of the optical disc used to launch the application. +- **DurationMs** The amount of time (in milliseconds) since the last application state transition. +- **IsTrialLicense** This boolean value is TRUE if the application is on a trial license. +- **LicenseType** The type of licensed used to authorize the app (0 - Unknown, 1 - User, 2 - Subscription, 3 - Offline, 4 - Disc). +- **LicenseXuid** If the license type is 1 (User), this field contains the XUID (Xbox User ID) of the registered owner of the license. +- **ProductGuid** The Xbox product GUID (Globally-Unique ID) of the application. +- **UserId** The XUID (Xbox User ID) of the current user. + + ## Privacy consent logging events ### Microsoft.Windows.Shell.PrivacyConsentLogging.PrivacyConsentCompleted @@ -3467,6 +4210,54 @@ The following fields are available: ## Sediment events +### Microsoft.Windows.Sediment.Info.DetailedState + +This event is sent when detailed state information is needed from an update trial run. + +The following fields are available: + +- **Data** Data relevant to the state, such as what percent of disk space the directory takes up. +- **Id** Identifies the trial being run, such as a disk related trial. +- **ReleaseVer** The version of the component. +- **State** The state of the reporting data from the trial, such as the top-level directory analysis. +- **Time** The time the event was fired. + + +### Microsoft.Windows.Sediment.Info.Error + +This event indicates an error in the updater payload. This information assists in keeping Windows up to date. + + + +### Microsoft.Windows.Sediment.OSRSS.CheckingOneSettings + +This event indicates the parameters that the Operating System Remediation System Service (OSRSS) uses for a secure ping to Microsoft to help ensure Windows is up to date. + +The following fields are available: + +- **CustomVer** The registry value for targeting. +- **IsMetered** TRUE if the machine is on a metered network. +- **LastVer** The version of the last successful run. +- **ServiceVersionMajor** The Major version information of the component. +- **ServiceVersionMinor** The Minor version information of the component. +- **Time** The system time at which the event occurred. + + +### Microsoft.Windows.Sediment.OSRSS.Error + +This event indicates an error occurred in the Operating System Remediation System Service (OSRSS). The information provided helps ensure future upgrade/update attempts are more successful. + +The following fields are available: + +- **FailureType** The type of error encountered. +- **FileName** The code file in which the error occurred. +- **HResult** The failure error code. +- **LineNumber** The line number in the code file at which the error occurred. +- **ServiceVersionMajor** The Major version information of the component. +- **ServiceVersionMinor** The Minor version information of the component. +- **Time** The system time at which the event occurred. + + ### Microsoft.Windows.Sediment.OSRSS.UrlState This event indicates the state the Operating System Remediation System Service (OSRSS) is in while attempting a download from the URL. @@ -3483,6 +4274,32 @@ The following fields are available: ## Setup events +### SetupPlatformTel.SetupPlatformTelActivityEvent + +This event sends basic metadata about the SetupPlatform update installation process, to help keep Windows up to date. + +The following fields are available: + +- **FieldName** Retrieves the event name/data point. Examples: InstallStartTime, InstallEndtime, OverallResult etc. +- **GroupName** Retrieves the groupname the event belongs to. Example: Install Information, DU Information, Disk Space Information etc. +- **Value** Value associated with the corresponding event name. For example, time-related events will include the system time + + +### SetupPlatformTel.SetupPlatformTelActivityStarted + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + +The following fields are available: + +- **Name** The name of the dynamic update type. Example: GDR driver + + +### SetupPlatformTel.SetupPlatformTelActivityStopped + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + + + ### SetupPlatformTel.SetupPlatformTelEvent This service retrieves events generated by SetupPlatform, the engine that drives the various deployment scenarios. @@ -3961,14 +4778,31 @@ The following fields are available: - **SignatureAlgorithm** Hash algorithm for the metadata signature - **SLSPrograms** A test program a machine may be opted in. Examples include "Canary" and "Insider Fast". - **StatusCode** Result code of the event (success, cancellation, failure code HResult) -- **TimestampTokenCertThumbprint** The thumbprint of the encoded timestamp token. +- **TimestampTokenCertThumbprint** Thumbprint of the encoded timestamp token. - **TimestampTokenId** Created time encoded in the timestamp blob. This will be zeroed if the token is itself malformed and decoding failed. - **UpdateId** Identifier associated with the specific piece of content -- **ValidityWindowInDays** The validity window that's in effect when verifying the timestamp. +- **ValidityWindowInDays** Validity window in effect when verifying the timestamp ## Update events +### Update360Telemetry.Revert + +This event sends data relating to the Revert phase of updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the Revert phase. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **RebootRequired** Indicates reboot is required. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + ### Update360Telemetry.UpdateAgentCommit This event collects information regarding the commit phase of the new Unified Update Platform (UUP) update scenario, which is leveraged by both Mobile and Desktop. @@ -4104,6 +4938,52 @@ The following fields are available: - **UpdateId** Unique ID for each update. +### Update360Telemetry.UpdateAgentMitigationResult + +This event sends data indicating the result of each update agent mitigation. + +The following fields are available: + +- **Applicable** Indicates whether the mitigation is applicable for the current update. +- **CommandCount** The number of command operations in the mitigation entry. +- **CustomCount** The number of custom operations in the mitigation entry. +- **FileCount** The number of file operations in the mitigation entry. +- **FlightId** Unique identifier for each flight. +- **Index** The mitigation index of this particular mitigation. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **Name** The friendly name of the mitigation. +- **ObjectId** Unique value for each Update Agent mode. +- **OperationIndex** The mitigation operation index (in the event of a failure). +- **OperationName** The friendly name of the mitigation operation (in the event of failure). +- **RegistryCount** The number of registry operations in the mitigation entry. +- **RelatedCV** The correlation vector value generated from the latest USO scan. +- **Result** The HResult of this operation. +- **ScenarioId** The update agent scenario ID. +- **SessionId** Unique value for each update attempt. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). +- **UpdateId** Unique ID for each Update. + + +### Update360Telemetry.UpdateAgentMitigationSummary + +This event sends a summary of all the update agent mitigations available for an this update. + +The following fields are available: + +- **Applicable** The count of mitigations that were applicable to the system and scenario. +- **Failed** The count of mitigations that failed. +- **FlightId** Unique identifier for each flight. +- **MitigationScenario** The update scenario in which the mitigations were attempted. +- **ObjectId** The unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest USO scan. +- **Result** The HResult of this operation. +- **ScenarioId** The update agent scenario ID. +- **SessionId** Unique value for each update attempt. +- **TimeDiff** The amount of time spent performing all mitigations (in 100-nanosecond increments). +- **Total** Total number of mitigations that were available. +- **UpdateId** Unique ID for each update. + + ### Update360Telemetry.UpdateAgentModeStart This event sends data for the start of each mode during the process of updating Windows via the new Unified Update Platform (UUP) scenario. Applicable to both PCs and Mobile. @@ -4120,6 +5000,24 @@ The following fields are available: - **Version** Version of update +### Update360Telemetry.UpdateAgentOneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **Count** The count of applicable OneSettings for the device. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **Parameters** The set of name value pair parameters sent to OneSettings to determine if there are any applicable OneSettings. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. +- **Values** The values sent back to the device, if applicable. + + ### Update360Telemetry.UpdateAgentPostRebootResult This event collects information for both Mobile and Desktop regarding the post reboot phase of the new Unified Update Platform (UUP) update scenario. @@ -4136,6 +5034,12 @@ The following fields are available: - **UpdateId** Unique ID for each update. +### Update360Telemetry.UpdateAgentReboot + +This event sends information indicating that a request has been sent to suspend an update. + + + ### Update360Telemetry.UpdateAgentSetupBoxLaunch The UpdateAgent_SetupBoxLaunch event sends data for the launching of the setup box when updating Windows via the new Unified Update Platform (UUP) scenario. This event is only applicable to PCs. @@ -4185,7 +5089,7 @@ The following fields are available: - **key19** UI interaction data - **key2** Interaction data for the UI - **key20** UI interaction data -- **key21** Interaction data for the UI +- **key21** UI interaction data - **key22** UI interaction data - **key23** UI interaction data - **key24** UI interaction data @@ -4197,10 +5101,10 @@ The following fields are available: - **key3** Interaction data for the UI - **key30** UI interaction data - **key4** Interaction data for the UI -- **key5** UI interaction data -- **key6** UI interaction data -- **key7** Interaction data for the UI -- **key8** Interaction data for the UI +- **key5** UI interaction type +- **key6** Current package version of UNP +- **key7** UI interaction type +- **key8** UI interaction data - **key9** UI interaction data - **PackageVersion** Current package version of the update notification. - **schema** UI interaction type. @@ -4314,6 +5218,7 @@ The following fields are available: - **DownloadRequestAttributes** The attributes we send to DCAT. - **ResultCode** The result returned from the initialization of Facilitator with the URL/attributes. - **Scenario** Dynamic Update scenario (Image DU, or Setup DU). +- **Url** The Delivery Catalog (DCAT) URL we send the request to. - **Version** Version of Facilitator. @@ -4376,9 +5281,9 @@ The following fields are available: - **Setup360Extended** Detailed information about the phase or action when the potential failure occurred. - **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. - **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. -- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. - **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). -- **State** Exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **State** Exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled - **TestId** ID that uniquely identifies a group of events. - **WuId** Windows Update client ID. @@ -4524,6 +5429,67 @@ The following fields are available: - **TargetBuild** Build of the target OS. +### Setup360Telemetry.Setup360MitigationResult + +This event sends data indicating the result of each setup mitigation. + +The following fields are available: + +- **Applicable** TRUE if the mitigation is applicable for the current update. +- **ClientId** In the Windows Update scenario, this is the client ID passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **CommandCount** The number of command operations in the mitigation entry. +- **CustomCount** The number of custom operations in the mitigation entry. +- **FileCount** The number of file operations in the mitigation entry. +- **FlightData** The unique identifier for each flight (test release). +- **Index** The mitigation index of this particular mitigation. +- **InstanceId** The GUID (Globally Unique ID) that identifies each instance of SetupHost.EXE. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **Name** The friendly (descriptive) name of the mitigation. +- **OperationIndex** The mitigation operation index (in the event of a failure). +- **OperationName** The friendly (descriptive) name of the mitigation operation (in the event of failure). +- **RegistryCount** The number of registry operations in the mitigation entry. +- **ReportId** In the Windows Update scenario, the Update ID that is passed to Setup. In media setup, this is the GUID for the INSTALL.WIM. +- **Result** HResult of this operation. +- **ScenarioId** Setup360 flow type. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). + + +### Setup360Telemetry.Setup360MitigationSummary + +This event sends a summary of all the setup mitigations available for this update. + +The following fields are available: + +- **Applicable** The count of mitigations that were applicable to the system and scenario. +- **ClientId** The Windows Update client ID passed to Setup. +- **Failed** The count of mitigations that failed. +- **FlightData** The unique identifier for each flight (test release). +- **InstanceId** The GUID (Globally Unique ID) that identifies each instance of SetupHost.EXE. +- **MitigationScenario** The update scenario in which the mitigations were attempted. +- **ReportId** In the Windows Update scenario, the Update ID that is passed to Setup. In media setup, this is the GUID for the INSTALL.WIM. +- **Result** HResult of this operation. +- **ScenarioId** Setup360 flow type. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). +- **Total** The total number of mitigations that were available. + + +### Setup360Telemetry.Setup360OneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **ClientId** The Windows Update client ID passed to Setup. +- **Count** The count of applicable OneSettings for the device. +- **FlightData** The ID for the flight (test instance version). +- **InstanceId** The GUID (Globally-Unique ID) that identifies each instance of setuphost.exe. +- **Parameters** The set of name value pair parameters sent to OneSettings to determine if there are any applicable OneSettings. +- **ReportId** The Update ID passed to Setup. +- **Result** The HResult of the event error. +- **ScenarioId** The update scenario ID. +- **Values** Values sent back to the device, if applicable. + + ### Setup360Telemetry.UnexpectedEvent This event sends data indicating that the device has invoked the unexpected event phase of the upgrade, to help keep Windows up to date. @@ -4538,7 +5504,7 @@ The following fields are available: - **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. - **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. - **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. -- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used to diagnose errors. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used used to diagnose errors. - **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. - **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). - **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. @@ -4570,6 +5536,26 @@ The following fields are available: - **versionString** Version of the WaaSMedic engine. +## Windows Error Reporting events + +### Microsoft.Windows.WERVertical.OSCrash + +This event sends binary data from the collected dump file wheneveer a bug check occurs, to help keep Windows up to date. The is the OneCore version of this event. + +The following fields are available: + +- **BootId** Uint32 identifying the boot number for this device. +- **BugCheckCode** Uint64 "bugcheck code" that identifies a proximate cause of the bug check. +- **BugCheckParameter1** Uint64 parameter providing additional information. +- **BugCheckParameter2** Uint64 parameter providing additional information. +- **BugCheckParameter3** Uint64 parameter providing additional information. +- **BugCheckParameter4** Uint64 parameter providing additional information. +- **DumpFileAttributes** Codes that identify the type of data contained in the dump file +- **DumpFileSize** Size of the dump file +- **IsValidDumpFile** True if the dump file is valid for the debugger, false otherwise +- **ReportId** WER Report Id associated with this bug check (used for finding the corresponding report archive in Watson). + + ## Windows Error Reporting MTT events ### Microsoft.Windows.WER.MTT.Denominator @@ -4982,7 +5968,7 @@ The following fields are available: - **current** Result of currency check. - **dismOperationSucceeded** Dism uninstall operation status. -- **hResult** Failure error code. +- **hResult** Failure Error code. - **oSVersion** Build number of the device. - **paused** Indicates whether the device is paused. - **rebootRequestSucceeded** Reboot Configuration Service Provider (CSP) call success status. @@ -5023,7 +6009,7 @@ The following fields are available: - **current** Result of currency check. - **dismOperationSucceeded** Dism uninstall operation status. -- **hResult** Failure error code. +- **hResult** Failure Error code. - **oSVersion** Build number of the device. - **paused** Indicates whether the device is paused. - **rebootRequestSucceeded** Reboot Configuration Service Provider (CSP) call success status. @@ -5058,45 +6044,128 @@ This event sends basic telemetry on the success of the rollback of the Quality/L ## Windows Update Delivery Optimization events -### Microsoft.OSG.DU.DeliveryOptClient.DownloadStarted +### Microsoft.OSG.DU.DeliveryOptClient.DownloadCanceled -This event sends data describing the start of a new download to enable Delivery Optimization. It's used to understand and address problems regarding downloads. +This event describes when a download was canceled with Delivery Optimization. It's used to understand and address problems regarding downloads. The following fields are available: -- **background** Indicates whether the download is happening in the background. -- **bytesRequested** Number of bytes requested for the download. +- **background** Is the download being done in the background? +- **bytesFromCacheServer** Bytes received from a cache host. +- **bytesFromCDN** The number of bytes received from a CDN source. +- **bytesFromGroupPeers** The number of bytes received from a peer in the same group. +- **bytesFromIntPeers** The number of bytes received from peers not in the same LAN or in the same group. +- **bytesFromLocalCache** Bytes copied over from local (on disk) cache. +- **bytesFromPeers** The number of bytes received from a peer in the same LAN. - **callerName** Name of the API caller. -- **cdnUrl** The URL of the source CDN -- **costFlags** A set of flags representing network cost. -- **deviceProfile** Identifies the usage or form factor (such as Desktop, Xbox, or VM). -- **diceRoll** Random number used for determining if a client will use peering. -- **doClientVersion** The version of the Delivery Optimization client. -- **doErrorCode** The Delivery Optimization error code that was returned. -- **downloadMode** The download mode used for this file download session (CdnOnly = 0, Lan = 1, Group = 2, Internet = 3, Simple = 99, Bypass = 100). -- **downloadModeSrc** Source of the DownloadMode setting (KvsProvider = 0, GeoProvider = 1, GeoVerProvider = 2, CpProvider = 3, DiscoveryProvider = 4, RegistryProvider = 5, GroupPolicyProvider = 6, MdmProvider = 7, SettingsProvider = 8, InvalidProviderType = 9). +- **cdnErrorCodes** A list of CDN connection errors since the last FailureCDNCommunication event. +- **cdnErrorCounts** The number of times each error in cdnErrorCodes was encountered. +- **dataSourcesTotal** Bytes received per source type, accumulated for the whole session. - **errorCode** The error code that was returned. -- **experimentId** ID used to correlate client/services calls that are part of the same test during A/B testing. +- **experimentId** When running a test, this is used to correlate events that are part of the same test. - **fileID** The ID of the file being downloaded. -- **filePath** The path to where the downloaded file will be written. -- **fileSize** Total file size of the file that was downloaded. -- **fileSizeCaller** Value for total file size provided by our caller. -- **groupID** ID for the group. -- **isEncrypted** Indicates whether the download is encrypted. -- **isVpn** Indicates whether the device is connected to a Virtual Private Network. -- **jobID** The ID of the Windows Update job. -- **minDiskSizeGB** The minimum disk size (in GB) policy set for the device to allow peering with delivery optimization. -- **minDiskSizePolicyEnforced** Indicates whether there is an enforced minimum disk size requirement for peering. -- **minFileSizePolicy** The minimum content file size policy to allow the download using peering with delivery optimization. -- **peerID** The ID for this delivery optimization client. -- **predefinedCallerName** Name of the API caller. +- **gCurMemoryStreamBytes** Current usage for memory streaming. +- **gMaxMemoryStreamBytes** Maximum usage for memory streaming. +- **isVpn** Indicates whether the device is connected to a VPN (Virtual Private Network). +- **jobID** Identifier for the Windows Update job. +- **predefinedCallerName** The name of the API Caller. +- **reasonCode** Reason the action or event occurred. - **scenarioID** The ID of the scenario. -- **sessionID** The ID for the file download session. -- **setConfigs** A JSON representation of the configurations that have been set, and their sources. +- **sessionID** The ID of the file download session. - **updateID** The ID of the update being downloaded. -- **usedMemoryStream** Indicates whether the download used memory streaming. +- **usedMemoryStream** TRUE if the download is using memory streaming for App downloads. +### Microsoft.OSG.DU.DeliveryOptClient.DownloadCompleted + +This event describes when a download has completed with Delivery Optimization. It's used to understand and address problems regarding downloads. + +The following fields are available: + +- **background** Is the download a background download? +- **bytesFromCacheServer** Bytes received from a cache host. +- **bytesFromCDN** The number of bytes received from a CDN source. +- **bytesFromGroupPeers** The number of bytes received from a peer in the same domain group. +- **bytesFromIntPeers** The number of bytes received from peers not in the same LAN or in the same domain group. +- **bytesFromLocalCache** Bytes copied over from local (on disk) cache. +- **bytesFromPeers** The number of bytes received from a peer in the same LAN. +- **bytesRequested** The total number of bytes requested for download. +- **cacheServerConnectionCount** Number of connections made to cache hosts. +- **callerName** Name of the API caller. +- **cdnConnectionCount** The total number of connections made to the CDN. +- **cdnErrorCodes** A list of CDN connection errors since the last FailureCDNCommunication event. +- **cdnErrorCounts** The number of times each error in cdnErrorCodes was encountered. +- **cdnIp** The IP address of the source CDN. +- **dataSourcesTotal** Bytes received per source type, accumulated for the whole session. +- **doErrorCode** The Delivery Optimization error code that was returned. +- **downlinkBps** The maximum measured available download bandwidth (in bytes per second). +- **downlinkUsageBps** The download speed (in bytes per second). +- **downloadMode** The download mode used for this file download session. +- **downloadModeSrc** Source of the DownloadMode setting (KvsProvider = 0, GeoProvider = 1, GeoVerProvider = 2, CpProvider = 3, DiscoveryProvider = 4, RegistryProvider = 5, GroupPolicyProvider = 6, MdmProvider = 7, SettingsProvider = 8, InvalidProviderType = 9). +- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. +- **fileID** The ID of the file being downloaded. +- **fileSize** The size of the file being downloaded. +- **gCurMemoryStreamBytes** Current usage for memory streaming. +- **gMaxMemoryStreamBytes** Maximum usage for memory streaming. +- **groupConnectionCount** The total number of connections made to peers in the same group. +- **internetConnectionCount** The total number of connections made to peers not in the same LAN or the same group. +- **isEncrypted** TRUE if the file is encrypted and will be decrypted after download. +- **isVpn** Is the device connected to a Virtual Private Network? +- **jobID** Identifier for the Windows Update job. +- **lanConnectionCount** The total number of connections made to peers in the same LAN. +- **numPeers** The total number of peers used for this download. +- **predefinedCallerName** The name of the API Caller. +- **restrictedUpload** Is the upload restricted? +- **scenarioID** The ID of the scenario. +- **sessionID** The ID of the download session. +- **totalTimeMs** Duration of the download (in seconds). +- **updateID** The ID of the update being downloaded. +- **uplinkBps** The maximum measured available upload bandwidth (in bytes per second). +- **uplinkUsageBps** The upload speed (in bytes per second). +- **usedMemoryStream** TRUE if the download is using memory streaming for App downloads. + + +### Microsoft.OSG.DU.DeliveryOptClient.DownloadPaused + +This event represents a temporary suspension of a download with Delivery Optimization. It's used to understand and address problems regarding downloads. + +The following fields are available: + +- **background** Is the download a background download? +- **callerName** The name of the API caller. +- **errorCode** The error code that was returned. +- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. +- **fileID** The ID of the file being paused. +- **isVpn** Is the device connected to a Virtual Private Network? +- **jobID** Identifier for the Windows Update job. +- **predefinedCallerName** The name of the API Caller object. +- **reasonCode** The reason for pausing the download. +- **scenarioID** The ID of the scenario. +- **sessionID** The ID of the download session. +- **updateID** The ID of the update being paused. + +### Microsoft.OSG.DU.DeliveryOptClient.FailureCdnCommunication + +This event represents a failure to download from a CDN with Delivery Optimization. It's used to understand and address problems regarding downloads. + +The following fields are available: + +- **cdnHeaders** The HTTP headers returned by the CDN. +- **cdnIp** The IP address of the CDN. +- **cdnUrl** The URL of the CDN. +- **clientTelId** A random number used for device sampling. +- **errorCode** The error code that was returned. +- **errorCount** The total number of times this error code was seen since the last FailureCdnCommunication event was encountered. +- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. +- **fileID** The ID of the file being downloaded. +- **httpStatusCode** The HTTP status code returned by the CDN. +- **isHeadRequest** The type of HTTP request that was sent to the CDN. Example: HEAD or GET +- **peerType** The type of peer (LAN, Group, Internet, CDN, Cache Host, etc.). +- **requestOffset** The byte offset within the file in the sent request. +- **requestSize** The size of the range requested from the CDN. +- **responseSize** The size of the range response received from the CDN. +- **sessionID** The ID of the download session. + ## Windows Update events ### Microsoft.Windows.Update.DeviceUpdateAgent.UpdateAgentAnalysisSummary @@ -5443,7 +6512,7 @@ The following fields are available: - **displayNeededReason** List of reasons for needing display. - **eventScenario** Indicates the purpose of the event (scan started, succeeded, failed, etc.). -- **filteredDeferReason** Applicable filtered reasons why reboot was postponed (such as user active, or low battery). +- **filteredDeferReason** Applicable filtered reasons why reboot was postponed (such as user active, or low battery).. - **gameModeReason** Name of the executable that caused the game mode state check to start. - **ignoredReason** List of reasons that were intentionally ignored. - **raisedDeferReason** Indicates all potential reasons for postponing restart (such as user active, or low battery). @@ -5462,9 +6531,9 @@ The following fields are available: - **deferReason** Reason why the device could not check for updates. - **detectionBlockingPolicy** State of update action. -- **detectionBlockreason** Reason for blocking detection +- **detectionBlockreason** If we retry to scan - **detectionRetryMode** Indicates whether we will try to scan again. -- **errorCode** Error info +- **errorCode** State of update action - **eventScenario** End-to-end update session ID, or indicates the purpose of sending this event - whether because the software distribution just started installing content, or whether it was cancelled, succeeded, or failed. - **flightID** The specific ID of the Windows Insider build the device is getting. - **interactive** Indicates whether the session was user initiated. @@ -5472,7 +6541,7 @@ The following fields are available: - **revisionNumber** Update revision number. - **scanTriggerSource** Source of the triggered scan. - **updateId** Update ID. -- **updateScenarioType** Source of the triggered scan +- **updateScenarioType** Update Session type - **wuDeviceid** Device ID @@ -5557,7 +6626,7 @@ This event is sent during update scan, download, or install, and indicates that The following fields are available: -- **configVersion** Escalation config version on device . +- **configVersion** Escalation config version on device. - **downloadElapsedTime** Indicates how long since the download is required on device. - **downloadRiskLevel** At-risk level of download phase. - **installElapsedTime** Indicates how long since the install is required on device. @@ -5585,7 +6654,7 @@ This event indicates that the update is no longer applicable to this device. The following fields are available: -- **EventPublishedTime** Time when this event was generated +- **EventPublishedTime** Time when this event was generated. - **flightID** The specific ID of the Windows Insider build. - **revisionNumber** Update revision number. - **updateId** Unique Windows Update ID. @@ -5633,7 +6702,7 @@ The following fields are available: - **deferReason** Reason for install not completing. - **errorCode** The error code reppresented by a hexadecimal value. - **eventScenario** End-to-end update session ID. -- **flightID** The specific ID of the Windows Insider build the device is getting. +- **flightID** Unique update ID - **flightUpdate** Indicates whether the update is a Windows Insider build. - **ForcedRebootReminderSet** A boolean value that indicates if a forced reboot will happen for updates. - **installCommitfailedtime** The time it took for a reboot to happen but the upgrade failed to progress. @@ -5648,6 +6717,31 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.LowUptimes + +This event is sent if a device is identified as not having sufficient uptime to reliably process updates in order to keep secure. + +The following fields are available: + +- **isLowUptimeMachine** Is the machine considered low uptime or not. +- **lowUptimeMinHours** Current setting for the minimum number of hours needed to not be considered low uptime. +- **lowUptimeQueryDays** Current setting for the number of recent days to check for uptime. +- **uptimeMinutes** Number of minutes of uptime measured. +- **wuDeviceid** Unique device ID for Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.OneshotUpdateDetection + +This event returns data about scans initiated through settings UI, or background scans that are urgent; to help keep Windows up to date. + +The following fields are available: + +- **externalOneshotupdate** The last time a task-triggered scan was completed. +- **interactiveOneshotupdate** The last time an interactive scan was completed. +- **oldlastscanOneshotupdate** The last time a scan completed successfully. +- **wuDeviceid** The Windows Update Device GUID (Globally-Unique ID). + + ### Microsoft.Windows.Update.Orchestrator.PostInstall This event is sent after a Windows update install completes. @@ -5723,6 +6817,18 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.RefreshSettings + +This event sends basic data about the version of upgrade settings applied to the system to help keep Windows up to date. + +The following fields are available: + +- **errorCode** Hex code for the error message, to allow lookup of the specific error. +- **settingsDownloadTime** Timestamp of the last attempt to acquire settings. +- **settingsETag** Version identifier for the settings. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.RestoreRebootTask This event sends data indicating that a reboot task is missing unexpectedly on a device and the task is restored because a reboot is still required, to help keep Windows up to date. @@ -5819,6 +6925,76 @@ The following fields are available: - **wuDeviceid** Unique device ID used by Windows Update. +### Microsoft.Windows.Update.Orchestrator.updateSettingsFlushFailed + +This event sends information about an update that encountered problems and was not able to complete. + +The following fields are available: + +- **errorCode** The error code encountered. +- **wuDeviceid** The ID of the device in which the error occurred. + + +### Microsoft.Windows.Update.Orchestrator.USODiagnostics + +This event sends data on whether the state of the update attempt, to help keep Windows up to date. + +The following fields are available: + +- **LastApplicableUpdateFoundTime** The time when the last applicable update was found. +- **LastDownloadDeferredReason** The last reason download was deferred. +- **LastDownloadDeferredTime** The time of the download deferral. +- **LastDownloadFailureError** The last download failure. +- **LastDownloadFailureTime** The time of the last download failure. +- **LastInstallCompletedTime** The time when the last successful install completed. +- **LastInstallDeferredReason** The reason the last install was deferred. +- **LastInstallDeferredTime** The time when the last install was deferred. +- **LastInstallFailureError** The error code associated with the last install failure. +- **LastInstallFailureTime** The time when the last install failed to complete. +- **LastRebootDeferredReason** The reason the last reboot was deferred. +- **LastRebootDeferredTime** The time when the last reboot was deferred. +- **LastRebootPendingTime** The time when the last reboot state was set to “Pending”. +- **LastScanDeferredReason** The reason the last scan was deferred. +- **LastScanDeferredTime** The time when the last scan was deferred. +- **LastScanFailureError** The error code for the last scan failure. +- **LastScanFailureTime** The time when the last scan failed. +- **LastUpdateCheckTime** The time of the last update check. +- **LastUpdateDownloadTime** The time when the last update was downloaded. +- **LastUpgradeInstallFailureError** The error code for the last upgrade install failure. +- **LastUpgradeInstallFailureTime** The time of the last upgrade install failure. +- **LowUpTimeDetectTime** The last time “low up-time” was detected. +- **NoLowUpTimeDetectTime** The last time no “low up-time” was detected. +- **RebootRequired** Indicates reboot is required. +- **UpgradeInProgressTime** The amount of time a feature update has been in progress. +- **WaaSFeatureAssessmentDays** The number of days Feature Update Assessment has been out of date. +- **WaaSFeatureAssessmentImpact** The impact of the Feature Update Assessment. +- **WaaSUpToDateAssessmentDays** The number of days Quality Update Assessment has been out of date. +- **WaaSUpToDateAssessmentImpact** The impact of Quality Update Assessment. +- **wuDeviceid** Unique ID for Device + + +### Microsoft.Windows.Update.Ux.MusNotification.EnhancedEngagedRebootUxState + +This event sends information about the configuration of Enhanced Direct-to-Engaged (eDTE), which includes values for the timing of how eDTE will progress through each phase of the reboot. + +The following fields are available: + +- **AcceptAutoModeLimit** The maximum number of days for a device to automatically enter Auto Reboot mode. +- **AutoToAutoFailedLimit** The maximum number of days for Auto Reboot mode to fail before a Reboot Failed dialog will be shown. +- **DeviceLocalTime** The date and time (based on the device date/time settings) the reboot mode changed. +- **EngagedModeLimit** The number of days to switch between DTE (Direct-to-Engaged) dialogs. +- **EnterAutoModeLimit** The maximum number of days a device can enter Auto Reboot mode. +- **ETag** The Entity Tag that represents the OneSettings version. +- **IsForcedEnabled** Identifies whether Forced Reboot mode is enabled for the device. +- **IsUltimateForcedEnabled** Identifies whether Ultimate Forced Reboot mode is enabled for the device. +- **OldestUpdateLocalTime** The date and time (based on the device date/time settings) this update’s reboot began pending. +- **RebootUxState** Identifies the reboot state: Engaged, Auto, Forced, UltimateForced. +- **RebootVersion** The version of the DTE (Direct-to-Engaged). +- **SkipToAutoModeLimit** The maximum number of days to switch to start while in Auto Reboot mode. +- **UpdateId** The ID of the update that is waiting for reboot to finish installation. +- **UpdateRevision** The revision of the update that is waiting for reboot to finish installation. + + ### Microsoft.Windows.Update.Ux.MusNotification.RebootNoLongerNeeded This event is sent when a security update has successfully completed. @@ -5872,6 +7048,25 @@ The following fields are available: - **TaskName** Name of the task +### Microsoft.Windows.Update.Ux.MusUpdateSettings.RebootScheduled + +This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up to date. + +The following fields are available: + +- **activeHoursApplicable** Is the restart respecting Active Hours? +- **IsEnhancedEngagedReboot** TRUE if the reboot path is Enhanced Engaged. Otherwise, FALSE. +- **rebootArgument** The arguments that are passed to the OS for the restarted. +- **rebootOutsideOfActiveHours** Was the restart scheduled outside of Active Hours? +- **rebootScheduledByUser** Was the restart scheduled by the user? If the value is false, the restart was scheduled by the device. +- **rebootState** The state of the restart. +- **revisionNumber** The revision number of the OS being updated. +- **scheduledRebootTime** Time of the scheduled reboot +- **scheduledRebootTimeInUTC** Time of the scheduled restart, in Coordinated Universal Time. +- **updateId** The Windows Update device GUID. +- **wuDeviceid** The Windows Update device GUID. + + ## Windows Update mitigation events ### Mitigation360Telemetry.MitigationCustom.CleanupSafeOsImages @@ -5880,21 +7075,21 @@ This event sends data specific to the CleanupSafeOsImages mitigation used for OS The following fields are available: -- **ClientId** Unique identifier for each flight. -- **FlightId** Unique GUID that identifies each instances of setuphost.exe. -- **InstanceId** The update scenario in which the mitigation was executed. -- **MitigationScenario** Number of mounted images. -- **MountedImageCount** Number of mounted images that were under %systemdrive%\$Windows.~BT. -- **MountedImageMatches** Number of mounted images under %systemdrive%\$Windows.~BT that could not be removed. -- **MountedImagesFailed** Number of mounted images under %systemdrive%\$Windows.~BT that were successfully removed. -- **MountedImagesRemoved** Number of mounted images that were not under %systemdrive%\$Windows.~BT. -- **MountedImagesSkipped** Correlation vector value generated from the latest USO scan. -- **RelatedCV** HResult of this operation. -- **Result** ID indicating the mitigation scenario. -- **ScenarioId** Indicates whether the scenario was supported. -- **ScenarioSupported** Unique value for each update attempt. -- **SessionId** Unique ID for each Update. -- **UpdateId** Unique ID for the Windows Update client. +- **ClientId** In the WU scenario, this will be the WU client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightId** Unique identifier for each flight. +- **InstanceId** Unique GUID that identifies each instances of setuphost.exe. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **MountedImageCount** Number of mounted images. +- **MountedImageMatches** Number of mounted images that were under %systemdrive%\$Windows.~BT. +- **MountedImagesFailed** Number of mounted images under %systemdrive%\$Windows.~BT that could not be removed. +- **MountedImagesRemoved** Number of mounted images under %systemdrive%\$Windows.~BT that were successfully removed. +- **MountedImagesSkipped** Number of mounted images that were not under %systemdrive%\$Windows.~BT. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** HResult of this operation. +- **ScenarioId** ID indicating the mitigation scenario. +- **ScenarioSupported** Indicates whether the scenario was supported. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each Update. - **WuId** Unique ID for the Windows Update client. diff --git a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1809.md b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1809.md index 0755ce1e09..b83547ea2a 100644 --- a/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1809.md +++ b/windows/privacy/basic-level-windows-diagnostic-events-and-fields-1809.md @@ -9,7 +9,7 @@ ms.pagetype: security localizationpriority: high author: brianlic-msft ms.author: brianlic -ms.date: 10/03/2018 +ms.date: 11/07/2018 --- @@ -20,7 +20,7 @@ ms.date: 10/03/2018 - Windows 10, version 1809 -The Basic level gathers a limited set of information that is critical for understanding the device and its configuration including: basic device information, quality-related information, app compatibility, and Microsoft Store. When the level is set to Basic, it also includes the Security level information. +The Basic level gathers a limited set of information that is critical for understanding the device and its configuration including: basic device information, quality-related information, app compatibility, and Windows Store. When the level is set to Basic, it also includes the Security level information. The Basic level helps to identify problems that can occur on a particular device hardware or software configuration. For example, it can help determine if crashes are more frequent on devices with a specific amount of memory or that are running a particular driver version. This helps Microsoft fix operating system or app problems. @@ -281,7 +281,7 @@ The following fields are available: - **DatasourceApplicationFile_TH1** The count of the number of this particular object type present on this device. - **DatasourceApplicationFile_TH2** The count of the number of this particular object type present on this device. - **DatasourceDevicePnp_RS1** The total DataSourceDevicePnp objects targeting Windows 10 version 1607 on this device. -- **DatasourceDevicePnp_RS2** The count of DatasourceApplicationFile objects present on this machine targeting the next release of Windows +- **DatasourceDevicePnp_RS2** The total DatasourceDevicePnp objects targeting Windows 10 version 1703 present on this device. - **DatasourceDevicePnp_RS3** The total DatasourceDevicePnp objects targeting the next release of Windows on this device. - **DatasourceDevicePnp_RS4** The count of the number of this particular object type present on this device. - **DatasourceDevicePnp_RS4Setup** The count of the number of this particular object type present on this device. @@ -295,7 +295,7 @@ The following fields are available: - **DatasourceDriverPackage_TH1** The count of the number of this particular object type present on this device. - **DatasourceDriverPackage_TH2** The count of the number of this particular object type present on this device. - **DataSourceMatchingInfoBlock_RS1** The total DataSourceMatchingInfoBlock objects targeting Windows 10 version 1607 on this device. -- **DataSourceMatchingInfoBlock_RS2** The count of DatasourceDevicePnp objects present on this machine targeting the next release of Windows +- **DataSourceMatchingInfoBlock_RS2** The total DataSourceMatchingInfoBlock objects targeting Windows 10 version 1703 present on this device. - **DataSourceMatchingInfoBlock_RS3** The total DataSourceMatchingInfoBlock objects targeting the next release of Windows on this device. - **DataSourceMatchingInfoBlock_RS4** The count of the number of this particular object type present on this device. - **DataSourceMatchingInfoBlock_RS4Setup** The count of the number of this particular object type present on this device. @@ -309,7 +309,7 @@ The following fields are available: - **DataSourceMatchingInfoPassive_TH1** The count of the number of this particular object type present on this device. - **DataSourceMatchingInfoPassive_TH2** The count of the number of this particular object type present on this device. - **DataSourceMatchingInfoPostUpgrade_RS1** The total DataSourceMatchingInfoPostUpgrade objects targeting Windows 10 version 1607 on this device. -- **DataSourceMatchingInfoPostUpgrade_RS2** The count of DatasourceDriverPackage objects present on this machine targeting the next release of Windows +- **DataSourceMatchingInfoPostUpgrade_RS2** The total DataSourceMatchingInfoPostUpgrade objects targeting Windows 10 version 1703 present on this device. - **DataSourceMatchingInfoPostUpgrade_RS3** The total DataSourceMatchingInfoPostUpgrade objects targeting the next release of Windows on this device. - **DataSourceMatchingInfoPostUpgrade_RS4** The count of the number of this particular object type present on this device. - **DataSourceMatchingInfoPostUpgrade_RS4Setup** The count of the number of this particular object type present on this device. @@ -330,7 +330,7 @@ The following fields are available: - **DecisionApplicationFile_TH1** The count of the number of this particular object type present on this device. - **DecisionApplicationFile_TH2** The count of the number of this particular object type present on this device. - **DecisionDevicePnp_RS1** The total DecisionDevicePnp objects targeting Windows 10 version 1607 on this device. -- **DecisionDevicePnp_RS2** The count of DataSourceMatchingInfoBlock objects present on this machine targeting the next release of Windows +- **DecisionDevicePnp_RS2** The total DecisionDevicePnp objects targeting Windows 10 version 1703 present on this device. - **DecisionDevicePnp_RS3** The total DecisionDevicePnp objects targeting the next release of Windows on this device. - **DecisionDevicePnp_RS4** The count of the number of this particular object type present on this device. - **DecisionDevicePnp_RS4Setup** The count of the number of this particular object type present on this device. @@ -344,7 +344,7 @@ The following fields are available: - **DecisionDriverPackage_TH1** The count of the number of this particular object type present on this device. - **DecisionDriverPackage_TH2** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoBlock_RS1** The total DecisionMatchingInfoBlock objects targeting Windows 10 version 1607 present on this device. -- **DecisionMatchingInfoBlock_RS2** The count of DataSourceMatchingInfoPassive objects present on this machine targeting the next release of Windows +- **DecisionMatchingInfoBlock_RS2** The total DecisionMatchingInfoBlock objects targeting Windows 10 version 1703 present on this device. - **DecisionMatchingInfoBlock_RS3** The total DecisionMatchingInfoBlock objects targeting the next release of Windows on this device. - **DecisionMatchingInfoBlock_RS4** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoBlock_RS4Setup** The count of the number of this particular object type present on this device. @@ -358,14 +358,14 @@ The following fields are available: - **DecisionMatchingInfoPassive_TH1** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoPassive_TH2** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoPostUpgrade_RS1** The total DecisionMatchingInfoPostUpgrade objects targeting Windows 10 version 1607 on this device. -- **DecisionMatchingInfoPostUpgrade_RS2** The count of DataSourceMatchingInfoPostUpgrade objects present on this machine targeting the next release of Windows +- **DecisionMatchingInfoPostUpgrade_RS2** The total DecisionMatchingInfoPostUpgrade objects targeting Windows 10 version 1703 present on this device. - **DecisionMatchingInfoPostUpgrade_RS3** The total DecisionMatchingInfoPostUpgrade objects targeting the next release of Windows on this device. - **DecisionMatchingInfoPostUpgrade_RS4** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoPostUpgrade_RS4Setup** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoPostUpgrade_TH1** The count of the number of this particular object type present on this device. - **DecisionMatchingInfoPostUpgrade_TH2** The count of the number of this particular object type present on this device. - **DecisionMediaCenter_RS1** The total DecisionMediaCenter objects targeting Windows 10 version 1607 present on this device. -- **DecisionMediaCenter_RS2** The count of DatasourceSystemBios objects present on this machine targeting the next release of Windows +- **DecisionMediaCenter_RS2** The total DecisionMediaCenter objects targeting Windows 10 version 1703 present on this device. - **DecisionMediaCenter_RS3** The total DecisionMediaCenter objects targeting the next release of Windows on this device. - **DecisionMediaCenter_RS4** The count of the number of this particular object type present on this device. - **DecisionMediaCenter_RS4Setup** The count of the number of this particular object type present on this device. @@ -395,7 +395,7 @@ The following fields are available: - **SystemWindowsActivationStatus** The count of the number of this particular object type present on this device. - **SystemWlan** The count of the number of this particular object type present on this device. - **Wmdrm_RS1** An ID for the system, calculated by hashing hardware identifiers. -- **Wmdrm_RS2** The count of InventoryLanguagePack objects present on this machine. +- **Wmdrm_RS2** The total Wmdrm objects targeting Windows 10 version 1703 present on this device. - **Wmdrm_RS3** The total Wmdrm objects targeting the next release of Windows on this device. - **Wmdrm_RS4** The total Wmdrm objects targeting Windows 10, version 1803 present on this device. - **Wmdrm_RS4Setup** The count of the number of this particular object type present on this device. @@ -666,7 +666,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.DecisionApplicationFileRemove -This event indicates that the DecisionApplicationFile object is no longer present. +This event indicates Indicates that the DecisionApplicationFile object is no longer present. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -1013,7 +1013,7 @@ The following fields are available: ### Microsoft.Windows.Appraiser.General.InventoryApplicationFileStartSync -This event indicates that a new set of InventoryApplicationFileAdd events will be sent. +This event indicates indicates that a new set of InventoryApplicationFileAdd events will be sent. This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedeviceinventorychange). @@ -1818,14 +1818,18 @@ The following fields are available: - **AdvertisingId** Current state of the advertising ID setting. - **AppDiagnostics** Current state of the app diagnostics setting. - **Appointments** Current state of the calendar setting. +- **AppointmentsSystem** Current state of the calendar setting. - **Bluetooth** Current state of the Bluetooth capability setting. - **BluetoothSync** Current state of the Bluetooth sync capability setting. - **BroadFileSystemAccess** Current state of the broad file system access setting. - **CellularData** Current state of the cellular data capability setting. - **Chat** Current state of the chat setting. +- **ChatSystem** Current state of the chat setting. - **Contacts** Current state of the contacts setting. +- **ContactsSystem** Current state of the Contacts setting. - **DocumentsLibrary** Current state of the documents library setting. - **Email** Current state of the email setting. +- **EmailSystem** Current state of the email setting. - **FindMyDevice** Current state of the "find my device" setting. - **GazeInput** Current state of the gaze input setting. - **HumanInterfaceDevice** Current state of the human interface device setting. @@ -1837,6 +1841,7 @@ The following fields are available: - **Microphone** Current state of the microphone setting. - **PhoneCall** Current state of the phone call setting. - **PhoneCallHistory** Current state of the call history setting. +- **PhoneCallHistorySystem** Current state of the call history setting. - **PicturesLibrary** Current state of the pictures library setting. - **Radios** Current state of the radios setting. - **SensorsCustom** Current state of the custom sensor setting. @@ -1846,6 +1851,7 @@ The following fields are available: - **USB** Current state of the USB setting. - **UserAccountInformation** Current state of the account information setting. - **UserDataTasks** Current state of the tasks setting. +- **UserDataTasksSystem** Current state of the tasks setting. - **UserNotificationListener** Current state of the notifications setting. - **VideosLibrary** Current state of the videos library setting. - **Webcam** Current state of the camera setting. @@ -1979,14 +1985,18 @@ The following fields are available: - **AdvertisingId** Current state of the advertising ID setting. - **AppDiagnostics** Current state of the app diagnostics setting. - **Appointments** Current state of the calendar setting. +- **AppointmentsSystem** Current state of the calendar setting. - **Bluetooth** Current state of the Bluetooth capability setting. - **BluetoothSync** Current state of the Bluetooth sync capability setting. - **BroadFileSystemAccess** Current state of the broad file system access setting. - **CellularData** Current state of the cellular data capability setting. - **Chat** Current state of the chat setting. +- **ChatSystem** Current state of the chat setting. - **Contacts** Current state of the contacts setting. +- **ContactsSystem** Current state of the contacts setting. - **DocumentsLibrary** Current state of the documents library setting. - **Email** Current state of the email setting. +- **EmailSystem** Current state of the email setting. - **GazeInput** Current state of the gaze input setting. - **HumanInterfaceDevice** Current state of the human interface device setting. - **InkTypeImprovement** Current state of the improve inking and typing setting. @@ -1998,6 +2008,7 @@ The following fields are available: - **Microphone** Current state of the microphone setting. - **PhoneCall** Current state of the phone call setting. - **PhoneCallHistory** Current state of the call history setting. +- **PhoneCallHistorySystem** Current state of the call history setting. - **PicturesLibrary** Current state of the pictures library setting. - **Radios** Current state of the radios setting. - **SensorsCustom** Current state of the custom sensor setting. @@ -2007,6 +2018,7 @@ The following fields are available: - **USB** Current state of the USB setting. - **UserAccountInformation** Current state of the account information setting. - **UserDataTasks** Current state of the tasks setting. +- **UserDataTasksSystem** Current state of the tasks setting. - **UserNotificationListener** Current state of the notifications setting. - **VideosLibrary** Current state of the videos library setting. - **Webcam** Current state of the camera setting. @@ -2256,6 +2268,59 @@ The following fields are available: ## Component-based servicing events +### CbsServicingProvider.CbsCapabilityEnumeration + +This event reports on the results of scanning for optional Windows content on Windows Update. + +The following fields are available: + +- **architecture** Indicates the scan was limited to the specified architecture. +- **capabilityCount** The number of optional content packages found during the scan. +- **clientId** The name of the application requesting the optional content. +- **duration** The amount of time it took to complete the scan. +- **hrStatus** The HReturn code of the scan. +- **language** Indicates the scan was limited to the specified language. +- **majorVersion** Indicates the scan was limited to the specified major version. +- **minorVersion** Indicates the scan was limited to the specified minor version. +- **namespace** Indicates the scan was limited to packages in the specified namespace. +- **sourceFilter** A bitmask indicating the scan checked for locally available optional content. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionFinalize + +This event provides information about the results of installing or uninstalling optional Windows content from Windows Update. + +The following fields are available: + +- **capabilities** The names of the optional content packages that were installed. +- **clientId** The name of the application requesting the optional content. +- **currentID** The ID of the current install session. +- **highestState** The highest final install state of the optional content. +- **hrLCUReservicingStatus** Indicates whether the optional content was updated to the latest available version. +- **hrStatus** The HReturn code of the install operation. +- **rebootCount** The number of reboots required to complete the install. +- **retryID** The session ID that will be used to retry a failed operation. +- **retryStatus** Indicates whether the install will be retried in the event of failure. +- **stackBuild** The build number of the servicing stack. +- **stackMajorVersion** The major version number of the servicing stack. +- **stackMinorVersion** The minor version number of the servicing stack. +- **stackRevision** The revision number of the servicing stack. + + +### CbsServicingProvider.CbsCapabilitySessionPended + +This event provides information about the results of installing optional Windows content that requires a reboot to keep Windows up to date. + +The following fields are available: + +- **clientId** The name of the application requesting the optional content. +- **pendingDecision** Indicates the cause of reboot, if applicable. + + ### CbsServicingProvider.CbsLateAcquisition This event sends data to indicate if some Operating System packages could not be updated as part of an upgrade, to help keep Windows up to date. @@ -2266,6 +2331,28 @@ The following fields are available: - **RetryID** The ID identifying the retry attempt to update the listed packages. +### CbsServicingProvider.CbsPackageRemoval + +This event provides information about the results of uninstalling a Windows Cumulative Security Update to help keep Windows up to date. + +The following fields are available: + +- **buildVersion** The build number of the security update being uninstalled. +- **clientId** The name of the application requesting the uninstall. +- **currentStateEnd** The final state of the update after the operation. +- **failureDetails** Information about the cause of a failure, if applicable. +- **failureSourceEnd** The stage during the uninstall where the failure occurred. +- **hrStatusEnd** The overall exit code of the operation. +- **initiatedOffline** Indicates if the uninstall was initiated for a mounted Windows image. +- **majorVersion** The major version number of the security update being uninstalled. +- **minorVersion** The minor version number of the security update being uninstalled. +- **originalState** The starting state of the update before the operation. +- **pendingDecision** Indicates the cause of reboot, if applicable. +- **primitiveExecutionContext** The state during system startup when the uninstall was completed. +- **revisionVersion** The revision number of the security update being uninstalled. +- **transactionCanceled** Indicates whether the uninstall was cancelled. + + ## Deployment extensions ### DeploymentTelemetry.Deployment_End @@ -3009,6 +3096,87 @@ The following fields are available: - **CV** Correlation vector. +## DxgKernelTelemetry events + +### DxgKrnlTelemetry.GPUAdapterInventoryV2 + +This event sends basic GPU and display driver information to keep Windows and display drivers up-to-date. + +The following fields are available: + +- **AdapterTypeValue** The numeric value indicating the type of Graphics adapter. +- **aiSeqId** The event sequence ID. +- **bootId** The system boot ID. +- **BrightnessVersionViaDDI** The version of the Display Brightness Interface. +- **ComputePreemptionLevel** The maximum preemption level supported by GPU for compute payload. +- **DedicatedSystemMemoryB** The amount of system memory dedicated for GPU use (in bytes). +- **DedicatedVideoMemoryB** The amount of dedicated VRAM of the GPU (in bytes). +- **DisplayAdapterLuid** The display adapter LUID. +- **DriverDate** The date of the display driver. +- **DriverRank** The rank of the display driver. +- **DriverVersion** The display driver version. +- **DX10UMDFilePath** The file path to the location of the DirectX 10 Display User Mode Driver in the Driver Store. +- **DX11UMDFilePath** The file path to the location of the DirectX 11 Display User Mode Driver in the Driver Store. +- **DX12UMDFilePath** The file path to the location of the DirectX 12 Display User Mode Driver in the Driver Store. +- **DX9UMDFilePath** The file path to the location of the DirectX 9 Display User Mode Driver in the Driver Store. +- **GPUDeviceID** The GPU device ID. +- **GPUPreemptionLevel** The maximum preemption level supported by GPU for graphics payload. +- **GPURevisionID** The GPU revision ID. +- **GPUVendorID** The GPU vendor ID. +- **InterfaceId** The GPU interface ID. +- **IsDisplayDevice** Does the GPU have displaying capabilities? +- **IsHybridDiscrete** Does the GPU have discrete GPU capabilities in a hybrid device? +- **IsHybridIntegrated** Does the GPU have integrated GPU capabilities in a hybrid device? +- **IsLDA** Is the GPU comprised of Linked Display Adapters? +- **IsMiracastSupported** Does the GPU support Miracast? +- **IsMismatchLDA** Is at least one device in the Linked Display Adapters chain from a different vendor? +- **IsMPOSupported** Does the GPU support Multi-Plane Overlays? +- **IsMsMiracastSupported** Are the GPU Miracast capabilities driven by a Microsoft solution? +- **IsPostAdapter** Is this GPU the POST GPU in the device? +- **IsRemovable** TRUE if the adapter supports being disabled or removed. +- **IsRenderDevice** Does the GPU have rendering capabilities? +- **IsSoftwareDevice** Is this a software implementation of the GPU? +- **KMDFilePath** The file path to the location of the Display Kernel Mode Driver in the Driver Store. +- **MeasureEnabled** Is the device listening to MICROSOFT_KEYWORD_MEASURES? +- **NumVidPnSources** The number of supported display output sources. +- **NumVidPnTargets** The number of supported display output targets. +- **SharedSystemMemoryB** The amount of system memory shared by GPU and CPU (in bytes). +- **SubSystemID** The subsystem ID. +- **SubVendorID** The GPU sub vendor ID. +- **TelemetryEnabled** Is the device listening to MICROSOFT_KEYWORD_TELEMETRY? +- **TelInvEvntTrigger** What triggered this event to be logged? Example: 0 (GPU enumeration) or 1 (DxgKrnlTelemetry provider toggling) +- **version** The event version. +- **WDDMVersion** The Windows Display Driver Model version. + + +## Hang Reporting events + +### Microsoft.Windows.HangReporting.AppHangEvent + +This event sends data about hangs for both native and managed applications, to help keep Windows up to date. It does not contain any Watson bucketing information. The bucketing information is recorded in a Windows Error Reporting (WER) event that is generated when the WER client reports the hang to the Watson service, and the WER event will contain the same ReportID (see field 13 of hang event, field 19 of WER event) as the hang event for the hang being reported. AppHang is reported only on PC devices. It handles classic Win32 hangs and is emitted only once per report. Some behaviors that may be perceived by a user as a hang are reported by app managers (e.g. PLM/RM/EM) as Watson Generics and will not produce AppHang events. + +The following fields are available: + +- **AppName** The name of the app that has hung. +- **AppSessionGuid** GUID made up of process id used as a correlation vector for process instances in the telemetry backend. +- **AppVersion** The version of the app that has hung. +- **IsFatal** True/False based on whether the hung application caused the creation of a Fatal Hang Report. +- **PackageFullName** Store application identity. +- **PackageRelativeAppId** Store application identity. +- **ProcessArchitecture** Architecture of the hung process, as one of the PROCESSOR_ARCHITECTURE_* constants: 0: PROCESSOR_ARCHITECTURE_INTEL. 5: PROCESSOR_ARCHITECTURE_ARM. 9: PROCESSOR_ARCHITECTURE_AMD64. 12: PROCESSOR_ARCHITECTURE_ARM64. +- **ProcessCreateTime** The time of creation of the process that has hung. +- **ProcessId** The ID of the process that has hung. +- **ReportId** A GUID used to identify the report. This can used to track the report across Watson. +- **TargetAppId** The kernel reported AppId of the application being reported. +- **TargetAppVer** The specific version of the application being reported. +- **TargetAsId** The sequence number for the hanging process. +- **TypeCode** Bitmap describing the hang type. +- **WaitingOnAppName** If this is a cross process hang waiting for an application, this has the name of the application. +- **WaitingOnAppVersion** If this is a cross process hang, this has the version of the application for which it is waiting. +- **WaitingOnPackageFullName** If this is a cross process hang waiting for a package, this has the full name of the package for which it is waiting. +- **WaitingOnPackageRelativeAppId** If this is a cross process hang waiting for a package, this has the relative application id of the package. + + ## Inventory events ### Microsoft.Windows.Inventory.Core.AmiTelCacheChecksum @@ -3104,8 +3272,8 @@ This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedevic The following fields are available: -- **InventoryVersion** The version of the inventory component -- **ProgramIds** The unique program identifier the driver is associated with +- **InventoryVersion** The version of the inventory component. +- **ProgramIds** The unique program identifier the driver is associated with. ### Microsoft.Windows.Inventory.Core.InventoryApplicationDriverStartSync @@ -3308,9 +3476,10 @@ The following fields are available: - **DriverVerDate** Name of the .sys image file (or wudfrd.sys if using user mode driver framework). - **DriverVerVersion** The immediate parent directory name in the Directory field of InventoryDriverPackage. - **Enumerator** The date of the driver loaded for the device. +- **ExtendedInfs** The extended INF file names. - **HWID** The version of the driver loaded for the device. - **Inf** The bus that enumerated the device. -- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/library/windows/hardware/ff543130.aspx +- **InstallState** The device installation state. One of these values: https://msdn.microsoft.com/en-us/library/windows/hardware/ff543130.aspx - **InventoryVersion** List of hardware ids for the device. - **LowerClassFilters** Lower filter class drivers IDs installed for the device - **LowerFilters** Lower filter drivers IDs installed for the device @@ -3463,6 +3632,18 @@ The following fields are available: - **InventoryVersion** The version of the inventory file generating the events. +### Microsoft.Windows.Inventory.Core.StartUtcJsonTrace + +This event collects traces of all other Core events, not used in typical customer scenarios. This event signals the beginning of the event download, and that tracing should begin. + + + +### Microsoft.Windows.Inventory.Core.StopUtcJsonTrace + +This event collects traces of all other Core events, not used in typical customer scenarios. This event signals the end of the event download, and that tracing should end. + + + ### Microsoft.Windows.Inventory.General.AppHealthStaticAdd This event sends details collected for a specific application on the source device. @@ -3510,27 +3691,27 @@ This event includes fields from [Ms.Device.DeviceInventoryChange](#msdevicedevic The following fields are available: -- **AddinCLSID** The CLSID for the Office add-in. -- **AddInId** Office add-in ID. -- **AddinType** Office add-in Type. -- **BinFileTimestamp** Timestamp of the Office add-in. -- **BinFileVersion** Version of the Office add-in. -- **Description** Office add-in description. -- **FileId** FileId of the Office add-in. -- **FileSize** File size of the Office add-in. -- **FriendlyName** Friendly name for office add-in. -- **FullPath** Unexpanded path to the office add-in. +- **AddinCLSID** The CLSID for the Office addin +- **AddInId** Office addin ID +- **AddinType** The type of the Office addin. +- **BinFileTimestamp** Timestamp of the Office addin +- **BinFileVersion** Version of the Office addin +- **Description** Office addin description +- **FileId** FileId of the Office addin +- **FileSize** File size of the Office addin +- **FriendlyName** Friendly name for office addin +- **FullPath** Unexpanded path to the office addin - **InventoryVersion** The version of the inventory binary generating the events. -- **LoadBehavior** Uint32 that describes the load behavior. -- **OfficeApplication** The office application for this add-in. -- **OfficeArchitecture** Architecture of the add-in. -- **OfficeVersion** The office version for this add-in. -- **OutlookCrashingAddin** Boolean that indicates if crashes have been found for this add-in. -- **ProductCompany** The name of the company associated with the Office add-in. -- **ProductName** The product name associated with the Office add-in. -- **ProductVersion** The version associated with the Office add-in. -- **ProgramId** The unique program identifier of the Office add-in. -- **Provider** Name of the provider for this add-in. +- **LoadBehavior** Uint32 that describes the load behavior +- **OfficeApplication** The office application for this addin +- **OfficeArchitecture** Architecture of the addin +- **OfficeVersion** The office version for this addin +- **OutlookCrashingAddin** Boolean that indicates if crashes have been found for this addin +- **ProductCompany** The name of the company associated with the Office addin +- **ProductName** The product name associated with the Office addin +- **ProductVersion** The version associated with the Office addin +- **ProgramId** The unique program identifier of the Office addin +- **Provider** Name of the provider for this addin ### Microsoft.Windows.Inventory.General.InventoryMiscellaneousOfficeAddInRemove @@ -3908,6 +4089,153 @@ The following fields are available: - **UserInputTime** The amount of time the loader application spent waiting for user input. +## OneDrive events + +### Microsoft.OneDrive.Sync.Updater.ComponentInstallState + +This event includes basic data about the installation state of dependent OneDrive components. + +The following fields are available: + +- **ComponentName** The name of the dependent component. +- **isInstalled** Is the dependent component installed? + + +### Microsoft.OneDrive.Sync.Updater.OverlayIconStatus + +This event indicates if the OneDrive overlay icon is working correctly. 0 = healthy; 1 = can be fixed; 2 = broken + +The following fields are available: + +- **32bit** The status of the OneDrive overlay icon on a 32-bit operating system. +- **64bit** The status of the OneDrive overlay icon on a 64-bit operating system. + + +### Microsoft.OneDrive.Sync.Updater.UpdateOverallResult + +This event sends information describing the result of the update. + +The following fields are available: + +- **hr** The HResult of the operation. +- **IsLoggingEnabled** Indicates whether logging is enabled for the updater. +- **UpdaterVersion** The version of the updater. + + +### Microsoft.OneDrive.Sync.Updater.UpdateXmlDownloadHResult + +This event determines the status when downloading the OneDrive update configuration file. + +The following fields are available: + +- **hr** The HResult of the operation. + + +### Microsoft.OneDrive.Sync.Updater.WebConnectionStatus + +This event determines the error code that was returned when verifying Internet connectivity. + +The following fields are available: + +- **winInetError** The HResult of the operation. + + +## Other events + +### Microsoft.Windows.Kits.WSK.WskImageCreate + +This event sends simple Product and Service usage data when a user is using the Windows System Kit to create new OS “images”. The data includes the version of the Windows System Kit and the state of the event and is used to help investigate “image” creation failures. + +The following fields are available: + +- **Phase** The image creation phase. Values are “Start” or “End”. +- **WskVersion** The version of the Windows System Kit being used. + + +### Microsoft.Windows.Kits.WSK.WskImageCustomization + +This event sends simple Product and Service usage data when a user is using the Windows System Kit to create/modify configuration files allowing the customization of a new OS image with Apps or Drivers. The data includes the version of the Windows System Kit, the state of the event, the customization type (drivers or apps) and the mode (new or updating) and is used to help investigate configuration file creation failures. + +The following fields are available: + +- **Mode** The mode of update to image configuration files. Values are “New” or “Update”. +- **Phase** The image creation phase. Values are “Start” or “End”. +- **Type** The type of update to image configuration files. Values are “Apps” or “Drivers”. +- **WskVersion** The version of the Windows System Kit being used. + + +### Microsoft.Windows.Kits.WSK.WskWorkspaceCreate + +This event sends simple Product and Service usage data when a user is using the Windows System Kit to create new workspace for generating OS “images”. The data includes the version of the Windows System Kit and the state of the event and is used to help investigate workspace creation failures. + +The following fields are available: + +- **Architecture** The OS architecture that the workspace will target. Values are one of: “AMD64”, “ARM64”, “x86”, or “ARM”. +- **OsEdition** The Operating System Edition that the workspace will target. +- **Phase** The image creation phase. Values are “Start” or “End”. +- **WskVersion** The version of the Windows System Kit being used. + + +### Microsoft.Windows.Mitigation.AccountTraceLoggingProvider.General + +This event provides information about application properties to indicate the successful execution. + +The following fields are available: + +- **AppMode** Indicates the mode the app is being currently run around privileges. +- **ExitCode** Indicates the exit code of the app. +- **Help** Indicates if the app needs to be launched in the help mode. +- **ParseError** Indicates if there was a parse error during the execution. +- **RightsAcquired** Indicates if the right privileges were acquired for successful execution. +- **RightsWereEnabled** Indicates if the right privileges were enabled for successful execution. +- **TestMode** Indicates whether the app is being run in test mode. + + +### Microsoft.Windows.Mitigation.AccountTraceLoggingProvider.GetCount + +This event provides information about the properties of user accounts in the Administrator group. + +The following fields are available: + +- **Internal** Indicates the internal property associated with the count group. +- **LastError** The error code (if applicable) for the cause of the failure to get the count of the user account. + + +### Microsoft.Xbox.XamTelemetry.AppActivationError + +This event indicates whether the system detected an activation error in the app. + +The following fields are available: + +- **ActivationUri** Activation URI (Uniform Resource Identifier) used in the attempt to activate the app. +- **AppId** The Xbox LIVE Title ID. +- **AppUserModelId** The AUMID (Application User Model ID) of the app to activate. +- **Result** The HResult error. +- **UserId** The Xbox LIVE User ID (XUID). + + +### Microsoft.Xbox.XamTelemetry.AppActivity + +This event is triggered whenever the current app state is changed by: launch, switch, terminate, snap, etc. + +The following fields are available: + +- **AppActionId** The ID of the application action. +- **AppCurrentVisibilityState** The ID of the current application visibility state. +- **AppId** The Xbox LIVE Title ID of the app. +- **AppPackageFullName** The full name of the application package. +- **AppPreviousVisibilityState** The ID of the previous application visibility state. +- **AppSessionId** The application session ID. +- **AppType** The type ID of the application (AppType_NotKnown, AppType_Era, AppType_Sra, AppType_Uwa). +- **BCACode** The BCA (Burst Cutting Area) mark code of the optical disc used to launch the application. +- **DurationMs** The amount of time (in milliseconds) since the last application state transition. +- **IsTrialLicense** This boolean value is TRUE if the application is on a trial license. +- **LicenseType** The type of licensed used to authorize the app (0 - Unknown, 1 - User, 2 - Subscription, 3 - Offline, 4 - Disc). +- **LicenseXuid** If the license type is 1 (User), this field contains the XUID (Xbox User ID) of the registered owner of the license. +- **ProductGuid** The Xbox product GUID (Globally-Unique ID) of the application. +- **UserId** The XUID (Xbox User ID) of the current user. + + ## Privacy consent logging events ### Microsoft.Windows.Shell.PrivacyConsentLogging.PrivacyConsentCompleted @@ -3936,6 +4264,43 @@ The following fields are available: - **userRegionCode** The current user's region setting +## Setup events + +### SetupPlatformTel.SetupPlatformTelActivityEvent + +This event sends basic metadata about the SetupPlatform update installation process, to help keep Windows up to date. + +The following fields are available: + +- **FieldName** Retrieves the event name/data point. Examples: InstallStartTime, InstallEndtime, OverallResult etc. +- **GroupName** Retrieves the groupname the event belongs to. Example: Install Information, DU Information, Disk Space Information etc. +- **Value** Value associated with the corresponding event name. For example, time-related events will include the system time + + +### SetupPlatformTel.SetupPlatformTelActivityStarted + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + +The following fields are available: + +- **Name** The name of the dynamic update type. Example: GDR driver + + +### SetupPlatformTel.SetupPlatformTelActivityStopped + +This event sends basic metadata about the update installation process generated by SetupPlatform to help keep Windows up to date. + + + +### SetupPlatformTel.SetupPlatfOrmTelEvent + +This service retrieves events generated by SetupPlatform, the engine that drives the various deployment scenarios. + +The following fields are available: + +- **GroupName** Retrieves the groupname the event belongs to. Example: Install Information, DU Information, Disk Space Information etc. + + ## Software update events ### SoftwareUpdateClientTelemetry.CheckForUpdates @@ -4010,7 +4375,7 @@ The following fields are available: - **ScanDurationInSeconds** The number of seconds a scan took - **ScanEnqueueTime** The number of seconds it took to initialize a scan - **ScanProps** This is a 32-bit integer containing Boolean properties for a given Windows Update scan. The following bits are used; all remaining bits are reserved and set to zero. Bit 0 (0x1): IsInteractive - is set to 1 if the scan is requested by a user, or 0 if the scan is requested by Automatic Updates. Bit 1 (0x2): IsSeeker - is set to 1 if the Windows Update client's Seeker functionality is enabled. Seeker functionality is enabled on certain interactive scans, and results in the scans returning certain updates that are in the initial stages of release (not yet released for full adoption via Automatic Updates). -- **ServiceGuid** An ID which represents which service the software distribution client is checking for content (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** An ID which represents which service the software distribution client is checking for content (Windows Update, Windows Store, etc.). - **ServiceUrl** The environment URL a device is configured to scan with - **ShippingMobileOperator** The mobile operator that a device shipped on. - **StatusCode** Indicates the result of a CheckForUpdates event (success, cancellation, failure code HResult). @@ -4092,7 +4457,7 @@ The following fields are available: - **RepeatFailCount** Indicates whether this specific piece of content has previously failed. - **RepeatFailFlag** Indicates whether this specific piece of content had previously failed to download. - **RevisionNumber** Identifies the revision number of this specific piece of content. -- **ServiceGuid** An ID that represents which service the software distribution client is installing content for (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** An ID that represents which service the software distribution client is installing content for (Windows Update, Windows Store, etc.). - **Setup360Phase** If the download is for an operating system upgrade, this datapoint indicates which phase of the upgrade is underway. - **ShippingMobileOperator** The mobile operator that a device shipped on. - **SizeCalcTime** Time taken (in seconds) to calculate the total download size of the payload. @@ -4169,7 +4534,7 @@ The following fields are available: - **RepeatFailCount** Indicates whether this specific piece of content has previously failed. - **RepeatFailFlag** Indicates whether this specific piece of content previously failed to install. - **RevisionNumber** The revision number of this specific piece of content. -- **ServiceGuid** An ID which represents which service the software distribution client is installing content for (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** An ID which represents which service the software distribution client is installing content for (Windows Update, Windows Store, etc.). - **Setup360Phase** If the install is for an operating system upgrade, indicates which phase of the upgrade is underway. - **ShippingMobileOperator** The mobile operator that a device shipped on. - **StatusCode** Indicates the result of an installation event (success, cancellation, failure code HResult). @@ -4219,7 +4584,7 @@ The following fields are available: - **RelatedCV** The previous correlation vector that was used by the client before swapping with a new one. - **RepeatFailCount** Indicates whether this specific piece of content has previously failed. - **RevisionNumber** Identifies the revision number of this specific piece of content. -- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Windows Store, etc.). - **StatusCode** Result code of the event (success, cancellation, failure code HResult). - **TargetGroupId** For drivers targeted to a specific device model, this ID indicates the distribution group of devices receiving that driver. - **TargetingVersion** For drivers targeted to a specific device model, this is the version number of the drivers being distributed to the device. @@ -4240,7 +4605,7 @@ The following fields are available: - **CmdLineArgs** Command line arguments passed in by the caller. - **EventInstanceID** A globally unique identifier for the event instance. - **EventScenario** Indicates the purpose of the event (scan started, succeeded, failed, etc.). -- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Windows Store, etc.). - **StatusCode** Result code of the event (success, cancellation, failure code HResult). - **WUDeviceID** Unique device ID controlled by the software distribution client. @@ -4279,7 +4644,7 @@ The following fields are available: - **RelatedCV** The previous correlation vector that was used by the client before swapping with a new one. - **RepeatFailCount** Indicates whether this specific piece of content previously failed. - **RevisionNumber** Identifies the revision number of this specific piece of content. -- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** Identifier for the service to which the software distribution client is connecting (Windows Update, Windows Store, etc.). - **StatusCode** Result code of the event (success, cancellation, failure code HResult). - **TargetGroupId** For drivers targeted to a specific device model, this ID indicates the distribution group of devices receiving that driver. - **TargetingVersion** For drivers targeted to a specific device model, this is the version number of the drivers being distributed to the device. @@ -4300,7 +4665,7 @@ The following fields are available: - **IntentPFNs** Intended application-set metadata for atomic update scenarios. - **NumberOfApplicableUpdates** The number of updates ultimately deemed applicable to the system after the detection process is complete. - **RelatedCV** The previous Correlation Vector that was used before swapping with a new one. -- **ServiceGuid** An ID that represents which service the software distribution client is connecting to (Windows Update, Microsoft Store, etc.). +- **ServiceGuid** An ID that represents which service the software distribution client is connecting to (Windows Update, Windows Store, etc.). - **WUDeviceID** The unique device ID controlled by the software distribution client. @@ -4334,6 +4699,296 @@ The following fields are available: - **LinkSpeed** The adapter link speed. +## Update events + +### Update360Telemetry.Revert + +This event sends data relating to the Revert phase of updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the Revert phase. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **RebootRequired** Indicates reboot is required. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **RevertResult** The result code returned for the Revert operation. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + +### Update360Telemetry.UpdateAgentCommit + +This event collects information regarding the commit phase of the new Unified Update Platform (UUP) update scenario, which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **ErrorCode** The error code returned for the current install phase. +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the install phase of the update. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentDownloadRequest + +This event sends data for the download request phase of updating Windows via the new Unified Update Platform (UUP) scenario. Applicable to PC and Mobile. + +The following fields are available: + +- **DeletedCorruptFiles** Boolean indicating whether corrupt payload was deleted. +- **DownloadRequests** Number of times a download was retried. +- **ErrorCode** The error code returned for the current download request phase. +- **ExtensionName** Indicates whether the payload is related to Operating System content or a plugin. +- **FlightId** Unique ID for each flight. +- **InternalFailureResult** Indicates a non-fatal error from a plugin. +- **ObjectId** Unique value for each Update Agent mode (same concept as InstanceId for Setup360). +- **PackageCategoriesSkipped** Indicates package categories that were skipped, if applicable. +- **PackageCountOptional** Number of optional packages requested. +- **PackageCountRequired** Number of required packages requested. +- **PackageCountTotal** Total number of packages needed. +- **PackageCountTotalCanonical** Total number of canonical packages. +- **PackageCountTotalDiff** Total number of diff packages. +- **PackageCountTotalExpress** Total number of express packages. +- **PackageExpressType** Type of express package. +- **PackageSizeCanonical** Size of canonical packages in bytes. +- **PackageSizeDiff** Size of diff packages in bytes. +- **PackageSizeExpress** Size of express packages in bytes. +- **RangeRequestState** Indicates the range request type used. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the download request phase of update. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each attempt (same value for initialize, download, install commit phases). +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentExpand + +This event collects information regarding the expansion phase of the new Unified Update Platform (UUP) update scenario, which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **ElapsedTickCount** Time taken for expand phase. +- **EndFreeSpace** Free space after expand phase. +- **EndSandboxSize** Sandbox size after expand phase. +- **ErrorCode** The error code returned for the current install phase. +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **StartFreeSpace** Free space before expand phase. +- **StartSandboxSize** Sandbox size after expand phase. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentFellBackToCanonical + +This event collects information when express could not be used and we fall back to canonical during the new Unified Update Platform (UUP) update scenario, which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **FlightId** Unique ID for each flight. +- **ObjectId** Unique value for each Update Agent mode. +- **PackageCount** Number of packages that feel back to canonical. +- **PackageList** PackageIds which fell back to canonical. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentInitialize + +This event sends data for the initialize phase of updating Windows via the new Unified Update Platform (UUP) scenario, which is applicable to both PCs and Mobile. + +The following fields are available: + +- **ErrorCode** The error code returned for the current install phase. +- **FlightId** Unique ID for each flight. +- **FlightMetadata** Contains the FlightId and the build being flighted. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** Outcome of the install phase of the update. +- **ScenarioId** Indicates the update scenario. +- **SessionData** String containing instructions to update agent for processing FODs and DUICs (Null for other scenarios). +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentInstall + +This event sends data for the install phase of updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current install phase. +- **ExtensionName** Indicates whether the payload is related to Operating System content or a plugin. +- **FlightId** Unique value for each Update Agent mode (same concept as InstanceId for Setup360). +- **InternalFailureResult** Indicates a non-fatal error from a plugin. +- **ObjectId** Correlation vector value generated from the latest USO scan. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** The result for the current install phase. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentMerge + +The UpdateAgentMerge event sends data on the merge phase when updating Windows. + +The following fields are available: + +- **ErrorCode** The error code returned for the current merge phase. +- **FlightId** Unique ID for each flight. +- **MergeId** The unique ID to join two update sessions being merged. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Related correlation vector value. +- **Result** Outcome of the merge phase of the update. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentMitigationResult + +This event sends data indicating the result of each update agent mitigation. + +The following fields are available: + +- **Applicable** Indicates whether the mitigation is applicable for the current update. +- **CommandCount** The number of command operations in the mitigation entry. +- **CustomCount** The number of custom operations in the mitigation entry. +- **FileCount** The number of file operations in the mitigation entry. +- **FlightId** Unique identifier for each flight. +- **Index** The mitigation index of this particular mitigation. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **Name** The friendly name of the mitigation. +- **ObjectId** Unique value for each Update Agent mode. +- **OperationIndex** The mitigation operation index (in the event of a failure). +- **OperationName** The friendly name of the mitigation operation (in the event of failure). +- **RegistryCount** The number of registry operations in the mitigation entry. +- **RelatedCV** The correlation vector value generated from the latest USO scan. +- **Result** The HResult of this operation. +- **ScenarioId** The update agent scenario ID. +- **SessionId** Unique value for each update attempt. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). +- **UpdateId** Unique ID for each Update. + + +### Update360Telemetry.UpdateAgentMitigationSummary + +This event sends a summary of all the update agent mitigations available for an this update. + +The following fields are available: + +- **Applicable** The count of mitigations that were applicable to the system and scenario. +- **Failed** The count of mitigations that failed. +- **FlightId** Unique identifier for each flight. +- **MitigationScenario** The update scenario in which the mitigations were attempted. +- **ObjectId** The unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest USO scan. +- **Result** The HResult of this operation. +- **ScenarioId** The update agent scenario ID. +- **SessionId** Unique value for each update attempt. +- **TimeDiff** The amount of time spent performing all mitigations (in 100-nanosecond increments). +- **Total** Total number of mitigations that were available. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentModeStart + +This event sends data for the start of each mode during the process of updating Windows via the new Unified Update Platform (UUP) scenario. Applicable to both PCs and Mobile. + +The following fields are available: + +- **FlightId** Unique ID for each flight. +- **Mode** Indicates the mode that has started. +- **ObjectId** Unique value for each Update Agent mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. +- **Version** Version of update + + +### Update360Telemetry.UpdateAgentOneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **Count** The count of applicable OneSettings for the device. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **Parameters** The set of name value pair parameters sent to OneSettings to determine if there are any applicable OneSettings. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. +- **Values** The values sent back to the device, if applicable. + + +### Update360Telemetry.UpdateAgentPostRebootResult + +This event collects information for both Mobile and Desktop regarding the post reboot phase of the new Unified Update Platform (UUP) update scenario. + +The following fields are available: + +- **ErrorCode** The error code returned for the current post reboot phase. +- **FlightId** The specific ID of the Windows Insider build the device is getting. +- **ObjectId** Unique value for each Update Agent mode. +- **PostRebootResult** Indicates the Hresult. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **ScenarioId** The scenario ID. Example: MobileUpdate, DesktopLanguagePack, DesktopFeatureOnDemand, or DesktopDriverUpdate. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. + + +### Update360Telemetry.UpdateAgentReboot + +This event sends information indicating that a request has been sent to suspend an update. + +The following fields are available: + +- **ErrorCode** The error code returned for the current reboot. +- **FlightId** Unique ID for the flight (test instance version). +- **ObjectId** The unique value for each Update Agent mode. +- **RelatedCV** The correlation vector value generated from the latest USO (Update Service Orchestrator) scan. +- **Result** The HResult of the event. +- **ScenarioId** The ID of the update scenario. +- **SessionId** The ID of the update attempt. +- **UpdateId** The ID of the update. + + +### Update360Telemetry.UpdateAgentSetupBoxLaunch + +The UpdateAgent_SetupBoxLaunch event sends data for the launching of the setup box when updating Windows via the new Unified Update Platform (UUP) scenario. This event is only applicable to PCs. + +The following fields are available: + +- **ContainsExpressPackage** Indicates whether the download package is express. +- **FlightId** Unique ID for each flight. +- **FreeSpace** Free space on OS partition. +- **InstallCount** Number of install attempts using the same sandbox. +- **ObjectId** Unique value for each Update Agent mode. +- **Quiet** Indicates whether setup is running in quiet mode. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **SandboxSize** Size of the sandbox. +- **ScenarioId** Indicates the update scenario. +- **SessionId** Unique value for each update attempt. +- **SetupMode** Mode of setup to be launched. +- **UpdateId** Unique ID for each Update. +- **UserSession** Indicates whether install was invoked by user actions. + + ## Upgrade events ### FacilitatorTelemetry.DCATDownload @@ -4364,6 +5019,197 @@ The following fields are available: - **Version** Version of Facilitator. +### Setup360Telemetry.Downlevel + +This event sends data indicating that the device has started the downlevel phase of the upgrade, to help keep Windows up-to-date and secure. + +The following fields are available: + +- **ClientId** If using Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, the default value is Media360, but it can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the downlevel OS. +- **HostOsSkuName** The operating system edition which is running Setup360 instance (downlevel OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe. +- **ReportId** In the Windows Update scenario, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** More detailed information about phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360 (for example, Predownload, Install, Finalize, Rollback). +- **Setup360Result** The result of Setup360 (HRESULT used to diagnose errors). +- **Setup360Scenario** The Setup360 flow type (for example, Boot, Media, Update, MCT). +- **SetupVersionBuildNumber** The build number of Setup360 (build number of the target OS). +- **State** Exit state of given Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** An ID that uniquely identifies a group of events. +- **WuId** This is the Windows Update Client ID. In the Windows Update scenario, this is the same as the clientId. + + +### Setup360Telemetry.Finalize + +This event sends data indicating that the device has started the phase of finalizing the upgrade, to help keep Windows up-to-date and secure. + +The following fields are available: + +- **ClientId** With Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe +- **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** More detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** ID that uniquely identifies a group of events. +- **WuId** This is the Windows Update Client ID. With Windows Update, this is the same as the clientId. + + +### Setup360Telemetry.OsUninstall + +This event sends data regarding OS updates and upgrades from Windows 7, Windows 8, and Windows 10. Specifically, it indicates the outcome of an OS uninstall. + +The following fields are available: + +- **ClientId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running the Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe. +- **ReportId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase or action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** Exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled +- **TestId** ID that uniquely identifies a group of events. +- **WuId** Windows Update client ID. + + +### Setup360Telemetry.PostRebootInstall + +This event sends data indicating that the device has invoked the post reboot install phase of the upgrade, to help keep Windows up-to-date. + +The following fields are available: + +- **ClientId** With Windows Update, this is the Windows Update client ID that is passed to Setup. In Media setup, the default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe. +- **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** Extension of result - more granular information about phase/action when the potential failure happened +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback +- **Setup360Result** The result of Setup360. This is an HRESULT error code that's used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled +- **TestId** A string to uniquely identify a group of events. +- **WuId** This is the Windows Update Client ID. With Windows Update, this is the same as ClientId. + + +### Setup360Telemetry.PreDownloadQuiet + +This event sends data indicating that the device has invoked the predownload quiet phase of the upgrade, to help keep Windows up to date. + +The following fields are available: + +- **ClientId** Using Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running Setup360 instance (previous operating system). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe. +- **ReportId** Using Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, canceled. +- **TestId** ID that uniquely identifies a group of events. +- **WuId** This is the Windows Update Client ID. Using Windows Update, this is the same as the clientId. + + +### Setup360Telemetry.PreDownloadUX + +This event sends data regarding OS Updates and Upgrades from Windows 7.X, Windows 8.X, Windows 10 and RS, to help keep Windows up-to-date and secure. Specifically, it indicates the outcome of the PredownloadUX portion of the update process. + +The following fields are available: + +- **ClientId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** In the WU scenario, this will be the WU client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **HostOSBuildNumber** The build number of the previous operating system. +- **HostOsSkuName** The OS edition which is running the Setup360 instance (previous operating system). +- **InstanceId** Unique GUID that identifies each instance of setuphost.exe. +- **ReportId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of the target OS). +- **State** The exit state of the Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** ID that uniquely identifies a group of events. +- **WuId** Windows Update client ID. + + +### Setup360Telemetry.PreInstallQuiet + +This event sends data indicating that the device has invoked the preinstall quiet phase of the upgrade, to help keep Windows up-to-date. + +The following fields are available: + +- **ClientId** With Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe +- **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used to diagnose errors. +- **Setup360Scenario** Setup360 flow type (Boot, Media, Update, MCT). +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** A string to uniquely identify a group of events. +- **WuId** This is the Windows Update Client ID. With Windows Update, this is the same as the clientId. + + +### Setup360Telemetry.PreInstallUX + +This event sends data regarding OS updates and upgrades from Windows 7, Windows 8, and Windows 10, to help keep Windows up-to-date. Specifically, it indicates the outcome of the PreinstallUX portion of the update process. + +The following fields are available: + +- **ClientId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running the Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe. +- **ReportId** For Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that is used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type, Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** A string to uniquely identify a group of events. +- **WuId** Windows Update client ID. + + +### Setup360Telemetry.Setup360 + +This event sends data about OS deployment scenarios, to help keep Windows up-to-date. + +The following fields are available: + +- **ClientId** Retrieves the upgrade ID. In the Windows Update scenario, this will be the Windows Update client ID. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FieldName** Retrieves the data point. +- **FlightData** Specifies a unique identifier for each group of Windows Insider builds. +- **InstanceId** Retrieves a unique identifier for each instance of a setup session. +- **ReportId** Retrieves the report ID. +- **ScenarioId** Retrieves the deployment scenario. +- **Value** Retrieves the value associated with the corresponding FieldName. + + ### Setup360Telemetry.Setup360DynamicUpdate This event helps determine whether the device received supplemental content during an operating system upgrade, to help keep Windows up-to-date. @@ -4381,6 +5227,89 @@ The following fields are available: - **TargetBuild** Build of the target OS. +### Setup360Telemetry.Setup360MitigationResult + +This event sends data indicating the result of each setup mitigation. + +The following fields are available: + +- **Applicable** TRUE if the mitigation is applicable for the current update. +- **ClientId** In the Windows Update scenario, this is the client ID passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **CommandCount** The number of command operations in the mitigation entry. +- **CustomCount** The number of custom operations in the mitigation entry. +- **FileCount** The number of file operations in the mitigation entry. +- **FlightData** The unique identifier for each flight (test release). +- **Index** The mitigation index of this particular mitigation. +- **InstanceId** The GUID (Globally Unique ID) that identifies each instance of SetupHost.EXE. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **Name** The friendly (descriptive) name of the mitigation. +- **OperationIndex** The mitigation operation index (in the event of a failure). +- **OperationName** The friendly (descriptive) name of the mitigation operation (in the event of failure). +- **RegistryCount** The number of registry operations in the mitigation entry. +- **ReportId** In the Windows Update scenario, the Update ID that is passed to Setup. In media setup, this is the GUID for the INSTALL.WIM. +- **Result** HResult of this operation. +- **ScenarioId** Setup360 flow type. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). + + +### Setup360Telemetry.Setup360MitigationSummary + +This event sends a summary of all the setup mitigations available for this update. + +The following fields are available: + +- **Applicable** The count of mitigations that were applicable to the system and scenario. +- **ClientId** The Windows Update client ID passed to Setup. +- **Failed** The count of mitigations that failed. +- **FlightData** The unique identifier for each flight (test release). +- **InstanceId** The GUID (Globally Unique ID) that identifies each instance of SetupHost.EXE. +- **MitigationScenario** The update scenario in which the mitigations were attempted. +- **ReportId** In the Windows Update scenario, the Update ID that is passed to Setup. In media setup, this is the GUID for the INSTALL.WIM. +- **Result** HResult of this operation. +- **ScenarioId** Setup360 flow type. +- **TimeDiff** The amount of time spent performing the mitigation (in 100-nanosecond increments). +- **Total** The total number of mitigations that were available. + + +### Setup360Telemetry.Setup360OneSettings + +This event collects information regarding the post reboot phase of the new UUP (Unified Update Platform) update scenario; which is leveraged by both Mobile and Desktop. + +The following fields are available: + +- **ClientId** The Windows Update client ID passed to Setup. +- **Count** The count of applicable OneSettings for the device. +- **FlightData** The ID for the flight (test instance version). +- **InstanceId** The GUID (Globally-Unique ID) that identifies each instance of setuphost.exe. +- **Parameters** The set of name value pair parameters sent to OneSettings to determine if there are any applicable OneSettings. +- **ReportId** The Update ID passed to Setup. +- **Result** The HResult of the event error. +- **ScenarioId** The update scenario ID. +- **Values** Values sent back to the device, if applicable. + + +### Setup360Telemetry.UnexpectedEvent + +This event sends data indicating that the device has invoked the unexpected event phase of the upgrade, to help keep Windows up to date. + +The following fields are available: + +- **ClientId** With Windows Update, this will be the Windows Update client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **FlightData** Unique value that identifies the flight. +- **HostOSBuildNumber** The build number of the previous OS. +- **HostOsSkuName** The OS edition which is running Setup360 instance (previous OS). +- **InstanceId** A unique GUID that identifies each instance of setuphost.exe +- **ReportId** With Windows Update, this is the updateID that is passed to Setup. In media setup, this is the GUID for the install.wim. +- **Setup360Extended** Detailed information about the phase/action when the potential failure occurred. +- **Setup360Mode** The phase of Setup360. Example: Predownload, Install, Finalize, Rollback. +- **Setup360Result** The result of Setup360. This is an HRESULT error code that can be used used to diagnose errors. +- **Setup360Scenario** The Setup360 flow type. Example: Boot, Media, Update, MCT. +- **SetupVersionBuildNumber** The build number of Setup360 (build number of target OS). +- **State** The exit state of a Setup360 run. Example: succeeded, failed, blocked, cancelled. +- **TestId** A string to uniquely identify a group of events. +- **WuId** This is the Windows Update Client ID. With Windows Update, this is the same as the clientId. + + ## Windows as a Service diagnostic events ### Microsoft.Windows.WaaSMedic.SummaryEvent @@ -4407,6 +5336,50 @@ The following fields are available: - **waasMedicRunMode** Indicates whether this was a background regular run of the medic or whether it was triggered by a user launching Windows Update Troubleshooter. +## Windows Error Reporting events + +### Microsoft.Windows.WERVertical.OSCrash + +This event sends binary data from the collected dump file wheneveer a bug check occurs, to help keep Windows up to date. The is the OneCore version of this event. + +The following fields are available: + +- **BootId** Uint32 identifying the boot number for this device. +- **BugCheckCode** Uint64 "bugcheck code" that identifies a proximate cause of the bug check. +- **BugCheckParameter1** Uint64 parameter providing additional information. +- **BugCheckParameter2** Uint64 parameter providing additional information. +- **BugCheckParameter3** Uint64 parameter providing additional information. +- **BugCheckParameter4** Uint64 parameter providing additional information. +- **DumpFileAttributes** Codes that identify the type of data contained in the dump file +- **DumpFileSize** Size of the dump file +- **IsValidDumpFile** True if the dump file is valid for the debugger, false otherwise +- **ReportId** WER Report Id associated with this bug check (used for finding the corresponding report archive in Watson). + + +## Windows Update Delivery Optimization events + +### Microsoft.OSG.DU.DeliveryOptClient.FailureCdnCommunication + +This event represents a failure to download from a CDN with Delivery Optimization. It's used to understand and address problems regarding downloads. + +The following fields are available: + +- **cdnHeaders** The HTTP headers returned by the CDN. +- **cdnIp** The IP address of the CDN. +- **cdnUrl** The URL of the CDN. +- **errorCode** The error code that was returned. +- **errorCount** The total number of times this error code was seen since the last FailureCdnCommunication event was encountered. +- **experimentId** When running a test, this is used to correlate with other events that are part of the same test. +- **fileID** The ID of the file being downloaded. +- **httpStatusCode** The HTTP status code returned by the CDN. +- **isHeadRequest** The type of HTTP request that was sent to the CDN. Example: HEAD or GET +- **peerType** The type of peer (LAN, Group, Internet, CDN, Cache Host, etc.). +- **requestOffset** The byte offset within the file in the sent request. +- **requestSize** The size of the range requested from the CDN. +- **responseSize** The size of the range response received from the CDN. +- **sessionID** The ID of the download session. + + ## Windows Update events ### Microsoft.Windows.Update.DeviceUpdateAgent.UpdateAgentAnalysisSummary @@ -4525,6 +5498,32 @@ The following fields are available: - **updateId** Unique identifier for each update. +### Microsoft.Windows.Update.NotificationUx.DialogNotificationToBeDisplayed + +This event indicates that a notification dialog box is about to be displayed to user. + +The following fields are available: + +- **AcceptAutoModeLimit** The maximum number of days for a device to automatically enter Auto Reboot mode. +- **AutoToAutoFailedLimit** The maximum number of days for Auto Reboot mode to fail before the RebootFailed dialog box is shown. +- **DaysSinceRebootRequired** Number of days since restart was required. +- **DeviceLocalTime** The local time on the device sending the event. +- **EngagedModeLimit** The number of days to switch between DTE dialog boxes. +- **EnterAutoModeLimit** The maximum number of days for a device to enter Auto Reboot mode. +- **ETag** OneSettings versioning value. +- **IsForcedEnabled** Indicates whether Forced Reboot mode is enabled for this device. +- **IsUltimateForcedEnabled** Indicates whether Ultimate Forced Reboot mode is enabled for this device. +- **NotificationUxState** Indicates which dialog box is shown. +- **NotificationUxStateString** Indicates which dialog box is shown. +- **RebootUxState** Indicates the state of the restart (Engaged, Auto, Forced, or UltimateForced). +- **RebootUxStateString** Indicates the state of the restart (Engaged, Auto, Forced, or UltimateForced). +- **RebootVersion** Version of DTE. +- **SkipToAutoModeLimit** The minimum length of time to pass in restart pending before a device can be put into auto mode. +- **UpdateId** The ID of the update that is pending restart to finish installation. +- **UpdateRevision** The revision of the update that is pending restart to finish installation. +- **UtcTime** The time the dialog box notification will be displayed, in Coordinated Universal Time. + + ### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootFirstReminderDialog This event indicates that the Enhanced Engaged restart "first reminder" dialog box was displayed.. @@ -4541,6 +5540,65 @@ The following fields are available: - **UtcTime** The time that the dialog box was displayed, in Coordinated Universal Time. +### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootRebootFailedDialog + +This event indicates that the Enhanced Engaged restart "restart failed" dialog box was displayed. + +The following fields are available: + +- **DeviceLocalTime** The local time of the device sending the event. +- **ETag** OneSettings versioning value. +- **ExitCode** Indicates how users exited the dialog box. +- **RebootVersion** Version of DTE. +- **UpdateId** The ID of the update that is pending restart to finish installation. +- **UpdateRevision** The revision of the update that is pending restart to finish installation. +- **UserResponseString** The option that the user chose in this dialog box. +- **UtcTime** The time that the dialog box was displayed, in Coordinated Universal Time. + + +### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootRebootImminentDialog + +This event indicates that the Enhanced Engaged restart "restart imminent" dialog box was displayed. + +The following fields are available: + +- **DeviceLocalTime** Time the dialog box was shown on the local device. +- **ETag** OneSettings versioning value. +- **ExitCode** Indicates how users exited the dialog box. +- **RebootVersion** Version of DTE. +- **UpdateId** The ID of the update that is pending restart to finish installation. +- **UpdateRevision** The revision of the update that is pending restart to finish installation. +- **UserResponseString** The option that user chose in this dialog box. +- **UtcTime** The time that dialog box was displayed, in Coordinated Universal Time. + + +### Microsoft.Windows.Update.NotificationUx.EnhancedEngagedRebootReminderDialog + +This event returns information relating to the Enhanced Engaged reboot reminder dialog that was displayed. + +The following fields are available: + +- **DeviceLocalTime** The time at which the reboot reminder dialog was shown (based on the local device time settings). +- **ETag** The OneSettings versioning value. +- **ExitCode** Indicates how users exited the reboot reminder dialog box. +- **RebootVersion** The version of the DTE (Direct-to-Engaged). +- **UpdateId** The ID of the update that is waiting for reboot to finish installation. +- **UpdateRevision** The revision of the update that is waiting for reboot to finish installation. +- **UserResponseString** The option chosen by the user on the reboot dialog box. +- **UtcTime** The time at which the reboot reminder dialog was shown (in UTC). + + +### Microsoft.Windows.Update.Orchestrator.ActivityRestrictedByActiveHoursPolicy + +This event indicates a policy is present that may restrict update activity to outside of active hours. + +The following fields are available: + +- **activeHoursEnd** The end of the active hours window. +- **activeHoursStart** The start of the active hours window. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.BlockedByBatteryLevel This event indicates that Windows Update activity was blocked due to low battery level. @@ -4553,6 +5611,22 @@ The following fields are available: - **wuDeviceid** Device ID. +### Microsoft.Windows.Update.Orchestrator.DisplayNeeded + +This event indicates the reboot was postponed due to needing a display. + +The following fields are available: + +- **displayNeededReason** Reason the display is needed. +- **eventScenario** Indicates the purpose of sending this event - whether because the software distribution just started checking for content, or whether it was cancelled, succeeded, or failed. +- **rebootOutsideOfActiveHours** Indicates whether the reboot was to occur outside of active hours. +- **revisionNumber** Revision number of the update. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated. +- **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue + + ### Microsoft.Windows.Update.Orchestrator.DTUCompletedWhenWuFlightPendingCommit This event indicates that DTU completed installation of the electronic software delivery (ESD), when Windows Update was already in Pending Commit phase of the feature update. @@ -4592,6 +5666,162 @@ The following fields are available: - **wuDeviceid** The Windows Update device ID. +### Microsoft.Windows.Update.Orchestrator.FlightInapplicable + +This event indicates that the update is no longer applicable to this device. + +The following fields are available: + +- **EventPublishedTime** Time when this event was generated. +- **flightID** The specific ID of the Windows Insider build. +- **revisionNumber** Update revision number. +- **updateId** Unique Windows Update ID. +- **updateScenarioType** Update session type. +- **UpdateStatus** Last status of update. +- **UUPFallBackConfigured** Indicates whether UUP fallback is configured. +- **wuDeviceid** Unique Device ID. + + +### Microsoft.Windows.Update.Orchestrator.InitiatingReboot + +This event sends data about an Orchestrator requesting a reboot from power management to help keep Windows up to date. + +The following fields are available: + +- **EventPublishedTime** Time of the event. +- **flightID** Unique update ID +- **interactive** Indicates whether the reboot initiation stage of the update process was entered as a result of user action. +- **rebootOutsideOfActiveHours** Indicates whether the reboot was to occur outside of active hours. +- **revisionNumber** Revision number of the update. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.Install + +This event sends launch data for a Windows Update install to help keep Windows up to date. + +The following fields are available: + +- **batteryLevel** Current battery capacity in mWh or percentage left. +- **deferReason** Reason for install not completing. +- **errorCode** The error code reppresented by a hexadecimal value. +- **eventScenario** End-to-end update session ID. +- **flightID** Unique update ID +- **flightUpdate** Indicates whether the update is a Windows Insider build. +- **ForcedRebootReminderSet** A boolean value that indicates if a forced reboot will happen for updates. +- **IgnoreReasonsForRestart** The reason(s) a Postpone Restart command was ignored. +- **installCommitfailedtime** The time it took for a reboot to happen but the upgrade failed to progress. +- **installRebootinitiatetime** The time it took for a reboot to be attempted. +- **interactive** Identifies if session is user initiated. +- **minutesToCommit** The time it took to install updates. +- **rebootOutsideOfActiveHours** Indicates whether a reboot is scheduled outside of active hours. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.LowUptimes + +This event is sent if a device is identified as not having sufficient uptime to reliably process updates in order to keep secure. + +The following fields are available: + +- **availableHistoryMinutes** The number of minutes available from the local machine activity history. +- **isLowUptimeMachine** Is the machine considered low uptime or not. +- **lowUptimeMinHours** Current setting for the minimum number of hours needed to not be considered low uptime. +- **lowUptimeQueryDays** Current setting for the number of recent days to check for uptime. +- **uptimeMinutes** Number of minutes of uptime measured. +- **wuDeviceid** Unique device ID for Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.OneshotUpdateDetection + +This event returns data about scans initiated through settings UI, or background scans that are urgent; to help keep Windows up to date. + +The following fields are available: + +- **externalOneshotupdate** The last time a task-triggered scan was completed. +- **interactiveOneshotupdate** The last time an interactive scan was completed. +- **oldlastscanOneshotupdate** The last time a scan completed successfully. +- **wuDeviceid** The Windows Update Device GUID (Globally-Unique ID). + + +### Microsoft.Windows.Update.Orchestrator.PreShutdownStart + +This event is generated before the shutdown and commit operations. + +The following fields are available: + +- **wuDeviceid** The unique identifier of a specific device, used to identify how many devices are encountering success or a particular issue. + + +### Microsoft.Windows.Update.Orchestrator.RebootFailed + +This event sends information about whether an update required a reboot and reasons for failure, to help keep Windows up to date. + +The following fields are available: + +- **batteryLevel** Current battery capacity in mWh or percentage left. +- **deferReason** Reason for install not completing. +- **EventPublishedTime** The time that the reboot failure occurred. +- **flightID** Unique update ID. +- **rebootOutsideOfActiveHours** Indicates whether a reboot was scheduled outside of active hours. +- **RebootResults** Hex code indicating failure reason. Typically, we expect this to be a specific USO generated hex code. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.RefreshSettings + +This event sends basic data about the version of upgrade settings applied to the system to help keep Windows up to date. + +The following fields are available: + +- **errorCode** Hex code for the error message, to allow lookup of the specific error. +- **settingsDownloadTime** Timestamp of the last attempt to acquire settings. +- **settingsETag** Version identifier for the settings. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.RestoreRebootTask + +This event sends data indicating that a reboot task is missing unexpectedly on a device and the task is restored because a reboot is still required, to help keep Windows up to date. + +The following fields are available: + +- **RebootTaskMissedTimeUTC** The time when the reboot task was scheduled to run, but did not. +- **RebootTaskNextTimeUTC** The time when the reboot task was rescheduled for. +- **RebootTaskRestoredTime** Time at which this reboot task was restored. +- **wuDeviceid** Device ID for the device on which the reboot is restored. + + +### Microsoft.Windows.Update.Orchestrator.ScanTriggered + +This event indicates that Update Orchestrator has started a scan operation. + +The following fields are available: + +- **errorCode** The error code returned for the current scan operation. +- **eventScenario** Indicates the purpose of sending this event. +- **interactive** Indicates whether the scan is interactive. +- **isDTUEnabled** Indicates whether DTU (internal abbreviation for Direct Feature Update) channel is enabled on the client system. +- **isScanPastSla** Indicates whether the SLA has elapsed for scanning. +- **isScanPastTriggerSla** Indicates whether the SLA has elapsed for triggering a scan. +- **minutesOverScanSla** Indicates how many minutes the scan exceeded the scan SLA. +- **minutesOverScanTriggerSla** Indicates how many minutes the scan exceeded the scan trigger SLA. +- **scanTriggerSource** Indicates what caused the scan. +- **updateScenarioType** The update session type. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.StickUpdate This event is sent when the update service orchestrator (USO) indicates the update cannot be superseded by a newer update. @@ -4602,6 +5832,22 @@ The following fields are available: - **wuDeviceid** Unique device ID controlled by the software distribution client. +### Microsoft.Windows.Update.Orchestrator.SystemNeeded + +This event sends data about why a device is unable to reboot, to help keep Windows up to date. + +The following fields are available: + +- **eventScenario** End-to-end update session ID. +- **rebootOutsideOfActiveHours** Indicates whether a reboot is scheduled outside of active hours. +- **revisionNumber** Update revision number. +- **systemNeededReason** List of apps or tasks that are preventing the system from restarting. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + ### Microsoft.Windows.Update.Orchestrator.TerminatedByActiveHours This event indicates that update activity was stopped due to active hours starting. @@ -4636,6 +5882,111 @@ The following fields are available: - **wuDeviceid** Unique device ID controlled by the software distribution client. +### Microsoft.Windows.Update.Orchestrator.UpdatePolicyCacheRefresh + +This event sends data on whether Update Management Policies were enabled on a device, to help keep Windows up to date. + +The following fields are available: + +- **configuredPoliciescount** Number of policies on the device. +- **policiesNamevaluesource** Policy name and source of policy (group policy, MDM or flight). +- **policyCacherefreshtime** Time when policy cache was refreshed. +- **updateInstalluxsetting** Indicates whether a user has set policies via a user experience option. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.UpdateRebootRequired + +This event sends data about whether an update required a reboot to help keep Windows up to date. + +The following fields are available: + +- **flightID** The specific ID of the Windows Insider build the device is getting. +- **interactive** Indicates whether the reboot initiation stage of the update process was entered as a result of user action. +- **revisionNumber** Update revision number. +- **updateId** Update ID. +- **updateScenarioType** The update session type. +- **uxRebootstate** Indicates the exact state of the user experience at the time the required reboot was initiated to ensure the correct update process and experience is provided to keep Windows up to date. +- **wuDeviceid** Unique device ID used by Windows Update. + + +### Microsoft.Windows.Update.Orchestrator.updateSettingsFlushFailed + +This event sends information about an update that encountered problems and was not able to complete. + +The following fields are available: + +- **errorCode** The error code encountered. +- **wuDeviceid** The ID of the device in which the error occurred. + + +### Microsoft.Windows.Update.Orchestrator.UsoSession + +This event represents the state of the USO service at start and completion. + +The following fields are available: + +- **activeSessionid** A unique session GUID. +- **eventScenario** The state of the update action. +- **interactive** Is the USO session interactive? +- **lastErrorcode** The last error that was encountered. +- **lastErrorstate** The state of the update when the last error was encountered. +- **sessionType** A GUID that refers to the update session type. +- **updateScenarioType** A descriptive update session type. +- **wuDeviceid** The Windows Update device GUID. + + +### Microsoft.Windows.Update.Ux.MusNotification.EnhancedEngagedRebootUxState + +This event sends information about the configuration of Enhanced Direct-to-Engaged (eDTE), which includes values for the timing of how eDTE will progress through each phase of the reboot. + +The following fields are available: + +- **AcceptAutoModeLimit** The maximum number of days for a device to automatically enter Auto Reboot mode. +- **AutoToAutoFailedLimit** The maximum number of days for Auto Reboot mode to fail before a Reboot Failed dialog will be shown. +- **DeviceLocalTime** The date and time (based on the device date/time settings) the reboot mode changed. +- **EngagedModeLimit** The number of days to switch between DTE (Direct-to-Engaged) dialogs. +- **EnterAutoModeLimit** The maximum number of days a device can enter Auto Reboot mode. +- **ETag** The Entity Tag that represents the OneSettings version. +- **IsForcedEnabled** Identifies whether Forced Reboot mode is enabled for the device. +- **IsUltimateForcedEnabled** Identifies whether Ultimate Forced Reboot mode is enabled for the device. +- **OldestUpdateLocalTime** The date and time (based on the device date/time settings) this update’s reboot began pending. +- **RebootUxState** Identifies the reboot state: Engaged, Auto, Forced, UltimateForced. +- **RebootVersion** The version of the DTE (Direct-to-Engaged). +- **SkipToAutoModeLimit** The maximum number of days to switch to start while in Auto Reboot mode. +- **UpdateId** The ID of the update that is waiting for reboot to finish installation. +- **UpdateRevision** The revision of the update that is waiting for reboot to finish installation. + + +### Microsoft.Windows.Update.Ux.MusNotification.RebootNoLongerNeeded + +This event is sent when a security update has successfully completed. + +The following fields are available: + +- **UtcTime** The Coordinated Universal Time that the restart was no longer needed. + + +### Microsoft.Windows.Update.Ux.MusNotification.RebootScheduled + +This event sends basic information about scheduling an update-related reboot, to get security updates and to help keep Windows up-to-date. + +The following fields are available: + +- **activeHoursApplicable** Indicates whether Active Hours applies on this device. +- **IsEnhancedEngagedReboot** Indicates whether Enhanced reboot was enabled. +- **rebootArgument** Argument for the reboot task. It also represents specific reboot related action. +- **rebootOutsideOfActiveHours** True, if a reboot is scheduled outside of active hours. False, otherwise. +- **rebootScheduledByUser** True, if a reboot is scheduled by user. False, if a reboot is scheduled automatically. +- **rebootState** Current state of the reboot. +- **rebootUsingSmartScheduler** Indicates that the reboot is scheduled by SmartScheduler. +- **revisionNumber** Revision number of the OS. +- **scheduledRebootTime** Time scheduled for the reboot. +- **scheduledRebootTimeInUTC** Time scheduled for the reboot, in UTC. +- **updateId** Identifies which update is being scheduled. +- **wuDeviceid** Unique DeviceID + + ### Microsoft.Windows.Update.Ux.MusNotification.UxBrokerScheduledTask This event is sent when MUSE broker schedules a task. @@ -4646,4 +5997,73 @@ The following fields are available: - **TaskName** Name of the task. +### Microsoft.Windows.Update.Ux.MusUpdateSettings.RebootScheduled + +This event sends basic information for scheduling a device restart to install security updates. It's used to help keep Windows up to date. + +The following fields are available: + +- **activeHoursApplicable** Is the restart respecting Active Hours? +- **IsEnhancedEngagedReboot** TRUE if the reboot path is Enhanced Engaged. Otherwise, FALSE. +- **rebootArgument** The arguments that are passed to the OS for the restarted. +- **rebootOutsideOfActiveHours** Was the restart scheduled outside of Active Hours? +- **rebootScheduledByUser** Was the restart scheduled by the user? If the value is false, the restart was scheduled by the device. +- **rebootState** The state of the restart. +- **rebootUsingSmartScheduler** TRUE if the reboot should be performed by the Smart Scheduler. Otherwise, FALSE. +- **revisionNumber** The revision number of the OS being updated. +- **scheduledRebootTime** Time of the scheduled reboot +- **scheduledRebootTimeInUTC** Time of the scheduled restart, in Coordinated Universal Time. +- **updateId** The Windows Update device GUID. +- **wuDeviceid** The Windows Update device GUID. + + +## Windows Update mitigation events + +### Mitigation360Telemetry.MitigationCustom.CleanupSafeOsImages + +This event sends data specific to the CleanupSafeOsImages mitigation used for OS Updates. + +The following fields are available: + +- **ClientId** Unique identifier for each flight. +- **FlightId** Unique GUID that identifies each instances of setuphost.exe. +- **InstanceId** The update scenario in which the mitigation was executed. +- **MitigationScenario** Number of mounted images. +- **MountedImageCount** Number of mounted images that were under %systemdrive%\$Windows.~BT. +- **MountedImageMatches** Number of mounted images under %systemdrive%\$Windows.~BT that could not be removed. +- **MountedImagesFailed** Number of mounted images under %systemdrive%\$Windows.~BT that were successfully removed. +- **MountedImagesRemoved** Number of mounted images that were not under %systemdrive%\$Windows.~BT. +- **MountedImagesSkipped** Correlation vector value generated from the latest USO scan. +- **RelatedCV** HResult of this operation. +- **Result** ID indicating the mitigation scenario. +- **ScenarioId** Indicates whether the scenario was supported. +- **ScenarioSupported** Unique value for each update attempt. +- **SessionId** Unique ID for each Update. +- **UpdateId** Unique ID for the Windows Update client. +- **WuId** Unique ID for the Windows Update client. + + +### Mitigation360Telemetry.MitigationCustom.FixupEditionId + +This event sends data specific to the FixupEditionId mitigation used for OS updates. + +The following fields are available: + +- **ClientId** In the WU scenario, this will be the WU client ID that is passed to Setup. In Media setup, default value is Media360, but can be overwritten by the caller to a unique value. +- **EditionIdUpdated** Determine whether EditionId was changed. +- **FlightId** Unique identifier for each flight. +- **InstanceId** Unique GUID that identifies each instances of setuphost.exe. +- **MitigationScenario** The update scenario in which the mitigation was executed. +- **ProductEditionId** Expected EditionId value based on GetProductInfo. +- **ProductType** Value returned by GetProductInfo. +- **RegistryEditionId** EditionId value in the registry. +- **RelatedCV** Correlation vector value generated from the latest USO scan. +- **Result** HResult of this operation. +- **ScenarioId** ID indicating the mitigation scenario. +- **ScenarioSupported** Indicates whether the scenario was supported. +- **SessionId** Unique value for each update attempt. +- **UpdateId** Unique ID for each update. +- **WuId** Unique ID for the Windows Update client. + +