<?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>124693</bug_id>
          
          <creation_ts>2013-11-20 17:41:58 -0800</creation_ts>
          <short_desc>Add more infrastructure for ServerConnection communication between Web and Database processes</short_desc>
          <delta_ts>2013-11-20 23:02:10 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>124521</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>952886</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-20 17:41:58 -0800</bug_when>
    <thetext>Add infrastructure for ServerConnection communication between Web and Database processes

This includes one callback from the database -&gt; web process, even though it&apos;s a dummy callback for now.

This is support for https://bugs.webkit.org/show_bug.cgi?id=124521</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952890</commentid>
    <comment_count>1</comment_count>
      <attachid>217507</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-20 17:47:46 -0800</bug_when>
    <thetext>Created attachment 217507
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952941</commentid>
    <comment_count>2</comment_count>
      <attachid>217507</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-11-20 22:19:04 -0800</bug_when>
    <thetext>Comment on attachment 217507
Patch v1

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

&gt; Source/WebKit2/DatabaseProcess/DatabaseToWebProcessConnection.messages.in:29
&gt;      # Creates a connection for communication with a WebProcess
&gt; -    EstablishIDBConnection(uint64_t serverConnectionIdentifier)
&gt; +  EstablishIDBConnection(uint64_t serverConnectionIdentifier)
&gt; +  RemoveDatabaseProcessIDBConnection(uint64_t serverConnectionIdentifier)

Weird indentation here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952949</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-20 23:02:10 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/159611</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217507</attachid>
            <date>2013-11-20 17:47:46 -0800</date>
            <delta_ts>2013-11-20 22:19:04 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>31990</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2YjVhN2Q5Li45NTgzZmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTMtMTEtMjAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBtb3JlIGluZnJhc3RydWN0dXJlIGZvciBTZXJ2ZXJDb25uZWN0aW9uIGNvbW11bmlj
