<?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>163888</bug_id>
          
          <creation_ts>2016-10-24 07:02:33 -0700</creation_ts>
          <short_desc>MediaEndpointConfiguration does not need to be refcounted</short_desc>
          <delta_ts>2016-10-25 08:05:32 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit 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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>adam.bergkvist</cc>
    
    <cc>alex</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>pnormand</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1243689</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-10-24 07:02:33 -0700</bug_when>
    <thetext>Move operations should be sufficient</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1243690</commentid>
    <comment_count>1</comment_count>
      <attachid>292607</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-10-24 07:10:17 -0700</bug_when>
    <thetext>Created attachment 292607
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1243710</commentid>
    <comment_count>2</comment_count>
      <attachid>292607</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-10-24 08:37:53 -0700</bug_when>
    <thetext>Comment on attachment 292607
Patch

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

&gt; Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.cpp:629
&gt; +    m_mediaEndpoint-&gt;setConfiguration({ WTFMove(iceServers), configuration.iceTransportPolicy(), configuration.bundlePolicy() });

You may need to add a IceServerInfo constructor because some of the linux bots still use GCC 4.9 (if it fails, it won&apos;t be caught by the EWS bots). See the comments in bug163255 and bug162147.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1243894</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-10-24 14:44:50 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 292607 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=292607&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.cpp:629
&gt; &gt; +    m_mediaEndpoint-&gt;setConfiguration({ WTFMove(iceServers), configuration.iceTransportPolicy(), configuration.bundlePolicy() });
&gt; 
&gt; You may need to add a IceServerInfo constructor because some of the linux
&gt; bots still use GCC 4.9 (if it fails, it won&apos;t be caught by the EWS bots).
&gt; See the comments in bug163255 and bug162147.

Thanks for the pointer, I will update the patch accordingly at landing time or in a future version.
I was waiting for the GTK bot before marking patch as r? but it seems gtk bot has some issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1244163</commentid>
    <comment_count>4</comment_count>
      <attachid>292741</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-10-25 03:01:04 -0700</bug_when>
    <thetext>Created attachment 292741
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1244174</commentid>
    <comment_count>5</comment_count>
      <attachid>292745</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-10-25 05:01:51 -0700</bug_when>
    <thetext>Created attachment 292745
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1244195</commentid>
    <comment_count>6</comment_count>
      <attachid>292745</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-25 08:05:28 -0700</bug_when>
    <thetext>Comment on attachment 292745
Patch

Clearing flags on attachment: 292745

Committed r207818: &lt;http://trac.webkit.org/changeset/207818&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1244196</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-25 08:05:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>292607</attachid>
            <date>2016-10-24 07:10:17 -0700</date>
            <delta_ts>2016-10-25 03:00:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163888-20161024160632.patch</filename>
            <type>text/plain</type>
            <size>16071</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3NzM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWZlMGFkY2Y3MzQ5YTcx
