From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============8682726509789073755==" MIME-Version: 1.0 From: Verkamp, Daniel Subject: Re: [SPDK] Building spdk on CentOS6 Date: Thu, 10 May 2018 17:31:21 +0000 Message-ID: In-Reply-To: AM3PR04MB3701DAADF11B2DE65C49B0C89980@AM3PR04MB370.eurprd04.prod.outlook.com List-ID: To: spdk@lists.01.org --===============8682726509789073755== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Shahar, All of the config options you listed below are already disabled in the conf= ig that we use to build the DPDK subodule (see config/common_spdk in our DP= DK branch). Can you confirm that this works for you? I think we can add -fno-strict-aliasing to the DPDK config/common_spdk file= as well if this is necessary to make it work on RHEL 6 (I am surprised DPD= K doesn't already compile with this enabled). If you could upload a second= patch for this, that would be great. Thanks, -- Daniel From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzman Sent: Thursday, May 10, 2018 6:39 AM To: Storage Performance Development Kit Subject: Re: [SPDK] Building spdk on CentOS6 Hi Daniel, I updated the patch as you suggested. How do you want to approach the gcc flag and the modules that spdk does not= need? If you are building dpdk from an external makefile (as we are doing), all o= f the above can be added to the makefile with CONFIG...=3Dn and EXTRA_CFLAG= S=3D"-fno-strict-aliasing", or I can send you another dpdk patch fixing thi= s within dpdk, so there is no change in the builder, and maybe there is ano= ther option. WDYT? Shahar ________________________________ From: SPDK = > on behalf of Luse, Paul E > Sent: Wednesday, May 9, 2018 8:19:33 PM To: Storage Performance Development Kit Subject: Re: [SPDK] Building spdk on CentOS6 That's great, thanks Daniel! From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Verkamp, Daniel Sent: Wednesday, May 9, 2018 9:43 AM To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 I agree with Paul's review; it looks like it shouldn't be a big problem to = carry a patch for this in our DPDK submodule, at least while CentOS 6 is st= ill officially supported. (I posted a few review comments on the patch, but= the general approach looks fine.) The Intel build pool had a CentOS 6 test machine in the pool until recently= , and we should be able to resurrect it to provide test coverage again. Thanks, -- Daniel From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzman Sent: Wednesday, May 9, 2018 6:12 AM To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 Hi Paul, Thanks for the review. We are now working on CentOS7 support, but it is not complete yet, so we wi= ll be on CentOS6 about 6-12 months. Shahar ________________________________ From: SPDK = > on behalf of Luse, Paul E > Sent: Wednesday, May 9, 2018 3:51:23 PM To: Storage Performance Development Kit Subject: Re: [SPDK] Building spdk on CentOS6 Thanks for doing that! I put my 2 cents on the review, one more data point = for the maintainers might help - help long do you believe your team will be= on CentOS6? Don't need a specific date but are we talking months, years, i= ndefinitely? I think the other implication of accepting this in the community would be t= o spin up a CentOS6 VM for some basic testing for as long as we hold that p= atch in our DPDK fork which is not a huge thing but want to make sure that'= s clear as well. If nothing else we'll know if something else breaks it soo= ner than later and will need to decide, again, at that time if we pull it o= r if it's a high enough priority for anyone to dig in and find a potential = solution like you did here. Assuming, of course, that this one is accepted= :) Thanks, Paul From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzman Sent: Wednesday, May 9, 2018 2:01 AM To: spdk(a)lists.01.org Subject: Re: [SPDK] Building spdk on CentOS6 Hi Ben, Pushed the fix to gerrithub - https://review.gerrithub.io/#/c/spdk/dpdk/+/4= 10559/ We are currently using a "frozen" dpdk tree based version 16.07, but I am p= ushing to using the spdk fork and performing regular updates so if things b= reak, I will attempt to fix them, and post on the list. The above fixes a blunt gcc API issue, but there are more subtle inner modu= le issues which I have not investigated, simply removed the modules all tog= ether as they are not needed by spdk. I can set up a howto for users who may need CentOS6 support or we can modif= y the config (as these modules are not really needed for spdk). For the sak= e of clarity here are the modules "configed out" (as I mentioned they are n= ot used by spdk): +CONFIG_RTE_LIBRTE_PMD_BOND=3Dn +CONFIG_RTE_LIBRTE_CRYPTODEV=3Dn +CONFIG_RTE_LIBRTE_SECURITY=3Dn +CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=3Dn +CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=3Dn +CONFIG_RTE_LIBRTE_LPM=3Dn +CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=3Dn +CONFIG_RTE_LIBRTE_TABLE=3Dn +CONFIG_RTE_LIBRTE_PIPELINE=3Dn +CONFIG_RTE_TEST_PMD=3Dn +CONFIG_RTE_LIBRTE_PMD_TAP=3Dn +CONFIG_RTE_LIBRTE_AVP_PMD=3Dn Regarding the -fn-strict-aliasing issue, I'll see if I can do the same tric= k I did for the gcc alias in the Makefile, and push the fix for review. Shahar ________________________________ From: SPDK = > on behalf of Walker, Benjamin > Sent: Tuesday, May 8, 2018 7:49:44 PM To: spdk(a)lists.01.org Subject: Re: [SPDK] Building spdk on CentOS6 On Tue, 2018-05-08 at 14:34 +0000, Shahar Salzman wrote: > Got it. > > I was tracking the dpdk project, and focused on the branch that Daniel to= ld me > to work on. > So would the correct process be to push the patch to the spdk/dpdk gerrit= hub > and discuss the commit, or the other way around? Yes - go ahead and push to spdk/dpdk on GerritHub so we can all review it. = The SPDK project has never written out a policy on which versions of DPDK are supported for any given SPDK release. The code is always tested using the l= atest released DPDK, and then attempts to support older versions of DPDK are done= in an ad hoc manner. Similarly, the project never explicitly states which oper= ating systems are supported. Instead, we indicate which operating systems the cod= e is regularly tested on (Fedora N and N-1, Ubuntu latest, Ubuntu LTS, CentOS 7, FreeBSD 11). I see that CentOS 6 is no longer receiving full updates and is in maintenan= ce only mode. It will stop receiving even maintenance updates in 2020. I think= that is indicative of the level of support SPDK should provide here. Given the above, if this patch can be applied to the DPDK fork and doesn't = have any additional impact, I'm not opposed to applying it. That wouldn't, in my mind, mean that SPDK is committed to supporting CentOS 6 indefinitely. But certainly that support could continue while it is relatively easy and convenient. > > From: SPDK > on behalf of Luse, Paul E > intel.com> > Sent: Tuesday, May 8, 2018 5:14:10 PM > To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 > > Sure, I understand that. SPDK maintains a fork of dpdk in github at http= s://g > ithub.com/spdk/dpdk for the purpose of temporarily putting things in that= we > need that can't make it upstream yet for whatever reason - this is the > submodule in the SPDK repo. I'm not saying that it makes sense for your = patch > to land there permanently but it does make sense to talk about it. > > No problem on not being on the call, we'll get some input from the mainta= iners > and others I'm sure... > > Thx > Paul > > From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzm= an > Sent: Tuesday, May 8, 2018 7:04 AM > To: Storage Performance Development Kit > > Subject: Re: [SPDK] Building spdk on CentOS6 > > Hey Paul, > > The problem is that the patch is in dpdk and not in spdk, and this is the > reason I offered to support it. > The patch (bellow) is only a few lines long modifying the deprecated attr= ibute > definition, a modification to the config, and an extra compilation flag. > All of the above are required in order to build dpdk 18.01 on CentOS6, th= ere > are no problems building spdk on CentOS6. > > I understood that you are already applying minor patches to dpdk, so ques= tion > is, whether this patch can be added? > > Unfortunately due to some personal issues, I am unable to participate in > today's meeting. > > Thanks, > Shahar > From: SPDK > on behalf of Luse, Paul E > intel.com> > Sent: Tuesday, May 8, 2018 4:25:29 PM > To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 > > Hi Shahar, > > Couple of quick things: > > * thanks for putting all this time and effort into trying to make this wo= rk! > * in the community model, patches aren't accepted based on one individual= 's > ability/desire to support them so appreciate the offer but in general any > patch that is accepted becomes the responsibly of the community (mostly t= he > maintainers) to support it long term. Otherwise we'd have what I like to= call > "the flea market model" where there's a bunch of separate individuals > supporting their own things with very little cohesiveness across everythi= ng J > > So, wrt next steps, if the patch isn't a tremendous amount of effort I wo= uld > suggest you go ahead and submit it. That's the best way to get everyone o= n the > same page wrt exactly what we're talking about. If it is some significant > effort then, as Pawel states, you can call into a community meeting (see = email > I sent out last night) or you can explain more details on this list. > > Thanks again!! > Paul > > From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Wodkowski, P= awelX > Sent: Tuesday, May 8, 2018 5:57 AM > To: Storage Performance Development Kit > > Subject: Re: [SPDK] Building spdk on CentOS6 > > I think someone will answer you on this mailing list but there is communi= ty > meeting today too. You can raise this if you wish. > > Pawel > > From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzm= an > Sent: Tuesday, May 8, 2018 2:23 PM > To: Storage Performance Development Kit > > Subject: Re: [SPDK] Building spdk on CentOS6 > > Hi, > > I attempted to push the gcc support patch to dpdk, and got rejected since= they > do not wish to support CentOS6. > Would it be possible to manually add the patch to the supported dpdk vers= ion > (currently 18.01). > I would be happy to support CentOS6 issues. > > Thanks, > Shahar > > From: Shahar Salzman > Sent: Tuesday, April 24, 2018 3:40:51 PM > To: Storage Performance Development Kit > Cc: Ilan Steinberg; Ido Benda; Yael Shavit > Subject: Re: Building spdk on CentOS6 > > OK, got everything to work. > > For DPDK, I had to to do the following: > add a patch to make the new __rte_experimental attribute to work > remove a bunch of modules via config which had some gnarly compilation er= rors, > and are not needed for spdk > use -fno-strict-aliasing in the EXTRA_CFLAGS to avoid a ton of strict ali= asing > errors. > > I tried spdk 18.01, and ran into some issues with the shared library buil= d. As > I saw that Daniel had already dealt with them, I tried cherry picking, but > eventually used the master branch. > I got these type of warnings: > > /usr/bin/ld: warning: librte_mbuf.so.3.1, needed by > /khome/shahar.salzman/Kaminario/git/dpdk/x86_64-native-linuxapp- > gcc/lib/librte_bus_pci.so, not found (try using -rpath or -rpath-link) > /usr/bin/ld: warning: librte_ethdev.so.8.1, needed by > /khome/shahar.salzman/Kaminario/git/dpdk/x86_64-native-linuxapp- > gcc/lib/librte_bus_pci.so, not found (try using -rpath or -rpath-link) > > I added the following patch bellow to make them go away. > > I'll approach the dpdk community on the mailing list in order to get the > __rte_experimental stuff to work. > My final configuration is: > CenrOS6.4 > gcc 4.4.7-17 > dpdk v18.02 > spdk master > > What are the next steps? > > Shahar > > P.S. Here is the patch to remove the warnings above. > commit d4ef744de1cc4928972b7042d1c90aff12db7867 > Author: shahar salzman > > Date: Tue Apr 24 14:31:52 2018 +0300 > > lib/env_dpdk: add required libraries > > diff --git a/lib/env_dpdk/env.mk b/lib/env_dpdk/env.mk > index 450043c..b46bfed 100644 > --- a/lib/env_dpdk/env.mk > +++ b/lib/env_dpdk/env.mk > @@ -68,6 +68,18 @@ ifneq ($(wildcard $(DPDK_ABS_DIR)/lib/librte_malloc.*)= ,) > DPDK_LIB_LIST +=3D rte_malloc > endif > > +ifneq (, $(wildcard $(DPDK_ABS_DIR)/lib/librte_mbuf.*)) > +DPDK_LIB_LIST +=3D rte_mbuf > +endif > + > +ifneq (, $(wildcard $(DPDK_ABS_DIR)/lib/librte_net.*)) > +DPDK_LIB_LIST +=3D rte_net > +endif > + > +ifneq (, $(wildcard $(DPDK_ABS_DIR)/lib/librte_ethdev.*)) > +DPDK_LIB_LIST +=3D rte_ethdev > +endif > + > # librte_pci and librte_bus_pci were added in DPDK 17.11. Link these > libraries conditionally > # based on their existence to maintain backward compatibility. > ifneq (, $(wildcard $(DPDK_ABS_DIR)/lib/librte_pci.*)) > > > > From: SPDK > on behalf of Shahar Salzman zman(a)kaminario.com> > Sent: Tuesday, April 24, 2018 9:57 AM > To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 > > Great, and thanks! > > I have been running into issues compiling dpdk 17.11 on CentOS6 (there se= ems > to be a gcc issue that does not exist in other versions), I'll focus my > efforts on dpdk 18.02. > From: SPDK > on behalf of Verkamp, Daniel rkamp(a)intel.com> > Sent: Monday, April 23, 2018 9:40:36 PM > To: Storage Performance Development Kit > Subject: Re: [SPDK] Building spdk on CentOS6 > > Hi Shahar, > > I've pushed a patch for the SPDK master branch that should allow it to co= mpile > with DPDK 16.07: https://review.gerrithub.io/#/c/spdk/spdk/+/408743/ > > Gerrit Code Review > > review.gerrithub.io > > Keep in touch. Copyright (c) 2017 | GerritForge Ltd. info(a)gerritforge.c= om > www.gerritforge.com > > > However, DPDK 16.07 is no longer supported upstream; I highly recommend t= hat > you update to a newer version. SPDK is currently tested with DPDK 18.02. > > The VFIO issue you mention has also been fixed on SPDK master, and it wil= l be > part of the SPDK v18.04 release. > > Thanks, > -- Daniel > > From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shahar Salzm= an > Sent: Sunday, April 22, 2018 6:41 AM > To: Storage Performance Development Kit > > Subject: [SPDK] Building spdk on CentOS6 > > Hi, > > Finally got to looking at support of spdk build on CentOS6, things look g= ood, > except for one issue. > spdk is latest 18.01.x version, dpdk is 16.07 (+3 dpdk patches to allow > compilation) and some minor patches (mainly some memory configuration stu= ff), > kernel is a patched 4.9.6. > > build succeeded except for the usage of the dpdk function pci_vfio_is_ena= bled. > I had to apply the patch bellow, removing the usage of this function and = then > compilation completed without any issues. > > It seems that I am missing some sort of dpdk configuration as I see that = the > function is built, but not packaged into the generated archive. > > I went back to square one and ran the instructions in http://www.spdk.io/= doc/g > etting_started.html, but I see no mention of dpdk there. Actually the > ./configure requires it. > > My next step is to use a more recent dpdk, but shouldn't this work with my > version? Am I missing some dpdk configuration? > BTW, as we are not using vhost, on our 17.07 version we simply use > CONFIG_VHOST=3Dn in order to skip this, but I would be happier if we used= a > better solution. > > Shahar > > P.S. Here is the patch to remove use of this function: > diff --git a/lib/env_dpdk/vtophys.c b/lib/env_dpdk/vtophys.c > index 92aa256..f38929f 100644 > --- a/lib/env_dpdk/vtophys.c > +++ b/lib/env_dpdk/vtophys.c > @@ -53,8 +53,10 @@ > #define SPDK_VFIO_ENABLED 1 > #include > > +#if 0 > /* Internal DPDK function forward declaration */ > int pci_vfio_is_enabled(void); > +#endif > > struct spdk_vfio_dma_map { > struct vfio_iommu_type1_dma_map map; > @@ -341,9 +343,11 @@ spdk_vtophys_iommu_init(void) > DIR *dir; > struct dirent *d; > > +#if 0 > if (!pci_vfio_is_enabled()) { > return; > } > +#endif > > dir =3D opendir("/proc/self/fd"); > if (!dir) { > > > _______________________________________________ > SPDK mailing list > SPDK(a)lists.01.org > https://lists.01.org/mailman/listinfo/spdk _______________________________________________ SPDK mailing list SPDK(a)lists.01.org https://lists.01.org/mailman/listinfo/spdk --===============8682726509789073755== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNv bnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11cy1hc2NpaSI+CjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPgo8IS0tW2lm ICFtc29dPjxzdHlsZT52XDoqIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9Cm9cOioge2Jl aGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZN TCk7fQouc2hhcGUge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30KPC9zdHlsZT48IVtlbmRp Zl0tLT48c3R5bGU+PCEtLQovKiBGb250IERlZmluaXRpb25zICovCkBmb250LWZhY2UKCXtmb250 LWZhbWlseTpXaW5nZGluZ3M7CglwYW5vc2UtMTo1IDAgMCAwIDAgMCAwIDAgMCAwO30KQGZvbnQt ZmFjZQoJe2ZvbnQtZmFtaWx5OiJDYW1icmlhIE1hdGgiOwoJcGFub3NlLTE6MiA0IDUgMyA1IDQg NiAzIDIgNDt9CkBmb250LWZhY2UKCXtmb250LWZhbWlseTpDYWxpYnJpOwoJcGFub3NlLTE6MiAx NSA1IDIgMiAyIDQgMyAyIDQ7fQovKiBTdHlsZSBEZWZpbml0aW9ucyAqLwpwLk1zb05vcm1hbCwg bGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsCgl7bWFyZ2luOjBpbjsKCW1hcmdpbi1ib3R0b206 LjAwMDFwdDsKCWZvbnQtc2l6ZToxMi4wcHQ7Cglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFu IixzZXJpZjt9CmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsKCXttc28tc3R5bGUtcHJpb3JpdHk6 OTk7Cgljb2xvcjpibHVlOwoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9CmE6dmlzaXRlZCwg c3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZAoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsKCWNvbG9y OnB1cnBsZTsKCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQpwCgl7bXNvLXN0eWxlLXByaW9y aXR5Ojk5OwoJbWFyZ2luOjBpbjsKCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKCWZvbnQtc2l6ZTox Mi4wcHQ7Cglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIixzZXJpZjt9CnAuTXNvTGlzdFBh cmFncmFwaCwgbGkuTXNvTGlzdFBhcmFncmFwaCwgZGl2Lk1zb0xpc3RQYXJhZ3JhcGgKCXttc28t c3R5bGUtcHJpb3JpdHk6MzQ7CgltYXJnaW4tdG9wOjBpbjsKCW1hcmdpbi1yaWdodDowaW47Cglt YXJnaW4tYm90dG9tOjBpbjsKCW1hcmdpbi1sZWZ0Oi41aW47CgltYXJnaW4tYm90dG9tOi4wMDAx cHQ7Cglmb250LXNpemU6MTIuMHB0OwoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsc2Vy aWY7fQpwLnhtc29ub3JtYWwsIGxpLnhtc29ub3JtYWwsIGRpdi54bXNvbm9ybWFsCgl7bXNvLXN0 eWxlLW5hbWU6eF9tc29ub3JtYWw7CgltYXJnaW46MGluOwoJbWFyZ2luLWJvdHRvbTouMDAwMXB0 OwoJZm9udC1zaXplOjEyLjBwdDsKCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLHNlcmlm O30KcC54bXNvbGlzdHBhcmFncmFwaCwgbGkueG1zb2xpc3RwYXJhZ3JhcGgsIGRpdi54bXNvbGlz dHBhcmFncmFwaAoJe21zby1zdHlsZS1uYW1lOnhfbXNvbGlzdHBhcmFncmFwaDsKCW1hcmdpbi10 b3A6MGluOwoJbWFyZ2luLXJpZ2h0OjBpbjsKCW1hcmdpbi1ib3R0b206MGluOwoJbWFyZ2luLWxl ZnQ6LjVpbjsKCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKCWZvbnQtc2l6ZToxMi4wcHQ7Cglmb250 LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIixzZXJpZjt9CnAueHhtc29ub3JtYWwsIGxpLnh4bXNv bm9ybWFsLCBkaXYueHhtc29ub3JtYWwKCXttc28tc3R5bGUtbmFtZTp4X3htc29ub3JtYWw7Cglt YXJnaW46MGluOwoJbWFyZ2luLWJvdHRvbTouMDAwMXB0OwoJZm9udC1zaXplOjEyLjBwdDsKCWZv bnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLHNlcmlmO30KcC54eG1zb2NocGRlZmF1bHQsIGxp Lnh4bXNvY2hwZGVmYXVsdCwgZGl2Lnh4bXNvY2hwZGVmYXVsdAoJe21zby1zdHlsZS1uYW1lOnhf eG1zb2NocGRlZmF1bHQ7CgltYXJnaW46MGluOwoJbWFyZ2luLWJvdHRvbTouMDAwMXB0OwoJZm9u dC1zaXplOjEwLjBwdDsKCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLHNlcmlmO30KcC54 bXNvY2hwZGVmYXVsdCwgbGkueG1zb2NocGRlZmF1bHQsIGRpdi54bXNvY2hwZGVmYXVsdAoJe21z by1zdHlsZS1uYW1lOnhfbXNvY2hwZGVmYXVsdDsKCW1hcmdpbjowaW47CgltYXJnaW4tYm90dG9t Oi4wMDAxcHQ7Cglmb250LXNpemU6MTAuMHB0OwoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21h biIsc2VyaWY7fQpzcGFuLnh4ZW1haWxzdHlsZTE4Cgl7bXNvLXN0eWxlLW5hbWU6eF94ZW1haWxz dHlsZTE4OwoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7Cgljb2xvcjojMUY0OTdE O30Kc3Bhbi54ZW1haWxzdHlsZTIyCgl7bXNvLXN0eWxlLW5hbWU6eF9lbWFpbHN0eWxlMjI7Cglm b250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsKCWNvbG9yOiMxRjQ5N0Q7fQpzcGFuLnhl bWFpbHN0eWxlMjMKCXttc28tc3R5bGUtbmFtZTp4X2VtYWlsc3R5bGUyMzsKCWZvbnQtZmFtaWx5 OiJDYWxpYnJpIixzYW5zLXNlcmlmOwoJY29sb3I6IzFGNDk3RDt9CnNwYW4uRW1haWxTdHlsZTI2 Cgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7Cglmb250LWZhbWlseToiQ2FsaWJyaSIs c2Fucy1zZXJpZjsKCWNvbG9yOiMxRjQ5N0Q7fQouTXNvQ2hwRGVmYXVsdAoJe21zby1zdHlsZS10 eXBlOmV4cG9ydC1vbmx5OwoJZm9udC1zaXplOjEwLjBwdDt9CkBwYWdlIFdvcmRTZWN0aW9uMQoJ e3NpemU6OC41aW4gMTEuMGluOwoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30KZGl2 LldvcmRTZWN0aW9uMQoJe3BhZ2U6V29yZFNlY3Rpb24xO30KLS0+PC9zdHlsZT48IS0tW2lmIGd0 ZSBtc28gOV0+PHhtbD4KPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAy NiIgLz4KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CjxvOnNoYXBl bGF5b3V0IHY6ZXh0PSJlZGl0Ij4KPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+Cjwv bzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4KPC9oZWFkPgo8Ym9keSBsYW5nPSJFTi1V UyIgbGluaz0iYmx1ZSIgdmxpbms9InB1cnBsZSI+CjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+ CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj5IaSBT aGFoYXIsPG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz dHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNh bnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBj bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWls eTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+QWxsIG9mIHRo ZSBjb25maWcgb3B0aW9ucyB5b3UgbGlzdGVkIGJlbG93IGFyZSBhbHJlYWR5IGRpc2FibGVkIGlu IHRoZSBjb25maWcgdGhhdCB3ZSB1c2UgdG8gYnVpbGQgdGhlIERQREsgc3Vib2R1bGUgKHNlZSBj b25maWcvY29tbW9uX3NwZGsgaW4gb3VyIERQREsgYnJhbmNoKS4mbmJzcDsKIENhbiB5b3UgY29u ZmlybSB0aGF0IHRoaXMgd29ya3MgZm9yIHlvdT88bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNs YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5 OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNw OzwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250 LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtj b2xvcjojMUY0OTdEIj5JIHRoaW5rIHdlIGNhbiBhZGQgLWZuby1zdHJpY3QtYWxpYXNpbmcgdG8g dGhlIERQREsgY29uZmlnL2NvbW1vbl9zcGRrIGZpbGUgYXMgd2VsbCBpZiB0aGlzIGlzIG5lY2Vz c2FyeSB0byBtYWtlIGl0IHdvcmsgb24gUkhFTCA2IChJIGFtIHN1cnByaXNlZCBEUERLIGRvZXNu JiM4MjE3O3QKIGFscmVhZHkgY29tcGlsZSB3aXRoIHRoaXMgZW5hYmxlZCkuJm5ic3A7IElmIHlv dSBjb3VsZCB1cGxvYWQgYSBzZWNvbmQgcGF0Y2ggZm9yIHRoaXMsIHRoYXQgd291bGQgYmUgZ3Jl YXQuPG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls ZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMt c2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBjbGFz cz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTom cXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+VGhhbmtzLDxvOnA+ PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2Nv bG9yOiMxRjQ5N0QiPi0tIERhbmllbAo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJN c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90 O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpw Pjwvc3Bhbj48L3A+CjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJs dWUgMS41cHQ7cGFkZGluZzowaW4gMGluIDBpbiA0LjBwdCI+CjxkaXY+CjxkaXYgc3R5bGU9ImJv cmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBp biAwaW4gMGluIj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGEgbmFtZT0iX19fX19yZXBseXNlcGFy YXRvciI+PC9hPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZx dW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZiI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl PSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1z ZXJpZiI+IFNQREsgW21haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnXQo8Yj5PbiBCZWhh bGYgT2YgPC9iPlNoYWhhciBTYWx6bWFuPGJyPgo8Yj5TZW50OjwvYj4gVGh1cnNkYXksIE1heSAx MCwgMjAxOCA2OjM5IEFNPGJyPgo8Yj5Ubzo8L2I+IFN0b3JhZ2UgUGVyZm9ybWFuY2UgRGV2ZWxv cG1lbnQgS2l0ICZsdDtzcGRrQGxpc3RzLjAxLm9yZyZndDs8YnI+CjxiPlN1YmplY3Q6PC9iPiBS ZTogW1NQREtdIEJ1aWxkaW5nIHNwZGsgb24gQ2VudE9TNjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4K PC9kaXY+CjwvZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4K PGRpdiBpZD0iZGl2dGFnZGVmYXVsdHdyYXBwZXIiPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5IaSBEYW5pZWws PG86cD48L286cD48L3NwYW4+PC9wPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7 Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj48bzpwPiZuYnNwOzwvbzpwPjwv c3Bhbj48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7 LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPkkgdXBkYXRlZCB0aGUgcGF0Y2ggYXMgeW91IHN1Z2dl c3RlZC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTom cXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPkhvdyBkbyB5b3Ugd2Fu dCB0byBhcHByb2FjaCB0aGUgZ2NjIGZsYWcgYW5kIHRoZSBtb2R1bGVzIHRoYXQgc3BkayBkb2Vz IG5vdCBuZWVkPzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFt aWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+SWYgeW91IGFy ZSBidWlsZGluZyBkcGRrIGZyb20gYW4gZXh0ZXJuYWwgbWFrZWZpbGUgKGFzIHdlIGFyZSBkb2lu ZyksIGFsbCBvZiB0aGUgYWJvdmUgY2FuIGJlIGFkZGVkIHRvIHRoZSBtYWtlZmlsZSB3aXRoIENP TkZJRy4uLj1uIGFuZCBFWFRSQV9DRkxBR1M9JnF1b3Q7LWZuby1zdHJpY3QtYWxpYXNpbmcmcXVv dDssIG9yIEkgY2FuIHNlbmQgeW91IGFub3RoZXIKIGRwZGsgcGF0Y2ggZml4aW5nIHRoaXMgd2l0 aGluIGRwZGssIHNvIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiB0aGUgYnVpbGRlciwgYW5kIG1heWJl IHRoZXJlIGlzIGFub3RoZXIgb3B0aW9uLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHA+PHNwYW4g c3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpi bGFjayI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cD48c3BhbiBzdHlsZT0iZm9udC1m YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5XRFlUPzxv OnA+PC9vOnA+PC9zcGFuPjwvcD4KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0Nh bGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+PG86cD4mbmJzcDs8L286cD48L3Nw YW4+PC9wPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oyxz YW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5TaGFoYXI8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwPjxz cGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29s b3I6YmxhY2siPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9 Ik1zb05vcm1hbCIgYWxpZ249ImNlbnRlciIgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyIj4KPGhy IHNpemU9IjMiIHdpZHRoPSI5OCUiIGFsaWduPSJjZW50ZXIiPgo8L2Rpdj4KPGRpdiBpZD0iZGl2 UnBseUZ3ZE1zZyI+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNp emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xv cjpibGFjayI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2Zv bnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+IFNQ REsgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnIj5zcGRrLWJv dW5jZXNAbGlzdHMuMDEub3JnPC9hPiZndDsKIG9uIGJlaGFsZiBvZiBMdXNlLCBQYXVsIEUgJmx0 OzxhIGhyZWY9Im1haWx0bzpwYXVsLmUubHVzZUBpbnRlbC5jb20iPnBhdWwuZS5sdXNlQGludGVs LmNvbTwvYT4mZ3Q7PGJyPgo8Yj5TZW50OjwvYj4gV2VkbmVzZGF5LCBNYXkgOSwgMjAxOCA4OjE5 OjMzIFBNPGJyPgo8Yj5Ubzo8L2I+IFN0b3JhZ2UgUGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQgS2l0 PGJyPgo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtTUERLXSBCdWlsZGluZyBzcGRrIG9uIENlbnRPUzY8 L3NwYW4+IDxvOnA+PC9vOnA+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8 bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8ZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0ieG1zb25v cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs aWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPlRoYXQmIzgyMTc7cyBncmVhdCwg dGhhbmtzIERhbmllbCE8L3NwYW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJ4bXNvbm9ybWFs Ij48YSBuYW1lPSJ4X19NYWlsRW5kQ29tcG9zZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5 N0QiPiZuYnNwOzwvc3Bhbj48L2E+PG86cD48L286cD48L3A+CjxkaXY+CjxkaXYgc3R5bGU9ImJv cmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBp biAwaW4gMGluIj4KPHAgY2xhc3M9Inhtc29ub3JtYWwiPjxhIG5hbWU9InhfX19fX19yZXBseXNl cGFyYXRvciI+PC9hPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5 OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZiI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0 eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu cy1zZXJpZiI+IFNQREsgWzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3Jn Ij5tYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZzwvYT5dCjxiPk9uIEJlaGFsZiBPZiA8 L2I+VmVya2FtcCwgRGFuaWVsPGJyPgo8Yj5TZW50OjwvYj4gV2VkbmVzZGF5LCBNYXkgOSwgMjAx OCA5OjQzIEFNPGJyPgo8Yj5Ubzo8L2I+IFN0b3JhZ2UgUGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQg S2l0ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bka0BsaXN0cy4wMS5vcmciPnNwZGtAbGlzdHMuMDEu b3JnPC9hPiZndDs8YnI+CjxiPlN1YmplY3Q6PC9iPiBSZTogW1NQREtdIEJ1aWxkaW5nIHNwZGsg b24gQ2VudE9TNjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8cCBjbGFzcz0i eG1zb25vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJ4bXNvbm9ybWFsIj48 c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1 b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+SSBhZ3JlZSB3aXRoIFBhdWwmIzgyMTc7cyBy ZXZpZXc7IGl0IGxvb2tzIGxpa2UgaXQgc2hvdWxkbiYjODIxNzt0IGJlIGEgYmlnIHByb2JsZW0g dG8gY2FycnkgYSBwYXRjaCBmb3IgdGhpcyBpbiBvdXIgRFBESyBzdWJtb2R1bGUsIGF0IGxlYXN0 IHdoaWxlIENlbnRPUyA2IGlzIHN0aWxsIG9mZmljaWFsbHkKIHN1cHBvcnRlZC4gKEkgcG9zdGVk IGEgZmV3IHJldmlldyBjb21tZW50cyBvbiB0aGUgcGF0Y2gsIGJ1dCB0aGUgZ2VuZXJhbCBhcHBy b2FjaCBsb29rcyBmaW5lLik8L3NwYW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJ4bXNvbm9y bWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp YnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9v OnA+PC9wPgo8cCBjbGFzcz0ieG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5 N0QiPlRoZSBJbnRlbCBidWlsZCBwb29sIGhhZCBhIENlbnRPUyA2IHRlc3QgbWFjaGluZSBpbiB0 aGUgcG9vbCB1bnRpbCByZWNlbnRseSwgYW5kIHdlIHNob3VsZCBiZSBhYmxlIHRvIHJlc3VycmVj dCBpdCB0byBwcm92aWRlIHRlc3QgY292ZXJhZ2UgYWdhaW4uPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pgo8cCBjbGFzcz0ieG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZu YnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Inhtc29ub3JtYWwiPjxzcGFuIHN0 eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu cy1zZXJpZjtjb2xvcjojMUY0OTdEIj5UaGFua3MsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8cCBj bGFzcz0ieG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPi0tIERhbmll bDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Inhtc29ub3JtYWwiPjxzcGFuIHN0eWxl PSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1z ZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+CjxkaXYgc3R5 bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzowaW4g MGluIDBpbiA0LjBwdCI+CjxkaXY+CjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6 c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4KPHAgY2xhc3M9 Inhtc29ub3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5 OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZiI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0 eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu cy1zZXJpZiI+IFNQREsgWzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3Jn Ij5tYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZzwvYT5dCjxiPk9uIEJlaGFsZiBPZiA8 L2I+U2hhaGFyIFNhbHptYW48YnI+CjxiPlNlbnQ6PC9iPiBXZWRuZXNkYXksIE1heSA5LCAyMDE4 IDY6MTIgQU08YnI+CjxiPlRvOjwvYj4gU3RvcmFnZSBQZXJmb3JtYW5jZSBEZXZlbG9wbWVudCBL aXQgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrQGxpc3RzLjAxLm9yZyI+c3Bka0BsaXN0cy4wMS5v cmc8L2E+Jmd0Ozxicj4KPGI+U3ViamVjdDo8L2I+IFJlOiBbU1BES10gQnVpbGRpbmcgc3BkayBv biBDZW50T1M2PC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8L2Rpdj4KPC9kaXY+CjxwIGNsYXNzPSJ4 bXNvbm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KPGRpdiBpZD0ieF9kaXZ0YWdkZWZhdWx0 d3JhcHBlciI+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7 LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPkhpIFBhdWwsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8 cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlm O2NvbG9yOmJsYWNrIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+CjxwPjxzcGFuIHN0eWxl PSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2si PlRoYW5rcyBmb3IgdGhlIHJldmlldy48L3NwYW4+PG86cD48L286cD48L3A+CjxwPjxzcGFuIHN0 eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6Ymxh Y2siPldlIGFyZSBub3cgd29ya2luZyBvbiBDZW50T1M3IHN1cHBvcnQsIGJ1dCBpdCBpcyBub3Qg Y29tcGxldGUgeWV0LCBzbyB3ZSB3aWxsIGJlIG9uIENlbnRPUzYmbmJzcDthYm91dCA2LTEyIG1v bnRocy48L3NwYW4+PG86cD48L286cD48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTom cXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiZuYnNwOzwvc3Bhbj48 bzpwPjwvbzpwPjwvcD4KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm cXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+U2hhaGFyPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iTXNvTm9ybWFsIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0idGV4 dC1hbGlnbjpjZW50ZXIiPgo8aHIgc2l6ZT0iMyIgd2lkdGg9Ijk4JSIgYWxpZ249ImNlbnRlciI+ CjwvZGl2Pgo8ZGl2IGlkPSJ4X2RpdlJwbHlGd2RNc2ciPgo8cCBjbGFzcz0ieG1zb25vcm1hbCI+ PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy aSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5 bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5z LXNlcmlmO2NvbG9yOmJsYWNrIj4gU1BESyAmbHQ7PGEgaHJlZj0ibWFpbHRvOnNwZGstYm91bmNl c0BsaXN0cy4wMS5vcmciPnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmc8L2E+Jmd0Owogb24gYmVo YWxmIG9mIEx1c2UsIFBhdWwgRSAmbHQ7PGEgaHJlZj0ibWFpbHRvOnBhdWwuZS5sdXNlQGludGVs LmNvbSI+cGF1bC5lLmx1c2VAaW50ZWwuY29tPC9hPiZndDs8YnI+CjxiPlNlbnQ6PC9iPiBXZWRu ZXNkYXksIE1heSA5LCAyMDE4IDM6NTE6MjMgUE08YnI+CjxiPlRvOjwvYj4gU3RvcmFnZSBQZXJm b3JtYW5jZSBEZXZlbG9wbWVudCBLaXQ8YnI+CjxiPlN1YmplY3Q6PC9iPiBSZTogW1NQREtdIEJ1 aWxkaW5nIHNwZGsgb24gQ2VudE9TNjwvc3Bhbj4gPG86cD48L286cD48L3A+CjxkaXY+CjxwIGNs YXNzPSJ4bXNvbm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8ZGl2 Pgo8ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0 OTdEIj5UaGFua3MgZm9yIGRvaW5nIHRoYXQhIEkgcHV0IG15IDIgY2VudHMgb24gdGhlIHJldmll dywgb25lIG1vcmUgZGF0YSBwb2ludCBmb3IgdGhlIG1haW50YWluZXJzIG1pZ2h0IGhlbHAgJiM4 MjExOyBoZWxwIGxvbmcgZG8geW91IGJlbGlldmUgeW91ciB0ZWFtIHdpbGwgYmUgb24gQ2VudE9T Nj8KIERvbiYjODIxNzt0IG5lZWQgYSBzcGVjaWZpYyBkYXRlIGJ1dCBhcmUgd2UgdGFsa2luZyBt b250aHMsIHllYXJzLCBpbmRlZmluaXRlbHk/PC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFz cz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5 OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3Nw YW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZv bnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlm O2NvbG9yOiMxRjQ5N0QiPkkgdGhpbmsgdGhlIG90aGVyIGltcGxpY2F0aW9uIG9mIGFjY2VwdGlu ZyB0aGlzIGluIHRoZSBjb21tdW5pdHkgd291bGQgYmUgdG8gc3BpbiB1cCBhIENlbnRPUzYgVk0g Zm9yIHNvbWUgYmFzaWMgdGVzdGluZyBmb3IgYXMgbG9uZyBhcyB3ZSBob2xkIHRoYXQgcGF0Y2gg aW4KIG91ciBEUERLIGZvcmsgd2hpY2ggaXMgbm90IGEgaHVnZSB0aGluZyBidXQgd2FudCB0byBt YWtlIHN1cmUgdGhhdCYjODIxNztzIGNsZWFyIGFzIHdlbGwuIElmIG5vdGhpbmcgZWxzZSB3ZSYj ODIxNztsbCBrbm93IGlmIHNvbWV0aGluZyBlbHNlIGJyZWFrcyBpdCBzb29uZXIgdGhhbiBsYXRl ciBhbmQgd2lsbCBuZWVkIHRvIGRlY2lkZSwgYWdhaW4sIGF0IHRoYXQgdGltZSBpZiB3ZSBwdWxs IGl0IG9yIGlmIGl0JiM4MjE3O3MgYSBoaWdoIGVub3VnaCBwcmlvcml0eSBmb3IgYW55b25lCiB0 byBkaWcgaW4gYW5kIGZpbmQgYSBwb3RlbnRpYWwgc29sdXRpb24gbGlrZSB5b3UgZGlkIGhlcmUu Jm5ic3A7IEFzc3VtaW5nLCBvZiBjb3Vyc2UsIHRoYXQgdGhpcyBvbmUgaXMgYWNjZXB0ZWQKPC9z cGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OldpbmdkaW5ncztj b2xvcjojMUY0OTdEIj5KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0ieHhtc29ub3Jt YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli cmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286 cD48L3A+CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5 N0QiPlRoYW5rcyw8L3NwYW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+ PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx dW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPlBhdWw8L3NwYW4+PG86cD48L286cD48L3A+ CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+PGEgbmFtZT0ieF94X19NYWlsRW5kQ29tcG9zZSI+PHNw YW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90 OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48L2E+PG86cD48L286cD48 L3A+CjxkaXY+CjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0UxRTFF MSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4KPHAgY2xhc3M9Inh4bXNvbm9ybWFs Ij48YSBuYW1lPSJ4X3hfX19fX19yZXBseXNlcGFyYXRvciI+PC9hPjxiPjxzcGFuIHN0eWxlPSJm b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJp ZiI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt aWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZiI+IFNQREsgWzxhIGhyZWY9Im1haWx0 bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnIj5tYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAx Lm9yZzwvYT5dCjxiPk9uIEJlaGFsZiBPZiA8L2I+U2hhaGFyIFNhbHptYW48YnI+CjxiPlNlbnQ6 PC9iPiBXZWRuZXNkYXksIE1heSA5LCAyMDE4IDI6MDEgQU08YnI+CjxiPlRvOjwvYj4gPGEgaHJl Zj0ibWFpbHRvOnNwZGtAbGlzdHMuMDEub3JnIj5zcGRrQGxpc3RzLjAxLm9yZzwvYT48YnI+Cjxi PlN1YmplY3Q6PC9iPiBSZTogW1NQREtdIEJ1aWxkaW5nIHNwZGsgb24gQ2VudE9TNjwvc3Bhbj48 bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPiZuYnNw OzxvOnA+PC9vOnA+PC9wPgo8ZGl2IGlkPSJ4X3hfZGl2dGFnZGVmYXVsdHdyYXBwZXIiPgo8ZGl2 IGlkPSJ4X3hfZGl2dGFnZGVmYXVsdHdyYXBwZXIiPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5IaSBCZW4sPC9z cGFuPjxvOnA+PC9vOnA+PC9wPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2Fs aWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4mbmJzcDs8L3NwYW4+PG86cD48L286 cD48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNh bnMtc2VyaWY7Y29sb3I6YmxhY2siPlB1c2hlZCB0aGUgZml4IHRvIGdlcnJpdGh1YiAtJm5ic3A7 PGEgaHJlZj0iaHR0cHM6Ly9yZXZpZXcuZ2Vycml0aHViLmlvLyMvYy9zcGRrL2RwZGsvJiM0Mzsv NDEwNTU5LyIgaWQ9IkxQbG5rMjAxMjgzIj5odHRwczovL3Jldmlldy5nZXJyaXRodWIuaW8vIy9j L3NwZGsvZHBkay8mIzQzOy80MTA1NTkvPC9hPjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xh c3M9Inh4bXNvbm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx dW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+ CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2Vy aWY7Y29sb3I6YmxhY2siPldlIGFyZSBjdXJyZW50bHkgdXNpbmcgYSAmcXVvdDtmcm96ZW4mcXVv dDsgZHBkayB0cmVlIGJhc2VkIHZlcnNpb24gMTYuMDcsIGJ1dCBJIGFtIHB1c2hpbmcgdG8gdXNp bmcgdGhlIHNwZGsgZm9yayBhbmQgcGVyZm9ybWluZyByZWd1bGFyIHVwZGF0ZXMgc28gaWYgdGhp bmdzIGJyZWFrLCBJIHdpbGwgYXR0ZW1wdCB0byBmaXggdGhlbSwgYW5kIHBvc3Qgb24KIHRoZSBs aXN0Ljwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx dW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+Jm5ic3A7PC9zcGFuPjxv OnA+PC9vOnA+PC9wPgo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx dW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5UaGUgYWJvdmUgZml4ZXMgYSBibHVudCBnY2Mm bmJzcDtBUEkgaXNzdWUsIGJ1dCB0aGVyZSBhcmUgbW9yZSBzdWJ0bGUgaW5uZXIgbW9kdWxlIGlz c3VlcyB3aGljaCBJIGhhdmUgbm90IGludmVzdGlnYXRlZCwgc2ltcGx5IHJlbW92ZWQgdGhlIG1v ZHVsZXMgYWxsIHRvZ2V0aGVyIGFzIHRoZXkgYXJlIG5vdCBuZWVkZWQgYnkgc3Bkay48L3NwYW4+ PG86cD48L286cD48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJp JnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwv cD4KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1z ZXJpZjtjb2xvcjpibGFjayI+SSBjYW4gc2V0IHVwIGEgaG93dG8gZm9yIHVzZXJzIHdobyBtYXkg bmVlZCBDZW50T1M2IHN1cHBvcnQgb3Igd2UgY2FuIG1vZGlmeSB0aGUgY29uZmlnIChhcyB0aGVz ZSBtb2R1bGVzIGFyZSBub3QgcmVhbGx5IG5lZWRlZCBmb3Igc3BkaykuIEZvciB0aGUgc2FrZSBv ZiBjbGFyaXR5IGhlcmUgYXJlIHRoZSBtb2R1bGVzICZxdW90O2NvbmZpZ2VkIG91dCZxdW90Owog KGFzIEkgbWVudGlvbmVkIHRoZXkgYXJlIG5vdCB1c2VkIGJ5IHNwZGspOjwvc3Bhbj48bzpwPjwv bzpwPjwvcD4KPGRpdj4KPHAgY2xhc3M9Inh4bXNvbm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1m YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4mIzQzO0NP TkZJR19SVEVfTElCUlRFX1BNRF9CT05EPW48L3NwYW4+PG86cD48L286cD48L3A+CjwvZGl2Pgo8 ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVv dDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiYjNDM7Q09ORklHX1JURV9M SUJSVEVfQ1JZUFRPREVWPW48L3NwYW4+PG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBj bGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJp JnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiYjNDM7Q09ORklHX1JURV9MSUJSVEVfU0VD VVJJVFk9bjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJ4eG1z b25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu cy1zZXJpZjtjb2xvcjpibGFjayI+JiM0MztDT05GSUdfUlRFX0xJQlJURV9QTURfU1dfRVZFTlRE RVY9bjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJ4eG1zb25v cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1z ZXJpZjtjb2xvcjpibGFjayI+JiM0MztDT05GSUdfUlRFX0xJQlJURV9QTURfT0NURU9OVFhfU1NP VkY9bjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJ4eG1zb25v cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1z ZXJpZjtjb2xvcjpibGFjayI+JiM0MztDT05GSUdfUlRFX0xJQlJURV9MUE09bjwvc3Bhbj48bzpw PjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+PHNwYW4gc3R5 bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFj ayI+JiM0MztDT05GSUdfUlRFX0xJQlJURV9GTE9XX0NMQVNTSUZZPW48L3NwYW4+PG86cD48L286 cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJm b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiYj NDM7Q09ORklHX1JURV9MSUJSVEVfVEFCTEU9bjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+ CjxkaXY+CjxwIGNsYXNzPSJ4eG1zb25vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx dW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+JiM0MztDT05GSUdfUlRF X0xJQlJURV9QSVBFTElORT1uPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAg Y2xhc3M9Inh4bXNvbm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy aSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4mIzQzO0NPTkZJR19SVEVfVEVTVF9QTUQ9 bjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJ4eG1zb25vcm1h bCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJp Zjtjb2xvcjpibGFjayI+JiM0MztDT05GSUdfUlRFX0xJQlJURV9QTURfVEFQPW48L3NwYW4+PG86 cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0 eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6Ymxh Y2siPiYjNDM7Q09ORklHX1JURV9MSUJSVEVfQVZQX1BNRD1uPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Inh4bXNvbm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1m YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4mbmJzcDs8 L3NwYW4+PG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwi PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7 Y29sb3I6YmxhY2siPlJlZ2FyZGluZyB0aGUgLWZuLXN0cmljdC1hbGlhc2luZyBpc3N1ZSwgSSds bCBzZWUgaWYgSSBjYW4gZG8gdGhlIHNhbWUgdHJpY2sgSSBkaWQgZm9yIHRoZSBnY2MgYWxpYXMg aW4gdGhlIE1ha2VmaWxlLCBhbmQgcHVzaCB0aGUgZml4IGZvciByZXZpZXcuPC9zcGFuPjxvOnA+ PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Inh4bXNvbm9ybWFsIj48c3BhbiBzdHls ZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNr Ij4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+CjwvZGl2Pgo8cD48c3BhbiBzdHlsZT0iZm9u dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj5TaGFo YXI8L3NwYW4+PG86cD48L286cD48L3A+CjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVv dDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiZuYnNwOzwvc3Bhbj48bzpw PjwvbzpwPjwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9Ik1zb05vcm1hbCIgYWxpZ249ImNlbnRlciIg c3R5bGU9InRleHQtYWxpZ246Y2VudGVyIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7 Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4KPGhyIHNpemU9IjQiIHdpZHRo PSI5OCUiIGFsaWduPSJjZW50ZXIiPgo8L3NwYW4+PC9kaXY+CjxkaXYgaWQ9InhfeF9kaXZScGx5 RndkTXNnIj4KPHAgY2xhc3M9Inh4bXNvbm9ybWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXpl OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6 YmxhY2siPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250 LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiBTUERL ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZyI+c3Bkay1ib3Vu Y2VzQGxpc3RzLjAxLm9yZzwvYT4mZ3Q7CiBvbiBiZWhhbGYgb2YgV2Fsa2VyLCBCZW5qYW1pbiAm bHQ7PGEgaHJlZj0ibWFpbHRvOmJlbmphbWluLndhbGtlckBpbnRlbC5jb20iPmJlbmphbWluLndh bGtlckBpbnRlbC5jb208L2E+Jmd0Ozxicj4KPGI+U2VudDo8L2I+IFR1ZXNkYXksIE1heSA4LCAy MDE4IDc6NDk6NDQgUE08YnI+CjxiPlRvOjwvYj4gPGEgaHJlZj0ibWFpbHRvOnNwZGtAbGlzdHMu MDEub3JnIj5zcGRrQGxpc3RzLjAxLm9yZzwvYT48YnI+CjxiPlN1YmplY3Q6PC9iPiBSZTogW1NQ REtdIEJ1aWxkaW5nIHNwZGsgb24gQ2VudE9TNjwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNrIj4KPC9zcGFuPjxv OnA+PC9vOnA+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJm b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPiZu YnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8ZGl2Pgo8ZGl2Pgo8cCBj bGFzcz0ieHhtc29ub3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt aWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjpibGFjayI+T24gVHVlLCAy MDE4LTA1LTA4IGF0IDE0OjM0ICYjNDM7MDAwMCwgU2hhaGFyIFNhbHptYW4gd3JvdGU6PGJyPgom Z3Q7IEdvdCBpdC48YnI+CiZndDsgPGJyPgomZ3Q7IEkgd2FzIHRyYWNraW5nIHRoZSBkcGRrIHBy b2plY3QsIGFuZCBmb2N1c2VkIG9uIHRoZSBicmFuY2ggdGhhdCBEYW5pZWwgdG9sZCBtZTxicj4K Jmd0OyB0byB3b3JrIG9uLjxicj4KJmd0OyBTbyB3b3VsZCB0aGUgY29ycmVjdCBwcm9jZXNzIGJl IHRvIHB1c2ggdGhlIHBhdGNoIHRvIHRoZSBzcGRrL2RwZGsgZ2Vycml0aHViPGJyPgomZ3Q7IGFu ZCBkaXNjdXNzIHRoZSBjb21taXQsIG9yIHRoZSBvdGhlciB3YXkgYXJvdW5kPzxicj4KPGJyPgpZ ZXMgLSBnbyBhaGVhZCBhbmQgcHVzaCB0byBzcGRrL2RwZGsgb24gR2Vycml0SHViIHNvIHdlIGNh biBhbGwgcmV2aWV3IGl0LiBUaGU8YnI+ClNQREsgcHJvamVjdCBoYXMgbmV2ZXIgd3JpdHRlbiBv dXQgYSBwb2xpY3kgb24gd2hpY2ggdmVyc2lvbnMgb2YgRFBESyBhcmU8YnI+CnN1cHBvcnRlZCBm b3IgYW55IGdpdmVuIFNQREsgcmVsZWFzZS4gVGhlIGNvZGUgaXMgYWx3YXlzIHRlc3RlZCB1c2lu ZyB0aGUgbGF0ZXN0PGJyPgpyZWxlYXNlZCBEUERLLCBhbmQgdGhlbiBhdHRlbXB0cyB0byBzdXBw b3J0IG9sZGVyIHZlcnNpb25zIG9mIERQREsgYXJlIGRvbmUgaW48YnI+CmFuIGFkIGhvYyBtYW5u ZXIuIFNpbWlsYXJseSwgdGhlIHByb2plY3QgbmV2ZXIgZXhwbGljaXRseSBzdGF0ZXMgd2hpY2gg b3BlcmF0aW5nPGJyPgpzeXN0ZW1zIGFyZSBzdXBwb3J0ZWQuIEluc3RlYWQsIHdlIGluZGljYXRl IHdoaWNoIG9wZXJhdGluZyBzeXN0ZW1zIHRoZSBjb2RlIGlzPGJyPgpyZWd1bGFybHkgdGVzdGVk IG9uIChGZWRvcmEgTiBhbmQgTi0xLCBVYnVudHUgbGF0ZXN0LCBVYnVudHUgTFRTLCBDZW50T1Mg Nyw8YnI+CkZyZWVCU0QgMTEpLjxicj4KPGJyPgpJIHNlZSB0aGF0IENlbnRPUyA2IGlzIG5vIGxv bmdlciByZWNlaXZpbmcgZnVsbCB1cGRhdGVzIGFuZCBpcyBpbiBtYWludGVuYW5jZTxicj4Kb25s eSBtb2RlLiBJdCB3aWxsIHN0b3AgcmVjZWl2aW5nIGV2ZW4gbWFpbnRlbmFuY2UgdXBkYXRlcyBp biAyMDIwLiBJIHRoaW5rIHRoYXQ8YnI+CmlzIGluZGljYXRpdmUgb2YgdGhlIGxldmVsIG9mIHN1 cHBvcnQgU1BESyBzaG91bGQgcHJvdmlkZSBoZXJlLjxicj4KPGJyPgpHaXZlbiB0aGUgYWJvdmUs IGlmIHRoaXMgcGF0Y2ggY2FuIGJlIGFwcGxpZWQgdG8gdGhlIERQREsgZm9yayBhbmQgZG9lc24n dCBoYXZlPGJyPgphbnkgYWRkaXRpb25hbCBpbXBhY3QsIEknbSBub3Qgb3Bwb3NlZCB0byBhcHBs eWluZyBpdC4gVGhhdCB3b3VsZG4ndCwgaW4gbXk8YnI+Cm1pbmQsIG1lYW4gdGhhdCBTUERLIGlz IGNvbW1pdHRlZCB0byBzdXBwb3J0aW5nIENlbnRPUyA2IGluZGVmaW5pdGVseS4gQnV0PGJyPgpj ZXJ0YWlubHkgdGhhdCBzdXBwb3J0IGNvdWxkIGNvbnRpbnVlIHdoaWxlIGl0IGlzIHJlbGF0aXZl bHkgZWFzeSBhbmQ8YnI+CmNvbnZlbmllbnQuPGJyPgo8YnI+CiZndDsgPGJyPgomZ3Q7IEZyb206 IFNQREsgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnIj5zcGRr LWJvdW5jZXNAbGlzdHMuMDEub3JnPC9hPiZndDsgb24gYmVoYWxmIG9mIEx1c2UsIFBhdWwgRSAm bHQ7PGEgaHJlZj0ibWFpbHRvOnBhdWwuZS5sdXNlQCUwYiI+cGF1bC5lLmx1c2VAPGJyPgo8L2E+ Jmd0OyBpbnRlbC5jb20mZ3Q7PGJyPgomZ3Q7IFNlbnQ6IFR1ZXNkYXksIE1heSA4LCAyMDE4IDU6 MTQ6MTAgUE08YnI+CiZndDsgVG86IFN0b3JhZ2UgUGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQgS2l0 PGJyPgomZ3Q7IFN1YmplY3Q6IFJlOiBbU1BES10gQnVpbGRpbmcgc3BkayBvbiBDZW50T1M2PGJy PgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBTdXJlLCBJIHVuZGVyc3RhbmQgdGhhdC4mbmJzcDsgU1BE SyBtYWludGFpbnMgYSBmb3JrIG9mIGRwZGsgaW4gZ2l0aHViIGF0IDxhIGhyZWY9Imh0dHBzOi8v ZyI+Cmh0dHBzOi8vZzwvYT48YnI+CiZndDsgaXRodWIuY29tL3NwZGsvZHBkayBmb3IgdGhlIHB1 cnBvc2Ugb2YgdGVtcG9yYXJpbHkgcHV0dGluZyB0aGluZ3MgaW4gdGhhdCB3ZTxicj4KJmd0OyBu ZWVkIHRoYXQgY2FuJiM4MjE3O3QgbWFrZSBpdCB1cHN0cmVhbSB5ZXQgZm9yIHdoYXRldmVyIHJl YXNvbiAmIzgyMTE7IHRoaXMgaXMgdGhlPGJyPgomZ3Q7IHN1Ym1vZHVsZSBpbiB0aGUgU1BESyBy ZXBvLiZuYnNwOyBJJiM4MjE3O20gbm90IHNheWluZyB0aGF0IGl0IG1ha2VzIHNlbnNlIGZvciB5 b3VyIHBhdGNoPGJyPgomZ3Q7IHRvIGxhbmQgdGhlcmUgcGVybWFuZW50bHkgYnV0IGl0IGRvZXMg bWFrZSBzZW5zZSB0byB0YWxrIGFib3V0IGl0Ljxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgTm8g cHJvYmxlbSBvbiBub3QgYmVpbmcgb24gdGhlIGNhbGwsIHdlJiM4MjE3O2xsIGdldCBzb21lIGlu cHV0IGZyb20gdGhlIG1haW50YWluZXJzPGJyPgomZ3Q7IGFuZCBvdGhlcnMgSSYjODIxNzttIHN1 cmUmIzgyMzA7PGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBUaHg8YnI+CiZndDsgUGF1bDxicj4K Jmd0OyZuYnNwOyA8YnI+CiZndDsgRnJvbTogU1BESyBbPGEgaHJlZj0ibWFpbHRvOnNwZGstYm91 bmNlc0BsaXN0cy4wMS5vcmciIGlkPSJMUGxuazM0MDU3NiI+bWFpbHRvOnNwZGstYm91bmNlc0Bs aXN0cy4wMS5vcmc8L2E+XSBPbiBCZWhhbGYgT2YgU2hhaGFyIFNhbHptYW48YnI+CiZndDsgU2Vu dDogVHVlc2RheSwgTWF5IDgsIDIwMTggNzowNCBBTTxicj4KJmd0OyBUbzogU3RvcmFnZSBQZXJm b3JtYW5jZSBEZXZlbG9wbWVudCBLaXQgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrQGxpc3RzLjAx Lm9yZyI+c3Bka0BsaXN0cy4wMS5vcmc8L2E+Jmd0Ozxicj4KJmd0OyBTdWJqZWN0OiBSZTogW1NQ REtdIEJ1aWxkaW5nIHNwZGsgb24gQ2VudE9TNjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgSGV5 IFBhdWwsPGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBUaGUgcHJvYmxlbSBpcyB0aGF0IHRoZSBw YXRjaCBpcyBpbiBkcGRrIGFuZCBub3QgaW4gc3BkaywgYW5kIHRoaXMgaXMgdGhlPGJyPgomZ3Q7 IHJlYXNvbiBJIG9mZmVyZWQgdG8gc3VwcG9ydCBpdC48YnI+CiZndDsgVGhlIHBhdGNoIChiZWxs b3cpIGlzIG9ubHkgYSBmZXcgbGluZXMgbG9uZyBtb2RpZnlpbmcgdGhlIGRlcHJlY2F0ZWQgYXR0 cmlidXRlPGJyPgomZ3Q7IGRlZmluaXRpb24sIGEgbW9kaWZpY2F0aW9uIHRvIHRoZSBjb25maWcs IGFuZCBhbiBleHRyYSBjb21waWxhdGlvbiBmbGFnLjxicj4KJmd0OyBBbGwgb2YgdGhlIGFib3Zl IGFyZSByZXF1aXJlZCBpbiBvcmRlciB0byBidWlsZCBkcGRrIDE4LjAxIG9uIENlbnRPUzYsIHRo ZXJlPGJyPgomZ3Q7IGFyZSBubyBwcm9ibGVtcyBidWlsZGluZyBzcGRrIG9uIENlbnRPUzYuPGJy PgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBJIHVuZGVyc3Rvb2QgdGhhdCB5b3UgYXJlIGFscmVhZHkg YXBwbHlpbmcgbWlub3IgcGF0Y2hlcyB0byBkcGRrLCBzbyBxdWVzdGlvbjxicj4KJmd0OyBpcywg d2hldGhlciB0aGlzIHBhdGNoIGNhbiBiZSBhZGRlZD88YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7 IFVuZm9ydHVuYXRlbHkgZHVlIHRvIHNvbWUgcGVyc29uYWwgaXNzdWVzLCBJIGFtIHVuYWJsZSB0 byBwYXJ0aWNpcGF0ZSBpbjxicj4KJmd0OyB0b2RheSdzIG1lZXRpbmcuPGJyPgomZ3Q7Jm5ic3A7 IDxicj4KJmd0OyBUaGFua3MsPGJyPgomZ3Q7IFNoYWhhcjxicj4KJmd0OyBGcm9tOiBTUERLICZs dDs8YSBocmVmPSJtYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZyI+c3Bkay1ib3VuY2Vz QGxpc3RzLjAxLm9yZzwvYT4mZ3Q7IG9uIGJlaGFsZiBvZiBMdXNlLCBQYXVsIEUgJmx0OzxhIGhy ZWY9Im1haWx0bzpwYXVsLmUubHVzZUAlMGIiPnBhdWwuZS5sdXNlQDxicj4KPC9hPiZndDsgaW50 ZWwuY29tJmd0Ozxicj4KJmd0OyBTZW50OiBUdWVzZGF5LCBNYXkgOCwgMjAxOCA0OjI1OjI5IFBN PGJyPgomZ3Q7IFRvOiBTdG9yYWdlIFBlcmZvcm1hbmNlIERldmVsb3BtZW50IEtpdDxicj4KJmd0 OyBTdWJqZWN0OiBSZTogW1NQREtdIEJ1aWxkaW5nIHNwZGsgb24gQ2VudE9TNjxicj4KJmd0OyZu YnNwOyA8YnI+CiZndDsgSGkgU2hhaGFyLDxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgQ291cGxl IG9mIHF1aWNrIHRoaW5nczo8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7ICogdGhhbmtzIGZvciBw dXR0aW5nIGFsbCB0aGlzIHRpbWUgYW5kIGVmZm9ydCBpbnRvIHRyeWluZyB0byBtYWtlIHRoaXMg d29yayE8YnI+CiZndDsgKiBpbiB0aGUgY29tbXVuaXR5IG1vZGVsLCBwYXRjaGVzIGFyZW4mIzgy MTc7dCBhY2NlcHRlZCBiYXNlZCBvbiBvbmUgaW5kaXZpZHVhbCYjODIxNztzPGJyPgomZ3Q7IGFi aWxpdHkvZGVzaXJlIHRvIHN1cHBvcnQgdGhlbSBzbyBhcHByZWNpYXRlIHRoZSBvZmZlciBidXQg aW4gZ2VuZXJhbCBhbnk8YnI+CiZndDsgcGF0Y2ggdGhhdCBpcyBhY2NlcHRlZCBiZWNvbWVzIHRo ZSByZXNwb25zaWJseSBvZiB0aGUgY29tbXVuaXR5IChtb3N0bHkgdGhlPGJyPgomZ3Q7IG1haW50 YWluZXJzKSB0byBzdXBwb3J0IGl0IGxvbmcgdGVybS4mbmJzcDsgT3RoZXJ3aXNlIHdlJiM4MjE3 O2QgaGF2ZSB3aGF0IEkgbGlrZSB0byBjYWxsPGJyPgomZ3Q7ICYjODIyMDt0aGUgZmxlYSBtYXJr ZXQgbW9kZWwmIzgyMjE7IHdoZXJlIHRoZXJlJiM4MjE3O3MgYSBidW5jaCBvZiBzZXBhcmF0ZSBp bmRpdmlkdWFsczxicj4KJmd0OyBzdXBwb3J0aW5nIHRoZWlyIG93biB0aGluZ3Mgd2l0aCB2ZXJ5 IGxpdHRsZSBjb2hlc2l2ZW5lc3MgYWNyb3NzIGV2ZXJ5dGhpbmcgSjxicj4KJmd0OyZuYnNwOyA8 YnI+CiZndDsgU28sIHdydCBuZXh0IHN0ZXBzLCBpZiB0aGUgcGF0Y2ggaXNuJiM4MjE3O3QgYSB0 cmVtZW5kb3VzIGFtb3VudCBvZiBlZmZvcnQgSSB3b3VsZDxicj4KJmd0OyBzdWdnZXN0IHlvdSBn byBhaGVhZCBhbmQgc3VibWl0IGl0LiBUaGF0JiM4MjE3O3MgdGhlIGJlc3Qgd2F5IHRvIGdldCBl dmVyeW9uZSBvbiB0aGU8YnI+CiZndDsgc2FtZSBwYWdlIHdydCBleGFjdGx5IHdoYXQgd2UmIzgy MTc7cmUgdGFsa2luZyBhYm91dC4mbmJzcDsgSWYgaXQgaXMgc29tZSBzaWduaWZpY2FudDxicj4K Jmd0OyBlZmZvcnQgdGhlbiwgYXMgUGF3ZWwgc3RhdGVzLCB5b3UgY2FuIGNhbGwgaW50byBhIGNv bW11bml0eSBtZWV0aW5nIChzZWUgZW1haWw8YnI+CiZndDsgSSBzZW50IG91dCBsYXN0IG5pZ2h0 KSBvciB5b3UgY2FuIGV4cGxhaW4gbW9yZSBkZXRhaWxzIG9uIHRoaXMgbGlzdC48YnI+CiZndDsm bmJzcDsgPGJyPgomZ3Q7IFRoYW5rcyBhZ2FpbiEhPGJyPgomZ3Q7IFBhdWw8YnI+CiZndDsmbmJz cDsgPGJyPgomZ3Q7IEZyb206IFNQREsgWzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlz dHMuMDEub3JnIiBpZD0iTFBsbmsyNzAwMDciPm1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEu b3JnPC9hPl0gT24gQmVoYWxmIE9mIFdvZGtvd3NraSwgUGF3ZWxYPGJyPgomZ3Q7IFNlbnQ6IFR1 ZXNkYXksIE1heSA4LCAyMDE4IDU6NTcgQU08YnI+CiZndDsgVG86IFN0b3JhZ2UgUGVyZm9ybWFu Y2UgRGV2ZWxvcG1lbnQgS2l0ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bka0BsaXN0cy4wMS5vcmci PnNwZGtAbGlzdHMuMDEub3JnPC9hPiZndDs8YnI+CiZndDsgU3ViamVjdDogUmU6IFtTUERLXSBC dWlsZGluZyBzcGRrIG9uIENlbnRPUzY8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEkgdGhpbmsg c29tZW9uZSB3aWxsIGFuc3dlciB5b3Ugb24gdGhpcyBtYWlsaW5nIGxpc3QgYnV0IHRoZXJlIGlz IGNvbW11bml0eTxicj4KJmd0OyBtZWV0aW5nIHRvZGF5IHRvby4gWW91IGNhbiByYWlzZSB0aGlz IGlmIHlvdSB3aXNoLjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgUGF3ZWw8YnI+CiZndDsmbmJz cDsgPGJyPgomZ3Q7IEZyb206IFNQREsgWzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlz dHMuMDEub3JnIiBpZD0iTFBsbmsyMjM0NDMiPm1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEu b3JnPC9hPl0gT24gQmVoYWxmIE9mIFNoYWhhciBTYWx6bWFuPGJyPgomZ3Q7IFNlbnQ6IFR1ZXNk YXksIE1heSA4LCAyMDE4IDI6MjMgUE08YnI+CiZndDsgVG86IFN0b3JhZ2UgUGVyZm9ybWFuY2Ug RGV2ZWxvcG1lbnQgS2l0ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bka0BsaXN0cy4wMS5vcmciPnNw ZGtAbGlzdHMuMDEub3JnPC9hPiZndDs8YnI+CiZndDsgU3ViamVjdDogUmU6IFtTUERLXSBCdWls ZGluZyBzcGRrIG9uIENlbnRPUzY8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEhpLDxicj4KJmd0 OyZuYnNwOyA8YnI+CiZndDsgSSBhdHRlbXB0ZWQgdG8gcHVzaCB0aGUgZ2NjIHN1cHBvcnQgcGF0 Y2ggdG8gZHBkaywgYW5kIGdvdCByZWplY3RlZCBzaW5jZSB0aGV5PGJyPgomZ3Q7IGRvIG5vdCB3 aXNoIHRvIHN1cHBvcnQgQ2VudE9TNi48YnI+CiZndDsgV291bGQgaXQgYmUgcG9zc2libGUgdG8g bWFudWFsbHkgYWRkIHRoZSBwYXRjaCB0byB0aGUgc3VwcG9ydGVkIGRwZGsgdmVyc2lvbjxicj4K Jmd0OyAoY3VycmVudGx5IDE4LjAxKS48YnI+CiZndDsgSSB3b3VsZCBiZSBoYXBweSB0byBzdXBw b3J0IENlbnRPUzYgaXNzdWVzLjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgVGhhbmtzLDxicj4K Jmd0OyBTaGFoYXI8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEZyb206IFNoYWhhciBTYWx6bWFu PGJyPgomZ3Q7IFNlbnQ6IFR1ZXNkYXksIEFwcmlsIDI0LCAyMDE4IDM6NDA6NTEgUE08YnI+CiZn dDsgVG86IFN0b3JhZ2UgUGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQgS2l0PGJyPgomZ3Q7IENjOiBJ bGFuIFN0ZWluYmVyZzsgSWRvIEJlbmRhOyBZYWVsIFNoYXZpdDxicj4KJmd0OyBTdWJqZWN0OiBS ZTogQnVpbGRpbmcgc3BkayBvbiBDZW50T1M2PGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBPSywg Z290IGV2ZXJ5dGhpbmcgdG8gd29yay48YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEZvciBEUERL LCBJIGhhZCB0byB0byBkbyB0aGUgZm9sbG93aW5nOjxicj4KJmd0OyBhZGQgYSBwYXRjaCB0byBt YWtlIHRoZSBuZXcgX19ydGVfZXhwZXJpbWVudGFsIGF0dHJpYnV0ZSB0byB3b3JrPGJyPgomZ3Q7 IHJlbW92ZSBhIGJ1bmNoIG9mIG1vZHVsZXMgdmlhIGNvbmZpZyB3aGljaCBoYWQgc29tZSBnbmFy bHkgY29tcGlsYXRpb24gZXJyb3JzLDxicj4KJmd0OyBhbmQgYXJlIG5vdCBuZWVkZWQgZm9yIHNw ZGs8YnI+CiZndDsgdXNlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIGluIHRoZSBFWFRSQV9DRkxBR1Mg dG8gYXZvaWQgYSB0b24gb2Ygc3RyaWN0IGFsaWFzaW5nPGJyPgomZ3Q7IGVycm9ycy48YnI+CiZn dDsmbmJzcDsgPGJyPgomZ3Q7IEkgdHJpZWQgc3BkayAxOC4wMSwgYW5kIHJhbiBpbnRvIHNvbWUg aXNzdWVzIHdpdGggdGhlIHNoYXJlZCBsaWJyYXJ5IGJ1aWxkLiBBczxicj4KJmd0OyBJIHNhdyB0 aGF0IERhbmllbCBoYWQgYWxyZWFkeSBkZWFsdCB3aXRoIHRoZW0sIEkgdHJpZWQgY2hlcnJ5IHBp Y2tpbmcsIGJ1dDxicj4KJmd0OyBldmVudHVhbGx5IHVzZWQgdGhlIG1hc3RlciBicmFuY2guPGJy PgomZ3Q7IEkgZ290IHRoZXNlIHR5cGUgb2Ygd2FybmluZ3M6PGJyPgomZ3Q7Jm5ic3A7IDxicj4K Jmd0OyAvdXNyL2Jpbi9sZDogd2FybmluZzogbGlicnRlX21idWYuc28uMy4xLCBuZWVkZWQgYnk8 YnI+CiZndDsgL2tob21lL3NoYWhhci5zYWx6bWFuL0thbWluYXJpby9naXQvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLTxicj4KJmd0OyBnY2MvbGliL2xpYnJ0ZV9idXNfcGNpLnNvLCBub3Qg Zm91bmQgKHRyeSB1c2luZyAtcnBhdGggb3IgLXJwYXRoLWxpbmspPGJyPgomZ3Q7IC91c3IvYmlu L2xkOiB3YXJuaW5nOiBsaWJydGVfZXRoZGV2LnNvLjguMSwgbmVlZGVkIGJ5PGJyPgomZ3Q7IC9r aG9tZS9zaGFoYXIuc2Fsem1hbi9LYW1pbmFyaW8vZ2l0L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC08YnI+CiZndDsgZ2NjL2xpYi9saWJydGVfYnVzX3BjaS5zbywgbm90IGZvdW5kICh0cnkg dXNpbmcgLXJwYXRoIG9yIC1ycGF0aC1saW5rKTxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgSSBh ZGRlZCB0aGUgZm9sbG93aW5nIHBhdGNoIGJlbGxvdyB0byBtYWtlIHRoZW0gZ28gYXdheS48YnI+ CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEknbGwgYXBwcm9hY2ggdGhlIGRwZGsgY29tbXVuaXR5IG9u IHRoZSBtYWlsaW5nIGxpc3QgaW4gb3JkZXIgdG8gZ2V0IHRoZTxicj4KJmd0OyBfX3J0ZV9leHBl cmltZW50YWwgc3R1ZmYgdG8gd29yay48YnI+CiZndDsgTXkgZmluYWwgY29uZmlndXJhdGlvbiBp czo8YnI+CiZndDsgQ2Vuck9TNi40PGJyPgomZ3Q7IGdjYyA0LjQuNy0xNzxicj4KJmd0OyBkcGRr IHYxOC4wMjxicj4KJmd0OyBzcGRrIG1hc3Rlcjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgV2hh dCBhcmUgdGhlIG5leHQgc3RlcHM/PGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBTaGFoYXI8YnI+ CiZndDsmbmJzcDsgPGJyPgomZ3Q7IFAuUy4gSGVyZSBpcyB0aGUgcGF0Y2ggdG8gcmVtb3ZlIHRo ZSB3YXJuaW5ncyBhYm92ZS48YnI+CiZndDsgY29tbWl0IGQ0ZWY3NDRkZTFjYzQ5Mjg5NzJiNzA0 MmQxYzkwYWZmMTJkYjc4Njc8YnI+CiZndDsgQXV0aG9yOiBzaGFoYXIgc2Fsem1hbiAmbHQ7PGEg aHJlZj0ibWFpbHRvOnNoYWhhci5zYWx6bWFuQGthbWluYXJpby5jb20iPnNoYWhhci5zYWx6bWFu QGthbWluYXJpby5jb208L2E+Jmd0Ozxicj4KJmd0OyBEYXRlOiZuYnNwOyZuYnNwOyBUdWUgQXBy IDI0IDE0OjMxOjUyIDIwMTggJiM0MzswMzAwPGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBsaWIvZW52X2RwZGs6IGFkZCByZXF1aXJlZCBsaWJyYXJpZXM8 YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IGRpZmYgLS1naXQgYS9saWIvZW52X2RwZGsvZW52Lm1r IGIvbGliL2Vudl9kcGRrL2Vudi5tazxicj4KJmd0OyBpbmRleCA0NTAwNDNjLi5iNDZiZmVkIDEw MDY0NDxicj4KJmd0OyAtLS0gYS9saWIvZW52X2RwZGsvZW52Lm1rPGJyPgomZ3Q7ICYjNDM7JiM0 MzsmIzQzOyBiL2xpYi9lbnZfZHBkay9lbnYubWs8YnI+CiZndDsgQEAgLTY4LDYgJiM0Mzs2OCwx OCBAQCBpZm5lcSAoJCh3aWxkY2FyZCAkKERQREtfQUJTX0RJUikvbGliL2xpYnJ0ZV9tYWxsb2Mu KiksKTxicj4KJmd0OyZuYnNwOyBEUERLX0xJQl9MSVNUICYjNDM7PSBydGVfbWFsbG9jPGJyPgom Z3Q7Jm5ic3A7IGVuZGlmPGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyAmIzQzO2lmbmVxICgsICQo d2lsZGNhcmQgJChEUERLX0FCU19ESVIpL2xpYi9saWJydGVfbWJ1Zi4qKSk8YnI+CiZndDsgJiM0 MztEUERLX0xJQl9MSVNUICYjNDM7PSBydGVfbWJ1Zjxicj4KJmd0OyAmIzQzO2VuZGlmPGJyPgom Z3Q7ICYjNDM7PGJyPgomZ3Q7ICYjNDM7aWZuZXEgKCwgJCh3aWxkY2FyZCAkKERQREtfQUJTX0RJ UikvbGliL2xpYnJ0ZV9uZXQuKikpPGJyPgomZ3Q7ICYjNDM7RFBES19MSUJfTElTVCAmIzQzOz0g cnRlX25ldDxicj4KJmd0OyAmIzQzO2VuZGlmPGJyPgomZ3Q7ICYjNDM7PGJyPgomZ3Q7ICYjNDM7 aWZuZXEgKCwgJCh3aWxkY2FyZCAkKERQREtfQUJTX0RJUikvbGliL2xpYnJ0ZV9ldGhkZXYuKikp PGJyPgomZ3Q7ICYjNDM7RFBES19MSUJfTElTVCAmIzQzOz0gcnRlX2V0aGRldjxicj4KJmd0OyAm IzQzO2VuZGlmPGJyPgomZ3Q7ICYjNDM7PGJyPgomZ3Q7Jm5ic3A7ICMgbGlicnRlX3BjaSBhbmQg bGlicnRlX2J1c19wY2kgd2VyZSBhZGRlZCBpbiBEUERLIDE3LjExLiBMaW5rIHRoZXNlPGJyPgom Z3Q7IGxpYnJhcmllcyBjb25kaXRpb25hbGx5PGJyPgomZ3Q7Jm5ic3A7ICMgYmFzZWQgb24gdGhl aXIgZXhpc3RlbmNlIHRvIG1haW50YWluIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuPGJyPgomZ3Q7 Jm5ic3A7IGlmbmVxICgsICQod2lsZGNhcmQgJChEUERLX0FCU19ESVIpL2xpYi9saWJydGVfcGNp LiopKTxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7Jm5ic3A7IDxicj4K Jmd0OyBGcm9tOiBTUERLICZsdDs8YSBocmVmPSJtYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAx Lm9yZyI+c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZzwvYT4mZ3Q7IG9uIGJlaGFsZiBvZiBTaGFo YXIgU2Fsem1hbiAmbHQ7c2hhaGFyLnNhbDxicj4KJmd0OyA8YSBocmVmPSJtYWlsdG86em1hbkBr YW1pbmFyaW8uY29tIj56bWFuQGthbWluYXJpby5jb208L2E+Jmd0Ozxicj4KJmd0OyBTZW50OiBU dWVzZGF5LCBBcHJpbCAyNCwgMjAxOCA5OjU3IEFNPGJyPgomZ3Q7IFRvOiBTdG9yYWdlIFBlcmZv cm1hbmNlIERldmVsb3BtZW50IEtpdDxicj4KJmd0OyBTdWJqZWN0OiBSZTogW1NQREtdIEJ1aWxk aW5nIHNwZGsgb24gQ2VudE9TNjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgR3JlYXQsIGFuZCB0 aGFua3MhPGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBJIGhhdmUgYmVlbiBydW5uaW5nIGludG8g aXNzdWVzIGNvbXBpbGluZyBkcGRrIDE3LjExIG9uIENlbnRPUzYgKHRoZXJlIHNlZW1zPGJyPgom Z3Q7IHRvIGJlIGEgZ2NjIGlzc3VlIHRoYXQgZG9lcyBub3QgZXhpc3QgaW4gb3RoZXIgdmVyc2lv bnMpLCBJJ2xsIGZvY3VzIG15PGJyPgomZ3Q7IGVmZm9ydHMgb24gZHBkayAxOC4wMi48YnI+CiZn dDsgRnJvbTogU1BESyAmbHQ7PGEgaHJlZj0ibWFpbHRvOnNwZGstYm91bmNlc0BsaXN0cy4wMS5v cmciPnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmc8L2E+Jmd0OyBvbiBiZWhhbGYgb2YgVmVya2Ft cCwgRGFuaWVsICZsdDtkYW5pZWwudmU8YnI+CiZndDsgPGEgaHJlZj0ibWFpbHRvOnJrYW1wQGlu dGVsLmNvbSI+cmthbXBAaW50ZWwuY29tPC9hPiZndDs8YnI+CiZndDsgU2VudDogTW9uZGF5LCBB cHJpbCAyMywgMjAxOCA5OjQwOjM2IFBNPGJyPgomZ3Q7IFRvOiBTdG9yYWdlIFBlcmZvcm1hbmNl IERldmVsb3BtZW50IEtpdDxicj4KJmd0OyBTdWJqZWN0OiBSZTogW1NQREtdIEJ1aWxkaW5nIHNw ZGsgb24gQ2VudE9TNjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgSGkgU2hhaGFyLDxicj4KJmd0 OyZuYnNwOyA8YnI+CiZndDsgSSYjODIxNzt2ZSBwdXNoZWQgYSBwYXRjaCBmb3IgdGhlIFNQREsg bWFzdGVyIGJyYW5jaCB0aGF0IHNob3VsZCBhbGxvdyBpdCB0byBjb21waWxlPGJyPgomZ3Q7IHdp dGggRFBESyAxNi4wNzogPGEgaHJlZj0iaHR0cHM6Ly9yZXZpZXcuZ2Vycml0aHViLmlvLyMvYy9z cGRrL3NwZGsvJiM0MzsvNDA4NzQzLyIgaWQ9IkxQbG5rNTcyNzEyIj4KaHR0cHM6Ly9yZXZpZXcu Z2Vycml0aHViLmlvLyMvYy9zcGRrL3NwZGsvJiM0MzsvNDA4NzQzLzwvYT48YnI+CiZndDsmbmJz cDsgPGJyPgomZ3Q7IEdlcnJpdCBDb2RlIFJldmlldzxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsg cmV2aWV3LmdlcnJpdGh1Yi5pbzxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgS2VlcCBpbiB0b3Vj aC4gQ29weXJpZ2h0ICZjb3B5OyAyMDE3IHwgR2Vycml0Rm9yZ2UgTHRkLiA8YSBocmVmPSJtYWls dG86aW5mb0BnZXJyaXRmb3JnZS5jb20iPgppbmZvQGdlcnJpdGZvcmdlLmNvbTwvYT48YnI+CiZn dDsgPGEgaHJlZj0iaHR0cDovL3d3dy5nZXJyaXRmb3JnZS5jb20iIGlkPSJMUGxuazMwNjMyIj53 d3cuZ2Vycml0Zm9yZ2UuY29tPC9hPjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsmbmJzcDsgPGJy PgomZ3Q7IEhvd2V2ZXIsIERQREsgMTYuMDcgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCB1cHN0cmVh bTsgSSBoaWdobHkgcmVjb21tZW5kIHRoYXQ8YnI+CiZndDsgeW91IHVwZGF0ZSB0byBhIG5ld2Vy IHZlcnNpb24uIFNQREsgaXMgY3VycmVudGx5IHRlc3RlZCB3aXRoIERQREsgMTguMDIuPGJyPgom Z3Q7Jm5ic3A7IDxicj4KJmd0OyBUaGUgVkZJTyBpc3N1ZSB5b3UgbWVudGlvbiBoYXMgYWxzbyBi ZWVuIGZpeGVkIG9uIFNQREsgbWFzdGVyLCBhbmQgaXQgd2lsbCBiZTxicj4KJmd0OyBwYXJ0IG9m IHRoZSBTUERLIHYxOC4wNCByZWxlYXNlLjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgVGhhbmtz LDxicj4KJmd0OyAtLSBEYW5pZWw8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEZyb206IFNQREsg WzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnIiBpZD0iTFBsbms4Mjkx MDAiPm1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3JnPC9hPl0gT24gQmVoYWxmIE9mIFNo YWhhciBTYWx6bWFuPGJyPgomZ3Q7IFNlbnQ6IFN1bmRheSwgQXByaWwgMjIsIDIwMTggNjo0MSBB TTxicj4KJmd0OyBUbzogU3RvcmFnZSBQZXJmb3JtYW5jZSBEZXZlbG9wbWVudCBLaXQgJmx0Ozxh IGhyZWY9Im1haWx0bzpzcGRrQGxpc3RzLjAxLm9yZyI+c3Bka0BsaXN0cy4wMS5vcmc8L2E+Jmd0 Ozxicj4KJmd0OyBTdWJqZWN0OiBbU1BES10gQnVpbGRpbmcgc3BkayBvbiBDZW50T1M2PGJyPgom Z3Q7Jm5ic3A7IDxicj4KJmd0OyBIaSw8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IEZpbmFsbHkg Z290IHRvIGxvb2tpbmcgYXQgc3VwcG9ydCBvZiBzcGRrIGJ1aWxkIG9uIENlbnRPUzYsIHRoaW5n cyBsb29rIGdvb2QsPGJyPgomZ3Q7IGV4Y2VwdCBmb3Igb25lIGlzc3VlLjxicj4KJmd0OyBzcGRr IGlzIGxhdGVzdCAxOC4wMS54IHZlcnNpb24sIGRwZGsgaXMgMTYuMDcgKCYjNDM7MyBkcGRrIHBh dGNoZXMgdG8gYWxsb3c8YnI+CiZndDsgY29tcGlsYXRpb24pIGFuZCBzb21lIG1pbm9yIHBhdGNo ZXMgKG1haW5seSBzb21lIG1lbW9yeSBjb25maWd1cmF0aW9uIHN0dWZmKSw8YnI+CiZndDsga2Vy bmVsIGlzIGEgcGF0Y2hlZCA0LjkuNi48YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IGJ1aWxkIHN1 Y2NlZWRlZCBleGNlcHQgZm9yIHRoZSB1c2FnZSBvZiB0aGUgZHBkayBmdW5jdGlvbiBwY2lfdmZp b19pc19lbmFibGVkLjxicj4KJmd0OyBJIGhhZCB0byBhcHBseSB0aGUgcGF0Y2ggYmVsbG93LCBy ZW1vdmluZyB0aGUgdXNhZ2Ugb2YgdGhpcyBmdW5jdGlvbiBhbmQgdGhlbjxicj4KJmd0OyBjb21w aWxhdGlvbiBjb21wbGV0ZWQgd2l0aG91dCBhbnkgaXNzdWVzLjxicj4KJmd0OyZuYnNwOyA8YnI+ CiZndDsgSXQgc2VlbXMgdGhhdCBJIGFtIG1pc3Npbmcgc29tZSBzb3J0IG9mIGRwZGsgY29uZmln dXJhdGlvbiBhcyBJIHNlZSB0aGF0IHRoZTxicj4KJmd0OyBmdW5jdGlvbiBpcyBidWlsdCwgYnV0 IG5vdCBwYWNrYWdlZCBpbnRvIHRoZSBnZW5lcmF0ZWQgYXJjaGl2ZS48YnI+CiZndDsmbmJzcDsg PGJyPgomZ3Q7IEkgd2VudCBiYWNrIHRvIHNxdWFyZSBvbmUgYW5kIHJhbiB0aGUgaW5zdHJ1Y3Rp b25zIGluIDxhIGhyZWY9Imh0dHA6Ly93d3cuc3Bkay5pby9kb2MvZyIgaWQ9IkxQbG5rMjkzMzAx Ij4KaHR0cDovL3d3dy5zcGRrLmlvL2RvYy9nPC9hPjxicj4KJmd0OyBldHRpbmdfc3RhcnRlZC5o dG1sLCBidXQgSSBzZWUgbm8gbWVudGlvbiBvZiBkcGRrIHRoZXJlLiBBY3R1YWxseSB0aGU8YnI+ CiZndDsgLi9jb25maWd1cmUgcmVxdWlyZXMgaXQuPGJyPgomZ3Q7Jm5ic3A7IDxicj4KJmd0OyBN eSBuZXh0IHN0ZXAgaXMgdG8gdXNlIGEgbW9yZSByZWNlbnQgZHBkaywgYnV0IHNob3VsZG4ndCB0 aGlzIHdvcmsgd2l0aCBteTxicj4KJmd0OyB2ZXJzaW9uPyBBbSBJIG1pc3Npbmcgc29tZSBkcGRr IGNvbmZpZ3VyYXRpb24/PGJyPgomZ3Q7IEJUVywgYXMgd2UgYXJlIG5vdCB1c2luZyB2aG9zdCwg b24gb3VyIDE3LjA3IHZlcnNpb24gd2Ugc2ltcGx5IHVzZTxicj4KJmd0OyBDT05GSUdfVkhPU1Q9 biBpbiBvcmRlciB0byBza2lwIHRoaXMsIGJ1dCBJIHdvdWxkIGJlIGhhcHBpZXIgaWYgd2UgdXNl ZCBhPGJyPgomZ3Q7IGJldHRlciBzb2x1dGlvbi48YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IFNo YWhhcjxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsgUC5TLiBIZXJlIGlzIHRoZSBwYXRjaCB0byBy ZW1vdmUgdXNlIG9mIHRoaXMgZnVuY3Rpb246PGJyPgomZ3Q7IGRpZmYgLS1naXQgYS9saWIvZW52 X2RwZGsvdnRvcGh5cy5jIGIvbGliL2Vudl9kcGRrL3Z0b3BoeXMuYzxicj4KJmd0OyBpbmRleCA5 MmFhMjU2Li5mMzg5MjlmIDEwMDY0NDxicj4KJmd0OyAtLS0gYS9saWIvZW52X2RwZGsvdnRvcGh5 cy5jPGJyPgomZ3Q7ICYjNDM7JiM0MzsmIzQzOyBiL2xpYi9lbnZfZHBkay92dG9waHlzLmM8YnI+ CiZndDsgQEAgLTUzLDggJiM0Mzs1MywxMCBAQDxicj4KJmd0OyZuYnNwOyAjZGVmaW5lIFNQREtf VkZJT19FTkFCTEVEIDE8YnI+CiZndDsmbmJzcDsgI2luY2x1ZGUgJmx0O2xpbnV4L3ZmaW8uaCZn dDs8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7ICYjNDM7I2lmIDA8YnI+CiZndDsmbmJzcDsgLyog SW50ZXJuYWwgRFBESyBmdW5jdGlvbiBmb3J3YXJkIGRlY2xhcmF0aW9uICovPGJyPgomZ3Q7Jm5i c3A7IGludCBwY2lfdmZpb19pc19lbmFibGVkKHZvaWQpOzxicj4KJmd0OyAmIzQzOyNlbmRpZjxi cj4KJmd0OyZuYnNwOyA8YnI+CiZndDsmbmJzcDsgc3RydWN0IHNwZGtfdmZpb19kbWFfbWFwIHs8 YnI+CiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg c3RydWN0IHZmaW9faW9tbXVfdHlwZTFfZG1hX21hcCBtYXA7PGJyPgomZ3Q7IEBAIC0zNDEsOSAm IzQzOzM0MywxMSBAQCBzcGRrX3Z0b3BoeXNfaW9tbXVfaW5pdCh2b2lkKTxicj4KJmd0OyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBESVIgKmRpcjs8YnI+ CiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc3Ry dWN0IGRpcmVudCAqZDs8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7ICYjNDM7I2lmIDA8YnI+CiZn dDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKCFw Y2lfdmZpb19pc19lbmFibGVkKCkpIHs8YnI+CiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgcmV0dXJuOzxicj4KJmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PGJyPgomZ3Q7ICYjNDM7I2VuZGlmPGJyPgomZ3Q7Jm5i c3A7IDxicj4KJmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyBkaXIgPSBvcGVuZGlyKCZxdW90Oy9wcm9jL3NlbGYvZmQmcXVvdDspOzxicj4KJmd0OyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoIWRpcikg ezxicj4KJmd0OyZuYnNwOyA8YnI+CiZndDsmbmJzcDsgPGJyPgomZ3Q7IF9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPGJyPgomZ3Q7IFNQREsgbWFpbGluZyBs aXN0PGJyPgomZ3Q7IDxhIGhyZWY9Im1haWx0bzpTUERLQGxpc3RzLjAxLm9yZyI+U1BES0BsaXN0 cy4wMS5vcmc8L2E+PGJyPgomZ3Q7IDxhIGhyZWY9Imh0dHBzOi8vbGlzdHMuMDEub3JnL21haWxt YW4vbGlzdGluZm8vc3BkayIgaWQ9IkxQbG5rNjYxMzQyIj5odHRwczovL2xpc3RzLjAxLm9yZy9t YWlsbWFuL2xpc3RpbmZvL3NwZGs8L2E+PGJyPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXzxicj4KU1BESyBtYWlsaW5nIGxpc3Q8YnI+CjxhIGhyZWY9Im1h aWx0bzpTUERLQGxpc3RzLjAxLm9yZyI+U1BES0BsaXN0cy4wMS5vcmc8L2E+PGJyPgo8YSBocmVm PSJodHRwczovL2xpc3RzLjAxLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3NwZGsiIGlkPSJMUGxuazU4 OTI4MSI+aHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9zcGRrPC9hPjwvc3Bh bj48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rp dj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvYm9keT4KPC9odG1sPgo= --===============8682726509789073755==--