YXRpb24gYmV0d2VlbiBXZWIgYW5kIERhdGFiYXNlIHByb2Nlc3NlcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0NjkzCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKwogMjAx
My0xMS0yMCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBDbGVh
ciBUZW1wbGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50OjptX2hvc3Qgd2hlbiBIVE1MVGVtcGxh
dGVFbGVtZW50IGlzIGRlc3Ryb3llZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA1Y2FhNDI2Li4w
ZWFhMGU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMjg5Nyw2ICsyODk3LDggQEAgX19aTjdX
ZWJDb3JlMjZNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTE5cmVnaXN0ZXJNZWRpYUVuZ2luZUVQ
RnZQRk4zV1RGMTBQYXNzT3cKICNlbmRpZgogCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CitfX1pON1dlYkNvcmUxMElEQktleVBhdGhDMUVSS04zV1RGNlN0cmluZ0UKK19fWk43V2ViQ29y
ZTEwSURCS2V5UGF0aEMxRVJLTjNXVEY2VmVjdG9ySU5TMV82U3RyaW5nRUxtMEVOUzFfMTVDcmFz
aE9uT3ZlcmZsb3dFRUUKIF9fWk43V2ViQ29yZTE4SURCRGF0YWJhc2VCYWNrZW5kMTRvcGVuQ29u
bmVjdGlvbkVOM1dURjEwUGFzc1JlZlB0cklOU18xMklEQkNhbGxiYWNrc0VFRU5TMl9JTlNfMjBJ
REJEYXRhYmFzZUNhbGxiYWNrc0VFRXh5CiBfX1pON1dlYkNvcmUxOElEQkRhdGFiYXNlQmFja2Vu
ZDZjcmVhdGVFUktOM1dURjZTdHJpbmdFUzRfUE5TXzI2SURCRmFjdG9yeUJhY2tlbmRJbnRlcmZh
Y2VFUk5TXzE5SURCU2VydmVyQ29ubmVjdGlvbkUKIF9fWk43V2ViQ29yZTE4SURCRGF0YWJhc2VC
YWNrZW5kRDFFdgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDY4MTU2ZjEuLjNiY2ViMTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAg
LTEsNSArMSw1MiBAQAogMjAxMy0xMS0yMCAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5j
b20+CiAKKyAgICAgICAgQWRkIG1vcmUgaW5mcmFzdHJ1Y3R1cmUgZm9yIFNlcnZlckNvbm5lY3Rp
b24gY29tbXVuaWNhdGlvbiBiZXR3ZWVuIFdlYiBhbmQgRGF0YWJhc2UgcHJvY2Vzc2VzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjQ2OTMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIERhdGFiYXNlUHJv
Y2Vzcy9EYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0
OjpEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb246OmVzdGFibGlzaElEQkNvbm5lY3Rpb24p
OgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb246OnJlbW92
ZURhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24pOiBBZGRlZCBmb3IgV2ViUHJvY2VzcyB0byBi
ZSBhYmxlCisgICAgICAgICAgdG8gaW52YWxpZGF0ZSB0aGUgRGF0YWJhc2VQcm9jZXNzIHNpZGUg
b2YgYSBzZXJ2ZXIgY29ubmVjdGlvbi4KKyAgICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvRGF0YWJh
c2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmg6CisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0Rh
dGFiYXNlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKworICAgICAgICAqIERh
dGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OkRhdGFiYXNl
UHJvY2Vzc0lEQkNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3NJ
REJDb25uZWN0aW9uOjpkaXNjb25uZWN0ZWRGcm9tV2ViUHJvY2Vzcyk6IEFkZGVkIGZvciBmdXR1
cmUgY2xlYW51cC4KKyAgICAgICAgKFdlYktpdDo6RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlv
bjo6ZXN0YWJsaXNoQ29ubmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vz
c0lEQkNvbm5lY3Rpb246OmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSk6IENhbGxi
YWNrIHRvIHRoZSBXZWJQcm9jZXNzLCBldmVuIGlmCisgICAgICAgICAgaXQgaXMganVzdCBkdW1t
eSBkYXRhIGZvciBub3cuCisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRh
YmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmg6CisgICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJv
Y2Vzc0lEQkNvbm5lY3Rpb246OmNyZWF0ZSk6CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFi
YXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQlNlcnZlckNvbm5lY3Rpb246OmNyZWF0ZSk6IFJlZ2lzdGVyIHRoZSBuZXcgb2Jq
ZWN0IHdpdGggdGhlIFdlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbi4KKyAgICAgICAgKFdl
YktpdDo6V2ViSURCU2VydmVyQ29ubmVjdGlvbjo6fldlYklEQlNlcnZlckNvbm5lY3Rpb24pOiBS
ZW1vdmUgZnJvbSB0aGUgV2ViVG9EYXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uLgorICAgICAgICAo
V2ViS2l0OjpXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpnZXRPckVzdGFibGlzaElEQkRhdGFiYXNl
TWV0YWRhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpkaWRH
ZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEpOiBDYWxsYmFjayBmcm9tIHRoZSBEYXRh
YmFzZVByb2Nlc3MsCisgICAgICAgICAgYSBuby1vcCBmb3Igbm93LgorICAgICAgICAqIFdlYlBy
b2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmg6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vz
cy9EYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4uCisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZFJl
Y2VpdmVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVG9EYXRhYmFzZVByb2Nlc3NDb25u
ZWN0aW9uOjpkaWRDbG9zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlRvRGF0YWJhc2VQcm9jZXNz
Q29ubmVjdGlvbjo6cmVnaXN0ZXJXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKTogSG9sZCBhIGNvbGxl
Y3Rpb24gb2YgYWxsCisgICAgICAgICAgc2VydmVyIGNvbm5lY3Rpb25zIGZvciBtZXNzYWdpbmcu
CisgICAgICAgIChXZWJLaXQ6OldlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbjo6cmVtb3Zl
V2ViSURCU2VydmVyQ29ubmVjdGlvbik6IFJlbW92ZSBhIGNvbm5lY3Rpb24gZnJvbSB0aGUgY29s
bGVjdGlvbiwKKyAgICAgICAgICBhbmQgYWxzbyBtZXNzYWdlIHRoZSBEYXRhYmFzZVByb2Nlc3Mg
dGhhdCBpdOKAmXMgZ29uZSBhd2F5LgorICAgICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL1dl
YlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbi5oOgorCisgICAgICAgIFByb2plY3QgZmlsZXMs
IGV0YyBldGM6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdDIvbWVzc2FnZXMucHk6CisgICAgICAgIChzdHJ1Y3Rfb3JfY2xhc3MpOgorICAg
ICAgICAqIFdlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworMjAxMy0xMS0yMCAg
QnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgSURCIHJlbGF0ZWQg
Y2xlYW51cCBpbiBXZWJLaXQyCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjQ2OTEKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQ
cm9jZXNzL0RhdGFiYXNlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRl
eCBjYzU2MzZlLi4yODc3M2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVBy
b2Nlc3MvRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcApA
QCAtODEsMTAgKzgxLDE5IEBAIHZvaWQgRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uOjpk
aWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvCiAKIHZvaWQgRGF0YWJh
c2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uOjplc3RhYmxpc2hJREJDb25uZWN0aW9uKHVpbnQ2NF90
IHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKQogewotICAgIFJlZlB0cjxEYXRhYmFzZVByb2Nl
c3NJREJDb25uZWN0aW9uPiBjb25uZWN0aW9uID0gRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlv
bjo6Y3JlYXRlKHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKTsKLSAgICBtX2lkYkNvbm5lY3Rp
b25zLnNldChzZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgY29ubmVjdGlvbi5yZWxlYXNlKCkp
OworICAgIFJlZlB0cjxEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uPiBpZGJDb25uZWN0aW9u
ID0gRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6Y3JlYXRlKCp0aGlzLCBzZXJ2ZXJDb25u
ZWN0aW9uSWRlbnRpZmllcik7CisgICAgbV9pZGJDb25uZWN0aW9ucy5zZXQoc2VydmVyQ29ubmVj
dGlvbklkZW50aWZpZXIsIGlkYkNvbm5lY3Rpb24ucmVsZWFzZSgpKTsKIH0KIAordm9pZCBEYXRh
YmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb246OnJlbW92ZURhdGFiYXNlUHJvY2Vzc0lEQkNvbm5l
Y3Rpb24odWludDY0X3Qgc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpCit7CisgICAgQVNTRVJU
KG1faWRiQ29ubmVjdGlvbnMuY29udGFpbnMoc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpKTsK
KworICAgIFJlZlB0cjxEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uPiBpZGJDb25uZWN0aW9u
ID0gbV9pZGJDb25uZWN0aW9ucy50YWtlKHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKTsKKyAg
ICBpZGJDb25uZWN0aW9uLT5kaXNjb25uZWN0ZWRGcm9tV2ViUHJvY2VzcygpOworfQorCisKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKERBVEFCQVNFX1BST0NFU1Mp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VUb1dl
YlByb2Nlc3NDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0
YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmgKaW5kZXggY2E1N2VlNi4uMGI5YTk3ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0RhdGFiYXNlVG9XZWJQcm9j
ZXNzQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9EYXRh
YmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uaApAQCAtNjAsNiArNjAsNyBAQCBwcml2YXRlOgog
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIC8vIE1lc3NhZ2VzIGhhbmRsZXJzCiAg
ICAgdm9pZCBlc3RhYmxpc2hJREJDb25uZWN0aW9uKHVpbnQ2NF90IHNlcnZlckNvbm5lY3Rpb25J
ZGVudGlmaWVyKTsKKyAgICB2b2lkIHJlbW92ZURhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24o
dWludDY0X3Qgc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpOwogCiAgICAgdHlwZWRlZiBIYXNo
TWFwPHVpbnQ2NF90LCBSZWZQdHI8RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbj4+IElEQkNv
bm5lY3Rpb25NYXA7CiAgICAgSURCQ29ubmVjdGlvbk1hcCBtX2lkYkNvbm5lY3Rpb25zOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0RhdGFiYXNlVG9XZWJQcm9j
ZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vz
cy9EYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4KaW5kZXggYmExNGEz
NC4uNTI5NzUwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0Rh
dGFiYXNlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLm1lc3Nh
Z2VzLmluCkBAIC0yNSw3ICsyNSw4IEBACiBtZXNzYWdlcyAtPiBEYXRhYmFzZVRvV2ViUHJvY2Vz
c0Nvbm5lY3Rpb24gTGVnYWN5UmVjZWl2ZXIgewogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQogICAgICMgQ3JlYXRlcyBhIGNvbm5lY3Rpb24gZm9yIGNvbW11bmljYXRpb24gd2l0aCBhIFdl
YlByb2Nlc3MKLSAgICBFc3RhYmxpc2hJREJDb25uZWN0aW9uKHVpbnQ2NF90IHNlcnZlckNvbm5l
Y3Rpb25JZGVudGlmaWVyKQorICBFc3RhYmxpc2hJREJDb25uZWN0aW9uKHVpbnQ2NF90IHNlcnZl
ckNvbm5lY3Rpb25JZGVudGlmaWVyKQorICBSZW1vdmVEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0
aW9uKHVpbnQ2NF90IHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKQogI2VuZGlmCiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJh
c2VQcm9jZXNzSURCQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nl
c3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uY3BwCmluZGV4IGI0NTNi
ZmUuLjhjNGM4OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9J
bmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0
aW9uLmNwcApAQCAtMjYsMTQgKzI2LDIwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5oIgogCisjaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpICYmIEVOQUJMRShEQVRBQkFTRV9QUk9DRVNTKQorCiAjaW5jbHVkZSAiRGF0YWJh
c2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmgiCisjaW5jbHVkZSAiV2ViSURCU2VydmVyQ29ubmVjdGlvbk1lc3NhZ2VzLmgiCisjaW5j
bHVkZSA8V2ViQ29yZS9JREJEYXRhYmFzZU1ldGFkYXRhLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkgJiYgRU5BQkxFKERBVEFCQVNFX1BST0NFU1MpCit1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLURhdGFiYXNlUHJvY2Vzc0lEQkNvbm5l
Y3Rpb246OkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24odWludDY0X3Qgc2VydmVyQ29ubmVj
dGlvbklkZW50aWZpZXIpCi0gICAgOiBtX3NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKHNlcnZl
ckNvbm5lY3Rpb25JZGVudGlmaWVyKQorRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6RGF0
YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbihEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24m
IGNvbm5lY3Rpb24sIHVpbnQ2NF90IHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKQorICAgIDog
bV9jb25uZWN0aW9uKGNvbm5lY3Rpb24pCisgICAgLCBtX3NlcnZlckNvbm5lY3Rpb25JZGVudGlm
aWVyKHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKQogewogfQogCkBAIC00MSwxNiArNDcsMzAg
QEAgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6fkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5l
Y3Rpb24oKQogewogfQogCit2b2lkIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OmRpc2Nv
bm5lY3RlZEZyb21XZWJQcm9jZXNzKCkKK3sKKyAgICAvLyBEbyBhbnkgbmVjZXNzYXJ5IGNsZWFu
dXAgd29yayBoZXJlLgorfQorCiB2b2lkIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OmVz
dGFibGlzaENvbm5lY3Rpb24oY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luRGF0YSYgb3BlbmluZ09yaWdpbiwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBt
YWluRnJhbWVPcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgbWV0aG9kIGlzIHN1Y2Nlc3Nm
dWxseSBjYWxsZWQgYnkgbWVzc2FnaW5nIGZyb20gdGhlIFdlYlByb2Nlc3MuCi0gICAgLy8gTm93
IGltcGxlbWVudCBpdC4KKyAgICAvLyBUaGlzIG1ldGhvZCBzaG91bGQgb25seSBiZSBjYWxsZWQg
b25jZSwgc28gdGhlIHN0b3JlZCBkYXRhYmFzZSBuYW1lIHNob3VsZCBzdGlsbCBiZSBudWxsLgor
ICAgIC8vIEFsc28sIGl0IGlzIGludmFsaWQgdG8gc2V0IHRoZSBzdG9yZWQgZGF0YWJhc2UgbmFt
ZSB0byB0aGUgbnVsbCBzdHJpbmcuCisgICAgQVNTRVJUKG1fZGF0YWJhc2VOYW1lLmlzTnVsbCgp
KTsKKyAgICBBU1NFUlQoIWRhdGFiYXNlTmFtZS5pc051bGwoKSk7CisKKyAgICBtX2RhdGFiYXNl
TmFtZSA9IGRhdGFiYXNlTmFtZTsKKyAgICBtX29wZW5pbmdPcmlnaW4gPSBvcGVuaW5nT3JpZ2lu
OworICAgIG1fbWFpbkZyYW1lT3JpZ2luID0gbWFpbkZyYW1lT3JpZ2luOwogfQogCiB2b2lkIERh
dGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRh
ZGF0YSgpCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgbWV0aG9kIGlzIHN1Y2Nlc3NmdWxseSBjYWxs
ZWQgYnkgbWVzc2FnaW5nIGZyb20gdGhlIFdlYlByb2Nlc3MuCi0gICAgLy8gTm93IGltcGxlbWVu
dCBpdC4KKyAgICAvLyBGSVhNRTogVGhpcyBtZXRob2QgaXMgc3VjY2Vzc2Z1bGx5IGNhbGxlZCBi
eSBtZXNzYWdpbmcgZnJvbSB0aGUgV2ViUHJvY2VzcywgYW5kIGNhbGxzIGJhY2sgd2l0aCBkdW1t
eSBkYXRhLgorICAgIC8vIE5lZWRzIHJlYWwgaW1wbGVtZW50YXRpb24uCisKKyAgICBJREJEYXRh
YmFzZU1ldGFkYXRhIGRhdGE7CisgICAgc2VuZChNZXNzYWdlczo6V2ViSURCU2VydmVyQ29ubmVj
dGlvbjo6RGlkR2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKGZhbHNlLCBkYXRhKSk7
CiB9CiAKIENvcmVJUEM6OkNvbm5lY3Rpb24qIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246
Om1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0Rh
dGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5oIGIv
U291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJ
REJDb25uZWN0aW9uLmgKaW5kZXggMWNiZThjNC4uYWQxZDMwYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25u
ZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9E
YXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmgKQEAgLTMwLDE3ICszMCwxOCBAQAogCiAjaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpICYmIEVOQUJMRShEQVRBQkFTRV9QUk9DRVNTKQogCisj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW5EYXRhLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBEYXRhYmFzZVRvV2ViUHJvY2Vz
c0Nvbm5lY3Rpb247CiAKLXN0cnVjdCBTZWN1cml0eU9yaWdpbkRhdGE7Ci0KIGNsYXNzIERhdGFi
YXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhYmFzZVByb2Nl
c3NJREJDb25uZWN0aW9uPiwgcHVibGljIENvcmVJUEM6Ok1lc3NhZ2VTZW5kZXIgewogcHVibGlj
OgotICAgIHN0YXRpYyBSZWZQdHI8RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbj4gY3JlYXRl
KHVpbnQ2NF90IHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKQorICAgIHN0YXRpYyBSZWZQdHI8
RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbj4gY3JlYXRlKERhdGFiYXNlVG9XZWJQcm9jZXNz
Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgdWludDY0X3Qgc2VydmVyQ29ubmVjdGlvbklkZW50aWZp
ZXIpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERhdGFiYXNlUHJvY2Vzc0lE
QkNvbm5lY3Rpb24oc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpKTsKKyAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uKGNvbm5lY3Rpb24sIHNl
cnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKSk7CiAgICAgfQogCiAgICAgdmlydHVhbCB+RGF0YWJh
c2VQcm9jZXNzSURCQ29ubmVjdGlvbigpOwpAQCAtNDgsOCArNDksMTAgQEAgcHVibGljOgogICAg
IC8vIE1lc3NhZ2UgaGFuZGxlcnMuCiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YWJhc2VQcm9jZXNz
SURCQ29ubmVjdGlvbk1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3Nh
Z2VEZWNvZGVyJik7CiAKKyAgICB2b2lkIGRpc2Nvbm5lY3RlZEZyb21XZWJQcm9jZXNzKCk7CisK
IHByaXZhdGU6Ci0gICAgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbih1aW50NjRfdCBzZXJ2
ZXJDb25uZWN0aW9uSWRlbnRpZmllcik7CisgICAgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlv
bihEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24mLCB1aW50NjRfdCBpZGJDb25uZWN0aW9u
SWRlbnRpZmllcik7CiAKICAgICAvLyBDb3JlSVBDOjpNZXNzYWdlU2VuZGVyCiAgICAgdmlydHVh
bCBDb3JlSVBDOjpDb25uZWN0aW9uKiBtZXNzYWdlU2VuZGVyQ29ubmVjdGlvbigpIE9WRVJSSURF
OwpAQCAtNTksOCArNjIsMTIgQEAgcHJpdmF0ZToKICAgICB2b2lkIGVzdGFibGlzaENvbm5lY3Rp
b24oY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYg
b3BlbmluZ09yaWdpbiwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBtYWluRnJhbWVPcmlnaW4p
OwogICAgIHZvaWQgZ2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKCk7CiAKLSAgICBS
ZWZQdHI8RGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247CisgICAg
UmVmPERhdGFiYXNlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwogICAgIHVp
bnQ2NF90IG1fc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXI7CisKKyAgICBTdHJpbmcgbV9kYXRh
YmFzZU5hbWU7CisgICAgU2VjdXJpdHlPcmlnaW5EYXRhIG1fb3BlbmluZ09yaWdpbjsKKyAgICBT
ZWN1cml0eU9yaWdpbkRhdGEgbV9tYWluRnJhbWVPcmlnaW47CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0Rlcml2ZWRTb3VyY2VzLm1ha2Ug
Yi9Tb3VyY2UvV2ViS2l0Mi9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDc1ZTkxMTYuLjI4OTJj
ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIv
U291cmNlL1dlYktpdDIvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMzUsNiArMzUsNyBAQCBWUEFU
SCA9IFwKICAgICAkKFdlYktpdDIpL1NoYXJlZC9OZXR3b3JrL0N1c3RvbVByb3RvY29scyBcCiAg
ICAgJChXZWJLaXQyKS9XZWJQcm9jZXNzL0FwcGxpY2F0aW9uQ2FjaGUgXAogICAgICQoV2ViS2l0
MikvV2ViUHJvY2Vzcy9Db29raWVzIFwKKyAgICAkKFdlYktpdDIpL1dlYlByb2Nlc3MvRGF0YWJh
c2VzL0luZGV4ZWREQiBcCiAgICAgJChXZWJLaXQyKS9XZWJQcm9jZXNzL0Z1bGxTY3JlZW4gXAog
ICAgICQoV2ViS2l0MikvV2ViUHJvY2Vzcy9HZW9sb2NhdGlvbiBcCiAgICAgJChXZWJLaXQyKS9X
ZWJQcm9jZXNzL0ljb25EYXRhYmFzZSBcCkBAIC02NywzOSArNjgsNDAgQEAgTUVTU0FHRV9SRUNF
SVZFUlMgPSBcCiAgICAgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbiBcCiAgICAgRGF0YWJh
c2VQcm9jZXNzUHJveHkgXAogICAgIERhdGFiYXNlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbiBcCisg
ICAgRG93bmxvYWRQcm94eSBcCiAgICAgRHJhd2luZ0FyZWEgXAogICAgIERyYXdpbmdBcmVhUHJv
eHkgXAotICAgIERvd25sb2FkUHJveHkgXAogICAgIEV2ZW50RGlzcGF0Y2hlciBcCisgICAgTlBP
YmplY3RNZXNzYWdlUmVjZWl2ZXIgXAorICAgIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
IFwKICAgICBOZXR3b3JrUHJvY2VzcyBcCiAgICAgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uIFwK
ICAgICBOZXR3b3JrUHJvY2Vzc1Byb3h5IFwKICAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIgXAot
ICAgIE5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyIFwKICAgICBQbHVnaW5Db250cm9sbGVyUHJveHkg
XAogICAgIFBsdWdpblByb2Nlc3MgXAogICAgIFBsdWdpblByb2Nlc3NDb25uZWN0aW9uIFwKICAg
ICBQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXIgXAogICAgIFBsdWdpblByb2Nlc3NQcm94
eSBcCiAgICAgUGx1Z2luUHJveHkgXAotICAgIFN0b3JhZ2VNYW5hZ2VyIFwKLSAgICBXZWJBcHBs
aWNhdGlvbkNhY2hlTWFuYWdlciBcCi0gICAgV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXJQcm94
eSBcCi0gICAgV2ViQ29va2llTWFuYWdlciBcCi0gICAgV2ViQ29va2llTWFuYWdlclByb3h5IFwK
LSAgICBXZWJDb25uZWN0aW9uIFwKLSAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyBc
CiAgICAgUmVtb3RlTGF5ZXJUcmVlSG9zdCBcCiAgICAgU2VjSXRlbVNoaW0gXAogICAgIFNlY0l0
ZW1TaGltUHJveHkgXAogICAgIFN0b3JhZ2VBcmVhTWFwIFwKKyAgICBTdG9yYWdlTWFuYWdlciBc
CisgICAgV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXIgXAorICAgIFdlYkFwcGxpY2F0aW9uQ2Fj
aGVNYW5hZ2VyUHJveHkgXAorICAgIFdlYkNvbm5lY3Rpb24gXAogICAgIFdlYkNvbnRleHQgXAor
ICAgIFdlYkNvb2tpZU1hbmFnZXIgXAorICAgIFdlYkNvb2tpZU1hbmFnZXJQcm94eSBcCiAgICAg
V2ViRGF0YWJhc2VNYW5hZ2VyIFwKICAgICBXZWJEYXRhYmFzZU1hbmFnZXJQcm94eSBcCiAgICAg
V2ViRnVsbFNjcmVlbk1hbmFnZXIgXAogICAgIFdlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkgXAog
ICAgIFdlYkdlb2xvY2F0aW9uTWFuYWdlciBcCiAgICAgV2ViR2VvbG9jYXRpb25NYW5hZ2VyUHJv
eHkgXAorICAgIFdlYklEQlNlcnZlckNvbm5lY3Rpb24gXAogICAgIFdlYkljb25EYXRhYmFzZSBc
CiAgICAgV2ViSWNvbkRhdGFiYXNlUHJveHkgXAogICAgIFdlYkluc3BlY3RvciBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TY3JpcHRzL3dlYmtpdDIvbWVzc2FnZXMucHkgYi9Tb3VyY2Uv
V2ViS2l0Mi9TY3JpcHRzL3dlYmtpdDIvbWVzc2FnZXMucHkKaW5kZXggOWFhOTc2YS4uZDQ2NzVk
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2NyaXB0cy93ZWJraXQyL21lc3NhZ2VzLnB5
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NjcmlwdHMvd2Via2l0Mi9tZXNzYWdlcy5weQpAQCAtMTc2
LDYgKzE3Niw3IEBAIGRlZiBzdHJ1Y3Rfb3JfY2xhc3MobmFtZXNwYWNlLCB0eXBlKToKICAgICAg
ICAgJ1dlYkNvcmU6OkZsb2F0UG9pbnQzRCcsCiAgICAgICAgICdXZWJDb3JlOjpGaWxlQ2hvb3Nl
clNldHRpbmdzJywKICAgICAgICAgJ1dlYkNvcmU6OkdyYW1tYXJEZXRhaWwnLAorICAgICAgICAn
V2ViQ29yZTo6SURCRGF0YWJhc2VNZXRhZGF0YScsCiAgICAgICAgICdXZWJDb3JlOjpJZGVudGl0
eVRyYW5zZm9ybU9wZXJhdGlvbicsCiAgICAgICAgICdXZWJDb3JlOjpLZXlwcmVzc0NvbW1hbmQn
LAogICAgICAgICAnV2ViQ29yZTo6TGVuZ3RoJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dlYktp
dDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlMGM1MDk3Li5jZGIyNjkyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC01OTEsNiArNTkxLDggQEAKIAkJNTFCMTVBODUxMzg0M0EzOTAwMzIxQUQ4IC8qIEVudmlyb25t
ZW50VXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MUIxNUE4MzEzODQzQTM5MDAzMjFBRDggLyogRW52aXJvbm1lbnRVdGlsaXRpZXMuaCAq
LzsgfTsKIAkJNTFCMzAwNTAxMjUyOUQwRTAwMEI1Q0EwIC8qIFdlYkJhY2tGb3J3YXJkTGlzdENG
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQjMw
MDRFMTI1MjlEMEUwMDBCNUNBMCAvKiBXZWJCYWNrRm9yd2FyZExpc3RDRi5jcHAgKi87IH07CiAJ
CTUxQjMwMDUxMTI1MjlEMEUwMDBCNUNBMCAvKiBXZWJQYWdlUHJveHlDRi5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUIzMDA0RjEyNTI5RDBFMDAw
QjVDQTAgLyogV2ViUGFnZVByb3h5Q0YuY3BwICovOyB9OworCQk1MUM5NjExODE4M0QyOTQ3MDBE
MjAwMkUgLyogV2ViSURCU2VydmVyQ29ubmVjdGlvbk1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUM5NjExNjE4M0QyOTQ3
MDBEMjAwMkUgLyogV2ViSURCU2VydmVyQ29ubmVjdGlvbk1lc3NhZ2VSZWNlaXZlci5jcHAgKi87
IH07CisJCTUxQzk2MTE5MTgzRDI5NDcwMEQyMDAyRSAvKiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9u
TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxQzk2MTE3MTgzRDI5NDcwMEQyMDAyRSAvKiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uTWVzc2Fn
ZXMuaCAqLzsgfTsKIAkJNTFDQkJBMEYxNjUyMTlCNjAwNUJFOEZEIC8qIE5ldHdvcmtSZXNvdXJj
ZUxvYWRQYXJhbWV0ZXJzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxQ0JCQTBEMTY1MjE5QjYwMDVCRThGRCAvKiBOZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5jcHAgKi87IH07CiAJCTUxQ0JCQTEwMTY1MjE5QjYwMDVCRThGRCAvKiBOZXR3
b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTFDQkJBMEUxNjUyMTlCNjAwNUJFOEZEIC8qIE5ldHdvcmtSZXNv
dXJjZUxvYWRQYXJhbWV0ZXJzLmggKi87IH07CiAJCTUxRDAyRjY0MTMyRUM1QjkwMEJFQUE5NiAv
KiBXZWJJY29uRGF0YWJhc2VNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFEMDJGNjMxMzJFQzVCOTAwQkVBQTk2IC8qIFdl
Ykljb25EYXRhYmFzZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC0yMTEyLDYgKzIxMTQs
OSBAQAogCQk1MUIxNUE4MzEzODQzQTM5MDAzMjFBRDggLyogRW52aXJvbm1lbnRVdGlsaXRpZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRW52aXJvbm1lbnRVdGlsaXRpZXMu
aDsgcGF0aCA9IHVuaXgvRW52aXJvbm1lbnRVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTFCMzAwNEUxMjUyOUQwRTAwMEI1Q0EwIC8qIFdlYkJhY2tGb3J3YXJkTGlz
dENGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdlYkJhY2tGb3J3
YXJkTGlzdENGLmNwcDsgcGF0aCA9IGNmL1dlYkJhY2tGb3J3YXJkTGlzdENGLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFCMzAwNEYxMjUyOUQwRTAwMEI1Q0EwIC8qIFdlYlBh
Z2VQcm94eUNGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdlYlBh
Z2VQcm94eUNGLmNwcDsgcGF0aCA9IGNmL1dlYlBhZ2VQcm94eUNGLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTFDOTYxMTUxODNDOTVGRjAwRDIwMDJFIC8qIFdlYklEQlNlcnZl
ckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViSURCU2VydmVyQ29ubmVjdGlvbi5tZXNz
YWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFDOTYxMTYxODNEMjk0NzAw
RDIwMDJFIC8qIFdlYklEQlNlcnZlckNvbm5lY3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViSURCU2VydmVyQ29ubmVjdGlvbk1l
c3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQzk2MTE3
MTgzRDI5NDcwMEQyMDAyRSAvKiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uTWVzc2FnZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViSURCU2VydmVyQ29ubmVjdGlvbk1lc3Nh
Z2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxQ0JCQTBEMTY1MjE5QjYwMDVC
RThGRCAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5jcHA7
IHBhdGggPSBOZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFDQkJBMEUxNjUyMTlCNjAwNUJFOEZEIC8qIE5ldHdv
cmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmg7IHBhdGggPSBOZXR3b3JrL05ldHdv
cmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTUxRDAyRjYzMTMyRUM1QjkwMEJFQUE5NiAvKiBXZWJJY29uRGF0YWJhc2VNZXNzYWdlUmVjZWl2
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViSWNvbkRhdGFi
YXNlTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTM4
MzQsNiArMzgzOSw3IEBACiAJCQkJNTEyOTA5OTExODNBQ0VBRjAwNTUyMkE2IC8qIFdlYklEQlNl
cnZlckNvbm5lY3Rpb24uaCAqLywKIAkJCQk1MUUzNTFGMTE4MEY1Qzc1MDBFNTNCRTkgLyogV2Vi
SURCRmFjdG9yeUJhY2tlbmQuY3BwICovLAogCQkJCTUxRTM1MUYyMTgwRjVDNzUwMEU1M0JFOSAv
KiBXZWJJREJGYWN0b3J5QmFja2VuZC5oICovLAorCQkJCTUxQzk2MTE1MTgzQzk1RkYwMEQyMDAy
RSAvKiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluICovLAogCQkJKTsKIAkJCXBh
dGggPSBJbmRleGVkREI7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtNTIzMCwxMCAr
NTIzNiw2IEBACiAJCUMwQ0U3MjlEMTI0N0U3MUQwMEJDMEVDNCAvKiBEZXJpdmVkIFNvdXJjZXMg
Ki8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAotCQkJCTc1RTc0OUU1
MTgwREJCOTgwMDA4OEJBNiAvKiBXZWJPcmlnaW5EYXRhTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5j
cHAgKi8sCi0JCQkJNzVFNzQ5RTYxODBEQkI5ODAwMDg4QkE2IC8qIFdlYk9yaWdpbkRhdGFNYW5h
Z2VyTWVzc2FnZXMuaCAqLywKLQkJCQk3NUU3NDlFNzE4MERCQjk4MDAwODhCQTYgLyogV2ViT3Jp
Z2luRGF0YU1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCi0JCQkJNzVFNzQ5RTgx
ODBEQkI5ODAwMDg4QkE2IC8qIFdlYk9yaWdpbkRhdGFNYW5hZ2VyUHJveHlNZXNzYWdlcy5oICov
LAogCQkJCTUxMkY1OEEwMTJBODgzQUQwMDYyOTUzMCAvKiBBdXRoZW50aWNhdGlvbk1hbmFnZXJN
ZXNzYWdlUmVjZWl2ZXIuY3BwICovLAogCQkJCTUxMkY1OEExMTJBODgzQUQwMDYyOTUzMCAvKiBB
dXRoZW50aWNhdGlvbk1hbmFnZXJNZXNzYWdlcy5oICovLAogCQkJCUUxN0FFMkMyMTZCOUM2M0Ew
MDFDNDJGMSAvKiBjb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtQcm9jZXNzLnNiICovLApAQCAtNTMx
Niw2ICs1MzE4LDggQEAKIAkJCQlCQzBFNjA2MDEyRDZCQTkxMDAxMkE3MkEgLyogV2ViR2VvbG9j
YXRpb25NYW5hZ2VyTWVzc2FnZXMuaCAqLywKIAkJCQlCQzBFNjE4MDEyRDZDQjFEMDAxMkE3MkEg
LyogV2ViR2VvbG9jYXRpb25NYW5hZ2VyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwICovLAogCQkJ
CUJDMEU2MTgxMTJENkNCMUQwMDEyQTcyQSAvKiBXZWJHZW9sb2NhdGlvbk1hbmFnZXJQcm94eU1l
c3NhZ2VzLmggKi8sCisJCQkJNTFDOTYxMTYxODNEMjk0NzAwRDIwMDJFIC8qIFdlYklEQlNlcnZl
ckNvbm5lY3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwICovLAorCQkJCTUxQzk2MTE3MTgzRDI5NDcw
MEQyMDAyRSAvKiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uTWVzc2FnZXMuaCAqLywKIAkJCQk1MUQw
MkY2MzEzMkVDNUI5MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVzc2FnZVJlY2VpdmVyLmNw
cCAqLywKIAkJCQk1MUQwMkY2NzEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVz
c2FnZXMuaCAqLywKIAkJCQk1MUQwMkY2ODEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFi
YXNlUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwICovLApAQCAtNTMzMCw2ICs1MzM0LDEwIEBACiAJ
CQkJMzNEM0EzQzcxMzM5NjE3OTAwNzA5QkU0IC8qIFdlYk1lZGlhQ2FjaGVNYW5hZ2VyUHJveHlN
ZXNzYWdlcy5oICovLAogCQkJCTMxQkE5MjQ4MTQ4ODMwODEwMDYyRURCNSAvKiBXZWJOb3RpZmlj
YXRpb25NYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKIAkJCQkzMUJBOTI0OTE0ODgzMDgx
MDA2MkVEQjUgLyogV2ViTm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VzLmggKi8sCisJCQkJNzVF
NzQ5RTUxODBEQkI5ODAwMDg4QkE2IC8qIFdlYk9yaWdpbkRhdGFNYW5hZ2VyTWVzc2FnZVJlY2Vp
dmVyLmNwcCAqLywKKwkJCQk3NUU3NDlFNjE4MERCQjk4MDAwODhCQTYgLyogV2ViT3JpZ2luRGF0
YU1hbmFnZXJNZXNzYWdlcy5oICovLAorCQkJCTc1RTc0OUU3MTgwREJCOTgwMDA4OEJBNiAvKiBX
ZWJPcmlnaW5EYXRhTWFuYWdlclByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKKwkJCQk3NUU3
NDlFODE4MERCQjk4MDAwODhCQTYgLyogV2ViT3JpZ2luRGF0YU1hbmFnZXJQcm94eU1lc3NhZ2Vz
LmggKi8sCiAJCQkJMjlENTVERUYxNjFCRjlGMTAwMzFBMkUzIC8qIFdlYlBhZ2VHcm91cFByb3h5
TWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKIAkJCQkyOUQ1NURGMDE2MUJGOUYxMDAzMUEyRTMgLyog
V2ViUGFnZUdyb3VwUHJveHlNZXNzYWdlcy5oICovLAogCQkJCUMwQ0U3MjlFMTI0N0U3MUQwMEJD
MEVDNCAvKiBXZWJQYWdlTWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKQEAgLTU4NjUsNiArNTg3Myw3
IEBACiAJCQkJQkNBMEVGN0YxMjMzMUU3ODAwN0QzQ0ZCIC8qIFdlYlVuZG9TdGVwLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxQUM3NTM3QzE4M0E5RkRCMDA3MkNCMTUgLyogUGFnZUxvYWRTdGF0ZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkNEQjg2QzExMjAwRkI5NzAwNzI1NEJFIC8qIFdlYlVSTC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTFDOTYxMTkxODNEMjk0NzAwRDIwMDJFIC8qIFdlYklEQlNl
cnZlckNvbm5lY3Rpb25NZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFMjMxNUQxMjJD
MzBDQTAwRDVDMzVBIC8qIFdlYlVSTFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDOTBB
MUQyMTIyREQ1NUUwMENDOEM1MCAvKiBXZWJVUkxSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRjYxMTNFMjUxMjZDRTE4MjAwNTdEMEE3IC8qIFdlYlVzZXJDb250ZW50VVJMUGF0dGVybi5o
IGluIEhlYWRlcnMgKi8sCkBAIC03MjExLDYgKzcyMjAsNyBAQAogCQkJCTI5Q0Q1NUFCMTI4RTI5
NEYwMDEzM0M4NSAvKiBXS0FjY2Vzc2liaWxpdHlXZWJQYWdlT2JqZWN0Lm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMUFDNzUzN0YxODNCRTUwRjAwNzJDQjE1IC8qIERhdGFSZWZlcmVuY2UuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNTEyRTM0RTQxMzBCNEQwNTAwQUJEMTlBIC8qIFdLQXBwbGljYXRp
b25DYWNoZU1hbmFnZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTFDOTYxMTgxODNEMjk0NzAw
RDIwMDJFIC8qIFdlYklEQlNlcnZlckNvbm5lY3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQkM0MDc1RjMxMjRGRjAyNzAwNjhGMjBBIC8qIFdLQXJyYXkuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNTEyRjU4RjUxMkE4OEE1NDAwNjI5NTMwIC8qIFdLQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFFMzUxQ0ExODBGMkNDQzAw
RTUzQkU5IC8qIElEQlV0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJD
b25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4
ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmNwcAppbmRleCA4MTExYTkyLi43ZmYwOWZjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIv
V2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uY3BwCkBAIC0zNSw2
ICszNSw3IEBACiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgogI2luY2x1ZGUgIldlYlRvRGF0YWJh
c2VQcm9jZXNzQ29ubmVjdGlvbi5oIgogCisjaW5jbHVkZSA8V2ViQ29yZS9JREJEYXRhYmFzZU1l
dGFkYXRhLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgogCiB1c2luZyBu
YW1lc3BhY2UgV2ViQ29yZTsKQEAgLTQ4LDYgKzQ5LDEzIEBAIHN0YXRpYyB1aW50NjRfdCBnZW5l
cmF0ZVNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKCkKICAgICByZXR1cm4gKytpZGVudGlmaWVy
OwogfQogCitQYXNzUmVmUHRyPFdlYklEQlNlcnZlckNvbm5lY3Rpb24+IFdlYklEQlNlcnZlckNv
bm5lY3Rpb246OmNyZWF0ZShjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVP
cmlnaW4pCit7CisgICAgUmVmUHRyPFdlYklEQlNlcnZlckNvbm5lY3Rpb24+IHJlc3VsdCA9IGFk
b3B0UmVmKG5ldyBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKGRhdGFiYXNlTmFtZSwgb3BlbmluZ09y
aWdpbiwgbWFpbkZyYW1lT3JpZ2luKSk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkud2ViVG9E
YXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uKCktPnJlZ2lzdGVyV2ViSURCU2VydmVyQ29ubmVjdGlv
bigqcmVzdWx0KTsKKyAgICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKK30KKwogV2ViSURCU2Vy
dmVyQ29ubmVjdGlvbjo6V2ViSURCU2VydmVyQ29ubmVjdGlvbihjb25zdCBTdHJpbmcmIGRhdGFi
YXNlTmFtZSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pCiAgICAgOiBtX3NlcnZlckNvbm5lY3Rpb25JZGVu
dGlmaWVyKGdlbmVyYXRlU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIoKSkKICAgICAsIG1fZGF0
YWJhc2VOYW1lKGRhdGFiYXNlTmFtZSkKQEAgLTYwLDYgKzY4LDcgQEAgV2ViSURCU2VydmVyQ29u
bmVjdGlvbjo6V2ViSURCU2VydmVyQ29ubmVjdGlvbihjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFt
ZSwgY29uc3QKIAogV2ViSURCU2VydmVyQ29ubmVjdGlvbjo6fldlYklEQlNlcnZlckNvbm5lY3Rp
b24oKQogeworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLndlYlRvRGF0YWJhc2VQcm9jZXNzQ29u
bmVjdGlvbigpLT5yZW1vdmVXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKCp0aGlzKTsKIH0KIAogYm9v
bCBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjppc0Nsb3NlZCgpCkBAIC03Myw5ICs4MiwxNSBAQCB2
b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rpb246OmRlbGV0ZURhdGFiYXNlKGNvbnN0IFN0cmluZyYg
bmFtZSwgQm9vbENhbGxiYWNrRnVuYwogCiB2b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rpb246Omdl
dE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVu
Y3Rpb24gY29tcGxldGlvbkNhbGxiYWNrKQogeworICAgIC8vIEZJWE1FOiBTYXZlIHRoZSBjb21w
bGV0aW9uQ2FsbGJhY2sgdG8gcGVyZm9ybSB0aGlzIHJlcXVlc3QgaXMgY29tcGxldGUuCiAgICAg
c2VuZChNZXNzYWdlczo6RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6R2V0T3JFc3RhYmxp
c2hJREJEYXRhYmFzZU1ldGFkYXRhKCkpOwogfQogCit2b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rp
b246OmRpZEdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShib29sLCBjb25zdCBJREJE
YXRhYmFzZU1ldGFkYXRhJikKK3sKKyAgICAvLyBGSVhNRTogTG9va3VwIHRoZSBhcHByb3ByaWF0
ZSBjb21wbGV0aW9uQ2FsbGJhY2sgdG8gcGVyZm9ybSB3aXRoIHRoZXNlIHJlc3VsdHMuCit9CisK
IHZvaWQgV2ViSURCU2VydmVyQ29ubmVjdGlvbjo6Y2xvc2UoKQogewogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZl
ckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4
ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmgKaW5kZXggMGQ4ZjM4ZC4uN2U1MGRiOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dl
YklEQlNlcnZlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0Rh
dGFiYXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5oCkBAIC0zMCwxNiArMzAs
MTQgQEAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkgJiYgRU5BQkxFKERBVEFCQVNFX1BS
T0NFU1MpCiAKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9J
REJEYXRhYmFzZU1ldGFkYXRhLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9JREJTZXJ2ZXJDb25uZWN0
aW9uLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJJREJTZXJ2ZXJDb25uZWN0
aW9uIEZJTkFMIDogcHVibGljIFdlYkNvcmU6OklEQlNlcnZlckNvbm5lY3Rpb24sIHB1YmxpYyBD
b3JlSVBDOjpNZXNzYWdlU2VuZGVyIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxX
ZWJJREJTZXJ2ZXJDb25uZWN0aW9uPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUs
IGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKQotICAgIHsKLSAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKGRhdGFiYXNlTmFtZSwgb3Bl
bmluZ09yaWdpbiwgbWFpbkZyYW1lT3JpZ2luKSk7Ci0gICAgfQorICAgIHN0YXRpYyBQYXNzUmVm
UHRyPFdlYklEQlNlcnZlckNvbm5lY3Rpb24+IGNyZWF0ZShjb25zdCBTdHJpbmcmIGRhdGFiYXNl
TmFtZSwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNvbnN0
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pOwogCiAgICAgdmlydHVh
bCB+V2ViSURCU2VydmVyQ29ubmVjdGlvbigpOwogCkBAIC04MSwxMiArNzksMTkgQEAgcHVibGlj
OgogICAgIHZpcnR1YWwgdm9pZCBjdXJzb3JQcmVmZXRjaEl0ZXJhdGlvbihXZWJDb3JlOjpJREJD
dXJzb3JCYWNrZW5kJiwgY29uc3QgV2ViQ29yZTo6Q3Vyc29yUHJlZmV0Y2hJdGVyYXRpb25PcGVy
YXRpb24mLCBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gY29tcGxldGlvbkNhbGxiYWNrKSBPVkVSUklE
RTsKICAgICB2aXJ0dWFsIHZvaWQgY3Vyc29yUHJlZmV0Y2hSZXNldChXZWJDb3JlOjpJREJDdXJz
b3JCYWNrZW5kJiwgaW50IHVzZWRQcmVmZXRjaGVzKSBPVkVSUklERTsKIAorICAgIC8vIE1lc3Nh
Z2UgaGFuZGxlcnMuCisgICAgdm9pZCBkaWRSZWNlaXZlV2ViSURCU2VydmVyQ29ubmVjdGlvbk1l
c3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJik7CisK
KyAgICAvLyBDb3JlSVBDOjpNZXNzYWdlU2VuZGVyCisgICAgdmlydHVhbCB1aW50NjRfdCBtZXNz
YWdlU2VuZGVyRGVzdGluYXRpb25JRCgpIE9WRVJSSURFIHsgcmV0dXJuIG1fc2VydmVyQ29ubmVj
dGlvbklkZW50aWZpZXI7IH0KKwogcHJpdmF0ZToKICAgICBXZWJJREJTZXJ2ZXJDb25uZWN0aW9u
KGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdp
biYgb3BlbmluZ09yaWdpbiwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG1haW5GcmFt
ZU9yaWdpbik7CiAKICAgICAvLyBDb3JlSVBDOjpNZXNzYWdlU2VuZGVyCiAgICAgdmlydHVhbCBD
b3JlSVBDOjpDb25uZWN0aW9uKiBtZXNzYWdlU2VuZGVyQ29ubmVjdGlvbigpIE9WRVJSSURFOwot
ICAgIHZpcnR1YWwgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBPVkVSUklE
RSB7IHJldHVybiBtX3NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyOyB9CisKKyAgICB2b2lkIGRp
ZEdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShib29sIHN1Y2Nlc3MsIGNvbnN0IFdl
YkNvcmU6OklEQkRhdGFiYXNlTWV0YWRhdGEmKTsKIAogICAgIHVpbnQ2NF90IG1fc2VydmVyQ29u
bmVjdGlvbklkZW50aWZpZXI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmlu
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNl
cnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMjNhMDhmZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmlu
CkBAIC0wLDAgKzEsMjkgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0Ogor
IyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisjICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorIyBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisjIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyMgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwKKyMgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KworI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKSAmJiBFTkFCTEUoREFUQUJBU0VfUFJPQ0VT
UykKKworbWVzc2FnZXMgLT4gV2ViSURCU2VydmVyQ29ubmVjdGlvbiBMZWdhY3lSZWNlaXZlciB7
CisgICAgRGlkR2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKGJvb2wgc3VjY2Vzcywg
V2ViQ29yZTo6SURCRGF0YWJhc2VNZXRhZGF0YSBtZXRhZGF0YSkKK30KKworI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKSAmJiBFTkFCTEUoREFUQUJBU0VfUFJPQ0VTUykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYlRvRGF0YWJhc2VQ
cm9jZXNzQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNl
cy9XZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IGIzNjYyMWIuLmM5OWRi
NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYlRv
RGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9EYXRhYmFzZXMvV2ViVG9EYXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uLmNwcApAQCAtMjgs
NiArMjgsOCBAQAogI2luY2x1ZGUgIldlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbi5oIgog
CiAjaW5jbHVkZSAiRGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uTWVzc2FnZXMuaCIKKyNp
bmNsdWRlICJXZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiV2ViSURCU2VydmVy
Q29ubmVjdGlvbk1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgogI2luY2x1ZGUg
PHd0Zi9SdW5Mb29wLmg+CiAKQEAgLTQ3LDExICs0OSwxOSBAQCBXZWJUb0RhdGFiYXNlUHJvY2Vz
c0Nvbm5lY3Rpb246On5XZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb24oKQogewogfQogCi12
b2lkIFdlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29y
ZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJikKK3ZvaWQgV2ViVG9E
YXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25u
ZWN0aW9uKiBjb25uZWN0aW9uLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYgZGVjb2RlcikKIHsK
KyAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYklE
QlNlcnZlckNvbm5lY3Rpb246Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgeworICAgICAgICBIYXNo
TWFwPHVpbnQ2NF90LCBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKj46Oml0ZXJhdG9yIGNvbm5lY3Rp
b25JdGVyYXRvciA9IG1fd2ViSURCU2VydmVyQ29ubmVjdGlvbnMuZmluZChkZWNvZGVyLmRlc3Rp
bmF0aW9uSUQoKSk7CisgICAgICAgIGlmIChjb25uZWN0aW9uSXRlcmF0b3IgIT0gbV93ZWJJREJT
ZXJ2ZXJDb25uZWN0aW9ucy5lbmQoKSkKKyAgICAgICAgICAgIGNvbm5lY3Rpb25JdGVyYXRvci0+
dmFsdWUtPmRpZFJlY2VpdmVXZWJJREJTZXJ2ZXJDb25uZWN0aW9uTWVzc2FnZShjb25uZWN0aW9u
LCBkZWNvZGVyKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICAKKyAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKIH0KIAotdm9pZCBXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb246OmRp
ZENsb3NlKENvcmVJUEM6OkNvbm5lY3Rpb24qKQordm9pZCBXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nv
bm5lY3Rpb246OmRpZENsb3NlKENvcmVJUEM6OkNvbm5lY3Rpb24qIGNvbm5lY3Rpb24pCiB7CiAg
ICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkud2ViVG9EYXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uQ2xv
c2VkKHRoaXMpOwogfQpAQCAtNjAsNiArNzAsMjIgQEAgdm9pZCBXZWJUb0RhdGFiYXNlUHJvY2Vz
c0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVJbnZhbGlkTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW8K
IHsKIH0KIAordm9pZCBXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb246OnJlZ2lzdGVyV2Vi
SURCU2VydmVyQ29ubmVjdGlvbihXZWJJREJTZXJ2ZXJDb25uZWN0aW9uJiBjb25uZWN0aW9uKQor
eworICAgIEFTU0VSVCghbV93ZWJJREJTZXJ2ZXJDb25uZWN0aW9ucy5jb250YWlucyhjb25uZWN0
aW9uLm1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCkpKTsKKyAgICBtX3dlYklEQlNlcnZlckNv
bm5lY3Rpb25zLnNldChjb25uZWN0aW9uLm1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCksICZj
b25uZWN0aW9uKTsKKworfQorCit2b2lkIFdlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVjdGlvbjo6
cmVtb3ZlV2ViSURCU2VydmVyQ29ubmVjdGlvbihXZWJJREJTZXJ2ZXJDb25uZWN0aW9uJiBjb25u
ZWN0aW9uKQoreworICAgIEFTU0VSVChtX3dlYklEQlNlcnZlckNvbm5lY3Rpb25zLmNvbnRhaW5z
KGNvbm5lY3Rpb24ubWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSkpOworCisgICAgc2VuZChN
ZXNzYWdlczo6RGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uOjpSZW1vdmVEYXRhYmFzZVBy
b2Nlc3NJREJDb25uZWN0aW9uKGNvbm5lY3Rpb24ubWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQo
KSkpOworCisgICAgbV93ZWJJREJTZXJ2ZXJDb25uZWN0aW9ucy5yZW1vdmUoY29ubmVjdGlvbi5t
ZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCgpKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CiAKICNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYlRvRGF0YWJhc2VQcm9jZXNzQ29ubmVj
dGlvbi5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViVG9EYXRhYmFz
ZVByb2Nlc3NDb25uZWN0aW9uLmgKaW5kZXggZDMyMDg4Mi4uNjNiMzQ5ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViVG9EYXRhYmFzZVByb2Nlc3ND
b25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2Vi
VG9EYXRhYmFzZVByb2Nlc3NDb25uZWN0aW9uLmgKQEAgLTM1LDYgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYklEQlNlcnZlckNvbm5lY3Rpb247CiBjbGFzcyBXZWJQ
cm9jZXNzSURCRGF0YWJhc2VCYWNrZW5kOwogCiBjbGFzcyBXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nv
bm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rp
b24+LCBwdWJsaWMgQ29yZUlQQzo6Q29ubmVjdGlvbjo6Q2xpZW50LCBwdWJsaWMgQ29yZUlQQzo6
TWVzc2FnZVNlbmRlciB7CkBAIC00Nyw3ICs0OCw4IEBAIHB1YmxpYzoKICAgICAKICAgICBDb3Jl
SVBDOjpDb25uZWN0aW9uKiBjb25uZWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9jb25uZWN0aW9u
LmdldCgpOyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25N
ZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYpOwor
ICAgIHZvaWQgcmVnaXN0ZXJXZWJJREJTZXJ2ZXJDb25uZWN0aW9uKFdlYklEQlNlcnZlckNvbm5l
Y3Rpb24mKTsKKyAgICB2b2lkIHJlbW92ZVdlYklEQlNlcnZlckNvbm5lY3Rpb24oV2ViSURCU2Vy
dmVyQ29ubmVjdGlvbiYpOwogCiBwcml2YXRlOgogICAgIFdlYlRvRGF0YWJhc2VQcm9jZXNzQ29u
bmVjdGlvbihDb3JlSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKQEAgLTYyLDYgKzY0LDgg
QEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHVpbnQ2NF90IG1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlv
bklEKCkgT1ZFUlJJREUgeyByZXR1cm4gMDsgfQogCiAgICAgUmVmUHRyPENvcmVJUEM6OkNvbm5l
Y3Rpb24+IG1fY29ubmVjdGlvbjsKKworICAgIEhhc2hNYXA8dWludDY0X3QsIFdlYklEQlNlcnZl
ckNvbm5lY3Rpb24qPiBtX3dlYklEQlNlcnZlckNvbm5lY3Rpb25zOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViS2l0Cg==
</data>
<flag name="review"
          id="240639"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>