MjhjMDQxYmJmNjcyNjkzZDgxOGM0YTE0ZC4uNDFiOTliM2Y0MTYxZWNlZDAwNmRmZjAzOTUzOWZj
YTNlNjdkOWFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM1IEBACiAyMDE2LTEwLTI0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAorICAgICAgICBNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbiBkb2VzIG5vdCBuZWVkIHRvIGJlIHJlZmNvdW50ZWQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mzg4OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBvZiBiZWhhdmlvci4K
KworICAgICAgICBVcGRhdGluZyBNZWRpYUVuZHBvaW50IHRvIHRha2UgYSBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbiYmIGluc3RlYWQgb2YgYSBSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3Vy
YXRpb24+JiYuCisgICAgICAgIFRoaXMgYWxsb3dzIGVuc3VyaW5nIHRoYXQgdGhlIGNvbmZpZ3Vy
YXRpb24gaXMgbm90IG51bGwgYW5kIHJlbW92ZXMgdGhlIG5lZWQgdG8gcmVmLWNvdW50IGl0Lgor
CisgICAgICAgIFJlbW92aW5nIHJlZi1jb3VudGluZyBmcm9tIE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uIGFuZCBpdHMgcmVsYXRlZCBJY2VTZXJ2ZXIgdGhhdCBpcyBub3cgYSBzdHJ1Y3QuCisg
ICAgICAgIFVwZGF0ZWQgTWVkaWFFbmRwb2ludE93ciBhbmQgbW9jayBpbXBsZW1lbnRhdGlvbnMg
YWNjb3JkaW5nbHkuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9p
bnRQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50UGVl
ckNvbm5lY3Rpb246OnNldENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFt
L01lZGlhRW5kcG9pbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbjo6TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmg6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6aWNlU2VydmVycyk6CisgICAg
ICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludE93cjo6ZW5zdXJlVHJhbnNwb3J0QWdl
bnRBbmRUcmFuc2NlaXZlcnMpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53
ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01l
ZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9p
bnQuaDoKKworMjAxNi0xMC0yNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisK
ICAgICAgICAgQWN0aXZhdGUgV0VCX1JUQyBjb21waWxhdGlvbiBmbGFncyBmb3IgTWFjIGJvdHMK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mzg4Ngog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5k
cG9pbnRQZWVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL01lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbi5jcHAKaW5kZXggM2NlM2YyOTA4ZmJiMDll
NmVlNThjNDc0NDMyMzZmYjQzZDhlYjc2Ni4uOGJkMzRhMjZiYzA0MTYwMWYxMzM4NzQ1MzhjZTNk
MmM1ODcwOGRjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uLmNwcApAQCAtNjE0
LDExICs2MTQsMTkgQEAgUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlwdGlvbj4gTWVkaWFFbmRwb2lu
dFBlZXJDb25uZWN0aW9uOjpwZW5kaW5nUmVtb3RlRGVzY3JpcHQKIAogdm9pZCBNZWRpYUVuZHBv
aW50UGVlckNvbm5lY3Rpb246OnNldENvbmZpZ3VyYXRpb24oUlRDQ29uZmlndXJhdGlvbiYgY29u
ZmlndXJhdGlvbikKIHsKLSAgICBWZWN0b3I8UmVmUHRyPEljZVNlcnZlckluZm8+PiBpY2VTZXJ2
ZXJzOwotICAgIGZvciAoYXV0byYgc2VydmVyIDogY29uZmlndXJhdGlvbi5pY2VTZXJ2ZXJzKCkp
Ci0gICAgICAgIGljZVNlcnZlcnMuYXBwZW5kKEljZVNlcnZlckluZm86OmNyZWF0ZShzZXJ2ZXIt
PnVybHMoKSwgc2VydmVyLT5jcmVkZW50aWFsKCksIHNlcnZlci0+dXNlcm5hbWUoKSkpOworICAg
IFZlY3RvcjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6SWNlU2VydmVySW5mbz4gaWNlU2Vy
dmVyczsKKyAgICBpZiAoY29uZmlndXJhdGlvbi5pY2VTZXJ2ZXJzKCkuc2l6ZSgpKSB7CisgICAg
ICAgIGljZVNlcnZlcnMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjb25maWd1cmF0aW9uLmljZVNl
cnZlcnMoKS5zaXplKCkpOworICAgICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IGNvbmZpZ3VyYXRp
b24uaWNlU2VydmVycygpKSB7CisgICAgICAgICAgICBWZWN0b3I8VVJMPiB1cmxzOworICAgICAg
ICAgICAgdXJscy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHNlcnZlci0+dXJscygpLnNpemUoKSk7
CisgICAgICAgICAgICBmb3IgKGF1dG8mIHVybCA6IHNlcnZlci0+dXJscygpKQorICAgICAgICAg
ICAgICAgIHVybHMudW5jaGVja2VkQXBwZW5kKFVSTChVUkwoKSwgdXJsKSk7CisgICAgICAgICAg
ICBpY2VTZXJ2ZXJzLnVuY2hlY2tlZEFwcGVuZChNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6
SWNlU2VydmVySW5mbyB7IFdURk1vdmUodXJscyksIHNlcnZlci0+Y3JlZGVudGlhbCgpLCBzZXJ2
ZXItPnVzZXJuYW1lKCkgfSk7CisgICAgICAgIH0KKyAgICB9CiAKLSAgICBtX21lZGlhRW5kcG9p
bnQtPnNldENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb246OmNyZWF0ZShp
Y2VTZXJ2ZXJzLCBjb25maWd1cmF0aW9uLmljZVRyYW5zcG9ydFBvbGljeSgpLCBjb25maWd1cmF0
aW9uLmJ1bmRsZVBvbGljeSgpKSk7CisgICAgbV9tZWRpYUVuZHBvaW50LT5zZXRDb25maWd1cmF0
aW9uKHsgV1RGTW92ZShpY2VTZXJ2ZXJzKSwgY29uZmlndXJhdGlvbi5pY2VUcmFuc3BvcnRQb2xp
Y3koKSwgY29uZmlndXJhdGlvbi5idW5kbGVQb2xpY3koKSB9KTsKIH0KIAogdm9pZCBNZWRpYUVu
ZHBvaW50UGVlckNvbm5lY3Rpb246OmFkZEljZUNhbmRpZGF0ZShSVENJY2VDYW5kaWRhdGUmIHJ0
Y0NhbmRpZGF0ZSwgUGVlckNvbm5lY3Rpb246OlZvaWRQcm9taXNlJiYgcHJvbWlzZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5j
cHAKaW5kZXggY2RhZmM0NThhOGE4ZWE0MjVhM2RiMjIzMGRmYmJkYWEzNjFiMTJiOS4uZjRlYTg4
NGJmNDhhODU5OWUwYjgyMDI5NmVlNzVmYTYxMjU3YjE0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHAKQEAgLTU3LDcg
KzU3LDcgQEAgY2xhc3MgRW1wdHlNZWRpYUVuZHBvaW50IDogcHVibGljIE1lZGlhRW5kcG9pbnQg
ewogcHVibGljOgogICAgIEVtcHR5TWVkaWFFbmRwb2ludChNZWRpYUVuZHBvaW50Q2xpZW50Jikg
eyB9CiAKLSAgICB2b2lkIHNldENvbmZpZ3VyYXRpb24oUmVmUHRyPE1lZGlhRW5kcG9pbnRDb25m
aWd1cmF0aW9uPiYmKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIHNldENvbmZpZ3VyYXRpb24oTWVk
aWFFbmRwb2ludENvbmZpZ3VyYXRpb24mJikgb3ZlcnJpZGUgeyB9CiAKICAgICB2b2lkIGdlbmVy
YXRlRHRsc0luZm8oKSBvdmVycmlkZSB7IH0KICAgICBNZWRpYVBheWxvYWRWZWN0b3IgZ2V0RGVm
YXVsdEF1ZGlvUGF5bG9hZHMoKSBvdmVycmlkZSB7IHJldHVybiBNZWRpYVBheWxvYWRWZWN0b3Io
KTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVk
aWFFbmRwb2ludC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFF
bmRwb2ludC5oCmluZGV4IGRmNDI1NTVjMjQ1YTAyYjNhM2RhYzc4YmVhYmU1MjEwNzE4NjlmN2Mu
LjBjMWEzYmFmMzM5MWVjNmYzOTM1ZGM0NWRmMjcwMjE5N2E5YzliMjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmgKQEAgLTYz
LDcgKzYzLDcgQEAgcHVibGljOgogCiAgICAgdXNpbmcgSWNlVHJhbnNwb3J0U3RhdGUgPSBQZWVy
Q29ubmVjdGlvblN0YXRlczo6SWNlVHJhbnNwb3J0U3RhdGU7CiAKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0Q29uZmlndXJhdGlvbihSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0Q29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50Q29uZmln
dXJhdGlvbiYmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygpID0g
MDsKICAgICB2aXJ0dWFsIE1lZGlhUGF5bG9hZFZlY3RvciBnZXREZWZhdWx0QXVkaW9QYXlsb2Fk
cygpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmNwcAppbmRleCBkZDBkODZl
MDM5YjA5NzA0Y2NmNzhhYWY0ZTdmYjFmZTU4MmQ4NDIxLi42YTU1NTA0MWVkMjIzODA1MWE3Y2Q1
NjQzM2YwYzNkOGJhMzMzOTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uY3Bw
CkBAIC0zNSwxNyArMzUsOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUljZVNlcnZlcklu
Zm86OkljZVNlcnZlckluZm8oY29uc3QgVmVjdG9yPFN0cmluZz4mIHVybHMsIGNvbnN0IFN0cmlu
ZyYgY3JlZGVudGlhbCwgY29uc3QgU3RyaW5nJiB1c2VybmFtZSkKLSAgICA6IG1fY3JlZGVudGlh
bChjcmVkZW50aWFsKQotICAgICwgbV91c2VybmFtZSh1c2VybmFtZSkKLXsKLSAgICBtX3VybHMu
cmVzZXJ2ZUNhcGFjaXR5KHVybHMuc2l6ZSgpKTsKLSAgICBmb3IgKGF1dG8mIHVybCA6IHVybHMp
Ci0gICAgICAgIG1fdXJscy5hcHBlbmQoVVJMKFVSTCgpLCB1cmwpKTsKLX0KLQotTWVkaWFFbmRw
b2ludENvbmZpZ3VyYXRpb246Ok1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uKFZlY3RvcjxSZWZQ
dHI8SWNlU2VydmVySW5mbz4+JiBpY2VTZXJ2ZXJzLCBJY2VUcmFuc3BvcnRQb2xpY3kgaWNlVHJh
bnNwb3J0UG9saWN5LCBCdW5kbGVQb2xpY3kgYnVuZGxlUG9saWN5KQotICAgIDogbV9pY2VTZXJ2
ZXJzKGljZVNlcnZlcnMpCitNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6TWVkaWFFbmRwb2lu
dENvbmZpZ3VyYXRpb24oVmVjdG9yPEljZVNlcnZlckluZm8+JiYgaWNlU2VydmVycywgSWNlVHJh
bnNwb3J0UG9saWN5IGljZVRyYW5zcG9ydFBvbGljeSwgQnVuZGxlUG9saWN5IGJ1bmRsZVBvbGlj
eSkKKyAgICA6IG1faWNlU2VydmVycyhXVEZNb3ZlKGljZVNlcnZlcnMpKQogICAgICwgbV9pY2VU
cmFuc3BvcnRQb2xpY3koaWNlVHJhbnNwb3J0UG9saWN5KQogICAgICwgbV9idW5kbGVQb2xpY3ko
YnVuZGxlUG9saWN5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmgKaW5kZXggMDlh
NDU3ZDc0ZDRlMWZkMTUxNjlkZmUzNzViMmRhMjRlNzkyNjMxNy4uYzIwMGM2YjgyOTE5YmYyYWVj
ODEyNzIyZjhiNzkxZmI3MDJkYzE4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5o
CkBAIC0yOCw1OCArMjgsMzYgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBNZWRp
YUVuZHBvaW50Q29uZmlndXJhdGlvbl9oCi0jZGVmaW5lIE1lZGlhRW5kcG9pbnRDb25maWd1cmF0
aW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaWYgRU5BQkxFKFdFQl9SVEMpCiAKICNpbmNsdWRlICJQ
ZWVyQ29ubmVjdGlvblN0YXRlcy5oIgogI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0
b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1jbGFzcyBJY2VTZXJ2ZXJJbmZvIDogcHVibGljIFJlZkNvdW50ZWQ8SWNlU2VydmVy
SW5mbz4geworY2xhc3MgTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24gewogcHVibGljOgotICAg
IHN0YXRpYyBSZWZQdHI8SWNlU2VydmVySW5mbz4gY3JlYXRlKGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiB1cmxzLCBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwsIGNvbnN0IFN0cmluZyYgdXNlcm5hbWUp
Ci0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEljZVNlcnZlckluZm8odXJscywg
Y3JlZGVudGlhbCwgdXNlcm5hbWUpKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SWNlU2VydmVySW5m
bygpIHsgfQorICAgIHN0cnVjdCBJY2VTZXJ2ZXJJbmZvIHsKKyAgICAgICAgVmVjdG9yPFVSTD4g
bV91cmxzOworICAgICAgICBTdHJpbmcgbV9jcmVkZW50aWFsOworICAgICAgICBTdHJpbmcgbV91
c2VybmFtZTsKKyAgICB9OwogCi0gICAgY29uc3QgVmVjdG9yPFVSTD4mIHVybHMoKSBjb25zdCB7
IHJldHVybiBtX3VybHM7IH0KLSAgICBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwoKSBjb25zdCB7
IHJldHVybiBtX2NyZWRlbnRpYWw7IH0KLSAgICBjb25zdCBTdHJpbmcmIHVzZXJuYW1lKCkgY29u
c3QgeyByZXR1cm4gbV91c2VybmFtZTsgfQotCi1wcml2YXRlOgotICAgIEljZVNlcnZlckluZm8o
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHVybHMsIGNvbnN0IFN0cmluZyYgY3JlZGVudGlhbCwgY29u
c3QgU3RyaW5nJiB1c2VybmFtZSk7Ci0KLSAgICBWZWN0b3I8VVJMPiBtX3VybHM7Ci0gICAgU3Ry
aW5nIG1fY3JlZGVudGlhbDsKLSAgICBTdHJpbmcgbV91c2VybmFtZTsKLX07Ci0KLWNsYXNzIE1l
ZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFFbmRwb2lu
dENvbmZpZ3VyYXRpb24+IHsKLXB1YmxpYzoKICAgICB1c2luZyBJY2VUcmFuc3BvcnRQb2xpY3kg
PSBQZWVyQ29ubmVjdGlvblN0YXRlczo6SWNlVHJhbnNwb3J0UG9saWN5OwogICAgIHVzaW5nIEJ1
bmRsZVBvbGljeSA9IFBlZXJDb25uZWN0aW9uU3RhdGVzOjpCdW5kbGVQb2xpY3k7CiAKLSAgICBz
dGF0aWMgUmVmUHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiBjcmVhdGUoVmVjdG9yPFJl
ZlB0cjxJY2VTZXJ2ZXJJbmZvPj4mIGljZVNlcnZlcnMsIEljZVRyYW5zcG9ydFBvbGljeSBpY2VU
cmFuc3BvcnRQb2xpY3ksIEJ1bmRsZVBvbGljeSBidW5kbGVQb2xpY3kpCi0gICAgewotICAgICAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uKGljZVNlcnZl
cnMsIGljZVRyYW5zcG9ydFBvbGljeSwgYnVuZGxlUG9saWN5KSk7Ci0gICAgfQorICAgIE1lZGlh
RW5kcG9pbnRDb25maWd1cmF0aW9uKFZlY3RvcjxJY2VTZXJ2ZXJJbmZvPiYmLCBJY2VUcmFuc3Bv
cnRQb2xpY3ksIEJ1bmRsZVBvbGljeSk7CiAKLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEljZVNl
cnZlckluZm8+PiYgaWNlU2VydmVycygpIGNvbnN0IHsgcmV0dXJuIG1faWNlU2VydmVyczsgfQor
ICAgIGNvbnN0IFZlY3RvcjxJY2VTZXJ2ZXJJbmZvPiYgaWNlU2VydmVycygpIGNvbnN0IHsgcmV0
dXJuIG1faWNlU2VydmVyczsgfQogICAgIEljZVRyYW5zcG9ydFBvbGljeSBpY2VUcmFuc3BvcnRQ
b2xpY3koKSBjb25zdCB7IHJldHVybiBtX2ljZVRyYW5zcG9ydFBvbGljeTsgfQogICAgIEJ1bmRs
ZVBvbGljeSBidW5kbGVQb2xpY3koKSBjb25zdCB7IHJldHVybiBtX2J1bmRsZVBvbGljeTsgfQog
CiBwcml2YXRlOgotICAgIE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uKFZlY3RvcjxSZWZQdHI8
SWNlU2VydmVySW5mbz4+JiwgSWNlVHJhbnNwb3J0UG9saWN5LCBCdW5kbGVQb2xpY3kpOwotCi0g
ICAgVmVjdG9yPFJlZlB0cjxJY2VTZXJ2ZXJJbmZvPj4gbV9pY2VTZXJ2ZXJzOworICAgIFZlY3Rv
cjxJY2VTZXJ2ZXJJbmZvPiBtX2ljZVNlcnZlcnM7CiAgICAgSWNlVHJhbnNwb3J0UG9saWN5IG1f
aWNlVHJhbnNwb3J0UG9saWN5OwogICAgIEJ1bmRsZVBvbGljeSBtX2J1bmRsZVBvbGljeTsKIH07
CkBAIC04Nyw1ICs2NSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBFTkFCTEUoV0VCX1JUQykKLQotI2VuZGlmIC8vIE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L29wZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9vcGVud2VicnRjL01lZGlhRW5kcG9pbnRPd3IuY3BwCmluZGV4IDM5YzEx
NjRjMDI4N2IyODQ3MzM5YzM2ZWE2NTBlYjlhOGRlMmYyZmYuLmNkZjQwZjhiMTE4NDI3NTk3NWZj
NDM5MjdmOGFlZGIxZDNiNjZkYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL29wZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dy
LmNwcApAQCAtODksOSArODksOSBAQCBNZWRpYUVuZHBvaW50T3dyOjp+TWVkaWFFbmRwb2ludE93
cigpCiAgICAgZ19yZWdleF91bnJlZihtX2hlbHBlclNlcnZlclJlZ0V4KTsKIH0KIAotdm9pZCBN
ZWRpYUVuZHBvaW50T3dyOjpzZXRDb25maWd1cmF0aW9uKFJlZlB0cjxNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbj4mJiBjb25maWd1cmF0aW9uKQordm9pZCBNZWRpYUVuZHBvaW50T3dyOjpzZXRD
b25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uJiYgY29uZmlndXJhdGlvbikK
IHsKLSAgICBtX2NvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uOworICAgIG1fY29uZmlndXJh
dGlvbiA9IFdURk1vdmUoY29uZmlndXJhdGlvbik7CiB9CiAKIHN0YXRpYyB2b2lkIGNyeXB0b0Rh
dGFDYWxsYmFjayhnY2hhciogcHJpdmF0ZUtleSwgZ2NoYXIqIGNlcnRpZmljYXRlLCBnY2hhciog
ZmluZ2VycHJpbnQsIGdjaGFyKiBmaW5nZXJwcmludEZ1bmN0aW9uLCBncG9pbnRlciBkYXRhKQpA
QCAtNTUyLDggKzU1Miw5IEBAIHZvaWQgTWVkaWFFbmRwb2ludE93cjo6ZW5zdXJlVHJhbnNwb3J0
QWdlbnRBbmRUcmFuc2NlaXZlcnMoYm9vbCBpc0luaXRpYXRvciwgY29uCiAgICAgaWYgKCFtX3Ry
YW5zcG9ydEFnZW50KSB7CiAgICAgICAgIG1fdHJhbnNwb3J0QWdlbnQgPSBvd3JfdHJhbnNwb3J0
X2FnZW50X25ldyhmYWxzZSk7CiAKKyAgICAgICAgQVNTRVJUKG1fY29uZmlndXJhdGlvbik7CiAg
ICAgICAgIGZvciAoYXV0byYgc2VydmVyIDogbV9jb25maWd1cmF0aW9uLT5pY2VTZXJ2ZXJzKCkp
IHsKLSAgICAgICAgICAgIGZvciAoYXV0byYgd2Via2l0VXJsIDogc2VydmVyLT51cmxzKCkpIHsK
KyAgICAgICAgICAgIGZvciAoYXV0byYgd2Via2l0VXJsIDogc2VydmVyLnVybHMoKSkgewogICAg
ICAgICAgICAgICAgIEhlbHBlclNlcnZlclVybCB1cmw7CiAgICAgICAgICAgICAgICAgLy8gV2Vi
S2l0J3MgVVJMIGNsYXNzIGNhbid0IGhhbmRsZSBJQ0UgaGVscGVyIHNlcnZlciB1cmxzIHByb3Bl
cmx5CiAgICAgICAgICAgICAgICAgcGFyc2VIZWxwZXJTZXJ2ZXJVcmwoKm1faGVscGVyU2VydmVy
UmVnRXgsIHdlYmtpdFVybCwgdXJsKTsKQEAgLTU3MCw3ICs1NzEsNyBAQCB2b2lkIE1lZGlhRW5k
cG9pbnRPd3I6OmVuc3VyZVRyYW5zcG9ydEFnZW50QW5kVHJhbnNjZWl2ZXJzKGJvb2wgaXNJbml0
aWF0b3IsIGNvbgogCiAgICAgICAgICAgICAgICAgICAgIG93cl90cmFuc3BvcnRfYWdlbnRfYWRk
X2hlbHBlcl9zZXJ2ZXIobV90cmFuc3BvcnRBZ2VudCwgc2VydmVyVHlwZSwKICAgICAgICAgICAg
ICAgICAgICAgICAgIHVybC5ob3N0LmFzY2lpKCkuZGF0YSgpLCBwb3J0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgc2VydmVyLT51c2VybmFtZSgpLmFzY2lpKCkuZGF0YSgpLCBzZXJ2ZXItPmNy
ZWRlbnRpYWwoKS5hc2NpaSgpLmRhdGEoKSk7CisgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2
ZXIudXNlcm5hbWUoKS5hc2NpaSgpLmRhdGEoKSwgc2VydmVyLmNyZWRlbnRpYWwoKS5hc2NpaSgp
LmRhdGEoKSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2VicnRjL01lZGlhRW5k
cG9pbnRPd3IuaAppbmRleCA3ZDQzZGMyYjNjYjg4OTYyMDJkZTc4OTRjYjE1N2Y2MDUyOGIxMDU1
Li4wMmVlMDQ2MjgwNjQwYTY4YTE2NTIzYjlmYTgzNTAwNWFlMDgyNzAxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2VicnRjL01lZGlhRW5kcG9p
bnRPd3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2Vi
cnRjL01lZGlhRW5kcG9pbnRPd3IuaApAQCAtODIsNyArODIsNyBAQCBwdWJsaWM6CiAgICAgTWVk
aWFFbmRwb2ludE93cihNZWRpYUVuZHBvaW50Q2xpZW50Jik7CiAgICAgfk1lZGlhRW5kcG9pbnRP
d3IoKTsKIAotICAgIHZvaWQgc2V0Q29uZmlndXJhdGlvbihSZWZQdHI8TWVkaWFFbmRwb2ludENv
bmZpZ3VyYXRpb24+JiYpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q29uZmlndXJhdGlvbihNZWRp
YUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJikgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGdlbmVyYXRl
RHRsc0luZm8oKSBvdmVycmlkZTsKICAgICBNZWRpYVBheWxvYWRWZWN0b3IgZ2V0RGVmYXVsdEF1
ZGlvUGF5bG9hZHMoKSBvdmVycmlkZTsKQEAgLTEyNSw3ICsxMjUsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgZW5zdXJlVHJhbnNwb3J0QWdlbnRBbmRUcmFuc2NlaXZlcnMoYm9vbCBpc0luaXRpYXRv
ciwgY29uc3QgVmVjdG9yPFRyYW5zY2VpdmVyQ29uZmlnPiYpOwogICAgIHZvaWQgaW50ZXJuYWxB
ZGRSZW1vdGVDYW5kaWRhdGUoT3dyU2Vzc2lvbiosIEljZUNhbmRpZGF0ZSYsIGNvbnN0IFN0cmlu
ZyYgdWZyYWcsIGNvbnN0IFN0cmluZyYgcGFzc3dvcmQpOwogCi0gICAgUmVmUHRyPE1lZGlhRW5k
cG9pbnRDb25maWd1cmF0aW9uPiBtX2NvbmZpZ3VyYXRpb247CisgICAgT3B0aW9uYWw8TWVkaWFF
bmRwb2ludENvbmZpZ3VyYXRpb24+IG1fY29uZmlndXJhdGlvbjsKICAgICBHUmVnZXgqIG1faGVs
cGVyU2VydmVyUmVnRXg7CiAKICAgICBPd3JUcmFuc3BvcnRBZ2VudCogbV90cmFuc3BvcnRBZ2Vu
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlhRW5k
cG9pbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2lu
dC5jcHAKaW5kZXggNTdlZDRlNTY5NjMyODdlNDYyMzI2MTg5YTEyNDM0NzQ3MDM3ZjI3Zi4uMmU3
ZjhjODcxYjg3Y2Y4NTBmMTBjZWMxM2QwMTU5OTQyMGZmOGM1ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5jcHAKQEAgLTYzLDExICs2
Myw2IEBAIE1vY2tNZWRpYUVuZHBvaW50Ojp+TW9ja01lZGlhRW5kcG9pbnQoKQogICAgIHN0b3Ao
KTsKIH0KIAotdm9pZCBNb2NrTWVkaWFFbmRwb2ludDo6c2V0Q29uZmlndXJhdGlvbihSZWZQdHI8
TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+JiYgY29uZmlndXJhdGlvbikKLXsKLSAgICBVTlVT
RURfUEFSQU0oY29uZmlndXJhdGlvbik7Ci19Ci0KIHZvaWQgTW9ja01lZGlhRW5kcG9pbnQ6Omdl
bmVyYXRlRHRsc0luZm8oKQogewogICAgIGNhbGxPbk1haW5UaHJlYWQoW3RoaXNdKCkgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5oCmluZGV4
IDEwMTM0NGY4Y2FhMzQwNWI1MmMyMWVhMjZjNjIxMjAxMDg4OTRkNmYuLjM2OTM0MjIyN2NkYjdi
Njc3OWZkN2VlOWU2ZGQwNGJlMDkwMDI2MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50LmgKQEAgLTM4LDMyICszOCwzMiBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIE1vY2tNZWRpYUVuZHBvaW50IDogcHVibGljIE1lZGlh
RW5kcG9pbnQgeworY2xhc3MgTW9ja01lZGlhRW5kcG9pbnQgZmluYWwgOiBwdWJsaWMgTWVkaWFF
bmRwb2ludCB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0ZDo6dW5pcXVl
X3B0cjxNZWRpYUVuZHBvaW50PiBjcmVhdGUoTWVkaWFFbmRwb2ludENsaWVudCYpOwogCiAgICAg
TW9ja01lZGlhRW5kcG9pbnQoTWVkaWFFbmRwb2ludENsaWVudCYpOwogICAgIH5Nb2NrTWVkaWFF
bmRwb2ludCgpOwogCi0gICAgdm9pZCBzZXRDb25maWd1cmF0aW9uKFJlZlB0cjxNZWRpYUVuZHBv
aW50Q29uZmlndXJhdGlvbj4mJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRDb25maWd1cmF0aW9u
KE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uJiYpIGZpbmFsIHsgfTsKIAotICAgIHZvaWQgZ2Vu
ZXJhdGVEdGxzSW5mbygpIG92ZXJyaWRlOwotICAgIE1lZGlhUGF5bG9hZFZlY3RvciBnZXREZWZh
dWx0QXVkaW9QYXlsb2FkcygpIG92ZXJyaWRlOwotICAgIE1lZGlhUGF5bG9hZFZlY3RvciBnZXRE
ZWZhdWx0VmlkZW9QYXlsb2FkcygpIG92ZXJyaWRlOwotICAgIE1lZGlhUGF5bG9hZFZlY3RvciBm
aWx0ZXJQYXlsb2Fkcyhjb25zdCBNZWRpYVBheWxvYWRWZWN0b3ImIHJlbW90ZVBheWxvYWRzLCBj
b25zdCBNZWRpYVBheWxvYWRWZWN0b3ImIGRlZmF1bHRQYXlsb2Fkcykgb3ZlcnJpZGU7CisgICAg
dm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgZmluYWw7CisgICAgTWVkaWFQYXlsb2FkVmVjdG9yIGdl
dERlZmF1bHRBdWRpb1BheWxvYWRzKCkgZmluYWw7CisgICAgTWVkaWFQYXlsb2FkVmVjdG9yIGdl
dERlZmF1bHRWaWRlb1BheWxvYWRzKCkgZmluYWw7CisgICAgTWVkaWFQYXlsb2FkVmVjdG9yIGZp
bHRlclBheWxvYWRzKGNvbnN0IE1lZGlhUGF5bG9hZFZlY3RvciYgcmVtb3RlUGF5bG9hZHMsIGNv
bnN0IE1lZGlhUGF5bG9hZFZlY3RvciYgZGVmYXVsdFBheWxvYWRzKSBmaW5hbDsKIAotICAgIFVw
ZGF0ZVJlc3VsdCB1cGRhdGVSZWNlaXZlQ29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50U2Vzc2lv
bkNvbmZpZ3VyYXRpb24qLCBib29sIGlzSW5pdGlhdG9yKSBvdmVycmlkZTsKLSAgICBVcGRhdGVS
ZXN1bHQgdXBkYXRlU2VuZENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludFNlc3Npb25Db25maWd1
cmF0aW9uKiwgY29uc3QgUmVhbHRpbWVNZWRpYVNvdXJjZU1hcCYsIGJvb2wgaXNJbml0aWF0b3Ip
IG92ZXJyaWRlOworICAgIFVwZGF0ZVJlc3VsdCB1cGRhdGVSZWNlaXZlQ29uZmlndXJhdGlvbihN
ZWRpYUVuZHBvaW50U2Vzc2lvbkNvbmZpZ3VyYXRpb24qLCBib29sIGlzSW5pdGlhdG9yKSBmaW5h
bDsKKyAgICBVcGRhdGVSZXN1bHQgdXBkYXRlU2VuZENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2lu
dFNlc3Npb25Db25maWd1cmF0aW9uKiwgY29uc3QgUmVhbHRpbWVNZWRpYVNvdXJjZU1hcCYsIGJv
b2wgaXNJbml0aWF0b3IpIGZpbmFsOwogCi0gICAgdm9pZCBhZGRSZW1vdGVDYW5kaWRhdGUoSWNl
Q2FuZGlkYXRlJiwgY29uc3QgU3RyaW5nJiBtaWQsIGNvbnN0IFN0cmluZyYgdWZyYWcsIGNvbnN0
IFN0cmluZyYgcGFzc3dvcmQpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkUmVtb3RlQ2FuZGlkYXRl
KEljZUNhbmRpZGF0ZSYsIGNvbnN0IFN0cmluZyYgbWlkLCBjb25zdCBTdHJpbmcmIHVmcmFnLCBj
b25zdCBTdHJpbmcmIHBhc3N3b3JkKSBmaW5hbDsKIAotICAgIFJlZjxSZWFsdGltZU1lZGlhU291
cmNlPiBjcmVhdGVNdXRlZFJlbW90ZVNvdXJjZShjb25zdCBTdHJpbmcmIG1pZCwgUmVhbHRpbWVN
ZWRpYVNvdXJjZTo6VHlwZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXBsYWNlU2VuZFNvdXJjZShS
ZWFsdGltZU1lZGlhU291cmNlJiwgY29uc3QgU3RyaW5nJiBtaWQpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVwbGFjZU11dGVkUmVtb3RlU291cmNlTWlkKGNvbnN0IFN0cmluZyYgb2xkTWlkLCBjb25z
dCBTdHJpbmcmIG5ld01pZCkgb3ZlcnJpZGU7CisgICAgUmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+
IGNyZWF0ZU11dGVkUmVtb3RlU291cmNlKGNvbnN0IFN0cmluZyYgbWlkLCBSZWFsdGltZU1lZGlh
U291cmNlOjpUeXBlKSBmaW5hbDsKKyAgICB2b2lkIHJlcGxhY2VTZW5kU291cmNlKFJlYWx0aW1l
TWVkaWFTb3VyY2UmLCBjb25zdCBTdHJpbmcmIG1pZCkgZmluYWw7CisgICAgdm9pZCByZXBsYWNl
TXV0ZWRSZW1vdGVTb3VyY2VNaWQoY29uc3QgU3RyaW5nJiBvbGRNaWQsIGNvbnN0IFN0cmluZyYg
bmV3TWlkKSBmaW5hbDsKIAotICAgIHZvaWQgc3RvcCgpIG92ZXJyaWRlOworICAgIHZvaWQgc3Rv
cCgpIGZpbmFsOwogCi0gICAgdm9pZCBlbXVsYXRlUGxhdGZvcm1FdmVudChjb25zdCBTdHJpbmcm
IGFjdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbXVsYXRlUGxhdGZvcm1FdmVudChjb25zdCBT
dHJpbmcmIGFjdGlvbikgZmluYWw7CiAKIHByaXZhdGU6CiAgICAgdm9pZCB1cGRhdGVDb25maWd1
cmF0aW9uTWlkcyhjb25zdCBNZWRpYUVuZHBvaW50U2Vzc2lvbkNvbmZpZ3VyYXRpb24mKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>292741</attachid>
            <date>2016-10-25 03:01:04 -0700</date>
            <delta_ts>2016-10-25 05:01:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163888-20161025115718.patch</filename>
            <type>text/plain</type>
            <size>16601</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3ODA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjc3YjAzNzhlOGIxM2Uy
