From 0745d48db2db44d0b246552efc98e52c13bb8118 Mon Sep 17 00:00:00 2001 From: admingit Date: Fri, 26 Jan 2024 14:17:34 +0100 Subject: [PATCH] add_app --- deployment-apps/winwatch/README | 49 ++++ deployment-apps/winwatch/bin/README | 1 + deployment-apps/winwatch/default/app.conf | 24 ++ .../winwatch/default/data/ui/nav/default.xml | 5 + .../winwatch/default/data/ui/views/README | 1 + .../default/data/ui/views/admin_activity.xml | 272 ++++++++++++++++++ .../winwatch/default/data/ui/views/logons.xml | 262 +++++++++++++++++ .../winwatch/metadata/default.meta | 30 ++ deployment-apps/winwatch/splunkbase.manifest | 98 +++++++ deployment-apps/winwatch/static/appIcon.png | Bin 0 -> 1947 bytes .../winwatch/static/appIconAlt.png | Bin 0 -> 1947 bytes .../winwatch/static/appIconAlt_2x.png | Bin 0 -> 4265 bytes .../winwatch/static/appIcon_2x.png | Bin 0 -> 3078 bytes deployment-apps/winwatch/static/appLogo.png | Bin 0 -> 6503 bytes .../winwatch/static/appLogo_2x.png | Bin 0 -> 15900 bytes .../winwatch/static/application.css | 1 + 16 files changed, 743 insertions(+) create mode 100644 deployment-apps/winwatch/README create mode 100755 deployment-apps/winwatch/bin/README create mode 100644 deployment-apps/winwatch/default/app.conf create mode 100644 deployment-apps/winwatch/default/data/ui/nav/default.xml create mode 100644 deployment-apps/winwatch/default/data/ui/views/README create mode 100644 deployment-apps/winwatch/default/data/ui/views/admin_activity.xml create mode 100644 deployment-apps/winwatch/default/data/ui/views/logons.xml create mode 100644 deployment-apps/winwatch/metadata/default.meta create mode 100644 deployment-apps/winwatch/splunkbase.manifest create mode 100644 deployment-apps/winwatch/static/appIcon.png create mode 100644 deployment-apps/winwatch/static/appIconAlt.png create mode 100644 deployment-apps/winwatch/static/appIconAlt_2x.png create mode 100644 deployment-apps/winwatch/static/appIcon_2x.png create mode 100644 deployment-apps/winwatch/static/appLogo.png create mode 100644 deployment-apps/winwatch/static/appLogo_2x.png create mode 100644 deployment-apps/winwatch/static/application.css diff --git a/deployment-apps/winwatch/README b/deployment-apps/winwatch/README new file mode 100644 index 00000000..60827857 --- /dev/null +++ b/deployment-apps/winwatch/README @@ -0,0 +1,49 @@ +App Name: winwatch +Version: 1.1 +Author: Securonix Anjaneyulu Bollimuntha + +Installation and Configuration document: +Support Contact:anjirhl@gmail.com + +Description of the App: +The WinWatch App for Splunk provides an Executive and Operational view of key metrics and trends derived using windows security event log. + +Prerequisites: + +• Splunk Enterprise / light / cloud server. +• Log data with source type : WinEventLog:Security + +Install the WinWatch App +The WinWatch app has been provided as a “.tar.gz” file. Please follow the standard app import process in Splunk through the “Manage Apps” menu to install the WinWatch App. + + +>> Click on the “Manage Apps” from Apps drop down and Choose “Install app from file” option. + +<< Dashboard Details >> + +User Logon Metrics / Trends + +The initial three panels provide day-day comparison of below items (last 48hrs). + + No of servers people accessed. + No of unique accounts used. + Total logon count. + Total logon trend. + Interactive logon trend + Non-Interactive logon trend (network,batch ..etc). + +Management Activities + +The first four panels in the dashboard provides the below details. +- Count of accounts created count (Day-Day comparison) +- Count of accounts Removed count (Day-Day comparison) +- Count of accounts Modified (Day-Day comparison) +- Trend over time (Account created / removed) for the selected timeframe. +- Activity trend of accounts being enabled and disabled. +- Activity trend of accounts being locked and unlocked. +- Activity trend of firewall rule changes. +- Activity trend of domain and audit policy changes. + + + + diff --git a/deployment-apps/winwatch/bin/README b/deployment-apps/winwatch/bin/README new file mode 100755 index 00000000..76199287 --- /dev/null +++ b/deployment-apps/winwatch/bin/README @@ -0,0 +1 @@ +This is where you put any scripts you want to add to this app. diff --git a/deployment-apps/winwatch/default/app.conf b/deployment-apps/winwatch/default/app.conf new file mode 100644 index 00000000..dc607e07 --- /dev/null +++ b/deployment-apps/winwatch/default/app.conf @@ -0,0 +1,24 @@ +# +# Splunk app configuration file +# +[id] +name = winwatch +version = 1.1.1 + +[package] +id = winwatch +version = 1.1.1 + +[install] +is_configured = 0 + +[ui] +is_visible = 1 +label = WinWatch + +[launcher] +author = Anjaneyulu Bollimuntha +description = The win-watch App for Splunk provides an Executive and Operational view of key metrics and trends derived using windows security event log. + +version = 1.1.1 + diff --git a/deployment-apps/winwatch/default/data/ui/nav/default.xml b/deployment-apps/winwatch/default/data/ui/nav/default.xml new file mode 100644 index 00000000..49d4e7cd --- /dev/null +++ b/deployment-apps/winwatch/default/data/ui/nav/default.xml @@ -0,0 +1,5 @@ + diff --git a/deployment-apps/winwatch/default/data/ui/views/README b/deployment-apps/winwatch/default/data/ui/views/README new file mode 100644 index 00000000..d518a88b --- /dev/null +++ b/deployment-apps/winwatch/default/data/ui/views/README @@ -0,0 +1 @@ +Add all the views that your app needs in this directory diff --git a/deployment-apps/winwatch/default/data/ui/views/admin_activity.xml b/deployment-apps/winwatch/default/data/ui/views/admin_activity.xml new file mode 100644 index 00000000..2c149b7a --- /dev/null +++ b/deployment-apps/winwatch/default/data/ui/views/admin_activity.xml @@ -0,0 +1,272 @@ +
+ + + index="$idx$" sourcetype="$st$" |timechart span=1d count(eval(EventCode="626" OR EventCode="627" OR EventCode="628" OR EventCode="629" OR EventCode="632" OR EventCode="633" OR EventCode="636" OR EventCode="637" OR EventCode="644" OR EventCode="650" OR EventCode="651" OR EventCode="655" OR EventCode="656" OR EventCode="660" OR EventCode="661" OR EventCode="665" OR EventCode="666" OR EventCode="671" OR EventCode="685" OR EventCode="4722" OR EventCode="4723" OR EventCode="4724" OR EventCode="4725" OR EventCode="4728" OR EventCode="4729" OR EventCode="4732" OR EventCode="4733" OR EventCode="4740" OR EventCode="4746" OR EventCode="4747" OR EventCode="4751" OR EventCode="4752" OR EventCode="4756" OR EventCode="4757" OR EventCode="4761" OR EventCode="4762" OR EventCode="4767" OR EventCode="4781")) AS acc_modified,count(eval(EventCode="624" OR EventCode="645" OR EventCode="4720" OR EventCode="4741")) AS acc_created,count(eval(EventCode="630" OR EventCode="647" OR EventCode="4726" OR EventCode="4743")) AS acc_removed,count(eval(EventCode="626" OR EventCode="4722")) AS acc_enabled,count(eval(EventCode="629" OR EventCode="4725")) AS acc_disabled,count(eval(EventCode="644" OR EventCode="4740")) AS acc_locked,count(eval(EventCode="671" OR EventCode="4767")) AS acc_unlocked + $field1.earliest$ + $field1.latest$ + +
+ + + All + * + index + index + + | eventcount summarize=false index=* | dedup index | fields index + + + + + WinEventLog:Security + WinEventLog:Security + sourcetype + sourcetype + + |metadata type=sourcetypes|table sourcetype|search NOT sourcetype="WinEventLog:Security" + + + + + + -7d@h + now + + +
+ + + + Accounts Created + + |table _time acc_created |sort _time + + + + + + + + + + + + + + + + + + + + Accounts Removed + + |table _time acc_removed |sort _time + + + + + + + + + + + + + + + + + + + + Accounts Modified + + |table _time acc_modified |sort _time + + + + + + + + + + + + + + + + + + + + + + Accounts Creation / Deletion Trend + + |table _time acc_created acc_removed|timechart sum(acc_created) AS acc_created,sum(acc_removed) AS acc_removed + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Accounts Enable / Disable - Trend + + |timechart sum(acc_disabled) AS acc_disabled,sum(acc_enabled) AS acc_enabled + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Accounts Locked / Unlocked - Trend + + |timechart sum(acc_locked) AS acc_locked,sum(acc_unlocked) AS acc_unlocked + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Firewall Rule Changes + + index="$idx$" sourcetype="$st$" (EventCode="4947" OR EventCode="4946" OR EventCode="4948") |timechart count + $field1.earliest$ + $field1.latest$ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Domain / Audit Policy Changes + + index="$idx$" sourcetype="$st$" (EventCode=612 OR EventCode=4715 OR EventCode="643" OR EventCode="4739") |timechart count + -7d@h + now + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/deployment-apps/winwatch/default/data/ui/views/logons.xml b/deployment-apps/winwatch/default/data/ui/views/logons.xml new file mode 100644 index 00000000..855396b7 --- /dev/null +++ b/deployment-apps/winwatch/default/data/ui/views/logons.xml @@ -0,0 +1,262 @@ +
+ + index="$idx$" sourcetype="$st$" (EventCode=528 OR EventCode=540 OR EventCode=552 OR EventCode=4648 OR EventCode=4624 OR EventCode=4774) Logon_Type=* earliest=-48h|eval Account_Name=if(isnull(Account_Name),User,Account_Name)|eval Account_Name=mvindex(Account_Name,1)|search NOT (Account_Name="*$" OR Account_Name="ANONYMOUS LOGON" OR Account_Name="SYSTEM" OR Account_Name="LOCAL SERVICE" OR Account_Name="NETWORK SERVICE" OR Account_Name="-")|timechart span=1d dc(ComputerName) AS server_count,dc(Account_Name) AS user_count,count AS logon_count + + + index="$idx$" sourcetype="$st$" (EventCode=528 OR EventCode=540 OR EventCode=552 OR EventCode=4648 OR EventCode=4624 OR EventCode=4774) Logon_Type=*|eval Account_Name=if(isnull(Account_Name),User,Account_Name)|eval Account_Name=mvindex(Account_Name,1)|search NOT (Account_Name="*$" OR Account_Name="ANONYMOUS LOGON" OR Account_Name="SYSTEM" OR Account_Name="LOCAL SERVICE" OR Account_Name="NETWORK SERVICE" OR Account_Name="-")|eval login_method=Logon_Type|replace 0 with "System Only",2 with "Interactive Logon",3 with "Network",4 with "Batch",5 with "Service",6 with "Proxy logon",7 with "Unlock",8 with "Network Clear Text",9 with "New Credentials",10 with "Remote Interactive",11 with "Cached Interactive",12 with "CachedRemoteInteractive",13 with "CachedUnlock" in login_method|timechart span=1d count by login_method|addtotals + $field1.earliest$ + $field1.latest$ + + + index="$idx$" sourcetype="$st$" (EventCode=528 OR EventCode=540 OR EventCode=552 OR EventCode=4648 OR EventCode=4624 OR EventCode=4774) Logon_Type=*|eval Account_Name=if(isnull(Account_Name),User,Account_Name)|eval Account_Name=mvindex(Account_Name,1)|search NOT (Account_Name="*$" OR Account_Name="ANONYMOUS LOGON" OR Account_Name="SYSTEM" OR Account_Name="LOCAL SERVICE" OR Account_Name="NETWORK SERVICE" OR Account_Name="-")|stats count by Account_Name,ComputerName,Source_Network_Address|search NOT (Source_Network_Address="-") + $field1.earliest$ + $field1.latest$ + + +
+ + + All + * + index + index + + | eventcount summarize=false index=* | dedup index | fields index + + + + + WinEventLog:Security + WinEventLog:Security + sourcetype + sourcetype + + |metadata type=sourcetypes|table sourcetype|search NOT sourcetype="WinEventLog:Security" + + + + + + -30d@d + now + + +
+ + + + SERVER COUNT + + |table _time server_count |timechart span=1d sum(server_count) AS count + + + + + + + + + + + + + + + + + + + + USER COUNT + + |table _time user_count |timechart span=1d sum(user_count) AS count + + + + + + + + + + + + + + + + + + + + LOGON COUNT + + |table _time logon_count |timechart span=1d sum(logon_count) AS count + + + + + + + + + + + + + + + + + + + + + Logon Trend + + Overall Trend + + |fields _time Total + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Interactive Logons + + |fields _time "System Only","Interactive Logon",Unlock,"Remote Interactive","Cached Interactive","CachedRemoteInteractive" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Non-Interactive Logon + + |fields - Total "System Only","Interactive Logon",Unlock,"Remote Interactive","Cached Interactive","CachedRemoteInteractive" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Top 5 - Active Accounts + + |stats sum(count) AS count by Account_Name|sort - count |head 5 + + + + + + + Top 5 - Active Hosts + + |stats sum(count) AS count by ComputerName|sort - count |head 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Top 5 - Active Network Sources + + |stats sum(count) AS count by Source_Network_Address|sort - count |head 5 + + + + + +
diff --git a/deployment-apps/winwatch/metadata/default.meta b/deployment-apps/winwatch/metadata/default.meta new file mode 100644 index 00000000..25019abc --- /dev/null +++ b/deployment-apps/winwatch/metadata/default.meta @@ -0,0 +1,30 @@ + +# Application-level permissions + +[] +access = read : [ * ], write : [ admin, power ] + +### EVENT TYPES + +[eventtypes] +export = system + + +### PROPS + +[props] +export = system + + +### TRANSFORMS + +[transforms] +export = system + + +### LOOKUPS + +[lookups] +export = system + + diff --git a/deployment-apps/winwatch/splunkbase.manifest b/deployment-apps/winwatch/splunkbase.manifest new file mode 100644 index 00000000..a9ebdd6c --- /dev/null +++ b/deployment-apps/winwatch/splunkbase.manifest @@ -0,0 +1,98 @@ +{ + "version": "1.0", + "date": "2022-11-14T16:44:39.683478381Z", + "hashAlgorithm": "SHA-256", + "app": { + "id": 3180, + "version": "1.1.1", + "files": [ + { + "path": "static/appLogo_2x.png", + "hash": "aa240f3546bbd04536948e6f4832deea593263ad7c6f552ef5bd7e82024bdec5" + }, + { + "path": "static/appIconAlt_2x.png", + "hash": "b832f7960c4708f3163aa6865c2fd62a58a3849953040b81b15fb73e83f5b2b9" + }, + { + "path": "static/appIcon_2x.png", + "hash": "394b5469c877721ee8aac1c459530dda8a2a6d6164d961ad5373892456bc1bc9" + }, + { + "path": "static/appIconAlt.png", + "hash": "947ffa5050835e40d7e704b12a9f0eee35afac620ffa5e7bb5e608909ae4bf70" + }, + { + "path": "static/appIcon.png", + "hash": "ed6f17bf3592e0ef89b71aa58d7dcb7aece696a47a9b74fdeb5a15cecdc83dc8" + }, + { + "path": "static/appLogo.png", + "hash": "1b1b0b25d20ed6e3829c2e79e0b61b825280d2c9211dccd9e2712d4b7516cab9" + }, + { + "path": "static/application.css", + "hash": "3e87f005948ee9459254e03ab58a08ff68f70049a5f8bf0f8e36e4458d489343" + }, + { + "path": "default/app.conf", + "hash": "278365f0e195b39e4139b476bafb61c6dcae133b2b0dd52e4702236b8f9cc2e5" + }, + { + "path": "default/data/ui/nav/default.xml", + "hash": "9f72267997034d03931cbbdc2de31aa8a46080f244e8f051d587283258c3f7e7" + }, + { + "path": "default/data/ui/views/logons.xml", + "hash": "a85a984232c14db6e242420f7e470c1f2b819a699182bbb93dbf0411a44f29f5" + }, + { + "path": "default/data/ui/views/admin_activity.xml", + "hash": "c672bf228668357f348b93b56a2cde875cba5142688abc3057ef57bfc6308c16" + }, + { + "path": "default/data/ui/views/README", + "hash": "f75000f12510d242fc99decea9e7e5a46a1a8bef910d3d6f741797816b35034d" + }, + { + "path": "metadata/default.meta", + "hash": "9002ef6a926c74a75a4817e36c19f7c039b44b1cee7ecb9a39dcb59add002f41" + }, + { + "path": "bin/README", + "hash": "eaaa0ae11a829d5492934487b9628ba841d2678941afc4d979dee5ff19b7adbb" + }, + { + "path": "README", + "hash": "c06016197c4fe86061794310a5e979fd25f4ce53d35dccd1dc5ad552ed991a3a" + } + ] + }, + "products": [ + { + "platform": "splunk", + "product": "enterprise", + "versions": [ + "7.0", + "7.1", + "7.2", + "7.3", + "8.0", + "8.1", + "8.2", + "9.0" + ], + "architectures": [ + "x86_64" + ], + "operatingSystems": [ + "windows", + "linux", + "macos", + "freebsd", + "solaris", + "aix" + ] + } + ] +} \ No newline at end of file diff --git a/deployment-apps/winwatch/static/appIcon.png b/deployment-apps/winwatch/static/appIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..6ac88daf74b1777f58443c6804c80e62caeadf32 GIT binary patch literal 1947 zcmV;M2W0q(P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x010qNS#tmY4#NNd4#NS*Z>VGd000McNliru;06K<6B1$C zQ!)Sm28u~UK~zY`)t5_*Tt^j#zf*M|{hIC`k7w-h`vHk;V*zn6CPEQ}1fw_+iy#Cm z9tsN(2!ygh2-_$NAV8#Skce3D3`huzIA8~mYyyNRh9rtKmKn#%jGyDz%y>MH?!Na{ z9Twd^?{RD|kT|N? zm*W*9)W?~)Ol_FaQ;c4)gM;B)F9l~$nepoyS8_#<0XzY9_x%!JraM?L5P(G-l4bVniRi=&(Mt!Slg9`n;ylhFvItn$%ATo*zh3|7 z7qwa@RqBFQ)PW$;dol;Ay-{%dmHeTfQSKD) z7P{K5m!D%|B-^xut`dRZ1+RDyiZa7Y)1&!CJzhaDLJm5Nr1kvarz=l>UK({R6vQu* zDk*>Xk^Ir$xt^ZJJ)dmsd^p{>ON%99gMtU&zKNE5dl;~gs!UDU^T(sUBe@rT8NG45 zao0|)1Sk6_cCY|X_;Z#&@KoX1?*|tz5(L?bRoVKx-0Ce^?`GGzMyo3{j5RI*h)B|q zWKzaQ%-E&i(wp}Df5L%dcIdR!65m;=fACWiUw$I~+i%O?ebo1^k}O*QcF++SbMbWi z>K~(j{~;KB-Hr@NLlFp38({)pEMhFE)M_TFt4pN$`h>VjHQVss^p0JP4}2oq_#Sd5 zI(DSG{{i2*%O_8NMpluG+C7Gj>jrdT_QsdhHN#ELn=S3k?)$gPC?6 z>vWR{Mq1xhDTqDOAHRIi4!#xC25t8)FSWDQkBgeWFWG%mUBH5!+Ep{m7B zU+wYbmA>4q9l2os6^hJyZWIUViEMDDuk!6Z_R<+7B#L~o=qugXs;z!&uP;_z?|a)Ucwt zyoLqBmTVBlm$^#FxC`*x}Pwi!vbx_@^eUQ)&?Z4GX<%VX^X*| zn!v!c4lo93!^{m~O27F|=QlnSzIp^w%9es9Fc`u67Pj+vTJT~pAZA8*-HHX{kM1iy z^Te{fA4%?fUvl@J#+Lhh?`B`@q7Y+2A%zkeg)=2HPo{Z?w=?AA9A<%!8oUdpKD|G^ zb9dpu<5Ay{==i^ixySvoo^;h#-?PqFSGekG;tpRdnSnt76HtcCU=7+%PX--mK1NkB zltMyqb}kqi=Y`*U0>Nj&!0XX#&xig02+#DH(F>AzvbF^F_)<{NnTUnekB> zyQ)zx80rrPUJMlU{B+4pf@T{r%fA8S~`>HKny>H(^A&peN@+Vf%nyk`=o zl-V?wDIp|TOIX#E6ui!fsv<54FyMWwx^Bjr&$P_6Dn{B}3~0+iXE$OqMPf|-0%b$$ z-cDf6iiO#6PQh?=Sx1TlUIH@+>0d z1QfM-Kqg0tASYP84Ke*+{9_X=Wf7yj0000bbVXQnWMOn=I%9HWVRU5xGB7bXEip1J zF)~y#GCDFbIx#gXFg7|cFkgy!qyPW_C3HntbYx+4WjbwdWNBu305UK!HZ3qVEif`v hF)=zZIXW>oD=;=XFfhc0PG0~3002ovPDHLkV1i`Xgkk^y literal 0 HcmV?d00001 diff --git a/deployment-apps/winwatch/static/appIconAlt.png b/deployment-apps/winwatch/static/appIconAlt.png new file mode 100644 index 0000000000000000000000000000000000000000..3d3ba9693771fb030d036c172703284ccf7d14db GIT binary patch literal 1947 zcmV;M2W0q(P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x010qNS#tmY4#NNd4#NS*Z>VGd000McNliru;06K<6CP-6 z9~l4u28u~UK~zY`)t5_*Tt^j#zf*M|{hIC`k7w-h`vHk;V*zn6CPEQ}1fw_+iy#Cm z9tsN(2!ygh2-_$NAV8#Skce3D3`huzIA8~mYyyNRh9rtKmKn#%jGyDz%y>MH?!Na{ z9Twd^?{RD|kT|N? zm*W*9)W?~)Ol_FaQ;c4)gM;B)F9l~$nepoyS8_#<0XzY9_x%!JraM?L5P(G-l4bVniRi=&(Mt!Slg9`n;ylhFvItn$%ATo*zh3|7 z7qwa@RqBFQ)PW$;dol;Ay-{%dmHeTfQSKD) z7P{K5m!D%|B-^xut`dRZ1+RDyiZa7Y)1&!CJzhaDLJm5Nr1kvarz=l>UK({R6vQu* zDk*>Xk^Ir$xt^ZJJ)dmsd^p{>ON%99gMtU&zKNE5dl;~gs!UDU^T(sUBe@rT8NG45 zao0|)1Sk6_cCY|X_;Z#&@KoX1?*|tz5(L?bRoVKx-0Ce^?`GGzMyo3{j5RI*h)B|q zWKzaQ%-E&i(wp}Df5L%dcIdR!65m;=fACWiUw$I~+i%O?ebo1^k}O*QcF++SbMbWi z>K~(j{~;KB-Hr@NLlFp38({)pEMhFE)M_TFt4pN$`h>VjHQVss^p0JP4}2oq_#Sd5 zI(DSG{{i2*%O_8NMpluG+C7Gj>jrdT_QsdhHN#ELn=S3k?)$gPC?6 z>vWR{Mq1xhDTqDOAHRIi4!#xC25t8)FSWDQkBgeWFWG%mUBH5!+Ep{m7B zU+wYbmA>4q9l2os6^hJyZWIUViEMDDuk!6Z_R<+7B#L~o=qugXs;z!&uP;_z?|a)Ucwt zyoLqBmTVBlm$^#FxC`*x}Pwi!vbx_@^eUQ)&?Z4GX<%VX^X*| zn!v!c4lo93!^{m~O27F|=QlnSzIp^w%9es9Fc`u67Pj+vTJT~pAZA8*-HHX{kM1iy z^Te{fA4%?fUvl@J#+Lhh?`B`@q7Y+2A%zkeg)=2HPo{Z?w=?AA9A<%!8oUdpKD|G^ zb9dpu<5Ay{==i^ixySvoo^;h#-?PqFSGekG;tpRdnSnt76HtcCU=7+%PX--mK1NkB zltMyqb}kqi=Y`*U0>Nj&!0XX#&xig02+#DH(F>AzvbF^F_)<{NnTUnekB> zyQ)zx80rrPUJMlU{B+4pf@T{r%fA8S~`>HKny>H(^A&peN@+Vf%nyk`=o zl-V?wDIp|TOIX#E6ui!fsv<54FyMWwx^Bjr&$P_6Dn{B}3~0+iXE$OqMPf|-0%b$$ z-cDf6iiO#6PQh?=Sx1TlUIH@+>0d z1QfM-Kqg0tASYP84Ke*+{9_X=Wf7yj0000bbVXQnWMOn=I%9HWVRU5xGB7bXEip1J zF)~y#GCDFbIx#gXFg7|cFkgy!qyPW_C3HntbYx+4WjbwdWNBu305UK!HZ3qVEif`v hF)=zZIXW{iD=;=XFfg@G2Soq?002ovPDHLkV1mA-gAM=y literal 0 HcmV?d00001 diff --git a/deployment-apps/winwatch/static/appIconAlt_2x.png b/deployment-apps/winwatch/static/appIconAlt_2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a787903cad8cf1bc7c802d4015d3ec5ce6bbb1db GIT binary patch literal 4265 zcmV;a5LWMrP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 LNkvXXu0mjf-9oyI literal 0 HcmV?d00001 diff --git a/deployment-apps/winwatch/static/appIcon_2x.png b/deployment-apps/winwatch/static/appIcon_2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c9656a159cfdddef56517c678f73bf8569ee35 GIT binary patch literal 3078 zcmV+h4EghkP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x010qNS#tmY4#NNd4#NS*Z>VGd000McNliru;06K<6d{pI zq~ibp3iU}uK~!ko&6!(_q}Nf$e^uwZ^mTfAW_I>AYwy}wcH<g-ezYO@VfMM>wI5-U8kzfsj7d~k(t&EB8Yzw=q{Ip0Fv9}(MY4GK5WbXbK=7g3^ovKzLnp(-C;Y=p z<=jWCeZ*?9MGe!`1QZOy1wcW-O$LSp#7wL!`A}9n(ejV=#udGC zIeO;}_wEJVSQcN9q?S|x3Bj1M+HMrv*GSC8< z^k)a3`eOOfPlx8gu`(Wl$3O+yl727d+5;ItFbvEPL6sB|r1X0A&GhBxsxLmPo%cec zrF&9L{&Cf2+VmhdFjU5?@xaIkV1_CY93_46ZySI3yE<47jfUKHZ`?|1^){MzsBKcT1=w z&=d>`KSl-*o{SLi0fa|geEvJ}cmLJb5>&C>#YAw8tP>U&!qOoUB?vwc4714|cz8Srl{UXU;TRHFMmJ&$=T4F6?FH~$bQ8yEM-r8GJo=!;^fD}zN5$lBIXbR z24a{1cL0aGnQA%(O+&{mwj+=cgF=e*H>0<(DGQss7Mv___6USre)NSjtrCTTw2!&(? z-ct-^xT)Eu_`Y`6W%*sV@=nxU(Tx>-_f1{Dta;8Lw}>!*usrry@l#J_U-+V|Z!~`I z%kiZj_}1+1brZg2cyQ>AOVNcNxSyPjuAGl9U(jn8b#q;YLn%NYf+)7gg|tFcx5|uF z>Xz0?YbFYWS`BpsKgy>jB6;qz9D$-QgC1orSx*M*lK0dH%7Vg+#~h)WSal}MEcp2) z|Imla4?SK!a@y}dVU;RCgT|kKrSUg^P%O@iizL`?_J2e$HVu2DRaUP_Z`F0KYi9*a1~;U8ReULBHo`k*UUDRi*DpA5h&aGpOq7^9 zTx@A2%q|v{hRy8vbBC#_WRoYAUFUD7-W)nCGSYTD}!7%*Cp>uIdGe+6q!Y_8QNWzY!eJkLVez< zb+KTGHRi0^vbbv1nzdV2Zs2D^87B4N^Yy@{N%lnkz`t%txy4}h|A+wUrxXOyt{sZ?y7FCX@7%I z;7iIvii{A%z?;YRH4$cYSXGUi{enJ ziAzGYL0q$>Zb`*l%v@ats}ZuhTz*sHy3_l?sEWkv)vtZE{@kC*a24k)u9iz5^K%cA zRxGInaTYnNx2!T_)t1#~L$yY|X-VBA!bM?jUczSeAO19b?Rla|ds+V2FLZwUPr{L7 ztbw~ZXKZ=hbo%j-BJDT=!H55Y!r6ox+P#{-@lATGq1g=aZ2$9L9)9ju$r^YizPXKM zQ{N*hVFoES%K4=v1n~tS5XFKchr%dF9H#$yo6G@GFCmKb>myzzD#d% zZ`pSEy_hsyYj73l(JhO z)pTrdIzB6LlM5(Do=`|AFb|$GFwDh!0<>Zoyx08dZzkuyXRQT%X<(I>1P}h+yU0Ky zEJ)r(ooNInMPV)>u43hc!;Tx;#1IKSy6NdnNXqcwr}EGE1%=p%$J4|x>e70cLwj8m zypi>Ts}6qYH?n8GB;Ar>wu`Okt<{vlTJ`V#I6d=C5@gUT4?ofS(pUT=ACdLWM7ABE zl7U(xQf%zdew(Cex&6=6(u~fTj1n@Dq8uNZl%>@g<)f$k(c^3g!(9Xq4=tqZlm|~F zd`m*9Wf|rlEl)lf4lL5#K3lt+yyKiyLEKt|+?;vtO>(EZNyr+b7DI#(WVlIxNWVg6 zL_7OEcq0)hdXo3BFoy7cDE&12vUjIh+iC-y>|6FJvK$H@4#!z~1EiXp(tl9YF&Y~1kJcOwp%=^-+j5PSl%g?1R zecdk}DIfbpdGb_w_+)wDbeLVF5O$Y5#^f;)tIpyg6v>Brqx1Oy001R)MObuXVRU6WV{&C-bY%cCFflkSF)}SNGE_1$Ix#XjF*z$R zHaajc>i^Et0000bbVXQnWMOn=I&E)cX=Zr001Hg0ssI2SJg$S00004XF*Lt006O% z3;baP0000WV@Og>004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x010qNS#tmY4#NNd4#NS*Z>VGd000McNliru;06K<5Gxh( zi1`2j7*_0nE zwspFusV?8*^36~_7ywggKvYM>NU!WaDEbeI!K0$sPwd#svX=of*x{_aV}ycy7R*$s zxr6CEg47@Z5+DK*7y!TyU^oZ1C=FuxI1X>4oiC`K)#}JT)(V~v zcUH&m6ruL^HV9e0?w;y3_n2ujSTPwQ16b5GdfMjz01_+#1rWqY=)dx0_NlL^W8Iu> zgtNcurJWT3ptcz^M(+JqeDRH_Fk%KANB{()GkBcA3}yh30$HNr;ij+NuDf62Y{OX{ zzY|1+H-0?67=aU0y_H8%?zbN(Uw?1m zq5l>9^xJZH*cA$9#ym6q0z36Q)7I&l+Bw(EI)Dyp?n_~b!Vys%6a$CU@m=bT9qQ0) zVxSjNL<_Gkee_H4Me}E`hvK)O=mao@MY4wd9P41h&XS-cL{f$H*w0SbI}$K4MJ15n zpa3BNz$6rv0fv`7b*MAiWumZ5CSo11pF3qHun9$F2+4jfwYgF4I!j>*>^R6n>bI?9 z5)@Y`uCi1d6!7mPx&(m2BH4tM&q40A(@@ZatSbJ-UzOkcX@BdF{Vh+c16zUvn?*GN zffYbt9k7=HK+aON2*>0A1J>jU4QA%TkqUkYD{-d@f%Q>7Qmt52IoKVS_= zM8Ebv*ECJyPyy)xrKG$y}n8g9s4)n>djUaRg%s{rfaDfI_B+I1#2MH+q9AtJfel~c9S~g z(H_0)XOQa6^(6&n7@%z2cH;s(Q6MJRvUU~A680i%wePj(4`zZ-s!({d{ zTxfL-lg*TKY}+|@#$0a7A^;3fW*ER40FVko)kC!dJ2*fHI28Zu*TQRW10YWJHvHXP zUiZuFXF)`j;c(gQ#gF|p7xFMJ_t>9i|K%^?WdNe2YNlN<{M+BP9i0%+ufEXq)!WR} zIYYnun48uCfQE(||K_7!_v%v}@#pwZST5iEd*u)PAtWQF!b886dGR3*3IHgoB(s(d z|JFabDbqm+Uijz2!~YX-APJkeOylsq4<`$+06`wy+xWn3s&^mj%o)8`NU98nmwl*s z_cuACAt+e!ox*p1_w8cSf=7hS?u?=tr7!=j26V!@Wt@(&&=+q6!Kl*EYF&!*6;$YXHE+F56Om|7W-%k5Ym_S8uvESpTT(JIFx} zaZB+u9+9 zj*>}C=f!r?xu`OvLhM|wH96;Ed2|=Nz~!4w=R!naA)!bN_lo{~qGdV+IOoAJJcz-Q zV^!BtrbZ$?*CGLSDT1+sR8$#~z58s(d8`yd*w&eL#(ced9W&cWoyn}lr~p#JF-Rn{ zm-?H2Ol%=^eEtjg=O!-ln|tRhf~rA21&3>=fIryP3Rown_$6GgTe6F&jMhf z$i?Hen6j`meu=RZ1^^gJ*NP1+H5^zqaF9o_ckD3GIe-44kOWl97fVg~C65 zD)`yc(Zc2N`B!qb*)>i{uR^QKPa-qa^yLr8z9YrE9!M5lii(32Aix5S!9*hDe4~0} zlit0~c61>EENt5h)86TyJOpFn^OhkHC^-lL=itGdb0O9UibK<}$WEIJ12Eu0ZQmkB z`u%Os<{th+wB!~D>An73@Y46$&%rqmQBp-*h4Nrx4hm!wBq4NwBmxl!1t?9G5wCkq zy!72Q3+7xt>AFaFzeMcJ^!cu}0~V>3I3%-|vF9U+T)xe8E<%m@dXUF=sRLWt&w?FQ zM{3cOtYI(1Qd2kx>A}YA=b(HzLzQ939DIKaX_+YrsZtWm?B~+`2T@c(QUwWUAIwNX zkboDkmra#5hU#f!21O-N9N=stk}zGSkP1U(D1aT9-txqdK&C8*4%^0-;yn+Txr-1v zK&0uDV+f+M4rCfjR-U(GwJ7$c5j3utY4fVrecZOp zP)B!Up8Y%5JUzVXzu1-zQS9?}zUXgy0!akz>7F%I30Vd(7C>_D#q8xMDkXC+g#wHN z2@qglr_Q!*UHb6WXu&euHVY<&KfUi&Inu{U!Gm&*VxPBdMey>&P#&D6I84r68ee#W zoif|yn&GS%I;KwS^0uu|hhOJRfgvWU2XMyBT3o&E<7UQ%Vx&*+S`%!1jN+=wJok_B z+~vvQ%TRJiTzb++bm}P+2^I?M;20%P)v%Cb7NiuJWRwg;079m~g>gD#X3y8V*V6DH zXPc2&0H$jJq~iP})431{Qg|Uk0^8ncTc*jAN0K?0LI94TB$dm0*9Nk2bk5bozyB!v z0T}U;YZ|}u5r6A5>}6f1apdl=n*~cyaq+V2qeVBlhDqGo2+I%%-*tz#`S!y9{c2#h2a)Fc^>&UUr)pIBw6Ihr}ZLE<1Bh)BW$QF8|HSM}7}ghgiVXR|=7we+d*t zm%Ll{?f14n&q2e;fBx(6+Pe@CfD|nxgNaIilzHL7>=R!SadnI^6T!k|+eSX|Z7z6V zfH=JVj_|eH8~))FLJS>g{10AiR~OI)_eOr338rl+Wg`nEPqwjCF^Y@_L_qoRg9wp$(B z1(L}H%UK5~CK!pKwVAU3)>0DL$>-Vj`517hIE+|3Z8ql`Q3WavC5w?HzWAE*fBFM< zj!Gx>?)9h{s)22rX(rFM4O7g_1!JaG14D&m_N9;_nR6Mq_6>=l<9h#VWNrC%AE zB?|{wM$w{dS^1Us|M&8(pG6W+@IVHXX62y@lr2gY!zQ`tiqakTi+JIU;bk`$9{Oy{ zXD({^+TH%@N9D1DNMdM0UZS9olgJV0d z?)h2WIpA8RnCbIO$3@6UST{CrW@wm>d3Nf2JE;>%9Tj_C7NwJ{0uCBe@Rtez*rZ^^ z4$eZ>dx4!q#9+0br4_tuwOEf8Ag4s625H zc6_@Fi@_7>aCi2HU-q{=Z8{c&zy2YV047KULArar+P@u2K?qpJ2*NAxu#;w_QF$Cr z!^C3nc-nU*70QU`->8zM*OhO+H@@)Z>`%U$dGXuX=f33%4R+EjGj*(RoFg_*f1p5F&gBVtI2*y^5j6Ujv#OUE9g3C-(*{7 z$>V#}p{=s_ux;x=#9$k^{c-}D#nP3B!wyytHbjhmtN#K?)pZ{Ed0%i!mqH|?_#IYnru{b^7pjf9tbUEm6WXUc(^Q)B;7BXC5+>XHy(PjN3%1 zsX8PogY2u!iU(ECMvAKAZU9IS$6{yzN-;}$v|AqAZMqiJ&?#PYy=|C@1Q3Ea)H_zk zbFYTvD!|a?OLZHhHIV`Uh!d8J{+JVRU+N95dsjJr5ZIY*ocy< zw_}wU>UV`UB(9Dt4CS$(M-s!i@%Tz{2)3MUq2b77n;=z6;smHNz(P`~&wFiUbos3y zKtk`_EQb0xJ9(_JSqO^D{;N+?Wtfs^oYk|co%vJAuvW?3rO5?L5rfJVF?3X(JVNCG zQS7H`5t1@1|6UCDW}p6BGUn7i9|jY-rWW=ynU&wl#^%(B%wUjfZh=$)iIG0Ff3umr z07Qt9bY2Dk2}2U1DD&cX?36jSy$dnh#xC2`g#-Y@gW9`Z3><@>K@^^Wei;HH92Dh~ zQ2vC9X)V?e!5ZDOHd=N|O6%HY+cqFV4Ss?(k3^T=7Pn7B>{tfL`B#GhcJPEavQHg) zjdhT+6Hz~sApxl&C7gZJE-~0ajKj9tM5IoueqdrZAwrXckZ`8)8+RtpU1B;Gh`}S? z_Els;TbQ1*TCSNwC@LeY{W^N3pQ?_s5&%L6=O82pSv!5UojDt#ZVM_2HhhnI50`HL zoNb>+QH94Nu+&uP&prOmO777=rE(G42b{O_rSRH2>y?Mp z+@MLmvB%rGQeO2jJH0E#_HhMm-Mx-X$eG-k*7gWUDxxyv@{=)f=hDAY>b)DNSmGcL z%VRh%NR$V?Z7W?{SA6lcb;qy!hKAR(MwEwZ_BuAn8Uv`&6cVSeZ8|(WazFYrxQUI)3B#tIG+q=iTGk>EK?(q{3|p(A zFqlD#bOf8Q^rI_pHC-2=;wFSxMN}EgJp1=@@MLuP2a<(L(t5?{I*3R{nH67GBLnRD zP@dZNN(y48-h#=1fZD%J44u$>*2hb)pJ4k^P^skgyaeUF-O4SWCcm#K%(0(SM|P^C z-N|`N>k1~YgGXx5R(bLbbzn0>oU#@q&^uoSTL?vLQchR%VCj)bk{K7dhDl>d!I)hU zTtd}Ksu~8g46nR{3(fMxK2_`&Q5nvn#_So8z9{yy-%@`6eQw$`gbq@e^XL1oJ}&!u zCk#%b#yMeg)ab9uPMt?Ba-{De)Lfh$Dj`Zh)k2Ii2!>Kr35gvDs8&$|l_w_3kWg`2 zW@E=*p!)Wy16$%H@2b&(^rZ$~_fJ94dtae)$SO#kn;Aao*Eh;zdszqLs&}J)Q=jMQ z^gH%nW2>aJaZD&G4eFjX$-Jc#1|XYAsehRA>-*?&OqTE|`n?8NXf zQ5kRzQvkri`ICnJ$B$f7d&(Qe%&Cr?Y>`yPW}cvW!zZdYeNw)$zv+wbRtI0B>M& zsX7b>*rw-KLe~L`0fOUN!UiaiqNqf1833$>W8#?NQhhI2_pD8cYb~h*z^uDphL;sX zNApD)ZD z&i_(DJw;2sUhR{s%#4dICb=E$d;Y{A! z`J%UFC0Zmhgn-Z@^v<<<_eKtKWMY5K_u&`~8a|;(BZ`96-z68ea*z*Rd`NHIz%3eCLPj8~xYd_O_US$AIp2_f z^mCcVzX>8VCqVr0ZS@n<{JYK!}qi*taFrWoA!4r@KMP$Rw zs{bQOgVn3=bdx*AfOm8Rkz`i=qbLqSX|RLTqSWtg`3a1q*vjLFGAka+J@u736;Qfo zjX2rQ6v)ATZ_D$Ahd-^3cEii0yH1FQ<7_ek!^FZ=5sgBO5=h)R0jD^50w zQrTboWbW}VQe1_UdiQ!HnhfjL*XJMkBQ8Pt0=7asn7fBUL>2Strw4h8EU6TQbMO2qJh-u+7c2Y;M><^fiD z3KP9^L+*!PkOOZ(=^7yw)e-;Ir$m1*RU$DmppNeI*FBa0-XE(I``FKc+28!MxBYq1 zcR~ygije`?dsy#!C0O@F?$P^m&wYcOg$^h#>)q>EHc`3izp^6#=ohFm1nuiR8xT4; zrF%Bye()zWseMZAupLsF8S~=#*Cul=OJ*)|tsP?#$vNaj_OZXpKXRYxTwq&ga=yhj zw!6kDTxfOqNw#?!xk}?#Z<7PPgMav3vfwh5Cz31>sdDpuSEwWVYG*Gsw5KFQ5~f`* z&Tx>2kabe+s9J=OweA@xzZUZ**j-o}C1@Pv>fZ{At1vO7f=$@VLTLanF~wC#4Qrsh z32hj)2A!}3r2&FX*vpI^tP)YR2%t6~NS@jsLjumEvlSB7KuAcHF3lP!o&Gxhl-Jen z2g4+&wau^t2trU;go)FiXxAXOHcn8e=XipW2uYOAN(ZccFyIVD6-WhVA>_XT$$iPT zO*uNg0000bbVXQnWMOn=I%9HWVRU5xGB7bXEip1JF)~y#GCDFbIx#gXFg7|cFkgy! zqyPW_C3HntbYx+4WjbwdWNBu305UK!HZ3qVEif`vF)=zZHaavjD=;=XFfe~zLJ{A^`aV&Q$K31mN?3 zpS*2LKR6mXQ!u_guf| z_DVAx(V>0u*{*PzZoOZ5r73TgOR>;PN##+r8&TY2;$g%mBLtX@p|4Nq8yiHlb;Pf)L0+#$Jq>t3x!J@CN@vkk)9p+$pvr#c=e{ z@>hfOId$FhEC>sb_&f^op<9-V05ENMNziGe@PT9g>ZR=dB#<4R*mC?yC6gb(xj!@` zKTI*V39aO2mZ?7}0(ZVt1%UzbBZiGvhb=Ct7i+c~j~Q{@HJjhy$^bZyB46+V1My=1 zbYc-GH(#-4fd<5@K1W5derHYiA^WQLl7{B2_K!jyMEr$%SFlgs375kMF zz76+kB>5%U7Ab^zVrG`XHy?LD^)Vj%UpUx}uuSqI1OVqd)3=;0nh_!97idGyNo|ld4j>LeOHi6cw+@f^?;0g z1Sv!i-a;;?IY1&vm}Of}N!OWlaTZAdU+bf&jVXenjXK~7F)JcliNkYC75JBFxK+@? zcZyk3G4iki6(X)_xa+^Lg7dxpH^#_)G|-UK3lFWD?4KaHWR?^JX^qs> zjstS|jrdPe47e>FiP)vo%P%jd3|@7jyGsD z{5F`Go`@mCJQ)Z^9rfDF`H1~lmb@b324SObvO5TJ|=W&8gFYDb8O zjBb4@nTy{9Pq_|22Ap1?GW!DhBQMHs_ASVI@xDxZ|eJ{CG|F7 zS@`b{NS|1l%k*84HICknNq?=b3u@(o^DcoryKxoTh&*~iBd!DLpcSty>~ zDXh_U_xUB~8Q0nlQ#JEXXOuz}OtYI?S-Xr0^%@+~u>|bRhn7@?kx}=v;14ZYhG2~T zWfG;f$m`lE5&d;VRp1sp0a4oX!P@zI0KUMR#%92m^s2vK6cpshS^G&;XR*Gj>N+j0VD)Kj;ucT&o#-b0nZDXJR4k8BWo#$& zsY~~3L?%0ynw$!W?C-)z2>jK*c)!eVtYzuwR!R+C6)8ible8c8yYc>V+5XGTu0L-7 zcMD)G&NWz^fAUjgXTNkla{qZg+v;<=;hcpU*3gDF)wbwtk$g2ozv>+Or+=c`G0Yl? zn&)Q)3+riZ{rJ27ETh(`3f5EvU`CIMuC+RS=U6LrU*>TewDSy)t`P|XvNCE?GLiXB zdevM1Z+bgw+t=(;Nl5eQs+TedNBFLG$3*uxv4o+t{Ta3F5c1PY;*99Br_&ne6VxA$ zq?9A0(xkJlw4O&`$Gc#_rRq;y;cL2*7#*s!p6zzG*HK}i`1&uvy?NIMBK0I7QOSH&-W4R7VAvgEz`_a>7KO~J4#J4rm*jHq^g}JVR$qL?er%3 zx4(0U#Pko#$-#4_Qc7q2oFM5PQA-J*@{$XpFpE_C2L76gKOenX4qos8&!Tvt^*4A2 zN-gKLKaWFwFcgs?Jdpqx&AgcOt^-M#N>$cTbi$rAffSt1l0}L(yL?P&V5|8CW%9$_ zYe>w=!6_>TS@{8MAbwlg4>j34bDYTj?PHNX3u0}&TeQds+!I!M!d}N2ViBxb+BBGF0yH*rXbS*A_Fat}~09rPlDTJcsi@E@7tp!zTr@UZsEFW~?w$J|wdp4LHH9+VZv2|{3x zlxC8!Vf81~j-0=T3zY8r{WBF$_T9Kbwir3k)*LHR#QGW;L3@5|79fHyCc4yKbFq}& z3);Fh6nv}Vd+hRfLthF|S3pxyFX0J}9sRFBU<|8|K%#&vQifn(4Z%<Z2P9+1+ zaQWm_J(v7U<>2t^9oqs%L&oY0EW)J#0na@au;b6)zezSh^_6nI5gr2vgwpRC9}Z#UgwIwqMC5UHm| z*DKu0Dk9+*oz?JEXLELvxqdu6FK*y1w4>Oshq&kzZ21Rz1C;?(9p~S?a+7qhjnm{Nr|d`)6f z_PF0kp`pWoWNK(cSR~_Ji?!_`%4f~(>7$GpB^H#(7x16V?z4DKG{20jkO!@wsOt3X zaRzq|ACGfx4k@OLSWsfzwr43b;@X3u#53dTXyq4}SSU!6TZqdbnBJU^%@ zp2qP-w43b(4_p1&x}HavFGINz(%%oHPNNLB;VMBkRO=~fZ+$LLt zTUiVt){?rc4kX8%^Oar@7x*g0eRN_{F)3zkGQ2RTpFshX-Z*03v;4*8Sg+x%kjUI2 zUwC#Y#!agz`fMx$jl(7aOV+1`V3T44q{uV(^5@28)ymGXfV)<2t|JozHw|Cjp81av zc~hGjPnXzEJPxe9;b~N~cM6sKHyw@3ltV-@Fxi;2d+(4NaQu1UelGq+UCn92-J!N? z7ni=uy!ZaAIfL947jB?DHlJGeiRHk`2UakXYzvLRprL!-%YR0*A*HULDs&oN!#)+Q zpHw1ryvn8u32HhaU39BimBQm_)0UWdoAFDsw(J#HHwcxESb0QEPOuxvu2|MS|imx zFpw;=<`q37_h3vEEcoSfo|6rIZ`6XY@@r40_ks`l-(g8$o2k$JlyIpOB)I&5Url2P zCiCuQr5=Np0wL3}@6w4xp%%46G27$F@lXA)s}J}~@3$OfzrcX)_Fv)m8SewEp+GfLL{1I4n(}V%L4N&5lF-0k>OIcE4awol z*Z;M?j`Ut+`{@7f{cWnw9HF&MKA#hdGX_e8Nx{>}9#}5W3Q>fFe}; zUFsC43G9er@O=9Bbfpg}ADX8bR+Cs@2;L#C)+?#wigi?CZz&6QQa!^d{o#~x+nV3K zfWk3w9zYfxO=k3yrE@yKJSGD_^r0sL-5x-ZrYx;h>lb6Y9$XPptP3Bgy;HyDQ@G~V z&F74p^)5s-fHged&e?Gbz6LWiv`J^>Q6(};X>DHSdMd|e;S_)UQqX~*(m6d26fw5x zHA1E!i^wXl`B|>xOg?PElYhdys*IAGZxdD7D8Mhal$h~1q*ApVCa?ghYS)oOC2W9W z7@Oko4M1_tVa}WmTJFPdfLo4Qp6#JyUXPfLe1K{rgEs+lez6>yX){%;m}9)Ew-9b5OAQb(=7{kiZ&kk6bv*>g`*(yy{;MFi&aEZNGhk^>l z@FNEC9 ziM9ia#+#@VIEFM^PRX_xq3FgkeO;#N!`S>&H4`_)v9hp++y;yk=9C-r_MNODSCsl< zlZ!OxdC)f;VA^r&go12npPFjg!;LW1A}0xR!VWt#%Zo9&00d+zy1aVW387>nX~i{W zc!PWeG(n>ncU=c4{i>R-fBb|X9hhk8ku9_B+qmsoI3-7~Xj=GP(*||`hl%M3tt}u3 zQ531lm=Yr>RucZYaTJS6%T->{P4+^rL{jsmn}6hIm4EJv;B5Hs{r$!Rlg*Y}Zf#p?knR=!(1!jlubhAT}-4CyJUvzWnSTs-ZnL*7V4f>j3sKjI&8XaZraL&A) zVeT0W398YGF=X$5>gPY8D~H+mi&oCsmT^{kpa)BbdG~Z>{EqELxHsAfha6Q~2{CpM zNc3$p?a!B!pLL6f`=yG0Z@MKjwhSJ(1iCD zqo4OC=KI-FBBLr#W?W{P+}-zM@`Y~P1C#Ut79g6yT;)qnP%z2ay`m6-!J{{*UuG(j z`Z{p+It=ot^iXZ>NE&eOQH_?5p>KNpEZ`jj7n96|&4oF(UwV#^`@N{JD3z)<@$hhL z!Yiy;xUqZ59dGt=UvUXW+>cr}(C}W4;_Z@cxi=r^Y3U@uOs06YZeJc(Eg2hf@ZkM@2nzu^Ai)Y*TGvi#Wl{)xfni2mVcG`jh&GUxa#6k1G`O4$CR`6GZujBri^11ib0KAMWyz~4#&U{tbvv0}H z$kxPj%ax#p1D%H99NC9qQBjVl$6m3}ab@Lte@1O2LY1&SO$#JHv2#N4O4Ak~PXMh- zIGs&fO(YMH{ILJk0$Sz4T#}ZIGr5Y?j|q5M zy6*h%gvG>{R z0b{?6)|BwkhalD`*~MJ+$Oa2c#dn6%QPiF5dh6?1%K92^vEr?k5SJV?c)#6IXiA4f zR%4HERQph;iZ`i~Dfu2K#^z{>mx^S0lBRNLlX5nKOd1>|Xa_zA?B^LH(zyr7Fibr^ z_B^ye;CCGKG;&<@vQ)cTWMb(I!*druEiDHVg-koX3H7r8zM3UVwGe>!FR=g^Wf4(l zqjwh-s&oO3BfFKL=dbS_TutpIEMs5AETM3Op^GKGW|6+YfWw=DDS{YkW^2NgLV)Cv znCgMiA$kmMO#FDbuI&dRW|0YzR=IMRTjddL940Yg8hqzI?ynGphn!lP&xL@+kJWLW zLOcr|e3E_PgUqgfn&U@U655J5(DhcUwb~veGIbk|3uhw|+CrF-rlR$F- z5Z2YyiiE&IV?Lyl(5UCp*+NVYF3U+A_Y_w;>nZJr(L9N^3>zZAh>%022%6usz!{V* zKpG|okW-xP_+T8QhW=8SN6-;JAxwfqNtNQG!X zq7GF;l@OIWYX+uxUVEQw{)fH4&V4EjNL<7u-BfKO5*Fmy^TZ2cg}Js40&=i6T$)g_ z(N%T$emlA7Mc=$(nPfH>VnQd;zfd|*&EOZ!qx-VE2W!&mo^``uGss5o?&agm{=)v-xx!SWvrS)o`p^375LqX4sJ^V4Q5_AW* z1zDoxp?>Zk_1PN+$1Dx#Xj$swepu7u@K_q5#xa{Mwxyd5@Z(y8w2PyFN(sxd!(68Ol=lzRvb2#&>7A>Unh27?qbZFcy_WTMXBqFut8PsqMHQ6`I zA%>qSk(9PXXPzV2HTi{#3x?V^788_(6Jvy3iM_I6-{|ST=6F7ej)70r;wyeRRs19yT{;gAZaZ~dc7JS(v#*&wiY5l{pUqF0NkIy)4LB&tX^KUSP+WLX2`0&{6Uw< zv&xZMP$!T~z!dgy676(5OJQ)ql4_ZavNxE!93ZzDS4wzu!-~JokPoeW)3MiC-&fKa0l+w_=wmeu^OUh>xB= z)lYg{{mXso_`1%>SHBzys<$FJ+rJ@SsVCMh&;gN$GM{sG{`d`fvyV4f#iOLh`L)=x zTA^$pEiLYpWVgI>Tn(rI90x`-n6)}h<+AVTo>fA^r%!^^K!Mni#%2}2?ZtgO7djbg zy?VRPy}6t!=+Ni-etupXtoeM-^S?W~{(X3U{HX6f1&oRY65W;W4s3sve6FUB>8fOm zbIxJ6Cj0M+ADy0o5SUEhA~lnUnRX5bR(ig6?RS%rA^((UpLy5$xZI}ILTAlXq~+8& zhK=;-Vd8sRzrN0#+#;McL^hF5W#2)Rm4GhXT62I`@}KZI&Gdc=e!})Ql z^I?XxtNN|PDCOM%!M4F3M#zQlwQm~^EkGwWJMcDNFxIo+DSbQVd5WJ}Yp5%%Ob!E0 ze7kl4AV&s>l1?~WbNZYVpHpz~5Iw#v6d{YnUs)#~kKn;$Z0BBR*6ISdqtr?z>KBs} zPbE6^6#;fC(jF%CH@L48@fGsYWihv&Y3Zw?=K(i=?3zAP+5;Y)TJ6zLq`+$Wb{MTJz-S`40l|{f7ch8DZcLF}1mFp78y4B^H~BZ4mV^K;jKv8%z65wXwed zWWSDB=($%M`WcOPGg>lg{6O%QWYZQdEoO|sFdIR3#9767fzp?p;Kn@*x{85z2sZ=a z>-BCJ9mMd{n$z?^LlO-ryM+GZmtO5cFH=wJD;ox{Y#4*+k)skdg|;8Z!da^55v1in z;||FC@M1zsT`YIBd=3Jj0W{9xRfx4-6K_fZOhUex;d@*dTX#FQPXsv;k!+R8O9%v?#n})EDQM)G%)>vCN(L zYC_EEZ#o=h;v!gbtUHF)E?~Kyu}2KA^@}atSi~$zfLmlbFm12m;*WJJX<%3aWCQUS z1WcKBA3MOYi>IQ9vs)2eX~)DVk8JA0kg?NQD>%*T&cN zY}7a_=xKFPUyCFS+WZyZg@f zt0GjwWEx!)pm1W}`(xch)#9U|108wK{HMMpCvbxbi?^KZ4Ph|lYqFt(SY2kh(W^oVA zH|j+*BbcSyMz<2Xir&F7CI@OKOmx;gQPGTdKP5(t6Y3HDg(wUDo z&oIchuP+)?Wg7}%W7hFfze5=(z@n+E&~ehj%*6u~o=;BOGPJ%|)rBL9Qt6h@B?-8q z!Xz-+qoL~$K3HutO8Tg?*H}c@Zx~tv^^<7;6syb7?i<)3^tl%MQd>L4LEV%Lu-AW|vr2kZdDY>8oFJ7v5)#EuQkAoO?DpvPa?j-G8K- zstM|>{0$GXJ!!bm+l6`lzEMw{ZrrYw1&eC))J4FHY&)v6(mr_Jt$7=!G1|k%m0Rbp zV*;OQ?WVAqICc`W51E`R;d~aHZAGg!`*qb9Lj!j?fnw_SBp=@Ww^vF!1E%L zN=u?^04}9151S0`e5dvSkw!ZhW+`*)Ot+Pi!AzVg)+&7FdS$gbR9V#XFKVoI>ej1? z_1N*pjak3iW1lVtp};%%^Y2%EwbYAs;zuIx&L4Gp5RN$nnPAv9@M>^h^3xnrv8ak>e~Wuv`Me+LWIgqUmpd6#HLFHNj{O*wQ1`nVJ+^-!IH-hOrJ z8Rs|s6~!^^QvoGp*~5e11VVC7u<2qiq^4R?C$C#0aCL#95!25jq-^}CnFbN31Jm;( z2skyXCL113+f-R$x1K+A(Xx;R8F;P?Y~*4OP9aDwVLP=iBa&0Z66@5YXfdEVUWB-jdH|$Ci<}L9@lKnZu#`grRW)@w)65Qa&GBbMyYnK_X@!6h&f)7k;M7`MgykN+YK2m&QBco7|#q zOO2JkK z^49Gc#M)qkXwQg9UXDI@HzxHF^?Khc<)!r^jpbOB}IV~2`XT7`3#uxf2|dj zm{xT|mDsbSNBu?LHf>;iG^W}nu~q*u=WrnW`Re`GOIu>b*Y-h6_%QmyQQLKbS%gr= z7oM;L14hE7u)R|_qx&jgsIw;9=X1pVn1#o1dXUT$UqLq^mhGZ5e0uzBo7B+X_Nboq zX=ZCb+yD0aZ|wq$YIe^{?h!DDpOb$568|k3Ka-Iq zAZ%Bc&|m^*!>i9CdO}hNzzu_UzGRgOhenYr?lK4V$eb2DIn~c-KMXql*6k91eQssr z>NR&CGbE13fAv%du@WTK3v8BtA5nO1!OkS6w#I8&rI$D$`W62D>J8KTuf$?Ers`)G zI#*NMgMs^xN%tSHV@M4=+DSA8Oc-j$W6kHy7oGNJnk%z)`V8bjaPf~PLB~5^eg)H| z+Dev~Jjbb-vDGM6+z7EKJbml^;jXW<<Dkg+F1kh434mggI}KmRk5oRIZoFp(A! zxO-cbK@xr(l`EN`U}1sT8BVj%q1I(Asoo`mo?kR0EXp~!2W!qCur|}ERx_*8c*^=c z4O#|uU#i_gF%QwS%PbyF$v>7>N~0##Qp$cLZqcdD^Z^WGooH{BziPjswe`?{Iwf2k zk#jpOP!sRB5^yOL+=oo1AYM;}3RuG^z=&L2UF-0yKfVmQ&GSW|%etQy#EkDvKRPzP z_>bGwGW$%qyVP?}fD4+U=T_+tF6x%3N+{2I8?4hFEZ3RqCjgyav$+l(sIBm2b`+ND zzUa5S^PX-+|{41*PEZZy5j>VtH^=_=-E%jyNZ@u}Gjmz|3oL^tiU@K|5mqoFk3 zTjM1WkX*vI`c%cPy6fK;KOMLmaKsOuZ?K_|@YZFCDxnEST6~Hm5K_3QE;v1d*A@*w z-wMHsNSp{s$zlLnIeG=ZDz4RZ&o4qXQVER=G<&4`t#p`r5CnBeV+4(qiQH!&JNnNV zHuo5!;1El5D}gox^keTga-b_|qfKO}EKKLka9BaDQoB?#Ard>!iDTl{bg^N&Iuy#X z!9>3eW3EE+#zUfp?nKe26#6J5$x4RBBBMcpBMew6dH=jKq#I5~79b7)>mT#jzBev1 z)BCzqx`~qsb)HmY&h`c>kA#JchDxnd%5Fnv{JX@xM!8-R@&A(4jZy66r^(8n;Ubq~ zV4UmAq!9WthQ43*a(bSgNprw|4Ua@^;}|)-p|TkVbHOTY76)A2pbW^KX)-`fx(p^( zqxnC8m2wu|MneT=l52yLfKCUMXj?g((umfGOY>l%*qB5&#>E>kraQ_@A6oj%Yo> z>?}D@Vl8ohMmq)_EDnYJ z!4*URbMmw))U+7MDh55Kt%_x!*! z4zek*k&9bS&Slk)tn0%b1b|p~q)>7pw2OCFd_|)GyM$AyW4Qe9qr$VUj8kgDAiN^_ znu?n{R(W@M*#IiZAJU>(8Gn7CYH8J%^ewrlFfQ&6>MjFv;_rN5Uv8&ti*1AZ5kRN z(qX9MHcIFA5&Zb(L56c+WWId1*BW)b7y8=6qg{lH`PL_VPkc4AO?crW+4btZvP!+K z#VKy{^wZDon^M1QE*n*2Yh0f!e8hzusvVsg_(U2rRJuzvcY5Q)H! z#N4-MEeL2um5fr_Ng z;E-tN2x)eQh01ktlb;fM~I#Pr1#qmB{+$FG(gtXCAZqGU*ATyPK&0? zQ8Bah{0^}cNQUax_$m~LR@+TAxMPt6@8g{-nr5b&&MNU7?G&6uP*S5G`M<&L9qJc+zu>3AtrBIP2@vNtaGM~fr6HqCP*^B zWl2>M+nclLPfT+u(`|S@`dh(IS798oia-TtnQ6T^NZa*Mh=D~V^Q+Oxb84e6!_HIX zHx;by`|)MScTZ%C{!oOyUl}}=FG_8fo7S`QFYCDIO$#AP*Vi&&$DD{6$okt=WxA@A$5uZK33Qj!vxeuqcGlQyuOdnKcC(*Q zzkOy-fb+c3d&J|*1&)P3LFh22J{U5Fo_V!_BGS-}%d=UjI4{pzFw~~22|r^|{}34X zMQpC^6Rh`-%Y(c0&G6}kgp*>?9@T5%I+bI+^F7D^ZDb%T-@Nm7VD zia?SqR!rUdtplxZ0!Mo>bH*}5;KTbdS^}XPD8XwY4jr(d;Nzt*L+|5CnR?h}S(wD( zHGZjoYaqTFq~rUcXSxdM1cPVtperO|9N0zR6)hiHgZAqXM`@Y28pTOU*dRaNdg8kTWqUC~? z8eG!IvB91{OGgYIA5aL4Xa98(2uu~zkKrsHWO?j4Az4x{v^$An04B1%94Fa<>F8k%A zk(CvnbV{)umj->_tcjr??IWIhK#nzy%U;T493`J$qQTUslc(`@OpJa^z(W=Fx#L_- zwd2i}3tLoXc1q;7PvF#aAUI9p*~U}^#k7J~2@*$x`o37&b~b7*3<`WT zNjg(J_0GgQ;^{eBx|uLUL6*=~!%Z6Q?qrEeNiVLT^&V^k3O7clCBQ5VvrN5=`|O@= zU66LN-fi}VA$si;5%Ae&@M)=osYB}we2%y8$-$mThW}l*$rG&G{+IXifS86*&WEW?XVFuse*??|FMijDBJM0 zfk7f6D8ttfO%T3bTAU*}18=t;YUt+nZRTG!7pWWyk=FkE_1j?!KE>QlyGaJYPz5=n zOtSE=jGqQB0UHd%GG$WTU*tu;RLH85qmQdK77Bbt(lzlw4}yzG5&(-#FS*GBij9x% zcMus;lg!-RGUyVbmPU106sWKg8ri!cp?B5d%OtV63 zs@Dgb9anf*A`Jo>j0OvQ-D4Kj_VPgm_&LN8&2D1Uj6tO{0+mwJOPBw2d{(5Kf1YuP zYy0S@Ba*zA?nKp!LJ8UYSkxUMqtpA10^yk5dG&OI;5cSWb4TANXxliL`O3$ShSob~ zyTgVl^X8fMY*hDC_IPs$DlE`hIZqI>%x)4oU(G%WjYO9z2HB2=CtZCI#Uz5eGSdFV zZ-vMrC`=^1!myzVfd=^f)MK+?(Wy^vWyv#crUgYC)szEQy>%3fnFWHuA7fXi`DTjn z6BRHR2z<(r*slu>sp;Rs*m|@mrVCMcOh38AfHEY4dINF=QiHLpM3Bc*r2gYU?U!vD zS=fhI6=)3Qr)1zPn1N;OP*(#kjwM?cR0V?33=sP3Z+;R2VD<2aFe4c}%BA20uA+*~ z7A_si#LF9}%>fWE4?CjBO&KV1fA5W(LyaqbLhTa~_}jC`<0ya9<0Fpt<(IY^YDPng6Gc&hdZQ~}{~nwQaGRS(`u=@yZ@kTr)ltsDaJI8k@6*Apy+sxUa2rGQH# z9)=L?H<8%fsel`_w}`873aV5(8i@1Q%~8i}H*SKeVO}><9Cb8N=-u-&SE!0r;J9Im z3V^9m>gkMEziGz@?{4#5`7l!#5=Uiwe<`?l z@S{624jKjg<_k3hA<$90Cim`+p|eG$#?<;Iulb-9xDj*99n(Wtic{eSFc^$5v+qpb zby~%>w5m_2<+^42e3J$ z@gCcB_EP|3qMt#HF!1pz%3R>&&-rifmOV1-N}aTOKqG}5al5G;!lG&b@(|o|388); zT?3yJm&aqSm!FdOYn}y(G5YesPZB;EPO}oTUe{JJOrriZs(sQgFi1k>yFyn(W-Kd# zM{sGsU11{N;tN!-vsvM0w#2z{E|%!?CkGB7K5aR*|Mk==*px?viCU6A(d!XUl7{dZ z&6nM0#wa0n2bL^&UVwiu*B2o<+V=EU357F~JV>^7QSOPC-m4fNihN>rC@G}BJ9pae zgmNo=M8YqId2cYNf7j1R&D)`sWfeT^+4 zLQG@2#Q{&-ajiyALd3j&&O^Ll-VBl3nr3S=d@M;MC_|mC^NA-kH0bK3R)7;O0cQB` z`pQ}kG#$S-{4YL47)JSpZFo4vJilm$t*BS8AOC?}Wz{gFg);DXQ7BlH;J2TBKafdp zq?E*--JmX`%LNYag@UB@U)||(R2Hq&M;Q>xf2pt{$^oSyM=~+ntv?g3vtU26GbBh0f%2!&DvQ51_C}d zsKjJ30mVzwtTSCeafE=KQkYk1!6mN5VmN!iK|%WmWm{aL2r z@77FtlKFW%^wE@lFX<2vp6K__MaFu9`aGXp5kKi%qF>k045NeK6)lhK;$DrLHi7cNRV(hJ4$C2*v54s=o9c!6MxY2Y^k5Y zy$N5m8VMH*6z80pf_vOb?|!Up=U`qplJQa{*>T-gseLTdj+G}%2RaK8U}a!&APuQ! zFLlqDU$%2THVbP&0*#&w`Sgc!j zzmd0Zy(ym&+cN@Bk2ci;nvcA z!vnSN&JzfPE}SoFy5SXsoWCgDyk$LJr@D9q{9fs!3Rhv}CIyxZS({xhUoisiR zCiHhJYCep_G#OLoMa2Glt*b&dS;2gj$BXFI+X5(cS;i0!Qw;tlCv`+HqG%NcnnajX z;8g+4Nwuy7yB-<`NlUSNy@Vu3*!!TRl?hyB`#_8qWcpNmojG86qJoBl%zXn^PJUDw zHFOHPFzT@BqZ~Kob7C16dcd;TW zu+#tP)pGIIxKC}WS^+{zO8(6vZa#9&#EFLL6J2!(ZMhUOw)AVMqjoRE|K&tWis?Ta z>ZUHN3~XNWp0yJ`h|W%&Ag@$*QqRyZJO0;ByZ8^3mb!dsnB`$%tip_HgZvg*KW6`CNTmpD!M6 zyB$TS>sxA>ztCpeg$Hb}=nCByvYbU-b%sOI6g%i0I!O zOG@w)>CpJ3-%cq8oUjp35{c|sL9C7DxO&IPFvrH?(Plhqm4TGjTHS!El@g3%nN3Jy z*Up}9@re1MwDVXJ9oo2_yr^C!y;Ef6?=3RuIt*cG;;LIJ0HKqY~(^yk;hu0jbmPjzbYeTkaPdff0}7`$E{`6%wMx?nKS$TZO6wtBo$Sr9EO$B z@Vn&VS;xJrqzIKLiKxHi^0Xw*9(Lf4n{wTiFMs*7q;_hZz%Ck1f?O4q5GVi(N}u0Jl&I@xF6Uu6!y*y z97Est@v96>s|0ksC2BD^vU!4*QSd3H5>jDB1>ZaL4rKuAa)_PMprFxDn2ArCE-xD{ zWk{wpwX3AItGS7*1)rI-1!M)_U}NWDX6Jw`>Kq(=9PE7TU`94>J~lR^Xs@FGuY$dU qx%GFi|5e~-W`iso>g