<?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>205547</bug_id>
          
          <creation_ts>2019-12-21 19:58:32 -0800</creation_ts>
          <short_desc>[Media in GPU process] Add remote media player proxy configuration</short_desc>
          <delta_ts>2019-12-29 09:57:11 -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>Media</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=205630</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>205123</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1601136</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2019-12-21 19:58:32 -0800</bug_when>
    <thetext>Add remote media player proxy configuration for static player properties.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601137</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-21 19:58:42 -0800</bug_when>
    <thetext>&lt;rdar://problem/58139762&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601148</commentid>
    <comment_count>2</comment_count>
      <attachid>386312</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2019-12-21 21:34:55 -0800</bug_when>
    <thetext>Created attachment 386312
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601154</commentid>
    <comment_count>3</comment_count>
      <attachid>386312</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-22 04:59:41 -0800</bug_when>
    <thetext>Comment on attachment 386312
Patch

Clearing flags on attachment: 386312

Committed r253871: &lt;https://trac.webkit.org/changeset/253871&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601155</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-22 04:59:43 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601550</commentid>
    <comment_count>5</comment_count>
      <attachid>386312</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-26 17:39:10 -0800</bug_when>
    <thetext>Comment on attachment 386312
Patch

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

&gt; Source/WebKit/WebProcess/GPU/media/RemoteMediaPlayerConfiguration.h:93
&gt; +            WTFMove(*engineDescription),
&gt; +            WTFMove(*supportsScanning),
&gt; +            WTFMove(*supportsPictureInPicture),
&gt; +            WTFMove(*supportsAcceleratedRendering),
&gt; +            WTFMove(*canPlayToWirelessPlaybackTarget),

The WTFMove for engineDescription is fine. The others seem unnecessary. We don’t need to WTFMove a bool.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601774</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2019-12-29 09:57:11 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; Comment on attachment 386312 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=386312&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/WebProcess/GPU/media/RemoteMediaPlayerConfiguration.h:93
&gt; &gt; +            WTFMove(*engineDescription),
&gt; &gt; +            WTFMove(*supportsScanning),
&gt; &gt; +            WTFMove(*supportsPictureInPicture),
&gt; &gt; +            WTFMove(*supportsAcceleratedRendering),
&gt; &gt; +            WTFMove(*canPlayToWirelessPlaybackTarget),
&gt; 
&gt; The WTFMove for engineDescription is fine. The others seem unnecessary. We
&gt; don’t need to WTFMove a bool.

I will fix this in 205630.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386312</attachid>
            <date>2019-12-21 21:34:55 -0800</date>
            <delta_ts>2019-12-22 04:59:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205547-20191221213450.patch</filename>
            <type>text/plain</type>
            <size>27592</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzODY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1YjYyNjNmM2Y5MDVjMjQz