ODlkOGVhMWZjMjA2MTk1ZTI0MmQ4YzNiZS4uNzBlNmRkYTU4Mzg4ZDBlMGRmM2M1ZTVlMDU5Y2U2
ODlkNTQ1NjA1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE2LTEwLTI0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbiBkb2VzIG5vdCBuZWVkIHRvIGJlIHJlZmNvdW50ZWQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mzg4OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBvZiBiZWhhdmlvci4K
KworICAgICAgICBVcGRhdGluZyBNZWRpYUVuZHBvaW50IHRvIHRha2UgYSBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbiYmIGluc3RlYWQgb2YgYSBSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3Vy
YXRpb24+JiYuCisgICAgICAgIFRoaXMgYWxsb3dzIGVuc3VyaW5nIHRoYXQgdGhlIGNvbmZpZ3Vy
YXRpb24gaXMgbm90IG51bGwgYW5kIHJlbW92ZXMgdGhlIG5lZWQgdG8gcmVmLWNvdW50IGl0Lgor
CisgICAgICAgIFJlbW92aW5nIHJlZi1jb3VudGluZyBmcm9tIE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uIGFuZCBpdHMgcmVsYXRlZCBJY2VTZXJ2ZXIgdGhhdCBpcyBub3cgYSBzdHJ1Y3QuCisg
ICAgICAgIFVwZGF0ZWQgTWVkaWFFbmRwb2ludE93ciBhbmQgbW9jayBpbXBsZW1lbnRhdGlvbnMg
YWNjb3JkaW5nbHkuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9p
bnRQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50UGVl
ckNvbm5lY3Rpb246OnNldENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFt
L01lZGlhRW5kcG9pbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbjo6TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmg6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6aWNlU2VydmVycyk6CisgICAg
ICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludE93cjo6ZW5zdXJlVHJhbnNwb3J0QWdl
bnRBbmRUcmFuc2NlaXZlcnMpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53
ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01l
ZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9p
bnQuaDoKKwogMjAxNi0xMC0yNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIElEQkRhdGFiYXNlLmNyZWF0ZU9iamVjdFN0b3JlKCkgc2hvdWxkIHRha2UgYSBJREJP
YmplY3RTdG9yZVBhcmFtZXRlcnMgZGljdGlvbmFyeSBpbiBwYXJhbWV0ZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25u
ZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRw
b2ludFBlZXJDb25uZWN0aW9uLmNwcAppbmRleCAzY2UzZjI5MDhmYmIwOWU2ZWU1OGM0NzQ0MzIz
NmZiNDNkOGViNzY2Li44YmQzNGEyNmJjMDQxNjAxZjEzMzg3NDUzOGNlM2QyYzU4NzA4ZGM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9p
bnRQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCkBAIC02MTQsMTEgKzYxNCwxOSBA
QCBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rp
b246OnBlbmRpbmdSZW1vdGVEZXNjcmlwdAogCiB2b2lkIE1lZGlhRW5kcG9pbnRQZWVyQ29ubmVj
dGlvbjo6c2V0Q29uZmlndXJhdGlvbihSVENDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQog
ewotICAgIFZlY3RvcjxSZWZQdHI8SWNlU2VydmVySW5mbz4+IGljZVNlcnZlcnM7Ci0gICAgZm9y
IChhdXRvJiBzZXJ2ZXIgOiBjb25maWd1cmF0aW9uLmljZVNlcnZlcnMoKSkKLSAgICAgICAgaWNl
U2VydmVycy5hcHBlbmQoSWNlU2VydmVySW5mbzo6Y3JlYXRlKHNlcnZlci0+dXJscygpLCBzZXJ2
ZXItPmNyZWRlbnRpYWwoKSwgc2VydmVyLT51c2VybmFtZSgpKSk7CisgICAgVmVjdG9yPE1lZGlh
RW5kcG9pbnRDb25maWd1cmF0aW9uOjpJY2VTZXJ2ZXJJbmZvPiBpY2VTZXJ2ZXJzOworICAgIGlm
IChjb25maWd1cmF0aW9uLmljZVNlcnZlcnMoKS5zaXplKCkpIHsKKyAgICAgICAgaWNlU2VydmVy
cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGNvbmZpZ3VyYXRpb24uaWNlU2VydmVycygpLnNpemUo
KSk7CisgICAgICAgIGZvciAoYXV0byYgc2VydmVyIDogY29uZmlndXJhdGlvbi5pY2VTZXJ2ZXJz
KCkpIHsKKyAgICAgICAgICAgIFZlY3RvcjxVUkw+IHVybHM7CisgICAgICAgICAgICB1cmxzLnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkoc2VydmVyLT51cmxzKCkuc2l6ZSgpKTsKKyAgICAgICAgICAg
IGZvciAoYXV0byYgdXJsIDogc2VydmVyLT51cmxzKCkpCisgICAgICAgICAgICAgICAgdXJscy51
bmNoZWNrZWRBcHBlbmQoVVJMKFVSTCgpLCB1cmwpKTsKKyAgICAgICAgICAgIGljZVNlcnZlcnMu
dW5jaGVja2VkQXBwZW5kKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uOjpJY2VTZXJ2ZXJJbmZv
IHsgV1RGTW92ZSh1cmxzKSwgc2VydmVyLT5jcmVkZW50aWFsKCksIHNlcnZlci0+dXNlcm5hbWUo
KSB9KTsKKyAgICAgICAgfQorICAgIH0KIAotICAgIG1fbWVkaWFFbmRwb2ludC0+c2V0Q29uZmln
dXJhdGlvbihNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6Y3JlYXRlKGljZVNlcnZlcnMsIGNv
bmZpZ3VyYXRpb24uaWNlVHJhbnNwb3J0UG9saWN5KCksIGNvbmZpZ3VyYXRpb24uYnVuZGxlUG9s
aWN5KCkpKTsKKyAgICBtX21lZGlhRW5kcG9pbnQtPnNldENvbmZpZ3VyYXRpb24oeyBXVEZNb3Zl
KGljZVNlcnZlcnMpLCBjb25maWd1cmF0aW9uLmljZVRyYW5zcG9ydFBvbGljeSgpLCBjb25maWd1
cmF0aW9uLmJ1bmRsZVBvbGljeSgpIH0pOwogfQogCiB2b2lkIE1lZGlhRW5kcG9pbnRQZWVyQ29u
bmVjdGlvbjo6YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSYgcnRjQ2FuZGlkYXRlLCBQ
ZWVyQ29ubmVjdGlvbjo6Vm9pZFByb21pc2UmJiBwcm9taXNlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcAppbmRleCBjZGFm
YzQ1OGE4YThlYTQyNWEzZGIyMjMwZGZiYmRhYTM2MWIxMmI5Li5mNGVhODg0YmY0OGE4NTk5ZTBi
ODIwMjk2ZWU3NWZhNjEyNTdiMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcApAQCAtNTcsNyArNTcsNyBAQCBjbGFz
cyBFbXB0eU1lZGlhRW5kcG9pbnQgOiBwdWJsaWMgTWVkaWFFbmRwb2ludCB7CiBwdWJsaWM6CiAg
ICAgRW1wdHlNZWRpYUVuZHBvaW50KE1lZGlhRW5kcG9pbnRDbGllbnQmKSB7IH0KIAotICAgIHZv
aWQgc2V0Q29uZmlndXJhdGlvbihSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+JiYp
IG92ZXJyaWRlIHsgfQorICAgIHZvaWQgc2V0Q29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbiYmKSBvdmVycmlkZSB7IH0KIAogICAgIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygp
IG92ZXJyaWRlIHsgfQogICAgIE1lZGlhUGF5bG9hZFZlY3RvciBnZXREZWZhdWx0QXVkaW9QYXls
b2FkcygpIG92ZXJyaWRlIHsgcmV0dXJuIE1lZGlhUGF5bG9hZFZlY3RvcigpOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmgKaW5k
ZXggZGY0MjU1NWMyNDVhMDJiM2EzZGFjNzhiZWFiZTUyMTA3MTg2OWY3Yy4uMGMxYTNiYWYzMzkx
ZWM2ZjM5MzVkYzQ1ZGYyNzAyMTk3YTljOWIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuaApAQCAtNjMsNyArNjMsNyBAQCBw
dWJsaWM6CiAKICAgICB1c2luZyBJY2VUcmFuc3BvcnRTdGF0ZSA9IFBlZXJDb25uZWN0aW9uU3Rh
dGVzOjpJY2VUcmFuc3BvcnRTdGF0ZTsKIAotICAgIHZpcnR1YWwgdm9pZCBzZXRDb25maWd1cmF0
aW9uKFJlZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBzZXRDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uJiYpID0g
MDsKIAogICAgIHZpcnR1YWwgdm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgPSAwOwogICAgIHZpcnR1
YWwgTWVkaWFQYXlsb2FkVmVjdG9yIGdldERlZmF1bHRBdWRpb1BheWxvYWRzKCkgPSAwOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2lu
dENvbmZpZ3VyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uY3BwCmluZGV4IGRkMGQ4NmUwMzliMDk3MDRjY2Y3
OGFhZjRlN2ZiMWZlNTgyZDg0MjEuLmMyZGEzNDRhYTMwZjk0MjVmMjZiNGM2ZTRjYTcxYmZiZjg2
ZTZlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01l
ZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDE5ICsz
NSwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUljZVNlcnZlckluZm86OkljZVNlcnZl
ckluZm8oY29uc3QgVmVjdG9yPFN0cmluZz4mIHVybHMsIGNvbnN0IFN0cmluZyYgY3JlZGVudGlh
bCwgY29uc3QgU3RyaW5nJiB1c2VybmFtZSkKLSAgICA6IG1fY3JlZGVudGlhbChjcmVkZW50aWFs
KQotICAgICwgbV91c2VybmFtZSh1c2VybmFtZSkKK01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9u
OjpNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihWZWN0b3I8SWNlU2VydmVySW5mbz4mJiBpY2VT
ZXJ2ZXJzLCBJY2VUcmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0UG9saWN5LCBCdW5kbGVQb2xp
Y3kgYnVuZGxlUG9saWN5KQorICAgIDogaWNlU2VydmVycyhXVEZNb3ZlKGljZVNlcnZlcnMpKQor
ICAgICwgaWNlVHJhbnNwb3J0UG9saWN5KGljZVRyYW5zcG9ydFBvbGljeSkKKyAgICAsIGJ1bmRs
ZVBvbGljeShidW5kbGVQb2xpY3kpCiB7Ci0gICAgbV91cmxzLnJlc2VydmVDYXBhY2l0eSh1cmxz
LnNpemUoKSk7Ci0gICAgZm9yIChhdXRvJiB1cmwgOiB1cmxzKQotICAgICAgICBtX3VybHMuYXBw
ZW5kKFVSTChVUkwoKSwgdXJsKSk7CiB9CiAKLU1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uOjpN
ZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihWZWN0b3I8UmVmUHRyPEljZVNlcnZlckluZm8+PiYg
aWNlU2VydmVycywgSWNlVHJhbnNwb3J0UG9saWN5IGljZVRyYW5zcG9ydFBvbGljeSwgQnVuZGxl
UG9saWN5IGJ1bmRsZVBvbGljeSkKLSAgICA6IG1faWNlU2VydmVycyhpY2VTZXJ2ZXJzKQotICAg
ICwgbV9pY2VUcmFuc3BvcnRQb2xpY3koaWNlVHJhbnNwb3J0UG9saWN5KQotICAgICwgbV9idW5k
bGVQb2xpY3koYnVuZGxlUG9saWN5KQorTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb246OkljZVNl
cnZlckluZm86OkljZVNlcnZlckluZm8oVmVjdG9yPFVSTD4mJiB1cmxzLCBjb25zdCBTdHJpbmcm
IGNyZWRlbnRpYWwsIGNvbnN0IFN0cmluZyYgdXNlcm5hbWUpCisgICAgOiB1cmxzKFdURk1vdmUo
dXJscykpCisgICAgLCBjcmVkZW50aWFsKGNyZWRlbnRpYWwpCisgICAgLCB1c2VybmFtZSh1c2Vy
bmFtZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmgKaW5kZXggMDlhNDU3
ZDc0ZDRlMWZkMTUxNjlkZmUzNzViMmRhMjRlNzkyNjMxNy4uNWI3NGEyNmEzZDc1MjY4OTc0YTA5
ZjgwNWRmNThhZTk3MDdiOTA0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5oCkBA
IC0yOCw2NCArMjgsMzcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBNZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbl9oCi0jZGVmaW5lIE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9u
X2gKKyNwcmFnbWEgb25jZQogCiAjaWYgRU5BQkxFKFdFQl9SVEMpCiAKICNpbmNsdWRlICJQZWVy
Q29ubmVjdGlvblN0YXRlcy5oIgogI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBJY2VTZXJ2ZXJJbmZvIDogcHVibGljIFJlZkNvdW50ZWQ8SWNlU2VydmVySW5m
bz4gewotcHVibGljOgotICAgIHN0YXRpYyBSZWZQdHI8SWNlU2VydmVySW5mbz4gY3JlYXRlKGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiB1cmxzLCBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwsIGNvbnN0
IFN0cmluZyYgdXNlcm5hbWUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IElj
ZVNlcnZlckluZm8odXJscywgY3JlZGVudGlhbCwgdXNlcm5hbWUpKTsKLSAgICB9Ci0gICAgdmly
dHVhbCB+SWNlU2VydmVySW5mbygpIHsgfQorc3RydWN0IE1lZGlhRW5kcG9pbnRDb25maWd1cmF0
aW9uIHsKKyAgICAvLyBGSVhNRTogV2UgbWlnaHQgYmUgYWJsZSB0byByZW1vdmUgdGhlc2UgY29u
c3RydWN0b3JzIG9uY2UgYWxsIGNvbXBpbGVycyBjYW4gaGFuZGxlIHdpdGhvdXQgaXQgKHNlZSBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzMjU1I2MxNSkKKyAgICBz
dHJ1Y3QgSWNlU2VydmVySW5mbyB7CisgICAgICAgIFZlY3RvcjxVUkw+IHVybHM7CisgICAgICAg
IFN0cmluZyBjcmVkZW50aWFsOworICAgICAgICBTdHJpbmcgdXNlcm5hbWU7CiAKLSAgICBjb25z
dCBWZWN0b3I8VVJMPiYgdXJscygpIGNvbnN0IHsgcmV0dXJuIG1fdXJsczsgfQotICAgIGNvbnN0
IFN0cmluZyYgY3JlZGVudGlhbCgpIGNvbnN0IHsgcmV0dXJuIG1fY3JlZGVudGlhbDsgfQotICAg
IGNvbnN0IFN0cmluZyYgdXNlcm5hbWUoKSBjb25zdCB7IHJldHVybiBtX3VzZXJuYW1lOyB9Cisg
ICAgICAgIEljZVNlcnZlckluZm8oVmVjdG9yPFVSTD4mJiwgY29uc3QgU3RyaW5nJiwgY29uc3Qg
U3RyaW5nJik7CisgICAgfTsKIAotcHJpdmF0ZToKLSAgICBJY2VTZXJ2ZXJJbmZvKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiB1cmxzLCBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwsIGNvbnN0IFN0cmlu
ZyYgdXNlcm5hbWUpOwotCi0gICAgVmVjdG9yPFVSTD4gbV91cmxzOwotICAgIFN0cmluZyBtX2Ny
ZWRlbnRpYWw7Ci0gICAgU3RyaW5nIG1fdXNlcm5hbWU7Ci19OwotCi1jbGFzcyBNZWRpYUVuZHBv
aW50Q29uZmlndXJhdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uPiB7Ci1wdWJsaWM6CiAgICAgdXNpbmcgSWNlVHJhbnNwb3J0UG9saWN5ID0gUGVlckNv
bm5lY3Rpb25TdGF0ZXM6OkljZVRyYW5zcG9ydFBvbGljeTsKICAgICB1c2luZyBCdW5kbGVQb2xp
Y3kgPSBQZWVyQ29ubmVjdGlvblN0YXRlczo6QnVuZGxlUG9saWN5OwogCi0gICAgc3RhdGljIFJl
ZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4gY3JlYXRlKFZlY3RvcjxSZWZQdHI8SWNl
U2VydmVySW5mbz4+JiBpY2VTZXJ2ZXJzLCBJY2VUcmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0
UG9saWN5LCBCdW5kbGVQb2xpY3kgYnVuZGxlUG9saWN5KQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihpY2VTZXJ2ZXJzLCBpY2VU
cmFuc3BvcnRQb2xpY3ksIGJ1bmRsZVBvbGljeSkpOwotICAgIH0KKyAgICBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbihWZWN0b3I8SWNlU2VydmVySW5mbz4mJiwgSWNlVHJhbnNwb3J0UG9saWN5
LCBCdW5kbGVQb2xpY3kpOwogCi0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxJY2VTZXJ2ZXJJbmZv
Pj4mIGljZVNlcnZlcnMoKSBjb25zdCB7IHJldHVybiBtX2ljZVNlcnZlcnM7IH0KLSAgICBJY2VU
cmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9pY2VU
cmFuc3BvcnRQb2xpY3k7IH0KLSAgICBCdW5kbGVQb2xpY3kgYnVuZGxlUG9saWN5KCkgY29uc3Qg
eyByZXR1cm4gbV9idW5kbGVQb2xpY3k7IH0KLQotcHJpdmF0ZToKLSAgICBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbihWZWN0b3I8UmVmUHRyPEljZVNlcnZlckluZm8+PiYsIEljZVRyYW5zcG9y
dFBvbGljeSwgQnVuZGxlUG9saWN5KTsKLQotICAgIFZlY3RvcjxSZWZQdHI8SWNlU2VydmVySW5m
bz4+IG1faWNlU2VydmVyczsKLSAgICBJY2VUcmFuc3BvcnRQb2xpY3kgbV9pY2VUcmFuc3BvcnRQ
b2xpY3k7Ci0gICAgQnVuZGxlUG9saWN5IG1fYnVuZGxlUG9saWN5OworICAgIFZlY3RvcjxJY2VT
ZXJ2ZXJJbmZvPiBpY2VTZXJ2ZXJzOworICAgIEljZVRyYW5zcG9ydFBvbGljeSBpY2VUcmFuc3Bv
cnRQb2xpY3k7CisgICAgQnVuZGxlUG9saWN5IGJ1bmRsZVBvbGljeTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfUlRDKQotCi0jZW5kaWYgLy8g
TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb25faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53ZWJydGMvTWVkaWFFbmRwb2lu
dE93ci5jcHAKaW5kZXggMzljMTE2NGMwMjg3YjI4NDczMzljMzZlYTY1MGViOWE4ZGUyZjJmZi4u
OTQ3NzFkYzhkY2NlM2M5ZmY2YmYxYzc3MzU2NWY1NmRhZTJhYWM4NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50
T3dyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2Vi
cnRjL01lZGlhRW5kcG9pbnRPd3IuY3BwCkBAIC04OSw5ICs4OSw5IEBAIE1lZGlhRW5kcG9pbnRP
d3I6On5NZWRpYUVuZHBvaW50T3dyKCkKICAgICBnX3JlZ2V4X3VucmVmKG1faGVscGVyU2VydmVy
UmVnRXgpOwogfQogCi12b2lkIE1lZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24oUmVm
UHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmIGNvbmZpZ3VyYXRpb24pCit2b2lkIE1l
ZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRp
b24mJiBjb25maWd1cmF0aW9uKQogewotICAgIG1fY29uZmlndXJhdGlvbiA9IGNvbmZpZ3VyYXRp
b247CisgICAgbV9jb25maWd1cmF0aW9uID0gV1RGTW92ZShjb25maWd1cmF0aW9uKTsKIH0KIAog
c3RhdGljIHZvaWQgY3J5cHRvRGF0YUNhbGxiYWNrKGdjaGFyKiBwcml2YXRlS2V5LCBnY2hhciog
Y2VydGlmaWNhdGUsIGdjaGFyKiBmaW5nZXJwcmludCwgZ2NoYXIqIGZpbmdlcnByaW50RnVuY3Rp
b24sIGdwb2ludGVyIGRhdGEpCkBAIC01NTIsOCArNTUyLDkgQEAgdm9pZCBNZWRpYUVuZHBvaW50
T3dyOjplbnN1cmVUcmFuc3BvcnRBZ2VudEFuZFRyYW5zY2VpdmVycyhib29sIGlzSW5pdGlhdG9y
LCBjb24KICAgICBpZiAoIW1fdHJhbnNwb3J0QWdlbnQpIHsKICAgICAgICAgbV90cmFuc3BvcnRB
Z2VudCA9IG93cl90cmFuc3BvcnRfYWdlbnRfbmV3KGZhbHNlKTsKIAotICAgICAgICBmb3IgKGF1
dG8mIHNlcnZlciA6IG1fY29uZmlndXJhdGlvbi0+aWNlU2VydmVycygpKSB7Ci0gICAgICAgICAg
ICBmb3IgKGF1dG8mIHdlYmtpdFVybCA6IHNlcnZlci0+dXJscygpKSB7CisgICAgICAgIEFTU0VS
VChtX2NvbmZpZ3VyYXRpb24pOworICAgICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1fY29uZmln
dXJhdGlvbi0+aWNlU2VydmVycykgeworICAgICAgICAgICAgZm9yIChhdXRvJiB3ZWJraXRVcmwg
OiBzZXJ2ZXIudXJscykgewogICAgICAgICAgICAgICAgIEhlbHBlclNlcnZlclVybCB1cmw7CiAg
ICAgICAgICAgICAgICAgLy8gV2ViS2l0J3MgVVJMIGNsYXNzIGNhbid0IGhhbmRsZSBJQ0UgaGVs
cGVyIHNlcnZlciB1cmxzIHByb3Blcmx5CiAgICAgICAgICAgICAgICAgcGFyc2VIZWxwZXJTZXJ2
ZXJVcmwoKm1faGVscGVyU2VydmVyUmVnRXgsIHdlYmtpdFVybCwgdXJsKTsKQEAgLTU3MCw3ICs1
NzEsNyBAQCB2b2lkIE1lZGlhRW5kcG9pbnRPd3I6OmVuc3VyZVRyYW5zcG9ydEFnZW50QW5kVHJh
bnNjZWl2ZXJzKGJvb2wgaXNJbml0aWF0b3IsIGNvbgogCiAgICAgICAgICAgICAgICAgICAgIG93
cl90cmFuc3BvcnRfYWdlbnRfYWRkX2hlbHBlcl9zZXJ2ZXIobV90cmFuc3BvcnRBZ2VudCwgc2Vy
dmVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgIHVybC5ob3N0LmFzY2lpKCkuZGF0YSgp
LCBwb3J0LAotICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyLT51c2VybmFtZSgpLmFzY2lp
KCkuZGF0YSgpLCBzZXJ2ZXItPmNyZWRlbnRpYWwoKS5hc2NpaSgpLmRhdGEoKSk7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzZXJ2ZXIudXNlcm5hbWUuYXNjaWkoKS5kYXRhKCksIHNlcnZlci5j
cmVkZW50aWFsLmFzY2lpKCkuZGF0YSgpKTsKICAgICAgICAgICAgICAgICB9IGVsc2UKICAgICAg
ICAgICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2VicnRjL01l
ZGlhRW5kcG9pbnRPd3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29w
ZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCmluZGV4IDdkNDNkYzJiM2NiODg5NjIwMmRlNzg5
NGNiMTU3ZjYwNTI4YjEwNTUuLjAyZWUwNDYyODA2NDBhNjhhMTY1MjNiOWZhODM1MDA1YWUwODI3
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53
ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL29wZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCkBAIC04Miw3ICs4Miw3IEBA
IHB1YmxpYzoKICAgICBNZWRpYUVuZHBvaW50T3dyKE1lZGlhRW5kcG9pbnRDbGllbnQmKTsKICAg
ICB+TWVkaWFFbmRwb2ludE93cigpOwogCi0gICAgdm9pZCBzZXRDb25maWd1cmF0aW9uKFJlZlB0
cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRD
b25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmKSBvdmVycmlkZTsKIAog
ICAgIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygpIG92ZXJyaWRlOwogICAgIE1lZGlhUGF5bG9hZFZl
Y3RvciBnZXREZWZhdWx0QXVkaW9QYXlsb2FkcygpIG92ZXJyaWRlOwpAQCAtMTI1LDcgKzEyNSw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBlbnN1cmVUcmFuc3BvcnRBZ2VudEFuZFRyYW5zY2VpdmVy
cyhib29sIGlzSW5pdGlhdG9yLCBjb25zdCBWZWN0b3I8VHJhbnNjZWl2ZXJDb25maWc+Jik7CiAg
ICAgdm9pZCBpbnRlcm5hbEFkZFJlbW90ZUNhbmRpZGF0ZShPd3JTZXNzaW9uKiwgSWNlQ2FuZGlk
YXRlJiwgY29uc3QgU3RyaW5nJiB1ZnJhZywgY29uc3QgU3RyaW5nJiBwYXNzd29yZCk7CiAKLSAg
ICBSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+IG1fY29uZmlndXJhdGlvbjsKKyAg
ICBPcHRpb25hbDxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4gbV9jb25maWd1cmF0aW9uOwog
ICAgIEdSZWdleCogbV9oZWxwZXJTZXJ2ZXJSZWdFeDsKIAogICAgIE93clRyYW5zcG9ydEFnZW50
KiBtX3RyYW5zcG9ydEFnZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9Nb2NrTWVkaWFFbmRwb2ludC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tNZWRpYUVuZHBvaW50LmNwcAppbmRleCA1N2VkNGU1Njk2MzI4N2U0NjIzMjYxODlhMTI0
MzQ3NDcwMzdmMjdmLi4yZTdmOGM4NzFiODdjZjg1MGYxMGNlYzEzZDAxNTk5NDIwZmY4YzVmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50
LmNwcApAQCAtNjMsMTEgKzYzLDYgQEAgTW9ja01lZGlhRW5kcG9pbnQ6On5Nb2NrTWVkaWFFbmRw
b2ludCgpCiAgICAgc3RvcCgpOwogfQogCi12b2lkIE1vY2tNZWRpYUVuZHBvaW50OjpzZXRDb25m
aWd1cmF0aW9uKFJlZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJiBjb25maWd1cmF0
aW9uKQotewotICAgIFVOVVNFRF9QQVJBTShjb25maWd1cmF0aW9uKTsKLX0KLQogdm9pZCBNb2Nr
TWVkaWFFbmRwb2ludDo6Z2VuZXJhdGVEdGxzSW5mbygpCiB7CiAgICAgY2FsbE9uTWFpblRocmVh
ZChbdGhpc10oKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01v
Y2tNZWRpYUVuZHBvaW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRp
YUVuZHBvaW50LmgKaW5kZXggMTAxMzQ0ZjhjYWEzNDA1YjUyYzIxZWEyNmM2MjEyMDEwODg5NGQ2
Zi4uMzY5MzQyMjI3Y2RiN2I2Nzc5ZmQ3ZWU5ZTZkZDA0YmUwOTAwMjYxYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9pbnQuaApAQCAtMzgsMzIg
KzM4LDMyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgTW9ja01lZGlhRW5kcG9p
bnQgOiBwdWJsaWMgTWVkaWFFbmRwb2ludCB7CitjbGFzcyBNb2NrTWVkaWFFbmRwb2ludCBmaW5h
bCA6IHB1YmxpYyBNZWRpYUVuZHBvaW50IHsKIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBz
dGF0aWMgc3RkOjp1bmlxdWVfcHRyPE1lZGlhRW5kcG9pbnQ+IGNyZWF0ZShNZWRpYUVuZHBvaW50
Q2xpZW50Jik7CiAKICAgICBNb2NrTWVkaWFFbmRwb2ludChNZWRpYUVuZHBvaW50Q2xpZW50Jik7
CiAgICAgfk1vY2tNZWRpYUVuZHBvaW50KCk7CiAKLSAgICB2b2lkIHNldENvbmZpZ3VyYXRpb24o
UmVmUHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNldENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24mJikgZmluYWwgeyB9
OwogCi0gICAgdm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgb3ZlcnJpZGU7Ci0gICAgTWVkaWFQYXls
b2FkVmVjdG9yIGdldERlZmF1bHRBdWRpb1BheWxvYWRzKCkgb3ZlcnJpZGU7Ci0gICAgTWVkaWFQ
YXlsb2FkVmVjdG9yIGdldERlZmF1bHRWaWRlb1BheWxvYWRzKCkgb3ZlcnJpZGU7Ci0gICAgTWVk
aWFQYXlsb2FkVmVjdG9yIGZpbHRlclBheWxvYWRzKGNvbnN0IE1lZGlhUGF5bG9hZFZlY3RvciYg
cmVtb3RlUGF5bG9hZHMsIGNvbnN0IE1lZGlhUGF5bG9hZFZlY3RvciYgZGVmYXVsdFBheWxvYWRz
KSBvdmVycmlkZTsKKyAgICB2b2lkIGdlbmVyYXRlRHRsc0luZm8oKSBmaW5hbDsKKyAgICBNZWRp
YVBheWxvYWRWZWN0b3IgZ2V0RGVmYXVsdEF1ZGlvUGF5bG9hZHMoKSBmaW5hbDsKKyAgICBNZWRp
YVBheWxvYWRWZWN0b3IgZ2V0RGVmYXVsdFZpZGVvUGF5bG9hZHMoKSBmaW5hbDsKKyAgICBNZWRp
YVBheWxvYWRWZWN0b3IgZmlsdGVyUGF5bG9hZHMoY29uc3QgTWVkaWFQYXlsb2FkVmVjdG9yJiBy
ZW1vdGVQYXlsb2FkcywgY29uc3QgTWVkaWFQYXlsb2FkVmVjdG9yJiBkZWZhdWx0UGF5bG9hZHMp
IGZpbmFsOwogCi0gICAgVXBkYXRlUmVzdWx0IHVwZGF0ZVJlY2VpdmVDb25maWd1cmF0aW9uKE1l
ZGlhRW5kcG9pbnRTZXNzaW9uQ29uZmlndXJhdGlvbiosIGJvb2wgaXNJbml0aWF0b3IpIG92ZXJy
aWRlOwotICAgIFVwZGF0ZVJlc3VsdCB1cGRhdGVTZW5kQ29uZmlndXJhdGlvbihNZWRpYUVuZHBv
aW50U2Vzc2lvbkNvbmZpZ3VyYXRpb24qLCBjb25zdCBSZWFsdGltZU1lZGlhU291cmNlTWFwJiwg
Ym9vbCBpc0luaXRpYXRvcikgb3ZlcnJpZGU7CisgICAgVXBkYXRlUmVzdWx0IHVwZGF0ZVJlY2Vp
dmVDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRTZXNzaW9uQ29uZmlndXJhdGlvbiosIGJvb2wg
aXNJbml0aWF0b3IpIGZpbmFsOworICAgIFVwZGF0ZVJlc3VsdCB1cGRhdGVTZW5kQ29uZmlndXJh
dGlvbihNZWRpYUVuZHBvaW50U2Vzc2lvbkNvbmZpZ3VyYXRpb24qLCBjb25zdCBSZWFsdGltZU1l
ZGlhU291cmNlTWFwJiwgYm9vbCBpc0luaXRpYXRvcikgZmluYWw7CiAKLSAgICB2b2lkIGFkZFJl
bW90ZUNhbmRpZGF0ZShJY2VDYW5kaWRhdGUmLCBjb25zdCBTdHJpbmcmIG1pZCwgY29uc3QgU3Ry
aW5nJiB1ZnJhZywgY29uc3QgU3RyaW5nJiBwYXNzd29yZCkgb3ZlcnJpZGU7CisgICAgdm9pZCBh
ZGRSZW1vdGVDYW5kaWRhdGUoSWNlQ2FuZGlkYXRlJiwgY29uc3QgU3RyaW5nJiBtaWQsIGNvbnN0
IFN0cmluZyYgdWZyYWcsIGNvbnN0IFN0cmluZyYgcGFzc3dvcmQpIGZpbmFsOwogCi0gICAgUmVm
PFJlYWx0aW1lTWVkaWFTb3VyY2U+IGNyZWF0ZU11dGVkUmVtb3RlU291cmNlKGNvbnN0IFN0cmlu
ZyYgbWlkLCBSZWFsdGltZU1lZGlhU291cmNlOjpUeXBlKSBvdmVycmlkZTsKLSAgICB2b2lkIHJl
cGxhY2VTZW5kU291cmNlKFJlYWx0aW1lTWVkaWFTb3VyY2UmLCBjb25zdCBTdHJpbmcmIG1pZCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCByZXBsYWNlTXV0ZWRSZW1vdGVTb3VyY2VNaWQoY29uc3QgU3Ry
aW5nJiBvbGRNaWQsIGNvbnN0IFN0cmluZyYgbmV3TWlkKSBvdmVycmlkZTsKKyAgICBSZWY8UmVh
bHRpbWVNZWRpYVNvdXJjZT4gY3JlYXRlTXV0ZWRSZW1vdGVTb3VyY2UoY29uc3QgU3RyaW5nJiBt
aWQsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlR5cGUpIGZpbmFsOworICAgIHZvaWQgcmVwbGFjZVNl
bmRTb3VyY2UoUmVhbHRpbWVNZWRpYVNvdXJjZSYsIGNvbnN0IFN0cmluZyYgbWlkKSBmaW5hbDsK
KyAgICB2b2lkIHJlcGxhY2VNdXRlZFJlbW90ZVNvdXJjZU1pZChjb25zdCBTdHJpbmcmIG9sZE1p
ZCwgY29uc3QgU3RyaW5nJiBuZXdNaWQpIGZpbmFsOwogCi0gICAgdm9pZCBzdG9wKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBzdG9wKCkgZmluYWw7CiAKLSAgICB2b2lkIGVtdWxhdGVQbGF0Zm9ybUV2
ZW50KGNvbnN0IFN0cmluZyYgYWN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIGVtdWxhdGVQbGF0
Zm9ybUV2ZW50KGNvbnN0IFN0cmluZyYgYWN0aW9uKSBmaW5hbDsKIAogcHJpdmF0ZToKICAgICB2
b2lkIHVwZGF0ZUNvbmZpZ3VyYXRpb25NaWRzKGNvbnN0IE1lZGlhRW5kcG9pbnRTZXNzaW9uQ29u
ZmlndXJhdGlvbiYpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>292745</attachid>
            <date>2016-10-25 05:01:51 -0700</date>
            <delta_ts>2016-10-25 08:05:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163888-20161025135805.patch</filename>
            <type>text/plain</type>
            <size>16600</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3ODA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjc3YjAzNzhlOGIxM2Uy
