<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>116122</bug_id>
          
          <creation_ts>2013-05-14 12:58:14 -0700</creation_ts>
          <short_desc>[Mac] Add a testing shim for secure event input functions</short_desc>
          <delta_ts>2013-05-15 10:00:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>116121</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dpranke</cc>
    
    <cc>glenn</cc>
    
    <cc>ossy</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>888995</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-14 12:58:14 -0700</bug_when>
    <thetext>Secure event input is set per user session. When running tests, we should not change it, or depend on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889020</commentid>
    <comment_count>1</comment_count>
      <attachid>201755</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-14 13:43:19 -0700</bug_when>
    <thetext>Created attachment 201755
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889028</commentid>
    <comment_count>2</comment_count>
      <attachid>201755</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2013-05-14 14:21:40 -0700</bug_when>
    <thetext>Comment on attachment 201755
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=201755&amp;action=review

r=me, with several comments.

&gt; Source/WebCore/Configurations/WebCoreTestShim.xcconfig:24
&gt; +#include &quot;WebCore.xcconfig&quot;

What settings from WebCore.xcconfig does this need? Can they be moved to Base.xcconfig instead so we don&apos;t have to reset a bunch of things below?

&gt; Source/WebCore/Configurations/WebCoreTestShim.xcconfig:29
&gt; +PRIVATE_HEADERS_FOLDER_PATH = $(PRIVATE_HEADERS_FOLDER_PATH_$(CONFIGURATION));
&gt; +PRIVATE_HEADERS_FOLDER_PATH_Debug = WebCoreTestShim;
&gt; +PRIVATE_HEADERS_FOLDER_PATH_Release = $(PRIVATE_HEADERS_FOLDER_PATH_Debug);
&gt; +PRIVATE_HEADERS_FOLDER_PATH_Production = /usr/local/include/WebCoreTestShim;

I wouldn&apos;t expect a shim to need to install headers. Can these simply be removed?

&gt; Source/WebCore/WebCore.xcodeproj/project.pbxproj:27347
&gt; +				PRODUCT_NAME = WebCoreTestShim;

This is set in the .xcconfig file so I think it&apos;s redundant to include in the project too.

&gt; Source/WebCore/WebCore.xcodeproj/project.pbxproj:27355
&gt; +				PRODUCT_NAME = WebCoreTestShim;

Ditto.

&gt; Source/WebCore/WebCore.xcodeproj/project.pbxproj:27363
&gt; +				PRODUCT_NAME = WebCoreTestShim;

Ditto.

&gt; Source/WebCore/platform/mac/DyldInterpose.h:26
&gt; +#ifndef DyldInterpose_h

Ugh, seeing dyld with this capitalization rubs me the wrong way. Can we use this opportunity to rename it to something without dyld in the name to avoid this problem, like DynamicLinkerInterposing.h?

&gt; Source/WebKit2/PluginProcess/mac/PluginProcessShim.mm:-29
&gt; -#import &quot;DYLDInterpose.h&quot;

I wonder how this ever built on case-sensitive filesystems?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889039</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-14 15:08:55 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r150089&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889236</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-05-15 03:56:32 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Committed &lt;http://trac.webkit.org/r150089&gt;.

It broke a webkitpy unit test on the bots:

  Traceback (most recent call last):
    File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/port/mac_unittest.py&quot;, line 119, in test_setup_environ_for_server
      self.assertEqual(env[&apos;DYLD_INSERT_LIBRARIES&apos;], &apos;/usr/lib/libgmalloc.dylib&apos;)
  AssertionError: &apos;/usr/lib/libgmalloc.dylib:/mock-build/libWebCoreTestShim.dylib&apos; != &apos;/usr/lib/libgmalloc.dylib&apos;
  
[617/1456] webkitpy.common.checkout.checkout_unittest.CommitMessageForThisCommitTest.test_commit_message_for_this_commit (+11)         

Could you fix it, please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889369</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-15 10:00:57 -0700</bug_when>
    <thetext>Zan just fixed in &lt;http://trac.webkit.org/changeset/150116&gt;. Sorry for the breakage.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201755</attachid>
            <date>2013-05-14 13:43:19 -0700</date>
            <delta_ts>2013-05-14 14:21:40 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>WebCoreShim.txt</filename>
            <type>text/plain</type>
            <size>29798</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1MDA4NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEzLTA1LTE0ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIEFkZCBhIHRlc3Rp
bmcgc2hpbSBmb3Igc2VjdXJlIGV2ZW50IGlucHV0IGZ1bmN0aW9ucworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE2MTIyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgYSBuZXcgdGFyZ2V0IHdpdGgg
YSBkeW5hbWljIGxpYnJhcnkgdGhhdCBpbnRlcnBvc2VzIHNlY3VyZSBldmVudCBpbnB1dCBmdW5j
dGlvbnMuCisgICAgICAgIFdlIG5lZWQgdGhpcyB0byBhdm9pZCBpbnRlcmZlcmluZyB3aXRoIHVz
ZXIgc2Vzc2lvbiBzdGF0ZS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYkNvcmVUZXN0
U2hpbS54Y2NvbmZpZzogQWRkZWQuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9EeWxkSW50ZXJwb3NlLmg6IE1vdmVk
IGZyb20gU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9EeWxkSW50ZXJwb3NlLmguCisgICAgICAg
ICogdGVzdGluZy9XZWJDb3JlVGVzdFNoaW1MaWJyYXJ5LmNwcDogQWRkZWQuCisgICAgICAgIChz
aGltRW5hYmxlU2VjdXJlRXZlbnRJbnB1dCk6CisgICAgICAgIChzaGltRGlzYWJsZVNlY3VyZUV2
ZW50SW5wdXQpOgorICAgICAgICAoc2hpbUlzU2VjdXJlRXZlbnRJbnB1dEVuYWJsZWQpOgorCiAy
MDEzLTA1LTE0ICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdS
RVNTSU9OOiB1bml0ZWQuY29tIGhhcyBvdmVybGFwcGluZyBlbGVtZW50cyBhbmQgaXMgYnJva2Vu
IGJ5IGZsZXggYm94IGNoYW5nZXMuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9u
cy9XZWJDb3JlVGVzdFNoaW0ueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
Q29uZmlndXJhdGlvbnMvV2ViQ29yZVRlc3RTaGltLnhjY29uZmlnCShyZXZpc2lvbiAwKQorKysg
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZVRlc3RTaGltLnhjY29uZmlnCSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDggQEAKKy8vIENvcHlyaWdodCAoQykgMjAxMyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLworLy8gUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisvLyBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKy8vIGFyZSBtZXQ6CisvLyAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorLy8gICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLy8gMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
Ky8vICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKy8vICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisvLworLy8gVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisvLyBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorLy8gSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisvLyBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUgorLy8gQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisvLyBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisvLyBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKy8vIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKy8vIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorLy8gKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisvLyBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKworI2luY2x1ZGUgIldlYkNvcmUueGNjb25maWciCisKK1BSSVZBVEVfSEVBREVS
U19GT0xERVJfUEFUSCA9ICQoUFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIXyQoQ09ORklHVVJB
VElPTikpOworUFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIX0RlYnVnID0gV2ViQ29yZVRlc3RT
aGltOworUFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIX1JlbGVhc2UgPSAkKFBSSVZBVEVfSEVB
REVSU19GT0xERVJfUEFUSF9EZWJ1Zyk7CitQUklWQVRFX0hFQURFUlNfRk9MREVSX1BBVEhfUHJv
ZHVjdGlvbiA9IC91c3IvbG9jYWwvaW5jbHVkZS9XZWJDb3JlVGVzdFNoaW07CisKK0lOU1RBTExf
UEFUSCA9ICQoSU5TVEFMTF9QQVRIXyQoQ09ORklHVVJBVElPTikpOworSU5TVEFMTF9QQVRIX1By
b2R1Y3Rpb24gPSAvdXNyL2xvY2FsL2xpYjsKKworU0tJUF9JTlNUQUxMID0gJChTS0lQX0lOU1RB
TExfJChGT1JDRV9UT09MX0lOU1RBTEwpKTsKK1NLSVBfSU5TVEFMTF8gPSBZRVM7CitTS0lQX0lO
U1RBTExfTk8gPSBZRVM7CitTS0lQX0lOU1RBTExfWUVTID0gTk87CisKK0RZTElCX0lOU1RBTExf
TkFNRV9CQVNFID0gJChEWUxJQl9JTlNUQUxMX05BTUVfQkFTRV8kKENPTkZJR1VSQVRJT04pKTsK
K0RZTElCX0lOU1RBTExfTkFNRV9CQVNFX1Byb2R1Y3Rpb24gPSAkKElOU1RBTExfUEFUSCk7CitE
WUxJQl9JTlNUQUxMX05BTUVfQkFTRV9EZWJ1ZyA9IEBycGF0aDsKK0RZTElCX0lOU1RBTExfTkFN
RV9CQVNFX1JlbGVhc2UgPSAkKERZTElCX0lOU1RBTExfTkFNRV9CQVNFX0RlYnVnKTsKKworUFJP
RFVDVF9OQU1FID0gV2ViQ29yZVRlc3RTaGltOworRVhFQ1VUQUJMRV9QUkVGSVggPSBsaWI7CitF
WFBPUlRFRF9TWU1CT0xTX0ZJTEUgPSA7CitPVEhFUl9MREZMQUdTID0gOworU0VDVE9SREVSX0ZM
QUdTID0gOwpJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagkocmV2aXNpb24gMTUwMDgxKQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw2ICsxNSw3
IEBACiAJCQlkZXBlbmRlbmNpZXMgPSAoCiAJCQkJNDE4MTZGODMxMzg1OUM3QTAwNTdBQUE0IC8q
IFBCWFRhcmdldERlcGVuZGVuY3kgKi8sCiAJCQkJNDE4MTZGODUxMzg1OUM3RDAwNTdBQUE0IC8q
IFBCWFRhcmdldERlcGVuZGVuY3kgKi8sCisJCQkJRTFCQTY3MUMxNzQyQ0JGODAwQzIwMjUxIC8q
IFBCWFRhcmdldERlcGVuZGVuY3kgKi8sCiAJCQkpOwogCQkJbmFtZSA9IEFsbDsKIAkJCXByb2R1
Y3ROYW1lID0gQWxsOwpAQCAtNTQ2OCw2ICs1NDY5LDkgQEAKIAkJRTFCNzgzOUMxNjM3NDBBNzAw
MDdCNjkyIC8qIFNoYXJlZFdvcmtlclN0cmF0ZWd5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUI3ODM5QjE2Mzc0MEE3MDAwN0I2OTIgLyogU2hhcmVk
V29ya2VyU3RyYXRlZ3kuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQlFMUI3ODQyMDE2MzlDQkJFMDAwN0I2OTIgLyogU2hhcmVkV29ya2VyUmVwb3Np
dG9yeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
MUI3ODQxRjE2MzlDQkJFMDAwN0I2OTIgLyogU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5jcHAgKi87
IH07CiAJCUUxQkEwMDMxMTZGQjkyQUMwMEJBN0EzNSAvKiBSZXNvdXJjZUhhbmRsZUNsaWVudC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUJBMDAz
MDE2RkI5MkFDMDBCQTdBMzUgLyogUmVzb3VyY2VIYW5kbGVDbGllbnQuY3BwICovOyB9OworCQlF
MUJBNjZGMTE3NDJCRDg2MDBDMjAyNTEgLyogRHlsZEludGVycG9zZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFCQTY2RjAxNzQyQkQ4NjAwQzIwMjUx
IC8qIER5bGRJbnRlcnBvc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlFMUJBNjcxODE3NDJCRUU2MDBDMjAyNTEgLyogQ2FyYm9uLmZyYW1ld29y
ayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1QzI4
Njk0MDI4NDZEQ0QwMTg2MzVDQSAvKiBDYXJib24uZnJhbWV3b3JrICovOyB9OworCQlFMUJBNjcx
QTE3NDJCRUY0MDBDMjAyNTEgLyogV2ViQ29yZVRlc3RTaGltTGlicmFyeS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUJBNjcxOTE3NDJCRUY0MDBD
MjAyNTEgLyogV2ViQ29yZVRlc3RTaGltTGlicmFyeS5jcHAgKi87IH07CiAJCUUxQkU1MTJEMENG
NkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFCRTUxMkIwQ0Y2QzUxMjAwMkVBOTU5IC8qIFhT
TFRVbmljb2RlU29ydC5jcHAgKi87IH07CiAJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBY
U0xUVW5pY29kZVNvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUxQkU1MTJDMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCAqLzsg
fTsKIAkJRTFDMkYyNEExNTMzQTIxMjAwODNGOTc0IC8qIFNldHRpbmdzTWFjLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFDMkYyNDgxNTMzQTIxMjAw
ODNGOTc0IC8qIFNldHRpbmdzTWFjLm1tICovOyB9OwpAQCAtNjA4Miw2ICs2MDg2LDIwIEBACiAJ
CQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IEREMDQxRkJFMDlEOUREQkUwMDEwQUYyQTsKIAkJCXJl
bW90ZUluZm8gPSAiRGVyaXZlZCBTb3VyY2VzIjsKIAkJfTsKKwkJRTFCQTY2RjUxNzQyQkRFMDAw
QzIwMjUxIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRh
aW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IDA4NjdENjkwRkU4NDAyOEZDMDJB
QUMwNyAvKiBQcm9qZWN0IG9iamVjdCAqLzsKKwkJCXByb3h5VHlwZSA9IDE7CisJCQlyZW1vdGVH
bG9iYWxJRFN0cmluZyA9IDkzRjE5OEE1MDgyNDVFNTkwMDFFOUFCQzsKKwkJCXJlbW90ZUluZm8g
PSBXZWJDb3JlOworCQl9OworCQlFMUJBNjcxQjE3NDJDQkY4MDBDMjAyNTEgLyogUEJYQ29udGFp
bmVySXRlbVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJ
Y29udGFpbmVyUG9ydGFsID0gMDg2N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2Jq
ZWN0ICovOworCQkJcHJveHlUeXBlID0gMTsKKwkJCXJlbW90ZUdsb2JhbElEU3RyaW5nID0gRTFC
QTY2RjMxNzQyQkRFMDAwQzIwMjUxOworCQkJcmVtb3RlSW5mbyA9IFdlYkNvcmVUZXN0U2hpbTsK
KwkJfTsKIC8qIEVuZCBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLwogCiAvKiBCZWdp
biBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KQEAgLTEwNDA4LDcgKzEwNDI2LDcg
QEAKIAkJQUE0NzhBN0UxNkNENzBDMzAwN0QxQkI0IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBXZWJB
Y2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQUE0QzNBNzQwQjJCMTY3OTAwMjMzNEEyIC8qIFN0eWxlRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUE0QzNBNzUwQjJCMTY3OTAwMjMzNEEyIC8qIFN0eWxl
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUFBNUYzQjkwMTZDQzVCRUIwMDQ1NUVC
MCAvKiBDb3JlRm91bmRhdGlvbi5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVGb3Vu
ZGF0aW9uLmZyYW1ld29yazsgcGF0aCA9IC4uLy4uLy4uLy4uLy4uL1N5c3RlbS9MaWJyYXJ5L0Zy
YW1ld29ya3MvQ29yZUZvdW5kYXRpb24uZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBQTVGM0I5MDE2Q0M1QkVCMDA0NTVFQjAgLyogQ29yZUZvdW5kYXRpb24uZnJhbWV3
b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gd3Jh
cHBlci5mcmFtZXdvcms7IG5hbWUgPSBDb3JlRm91bmRhdGlvbi5mcmFtZXdvcms7IHBhdGggPSAv
U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlRm91bmRhdGlvbi5mcmFtZXdvcms7IHNvdXJj
ZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJCUFBNzMxODNDMTU5MjU1QjkwMEE5M0U2RSAvKiBJ
bmplY3RlZFNjcmlwdENhbnZhc01vZHVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUFBNzMxODNEMTU5MjU1QjkwMEE5M0U2RSAvKiBJbmplY3RlZFNjcmlw
dENhbnZhc01vZHVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3Rl
ZFNjcmlwdENhbnZhc01vZHVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQTdG
RUU5QzE2QTRFNkYzMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTcGVlY2hTeW50aGVzaXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTIyODIsNiArMTIzMDAsMTAgQEAKIAkJRTFCNzgzOUIx
NjM3NDBBNzAwMDdCNjkyIC8qIFNoYXJlZFdvcmtlclN0cmF0ZWd5LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IFNoYXJlZFdvcmtlclN0cmF0ZWd5Lmg7IHBhdGggPSB3b3JrZXJz
L1NoYXJlZFdvcmtlclN0cmF0ZWd5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUx
Qjc4NDFGMTYzOUNCQkUwMDA3QjY5MiAvKiBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFNoYXJlZFdvcmtlclJlcG9zaXRvcnku
Y3BwOyBwYXRoID0gd29ya2Vycy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTFCQTAwMzAxNkZCOTJBQzAwQkE3QTM1IC8qIFJlc291cmNl
SGFuZGxlQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
c291cmNlSGFuZGxlQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFC
QTY2RjAxNzQyQkQ4NjAwQzIwMjUxIC8qIER5bGRJbnRlcnBvc2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRHlsZEludGVycG9zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMUJBNjZGMjE3NDJCRENDMDBDMjAyNTEgLyogV2ViQ29yZVRlc3RTaGltLnhjY29u
ZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dC54Y2NvbmZpZzsgcGF0aCA9IFdlYkNvcmVUZXN0U2hpbS54Y2NvbmZpZzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFCQTY3MTYxNzQyQkRFMDAwQzIwMjUxIC8qIGxpYldlYkNvcmVU
ZXN0U2hpbS5keWxpYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVU
eXBlID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7IGluY2x1ZGVJbkluZGV4ID0gMDsgcGF0aCA9
IGxpYldlYkNvcmVUZXN0U2hpbS5keWxpYjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJRTFCQTY3MTkxNzQyQkVGNDAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hpbUxpYnJh
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQ29yZVRlc3RT
aGltTGlicmFyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxQkU1MTJCMENG
NkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gWFNMVFVuaWNvZGVTb3J0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTFCRTUxMkMwQ0Y2QzUxMjAwMkVBOTU5IC8qIFhTTFRVbmljb2RlU29ydC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYU0xUVW5pY29kZVNvcnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTFDMkYyNDgxNTMzQTIxMjAwODNGOTc0IC8qIFNl
dHRpbmdzTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2V0
dGluZ3NNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMjk2NCw2ICsxMjk4
NiwxNCBAQAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAw
OwogCQl9OworCQlFMUJBNjcwRTE3NDJCREUwMDBDMjAyNTEgLyogRnJhbWV3b3JrcyAqLyA9IHsK
KwkJCWlzYSA9IFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0g
MjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCUUxQkE2NzE4MTc0MkJFRTYwMEMyMDI1MSAv
KiBDYXJib24uZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJCQkpOworCQkJcnVuT25seUZv
ckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAvKiBFbmQgUEJYRnJhbWV3b3Jr
c0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhHcm91cCBzZWN0aW9uICovCkBA
IC0xMjk4Nyw2ICsxMzAxNyw3IEBACiAJCQkJNUQ4N0JCNEYxMUUzRUFFQjAwNzAyQjZGIC8qIFdl
YkNvcmVFeHBvcnRGaWxlR2VuZXJhdG9yICovLAogCQkJCTQxN0RBNkQwMTM3MzRFMDIwMDdDNTdG
QiAvKiBsaWJXZWJDb3JlVGVzdFN1cHBvcnQuZHlsaWIgKi8sCiAJCQkJOTNGMTlCMUEwODI0NUU1
QTAwMUU5QUJDIC8qIFdlYkNvcmUuZnJhbWV3b3JrICovLAorCQkJCUUxQkE2NzE2MTc0MkJERTAw
MEMyMDI1MSAvKiBsaWJXZWJDb3JlVGVzdFNoaW0uZHlsaWIgKi8sCiAJCQkpOwogCQkJbmFtZSA9
IFByb2R1Y3RzOwogCQkJc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOwpAQCAtMTM2OTQsNiArMTM3
MjUsNyBAQAogCQkJCTQ0OTA5OEIxMEY4RjgyNTIwMDc2QTMyNyAvKiBGZWF0dXJlRGVmaW5lcy54
Y2NvbmZpZyAqLywKIAkJCQkxQzkwNERGOTBCQTlEMkM4MDA4MUU5RDAgLyogVmVyc2lvbi54Y2Nv
bmZpZyAqLywKIAkJCQkxQ0RENDVFNTBCQTlDODQ2MDBGOTAxNDcgLyogV2ViQ29yZS54Y2NvbmZp
ZyAqLywKKwkJCQlFMUJBNjZGMjE3NDJCRENDMDBDMjAyNTEgLyogV2ViQ29yZVRlc3RTaGltLnhj
Y29uZmlnICovLAogCQkJCTQxODE3MDdEMTM4NkVERjIwMDU3QUFBNCAvKiBXZWJDb3JlVGVzdFN1
cHBvcnQueGNjb25maWcgKi8sCiAJCQkpOwogCQkJcGF0aCA9IENvbmZpZ3VyYXRpb25zOwpAQCAt
MTM5NTgsNiArMTM5OTAsNyBAQAogCQkJCUNEQzI2QjNEMTYwQTYyQjAwMDI2NzU3QiAvKiBNb2Nr
Q0RNLmggKi8sCiAJCQkJRUIwODFDRDgxNjk2MDg0NDAwNTUzNzMwIC8qIFR5cGVDb252ZXJzaW9u
cy5oICovLAogCQkJCUVCMDgxQ0Q5MTY5NjA4NDQwMDU1MzczMCAvKiBUeXBlQ29udmVyc2lvbnMu
aWRsICovLAorCQkJCUUxQkE2NzE5MTc0MkJFRjQwMEMyMDI1MSAvKiBXZWJDb3JlVGVzdFNoaW1M
aWJyYXJ5LmNwcCAqLywKIAkJCSk7CiAJCQlwYXRoID0gdGVzdGluZzsKIAkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CkBAIC0xNDYwMSw2ICsxNDYzNCw3IEBACiAJCQkJNUQ4QzREQkUxNDI4MjIy
QzAwMjZDRTcyIC8qIERpc3BsYXlTbGVlcERpc2FibGVyLmggKi8sCiAJCQkJQTc5NTQ2M0QwQjVD
NEM4MDAwN0I0MzhGIC8qIERyYWdEYXRhTWFjLm1tICovLAogCQkJCUE3Q0ZCM0Q0MEI3RUQxMTgw
MDcwQzMyRCAvKiBEcmFnSW1hZ2VNYWMubW0gKi8sCisJCQkJRTFCQTY2RjAxNzQyQkQ4NjAwQzIw
MjUxIC8qIER5bGRJbnRlcnBvc2UuaCAqLywKIAkJCQk1REM4N0VFRjExNzE2REYyMDAxQzBFNkQg
LyogRW1wdHlQcm90b2NvbERlZmluaXRpb25zLmggKi8sCiAJCQkJMUNBMTlFMDMwREMyNTU5NTAw
NjVBOTk0IC8qIEV2ZW50TG9vcE1hYy5tbSAqLywKIAkJCQk1MTRCM0Y3NTBDNzIyMDU1MDAwNTMw
REYgLyogRmlsZVN5c3RlbU1hYy5tbSAqLywKQEAgLTIzNzk5LDYgKzIzODMzLDcgQEAKIAkJCQlG
NTVCM0REQTEyNTFGMTJEMDAzRUYyNjkgLyogVGV4dElucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQ0VDQURGQ0UxNTM3NzkxRDAwRTM3MDY4IC8qIFRleHRJbnNlcnRpb25CYXNlQ29tbWFu
ZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFMUMwOTlFNjQ5MjAwNTZFNTgxIC8qIFRleHRJ
dGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFCQTY2RjExNzQyQkQ4NjAwQzIwMjUxIC8q
IER5bGRJbnRlcnBvc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRUY0NUU5MEU2ODc3NjcwMDFD
MTI4NyAvKiBUZXh0TWV0cmljcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMwRkM2OEExMDcyQjky
ODAwNDUyOTNFIC8qIFRleHRSZW5kZXJpbmdNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5M0Yx
OThGNjA4MjQ1RTU5MDAxRTlBQkMgLyogVGV4dFJlc291cmNlRGVjb2Rlci5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0yNDA3NCw2ICsyNDEwOSwxMyBAQAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3lt
ZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OworCQlFMUJBNjZGNjE3NDJCREUwMDBDMjAyNTEg
LyogSGVhZGVycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEhlYWRlcnNCdWlsZFBoYXNlOworCQkJYnVp
bGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJKTsKKwkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OwogLyogRW5kIFBCWEhlYWRl
cnNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYTmF0aXZlVGFyZ2V0IHNlY3Rp
b24gKi8KQEAgLTI0MTQxLDYgKzI0MTgzLDI0IEBACiAJCQlwcm9kdWN0UmVmZXJlbmNlID0gOTNG
MTlCMUEwODI0NUU1QTAwMUU5QUJDIC8qIFdlYkNvcmUuZnJhbWV3b3JrICovOwogCQkJcHJvZHVj
dFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5mcmFtZXdvcmsiOwogCQl9OworCQlFMUJB
NjZGMzE3NDJCREUwMDBDMjAyNTEgLyogV2ViQ29yZVRlc3RTaGltICovID0geworCQkJaXNhID0g
UEJYTmF0aXZlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEUxQkE2NzEyMTc0
MkJERTAwMEMyMDI1MSAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRh
cmdldCAiV2ViQ29yZVRlc3RTaGltIiAqLzsKKwkJCWJ1aWxkUGhhc2VzID0gKAorCQkJCUUxQkE2
NkY2MTc0MkJERTAwMEMyMDI1MSAvKiBIZWFkZXJzICovLAorCQkJCUUxQkE2NzAyMTc0MkJERTAw
MEMyMDI1MSAvKiBTb3VyY2VzICovLAorCQkJCUUxQkE2NzBFMTc0MkJERTAwMEMyMDI1MSAvKiBG
cmFtZXdvcmtzICovLAorCQkJKTsKKwkJCWJ1aWxkUnVsZXMgPSAoCisJCQkpOworCQkJZGVwZW5k
ZW5jaWVzID0gKAorCQkJCUUxQkE2NkY0MTc0MkJERTAwMEMyMDI1MSAvKiBQQlhUYXJnZXREZXBl
bmRlbmN5ICovLAorCQkJKTsKKwkJCW5hbWUgPSBXZWJDb3JlVGVzdFNoaW07CisJCQlwcm9kdWN0
TmFtZSA9IFdlYkNvcmVUZXN0U3VwcG9ydDsKKwkJCXByb2R1Y3RSZWZlcmVuY2UgPSBFMUJBNjcx
NjE3NDJCREUwMDBDMjAyNTEgLyogbGliV2ViQ29yZVRlc3RTaGltLmR5bGliICovOworCQkJcHJv
ZHVjdFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5saWJyYXJ5LmR5bmFtaWMiOworCQl9
OwogLyogRW5kIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWFByb2pl
Y3Qgc2VjdGlvbiAqLwpAQCAtMjQxNzQsNiArMjQyMzQsNyBAQAogCQkJCTVEODdCQjRFMTFFM0VB
RUIwMDcwMkI2RiAvKiBXZWJDb3JlRXhwb3J0RmlsZUdlbmVyYXRvciAqLywKIAkJCQk1RDg3QkI2
NDExRTNFQkMxMDA3MDJCNkYgLyogV2ViQ29yZUV4cG9ydEZpbGVHZW5lcmF0b3IgR2VuZXJhdG9y
ICovLAogCQkJCTQxN0RBNkNGMTM3MzRFMDIwMDdDNTdGQiAvKiBXZWJDb3JlVGVzdFN1cHBvcnQg
Ki8sCisJCQkJRTFCQTY2RjMxNzQyQkRFMDAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hpbSAqLywK
IAkJCSk7CiAJCX07CiAvKiBFbmQgUEJYUHJvamVjdCBzZWN0aW9uICovCkBAIC0yNzAzMSw2ICsy
NzA5MiwxNCBAQAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3Npbmcg
PSAwOwogCQl9OworCQlFMUJBNjcwMjE3NDJCREUwMDBDMjAyNTEgLyogU291cmNlcyAqLyA9IHsK
KwkJCWlzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0
NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCUUxQkE2NzFBMTc0MkJFRjQwMEMyMDI1MSAvKiBX
ZWJDb3JlVGVzdFNoaW1MaWJyYXJ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJKTsKKwkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OwogLyogRW5kIFBCWFNvdXJj
ZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBz
ZWN0aW9uICovCkBAIC0yNzA2NCw2ICsyNzEzMywxNiBAQAogCQkJdGFyZ2V0ID0gREQwNDFGQkUw
OUQ5RERCRTAwMTBBRjJBIC8qIERlcml2ZWQgU291cmNlcyAqLzsKIAkJCXRhcmdldFByb3h5ID0g
REQwNDFGRjAwOUQ5RTMyNTAwMTBBRjJBIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKIAkJ
fTsKKwkJRTFCQTY2RjQxNzQyQkRFMDAwQzIwMjUxIC8qIFBCWFRhcmdldERlcGVuZGVuY3kgKi8g
PSB7CisJCQlpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OworCQkJdGFyZ2V0ID0gOTNGMTk4QTUw
ODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmUgKi87CisJCQl0YXJnZXRQcm94eSA9IEUxQkE2NkY1
MTc0MkJERTAwMEMyMDI1MSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCX07CisJCUUx
QkE2NzFDMTc0MkNCRjgwMEMyMDI1MSAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geworCQkJ
aXNhID0gUEJYVGFyZ2V0RGVwZW5kZW5jeTsKKwkJCXRhcmdldCA9IEUxQkE2NkYzMTc0MkJERTAw
MEMyMDI1MSAvKiBXZWJDb3JlVGVzdFNoaW0gKi87CisJCQl0YXJnZXRQcm94eSA9IEUxQkE2NzFC
MTc0MkNCRjgwMEMyMDI1MSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCX07CiAvKiBF
bmQgUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWFZhcmlhbnRH
cm91cCBzZWN0aW9uICovCkBAIC0yNzI2MSw2ICsyNzM0MCwzMCBAQAogCQkJfTsKIAkJCW5hbWUg
PSBQcm9kdWN0aW9uOwogCQl9OworCQlFMUJBNjcxMzE3NDJCREUwMDBDMjAyNTEgLyogRGVidWcg
Ki8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0
aW9uUmVmZXJlbmNlID0gRTFCQTY2RjIxNzQyQkRDQzAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hp
bS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJUFJPRFVDVF9OQU1FID0g
V2ViQ29yZVRlc3RTaGltOworCQkJfTsKKwkJCW5hbWUgPSBEZWJ1ZzsKKwkJfTsKKwkJRTFCQTY3
MTQxNzQyQkRFMDAwQzIwMjUxIC8qIFJlbGVhc2UgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29u
ZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gRTFCQTY2RjIxNzQy
QkRDQzAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hpbS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0
dGluZ3MgPSB7CisJCQkJUFJPRFVDVF9OQU1FID0gV2ViQ29yZVRlc3RTaGltOworCQkJfTsKKwkJ
CW5hbWUgPSBSZWxlYXNlOworCQl9OworCQlFMUJBNjcxNTE3NDJCREUwMDBDMjAyNTEgLyogUHJv
ZHVjdGlvbiAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYmFzZUNv
bmZpZ3VyYXRpb25SZWZlcmVuY2UgPSBFMUJBNjZGMjE3NDJCRENDMDBDMjAyNTEgLyogV2ViQ29y
ZVRlc3RTaGltLnhjY29uZmlnICovOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlQUk9EVUNU
X05BTUUgPSBXZWJDb3JlVGVzdFNoaW07CisJCQl9OworCQkJbmFtZSA9IFByb2R1Y3Rpb247CisJ
CX07CiAvKiBFbmQgWENCdWlsZENvbmZpZ3VyYXRpb24gc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBY
Q0NvbmZpZ3VyYXRpb25MaXN0IHNlY3Rpb24gKi8KQEAgLTI3MzM0LDYgKzI3NDM3LDE2IEBACiAJ
CQlkZWZhdWx0Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CiAJCQlkZWZhdWx0Q29uZmlndXJh
dGlvbk5hbWUgPSBQcm9kdWN0aW9uOwogCQl9OworCQlFMUJBNjcxMjE3NDJCREUwMDBDMjAyNTEg
LyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIldlYkNvcmVU
ZXN0U2hpbSIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OworCQkJYnVpbGRD
b25maWd1cmF0aW9ucyA9ICgKKwkJCQlFMUJBNjcxMzE3NDJCREUwMDBDMjAyNTEgLyogRGVidWcg
Ki8sCisJCQkJRTFCQTY3MTQxNzQyQkRFMDAwQzIwMjUxIC8qIFJlbGVhc2UgKi8sCisJCQkJRTFC
QTY3MTUxNzQyQkRFMDAwQzIwMjUxIC8qIFByb2R1Y3Rpb24gKi8sCisJCQkpOworCQkJZGVmYXVs
dENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25OYW1l
ID0gUHJvZHVjdGlvbjsKKwkJfTsKIC8qIEVuZCBYQ0NvbmZpZ3VyYXRpb25MaXN0IHNlY3Rpb24g
Ki8KIAl9OwogCXJvb3RPYmplY3QgPSAwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVj
dCBvYmplY3QgKi87CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvRHlsZEludGVy
cG9zZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9EeWxkSW50
ZXJwb3NlLmgJKHJldmlzaW9uIDE1MDA4MSkJKGZyb20gU291cmNlL1dlYktpdDIvU2hhcmVkL21h
Yy9EeWxkSW50ZXJwb3NlLmg6MTUwMDgxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L0R5bGRJbnRlcnBvc2UuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQzIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBEeWxkSW50ZXJwb3NlX2gKKyNkZWZpbmUgRHlsZEludGVycG9zZV9oCisK
KyNpZmRlZiBEWUxEX0lOVEVSUE9TRQorI3VuZGVmIERZTERfSU5URVJQT1NFCisjZW5kaWYKKwor
I2RlZmluZSBEWUxEX0lOVEVSUE9TRShfcmVwbGFjZW1lbnQsIF9yZXBsYWNlZSkgXAorICAgIF9f
YXR0cmlidXRlX18oKHVzZWQpKSBzdGF0aWMgc3RydWN0IHsgXAorICAgICAgICBjb25zdCB2b2lk
KiByZXBsYWNlbWVudDsgXAorICAgICAgICBjb25zdCB2b2lkKiByZXBsYWNlZTsgXAorICAgIH0g
X2ludGVycG9zZV8jI19yZXBsYWNlZSBcCisgICAgX19hdHRyaWJ1dGVfXygoc2VjdGlvbigiX19E
QVRBLF9faW50ZXJwb3NlIikpKSA9IHsgXAorICAgICAgICAoY29uc3Qgdm9pZCopKHVuc2lnbmVk
IGxvbmcpJl9yZXBsYWNlbWVudCwgXAorICAgICAgICAoY29uc3Qgdm9pZCopKHVuc2lnbmVkIGxv
bmcpJl9yZXBsYWNlZSBcCisgICAgfTsgXAorCisjZW5kaWYgLy8gRHlsZEludGVycG9zZV9oCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1dlYkNvcmVUZXN0U2hpbUxpYnJhcnkuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvV2ViQ29yZVRlc3RTaGltTGlicmFy
eS5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1dlYkNvcmVUZXN0
U2hpbUxpYnJhcnkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW5jbHVkZSAiRHlsZEludGVycG9zZS5oIgorI2luY2x1ZGUgPENhcmJvbi9DYXJib24u
aD4KKworc3RhdGljIGludCBzU2VjdXJlSW5wdXRFbmFibGVDb3VudDsKKworc3RhdGljIE9TU3Rh
dHVzIHNoaW1FbmFibGVTZWN1cmVFdmVudElucHV0KCkKK3sKKyAgICArK3NTZWN1cmVJbnB1dEVu
YWJsZUNvdW50OworICAgIHJldHVybiBub0VycjsKK30KKworc3RhdGljIE9TU3RhdHVzIHNoaW1E
aXNhYmxlU2VjdXJlRXZlbnRJbnB1dCgpCit7CisgICAgaWYgKCFzU2VjdXJlSW5wdXRFbmFibGVD
b3VudCkKKyAgICAgICAgcmV0dXJuIHBhcmFtRXJyOworICAgIC0tc1NlY3VyZUlucHV0RW5hYmxl
Q291bnQ7CisgICAgcmV0dXJuIG5vRXJyOworfQorCitzdGF0aWMgQm9vbGVhbiBzaGltSXNTZWN1
cmVFdmVudElucHV0RW5hYmxlZCgpCit7CisgICAgcmV0dXJuIHNTZWN1cmVJbnB1dEVuYWJsZUNv
dW50OworfQorCitEWUxEX0lOVEVSUE9TRShzaGltRW5hYmxlU2VjdXJlRXZlbnRJbnB1dCwgRW5h
YmxlU2VjdXJlRXZlbnRJbnB1dCkKK0RZTERfSU5URVJQT1NFKHNoaW1EaXNhYmxlU2VjdXJlRXZl
bnRJbnB1dCwgRGlzYWJsZVNlY3VyZUV2ZW50SW5wdXQpCitEWUxEX0lOVEVSUE9TRShzaGltSXNT
ZWN1cmVFdmVudElucHV0RW5hYmxlZCwgSXNTZWN1cmVFdmVudElucHV0RW5hYmxlZCkKClByb3Bl
cnR5IGNoYW5nZXMgb246IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvV2ViQ29yZVRlc3RTaGltTGli
cmFyeS5jcHAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQojIyAtMCwwICsxICMjCitu
YXRpdmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkocmV2
aXNpb24gMTUwMDg3KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMDUtMTQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBh
cHBsZS5jb20+CisKKyAgICAgICAgW01hY10gQWRkIGEgdGVzdGluZyBzaGltIGZvciBzZWN1cmUg
ZXZlbnQgaW5wdXQgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMTYxMjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBNb3ZlZCBEeWxkSW50ZXJwb3NlLmggdG8gV2ViQ29yZSwgYXMgd2Ugbm93
IHVzZSBpdCB0aGVyZSB0b28uCisKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Q
cm9jZXNzU2hpbS5tbToKKyAgICAgICAgKiBTaGFyZWQvbWFjL0Nvb2tpZVN0b3JhZ2VTaGltTGli
cmFyeS5jcHA6CisgICAgICAgICogU2hhcmVkL21hYy9EeWxkSW50ZXJwb3NlLmg6IFJlbW92ZWQu
CisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IFdlYlByb2Nlc3MvbWFjL1NlY0l0ZW1TaGltTGlicmFyeS5tbToKKwogMjAxMy0wNS0xNCAgSm9j
ZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAZGlnaWEuY29tPgogCiAgICAgICAgIFtX
aW5dIFJFR1JFU1NJT04ocjE0OTk0NCk6IG1tYXAgaXMgbm90IGF2YWlsYWJsZSBvbiBXaW5kb3dz
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzU2hp
bS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL21hYy9QbHVn
aW5Qcm9jZXNzU2hpbS5tbQkocmV2aXNpb24gMTUwMDgxKQorKysgU291cmNlL1dlYktpdDIvUGx1
Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc1NoaW0ubW0JKHdvcmtpbmcgY29weSkKQEAgLTI2
LDkgKzI2LDkgQEAKICNpbXBvcnQgPHd0Zi9QbGF0Zm9ybS5oPgogI2ltcG9ydCAiUGx1Z2luUHJv
Y2Vzc1NoaW0uaCIKIAotI2ltcG9ydCAiRFlMREludGVycG9zZS5oIgogI2ltcG9ydCA8QXBwS2l0
L0FwcEtpdC5oPgogI2ltcG9ydCA8Q2FyYm9uL0NhcmJvbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9E
eWxkSW50ZXJwb3NlLmg+CiAjaW1wb3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KICNpbXBv
cnQgPHN0ZGlvLmg+CiAjaW1wb3J0IDxvYmpjL21lc3NhZ2UuaD4KSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1NoYXJlZC9tYWMvQ29va2llU3RvcmFnZVNoaW1MaWJyYXJ5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL0Nvb2tpZVN0b3JhZ2VTaGltTGlicmFyeS5jcHAJ
KHJldmlzaW9uIDE1MDA4MSkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvQ29va2llU3Rv
cmFnZVNoaW1MaWJyYXJ5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNyBAQAogCiAj
aWYgRU5BQkxFKE5FVFdPUktfUFJPQ0VTUykKIAotI2luY2x1ZGUgIkR5bGRJbnRlcnBvc2UuaCIK
KyNpbmNsdWRlIDxXZWJDb3JlL0R5bGRJbnRlcnBvc2UuaD4KIAogZXh0ZXJuICJDIiBDRkRpY3Rp
b25hcnlSZWYgX0NGSFRUUENvb2tpZVN0b3JhZ2VDb3B5UmVxdWVzdEhlYWRlckZpZWxkc0ZvclVS
TChDRkFsbG9jYXRvclJlZiBpbkFsbG9jYXRvciwgQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBpbkNv
b2tpZVN0b3JhZ2UsIENGVVJMUmVmIGluUmVxdWVzdFVSTCk7CiAKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1NoYXJlZC9tYWMvRHlsZEludGVycG9zZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL1NoYXJlZC9tYWMvRHlsZEludGVycG9zZS5oCShyZXZpc2lvbiAxNTAwODEpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvbWFjL0R5bGRJbnRlcnBvc2UuaAkod29ya2luZyBjb3B5KQpAQCAt
MSw0MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBEeWxkSW50ZXJwb3NlX2gKLSNkZWZp
bmUgRHlsZEludGVycG9zZV9oCi0KLSNpZmRlZiBEWUxEX0lOVEVSUE9TRQotI3VuZGVmIERZTERf
SU5URVJQT1NFCi0jZW5kaWYKLQotI2RlZmluZSBEWUxEX0lOVEVSUE9TRShfcmVwbGFjZW1lbnQs
IF9yZXBsYWNlZSkgXAotICAgIF9fYXR0cmlidXRlX18oKHVzZWQpKSBzdGF0aWMgc3RydWN0IHsg
XAotICAgICAgICBjb25zdCB2b2lkKiByZXBsYWNlbWVudDsgXAotICAgICAgICBjb25zdCB2b2lk
KiByZXBsYWNlZTsgXAotICAgIH0gX2ludGVycG9zZV8jI19yZXBsYWNlZSBcCi0gICAgX19hdHRy
aWJ1dGVfXygoc2VjdGlvbigiX19EQVRBLF9faW50ZXJwb3NlIikpKSA9IHsgXAotICAgICAgICAo
Y29uc3Qgdm9pZCopKHVuc2lnbmVkIGxvbmcpJl9yZXBsYWNlbWVudCwgXAotICAgICAgICAoY29u
c3Qgdm9pZCopKHVuc2lnbmVkIGxvbmcpJl9yZXBsYWNlZSBcCi0gICAgfTsgXAotCi0jZW5kaWYg
Ly8gRHlsZEludGVycG9zZV9oCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxNTAwODEpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAg
LTI2MTIsNyArMjYxMiw2IEBACiAJCUM1NTRGRkEyMTJFNEU4RUEwMDJGMjJDMCAvKiBXZWJEcmFn
Q2xpZW50TWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2Vi
RHJhZ0NsaWVudE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzU3NEE1N0Yx
MkU2NjY4MTAwMkRGRTk4IC8qIFBhc3RlYm9hcmRUeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQYXN0ZWJvYXJkVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQzU3NEE1ODAxMkU2NjY4MTAwMkRGRTk4IC8qIFBhc3RlYm9hcmRUeXBlcy5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhc3RlYm9hcmRUeXBlcy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQ0Q0NzFGNUIxNzIxQjk5OTAwRDY1Q0RBIC8q
IER5bGRJbnRlcnBvc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHlsZEludGVycG9zZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDRDQ3MUY1QzE3MjFCQzNFMDBENjVDREEgLyogbGliV1RG
LmEgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNo
aXZlLmFyOyBuYW1lID0gbGliV1RGLmE7IHBhdGggPSAuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi91
c3IvbG9jYWwvbGliL2xpYldURi5hOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRDVD
NjY5RTEzNEI5RDM2MDA0RkUyQTggLyogSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmplY3RlZEJ1bmRs
ZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
Q0Q1QzY2OUYxMzRCOUQzNzAwNEZFMkE4IC8qIEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5D
bGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQ
YWdlRnVsbFNjcmVlbkNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDMy
MSw3ICs0MzIwLDYgQEAKIAkJCQlDREMzODMwQjE3MjEyMUNFMDA4QTJGQzMgLyogQ29va2llU3Rv
cmFnZVNoaW1MaWJyYXJ5LmggKi8sCiAJCQkJQ0RDMzgzMEQxNzIxMjQyRDAwOEEyRkMzIC8qIENv
b2tpZVN0b3JhZ2VTaGltLmNwcCAqLywKIAkJCQlDREMzODMwRTE3MjEyNDJEMDA4QTJGQzMgLyog
Q29va2llU3RvcmFnZVNoaW0uaCAqLywKLQkJCQlDRDQ3MUY1QjE3MjFCOTk5MDBENjVDREEgLyog
RHlsZEludGVycG9zZS5oICovLAogCQkJCTFBOTJEQzEyMTJGOEJBQjkwMDE3QUY2NSAvKiBMYXll
clRyZWVDb250ZXh0TWFjLm1tICovLAogCQkJCUMwMkJGRjFEMTI1MTUwMkUwMDlDQ0JFQSAvKiBO
YXRpdmVXZWJLZXlib2FyZEV2ZW50TWFjLm1tICovLAogCQkJCTMxRUEyNUQwMTM0Rjc4QjIwMDVC
MTQ1MiAvKiBOYXRpdmVXZWJNb3VzZUV2ZW50TWFjLm1tICovLApJbmRleDogU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9tYWMvU2VjSXRlbVNoaW1MaWJyYXJ5Lm1tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvbWFjL1NlY0l0ZW1TaGltTGlicmFyeS5tbQkocmV2aXNp
b24gMTUwMDgxKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9tYWMvU2VjSXRlbVNoaW1M
aWJyYXJ5Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw4IEBACiAgKi8KICNpbXBvcnQg
IlNlY0l0ZW1TaGltTGlicmFyeS5oIgogCi0jaW1wb3J0ICJEeWxkSW50ZXJwb3NlLmgiCiAjaW1w
b3J0IDxTZWN1cml0eS9TZWNJdGVtLmg+CisjaW1wb3J0IDxXZWJDb3JlL0R5bGRJbnRlcnBvc2Uu
aD4KICNpbXBvcnQgPHd0Zi9QbGF0Zm9ybS5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKSW5kZXg6
IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9u
IDE1MDA4NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEz
IEBACisyMDEzLTA1LTE0ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisg
ICAgICAgIFtNYWNdIEFkZCBhIHRlc3Rpbmcgc2hpbSBmb3Igc2VjdXJlIGV2ZW50IGlucHV0IGZ1
bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTE2MTIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjLnB5OiAoTWFjUG9ydC5zZXR1cF9lbnZpcm9uX2Zv
cl9zZXJ2ZXIpOgorICAgICAgICBJbmplY3QgV2ViQ29yZSB0ZXN0aW5nIHNoaW0gbGlicmFyeSB0
byBvdmVycmlkZSBzeXN0ZW0gZnJhbWV3b3JrIGZ1bmN0aW9ucy4KKwogMjAxMy0wNS0xNCAgQnJl
bnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2luZG93c10gU3dp
dGNoIHRvIGVtYmVkZGVkIG1hbmlmZXN0IGNvbW1hbmRzIGZvciBsYXVuY2hlciBleGVjdXRhYmxl
cy4KSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9tYWMucHkKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L21hYy5weQkocmV2aXNpb24gMTUwMDgxKQor
KysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L21hYy5weQkod29ya2luZyBjb3B5KQpAQCAt
OTQsNyArOTQsOSBAQCBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgICAgICAgICBpZiBz
ZWxmLmdldF9vcHRpb24oJ2xlYWtzJyk6CiAgICAgICAgICAgICAgICAgZW52WydNYWxsb2NTdGFj
a0xvZ2dpbmcnXSA9ICcxJwogICAgICAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCdndWFyZF9t
YWxsb2MnKToKLSAgICAgICAgICAgICAgICBlbnZbJ0RZTERfSU5TRVJUX0xJQlJBUklFUyddID0g
Jy91c3IvbGliL2xpYmdtYWxsb2MuZHlsaWInCisgICAgICAgICAgICAgICAgZW52WydEWUxEX0lO
U0VSVF9MSUJSQVJJRVMnXSA9ICcvdXNyL2xpYi9saWJnbWFsbG9jLmR5bGliOicgKyBzZWxmLl9i
dWlsZF9wYXRoKCJsaWJXZWJDb3JlVGVzdFNoaW0uZHlsaWIiKQorICAgICAgICAgICAgZWxzZToK
KyAgICAgICAgICAgICAgICBlbnZbJ0RZTERfSU5TRVJUX0xJQlJBUklFUyddID0gc2VsZi5fYnVp
bGRfcGF0aCgibGliV2ViQ29yZVRlc3RTaGltLmR5bGliIikKICAgICAgICAgZW52WydYTUxfQ0FU
QUxPR19GSUxFUyddID0gJycgICMgd29yayBhcm91bmQgbWlzc2luZyAvZXRjL2NhdGFsb2cgPHJk
YXI6Ly9wcm9ibGVtLzQyOTI5OTU+CiAgICAgICAgIHJldHVybiBlbnYKIAo=
</data>
<flag name="review"
          id="223102"
          type_id="1"
          status="+"
          setter="mrowe"
    />
          </attachment>
      

    </bug>

</bugzilla>