<?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>72577</bug_id>
          
          <creation_ts>2011-11-16 18:57:02 -0800</creation_ts>
          <short_desc>Remove all custom constructors of Events from JSC</short_desc>
          <delta_ts>2011-11-17 06:39:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</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>71379</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>dominicc</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>504507</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2011-11-16 18:57:02 -0800</bug_when>
    <thetext>Now CodeGeneratorV8.pm can generate Event constructors using [ConstructorTemplate=Event] IDL (bug 72055). CodeGeneratorJS.pm should also generate Event constructors by the IDL. By doing this, we can remove EventConstructors.h and JSEventConstructors.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>504559</commentid>
    <comment_count>1</comment_count>
      <attachid>115525</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2011-11-16 22:26:40 -0800</bug_when>
    <thetext>Created attachment 115525
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>504562</commentid>
    <comment_count>2</comment_count>
      <attachid>115525</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-11-16 22:31:54 -0800</bug_when>
    <thetext>Comment on attachment 115525
Patch

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

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:3249
&gt; +    if (IsConstructorTemplate($dataNode, &quot;Event&quot;)) {

I might have called IsConstructorTemplate something like HasConstructorTemplate, but it&apos;s probably better to be consistent with the V8 code generator.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>504583</commentid>
    <comment_count>3</comment_count>
      <attachid>115525</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-16 23:11:52 -0800</bug_when>
    <thetext>Comment on attachment 115525
Patch

Clearing flags on attachment: 115525

Committed r100564: &lt;http://trac.webkit.org/changeset/100564&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>504584</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-16 23:11:57 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>504810</commentid>
    <comment_count>5</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2011-11-17 06:39:18 -0800</bug_when>
    <thetext>*** Bug 72255 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115525</attachid>
            <date>2011-11-16 22:26:40 -0800</date>
            <delta_ts>2011-11-16 23:11:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>49550</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZDg0OGU4Li45MzVhMmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzMg
QEAKKzIwMTEtMTEtMTYgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJlbW92ZSBhbGwgY3VzdG9tIGNvbnN0cnVjdG9ycyBvZiBFdmVudHMgZnJvbSBKU0MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyNTc3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBNYWtlcyBD
b2RlR2VuZXJhdG9ySlMucG0gZ2VuZXJhdGUgRXZlbnQgY29uc3RydWN0b3JzCisgICAgICAgIGlm
IFtDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50XSBJREwgaXMgc3BlY2lmaWVkLgorICAgICAgICAt
IFJlbW92ZXMgRXZlbnRDb25zdHJ1Y3RvcnMuaCBhbmQgSlNFdmVudENvbnN0cnVjdG9ycy5jcHAu
CisgICAgICAgIC0gUmVwbGFjZXMgYWxsIEpTQyBjdXN0b20gY29uc3RydWN0b3JzIG9mIEV2ZW50
cworICAgICAgICB3aXRoIHRoZSBnZW5lcmF0ZWQgY29kZSBieSBbQ29uc3RydWN0b3JUZW1wbGF0
ZT1FdmVudF0gSURMLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2V2ZW50cy9jb25zdHJ1Y3RvcnMv
YmVmb3JlLWxvYWQtZXZlbnQtY29uc3RydWN0b3IuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9l
dmVudHMvY29uc3RydWN0b3JzL2Nsb3NlLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKKyAgICAgICAg
ICAgICAgIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9ycy9jdXN0b20tZXZlbnQtY29uc3RydWN0b3Iu
aHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvY29uc3RydWN0b3JzL2Vycm9yLWV2ZW50
LWNvbnN0cnVjdG9yLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9y
cy9ldmVudC1jb25zdHJ1Y3RvcnMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvY29u
c3RydWN0b3JzL2hhc2gtY2hhbmdlLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKKyAgICAgICAgICAg
ICAgIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9ycy9tZXNzYWdlLWV2ZW50LWNvbnN0cnVjdG9yLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9ycy9vdmVyZmxvdy1ldmVu
dC1jb25zdHJ1Y3Rvci5odG1sCisgICAgICAgICAgICAgICBmYXN0L2V2ZW50cy9jb25zdHJ1Y3Rv
cnMvcGFnZS10cmFuc2l0aW9uLWV2ZW50LWNvbnN0cnVjdG9yLmh0bWwKKyAgICAgICAgICAgICAg
IGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9ycy9wb3Atc3RhdGUtZXZlbnQtY29uc3RydWN0b3IuaHRt
bAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvY29uc3RydWN0b3JzL3Byb2dyZXNzLWV2ZW50
LWNvbnN0cnVjdG9yLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL2NvbnN0cnVjdG9y
cy90cmFjay1ldmVudC1jb25zdHJ1Y3Rvci5odG1sCisgICAgICAgICAgICAgICBmYXN0L2V2ZW50
cy9jb25zdHJ1Y3RvcnMvd2Via2l0LWFuaW1hdGlvbi1ldmVudC1jb25zdHJ1Y3Rvci5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2V2ZW50cy9jb25zdHJ1Y3RvcnMvd2Via2l0LXRyYW5zaXRpb24t
ZXZlbnQtY29uc3RydWN0b3IuaHRtbAorCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9FdmVu
dENvbnN0cnVjdG9ycy5oOiBSZW1vdmVkLiBUaGlzIGlzIHdoYXQgd2Ugd2FudGVkIHRvIGRvIGlu
IHRoaXMgcGF0Y2guCisgICAgICAgICogYmluZGluZ3MvanMvSlNFdmVudENvbnN0cnVjdG9ycy5j
cHA6IERpdHRvLgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06IFJlbW92ZWQgRXZlbnRD
b25zdHJ1Y3RvcnMuaCBhbmQgSlNFdmVudENvbnN0cnVjdG9ycy5jcHAuCisgICAgICAgICogVGFy
Z2V0LnByaTogRGl0dG8uCisgICAgICAgICogVXNlSlNDLmNtYWtlOiBEaXR0by4KKyAgICAgICAg
KiBXZWJDb3JlLmd5cGk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHA6
IERpdHRvLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06
CisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6IEFkZGVkIEpTRGljdGlvbmFyeS5oLgorICAgICAg
ICAoR2VuZXJhdGVDb25zdHJ1Y3RvckRlY2xhcmF0aW9uKTogQWRkZWQgYSBoZWFkZXIgZm9yIGZp
bGxYWFhYRXZlbnRJbml0KC4uLikuCisgICAgICAgIChHZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5p
dGlvbik6IEdlbmVyYXRlcyBhbiBFdmVudCBjb25zdHJ1Y3Rvci4gVGhlIGdlbmVyYXRlZCBjb2Rl
IGlzIHRoZSBzYW1lIGFzIHRoZSBjb2RlIHRoYXQgaGFkIGJlZW4gd3JpdHRlbiBpbiBKU0V2ZW50
Q29uc3RydWN0b3JzLmNwcC4KKyAgICAgICAgKElzQ29uc3RydWN0YWJsZSk6IEp1ZGdlcyBpZiBh
IGdpdmVuIGludGVyZmFjZSBpcyBjb25zdHJ1Y3RhYmxlLgorICAgICAgICAoSXNDb25zdHJ1Y3Rv
clRlbXBsYXRlKTogSnVkZ2VzIGlmIGEgZ2l2ZW4gaW50ZXJmYWNlIGhhcyBhIGdpdmVuIHRlbXBs
YXRlLCBlLmcuIGp1ZGdlcyBpZiBhbiBpbnRlcmZhY2UgaGFzIFtDb25zdHJ1Y3RvclRlbXBsYXRl
PUV2ZW50XS4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRDb25z
dHJ1Y3Rvci5pZGw6IENoYW5nZWQgJ0N1c3RvbUNvbnN0cnVjdG9yPUV2ZW50JyB0byAnQ29uc3Ry
dWN0b3JUZW1wbGF0ZT1FdmVudCcuIFdlIHNob3VsZCBoYXZlIGNoYW5nZWQgdGhpcyBpbiByMTAw
MTA4LgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0
cnVjdG9yLmNwcDogVXBkYXRlZCBhIHJ1bi1iaW5kaW5ncy10ZXN0cyByZXN1bHQuCisgICAgICAg
IChXZWJDb3JlOjpKU1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0b3I6OmNvbnN0cnVjdEpT
VGVzdEV2ZW50Q29uc3RydWN0b3IpOgorICAgICAgICAoV2ViQ29yZTo6ZmlsbFRlc3RFdmVudENv
bnN0cnVjdG9ySW5pdCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEV2ZW50Q29uc3RydWN0b3IuaDogRGl0dG8uCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OlY4VGVzdEV2ZW50Q29uc3RydWN0b3I6OmNvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6ZmlsbFRlc3RFdmVudENvbnN0cnVjdG9ySW5pdCk6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuaDogRGl0dG8uCisK
KyAgICAgICAgKiBkb20vQmVmb3JlTG9hZEV2ZW50LmlkbDogSW4gZXNzZW5jZSwgcmVwbGFjZWQg
W0pTQ3VzdG9tQ29uc3RydWN0b3JdIElETCB3aXRoIFtKU0NvbnN0cnVjdG9yVGVtcGxhdGU9RXZl
bnRdIElETC4KKyAgICAgICAgKiBkb20vQ3VzdG9tRXZlbnQuaWRsOiBEaXR0by4KKyAgICAgICAg
KiBkb20vRXJyb3JFdmVudC5pZGw6IERpdHRvLgorICAgICAgICAqIGRvbS9FdmVudC5pZGw6IERp
dHRvLgorICAgICAgICAqIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsOiBEaXR0by4KKyAgICAgICAg
KiBkb20vTWVzc2FnZUV2ZW50LmlkbDogRGl0dG8uCisgICAgICAgICogZG9tL092ZXJmbG93RXZl
bnQuaWRsOiBEaXR0by4KKyAgICAgICAgKiBkb20vUGFnZVRyYW5zaXRpb25FdmVudC5pZGw6IERp
dHRvLgorICAgICAgICAqIGRvbS9Qb3BTdGF0ZUV2ZW50LmlkbDogRGl0dG8uCisgICAgICAgICog
ZG9tL1Byb2dyZXNzRXZlbnQuaWRsOiBEaXR0by4KKyAgICAgICAgKiBkb20vV2ViS2l0QW5pbWF0
aW9uRXZlbnQuaWRsOiBEaXR0by4KKyAgICAgICAgKiBkb20vV2ViS2l0VHJhbnNpdGlvbkV2ZW50
LmlkbDogRGl0dG8uCisgICAgICAgICogaHRtbC90cmFjay9UcmFja0V2ZW50LmlkbDogRGl0dG8u
CisgICAgICAgICogd2Vic29ja2V0cy9DbG9zZUV2ZW50LmlkbDogRGl0dG8uCisKIDIwMTEtMTEt
MTYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIERyb3BTaGFkb3dG
aWx0ZXJPcGVyYXRpb24gdmlvbGF0ZXMgcGxhdGZvcm0gaXNvbGF0aW9uCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQppbmRleCA2YzY3Yzg2Li41YjQ0MTg1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2Vm
aWxlLmxpc3QuYW0KQEAgLTY5MCw3ICs2OTAsNiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5QmFzZS5jcHAgXAog
CVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5QmFzZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5oIFwKLQlT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0V2ZW50Q29uc3RydWN0b3JzLmggXAogCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRpbmcuaCBcCiAJU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgg
XApAQCAtNzY1LDcgKzc2NCw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNFbnRyeUN1c3RvbS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRW50cnlTeW5jQ3VzdG9tLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNFdmVudEN1c3RvbS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZl
bnRDb25zdHJ1Y3RvcnMuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50
TGlzdGVuZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50TGlzdGVu
ZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudFRhcmdldC5jcHAgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1Rh
cmdldC5wcmkKaW5kZXggZjliMjIwMy4uNDA3MTYxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC0yNzYsNyAr
Mjc2LDYgQEAgdjggewogICAgICAgICBiaW5kaW5ncy9qcy9KU0RvY3VtZW50Q3VzdG9tLmNwcCBc
CiAgICAgICAgIGJpbmRpbmdzL2pzL0pTRWxlbWVudEN1c3RvbS5jcHAgXAogICAgICAgICBiaW5k
aW5ncy9qcy9KU0Vycm9ySGFuZGxlci5jcHAgXAotICAgICAgICBiaW5kaW5ncy9qcy9KU0V2ZW50
Q29uc3RydWN0b3JzLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
IFwKICAgICAgICAgYmluZGluZ3MvanMvSlNFdmVudExpc3RlbmVyLmNwcCBcCiAgICAgICAgIGJp
bmRpbmdzL2pzL0pTRXZlbnRUYXJnZXQuY3BwIFwKQEAgLTEzMzYsNyArMTMzNSw2IEBAIEhFQURF
UlMgKz0gXAogICAgIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oIFwKICAgICBiaW5kaW5n
cy9TY3JpcHRDb250cm9sbGVyQmFzZS5oIFwKICAgICBiaW5kaW5ncy9nZW5lcmljL0FjdGl2ZURP
TUNhbGxiYWNrLmggXAotICAgIGJpbmRpbmdzL2dlbmVyaWMvRXZlbnRDb25zdHJ1Y3RvcnMuaCBc
CiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogdjggewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUv
VXNlSlNDLmNtYWtlCmluZGV4IGQ1MGU5ZGMuLjhjZmZlOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1VzZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAg
LTUyLDcgKzUyLDYgQEAgTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3Mv
anMvSlNEb2N1bWVudEN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0VsZW1lbnRDdXN0b20u
Y3BwCiAgICAgYmluZGluZ3MvanMvSlNFcnJvckhhbmRsZXIuY3BwCi0gICAgYmluZGluZ3MvanMv
SlNFdmVudENvbnN0cnVjdG9ycy5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNw
cAogICAgIGJpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5jcHAKICAgICBiaW5kaW5ncy9qcy9K
U0V2ZW50VGFyZ2V0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBp
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDhkNzIwNzEuLmZhNDMzYTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmd5cGkKQEAgLTE3NjEsNyArMTc2MSw2IEBACiAgICAgICAgICAgICAnYmluZGlu
Z3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvZ2Vu
ZXJpYy9CaW5kaW5nU2VjdXJpdHlCYXNlLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvZ2Vu
ZXJpYy9CaW5kaW5nU2VjdXJpdHlCYXNlLmgnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL2dlbmVy
aWMvRXZlbnRDb25zdHJ1Y3RvcnMuaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvZ2VuZXJpYy9H
ZW5lcmljQmluZGluZy5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVF
bmFibGVkRmVhdHVyZXMuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaCcsCkBAIC0xODUwLDcgKzE4NDksNiBAQAogICAgICAgICAgICAg
J2JpbmRpbmdzL2pzL0pTRW50cnlTeW5jQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGlu
Z3MvanMvSlNFcnJvckhhbmRsZXIuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0Vy
cm9ySGFuZGxlci5oJywKLSAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0V2ZW50Q29uc3RydWN0
b3JzLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5jcHAnLAogICAgICAgICAg
ICAgJ2JpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggZTUwZDZlNC4uNjQ5NzAxZiAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTU4MjM3LDEw
ICs1ODIzNyw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEV2ZW50Q29uc3RydWN0b3JzLmgiCi0JCQkJCT4K
LQkJCQk8L0ZpbGU+Ci0JCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xn
ZW5lcmljXEdlbmVyaWNCaW5kaW5nLmgiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CkBAIC02MDg1Nyw1
OCArNjA4NTMsNiBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCi0JCQkJCVJlbGF0
aXZlUGF0aD0iLi5cYmluZGluZ3NcanNcSlNFdmVudENvbnN0cnVjdG9ycy5jcHAiCi0JCQkJCT4K
LQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJ
CUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlv
bj4KLQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgot
CQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IkRlYnVnX0NhaXJv
X0NGTGl0ZXxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgot
CQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlO
YW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxk
PSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25m
aWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0JCQkJCQlFeGNsdWRlZEZy
b21CdWlsZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJCTxG
aWxlQ29uZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4zMiIKLQkJCQkJCUV4
Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1l
PSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4K
LQkJCQk8L0ZpbGU+Ci0JCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xq
c1xKU0V2ZW50Q3VzdG9tLmNwcCIKIAkJCQkJPgogCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCAxNzQyMjg5Li5mM2JlZDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01Mjk3LDggKzUyOTcsNiBAQAogCQlCQ0UxQzQ0MDBE
OTgzMEY0MDAzQjAyRjIgLyogSlNMb2NhdGlvbkN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0UxQzQzRjBEOTgzMEY0MDAzQjAyRjIgLyog
SlNMb2NhdGlvbkN1c3RvbS5jcHAgKi87IH07CiAJCUJDRTNCRUMyMEQyMjJCMUQwMDdFMDZFNCAv
KiBUYWdOb2RlTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0UzQkVDMDBEMjIyQjFEMDA3RTA2RTQgLyogVGFnTm9kZUxpc3QuY3BwICovOyB9
OwogCQlCQ0UzQkVDMzBEMjIyQjFEMDA3RTA2RTQgLyogVGFnTm9kZUxpc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRTNCRUMxMEQyMjJCMUQwMDdF
MDZFNCAvKiBUYWdOb2RlTGlzdC5oICovOyB9OwotCQlCQ0U0Mzg5NzE0MEIwMDUxMDA1RTQzN0Ug
LyogRXZlbnRDb25zdHJ1Y3RvcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEJDRTQzODk2MTQwQjAwNTEwMDVFNDM3RSAvKiBFdmVudENvbnN0cnVjdG9y
cy5oICovOyB9OwotCQlCQ0U0Mzg5QTE0MEIwMDczMDA1RTQzN0UgLyogSlNFdmVudENvbnN0cnVj
dG9ycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
Q0U0Mzg5OTE0MEIwMDczMDA1RTQzN0UgLyogSlNFdmVudENvbnN0cnVjdG9ycy5jcHAgKi87IH07
CiAJCUJDRTQzODlDMTQwQjFCQTgwMDVFNDM3RSAvKiBKU0RpY3Rpb25hcnkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRTQzODlCMTQwQjFCQTcwMDVF
NDM3RSAvKiBKU0RpY3Rpb25hcnkuaCAqLzsgfTsKIAkJQkNFNDM4QTIxNDBDMERDMDAwNUU0MzdF
IC8qIEpTRGljdGlvbmFyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0U0MzhBMTE0MEMwREJGMDA1RTQzN0UgLyogSlNEaWN0aW9uYXJ5LmNwcCAq
LzsgfTsKIAkJQkNFNDQxMzMxMkY3NDhFMjAwOUI4NEI4IC8qIFJlbmRlckNvbWJpbmVUZXh0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRTQ0MTMx
MTJGNzQ4RTIwMDlCODRCOCAvKiBSZW5kZXJDb21iaW5lVGV4dC5jcHAgKi87IH07CkBAIC0xMjYw
Niw4ICsxMjYwNCw2IEBACiAJCUJDRTFDNDNGMEQ5ODMwRjQwMDNCMDJGMiAvKiBKU0xvY2F0aW9u
Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTG9jYXRp
b25DdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0UzQkVDMDBEMjIy
QjFEMDA3RTA2RTQgLyogVGFnTm9kZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gVGFnTm9kZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQ0UzQkVDMTBEMjIyQjFEMDA3RTA2RTQgLyogVGFnTm9kZUxpc3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVGFnTm9kZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJQkNFNDM4OTYxNDBCMDA1MTAwNUU0MzdFIC8qIEV2ZW50Q29uc3RydWN0b3JzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEV2ZW50Q29uc3RydWN0b3JzLmg7IHBh
dGggPSBnZW5lcmljL0V2ZW50Q29uc3RydWN0b3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUJDRTQzODk5MTQwQjAwNzMwMDVFNDM3RSAvKiBKU0V2ZW50Q29uc3RydWN0b3JzLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRXZlbnRDb25zdHJ1Y3Rv
cnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0U0Mzg5QjE0MEIxQkE3MDA1
RTQzN0UgLyogSlNEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0U0MzhBMTE0
MEMwREJGMDA1RTQzN0UgLyogSlNEaWN0aW9uYXJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRGljdGlvbmFyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDRTQ0MTMxMTJGNzQ4RTIwMDlCODRCOCAvKiBSZW5kZXJDb21iaW5lVGV4dC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJDb21iaW5lVGV4dC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xOTQ2MSw3ICsxOTQ1Nyw2IEBACiAJ
CQkJQTYyMkE4RjUxMjJDNDRBNjAwQTc4NUIzIC8qIEJpbmRpbmdTZWN1cml0eS5oICovLAogCQkJ
CUE2MjJBOEY2MTIyQzQ0QTYwMEE3ODVCMyAvKiBCaW5kaW5nU2VjdXJpdHlCYXNlLmNwcCAqLywK
IAkJCQlBNjIyQThGNzEyMkM0NEE2MDBBNzg1QjMgLyogQmluZGluZ1NlY3VyaXR5QmFzZS5oICov
LAotCQkJCUJDRTQzODk2MTQwQjAwNTEwMDVFNDM3RSAvKiBFdmVudENvbnN0cnVjdG9ycy5oICov
LAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmluZGluZy5oICovLAog
CQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMTk1MzAsNyArMTk1MjUsNiBAQAogCQkJCTY1
RTBFOTQzMTEzM0M4OUYwMEI0Q0IxMCAvKiBKU0RPTVdyYXBwZXIuaCAqLywKIAkJCQlGM0Q0NjE0
NjExNjFENTMyMDBDQTBEMDkgLyogSlNFcnJvckhhbmRsZXIuY3BwICovLAogCQkJCUYzRDQ2MTQ3
MTE2MUQ1MzIwMENBMEQwOSAvKiBKU0Vycm9ySGFuZGxlci5oICovLAotCQkJCUJDRTQzODk5MTQw
QjAwNzMwMDVFNDM3RSAvKiBKU0V2ZW50Q29uc3RydWN0b3JzLmNwcCAqLywKIAkJCQlCQzYwOTAx
RTBFOTFCOEVDMDAwQzY4QjUgLyogSlNFdmVudFRhcmdldC5jcHAgKi8sCiAJCQkJQkM2MDkwMUQw
RTkxQjhFQzAwMEM2OEI1IC8qIEpTRXZlbnRUYXJnZXQuaCAqLywKIAkJCQkzMzE0QUNFOTEwODky
MDg2MDAwRjBFNTYgLyogSlNFeGNlcHRpb25CYXNlLmNwcCAqLywKQEAgLTI0NjYxLDcgKzI0NjU1
LDYgQEAKIAkJCQlERjlBRkQ3MjEzRkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uT2JqQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM1MDBGMzIxM0ZERTNCRTAw
OTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggaW4gSGVhZGVycyAqLywKIAkJCQlEMEEz
QTczMTE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKLQkJCQlCQ0U0Mzg5NzE0MEIwMDUxMDA1RTQzN0UgLyogRXZlbnRDb25zdHJ1Y3RvcnMu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDRTQzODlDMTQwQjFCQTgwMDVFNDM3RSAvKiBKU0RpY3Rp
b25hcnkuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0NTMyMkFDMTQwQ0UyNjcwMDVBMEY5MiAvKiBT
ZWxlY3RvclF1ZXJ5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCMTBCNjk4MDE0MEMxNzQwMDBCQzFD
MjYgLyogV2ViVlRUVG9rZW4uaCBpbiBIZWFkZXJzICovLApAQCAtMjc1MzAsNyArMjc1MjMsNiBA
QAogCQkJCTQ5OThBRUQ0MTNGQzQxN0YwMDkwQjFBQSAvKiBKU1JlcXVlc3RBbmltYXRpb25GcmFt
ZUNhbGxiYWNrQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBMTQxNEI1MTNBMEYwNTAw
MDE5OTk2QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
REY5QUZENzMxM0ZDMzFEODAwMTVGRUI3IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakMubW0gaW4gU291cmNlcyAqLywKLQkJCQlCQ0U0Mzg5QTE0MEIwMDczMDA1RTQzN0UgLyog
SlNFdmVudENvbnN0cnVjdG9ycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0U0MzhBMjE0MEMw
REMwMDA1RTQzN0UgLyogSlNEaWN0aW9uYXJ5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUU0NTMy
MkFCMTQwQ0UyNjcwMDVBMEY5MiAvKiBTZWxlY3RvclF1ZXJ5LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUIxMEI2OTgxMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbml6ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0V2
ZW50Q29uc3RydWN0b3JzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0V2ZW50
Q29uc3RydWN0b3JzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRhMDE4YjMuLjAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9FdmVudENvbnN0cnVj
dG9ycy5oCisrKyAvZGV2L251bGwKQEAgLTEsMTY2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZu
ZGVmIEV2ZW50Q29uc3RydWN0b3JzX2gKLSNkZWZpbmUgRXZlbnRDb25zdHJ1Y3RvcnNfaAotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNkZWZpbmUgSU5TVEFOVElBVEVfSU5JVElBTElaSU5HX0NP
TlNUUlVDVE9SX0ZPUl9FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklM
TF9QQVJFTlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAgIFwKLSAgICBESUNUSU9O
QVJZX1NUQVJUKEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkoYnViYmxlcykgXAotICAg
ICAgICBGSUxMX1BST1BFUlRZKGNhbmNlbGFibGUpIFwKLSAgICBESUNUSU9OQVJZX0VORChFdmVu
dCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX0NV
U1RPTV9FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9QQVJFTlRf
UFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAgIFwKLSAgICBESUNUSU9OQVJZX1NUQVJU
KEN1c3RvbUV2ZW50KSBcCi0gICAgICAgIEZJTExfUEFSRU5UX1BST1BFUlRJRVMoRXZlbnQpIFwK
LSAgICAgICAgRklMTF9QUk9QRVJUWShkZXRhaWwpIFwKLSAgICBESUNUSU9OQVJZX0VORChDdXN0
b21FdmVudCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1Jf
Rk9SX1BST0dSRVNTX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxM
X1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgXAotICAgIERJQ1RJT05B
UllfU1RBUlQoUHJvZ3Jlc3NFdmVudCkgXAotICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJUSUVT
KEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkobGVuZ3RoQ29tcHV0YWJsZSkgXAotICAg
ICAgICBGSUxMX1BST1BFUlRZKGxvYWRlZCkgXAotICAgICAgICBGSUxMX1BST1BFUlRZKHRvdGFs
KSBcCi0gICAgRElDVElPTkFSWV9FTkQoUHJvZ3Jlc3NFdmVudCkKLQotI2RlZmluZSBJTlNUQU5U
SUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX1dFQktJVF9BTklNQVRJT05fRVZFTlQo
RElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMs
IEZJTExfUFJPUEVSVFkpIFwKLSAgICBcCi0gICAgRElDVElPTkFSWV9TVEFSVChXZWJLaXRBbmlt
YXRpb25FdmVudCkgXAotICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTKEV2ZW50KSBcCi0g
ICAgICAgIEZJTExfUFJPUEVSVFkoYW5pbWF0aW9uTmFtZSkgXAotICAgICAgICBGSUxMX1BST1BF
UlRZKGVsYXBzZWRUaW1lKSBcCi0gICAgRElDVElPTkFSWV9FTkQoV2ViS2l0QW5pbWF0aW9uRXZl
bnQpCi0KLSNkZWZpbmUgSU5TVEFOVElBVEVfSU5JVElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9I
QVNIX0NIQU5HRV9FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9Q
QVJFTlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAgIFwKLSAgICBESUNUSU9OQVJZ
X1NUQVJUKEhhc2hDaGFuZ2VFdmVudCkgXAotICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJUSUVT
KEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkob2xkVVJMKSBcCi0gICAgICAgIEZJTExf
UFJPUEVSVFkobmV3VVJMKSBcCi0gICAgRElDVElPTkFSWV9FTkQoSGFzaENoYW5nZUV2ZW50KQot
Ci0jZGVmaW5lIElOU1RBTlRJQVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUl9GT1JfUEFHRV9U
UkFOU0lUSU9OX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BB
UkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgXAotICAgIERJQ1RJT05BUllf
U1RBUlQoUGFnZVRyYW5zaXRpb25FdmVudCkgXAotICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJU
SUVTKEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkocGVyc2lzdGVkKSBcCi0gICAgRElD
VElPTkFSWV9FTkQoUGFnZVRyYW5zaXRpb25FdmVudCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9J
TklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX1BPUF9TVEFURV9FVkVOVChESUNUSU9OQVJZX1NU
QVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9QQVJFTlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJU
WSkgXAotICAgIFwKLSAgICBESUNUSU9OQVJZX1NUQVJUKFBvcFN0YXRlRXZlbnQpIFwKLSAgICAg
ICAgRklMTF9QQVJFTlRfUFJPUEVSVElFUyhFdmVudCkgXAotICAgICAgICBGSUxMX1BST1BFUlRZ
KHN0YXRlKSBcCi0gICAgRElDVElPTkFSWV9FTkQoUG9wU3RhdGVFdmVudCkKLQotI2RlZmluZSBJ
TlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX0VSUk9SX0VWRU5UKERJQ1RJ
T05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxM
X1BST1BFUlRZKSBcCi0gICAgXAotICAgIERJQ1RJT05BUllfU1RBUlQoRXJyb3JFdmVudCkgXAot
ICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTKEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJP
UEVSVFkobWVzc2FnZSkgXAotICAgICAgICBGSUxMX1BST1BFUlRZKGZpbGVuYW1lKSBcCi0gICAg
ICAgIEZJTExfUFJPUEVSVFkobGluZW5vKSBcCi0gICAgRElDVElPTkFSWV9FTkQoRXJyb3JFdmVu
dCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX0NM
T1NFX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9Q
Uk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgXAotICAgIERJQ1RJT05BUllfU1RBUlQo
Q2xvc2VFdmVudCkgXAotICAgICAgICBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTKEV2ZW50KSBcCi0g
ICAgICAgIEZJTExfUFJPUEVSVFkod2FzQ2xlYW4pIFwKLSAgICAgICAgRklMTF9QUk9QRVJUWShj
b2RlKSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkocmVhc29uKSBcCi0gICAgRElDVElPTkFSWV9F
TkQoQ2xvc2VFdmVudCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RS
VUNUT1JfRk9SX01FU1NBR0VfRVZFTlQoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQs
IEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVSVFkpIFwKLSAgICBcCi0gICAgRElD
VElPTkFSWV9TVEFSVChNZXNzYWdlRXZlbnQpIFwKLSAgICAgICAgRklMTF9QQVJFTlRfUFJPUEVS
VElFUyhFdmVudCkgXAotICAgICAgICBGSUxMX1BST1BFUlRZKGRhdGEpIFwKLSAgICAgICAgRklM
TF9QUk9QRVJUWShvcmlnaW4pIFwKLSAgICAgICAgRklMTF9QUk9QRVJUWShsYXN0RXZlbnRJZCkg
XAotICAgICAgICBGSUxMX1BST1BFUlRZKHNvdXJjZSkgXAotICAgICAgICBGSUxMX1BST1BFUlRZ
KHBvcnRzKSBcCi0gICAgRElDVElPTkFSWV9FTkQoTWVzc2FnZUV2ZW50KQotCi0jZGVmaW5lIElO
U1RBTlRJQVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUl9GT1JfV0VCS0lUX1RSQU5TSVRJT05f
RVZFTlQoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BF
UlRJRVMsIEZJTExfUFJPUEVSVFkpIFwKLSAgICBcCi0gICAgRElDVElPTkFSWV9TVEFSVChXZWJL
aXRUcmFuc2l0aW9uRXZlbnQpIFwKLSAgICAgICAgRklMTF9QQVJFTlRfUFJPUEVSVElFUyhFdmVu
dCkgXAotICAgICAgICBGSUxMX1BST1BFUlRZKHByb3BlcnR5TmFtZSkgXAotICAgICAgICBGSUxM
X1BST1BFUlRZKGVsYXBzZWRUaW1lKSBcCi0gICAgRElDVElPTkFSWV9FTkQoV2ViS2l0VHJhbnNp
dGlvbkV2ZW50KQotCi0jZGVmaW5lIElOU1RBTlRJQVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RP
Ul9GT1JfQkVGT1JFX0xPQURfRVZFTlQoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQs
IEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVSVFkpIFwKLSAgICBcCi0gICAgRElD
VElPTkFSWV9TVEFSVChCZWZvcmVMb2FkRXZlbnQpIFwKLSAgICAgICAgRklMTF9QQVJFTlRfUFJP
UEVSVElFUyhFdmVudCkgXAotICAgICAgICBGSUxMX1BST1BFUlRZKHVybCkgXAotICAgIERJQ1RJ
T05BUllfRU5EKEJlZm9yZUxvYWRFdmVudCkKLQotI2RlZmluZSBJTlNUQU5USUFURV9JTklUSUFM
SVpJTkdfQ09OU1RSVUNUT1JfRk9SX09WRVJGTE9XX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJ
Q1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0g
ICAgXAotICAgIERJQ1RJT05BUllfU1RBUlQoT3ZlcmZsb3dFdmVudCkgXAotICAgICAgICBGSUxM
X1BBUkVOVF9QUk9QRVJUSUVTKEV2ZW50KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkob3JpZW50
KSBcCi0gICAgICAgIEZJTExfUFJPUEVSVFkoaG9yaXpvbnRhbE92ZXJmbG93KSBcCi0gICAgICAg
IEZJTExfUFJPUEVSVFkodmVydGljYWxPdmVyZmxvdykgXAotICAgIERJQ1RJT05BUllfRU5EKE92
ZXJmbG93RXZlbnQpCi0KLSNpZiBFTkFCTEUoVklERU9fVFJBQ0spCi0jZGVmaW5lIElOU1RBTlRJ
QVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUl9GT1JfVFJBQ0tfRVZFTlQoRElDVElPTkFSWV9T
VEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVS
VFkpIFwKLSAgICBcCi0gICAgRElDVElPTkFSWV9TVEFSVChUcmFja0V2ZW50KSBcCi0gICAgICAg
IEZJTExfUEFSRU5UX1BST1BFUlRJRVMoRXZlbnQpIFwKLSAgICAgICAgRklMTF9QUk9QRVJUWSh0
cmFjaykgXAotICAgIERJQ1RJT05BUllfRU5EKFRyYWNrRXZlbnQpCi0jZWxzZQotI2RlZmluZSBJ
TlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX1RSQUNLX0VWRU5UKERJQ1RJ
T05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxM
X1BST1BFUlRZKQotI2VuZGlmCi0KLSNkZWZpbmUgSU5TVEFOVElBVEVfQUxMX0VWRU5UX0lOSVRJ
QUxJWklOR19DT05TVFJVQ1RPUlMoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJ
TExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVSVFkpIFwKLSAgICBJTlNUQU5USUFURV9J
TklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJ
T05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAg
SU5TVEFOVElBVEVfSU5JVElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9DVVNUT01fRVZFTlQoRElD
VElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJ
TExfUFJPUEVSVFkpIFwKLSAgICBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1Jf
Rk9SX1BST0dSRVNTX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxM
X1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgSU5TVEFOVElBVEVfSU5J
VElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9XRUJLSVRfQU5JTUFUSU9OX0VWRU5UKERJQ1RJT05B
UllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BS
T1BFUlRZKSBcCi0gICAgSU5TVEFOVElBVEVfSU5JVElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9I
QVNIX0NIQU5HRV9FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9Q
QVJFTlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAgIElOU1RBTlRJQVRFX0lOSVRJ
QUxJWklOR19DT05TVFJVQ1RPUl9GT1JfUEFHRV9UUkFOU0lUSU9OX0VWRU5UKERJQ1RJT05BUllf
U1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BF
UlRZKSBcCi0gICAgSU5TVEFOVElBVEVfSU5JVElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9QT1Bf
U1RBVEVfRVZFTlQoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5U
X1BST1BFUlRJRVMsIEZJTExfUFJPUEVSVFkpIFwKLSAgICBJTlNUQU5USUFURV9JTklUSUFMSVpJ
TkdfQ09OU1RSVUNUT1JfRk9SX0VSUk9SX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05B
UllfRU5ELCBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgSU5T
VEFOVElBVEVfSU5JVElBTElaSU5HX0NPTlNUUlVDVE9SX0ZPUl9DTE9TRV9FVkVOVChESUNUSU9O
QVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9QQVJFTlRfUFJPUEVSVElFUywgRklMTF9Q
Uk9QRVJUWSkgXAotICAgIElOU1RBTlRJQVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUl9GT1Jf
TUVTU0FHRV9FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNUSU9OQVJZX0VORCwgRklMTF9QQVJF
TlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAgIElOU1RBTlRJQVRFX0lOSVRJQUxJ
WklOR19DT05TVFJVQ1RPUl9GT1JfV0VCS0lUX1RSQU5TSVRJT05fRVZFTlQoRElDVElPTkFSWV9T
VEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVS
VFkpIFwKLSAgICBJTlNUQU5USUFURV9JTklUSUFMSVpJTkdfQ09OU1RSVUNUT1JfRk9SX0JFRk9S
RV9MT0FEX0VWRU5UKERJQ1RJT05BUllfU1RBUlQsIERJQ1RJT05BUllfRU5ELCBGSUxMX1BBUkVO
VF9QUk9QRVJUSUVTLCBGSUxMX1BST1BFUlRZKSBcCi0gICAgSU5TVEFOVElBVEVfSU5JVElBTEla
SU5HX0NPTlNUUlVDVE9SX0ZPUl9PVkVSRkxPV19FVkVOVChESUNUSU9OQVJZX1NUQVJULCBESUNU
SU9OQVJZX0VORCwgRklMTF9QQVJFTlRfUFJPUEVSVElFUywgRklMTF9QUk9QRVJUWSkgXAotICAg
IElOU1RBTlRJQVRFX0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUl9GT1JfVFJBQ0tfRVZFTlQoRElD
VElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9FTkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJ
TExfUFJPUEVSVFkpIFwKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRXZl
bnRDb25zdHJ1Y3RvcnNfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNCaW5kaW5nc0FsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmlu
ZGluZ3NBbGxJbk9uZS5jcHAKaW5kZXggNTJiOTZmOS4uZmNlNDJhZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC03Miw3ICs3
Miw2IEBACiAjaW5jbHVkZSAiSlNEb2N1bWVudEN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNFbGVt
ZW50Q3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0Vycm9ySGFuZGxlci5jcHAiCi0jaW5jbHVkZSAi
SlNFdmVudENvbnN0cnVjdG9ycy5jcHAiCiAjaW5jbHVkZSAiSlNFdmVudEN1c3RvbS5jcHAiCiAj
aW5jbHVkZSAiSlNFdmVudExpc3RlbmVyLmNwcCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmNw
cCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDb25zdHJ1
Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudENvbnN0cnVjdG9y
cy5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIwN2I0ZWUuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudENvbnN0cnVjdG9ycy5jcHAKKysr
IC9kZXYvbnVsbApAQCAtMSwxMjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
LSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgot
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJFdmVudENvbnN0cnVjdG9ycy5oIgotCi0jaW5jbHVkZSAiQmVmb3Jl
TG9hZEV2ZW50LmgiCi0jaW5jbHVkZSAiQ2xvc2VFdmVudC5oIgotI2luY2x1ZGUgIkN1c3RvbUV2
ZW50LmgiCi0jaW5jbHVkZSAiRXJyb3JFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50LmgiCi0jaW5j
bHVkZSAiSGFzaENoYW5nZUV2ZW50LmgiCi0jaW5jbHVkZSAiSlNCZWZvcmVMb2FkRXZlbnQuaCIK
LSNpbmNsdWRlICJKU0Nsb3NlRXZlbnQuaCIKLSNpbmNsdWRlICJKU0N1c3RvbUV2ZW50LmgiCi0j
aW5jbHVkZSAiSlNEaWN0aW9uYXJ5LmgiCi0jaW5jbHVkZSAiSlNFcnJvckV2ZW50LmgiCi0jaW5j
bHVkZSAiSlNFdmVudC5oIgotI2luY2x1ZGUgIkpTSGFzaENoYW5nZUV2ZW50LmgiCi0jaW5jbHVk
ZSAiSlNNZXNzYWdlRXZlbnQuaCIKLSNpbmNsdWRlICJKU092ZXJmbG93RXZlbnQuaCIKLSNpbmNs
dWRlICJKU1BhZ2VUcmFuc2l0aW9uRXZlbnQuaCIKLSNpbmNsdWRlICJKU1BvcFN0YXRlRXZlbnQu
aCIKLSNpbmNsdWRlICJKU1Byb2dyZXNzRXZlbnQuaCIKLSNpbmNsdWRlICJKU1dlYktpdEFuaW1h
dGlvbkV2ZW50LmgiCi0jaW5jbHVkZSAiSlNXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaCIKLSNpbmNs
dWRlICJNZXNzYWdlRXZlbnQuaCIKLSNpbmNsdWRlICJPdmVyZmxvd0V2ZW50LmgiCi0jaW5jbHVk
ZSAiUGFnZVRyYW5zaXRpb25FdmVudC5oIgotI2luY2x1ZGUgIlBvcFN0YXRlRXZlbnQuaCIKLSNp
bmNsdWRlICJQcm9ncmVzc0V2ZW50LmgiCi0jaW5jbHVkZSAiV2ViS2l0QW5pbWF0aW9uRXZlbnQu
aCIKLSNpbmNsdWRlICJXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaCIKLSNpbmNsdWRlIDxydW50aW1l
L0Vycm9yLmg+Ci0KLSNpZiBFTkFCTEUoVklERU9fVFJBQ0spCi0jaW5jbHVkZSAiSlNUcmFja0V2
ZW50LmgiCi0jaW5jbHVkZSAiVHJhY2tFdmVudC5oIgotI2VuZGlmCi0KLXVzaW5nIG5hbWVzcGFj
ZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotdGVtcGxhdGU8dHlwZW5hbWUgQ29uc3Ry
dWN0b3IsIHR5cGVuYW1lIEV2ZW50VHlwZSwgdHlwZW5hbWUgRXZlbnRJbml0VHlwZT4KLXN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBjb25zdHJ1Y3RKU0V2ZW50V2l0aEluaXRpYWxpemVyKEV4ZWNTdGF0
ZSogZXhlYywgYm9vbCAoKmZpbGxlcikoRXZlbnRJbml0VHlwZSYsIEpTRGljdGlvbmFyeSYpKQot
ewotICAgIENvbnN0cnVjdG9yKiBqc0NvbnN0cnVjdG9yID0gc3RhdGljX2Nhc3Q8Q29uc3RydWN0
b3IqPihleGVjLT5jYWxsZWUoKSk7Ci0KLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBleGVj
dXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwot
ICAgIGlmICghZXhlY3V0aW9uQ29udGV4dCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihl
eGVjLCBjcmVhdGVSZWZlcmVuY2VFcnJvcihleGVjLCAiQ29uc3RydWN0b3IgYXNzb2NpYXRlZCBl
eGVjdXRpb24gY29udGV4dCBpcyB1bmF2YWlsYWJsZSIpKTsKLQotICAgIEF0b21pY1N0cmluZyBl
dmVudFR5cGUgPSB1c3RyaW5nVG9BdG9taWNTdHJpbmcoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJp
bmcoZXhlYykpOwotICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKLQotICAgIEV2ZW50SW5pdFR5cGUgZXZl
bnRJbml0OwotCi0gICAgSlNWYWx1ZSBpbml0aWFsaXplclZhbHVlID0gZXhlYy0+YXJndW1lbnQo
MSk7Ci0gICAgaWYgKCFpbml0aWFsaXplclZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKLSAg
ICAgICAgLy8gR2l2ZW4gdGhlIGFib3ZlIHRlc3QsIHRoaXMgd2lsbCBhbHdheXMgeWllbGQgYW4g
b2JqZWN0LgotICAgICAgICBKU09iamVjdCogaW5pdGlhbGl6ZXJPYmplY3QgPSBpbml0aWFsaXpl
clZhbHVlLnRvT2JqZWN0KGV4ZWMpOwotCi0gICAgICAgIC8vIENyZWF0ZSB0aGUgZGljdGlvbmFy
eSB3cmFwcGVyIGZyb20gdGhlIGluaXRpYWxpemVyIG9iamVjdC4KLSAgICAgICAgSlNEaWN0aW9u
YXJ5IGRpY3Rpb25hcnkoZXhlYywgaW5pdGlhbGl6ZXJPYmplY3QpOwotCi0gICAgICAgIC8vIEF0
dGVtcHQgdG8gZmlsbCBpbiB0aGUgRXZlbnRJbml0LgotICAgICAgICBpZiAoIWZpbGxlcihldmVu
dEluaXQsIGRpY3Rpb25hcnkpKQotICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKLSAgICB9Ci0KLSAgICBSZWZQdHI8RXZlbnRUeXBlPiBldmVudCA9IEV2
ZW50VHlwZTo6Y3JlYXRlKGV2ZW50VHlwZSwgZXZlbnRJbml0KTsKLSAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHRvSlMoZXhlYywganNDb25zdHJ1Y3Rvci0+Z2xvYmFsT2JqZWN0KCksIGV2ZW50
LmdldCgpKSk7Ci19Ci0KLQotI2RlZmluZSBESUNUSU9OQVJZX1NUQVJUKEV2ZW50KSBcCi0gICAg
c3RhdGljIGJvb2wgZmlsbCMjRXZlbnQjI0luaXQoRXZlbnQjI0luaXQmIGV2ZW50SW5pdCwgSlNE
aWN0aW9uYXJ5JiBkaWN0aW9uYXJ5KSBcCi0gICAgewotCi0jZGVmaW5lIERJQ1RJT05BUllfRU5E
KEV2ZW50KSBcCi0gICAgICAgIHJldHVybiB0cnVlOyBcCi0gICAgfSBcCi0gICAgXAotICAgIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlMjI0V2ZW50IyNDb25zdHJ1Y3Rvcjo6Y29uc3Ry
dWN0SlMjI0V2ZW50KEV4ZWNTdGF0ZSogZXhlYykgXAotICAgIHsgXAotICAgICAgICByZXR1cm4g
Y29uc3RydWN0SlNFdmVudFdpdGhJbml0aWFsaXplcjxKUyMjRXZlbnQjI0NvbnN0cnVjdG9yLCBF
dmVudCwgRXZlbnQjI0luaXQ+KGV4ZWMsIGZpbGwjI0V2ZW50IyNJbml0KTsgXAotICAgIH0KLQot
I2RlZmluZSBGSUxMX1BBUkVOVF9QUk9QRVJUSUVTKHBhcmVudCkgXAotICAgIGlmICghZmlsbCMj
cGFyZW50IyNJbml0KGV2ZW50SW5pdCwgZGljdGlvbmFyeSkpIFwKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotCi0jZGVmaW5lIEZJTExfUFJPUEVSVFkocHJvcGVydHlOYW1lKSBcCi0gICAgaWYgKCFk
aWN0aW9uYXJ5LnRyeUdldFByb3BlcnR5KCNwcm9wZXJ0eU5hbWUsIGV2ZW50SW5pdC5wcm9wZXJ0
eU5hbWUpKSBcCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotSU5TVEFOVElBVEVfQUxMX0VWRU5U
X0lOSVRJQUxJWklOR19DT05TVFJVQ1RPUlMoRElDVElPTkFSWV9TVEFSVCwgRElDVElPTkFSWV9F
TkQsIEZJTExfUEFSRU5UX1BST1BFUlRJRVMsIEZJTExfUFJPUEVSVFkpCi0KLX0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9ySlMucG0KaW5kZXggNmY5OWIxODUuLjg4ZGFmM2QgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC03MzMsNiAr
NzMzLDcgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgfQogCiAgICAgQWRkQ2xhc3NGb3J3YXJk
SWZOZWVkZWQoIkpTRE9NV2luZG93U2hlbGwiKSBpZiAkaW50ZXJmYWNlTmFtZSBlcSAiRE9NV2lu
ZG93IjsKKyAgICBBZGRDbGFzc0ZvcndhcmRJZk5lZWRlZCgiSlNEaWN0aW9uYXJ5IikgaWYgSXND
b25zdHJ1Y3RvclRlbXBsYXRlKCRkYXRhTm9kZSwgIkV2ZW50Iik7CiAKICAgICAjIENsYXNzIGRl
Y2xhcmF0aW9uCiAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgImNsYXNzICRjbGFzc05hbWUgOiBw
dWJsaWMgJHBhcmVudENsYXNzTmFtZSB7XG4iKTsKQEAgLTEwODQsNyArMTA4NSw3IEBAIHN1YiBH
ZW5lcmF0ZUhlYWRlcgogCiAgICAgaWYgKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkpTQ3VzdG9tQ29uc3RydWN0b3IifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDdXN0b21Db25zdHJ1Y3RvciJ9IHx8ICEkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJPbWl0Q29uc3RydWN0b3IifSkgewogICAgICAgICAkaGVhZGVySW5jbHVkZXN7IkpTRE9NQmlu
ZGluZy5oIn0gPSAxOwotICAgICAgICBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVjbGFyYXRpb24oXEBo
ZWFkZXJDb250ZW50LCAkY2xhc3NOYW1lLCAkZGF0YU5vZGUpOworICAgICAgICBHZW5lcmF0ZUNv
bnN0cnVjdG9yRGVjbGFyYXRpb24oXEBoZWFkZXJDb250ZW50LCAkY2xhc3NOYW1lLCAkZGF0YU5v
ZGUsICRpbnRlcmZhY2VOYW1lKTsKICAgICB9CiAKICAgICBpZiAoJG51bUZ1bmN0aW9ucyA+IDAp
IHsKQEAgLTMyMDgsOSArMzIwOSw5IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVjbGFyYXRp
b24KICAgICBteSAkb3V0cHV0QXJyYXkgPSBzaGlmdDsKICAgICBteSAkY2xhc3NOYW1lID0gc2hp
ZnQ7CiAgICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7CisgICAgbXkgJGludGVyZmFjZU5hbWUgPSBz
aGlmdDsKIAogICAgIG15ICRjb25zdHJ1Y3RvckNsYXNzTmFtZSA9ICIke2NsYXNzTmFtZX1Db25z
dHJ1Y3RvciI7Ci0gICAgbXkgJGNhbkNvbnN0cnVjdCA9ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkNvbnN0cnVjdG9yIn0gfHwgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiSlNDdXN0b21Db25zdHJ1Y3RvciJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkN1c3RvbUNvbnN0cnVjdG9yIn07CiAgICAgbXkgJGNhbGxXaXRoID0gJGRhdGFOb2RlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FsbFdpdGgifTsKIAogICAgIHB1c2goQCRvdXRwdXRBcnJh
eSwgImNsYXNzICR7Y29uc3RydWN0b3JDbGFzc05hbWV9IDogcHVibGljIERPTUNvbnN0cnVjdG9y
T2JqZWN0IHtcbiIpOwpAQCAtMzIzOSwxMSArMzI0MCwxNSBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1
Y3RvckRlY2xhcmF0aW9uCiAgICAgcHVzaChAJG91dHB1dEFycmF5LCAicHJvdGVjdGVkOlxuIik7
CiAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1
Y3R1cmVGbGFncyA9IEpTQzo6T3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSlNDOjpJbXBs
ZW1lbnRzSGFzSW5zdGFuY2UgfCBET01Db25zdHJ1Y3Rvck9iamVjdDo6U3RydWN0dXJlRmxhZ3M7
XG4iKTsKIAotICAgIGlmICgkY2FuQ29uc3RydWN0KSB7CisgICAgaWYgKElzQ29uc3RydWN0YWJs
ZSgkZGF0YU5vZGUpKSB7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBzdGF0aWMg
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdCR7Y2xhc3NOYW1lfShK
U0M6OkV4ZWNTdGF0ZSopO1xuIik7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBz
dGF0aWMgSlNDOjpDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDOjpKU0NlbGwqLCBK
U0M6OkNvbnN0cnVjdERhdGEmKTtcbiIpOwogICAgIH0KICAgICBwdXNoKEAkb3V0cHV0QXJyYXks
ICJ9O1xuXG4iKTsKKworICAgIGlmIChJc0NvbnN0cnVjdG9yVGVtcGxhdGUoJGRhdGFOb2RlLCAi
RXZlbnQiKSkgeworICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJib29sIGZpbGwke2ludGVy
ZmFjZU5hbWV9SW5pdCgke2ludGVyZmFjZU5hbWV9SW5pdCYsIEpTRGljdGlvbmFyeSYpO1xuXG4i
KTsKKyAgICB9CiB9CiAKIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbgpAQCAtMzI4
OCw4ICszMjkzLDcyIEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbgogICAgIHB1
c2goQCRvdXRwdXRBcnJheSwgIiAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVEZXNjcmlwdG9yPCR7
Y29uc3RydWN0b3JDbGFzc05hbWV9LCBKU0RPTVdyYXBwZXI+KGV4ZWMsICYke2NvbnN0cnVjdG9y
Q2xhc3NOYW1lfVRhYmxlLCBzdGF0aWNfY2FzdDwke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfSo+KG9i
amVjdCksIHByb3BlcnR5TmFtZSwgZGVzY3JpcHRvcik7XG4iKTsKICAgICBwdXNoKEAkb3V0cHV0
QXJyYXksICJ9XG5cbiIpOwogCi0gICAgaWYgKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkNvbnN0cnVjdG9yIn0gfHwgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlND
dXN0b21Db25zdHJ1Y3RvciJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1
c3RvbUNvbnN0cnVjdG9yIn0pIHsKLSAgICAgICAgaWYgKCEoJGRhdGFOb2RlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSlNDdXN0b21Db25zdHJ1Y3RvciJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkN1c3RvbUNvbnN0cnVjdG9yIn0pKSB7CisgICAgaWYgKElzQ29uc3RydWN0
YWJsZSgkZGF0YU5vZGUpKSB7CisgICAgICAgIGlmIChJc0NvbnN0cnVjdG9yVGVtcGxhdGUoJGRh
dGFOb2RlLCAiRXZlbnQiKSkgeworICAgICAgICAgICAgJGltcGxJbmNsdWRlc3siSlNEaWN0aW9u
YXJ5LmgifSA9IDE7CisgICAgICAgICAgICAkaW1wbEluY2x1ZGVzeyI8cnVudGltZS9FcnJvci5o
PiJ9ID0gMTsKKworICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCA8PEVORCk7CitFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMICR7Y29uc3RydWN0b3JDbGFzc05hbWV9Ojpjb25zdHJ1
Y3Qke2NsYXNzTmFtZX0oRXhlY1N0YXRlKiBleGVjKQoreworICAgICR7Y29uc3RydWN0b3JDbGFz
c05hbWV9KiBqc0NvbnN0cnVjdG9yID0gc3RhdGljX2Nhc3Q8JHtjb25zdHJ1Y3RvckNsYXNzTmFt
ZX0qPihleGVjLT5jYWxsZWUoKSk7CisKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBleGVj
dXRpb25Db250ZXh0ID0ganNDb25zdHJ1Y3Rvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwor
ICAgIGlmICghZXhlY3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihl
eGVjLCBjcmVhdGVSZWZlcmVuY2VFcnJvcihleGVjLCAiQ29uc3RydWN0b3IgYXNzb2NpYXRlZCBl
eGVjdXRpb24gY29udGV4dCBpcyB1bmF2YWlsYWJsZSIpKTsKKworICAgIEF0b21pY1N0cmluZyBl
dmVudFR5cGUgPSB1c3RyaW5nVG9BdG9taWNTdHJpbmcoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJp
bmcoZXhlYykpOworICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKKworICAgICR7aW50ZXJmYWNlTmFtZX1J
bml0IGV2ZW50SW5pdDsKKworICAgIEpTVmFsdWUgaW5pdGlhbGl6ZXJWYWx1ZSA9IGV4ZWMtPmFy
Z3VtZW50KDEpOworICAgIGlmICghaW5pdGlhbGl6ZXJWYWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgp
KSB7CisgICAgICAgIC8vIEdpdmVuIHRoZSBhYm92ZSB0ZXN0LCB0aGlzIHdpbGwgYWx3YXlzIHlp
ZWxkIGFuIG9iamVjdC4KKyAgICAgICAgSlNPYmplY3QqIGluaXRpYWxpemVyT2JqZWN0ID0gaW5p
dGlhbGl6ZXJWYWx1ZS50b09iamVjdChleGVjKTsKKworICAgICAgICAvLyBDcmVhdGUgdGhlIGRp
Y3Rpb25hcnkgd3JhcHBlciBmcm9tIHRoZSBpbml0aWFsaXplciBvYmplY3QuCisgICAgICAgIEpT
RGljdGlvbmFyeSBkaWN0aW9uYXJ5KGV4ZWMsIGluaXRpYWxpemVyT2JqZWN0KTsKKworICAgICAg
ICAvLyBBdHRlbXB0IHRvIGZpbGwgaW4gdGhlIEV2ZW50SW5pdC4KKyAgICAgICAgaWYgKCFmaWxs
JHtpbnRlcmZhY2VOYW1lfUluaXQoZXZlbnRJbml0LCBkaWN0aW9uYXJ5KSkKKyAgICAgICAgICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CisgICAgfQorCisgICAgUmVm
UHRyPCR7aW50ZXJmYWNlTmFtZX0+IGV2ZW50ID0gJHtpbnRlcmZhY2VOYW1lfTo6Y3JlYXRlKGV2
ZW50VHlwZSwgZXZlbnRJbml0KTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRvSlMoZXhl
YywganNDb25zdHJ1Y3Rvci0+Z2xvYmFsT2JqZWN0KCksIGV2ZW50LmdldCgpKSk7Cit9CisKK2Jv
b2wgZmlsbCR7aW50ZXJmYWNlTmFtZX1Jbml0KCR7aW50ZXJmYWNlTmFtZX1Jbml0JiBldmVudElu
aXQsIEpTRGljdGlvbmFyeSYgZGljdGlvbmFyeSkKK3sKK0VORAorCisgICAgICAgICAgICBmb3Jl
YWNoIG15ICRpbnRlcmZhY2VCYXNlIChAeyRkYXRhTm9kZS0+cGFyZW50c30pIHsKKyAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxFTkQpOworICAgIGlmICghZmlsbCR7aW50ZXJm
YWNlQmFzZX1Jbml0KGV2ZW50SW5pdCwgZGljdGlvbmFyeSkpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworRU5ECisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZvciAobXkgJGluZGV4ID0g
MDsgJGluZGV4IDwgQHskZGF0YU5vZGUtPmF0dHJpYnV0ZXN9OyAkaW5kZXgrKykgeworICAgICAg
ICAgICAgICAgIG15ICRhdHRyaWJ1dGUgPSBAeyRkYXRhTm9kZS0+YXR0cmlidXRlc31bJGluZGV4
XTsKKyAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yIn0pIHsKKyAgICAgICAgICAgICAg
ICAgICAgbXkgJGF0dHJpYnV0ZU5hbWUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWU7Cisg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CisgICAgaWYgKCFk
aWN0aW9uYXJ5LnRyeUdldFByb3BlcnR5KCIke2F0dHJpYnV0ZU5hbWV9IiwgZXZlbnRJbml0LiR7
YXR0cmlidXRlTmFtZX0pKQorICAgICAgICByZXR1cm4gZmFsc2U7CitFTkQKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwg
PDxFTkQpOworICAgIHJldHVybiB0cnVlOworfQorCitFTkQKKyAgICAgICAgfSBlbHNpZiAoISgk
ZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUNvbnN0cnVjdG9yIn0gfHwg
JGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tQ29uc3RydWN0b3IifSkpIHsK
ICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OmNvbnN0cnVjdCR7Y2xhc3NOYW1lfShFeGVj
U3RhdGUqIGV4ZWMpXG4iKTsKICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIntcbiIp
OwogCkBAIC0zMzUxLDQgKzM0MjAsMTkgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0
aW9uCiAgICAgfQogfQogCitzdWIgSXNDb25zdHJ1Y3RhYmxlCit7CisgICAgbXkgJGRhdGFOb2Rl
ID0gc2hpZnQ7CisKKyAgICByZXR1cm4gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Q3VzdG9tQ29uc3RydWN0b3IifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U0N1c3RvbUNvbnN0cnVjdG9yIn0gfHwgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Q29uc3RydWN0b3IifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0NvbnN0
cnVjdG9yVGVtcGxhdGUifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25z
dHJ1Y3RvclRlbXBsYXRlIn07Cit9CisKK3N1YiBJc0NvbnN0cnVjdG9yVGVtcGxhdGUKK3sKKyAg
ICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKKyAgICBteSAkdGVtcGxhdGUgPSBzaGlmdDsKKworICAg
IHJldHVybiAoJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDb25zdHJ1Y3RvclRl
bXBsYXRlIn0gJiYgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDb25zdHJ1Y3Rv
clRlbXBsYXRlIn0gZXEgJHRlbXBsYXRlKSB8fCAoJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiQ29uc3RydWN0b3JUZW1wbGF0ZSJ9ICYmICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkNvbnN0cnVjdG9yVGVtcGxhdGUifSBlcSAkdGVtcGxhdGUpOworfQorCiAxOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2
ZW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCmluZGV4IDY2YjJlNGMuLmRmOTQ0ODcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
dmVudENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTIxLDggKzIxLDEwIEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oIgog
CisjaW5jbHVkZSAiSlNEaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiS1VSTC5oIgogI2luY2x1ZGUg
IlRlc3RFdmVudENvbnN0cnVjdG9yLmgiCisjaW5jbHVkZSA8cnVudGltZS9FcnJvci5oPgogI2lu
Y2x1ZGUgPHJ1bnRpbWUvSlNTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvR2V0UHRyLmg+CiAKQEAg
LTk3LDYgKzk5LDQyIEBAIGJvb2wgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yOjpn
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSlNPYmplY3QqIG9iamVjCiAgICAgcmV0dXJuIGdldFN0
YXRpY1ZhbHVlRGVzY3JpcHRvcjxKU1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0b3IsIEpT
RE9NV3JhcHBlcj4oZXhlYywgJkpTVGVzdEV2ZW50Q29uc3RydWN0b3JDb25zdHJ1Y3RvclRhYmxl
LCBzdGF0aWNfY2FzdDxKU1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0b3IqPihvYmplY3Qp
LCBwcm9wZXJ0eU5hbWUsIGRlc2NyaXB0b3IpOwogfQogCitFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0SlNUZXN0
RXZlbnRDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCit7CisgICAgSlNUZXN0RXZlbnRDb25z
dHJ1Y3RvckNvbnN0cnVjdG9yKiBqc0NvbnN0cnVjdG9yID0gc3RhdGljX2Nhc3Q8SlNUZXN0RXZl
bnRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yKj4oZXhlYy0+Y2FsbGVlKCkpOworCisgICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogZXhlY3V0aW9uQ29udGV4dCA9IGpzQ29uc3RydWN0b3ItPnNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICBpZiAoIWV4ZWN1dGlvbkNvbnRleHQpCisgICAgICAg
IHJldHVybiB0aHJvd1ZNRXJyb3IoZXhlYywgY3JlYXRlUmVmZXJlbmNlRXJyb3IoZXhlYywgIkNv
bnN0cnVjdG9yIGFzc29jaWF0ZWQgZXhlY3V0aW9uIGNvbnRleHQgaXMgdW5hdmFpbGFibGUiKSk7
CisKKyAgICBBdG9taWNTdHJpbmcgZXZlbnRUeXBlID0gdXN0cmluZ1RvQXRvbWljU3RyaW5nKGV4
ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CisK
KyAgICBUZXN0RXZlbnRDb25zdHJ1Y3RvckluaXQgZXZlbnRJbml0OworCisgICAgSlNWYWx1ZSBp
bml0aWFsaXplclZhbHVlID0gZXhlYy0+YXJndW1lbnQoMSk7CisgICAgaWYgKCFpbml0aWFsaXpl
clZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAgICAgICAgLy8gR2l2ZW4gdGhlIGFib3Zl
IHRlc3QsIHRoaXMgd2lsbCBhbHdheXMgeWllbGQgYW4gb2JqZWN0LgorICAgICAgICBKU09iamVj
dCogaW5pdGlhbGl6ZXJPYmplY3QgPSBpbml0aWFsaXplclZhbHVlLnRvT2JqZWN0KGV4ZWMpOwor
CisgICAgICAgIC8vIENyZWF0ZSB0aGUgZGljdGlvbmFyeSB3cmFwcGVyIGZyb20gdGhlIGluaXRp
YWxpemVyIG9iamVjdC4KKyAgICAgICAgSlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnkoZXhlYywgaW5p
dGlhbGl6ZXJPYmplY3QpOworCisgICAgICAgIC8vIEF0dGVtcHQgdG8gZmlsbCBpbiB0aGUgRXZl
bnRJbml0LgorICAgICAgICBpZiAoIWZpbGxUZXN0RXZlbnRDb25zdHJ1Y3RvckluaXQoZXZlbnRJ
bml0LCBkaWN0aW9uYXJ5KSkKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNV
bmRlZmluZWQoKSk7CisgICAgfQorCisgICAgUmVmUHRyPFRlc3RFdmVudENvbnN0cnVjdG9yPiBl
dmVudCA9IFRlc3RFdmVudENvbnN0cnVjdG9yOjpjcmVhdGUoZXZlbnRUeXBlLCBldmVudEluaXQp
OworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodG9KUyhleGVjLCBqc0NvbnN0cnVjdG9yLT5n
bG9iYWxPYmplY3QoKSwgZXZlbnQuZ2V0KCkpKTsKK30KKworYm9vbCBmaWxsVGVzdEV2ZW50Q29u
c3RydWN0b3JJbml0KFRlc3RFdmVudENvbnN0cnVjdG9ySW5pdCYgZXZlbnRJbml0LCBKU0RpY3Rp
b25hcnkmIGRpY3Rpb25hcnkpCit7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIENvbnN0cnVjdFR5
cGUgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKEpT
Q2VsbCosIENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgY29uc3RydWN0RGF0
YS5uYXRpdmUuZnVuY3Rpb24gPSBjb25zdHJ1Y3RKU1Rlc3RFdmVudENvbnN0cnVjdG9yOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2
ZW50Q29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgKaW5kZXggYmI3OWJkMS4uOGY2YjY4YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50
Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCkBAIC0yOSw2ICsyOSw4IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAorY2xhc3MgSlNEaWN0aW9uYXJ5OworCiBjbGFzcyBKU1Rlc3RFdmVudENv
bnN0cnVjdG9yIDogcHVibGljIEpTRE9NV3JhcHBlciB7CiBwdWJsaWM6CiAgICAgdHlwZWRlZiBK
U0RPTVdyYXBwZXIgQmFzZTsKQEAgLTEzMCw2ICsxMzIsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgc3Rh
dGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlND
OjpDb25zdHJ1Y3REYXRhJik7CiB9OwogCitib29sIGZpbGxUZXN0RXZlbnRDb25zdHJ1Y3Rvcklu
aXQoVGVzdEV2ZW50Q29uc3RydWN0b3JJbml0JiwgSlNEaWN0aW9uYXJ5Jik7CisKIC8vIEF0dHJp
YnV0ZXMKIAogSlNDOjpKU1ZhbHVlIGpzVGVzdEV2ZW50Q29uc3RydWN0b3JBdHRyMShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgY29uc3QgSlNDOjpJZGVudGlmaWVyJik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2ZW50Q29uc3Ry
dWN0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RFdmVu
dENvbnN0cnVjdG9yLmlkbAppbmRleCA4ZDNiYWVlLi5jMDU3Y2E3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2ZW50Q29uc3RydWN0b3IuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRDb25z
dHJ1Y3Rvci5pZGwKQEAgLTMwLDcgKzMwLDcgQEAKIC8vIGNoYW5nZXMgaW4gaXRzIG91cHV0Lgog
bW9kdWxlIHRlc3QgewogICAgIGludGVyZmFjZSBbCi0gICAgICAgIEN1c3RvbUNvbnN0cnVjdG9y
PUV2ZW50CisgICAgICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKICAgICBdIFRlc3RFdmVu
dENvbnN0cnVjdG9yIHsKICAgICAgICAgLy8gQXR0cmlidXRlcwogICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGF0dHIxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3Iu
Y3BwCmluZGV4IGNlMjg5MjcuLjE0ZTJiMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudENvbnN0cnVjdG9yLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRDb25zdHJ1
Y3Rvci5jcHAKQEAgLTIxLDggKzIxLDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiVjhUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oIgogCisjaW5jbHVkZSAiT3B0aW9uc09iamVjdC5o
IgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJWOEJpbmRp
bmcuaCIKKyNpbmNsdWRlICJWOEJpbmRpbmdNYWNyb3MuaCIKICNpbmNsdWRlICJWOEJpbmRpbmdT
dGF0ZS5oIgogI2luY2x1ZGUgIlY4RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlY4SXNvbGF0ZWRD
b250ZXh0LmgiCkBAIC02MCw2ICs2MiwzOCBAQCBzdGF0aWMgY29uc3QgQmF0Y2hlZEF0dHJpYnV0
ZSBUZXN0RXZlbnRDb25zdHJ1Y3RvckF0dHJzW10gPSB7CiAgICAgeyJhdHRyMiIsIFRlc3RFdmVu
dENvbnN0cnVjdG9ySW50ZXJuYWw6OmF0dHIyQXR0ckdldHRlciwgMCwgMCAvKiBubyBkYXRhICov
LCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2Fz
dDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30s
CiB9OwogCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6Y29u
c3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIElOQ19T
VEFUUygiRE9NLlRlc3RFdmVudENvbnN0cnVjdG9yLkNvbnN0cnVjdG9yIik7CisKKyAgICBpZiAo
IWFyZ3MuSXNDb25zdHJ1Y3RDYWxsKCkpCisgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00g
b2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4iLCBWOFBy
b3h5OjpUeXBlRXJyb3IpOworCisgICAgaWYgKENvbnN0cnVjdG9yTW9kZTo6Y3VycmVudCgpID09
IENvbnN0cnVjdG9yTW9kZTo6V3JhcEV4aXN0aW5nT2JqZWN0KQorICAgICAgICByZXR1cm4gYXJn
cy5Ib2xkZXIoKTsKKworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJu
IHRocm93RXJyb3IoIk5vdCBlbm91Z2ggYXJndW1lbnRzIiwgVjhQcm94eTo6VHlwZUVycm9yKTsK
KworICAgIFNUUklOR19UT19WOFBBUkFNRVRFUl9FWENFUFRJT05fQkxPQ0soVjhQYXJhbWV0ZXI8
PiwgdHlwZSwgYXJnc1swXSk7CisgICAgVGVzdEV2ZW50Q29uc3RydWN0b3JJbml0IGV2ZW50SW5p
dDsKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA+PSAyKSB7CisgICAgICAgIEVYQ0VQVElPTl9CTE9D
SyhPcHRpb25zT2JqZWN0LCBvcHRpb25zLCBhcmdzWzFdKTsKKyAgICAgICAgaWYgKCFmaWxsVGVz
dEV2ZW50Q29uc3RydWN0b3JJbml0KGV2ZW50SW5pdCwgb3B0aW9ucykpCisgICAgICAgICAgICBy
ZXR1cm4gdjg6OlVuZGVmaW5lZCgpOworICAgIH0KKworICAgIFJlZlB0cjxUZXN0RXZlbnRDb25z
dHJ1Y3Rvcj4gZXZlbnQgPSBUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6Y3JlYXRlKHR5cGUsIGV2ZW50
SW5pdCk7CisKKyAgICBWOERPTVdyYXBwZXI6OnNldERPTVdyYXBwZXIoYXJncy5Ib2xkZXIoKSwg
JmluZm8sIGV2ZW50LmdldCgpKTsKKyAgICByZXR1cm4gdG9WOChldmVudC5yZWxlYXNlKCksIGFy
Z3MuSG9sZGVyKCkpOworfQorCitib29sIGZpbGxUZXN0RXZlbnRDb25zdHJ1Y3RvckluaXQoVGVz
dEV2ZW50Q29uc3RydWN0b3JJbml0JiBldmVudEluaXQsIGNvbnN0IE9wdGlvbnNPYmplY3QmIG9w
dGlvbnMpCit7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2
ODo6RnVuY3Rpb25UZW1wbGF0ZT4gQ29uZmlndXJlVjhUZXN0RXZlbnRDb25zdHJ1Y3RvclRlbXBs
YXRlKHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBkZXNjKQogewogICAgIGRl
c2MtPlJlYWRPbmx5UHJvdG90eXBlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuaApp
bmRleCBkYTFlNTExLi41MjBlMWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudENvbnN0cnVjdG9yLmgK
QEAgLTMwLDYgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBPcHRpb25z
T2JqZWN0OwogY2xhc3MgVjhUZXN0RXZlbnRDb25zdHJ1Y3RvciB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIGNvbnN0IGJvb2wgaGFzRGVwZW5kZW50TGlmZXRpbWUgPSBmYWxzZTsKQEAgLTc1LDYgKzc2
LDggQEAgaW5saW5lIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KFBhc3NSZWZQdHI8IFRlc3RF
dmVudENvbnN0cnVjdG9yID4gaW1wbCkKICAgICByZXR1cm4gdG9WOChpbXBsLmdldCgpKTsKIH0K
IAorYm9vbCBmaWxsVGVzdEV2ZW50Q29uc3RydWN0b3JJbml0KFRlc3RFdmVudENvbnN0cnVjdG9y
SW5pdCYsIGNvbnN0IE9wdGlvbnNPYmplY3QmKTsKKwogfQogCiAjZW5kaWYgLy8gVjhUZXN0RXZl
bnRDb25zdHJ1Y3Rvcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQmVmb3JlTG9h
ZEV2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9CZWZvcmVMb2FkRXZlbnQuaWRsCmluZGV4
IDY1Nzc4NWYuLjQ2MDBlODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9CZWZvcmVM
b2FkRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9CZWZvcmVMb2FkRXZlbnQuaWRs
CkBAIC0yNyw4ICsyNyw3IEBACiBtb2R1bGUgZXZlbnRzIHsKIAogICAgIGludGVyZmFjZSBbCi0g
ICAgICAgIFY4Q29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudCwKLSAgICAgICAgSlNDdXN0b21Db25z
dHJ1Y3RvcgorICAgICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50CiAgICAgXSBCZWZvcmVM
b2FkRXZlbnQgOiBFdmVudCB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6
ZWRCeUNvbnN0cnVjdG9yXSBET01TdHJpbmcgdXJsOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vQ3VzdG9tRXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0N1c3Rv
bUV2ZW50LmlkbAppbmRleCAyNTJiNmMyLi4zYmUzOTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vQ3VzdG9tRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DdXN0b21F
dmVudC5pZGwKQEAgLTI4LDggKzI4LDcgQEAgbW9kdWxlIGV2ZW50cyB7CiAjaWYgIWRlZmluZWQo
TEFOR1VBR0VfQ1BQKSB8fCAhTEFOR1VBR0VfQ1BQCiAgICAgLy8gSW50cm9kdWNlZCBpbiBET00g
TGV2ZWwgMzoKICAgICBpbnRlcmZhY2UgWwotICAgICAgICBWOENvbnN0cnVjdG9yVGVtcGxhdGU9
RXZlbnQsCi0gICAgICAgIEpTQ3VzdG9tQ29uc3RydWN0b3IKKyAgICAgICAgQ29uc3RydWN0b3JU
ZW1wbGF0ZT1FdmVudAogICAgIF0gQ3VzdG9tRXZlbnQgOiBFdmVudCB7CiAgICAgICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSBET01PYmplY3QgZGV0YWls
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwKaW5kZXggNzcwYjkzZS4uNmQzZGM2YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Vycm9yRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FcnJvckV2ZW50LmlkbApAQCAtMzIsOCArMzIsNyBAQCBtb2R1bGUgZXZlbnRz
IHsKIAogICAgIGludGVyZmFjZSBbCiAgICAgICAgIE5vU3RhdGljVGFibGVzLAotICAgICAgICBW
OENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQsCi0gICAgICAgIEpTQ3VzdG9tQ29uc3RydWN0b3IK
KyAgICAgICAgQ29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudAogICAgIF0gRXJyb3JFdmVudCA6IEV2
ZW50IHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtJbml0aWFsaXplZEJ5Q29uc3RydWN0
b3JdIERPTVN0cmluZyBtZXNzYWdlOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0luaXRp
YWxpemVkQnlDb25zdHJ1Y3Rvcl0gRE9NU3RyaW5nIGZpbGVuYW1lOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudC5pZGwK
aW5kZXggMGZiNThlMi4uODBiMmYzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCkBAIC0yMyw4ICsyMyw3
IEBAIG1vZHVsZSBldmVudHMgewogICAgIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVsIDI6CiAg
ICAgaW50ZXJmYWNlIFsKICAgICAgICAgQ3VzdG9tVG9KUywKLSAgICAgICAgVjhDb25zdHJ1Y3Rv
clRlbXBsYXRlPUV2ZW50LAotICAgICAgICBKU0N1c3RvbUNvbnN0cnVjdG9yLAorICAgICAgICBD
b25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAogICAgICAgICBOb1N0YXRpY1RhYmxlcywKICAgICAg
ICAgUG9seW1vcnBoaWMKICAgICBdIEV2ZW50IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VF
dmVudC5pZGwKaW5kZXggYjQ5MjRmMi4uNTYxYjYwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0hhc2hD
aGFuZ2VFdmVudC5pZGwKQEAgLTIxLDggKzIxLDcgQEAgbW9kdWxlIGV2ZW50cyB7CiAKICAgICAv
LyBJbnRyb2R1Y2VkIGluIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJy
ZW50LXdvcmsvbXVsdGlwYWdlL2hpc3RvcnkuaHRtbCNldmVudC1oYXNoY2hhbmdlCiAgICAgaW50
ZXJmYWNlIFsKLSAgICAgICAgVjhDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAotICAgICAgICBK
U0N1c3RvbUNvbnN0cnVjdG9yCisgICAgICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKICAg
ICBdIEhhc2hDaGFuZ2VFdmVudCA6IEV2ZW50IHsKICAgICAgICAgdm9pZCBpbml0SGFzaENoYW5n
ZUV2ZW50KGluIFtPcHRpb25hbD1DYWxsV2l0aERlZmF1bHRWYWx1ZV0gRE9NU3RyaW5nIHR5cGUs
IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gW09wdGlvbmFsPUNhbGxXaXRo
RGVmYXVsdFZhbHVlXSBib29sZWFuIGNhbkJ1YmJsZSwgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vTWVzc2FnZUV2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlRXZl
bnQuaWRsCmluZGV4IDAyZmI5NTMuLjZkMzI0ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9NZXNzYWdlRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlRXZl
bnQuaWRsCkBAIC0yOSw4ICsyOSw3IEBAIG1vZHVsZSBldmVudHMgewogCiAgICAgaW50ZXJmYWNl
IFsKICAgICAgICAgTm9TdGF0aWNUYWJsZXMsCi0gICAgICAgIFY4Q29uc3RydWN0b3JUZW1wbGF0
ZT1FdmVudCwKLSAgICAgICAgSlNDdXN0b21Db25zdHJ1Y3RvcgorICAgICAgICBDb25zdHJ1Y3Rv
clRlbXBsYXRlPUV2ZW50CiAgICAgXSBNZXNzYWdlRXZlbnQgOiBFdmVudCB7CiAgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSBET01TdHJpbmcgb3Jp
Z2luOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0luaXRpYWxpemVkQnlDb25zdHJ1Y3Rv
cl0gRE9NU3RyaW5nIGxhc3RFdmVudElkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L092ZXJmbG93RXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL092ZXJmbG93RXZlbnQuaWRs
CmluZGV4IDU0OWYxMzguLmI0M2I1MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9P
dmVyZmxvd0V2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vT3ZlcmZsb3dFdmVudC5p
ZGwKQEAgLTI2LDggKzI2LDcgQEAKIG1vZHVsZSBldmVudHMgewogCiAgICAgaW50ZXJmYWNlIFsK
LSAgICAgICAgVjhDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAotICAgICAgICBKU0N1c3RvbUNv
bnN0cnVjdG9yCisgICAgICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKICAgICBdIE92ZXJm
bG93RXZlbnQgOiBFdmVudCB7CiAgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IEhPUklaT05U
QUwgPSAwOwogICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBWRVJUSUNBTCAgID0gMTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9QYWdlVHJhbnNpdGlvbkV2ZW50LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9QYWdlVHJhbnNpdGlvbkV2ZW50LmlkbAppbmRleCBkYjQ0YjJkLi4z
NzM0ZGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUGFnZVRyYW5zaXRpb25FdmVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1BhZ2VUcmFuc2l0aW9uRXZlbnQuaWRsCkBA
IC0yNiw4ICsyNiw3IEBACiBtb2R1bGUgZXZlbnRzIHsKIAogICAgIGludGVyZmFjZSBbCi0gICAg
ICAgIFY4Q29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudCwKLSAgICAgICAgSlNDdXN0b21Db25zdHJ1
Y3RvcgorICAgICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50CiAgICAgXSBQYWdlVHJhbnNp
dGlvbkV2ZW50IDogRXZlbnQgewogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0luaXRpYWxp
emVkQnlDb25zdHJ1Y3Rvcl0gYm9vbGVhbiBwZXJzaXN0ZWQ7CiAgICAgfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3BTdGF0ZUV2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Qb3BTdGF0ZUV2ZW50LmlkbAppbmRleCA3MmUxMzJkLi41OGFkOTUyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vUG9wU3RhdGVFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1BvcFN0YXRlRXZlbnQuaWRsCkBAIC0yOCw4ICsyOCw3IEBAIG1vZHVsZSBldmVudHMgewog
CiAjaWYgIWRlZmluZWQoTEFOR1VBR0VfQ1BQKSB8fCAhTEFOR1VBR0VfQ1BQCiAgICAgaW50ZXJm
YWNlIFsKLSAgICAgICAgVjhDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAotICAgICAgICBKU0N1
c3RvbUNvbnN0cnVjdG9yCisgICAgICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKICAgICBd
IFBvcFN0YXRlRXZlbnQgOiBFdmVudCB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5p
dGlhbGl6ZWRCeUNvbnN0cnVjdG9yLCBDdXN0b21HZXR0ZXJdIERPTU9iamVjdCBzdGF0ZTsKICAg
ICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Byb2dyZXNzRXZlbnQuaWRsIGIv
U291cmNlL1dlYkNvcmUvZG9tL1Byb2dyZXNzRXZlbnQuaWRsCmluZGV4IGQ4OWVjMjQuLjY5MzNk
ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9ncmVzc0V2ZW50LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvZ3Jlc3NFdmVudC5pZGwKQEAgLTI2LDggKzI2LDcgQEAK
IG1vZHVsZSBldmVudHMgewogCiAgICAgaW50ZXJmYWNlIFsKLSAgICAgICAgVjhDb25zdHJ1Y3Rv
clRlbXBsYXRlPUV2ZW50LAotICAgICAgICBKU0N1c3RvbUNvbnN0cnVjdG9yCisgICAgICAgIENv
bnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKICAgICBdIFByb2dyZXNzRXZlbnQgOiBFdmVudCB7CiAg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSBib29s
ZWFuIGxlbmd0aENvbXB1dGFibGU7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlh
bGl6ZWRCeUNvbnN0cnVjdG9yXSB1bnNpZ25lZCBsb25nIGxvbmcgbG9hZGVkOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1dlYktpdEFuaW1hdGlvbkV2ZW50LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9XZWJLaXRBbmltYXRpb25FdmVudC5pZGwKaW5kZXggYzE0NTgwZi4uMzQ2YmY3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1dlYktpdEFuaW1hdGlvbkV2ZW50Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vV2ViS2l0QW5pbWF0aW9uRXZlbnQuaWRsCkBAIC0y
Niw4ICsyNiw3IEBACiBtb2R1bGUgZXZlbnRzIHsKIAogICAgIGludGVyZmFjZSBbCi0gICAgICAg
IFY4Q29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudCwKLSAgICAgICAgSlNDdXN0b21Db25zdHJ1Y3Rv
cgorICAgICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50CiAgICAgXSBXZWJLaXRBbmltYXRp
b25FdmVudCA6IEV2ZW50IHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtJbml0aWFsaXpl
ZEJ5Q29uc3RydWN0b3JdIERPTVN0cmluZyBhbmltYXRpb25OYW1lOwogICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgW0luaXRpYWxpemVkQnlDb25zdHJ1Y3Rvcl0gZG91YmxlIGVsYXBzZWRUaW1l
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1dlYktpdFRyYW5zaXRpb25FdmVudC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmlkbAppbmRleCAx
OWYyNzQxLi5hYjlhNDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vV2ViS2l0VHJh
bnNpdGlvbkV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vV2ViS2l0VHJhbnNpdGlv
bkV2ZW50LmlkbApAQCAtMjYsOCArMjYsNyBAQAogbW9kdWxlIGV2ZW50cyB7CiAKICAgICBpbnRl
cmZhY2UgWwotICAgICAgICBWOENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQsCi0gICAgICAgIEpT
Q3VzdG9tQ29uc3RydWN0b3IKKyAgICAgICAgQ29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudAogICAg
IF0gV2ViS2l0VHJhbnNpdGlvbkV2ZW50IDogRXZlbnQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSBET01TdHJpbmcgcHJvcGVydHlOYW1lOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSBkb3VibGUgZWxh
cHNlZFRpbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrRXZl
bnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0V2ZW50LmlkbAppbmRleCAx
ZmUwYTMxLi41ZDI4ZjNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1Ry
YWNrRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tFdmVudC5p
ZGwKQEAgLTI4LDggKzI4LDcgQEAgbW9kdWxlIGh0bWwgewogICAgIGludGVyZmFjZSBbCiAgICAg
ICAgIENvbmRpdGlvbmFsPVZJREVPX1RSQUNLLAogICAgICAgICBFbmFibGVkQXRSdW50aW1lPXdl
YmtpdFZpZGVvVHJhY2ssCi0gICAgICAgIFY4Q29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudCwKLSAg
ICAgICAgSlNDdXN0b21Db25zdHJ1Y3RvcgorICAgICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2
ZW50CiAgICAgXSBUcmFja0V2ZW50IDogRXZlbnQgewogICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgW0luaXRpYWxpemVkQnlDb25zdHJ1Y3RvciwgQ3VzdG9tR2V0dGVyXSBvYmplY3QgdHJhY2s7
CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvQ2xvc2VFdmVu
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsCmluZGV4IDJi
MjUzMmIuLmRiNzg1NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvQ2xv
c2VFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0cy9DbG9zZUV2ZW50Lmlk
bApAQCAtMzIsOCArMzIsNyBAQCBtb2R1bGUgZXZlbnRzIHsKIAogICAgIGludGVyZmFjZSBbCiAg
ICAgICAgIE5vU3RhdGljVGFibGVzLAotICAgICAgICBWOENvbnN0cnVjdG9yVGVtcGxhdGU9RXZl
bnQsCi0gICAgICAgIEpTQ3VzdG9tQ29uc3RydWN0b3IKKyAgICAgICAgQ29uc3RydWN0b3JUZW1w
bGF0ZT1FdmVudAogICAgIF0gQ2xvc2VFdmVudCA6IEV2ZW50IHsKICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIFtJbml0aWFsaXplZEJ5Q29uc3RydWN0b3JdIGJvb2xlYW4gd2FzQ2xlYW47CiAg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbSW5pdGlhbGl6ZWRCeUNvbnN0cnVjdG9yXSB1bnNp
Z25lZCBzaG9ydCBjb2RlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>