ODlkOGVhMWZjMjA2MTk1ZTI0MmQ4YzNiZS4uNzBlNmRkYTU4Mzg4ZDBlMGRmM2M1ZTVlMDU5Y2U2
ODlkNTQ1NjA1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE2LTEwLTI0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbiBkb2VzIG5vdCBuZWVkIHRvIGJlIHJlZmNvdW50ZWQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mzg4OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBvZiBiZWhhdmlvci4K
KworICAgICAgICBVcGRhdGluZyBNZWRpYUVuZHBvaW50IHRvIHRha2UgYSBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbiYmIGluc3RlYWQgb2YgYSBSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3Vy
YXRpb24+JiYuCisgICAgICAgIFRoaXMgYWxsb3dzIGVuc3VyaW5nIHRoYXQgdGhlIGNvbmZpZ3Vy
YXRpb24gaXMgbm90IG51bGwgYW5kIHJlbW92ZXMgdGhlIG5lZWQgdG8gcmVmLWNvdW50IGl0Lgor
CisgICAgICAgIFJlbW92aW5nIHJlZi1jb3VudGluZyBmcm9tIE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uIGFuZCBpdHMgcmVsYXRlZCBJY2VTZXJ2ZXIgdGhhdCBpcyBub3cgYSBzdHJ1Y3QuCisg
ICAgICAgIFVwZGF0ZWQgTWVkaWFFbmRwb2ludE93ciBhbmQgbW9jayBpbXBsZW1lbnRhdGlvbnMg
YWNjb3JkaW5nbHkuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9p
bnRQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50UGVl
ckNvbm5lY3Rpb246OnNldENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFt
L01lZGlhRW5kcG9pbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbjo6TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24pOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmg6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6aWNlU2VydmVycyk6CisgICAg
ICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludE93cjo6ZW5zdXJlVHJhbnNwb3J0QWdl
bnRBbmRUcmFuc2NlaXZlcnMpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53
ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01l
ZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9p
bnQuaDoKKwogMjAxNi0xMC0yNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIElEQkRhdGFiYXNlLmNyZWF0ZU9iamVjdFN0b3JlKCkgc2hvdWxkIHRha2UgYSBJREJP
YmplY3RTdG9yZVBhcmFtZXRlcnMgZGljdGlvbmFyeSBpbiBwYXJhbWV0ZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJDb25u
ZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRw
b2ludFBlZXJDb25uZWN0aW9uLmNwcAppbmRleCAzY2UzZjI5MDhmYmIwOWU2ZWU1OGM0NzQ0MzIz
NmZiNDNkOGViNzY2Li44YmQzNGEyNmJjMDQxNjAxZjEzMzg3NDUzOGNlM2QyYzU4NzA4ZGM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5kcG9p
bnRQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCkBAIC02MTQsMTEgKzYxNCwxOSBA
QCBSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rp
b246OnBlbmRpbmdSZW1vdGVEZXNjcmlwdAogCiB2b2lkIE1lZGlhRW5kcG9pbnRQZWVyQ29ubmVj
dGlvbjo6c2V0Q29uZmlndXJhdGlvbihSVENDb25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQog
ewotICAgIFZlY3RvcjxSZWZQdHI8SWNlU2VydmVySW5mbz4+IGljZVNlcnZlcnM7Ci0gICAgZm9y
IChhdXRvJiBzZXJ2ZXIgOiBjb25maWd1cmF0aW9uLmljZVNlcnZlcnMoKSkKLSAgICAgICAgaWNl
U2VydmVycy5hcHBlbmQoSWNlU2VydmVySW5mbzo6Y3JlYXRlKHNlcnZlci0+dXJscygpLCBzZXJ2
ZXItPmNyZWRlbnRpYWwoKSwgc2VydmVyLT51c2VybmFtZSgpKSk7CisgICAgVmVjdG9yPE1lZGlh
RW5kcG9pbnRDb25maWd1cmF0aW9uOjpJY2VTZXJ2ZXJJbmZvPiBpY2VTZXJ2ZXJzOworICAgIGlm
IChjb25maWd1cmF0aW9uLmljZVNlcnZlcnMoKS5zaXplKCkpIHsKKyAgICAgICAgaWNlU2VydmVy
cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGNvbmZpZ3VyYXRpb24uaWNlU2VydmVycygpLnNpemUo
KSk7CisgICAgICAgIGZvciAoYXV0byYgc2VydmVyIDogY29uZmlndXJhdGlvbi5pY2VTZXJ2ZXJz
KCkpIHsKKyAgICAgICAgICAgIFZlY3RvcjxVUkw+IHVybHM7CisgICAgICAgICAgICB1cmxzLnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkoc2VydmVyLT51cmxzKCkuc2l6ZSgpKTsKKyAgICAgICAgICAg
IGZvciAoYXV0byYgdXJsIDogc2VydmVyLT51cmxzKCkpCisgICAgICAgICAgICAgICAgdXJscy51
bmNoZWNrZWRBcHBlbmQoVVJMKFVSTCgpLCB1cmwpKTsKKyAgICAgICAgICAgIGljZVNlcnZlcnMu
dW5jaGVja2VkQXBwZW5kKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uOjpJY2VTZXJ2ZXJJbmZv
IHsgV1RGTW92ZSh1cmxzKSwgc2VydmVyLT5jcmVkZW50aWFsKCksIHNlcnZlci0+dXNlcm5hbWUo
KSB9KTsKKyAgICAgICAgfQorICAgIH0KIAotICAgIG1fbWVkaWFFbmRwb2ludC0+c2V0Q29uZmln
dXJhdGlvbihNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbjo6Y3JlYXRlKGljZVNlcnZlcnMsIGNv
bmZpZ3VyYXRpb24uaWNlVHJhbnNwb3J0UG9saWN5KCksIGNvbmZpZ3VyYXRpb24uYnVuZGxlUG9s
aWN5KCkpKTsKKyAgICBtX21lZGlhRW5kcG9pbnQtPnNldENvbmZpZ3VyYXRpb24oeyBXVEZNb3Zl
KGljZVNlcnZlcnMpLCBjb25maWd1cmF0aW9uLmljZVRyYW5zcG9ydFBvbGljeSgpLCBjb25maWd1
cmF0aW9uLmJ1bmRsZVBvbGljeSgpIH0pOwogfQogCiB2b2lkIE1lZGlhRW5kcG9pbnRQZWVyQ29u
bmVjdGlvbjo6YWRkSWNlQ2FuZGlkYXRlKFJUQ0ljZUNhbmRpZGF0ZSYgcnRjQ2FuZGlkYXRlLCBQ
ZWVyQ29ubmVjdGlvbjo6Vm9pZFByb21pc2UmJiBwcm9taXNlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcAppbmRleCBjZGFm
YzQ1OGE4YThlYTQyNWEzZGIyMjMwZGZiYmRhYTM2MWIxMmI5Li5mNGVhODg0YmY0OGE4NTk5ZTBi
ODIwMjk2ZWU3NWZhNjEyNTdiMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcApAQCAtNTcsNyArNTcsNyBAQCBjbGFz
cyBFbXB0eU1lZGlhRW5kcG9pbnQgOiBwdWJsaWMgTWVkaWFFbmRwb2ludCB7CiBwdWJsaWM6CiAg
ICAgRW1wdHlNZWRpYUVuZHBvaW50KE1lZGlhRW5kcG9pbnRDbGllbnQmKSB7IH0KIAotICAgIHZv
aWQgc2V0Q29uZmlndXJhdGlvbihSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+JiYp
IG92ZXJyaWRlIHsgfQorICAgIHZvaWQgc2V0Q29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50Q29u
ZmlndXJhdGlvbiYmKSBvdmVycmlkZSB7IH0KIAogICAgIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygp
IG92ZXJyaWRlIHsgfQogICAgIE1lZGlhUGF5bG9hZFZlY3RvciBnZXREZWZhdWx0QXVkaW9QYXls
b2FkcygpIG92ZXJyaWRlIHsgcmV0dXJuIE1lZGlhUGF5bG9hZFZlY3RvcigpOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmgKaW5k
ZXggZGY0MjU1NWMyNDVhMDJiM2EzZGFjNzhiZWFiZTUyMTA3MTg2OWY3Yy4uMGMxYTNiYWYzMzkx
ZWM2ZjM5MzVkYzQ1ZGYyNzAyMTk3YTljOWIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuaApAQCAtNjMsNyArNjMsNyBAQCBw
dWJsaWM6CiAKICAgICB1c2luZyBJY2VUcmFuc3BvcnRTdGF0ZSA9IFBlZXJDb25uZWN0aW9uU3Rh
dGVzOjpJY2VUcmFuc3BvcnRTdGF0ZTsKIAotICAgIHZpcnR1YWwgdm9pZCBzZXRDb25maWd1cmF0
aW9uKFJlZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBzZXRDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uJiYpID0g
MDsKIAogICAgIHZpcnR1YWwgdm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgPSAwOwogICAgIHZpcnR1
YWwgTWVkaWFQYXlsb2FkVmVjdG9yIGdldERlZmF1bHRBdWRpb1BheWxvYWRzKCkgPSAwOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2lu
dENvbmZpZ3VyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uY3BwCmluZGV4IGRkMGQ4NmUwMzliMDk3MDRjY2Y3
OGFhZjRlN2ZiMWZlNTgyZDg0MjEuLmMyZGEzNDRhYTMwZjk0MjVmMjZiNGM2ZTRjYTcxYmZiZjg2
ZTZlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01l
ZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5jcHAKQEAgLTM1LDE5ICsz
NSwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUljZVNlcnZlckluZm86OkljZVNlcnZl
ckluZm8oY29uc3QgVmVjdG9yPFN0cmluZz4mIHVybHMsIGNvbnN0IFN0cmluZyYgY3JlZGVudGlh
bCwgY29uc3QgU3RyaW5nJiB1c2VybmFtZSkKLSAgICA6IG1fY3JlZGVudGlhbChjcmVkZW50aWFs
KQotICAgICwgbV91c2VybmFtZSh1c2VybmFtZSkKK01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9u
OjpNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihWZWN0b3I8SWNlU2VydmVySW5mbz4mJiBpY2VT
ZXJ2ZXJzLCBJY2VUcmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0UG9saWN5LCBCdW5kbGVQb2xp
Y3kgYnVuZGxlUG9saWN5KQorICAgIDogaWNlU2VydmVycyhXVEZNb3ZlKGljZVNlcnZlcnMpKQor
ICAgICwgaWNlVHJhbnNwb3J0UG9saWN5KGljZVRyYW5zcG9ydFBvbGljeSkKKyAgICAsIGJ1bmRs
ZVBvbGljeShidW5kbGVQb2xpY3kpCiB7Ci0gICAgbV91cmxzLnJlc2VydmVDYXBhY2l0eSh1cmxz
LnNpemUoKSk7Ci0gICAgZm9yIChhdXRvJiB1cmwgOiB1cmxzKQotICAgICAgICBtX3VybHMuYXBw
ZW5kKFVSTChVUkwoKSwgdXJsKSk7CiB9CiAKLU1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uOjpN
ZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihWZWN0b3I8UmVmUHRyPEljZVNlcnZlckluZm8+PiYg
aWNlU2VydmVycywgSWNlVHJhbnNwb3J0UG9saWN5IGljZVRyYW5zcG9ydFBvbGljeSwgQnVuZGxl
UG9saWN5IGJ1bmRsZVBvbGljeSkKLSAgICA6IG1faWNlU2VydmVycyhpY2VTZXJ2ZXJzKQotICAg
ICwgbV9pY2VUcmFuc3BvcnRQb2xpY3koaWNlVHJhbnNwb3J0UG9saWN5KQotICAgICwgbV9idW5k
bGVQb2xpY3koYnVuZGxlUG9saWN5KQorTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb246OkljZVNl
cnZlckluZm86OkljZVNlcnZlckluZm8oVmVjdG9yPFVSTD4mJiB1cmxzLCBjb25zdCBTdHJpbmcm
IGNyZWRlbnRpYWwsIGNvbnN0IFN0cmluZyYgdXNlcm5hbWUpCisgICAgOiB1cmxzKFdURk1vdmUo
dXJscykpCisgICAgLCBjcmVkZW50aWFsKGNyZWRlbnRpYWwpCisgICAgLCB1c2VybmFtZSh1c2Vy
bmFtZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmgKaW5kZXggMDlhNDU3
ZDc0ZDRlMWZkMTUxNjlkZmUzNzViMmRhMjRlNzkyNjMxNy4uNWI3NGEyNmEzZDc1MjY4OTc0YTA5
ZjgwNWRmNThhZTk3MDdiOTA0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5oCkBA
IC0yOCw2NCArMjgsMzcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBNZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbl9oCi0jZGVmaW5lIE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9u
X2gKKyNwcmFnbWEgb25jZQogCiAjaWYgRU5BQkxFKFdFQl9SVEMpCiAKICNpbmNsdWRlICJQZWVy
Q29ubmVjdGlvblN0YXRlcy5oIgogI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBJY2VTZXJ2ZXJJbmZvIDogcHVibGljIFJlZkNvdW50ZWQ8SWNlU2VydmVySW5m
bz4gewotcHVibGljOgotICAgIHN0YXRpYyBSZWZQdHI8SWNlU2VydmVySW5mbz4gY3JlYXRlKGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiB1cmxzLCBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwsIGNvbnN0
IFN0cmluZyYgdXNlcm5hbWUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IElj
ZVNlcnZlckluZm8odXJscywgY3JlZGVudGlhbCwgdXNlcm5hbWUpKTsKLSAgICB9Ci0gICAgdmly
dHVhbCB+SWNlU2VydmVySW5mbygpIHsgfQorc3RydWN0IE1lZGlhRW5kcG9pbnRDb25maWd1cmF0
aW9uIHsKKyAgICAvLyBGSVhNRTogV2UgbWlnaHQgYmUgYWJsZSB0byByZW1vdmUgdGhlc2UgY29u
c3RydWN0b3JzIG9uY2UgYWxsIGNvbXBpbGVycyBjYW4gaGFuZGxlIHdpdGhvdXQgaXQgKHNlZSBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzMjU1I2MxNSkKKyAgICBz
dHJ1Y3QgSWNlU2VydmVySW5mbyB7CisgICAgICAgIFZlY3RvcjxVUkw+IHVybHM7CisgICAgICAg
IFN0cmluZyBjcmVkZW50aWFsOworICAgICAgICBTdHJpbmcgdXNlcm5hbWU7CiAKLSAgICBjb25z
dCBWZWN0b3I8VVJMPiYgdXJscygpIGNvbnN0IHsgcmV0dXJuIG1fdXJsczsgfQotICAgIGNvbnN0
IFN0cmluZyYgY3JlZGVudGlhbCgpIGNvbnN0IHsgcmV0dXJuIG1fY3JlZGVudGlhbDsgfQotICAg
IGNvbnN0IFN0cmluZyYgdXNlcm5hbWUoKSBjb25zdCB7IHJldHVybiBtX3VzZXJuYW1lOyB9Cisg
ICAgICAgIEljZVNlcnZlckluZm8oVmVjdG9yPFVSTD4mJiwgY29uc3QgU3RyaW5nJiwgY29uc3Qg
U3RyaW5nJik7CisgICAgfTsKIAotcHJpdmF0ZToKLSAgICBJY2VTZXJ2ZXJJbmZvKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiB1cmxzLCBjb25zdCBTdHJpbmcmIGNyZWRlbnRpYWwsIGNvbnN0IFN0cmlu
ZyYgdXNlcm5hbWUpOwotCi0gICAgVmVjdG9yPFVSTD4gbV91cmxzOwotICAgIFN0cmluZyBtX2Ny
ZWRlbnRpYWw7Ci0gICAgU3RyaW5nIG1fdXNlcm5hbWU7Ci19OwotCi1jbGFzcyBNZWRpYUVuZHBv
aW50Q29uZmlndXJhdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhRW5kcG9pbnRDb25maWd1
cmF0aW9uPiB7Ci1wdWJsaWM6CiAgICAgdXNpbmcgSWNlVHJhbnNwb3J0UG9saWN5ID0gUGVlckNv
bm5lY3Rpb25TdGF0ZXM6OkljZVRyYW5zcG9ydFBvbGljeTsKICAgICB1c2luZyBCdW5kbGVQb2xp
Y3kgPSBQZWVyQ29ubmVjdGlvblN0YXRlczo6QnVuZGxlUG9saWN5OwogCi0gICAgc3RhdGljIFJl
ZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4gY3JlYXRlKFZlY3RvcjxSZWZQdHI8SWNl
U2VydmVySW5mbz4+JiBpY2VTZXJ2ZXJzLCBJY2VUcmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0
UG9saWN5LCBCdW5kbGVQb2xpY3kgYnVuZGxlUG9saWN5KQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbihpY2VTZXJ2ZXJzLCBpY2VU
cmFuc3BvcnRQb2xpY3ksIGJ1bmRsZVBvbGljeSkpOwotICAgIH0KKyAgICBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbihWZWN0b3I8SWNlU2VydmVySW5mbz4mJiwgSWNlVHJhbnNwb3J0UG9saWN5
LCBCdW5kbGVQb2xpY3kpOwogCi0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxJY2VTZXJ2ZXJJbmZv
Pj4mIGljZVNlcnZlcnMoKSBjb25zdCB7IHJldHVybiBtX2ljZVNlcnZlcnM7IH0KLSAgICBJY2VU
cmFuc3BvcnRQb2xpY3kgaWNlVHJhbnNwb3J0UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9pY2VU
cmFuc3BvcnRQb2xpY3k7IH0KLSAgICBCdW5kbGVQb2xpY3kgYnVuZGxlUG9saWN5KCkgY29uc3Qg
eyByZXR1cm4gbV9idW5kbGVQb2xpY3k7IH0KLQotcHJpdmF0ZToKLSAgICBNZWRpYUVuZHBvaW50
Q29uZmlndXJhdGlvbihWZWN0b3I8UmVmUHRyPEljZVNlcnZlckluZm8+PiYsIEljZVRyYW5zcG9y
dFBvbGljeSwgQnVuZGxlUG9saWN5KTsKLQotICAgIFZlY3RvcjxSZWZQdHI8SWNlU2VydmVySW5m
bz4+IG1faWNlU2VydmVyczsKLSAgICBJY2VUcmFuc3BvcnRQb2xpY3kgbV9pY2VUcmFuc3BvcnRQ
b2xpY3k7Ci0gICAgQnVuZGxlUG9saWN5IG1fYnVuZGxlUG9saWN5OworICAgIFZlY3RvcjxJY2VT
ZXJ2ZXJJbmZvPiBpY2VTZXJ2ZXJzOworICAgIEljZVRyYW5zcG9ydFBvbGljeSBpY2VUcmFuc3Bv
cnRQb2xpY3k7CisgICAgQnVuZGxlUG9saWN5IGJ1bmRsZVBvbGljeTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfUlRDKQotCi0jZW5kaWYgLy8g
TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb25faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50T3dyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53ZWJydGMvTWVkaWFFbmRwb2lu
dE93ci5jcHAKaW5kZXggMzljMTE2NGMwMjg3YjI4NDczMzljMzZlYTY1MGViOWE4ZGUyZjJmZi4u
OTQ3NzFkYzhkY2NlM2M5ZmY2YmYxYzc3MzU2NWY1NmRhZTJhYWM4NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vb3BlbndlYnJ0Yy9NZWRpYUVuZHBvaW50
T3dyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2Vi
cnRjL01lZGlhRW5kcG9pbnRPd3IuY3BwCkBAIC04OSw5ICs4OSw5IEBAIE1lZGlhRW5kcG9pbnRP
d3I6On5NZWRpYUVuZHBvaW50T3dyKCkKICAgICBnX3JlZ2V4X3VucmVmKG1faGVscGVyU2VydmVy
UmVnRXgpOwogfQogCi12b2lkIE1lZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24oUmVm
UHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmIGNvbmZpZ3VyYXRpb24pCit2b2lkIE1l
ZGlhRW5kcG9pbnRPd3I6OnNldENvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRp
b24mJiBjb25maWd1cmF0aW9uKQogewotICAgIG1fY29uZmlndXJhdGlvbiA9IGNvbmZpZ3VyYXRp
b247CisgICAgbV9jb25maWd1cmF0aW9uID0gV1RGTW92ZShjb25maWd1cmF0aW9uKTsKIH0KIAog
c3RhdGljIHZvaWQgY3J5cHRvRGF0YUNhbGxiYWNrKGdjaGFyKiBwcml2YXRlS2V5LCBnY2hhciog
Y2VydGlmaWNhdGUsIGdjaGFyKiBmaW5nZXJwcmludCwgZ2NoYXIqIGZpbmdlcnByaW50RnVuY3Rp
b24sIGdwb2ludGVyIGRhdGEpCkBAIC01NTIsOCArNTUyLDkgQEAgdm9pZCBNZWRpYUVuZHBvaW50
T3dyOjplbnN1cmVUcmFuc3BvcnRBZ2VudEFuZFRyYW5zY2VpdmVycyhib29sIGlzSW5pdGlhdG9y
LCBjb24KICAgICBpZiAoIW1fdHJhbnNwb3J0QWdlbnQpIHsKICAgICAgICAgbV90cmFuc3BvcnRB
Z2VudCA9IG93cl90cmFuc3BvcnRfYWdlbnRfbmV3KGZhbHNlKTsKIAotICAgICAgICBmb3IgKGF1
dG8mIHNlcnZlciA6IG1fY29uZmlndXJhdGlvbi0+aWNlU2VydmVycygpKSB7Ci0gICAgICAgICAg
ICBmb3IgKGF1dG8mIHdlYmtpdFVybCA6IHNlcnZlci0+dXJscygpKSB7CisgICAgICAgIEFTU0VS
VChtX2NvbmZpZ3VyYXRpb24pOworICAgICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1fY29uZmln
dXJhdGlvbi0+aWNlU2VydmVycykgeworICAgICAgICAgICAgZm9yIChhdXRvJiB3ZWJraXRVcmwg
OiBzZXJ2ZXIudXJscykgewogICAgICAgICAgICAgICAgIEhlbHBlclNlcnZlclVybCB1cmw7CiAg
ICAgICAgICAgICAgICAgLy8gV2ViS2l0J3MgVVJMIGNsYXNzIGNhbid0IGhhbmRsZSBJQ0UgaGVs
cGVyIHNlcnZlciB1cmxzIHByb3Blcmx5CiAgICAgICAgICAgICAgICAgcGFyc2VIZWxwZXJTZXJ2
ZXJVcmwoKm1faGVscGVyU2VydmVyUmVnRXgsIHdlYmtpdFVybCwgdXJsKTsKQEAgLTU3MCw3ICs1
NzEsNyBAQCB2b2lkIE1lZGlhRW5kcG9pbnRPd3I6OmVuc3VyZVRyYW5zcG9ydEFnZW50QW5kVHJh
bnNjZWl2ZXJzKGJvb2wgaXNJbml0aWF0b3IsIGNvbgogCiAgICAgICAgICAgICAgICAgICAgIG93
cl90cmFuc3BvcnRfYWdlbnRfYWRkX2hlbHBlcl9zZXJ2ZXIobV90cmFuc3BvcnRBZ2VudCwgc2Vy
dmVyVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgIHVybC5ob3N0LmFzY2lpKCkuZGF0YSgp
LCBwb3J0LAotICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyLT51c2VybmFtZSgpLmFzY2lp
KCkuZGF0YSgpLCBzZXJ2ZXItPmNyZWRlbnRpYWwoKS5hc2NpaSgpLmRhdGEoKSk7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzZXJ2ZXIudXNlcm5hbWUuYXNjaWkoKS5kYXRhKCksIHNlcnZlci5j
cmVkZW50aWFsLmFzY2lpKCkuZGF0YSgpKTsKICAgICAgICAgICAgICAgICB9IGVsc2UKICAgICAg
ICAgICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9vcGVud2VicnRjL01l
ZGlhRW5kcG9pbnRPd3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29w
ZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCmluZGV4IDdkNDNkYzJiM2NiODg5NjIwMmRlNzg5
NGNiMTU3ZjYwNTI4YjEwNTUuLjc3ZDFmNmNmMjMyNmU2MmRjY2IyZTFmZTZhN2JlNmQ5M2Q5ZDgy
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL29wZW53
ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL29wZW53ZWJydGMvTWVkaWFFbmRwb2ludE93ci5oCkBAIC04Miw3ICs4Miw3IEBA
IHB1YmxpYzoKICAgICBNZWRpYUVuZHBvaW50T3dyKE1lZGlhRW5kcG9pbnRDbGllbnQmKTsKICAg
ICB+TWVkaWFFbmRwb2ludE93cigpOwogCi0gICAgdm9pZCBzZXRDb25maWd1cmF0aW9uKFJlZlB0
cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4mJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRD
b25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uJiYpIG92ZXJyaWRlOwogCiAg
ICAgdm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgb3ZlcnJpZGU7CiAgICAgTWVkaWFQYXlsb2FkVmVj
dG9yIGdldERlZmF1bHRBdWRpb1BheWxvYWRzKCkgb3ZlcnJpZGU7CkBAIC0xMjUsNyArMTI1LDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIGVuc3VyZVRyYW5zcG9ydEFnZW50QW5kVHJhbnNjZWl2ZXJz
KGJvb2wgaXNJbml0aWF0b3IsIGNvbnN0IFZlY3RvcjxUcmFuc2NlaXZlckNvbmZpZz4mKTsKICAg
ICB2b2lkIGludGVybmFsQWRkUmVtb3RlQ2FuZGlkYXRlKE93clNlc3Npb24qLCBJY2VDYW5kaWRh
dGUmLCBjb25zdCBTdHJpbmcmIHVmcmFnLCBjb25zdCBTdHJpbmcmIHBhc3N3b3JkKTsKIAotICAg
IFJlZlB0cjxNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbj4gbV9jb25maWd1cmF0aW9uOworICAg
IE9wdGlvbmFsPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiBtX2NvbmZpZ3VyYXRpb247CiAg
ICAgR1JlZ2V4KiBtX2hlbHBlclNlcnZlclJlZ0V4OwogCiAgICAgT3dyVHJhbnNwb3J0QWdlbnQq
IG1fdHJhbnNwb3J0QWdlbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL01vY2tNZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
TW9ja01lZGlhRW5kcG9pbnQuY3BwCmluZGV4IDU3ZWQ0ZTU2OTYzMjg3ZTQ2MjMyNjE4OWExMjQz
NDc0NzAzN2YyN2YuLjJlN2Y4Yzg3MWI4N2NmODUwZjEwY2VjMTNkMDE1OTk0MjBmZjhjNWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9pbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlhRW5kcG9pbnQu
Y3BwCkBAIC02MywxMSArNjMsNiBAQCBNb2NrTWVkaWFFbmRwb2ludDo6fk1vY2tNZWRpYUVuZHBv
aW50KCkKICAgICBzdG9wKCk7CiB9CiAKLXZvaWQgTW9ja01lZGlhRW5kcG9pbnQ6OnNldENvbmZp
Z3VyYXRpb24oUmVmUHRyPE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uPiYmIGNvbmZpZ3VyYXRp
b24pCi17Ci0gICAgVU5VU0VEX1BBUkFNKGNvbmZpZ3VyYXRpb24pOwotfQotCiB2b2lkIE1vY2tN
ZWRpYUVuZHBvaW50OjpnZW5lcmF0ZUR0bHNJbmZvKCkKIHsKICAgICBjYWxsT25NYWluVGhyZWFk
KFt0aGlzXSgpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9j
a01lZGlhRW5kcG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja01lZGlh
RW5kcG9pbnQuaAppbmRleCAxMDEzNDRmOGNhYTM0MDViNTJjMjFlYTI2YzYyMTIwMTA4ODk0ZDZm
Li4zNjkzNDIyMjdjZGI3YjY3NzlmZDdlZTllNmRkMDRiZTA5MDAyNjFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tNZWRpYUVuZHBvaW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrTWVkaWFFbmRwb2ludC5oCkBAIC0zOCwzMiAr
MzgsMzIgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBNb2NrTWVkaWFFbmRwb2lu
dCA6IHB1YmxpYyBNZWRpYUVuZHBvaW50IHsKK2NsYXNzIE1vY2tNZWRpYUVuZHBvaW50IGZpbmFs
IDogcHVibGljIE1lZGlhRW5kcG9pbnQgewogcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TWVkaWFFbmRwb2ludD4gY3JlYXRlKE1lZGlhRW5kcG9pbnRD
bGllbnQmKTsKIAogICAgIE1vY2tNZWRpYUVuZHBvaW50KE1lZGlhRW5kcG9pbnRDbGllbnQmKTsK
ICAgICB+TW9ja01lZGlhRW5kcG9pbnQoKTsKIAotICAgIHZvaWQgc2V0Q29uZmlndXJhdGlvbihS
ZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+JiYpIG92ZXJyaWRlOworICAgIHZvaWQg
c2V0Q29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbiYmKSBmaW5hbCB7IH07
CiAKLSAgICB2b2lkIGdlbmVyYXRlRHRsc0luZm8oKSBvdmVycmlkZTsKLSAgICBNZWRpYVBheWxv
YWRWZWN0b3IgZ2V0RGVmYXVsdEF1ZGlvUGF5bG9hZHMoKSBvdmVycmlkZTsKLSAgICBNZWRpYVBh
eWxvYWRWZWN0b3IgZ2V0RGVmYXVsdFZpZGVvUGF5bG9hZHMoKSBvdmVycmlkZTsKLSAgICBNZWRp
YVBheWxvYWRWZWN0b3IgZmlsdGVyUGF5bG9hZHMoY29uc3QgTWVkaWFQYXlsb2FkVmVjdG9yJiBy
ZW1vdGVQYXlsb2FkcywgY29uc3QgTWVkaWFQYXlsb2FkVmVjdG9yJiBkZWZhdWx0UGF5bG9hZHMp
IG92ZXJyaWRlOworICAgIHZvaWQgZ2VuZXJhdGVEdGxzSW5mbygpIGZpbmFsOworICAgIE1lZGlh
UGF5bG9hZFZlY3RvciBnZXREZWZhdWx0QXVkaW9QYXlsb2FkcygpIGZpbmFsOworICAgIE1lZGlh
UGF5bG9hZFZlY3RvciBnZXREZWZhdWx0VmlkZW9QYXlsb2FkcygpIGZpbmFsOworICAgIE1lZGlh
UGF5bG9hZFZlY3RvciBmaWx0ZXJQYXlsb2Fkcyhjb25zdCBNZWRpYVBheWxvYWRWZWN0b3ImIHJl
bW90ZVBheWxvYWRzLCBjb25zdCBNZWRpYVBheWxvYWRWZWN0b3ImIGRlZmF1bHRQYXlsb2Fkcykg
ZmluYWw7CiAKLSAgICBVcGRhdGVSZXN1bHQgdXBkYXRlUmVjZWl2ZUNvbmZpZ3VyYXRpb24oTWVk
aWFFbmRwb2ludFNlc3Npb25Db25maWd1cmF0aW9uKiwgYm9vbCBpc0luaXRpYXRvcikgb3ZlcnJp
ZGU7Ci0gICAgVXBkYXRlUmVzdWx0IHVwZGF0ZVNlbmRDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9p
bnRTZXNzaW9uQ29uZmlndXJhdGlvbiosIGNvbnN0IFJlYWx0aW1lTWVkaWFTb3VyY2VNYXAmLCBi
b29sIGlzSW5pdGlhdG9yKSBvdmVycmlkZTsKKyAgICBVcGRhdGVSZXN1bHQgdXBkYXRlUmVjZWl2
ZUNvbmZpZ3VyYXRpb24oTWVkaWFFbmRwb2ludFNlc3Npb25Db25maWd1cmF0aW9uKiwgYm9vbCBp
c0luaXRpYXRvcikgZmluYWw7CisgICAgVXBkYXRlUmVzdWx0IHVwZGF0ZVNlbmRDb25maWd1cmF0
aW9uKE1lZGlhRW5kcG9pbnRTZXNzaW9uQ29uZmlndXJhdGlvbiosIGNvbnN0IFJlYWx0aW1lTWVk
aWFTb3VyY2VNYXAmLCBib29sIGlzSW5pdGlhdG9yKSBmaW5hbDsKIAotICAgIHZvaWQgYWRkUmVt
b3RlQ2FuZGlkYXRlKEljZUNhbmRpZGF0ZSYsIGNvbnN0IFN0cmluZyYgbWlkLCBjb25zdCBTdHJp
bmcmIHVmcmFnLCBjb25zdCBTdHJpbmcmIHBhc3N3b3JkKSBvdmVycmlkZTsKKyAgICB2b2lkIGFk
ZFJlbW90ZUNhbmRpZGF0ZShJY2VDYW5kaWRhdGUmLCBjb25zdCBTdHJpbmcmIG1pZCwgY29uc3Qg
U3RyaW5nJiB1ZnJhZywgY29uc3QgU3RyaW5nJiBwYXNzd29yZCkgZmluYWw7CiAKLSAgICBSZWY8
UmVhbHRpbWVNZWRpYVNvdXJjZT4gY3JlYXRlTXV0ZWRSZW1vdGVTb3VyY2UoY29uc3QgU3RyaW5n
JiBtaWQsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlR5cGUpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVw
bGFjZVNlbmRTb3VyY2UoUmVhbHRpbWVNZWRpYVNvdXJjZSYsIGNvbnN0IFN0cmluZyYgbWlkKSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlcGxhY2VNdXRlZFJlbW90ZVNvdXJjZU1pZChjb25zdCBTdHJp
bmcmIG9sZE1pZCwgY29uc3QgU3RyaW5nJiBuZXdNaWQpIG92ZXJyaWRlOworICAgIFJlZjxSZWFs
dGltZU1lZGlhU291cmNlPiBjcmVhdGVNdXRlZFJlbW90ZVNvdXJjZShjb25zdCBTdHJpbmcmIG1p
ZCwgUmVhbHRpbWVNZWRpYVNvdXJjZTo6VHlwZSkgZmluYWw7CisgICAgdm9pZCByZXBsYWNlU2Vu
ZFNvdXJjZShSZWFsdGltZU1lZGlhU291cmNlJiwgY29uc3QgU3RyaW5nJiBtaWQpIGZpbmFsOwor
ICAgIHZvaWQgcmVwbGFjZU11dGVkUmVtb3RlU291cmNlTWlkKGNvbnN0IFN0cmluZyYgb2xkTWlk
LCBjb25zdCBTdHJpbmcmIG5ld01pZCkgZmluYWw7CiAKLSAgICB2b2lkIHN0b3AoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHN0b3AoKSBmaW5hbDsKIAotICAgIHZvaWQgZW11bGF0ZVBsYXRmb3JtRXZl
bnQoY29uc3QgU3RyaW5nJiBhY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZW11bGF0ZVBsYXRm
b3JtRXZlbnQoY29uc3QgU3RyaW5nJiBhY3Rpb24pIGZpbmFsOwogCiBwcml2YXRlOgogICAgIHZv
aWQgdXBkYXRlQ29uZmlndXJhdGlvbk1pZHMoY29uc3QgTWVkaWFFbmRwb2ludFNlc3Npb25Db25m
aWd1cmF0aW9uJik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>