MDgxZWNiMWIwNWQwOTIzNzFhZjIzM2IuLmYzNmY0N2ZmZDM4ODQwZmZjYzg1YWUyNDZjM2ZjOGNm
YTc0MDkxZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTktMTItMjEgIEVyaWMgQ2Fy
bHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW01lZGlhIGluIEdQVSBw
cm9jZXNzXSBBZGQgcmVtb3RlIG1lZGlhIHBsYXllciBwcm94eSBjb25maWd1cmF0aW9uCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDU1NDcKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzU4MTM5NzYyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXll
ck1hbmFnZXJQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyTWFu
YWdlclByb3h5OjpjcmVhdGVNZWRpYVBsYXllcik6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRp
YS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIEdQVVByb2Nlc3Mv
bWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkubWVzc2FnZXMuaW46CisgICAgICAg
ICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eSk6
CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmdldENvbmZpZ3VyYXRp
b24pOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXll
ck1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpSZW1v
dGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllclJlZmVycmVyIGNvbnN0KToKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bWVkaWFQbGF5ZXJVc2VyQWdlbnQgY29u
c3QpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXll
clNvdXJjZUFwcGxpY2F0aW9uSWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OlJl
bW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxheWVyTmV0d29ya0ludGVyZmFjZU5hbWUgY29u
c3QpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXll
ck1lZGlhQ2FjaGVEaXJlY3RvcnkgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRp
YVBsYXllclByb3h5OjptZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydCBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1lZGlhUGxh
eWVyUHJlZmVycmVkQXVkaW9DaGFyYWN0ZXJpc3RpY3MgY29uc3QpOgorICAgICAgICAoV2ViS2l0
OjpSZW1vdGVNZWRpYVBsYXllclByb3h5OjptZWRpYVBsYXllclNob3VsZFVzZVBlcnNpc3RlbnRD
YWNoZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6Om1l
ZGlhUGxheWVySXNWaWRlbyBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxh
eWVyUHJveHk6Om1lZGlhUGxheWVyS2V5TmVlZGVkKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
TWVkaWFQbGF5ZXJQcm94eTo6bWVkaWFQbGF5ZXJHZXRSYXdDb29raWVzIGNvbnN0KToKKyAgICAg
ICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHkuaDoKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6bWVkaWFQbGF5ZXJMb2dJZGVudGlmaWVy
KToKKyAgICAgICAgKiBHUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyUHJveHlDb25m
aWd1cmF0aW9uLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclBy
b3h5Q29uZmlndXJhdGlvbjo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
TWVkaWFQbGF5ZXJQcm94eUNvbmZpZ3VyYXRpb246OmRlY29kZSk6CisgICAgICAgICogV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGUpOgorICAgICAgICAo
V2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmVuZ2luZURlc2NyaXB0aW9uIGNvbnN0
KToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpzdXBwb3J0c1Nj
YW5uaW5nIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3Rl
OjpzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpNZWRp
YVBsYXllclByaXZhdGVSZW1vdGU6OnN1cHBvcnRzQWNjZWxlcmF0ZWRSZW5kZXJpbmcgY29uc3Qp
OgorICAgICAgICAoV2ViS2l0OjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmNhblBsYXlUb1dp
cmVsZXNzUGxheWJhY2tUYXJnZXQgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21l
ZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlvbi5oOiBBZGRlZC4KKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uOjplbmNvZGUgY29uc3QpOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb246OmRlY29kZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyOjpjcmVhdGVS
ZW1vdGVNZWRpYVBsYXllcik6CisKIDIwMTktMTItMjEgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2Fy
bHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgW01lZGlhIGluIEdQVSBwcm9jZXNzXSBBZGQgcmVt
b3RlIG1lZGlhIHBsYXllciBjb25maWd1cmF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkuY3BwIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5
LmNwcAppbmRleCA3NjkwMjE0OGVjOTA3ODY3NzhmNmVjOWQwMjE5OWE1MzljMzEwYWE1Li5iOGIz
ZGZkN2M4MDQzOTI2NDBkNzAzYzcyYmRmMDhhZTQ4NzQ1Mzk1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1h
bmFnZXJQcm94eS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1Mp
CiAKICNpbmNsdWRlICJHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgiCisjaW5jbHVkZSAiUmVt
b3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5
ZXJNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQ
cm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJQcm94eS5oIgpAQCAt
NjIsMTQgKzYzLDE5IEBAIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5Ojp+UmVtb3RlTWVk
aWFQbGF5ZXJNYW5hZ2VyUHJveHkoKQogewogfQogCi12b2lkIFJlbW90ZU1lZGlhUGxheWVyTWFu
YWdlclByb3h5OjpjcmVhdGVNZWRpYVBsYXllcihNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVu
dGlmaWVyIGlkLCBNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIgZW5naW5l
SWRlbnRpZmllciwgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eUNvbmZpZ3VyYXRpb24mJiBjb25maWd1
cmF0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wgc3VjY2VlZGVkKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHk6OmNyZWF0ZU1l
ZGlhUGxheWVyKE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgaWQsIE1lZGlhUGxh
eWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciBlbmdpbmVJZGVudGlmaWVyLCBSZW1vdGVN
ZWRpYVBsYXllclByb3h5Q29uZmlndXJhdGlvbiYmIHByb3h5Q29uZmlndXJhdGlvbiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24mKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKIHsKICAgICBNRVNTQUdFX0NIRUNLX0NPTlRFWFRJRChpZCk7CiAKICAg
ICBBU1NFUlQoIW1fcHJveGllcy5jb250YWlucyhpZCkpOwotICAgIG1fcHJveGllcy5hZGQoaWQs
IG1ha2VVbmlxdWU8UmVtb3RlTWVkaWFQbGF5ZXJQcm94eT4oKnRoaXMsIGlkLCBtX2dwdUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MuY29ubmVjdGlvbigpLCBlbmdpbmVJZGVudGlmaWVyLCBXVEZNb3Zl
KGNvbmZpZ3VyYXRpb24pKSk7CiAKLSAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsKKyAgICBS
ZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24gcGxheWVyQ29uZmlndXJhdGlvbjsKKworICAg
IGF1dG8gcHJveHkgPSBtYWtlVW5pcXVlPFJlbW90ZU1lZGlhUGxheWVyUHJveHk+KCp0aGlzLCBp
ZCwgbV9ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNvbm5lY3Rpb24oKSwgZW5naW5lSWRlbnRp
ZmllciwgV1RGTW92ZShwcm94eUNvbmZpZ3VyYXRpb24pKTsKKyAgICBwcm94eS0+Z2V0Q29uZmln
dXJhdGlvbihwbGF5ZXJDb25maWd1cmF0aW9uKTsKKyAgICBtX3Byb3hpZXMuYWRkKGlkLCBXVEZN
b3ZlKHByb3h5KSk7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihwbGF5ZXJDb25maWd1cmF0aW9u
KTsKIH0KIAogdm9pZCBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQcm94eTo6ZGVsZXRlTWVkaWFQ
bGF5ZXIoTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllciBpZCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQ
cm94eS5oIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVy
TWFuYWdlclByb3h5LmgKaW5kZXggZjE1MjRmMzY5NzY5ZDRlNzEzZmIzMjk0NTA0MjNjYzQxZmZj
NjA5Ny4uMDY3MDA1NmZhNmUyOTZiNzYwZDczMWQyYzhiMTVjY2JlNGMwNDlhNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdl
clByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlh
UGxheWVyTWFuYWdlclByb3h5LmgKQEAgLTM4LDYgKzM4LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7
CiAKIGNsYXNzIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CiBjbGFzcyBSZW1vdGVNZWRpYVBs
YXllclByb3h5Oworc3RydWN0IFJlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlvbjsKIAogY2xh
c3MgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkKICAgICA6IHByaXZhdGUgSVBDOjpNZXNz
YWdlUmVjZWl2ZXIKQEAgLTY4LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJlY2Vp
dmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZpbmFsOwogICAgIHZv
aWQgZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYs
IHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+JikgZmluYWw7CiAKLSAgICB2b2lkIGNyZWF0
ZU1lZGlhUGxheWVyKE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIsIFdlYkNvcmU6
Ok1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciwgUmVtb3RlTWVkaWFQbGF5
ZXJQcm94eUNvbmZpZ3VyYXRpb24mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CisgICAgdm9pZCBjcmVhdGVNZWRpYVBsYXllcihNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVu
dGlmaWVyLCBXZWJDb3JlOjpNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIs
IFJlbW90ZU1lZGlhUGxheWVyUHJveHlDb25maWd1cmF0aW9uJiYsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoUmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uJik+JiYpOwogICAgIHZvaWQgZGVs
ZXRlTWVkaWFQbGF5ZXIoTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllcik7CiAKICAg
ICAvLyBNZWRpYSBwbGF5ZXIgZmFjdG9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQ
cm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlclBy
b3h5Lm1lc3NhZ2VzLmluCmluZGV4IDJmODdmMzI4YzQ4NTUwZjVhMzMyNmVjMWEzNGQ0NDc3NjJj
MTkzMjcuLjVjYmRlZDVmZmUxM2Q3YWRjZDM0ZjFkMzlkYzRmYjVkZmQ2YzY2NmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFn
ZXJQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0LDcg
QEAKICNpZiBFTkFCTEUoVklERU8pCiAKIG1lc3NhZ2VzIC0+IFJlbW90ZU1lZGlhUGxheWVyTWFu
YWdlclByb3h5IE5vdFJlZkNvdW50ZWQgewotICAgIENyZWF0ZU1lZGlhUGxheWVyKFdlYktpdDo6
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllciBpZCwgZW51bTp1aW50OF90IFdlYkNv
cmU6Ok1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciByZW1vdGVFbmdpbmVJ
ZGVudGlmaWVyLCBzdHJ1Y3QgV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllclByb3h5Q29uZmlndXJh
dGlvbiBjb25maWd1cmF0aW9uKSAtPiAoYm9vbCBzdWNjZXNzKSBTeW5jaHJvbm91cworICAgIENy
ZWF0ZU1lZGlhUGxheWVyKFdlYktpdDo6TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmll
ciBpZCwgZW51bTp1aW50OF90IFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5l
SWRlbnRpZmllciByZW1vdGVFbmdpbmVJZGVudGlmaWVyLCBzdHJ1Y3QgV2ViS2l0OjpSZW1vdGVN
ZWRpYVBsYXllclByb3h5Q29uZmlndXJhdGlvbiBwcm94eUNvbmZpZ3VyYXRpb24pIC0+IChzdHJ1
Y3QgV2ViS2l0OjpSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24gcGxheWVyQ29uZmlndXJh
dGlvbikgU3luY2hyb25vdXMKICAgICBEZWxldGVNZWRpYVBsYXllcihXZWJLaXQ6Ok1lZGlhUGxh
eWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgaWQpCiAKICAgICBHZXRTdXBwb3J0ZWRUeXBlcyhl
bnVtOnVpbnQ4X3QgV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlm
aWVyIHJlbW90ZUVuZ2luZUlkZW50aWZpZXIpIC0+IChWZWN0b3I8U3RyaW5nPiB0eXBlcykgU3lu
Y2hyb25vdXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9S
ZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcAppbmRleCAwNTBhYjY3YjQ3OWI2ZTJkMTUzYTg0NTgz
NGM1MTM0MzZmOWM4MmRjLi42ZGZhNzVmNWM1MWQzOGFiYzFkNWI5ODM0NDUyNGNhOWFkYTczZTll
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyUHJveHkuY3BwCkBAIC01OSw2ICs1OSwxNiBAQCB2b2lkIFJlbW90ZU1lZGlh
UGxheWVyUHJveHk6OmludmFsaWRhdGUoKQogICAgIG1fcGxheWVyLT5pbnZhbGlkYXRlKCk7CiB9
CiAKK3ZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6Z2V0Q29uZmlndXJhdGlvbihSZW1vdGVN
ZWRpYVBsYXllckNvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCit7CisgICAgY29uZmlndXJh
dGlvbi5lbmdpbmVEZXNjcmlwdGlvbiA9IG1fcGxheWVyLT5lbmdpbmVEZXNjcmlwdGlvbigpOwor
ICAgIGNvbmZpZ3VyYXRpb24uc3VwcG9ydHNTY2FubmluZyA9IG1fcGxheWVyLT5zdXBwb3J0c1Nj
YW5uaW5nKCk7CisgICAgY29uZmlndXJhdGlvbi5zdXBwb3J0c0Z1bGxzY3JlZW4gPSBtX3BsYXll
ci0+c3VwcG9ydHNGdWxsc2NyZWVuKCk7CisgICAgY29uZmlndXJhdGlvbi5zdXBwb3J0c1BpY3R1
cmVJblBpY3R1cmUgPSBtX3BsYXllci0+c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CisgICAg
Y29uZmlndXJhdGlvbi5zdXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nID0gbV9wbGF5ZXItPnN1
cHBvcnRzQWNjZWxlcmF0ZWRSZW5kZXJpbmcoKTsKKyAgICBjb25maWd1cmF0aW9uLmNhblBsYXlU
b1dpcmVsZXNzUGxheWJhY2tUYXJnZXQgPSBtX3BsYXllci0+Y2FuUGxheVRvV2lyZWxlc3NQbGF5
YmFja1RhcmdldCgpOworfQorCiB2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OmxvYWQoY29u
c3QgVVJMJiB1cmwsIGNvbnN0IENvbnRlbnRUeXBlJiBjb250ZW50VHlwZSwgY29uc3QgU3RyaW5n
JiBrZXlTeXN0ZW0pCiB7CiAgICAgbV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50VHlwZSwga2V5
U3lzdGVtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVt
b3RlTWVkaWFQbGF5ZXJQcm94eS5oCmluZGV4IDQ2MzZkNmU5ZDZlNGY0N2JlYmZmZDlkZGMyZGEw
NTZmMDlmZDc1NzUuLmY1YzI3NzA5OTg5MWFhN2MzZTI4NzliYzc3YzNhMzgzMzkzNTJjZGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBsYXll
clByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZU1lZGlh
UGxheWVyUHJveHkuaApAQCAtNTgsNiArNTgsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGludmFs
aWRhdGUoKTsKIAorICAgIHZvaWQgZ2V0Q29uZmlndXJhdGlvbihSZW1vdGVNZWRpYVBsYXllckNv
bmZpZ3VyYXRpb24mKTsKKwogICAgIHZvaWQgcHJlcGFyZUZvclBsYXliYWNrKGJvb2wgcHJpdmF0
ZU1vZGUsIFdlYkNvcmU6Ok1lZGlhUGxheWVyRW51bXM6OlByZWxvYWQsIGJvb2wgcHJlc2VydmVz
UGl0Y2gsIGJvb2wgcHJlcGFyZUZvclJlbmRlcmluZyk7CiAKICAgICB2b2lkIGxvYWQoY29uc3Qg
VVJMJiwgY29uc3QgQ29udGVudFR5cGUmLCBjb25zdCBTdHJpbmcmKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDUyYjQwMDQyZGFjMzdi
YzM4NGYwZWQzNDVmMDQxYzM0OTdlNjhmYjguLmViYWMyNzY1MjlhYmY3MjhkYjg5NzUyYTY1YTMx
ZTk3NjM0YzY4NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTAwLDYgKzEwMCw3IEBACiAJCTA3OTIzMTRGMjM5RDYyM0UwMDk1OThF
MiAvKiBNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzkyMzE0RTIzOUQ1RjUzMDA5NTk4RTIg
LyogTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllci5oICovOyB9OwogCQkwN0E1RUJC
QzFDN0JBNDNFMDBCOUNBNjkgLyogV0tGcmFtZUhhbmRsZVJlZi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdBNUVCQkExQzdCQTQzRTAwQjlDQTY5IC8q
IFdLRnJhbWVIYW5kbGVSZWYuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQkwN0IzQjQ3MDIzQUIzMDJEMDBCQTVCMTIgLyogUmVtb3RlTWVkaWFQbGF5
ZXJTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDdCM0I0NkYyM0FCMkNCMzAwQkE1QjEyIC8qIFJlbW90ZU1lZGlhUGxheWVyU3RhdGUuaCAqLzsg
fTsKKwkJMDdCOTNGRjYyM0FGMTIxNzAwMzZGOEVBIC8qIFJlbW90ZU1lZGlhUGxheWVyQ29uZmln
dXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDdCOTNGRjUyM0FGMENCODAwMzZGOEVBIC8qIFJlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlv
bi5oICovOyB9OwogCQkwRTk3RDc0RDIwMEU5MDA0MDBCRjY2NDMgLyogU2FmZUJyb3dzaW5nU1BJ
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRTk3RDc0
QzIwMEU4RkYzMDBCRjY2NDMgLyogU2FmZUJyb3dzaW5nU1BJLmggKi87IH07CiAJCTBFREU4NTAz
MjAwNEU3NUQwMDAzMDU2MCAvKiBXZWJzaXRlUG9wVXBQb2xpY3kuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBFREU4NTAyMjAwNEU3NDkwMDAzMDU2MCAv
KiBXZWJzaXRlUG9wVXBQb2xpY3kuaCAqLzsgfTsKIAkJMEYwOENGNTIxRDYzQzEzQTAwQjQ4REYx
IC8qIFdLRm9ybVNlbGVjdFBpY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMEYwOENGNTExRDYzQzEzQTAwQjQ4REYxIC8qIFdLRm9ybVNlbGVjdFBp
Y2tlci5oICovOyB9OwpAQCAtMjA2Nyw2ICsyMDY4LDcgQEAKIAkJMDdBNUVCQkExQzdCQTQzRTAw
QjlDQTY5IC8qIFdLRnJhbWVIYW5kbGVSZWYuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV0tGcmFtZUhhbmRsZVJlZi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkw
N0IzQjQ2RjIzQUIyQ0IzMDBCQTVCMTIgLyogUmVtb3RlTWVkaWFQbGF5ZXJTdGF0ZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZW1vdGVNZWRpYVBsYXllclN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTA3QjNCNDc1MjNBRDg5MDQwMEJBNUIxMiAvKiBSZW1vdGVNZWRpYVBsYXllclBy
b3h5Q29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdGVNZWRpYVBsYXllclByb3h5
Q29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0I5M0ZGNTIz
QUYwQ0I4MDAzNkY4RUEgLyogUmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkwN0JBRjM1NjIzQTJDQzE3MDA0NDI1N0UgLyogUmVtb3RlTWVkaWFQ
bGF5ZXJQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdGVNZWRpYVBsYXllclByb3h5Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3QkFGMzU3MjNBMkNDMTkwMDQ0MjU3RSAvKiBS
ZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbW90ZU1lZGlh
UGxheWVyUHJveHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwODY3RDZBNUZF
ODQwMzA3QzAyQUFDMDcgLyogQXBwS2l0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQXBw
S2l0LmZyYW1ld29yazsgcGF0aCA9IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FwcEtpdC5m
cmFtZXdvcms7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CkBAIC01MDk2LDYgKzUwOTgs
NyBAQAogCQkJCTA3OTIzMTMxMjM5QjNCMEMwMDk1OThFMiAvKiBNZWRpYVBsYXllclByaXZhdGVS
ZW1vdGUuY3BwICovLAogCQkJCTA3OTIzMTMyMjM5QjNCMEMwMDk1OThFMiAvKiBNZWRpYVBsYXll
clByaXZhdGVSZW1vdGUuaCAqLywKIAkJCQkwNzkyMzE0RTIzOUQ1RjUzMDA5NTk4RTIgLyogTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllci5oICovLAorCQkJCTA3QjkzRkY1MjNBRjBD
QjgwMDM2RjhFQSAvKiBSZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQkw
NzkyMzEzMDIzOUIzQjBDMDA5NTk4RTIgLyogUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyLmNwcCAq
LywKIAkJCQkwNzkyMzEzNDIzOUIzQjBDMDA5NTk4RTIgLyogUmVtb3RlTWVkaWFQbGF5ZXJNYW5h
Z2VyLmggKi8sCiAJCQkJMDc5MjMxMzMyMzlCM0IwQzAwOTU5OEUyIC8qIFJlbW90ZU1lZGlhUGxh
eWVyTWFuYWdlci5tZXNzYWdlcy5pbiAqLywKQEAgLTEwMTQ3LDYgKzEwMTUwLDcgQEAKIAkJCQkw
RkYyNjRBMDFBMUZGOUNDMDAxRkU3NTkgLyogUmVtb3RlTGF5ZXJUcmVlU2Nyb2xsaW5nUGVyZm9y
bWFuY2VEYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUYxQUM2QzE2NTE3NTlFMDBDMTdEN0Yg
LyogUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTJEQzE4
RkIzMjE4QTZFOUUwMDI1QTg4RCAvKiBSZW1vdGVMYXllclRyZWVWaWV3cy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMDdCOTNGRjYyM0FGMTIxNzAwMzZGOEVBIC8qIFJlbW90ZU1lZGlhUGxheWVyQ29u
ZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDc5MjMxNEQyMzlDQkNCODAwOTU5OEUy
IC8qIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkwNzkyMzE0QTIzOUNCQ0I4MDA5NTk4RTIgLyogUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyTWVz
c2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzkyMzE0QzIzOUNCQ0I4MDA5NTk4
RTIgLyogUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMg
Ki8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21l
ZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKaW5kZXggOGU0ODNlMDg2MGYxYzZhYTY1
NDJmOThkMWUyNTVjMWFkYzg5YzgzMC4uMTUzODZlY2RjNDg4OWMwZDc0ZWZkNzY1YTJkNjQ1ODRh
MDRiN2FjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9N
ZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcApAQCAtNTMsMTEgKzUzLDEy
IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogICAgIH0gXAogfSB3aGlsZSAoMCkKIAotTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGUoTWVkaWFQbGF5
ZXIqIHBsYXllciwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyIGVuZ2lu
ZUlkZW50aWZpZXIsIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgcGxheWVySWRl
bnRpZmllciwgUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyJiBtYW5hZ2VyKQorTWVkaWFQbGF5ZXJQ
cml2YXRlUmVtb3RlOjpNZWRpYVBsYXllclByaXZhdGVSZW1vdGUoTWVkaWFQbGF5ZXIqIHBsYXll
ciwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyIGVuZ2luZUlkZW50aWZp
ZXIsIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXIgcGxheWVySWRlbnRpZmllciwg
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyJiBtYW5hZ2VyLCBjb25zdCBSZW1vdGVNZWRpYVBsYXll
ckNvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24pCiAgICAgOiBtX3BsYXllcihwbGF5ZXIpCiAg
ICAgLCBtX21hbmFnZXIobWFuYWdlcikKICAgICAsIG1fcmVtb3RlRW5naW5lSWRlbnRpZmllcihl
bmdpbmVJZGVudGlmaWVyKQogICAgICwgbV9pZChwbGF5ZXJJZGVudGlmaWVyKQorICAgICwgbV9j
b25maWd1cmF0aW9uKGNvbmZpZ3VyYXRpb24pCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAg
ICAgLCBtX2xvZ2dlcigmcGxheWVyLT5tZWRpYVBsYXllckxvZ2dlcigpKQogICAgICwgbV9sb2dJ
ZGVudGlmaWVyKHBsYXllci0+bWVkaWFQbGF5ZXJMb2dJZGVudGlmaWVyKCkpCkBAIC0yNDIsNiAr
MjQzLDM2IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpjaGFyYWN0ZXJpc3RpY0No
YW5nZWQoYm9vbCBoYXNBdWRpbywgYm9vbCBoYXNWaWRlCiAgICAgbV9wbGF5ZXItPmNoYXJhY3Rl
cmlzdGljQ2hhbmdlZCgpOwogfQogCitTdHJpbmcgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpl
bmdpbmVEZXNjcmlwdGlvbigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5l
bmdpbmVEZXNjcmlwdGlvbjsKK30KKworYm9vbCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnN1
cHBvcnRzU2Nhbm5pbmcoKSBjb25zdAoreworICAgIHJldHVybiBtX2NvbmZpZ3VyYXRpb24uc3Vw
cG9ydHNTY2FubmluZzsKK30KKworYm9vbCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnN1cHBv
cnRzRnVsbHNjcmVlbigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5zdXBw
b3J0c0Z1bGxzY3JlZW47Cit9CisKK2Jvb2wgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpzdXBw
b3J0c1BpY3R1cmVJblBpY3R1cmUoKSBjb25zdAoreworICAgIHJldHVybiBtX2NvbmZpZ3VyYXRp
b24uc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlOworfQorCitib29sIE1lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZTo6c3VwcG9ydHNBY2NlbGVyYXRlZFJlbmRlcmluZygpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fY29uZmlndXJhdGlvbi5zdXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nOworfQorCiti
b29sIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6Y2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1Rh
cmdldCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5jYW5QbGF5VG9XaXJl
bGVzc1BsYXliYWNrVGFyZ2V0OworfQorCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6
dXBkYXRlQ2FjaGVkU3RhdGUoUmVtb3RlTWVkaWFQbGF5ZXJTdGF0ZSYmIHN0YXRlKQogewogICAg
IG1fY2FjaGVkU3RhdGUuY3VycmVudFRpbWUgPSBzdGF0ZS5jdXJyZW50VGltZTsKQEAgLTM0OSwy
NCArMzgwLDYgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnNldEJ1ZmZlcmluZ1Bv
bGljeShNZWRpYVBsYXllcjo6QnVmZmVyaW5nUG9saWN5KQogICAgIG5vdEltcGxlbWVudGVkKCk7
CiB9CiAKLWJvb2wgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpzdXBwb3J0c1BpY3R1cmVJblBp
Y3R1cmUoKSBjb25zdAotewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNl
OwotfQotCi1ib29sIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6c3VwcG9ydHNGdWxsc2NyZWVu
KCkgY29uc3QKLXsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBmYWxzZTsKLX0K
LQotYm9vbCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnN1cHBvcnRzU2Nhbm5pbmcoKSBjb25z
dAotewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCiBib29s
IE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6Y2FuU2F2ZU1lZGlhRGF0YSgpIGNvbnN0CiB7CiAg
ICAgbm90SW1wbGVtZW50ZWQoKTsKQEAgLTUyMSwxMiArNTM0LDYgQEAgdm9pZCBNZWRpYVBsYXll
clByaXZhdGVSZW1vdGU6OnNldFdpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKGJvb2wpCiAg
ICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotYm9vbCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6
OmNhblBsYXlUb1dpcmVsZXNzUGxheWJhY2tUYXJnZXQoKSBjb25zdAotewotICAgIG5vdEltcGxl
bWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCiBib29sIE1lZGlhUGxheWVyUHJpdmF0
ZVJlbW90ZTo6aXNDdXJyZW50UGxheWJhY2tUYXJnZXRXaXJlbGVzcygpIGNvbnN0CiB7CiAgICAg
bm90SW1wbGVtZW50ZWQoKTsKQEAgLTU1MiwxMiArNTU5LDYgQEAgYm9vbCBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGU6OmNhbkVudGVyRnVsbHNjcmVlbigpIGNvbnN0CiB9CiAjZW5kaWYKIAotYm9v
bCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OnN1cHBvcnRzQWNjZWxlcmF0ZWRSZW5kZXJpbmco
KSBjb25zdAotewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQot
CiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6YWNjZWxlcmF0ZWRSZW5kZXJpbmdTdGF0
ZUNoYW5nZWQoKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CkBAIC02MzIsMTIgKzYzMyw2IEBA
IHVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZTo6dmlkZW9EZWNvZGVkQnl0ZUNvdW50
KCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAotU3RyaW5nIE1lZGlhUGxheWVyUHJpdmF0ZVJl
bW90ZTo6ZW5naW5lRGVzY3JpcHRpb24oKSBjb25zdAotewotICAgIG5vdEltcGxlbWVudGVkKCk7
Ci0gICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7Ci19Ci0KICNpZiBFTkFCTEUoV0VCX0FVRElPKQog
QXVkaW9Tb3VyY2VQcm92aWRlciogTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjphdWRpb1NvdXJj
ZVByb3ZpZGVyKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCmluZGV4IGYwZDdhZmY1N2U3
NzVkNTY1OTgxMWEyZjc4MDZkYTYxZmE4Y2JkZDIuLjY4ODcyYWViY2YwZWUwZDk1YzFmNmE2YTc2
NjQwODdmMTBkYThmNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaApAQCAtMjcsNiArMjcs
NyBAQAogCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQogCisjaW5jbHVkZSAiUmVtb3RlTWVkaWFQ
bGF5ZXJDb25maWd1cmF0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2Vy
LmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJTdGF0ZS5oIgogI2luY2x1ZGUgPFdlYkNv
cmUvTWVkaWFQbGF5ZXJQcml2YXRlLmg+CkBAIC00NCwxMiArNDUsMTIgQEAgY2xhc3MgTWVkaWFQ
bGF5ZXJQcml2YXRlUmVtb3RlIGZpbmFsCiAjZW5kaWYKIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMg
c3RkOjp1bmlxdWVfcHRyPE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZT4gY3JlYXRlKE1lZGlhUGxh
eWVyKiBwbGF5ZXIsIE1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciByZW1v
dGVFbmdpbmVJZGVudGlmaWVyLCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlciYgbWFuYWdlcikKKyAgICBzdGF0aWMg
c3RkOjp1bmlxdWVfcHRyPE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZT4gY3JlYXRlKE1lZGlhUGxh
eWVyKiBwbGF5ZXIsIE1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciByZW1v
dGVFbmdpbmVJZGVudGlmaWVyLCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlciYgbWFuYWdlciwgY29uc3QgUmVtb3Rl
TWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogICAgIHsKLSAgICAgICAg
cmV0dXJuIG1ha2VVbmlxdWU8TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlPihwbGF5ZXIsIHJlbW90
ZUVuZ2luZUlkZW50aWZpZXIsIGlkZW50aWZpZXIsIG1hbmFnZXIpOworICAgICAgICByZXR1cm4g
bWFrZVVuaXF1ZTxNZWRpYVBsYXllclByaXZhdGVSZW1vdGU+KHBsYXllciwgcmVtb3RlRW5naW5l
SWRlbnRpZmllciwgaWRlbnRpZmllciwgbWFuYWdlciwgY29uZmlndXJhdGlvbik7CiAgICAgfQog
Ci0gICAgZXhwbGljaXQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlKE1lZGlhUGxheWVyKiwgTWVk
aWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyLCBNZWRpYVBsYXllclByaXZhdGVS
ZW1vdGVJZGVudGlmaWVyLCBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXImKTsKKyAgICBleHBsaWNp
dCBNZWRpYVBsYXllclByaXZhdGVSZW1vdGUoTWVkaWFQbGF5ZXIqLCBNZWRpYVBsYXllckVudW1z
OjpNZWRpYUVuZ2luZUlkZW50aWZpZXIsIE1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZp
ZXIsIFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlciYsIGNvbnN0IFJlbW90ZU1lZGlhUGxheWVyQ29u
ZmlndXJhdGlvbiYpOwogICAgIHZpcnR1YWwgfk1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZSgpOwog
CiAgICAgdm9pZCBpbnZhbGlkYXRlKCkgeyBtX2ludmFsaWQgPSB0cnVlOyB9CkBAIC0yOTYsNiAr
Mjk3LDcgQEAgcHJpdmF0ZToKICAgICBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXIgbV9tYW5hZ2Vy
OwogICAgIE1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllciBtX3JlbW90ZUVu
Z2luZUlkZW50aWZpZXI7CiAgICAgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlSWRlbnRpZmllciBt
X2lkOworICAgIFJlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlvbiBtX2NvbmZpZ3VyYXRpb247
CiAKICAgICBSZW1vdGVNZWRpYVBsYXllclN0YXRlIG1fY2FjaGVkU3RhdGU7CiAgICAgc3RkOjp1
bmlxdWVfcHRyPFBsYXRmb3JtVGltZVJhbmdlcz4gbV9jYWNoZWRCdWZmZXJlZFRpbWVSYW5nZXM7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZU1l
ZGlhUGxheWVyQ29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9SZW1vdGVNZWRpYVBsYXllckNvbmZpZ3VyYXRpb24uaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMTZjNzdh
YTM3Y2QzZjJkYzJiZTdlODVhYWZkNzJhMGM3ZTYyNTlkCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVNZWRpYVBsYXllckNvbmZpZ3Vy
YXRpb24uaApAQCAtMCwwICsxLDEwMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorCisjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVBsYXllckVu
dW1zLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVRpbWVSYW5nZXMuaD4KKyNpbmNsdWRl
IDx3dGYvTWVkaWFUaW1lLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdHJ1Y3QgUmVtb3Rl
TWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uIHsKKyAgICBTdHJpbmcgZW5naW5lRGVzY3JpcHRpb247
CisgICAgYm9vbCBzdXBwb3J0c1NjYW5uaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIHN1cHBvcnRz
RnVsbHNjcmVlbiB7IGZhbHNlIH07CisgICAgYm9vbCBzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUg
eyBmYWxzZSB9OworICAgIGJvb2wgc3VwcG9ydHNBY2NlbGVyYXRlZFJlbmRlcmluZyB7IGZhbHNl
IH07CisgICAgYm9vbCBjYW5QbGF5VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0IHsgZmFsc2UgfTsK
KworICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+CisgICAgdm9pZCBlbmNvZGUoRW5jb2RlciYg
ZW5jb2RlcikgY29uc3QKKyAgICB7CisgICAgICAgIGVuY29kZXIgPDwgZW5naW5lRGVzY3JpcHRp
b247CisgICAgICAgIGVuY29kZXIgPDwgc3VwcG9ydHNTY2FubmluZzsKKyAgICAgICAgZW5jb2Rl
ciA8PCBzdXBwb3J0c0Z1bGxzY3JlZW47CisgICAgICAgIGVuY29kZXIgPDwgc3VwcG9ydHNQaWN0
dXJlSW5QaWN0dXJlOworICAgICAgICBlbmNvZGVyIDw8IHN1cHBvcnRzQWNjZWxlcmF0ZWRSZW5k
ZXJpbmc7CisgICAgICAgIGVuY29kZXIgPDwgY2FuUGxheVRvV2lyZWxlc3NQbGF5YmFja1Rhcmdl
dDsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZSA8Y2xhc3MgRGVjb2Rlcj4KKyAgICBzdGF0aWMgT3B0
aW9uYWw8UmVtb3RlTWVkaWFQbGF5ZXJDb25maWd1cmF0aW9uPiBkZWNvZGUoRGVjb2RlciYgZGVj
b2RlcikKKyAgICB7CisgICAgICAgIE9wdGlvbmFsPFN0cmluZz4gZW5naW5lRGVzY3JpcHRpb247
CisgICAgICAgIGRlY29kZXIgPj4gZW5naW5lRGVzY3JpcHRpb247CisgICAgICAgIGlmICghZW5n
aW5lRGVzY3JpcHRpb24pCisgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAg
ICAgIE9wdGlvbmFsPGJvb2w+IHN1cHBvcnRzU2Nhbm5pbmc7CisgICAgICAgIGRlY29kZXIgPj4g
c3VwcG9ydHNTY2FubmluZzsKKyAgICAgICAgaWYgKCFzdXBwb3J0c1NjYW5uaW5nKQorICAgICAg
ICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgICAgICBPcHRpb25hbDxib29sPiBzdXBw
b3J0c0Z1bGxzY3JlZW47CisgICAgICAgIGRlY29kZXIgPj4gc3VwcG9ydHNGdWxsc2NyZWVuOwor
ICAgICAgICBpZiAoIXN1cHBvcnRzRnVsbHNjcmVlbikKKyAgICAgICAgICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7CisKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gc3VwcG9ydHNQaWN0dXJlSW5QaWN0
dXJlOworICAgICAgICBkZWNvZGVyID4+IHN1cHBvcnRzUGljdHVyZUluUGljdHVyZTsKKyAgICAg
ICAgaWYgKCFzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUpCisgICAgICAgICAgICByZXR1cm4gV1RG
OjpudWxsb3B0OworCisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHN1cHBvcnRzQWNjZWxlcmF0ZWRS
ZW5kZXJpbmc7CisgICAgICAgIGRlY29kZXIgPj4gc3VwcG9ydHNBY2NlbGVyYXRlZFJlbmRlcmlu
ZzsKKyAgICAgICAgaWYgKCFzdXBwb3J0c0FjY2VsZXJhdGVkUmVuZGVyaW5nKQorICAgICAgICAg
ICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgICAgICBPcHRpb25hbDxib29sPiBjYW5QbGF5
VG9XaXJlbGVzc1BsYXliYWNrVGFyZ2V0OworICAgICAgICBkZWNvZGVyID4+IGNhblBsYXlUb1dp
cmVsZXNzUGxheWJhY2tUYXJnZXQ7CisgICAgICAgIGlmICghY2FuUGxheVRvV2lyZWxlc3NQbGF5
YmFja1RhcmdldCkKKyAgICAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICAgICAg
cmV0dXJuIHt7CisgICAgICAgICAgICBXVEZNb3ZlKCplbmdpbmVEZXNjcmlwdGlvbiksCisgICAg
ICAgICAgICBXVEZNb3ZlKCpzdXBwb3J0c1NjYW5uaW5nKSwKKyAgICAgICAgICAgIFdURk1vdmUo
KnN1cHBvcnRzUGljdHVyZUluUGljdHVyZSksCisgICAgICAgICAgICBXVEZNb3ZlKCpzdXBwb3J0
c0FjY2VsZXJhdGVkUmVuZGVyaW5nKSwKKyAgICAgICAgICAgIFdURk1vdmUoKmNhblBsYXlUb1dp
cmVsZXNzUGxheWJhY2tUYXJnZXQpLAorICAgICAgICB9fTsKKyAgICB9Cit9OworCit9CisKKyNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1v
dGVNZWRpYVBsYXllck1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9SZW1vdGVNZWRpYVBsYXllck1hbmFnZXIuY3BwCmluZGV4IGNkNDE3ZDg4NGI5ZDY0MmIw
MDBlY2U2NGIzYTMxYmRhNzU5Y2YyZGIuLjk4YjExODk2MmQ1YTE3NTUxNjdhOWM0YjcyMWQ2N2M3
OWJkNWM5MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZU1lZGlhUGxheWVyTWFuYWdlci5jcHAKQEAgLTI4LDYgKzI4LDcg
QEAKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAorI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxh
eWVyQ29uZmlndXJhdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlck1l
c3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlTWVkaWFQbGF5ZXJNYW5hZ2VyUHJveHlNZXNzYWdl
cy5oIgogI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyUHJveHlDb25maWd1cmF0aW9uLmgiCkBA
IC0xMTYsMjkgKzExNywyOSBAQCBzdGQ6OnVuaXF1ZV9wdHI8TWVkaWFQbGF5ZXJQcml2YXRlSW50
ZXJmYWNlPiBSZW1vdGVNZWRpYVBsYXllck1hbmFnZXI6OmNyZWF0ZVJlbQogewogICAgIGF1dG8g
aWQgPSBNZWRpYVBsYXllclByaXZhdGVSZW1vdGVJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogCi0g
ICAgUmVtb3RlTWVkaWFQbGF5ZXJQcm94eUNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbjsKLSAg
ICBjb25maWd1cmF0aW9uLm1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkgPSBwbGF5ZXItPm1lZGlh
S2V5c1N0b3JhZ2VEaXJlY3RvcnkoKTsKLSAgICBjb25maWd1cmF0aW9uLnJlZmVycmVyID0gcGxh
eWVyLT5yZWZlcnJlcigpOwotICAgIGNvbmZpZ3VyYXRpb24udXNlckFnZW50ID0gcGxheWVyLT51
c2VyQWdlbnQoKTsKLSAgICBjb25maWd1cmF0aW9uLnNvdXJjZUFwcGxpY2F0aW9uSWRlbnRpZmll
ciA9IHBsYXllci0+c291cmNlQXBwbGljYXRpb25JZGVudGlmaWVyKCk7CisgICAgUmVtb3RlTWVk
aWFQbGF5ZXJQcm94eUNvbmZpZ3VyYXRpb24gcHJveHlDb25maWd1cmF0aW9uOworICAgIHByb3h5
Q29uZmlndXJhdGlvbi5tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5ID0gcGxheWVyLT5tZWRpYUtl
eXNTdG9yYWdlRGlyZWN0b3J5KCk7CisgICAgcHJveHlDb25maWd1cmF0aW9uLnJlZmVycmVyID0g
cGxheWVyLT5yZWZlcnJlcigpOworICAgIHByb3h5Q29uZmlndXJhdGlvbi51c2VyQWdlbnQgPSBw
bGF5ZXItPnVzZXJBZ2VudCgpOworICAgIHByb3h5Q29uZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNh
dGlvbklkZW50aWZpZXIgPSBwbGF5ZXItPnNvdXJjZUFwcGxpY2F0aW9uSWRlbnRpZmllcigpOwog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgY29uZmlndXJhdGlvbi5uZXR3b3JrSW50ZXJm
YWNlTmFtZSA9IHBsYXllci0+bWVkaWFQbGF5ZXJOZXR3b3JrSW50ZXJmYWNlTmFtZSgpOworICAg
IHByb3h5Q29uZmlndXJhdGlvbi5uZXR3b3JrSW50ZXJmYWNlTmFtZSA9IHBsYXllci0+bWVkaWFQ
bGF5ZXJOZXR3b3JrSW50ZXJmYWNlTmFtZSgpOwogI2VuZGlmCi0gICAgY29uZmlndXJhdGlvbi5t
ZWRpYUNhY2hlRGlyZWN0b3J5ID0gcGxheWVyLT5tZWRpYUNhY2hlRGlyZWN0b3J5KCk7Ci0gICAg
Y29uZmlndXJhdGlvbi5tZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydCA9
IHBsYXllci0+bWVkaWFDb250ZW50VHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQoKTsKLSAg
ICBjb25maWd1cmF0aW9uLnByZWZlcnJlZEF1ZGlvQ2hhcmFjdGVyaXN0aWNzID0gcGxheWVyLT5w
cmVmZXJyZWRBdWRpb0NoYXJhY3RlcmlzdGljcygpOwotICAgIGNvbmZpZ3VyYXRpb24ubG9nSWRl
bnRpZmllciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDY0X3Q+KHBsYXllci0+bWVkaWFQbGF5ZXJM
b2dJZGVudGlmaWVyKCkpOwotICAgIGNvbmZpZ3VyYXRpb24uc2hvdWxkVXNlUGVyc2lzdGVudENh
Y2hlID0gcGxheWVyLT5zaG91bGRVc2VQZXJzaXN0ZW50Q2FjaGUoKTsKLSAgICBjb25maWd1cmF0
aW9uLmlzVmlkZW8gPSBwbGF5ZXItPmlzVmlkZW9QbGF5ZXIoKTsKLQotICAgIGJvb2wgaGF2ZVJl
bW90ZVByb3h5OwotICAgIGJvb2wgc2VuZFN1Y2NlZWRlZCA9IGdwdVByb2Nlc3NDb25uZWN0aW9u
KCkuc2VuZFN5bmMoTWVzc2FnZXM6OlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5OjpDcmVh
dGVNZWRpYVBsYXllcihpZCwgcmVtb3RlRW5naW5lSWRlbnRpZmllciwgY29uZmlndXJhdGlvbiks
IE1lc3NhZ2VzOjpSZW1vdGVNZWRpYVBsYXllck1hbmFnZXJQcm94eTo6Q3JlYXRlTWVkaWFQbGF5
ZXI6OlJlcGx5KGhhdmVSZW1vdGVQcm94eSksIDApOwotICAgIGlmICghaGF2ZVJlbW90ZVByb3h5
IHx8ICFzZW5kU3VjY2VlZGVkKSB7CisgICAgcHJveHlDb25maWd1cmF0aW9uLm1lZGlhQ2FjaGVE
aXJlY3RvcnkgPSBwbGF5ZXItPm1lZGlhQ2FjaGVEaXJlY3RvcnkoKTsKKyAgICBwcm94eUNvbmZp
Z3VyYXRpb24ubWVkaWFDb250ZW50VHlwZXNSZXF1aXJpbmdIYXJkd2FyZVN1cHBvcnQgPSBwbGF5
ZXItPm1lZGlhQ29udGVudFR5cGVzUmVxdWlyaW5nSGFyZHdhcmVTdXBwb3J0KCk7CisgICAgcHJv
eHlDb25maWd1cmF0aW9uLnByZWZlcnJlZEF1ZGlvQ2hhcmFjdGVyaXN0aWNzID0gcGxheWVyLT5w
cmVmZXJyZWRBdWRpb0NoYXJhY3RlcmlzdGljcygpOworICAgIHByb3h5Q29uZmlndXJhdGlvbi5s
b2dJZGVudGlmaWVyID0gcmVpbnRlcnByZXRfY2FzdDx1aW50NjRfdD4ocGxheWVyLT5tZWRpYVBs
YXllckxvZ0lkZW50aWZpZXIoKSk7CisgICAgcHJveHlDb25maWd1cmF0aW9uLnNob3VsZFVzZVBl
cnNpc3RlbnRDYWNoZSA9IHBsYXllci0+c2hvdWxkVXNlUGVyc2lzdGVudENhY2hlKCk7CisgICAg
cHJveHlDb25maWd1cmF0aW9uLmlzVmlkZW8gPSBwbGF5ZXItPmlzVmlkZW9QbGF5ZXIoKTsKKwor
ICAgIFJlbW90ZU1lZGlhUGxheWVyQ29uZmlndXJhdGlvbiBwbGF5ZXJDb25maWd1cmF0aW9uOwor
ICAgIGJvb2wgc2VuZFN1Y2NlZWRlZCA9IGdwdVByb2Nlc3NDb25uZWN0aW9uKCkuc2VuZFN5bmMo
TWVzc2FnZXM6OlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5OjpDcmVhdGVNZWRpYVBsYXll
cihpZCwgcmVtb3RlRW5naW5lSWRlbnRpZmllciwgcHJveHlDb25maWd1cmF0aW9uKSwgTWVzc2Fn
ZXM6OlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlclByb3h5OjpDcmVhdGVNZWRpYVBsYXllcjo6UmVw
bHkocGxheWVyQ29uZmlndXJhdGlvbiksIDApOworICAgIGlmICghc2VuZFN1Y2NlZWRlZCkgewog
ICAgICAgICBXVEZMb2dBbHdheXMoIkZhaWxlZCB0byBjcmVhdGUgcmVtb3RlIG1lZGlhIHBsYXll
ci4iKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAgYXV0byByZW1vdGVQ
bGF5ZXIgPSBNZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmNyZWF0ZShwbGF5ZXIsIHJlbW90ZUVu
Z2luZUlkZW50aWZpZXIsIGlkLCAqdGhpcyk7CisgICAgYXV0byByZW1vdGVQbGF5ZXIgPSBNZWRp
YVBsYXllclByaXZhdGVSZW1vdGU6OmNyZWF0ZShwbGF5ZXIsIHJlbW90ZUVuZ2luZUlkZW50aWZp
ZXIsIGlkLCAqdGhpcywgcGxheWVyQ29uZmlndXJhdGlvbik7CiAgICAgbV9wbGF5ZXJzLmFkZChp
ZCwgbWFrZVdlYWtQdHIoKnJlbW90ZVBsYXllcikpOwogICAgIHJldHVybiByZW1vdGVQbGF5ZXI7
CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>