<?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>182410</bug_id>
          
          <creation_ts>2018-02-01 15:51:38 -0800</creation_ts>
          <short_desc>HasServiceWorkerRegistration bit should be sent when creating a new page</short_desc>
          <delta_ts>2018-02-06 13:24:16 -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>Service Workers</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>InRadar</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>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1395676</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-01 15:51:38 -0800</bug_when>
    <thetext>Currently it is done when creating a process which is bad since the bit is based on session.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395677</commentid>
    <comment_count>1</comment_count>
      <attachid>332919</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-01 15:53:45 -0800</bug_when>
    <thetext>Created attachment 332919
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395731</commentid>
    <comment_count>2</comment_count>
      <attachid>332935</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-01 20:13:34 -0800</bug_when>
    <thetext>Created attachment 332935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395973</commentid>
    <comment_count>3</comment_count>
      <attachid>332997</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-02 13:21:32 -0800</bug_when>
    <thetext>Created attachment 332997
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396082</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-02 18:13:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/37178540&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396806</commentid>
    <comment_count>5</comment_count>
      <attachid>332997</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-06 09:31:50 -0800</bug_when>
    <thetext>Comment on attachment 332997
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396832</commentid>
    <comment_count>6</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-06 10:39:09 -0800</bug_when>
    <thetext>Discussed with Chris and we will probably add an optimization which is that web process pool will only check once for filename existence of service worker registration database.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396867</commentid>
    <comment_count>7</comment_count>
      <attachid>333196</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-02-06 11:35:36 -0800</bug_when>
    <thetext>Created attachment 333196
Added bit caching</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396913</commentid>
    <comment_count>8</comment_count>
      <attachid>333196</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-06 13:24:14 -0800</bug_when>
    <thetext>Comment on attachment 333196
Added bit caching

Clearing flags on attachment: 333196

Committed r228188: &lt;https://trac.webkit.org/changeset/228188&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1396914</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-06 13:24:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332919</attachid>
            <date>2018-02-01 15:53:45 -0800</date>
            <delta_ts>2018-02-01 20:13:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182410-20180201155345.patch</filename>
            <type>text/plain</type>
            <size>10663</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3OTAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGZhYmQ1ZDM3ZWM0ZDIx
NzRhOGMwM2M1NGY3Nzg1OTRjZTQ2YzlmYi4uMjY3NTZhNTU0MDVmZTc5NDBhNTBmOWM5YjcwNDUy
YTkwNzdkNmFjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE4LTAyLTAxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBIYXNTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uIGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjQxMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd29ya2Vy
cy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5oOgorCiAyMDE4LTAyLTAxICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBDbGVhcmluZyBhbGwgc2Vydmlj
ZSB3b3JrZXIgcmVnaXN0cmF0aW9ucyBzaG91bGQgd2FpdCBmb3IgaW1wb3J0aW5nIHNlcnZpY2Ug
d29ya2VyIHJlZ2lzdHJhdGlvbiB0byBmaW5pc2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggN2FjMzRiNzAwZTAzNDAx
ZmE5MjRjMjY5Yjg5MjYzOGM4NjBhYTIyMy4uOWZlOTUzY2YxY2EyNGI1ODIzYmVlMDFkMGUwZWQw
ZDI1MTM0YTVjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxOC0wMi0wMSAgWW91ZW5u
IEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFzU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbiBiaXQgc2hvdWxkIGJlIHNlbnQgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI0MTAKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9X
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmluaXRpYWxpemVXZWJQYWdlKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9j
ZXNzUG9vbDo6aW5pdGlhbGl6ZU5ld1dlYlByb2Nlc3MpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9jcHVMaW1pdCk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJv
Y2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDE4LTAyLTAxICBZb3Vlbm4gRmFibGV0
ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBDb25maWd1cmUgc2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbkRpcmVjdG9yeSBvbiB0aGUgd2ViIHNpdGUgZGF0YSBzdG9yZSBhbmQgbW92ZSBp
dCB0byBhIENhY2hlcyBzdWJmb2xkZXIgYXMgYSBkZWZhdWx0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmgKaW5kZXggMWRm
ZjQ0NzBjY2FhNTkwZWY0Y2U0MGYxNjY3ZGJkY2VhMzRiMjE2NS4uMTJkNmUzNDY0YzYwM2IzM2Iy
ZjIyYWNkODg1OWU5ZTE4ZmNlMWYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaApAQCAtNDksMTAgKzQ5LDEwIEBA
IHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVnaXN0ZXJTZXJ2aWNlV29ya2Vy
Q2xpZW50cyhQQUw6OlNlc3Npb25JRCk7CiAKLSAgICB2b2lkIHNldEhhc1JlZ2lzdGVyZWRTZXJ2
aWNlV29ya2Vycyhib29sIHZhbHVlKSB7IG1faGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzID0g
dmFsdWU7IH0KKyAgICB2b2lkIHNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycygpIHsgbV9o
YXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgPSB0cnVlOyB9CiAKIHByaXZhdGU6Ci0gICAgYm9v
bCBtX2hhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyB7IHRydWUgfTsKKyAgICBib29sIG1faGFz
UmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5jcHAKaW5kZXggM2IwNDI5ZjQ0ZWRjYTZiMTc0MDViY2YyZGI3Nzc2Njc1MTY5NzNj
Yi4uZmVlZDJmYmEzNTY5MmVmMzc0YzVhNjMxNzk2NWY4NDdlOGUxZjZkNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTEw
Myw2ICsxMDMsOSBAQCB2b2lkIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6
OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCB1cmxTY2hlbWVIYW5kbGVy
czsKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAgICAgZW5jb2RlciA8PCBhcHBs
aWNhdGlvbk1hbmlmZXN0OworI2VuZGlmCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAg
IGVuY29kZXIgPDwgaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzOwogI2VuZGlmCiAgICAgZW5j
b2RlciA8PCBpY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkOwogICAgIGVuY29kZXIgPDwgZW51
bWVyYXRpbmdBbGxOZXR3b3JrSW50ZXJmYWNlc0VuYWJsZWQ7CkBAIC0yODMsNiArMjg2LDEwIEBA
IHN0ZDo6b3B0aW9uYWw8V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycz4gV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6CiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAg
ICAgcGFyYW1ldGVycy5hcHBsaWNhdGlvbk1hbmlmZXN0ID0gV1RGTW92ZSgqYXBwbGljYXRpb25N
YW5pZmVzdCk7CiAjZW5kaWYKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykpCisg
ICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisjZW5kaWYKIAogICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUocGFyYW1ldGVycy5pY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkKSkKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA0OWY3N2Y5ZDBmOTE3OGNkMzRmMjFiNGQzMjAwZDky
NzFhYjY0OWM1Li5lNzZlZTM0ZTk0NTYxMjg0YzI4MmJlYTczNGM1NDUyNTc2NzdlYTZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBA
IC0xNjYsNiArMTY2LDEwIEBAIHN0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAg
ICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkFwcGxpY2F0aW9uTWFuaWZlc3Q+IGFwcGxpY2F0aW9u
TWFuaWZlc3Q7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBib29s
IGhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyB7IHRydWUgfTsKKyNlbmRpZgorCiAgICAgLy8g
V2ViUlRDIG1lbWJlcnMuCiAgICAgYm9vbCBpY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkIHsg
dHJ1ZSB9OwogICAgIGJvb2wgZW51bWVyYXRpbmdBbGxOZXR3b3JrSW50ZXJmYWNlc0VuYWJsZWQg
eyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCAyMjZhZjBhOWIyYTA1ZGU0YjY5ZTYxNzFiOGM1ZGI0
NmZhNzcyYTNjLi45YmM2YzM3NTYzNDk4NDQyMDk3YTlmY2E4MWJjZDVkMTRlMDk0MmMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmNwcApAQCAtMTI3LDEwICsxMjcsNiBAQCB2b2lkIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8
PCBoYXNSaWNoQ29udGVudFNlcnZpY2VzOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU0VSVklDRV9X
T1JLRVIpCi0gICAgZW5jb2RlciA8PCBoYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnM7Ci0jZW5k
aWYKLQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIGVuY29kZXIgPDwgcGx1
Z2luTG9hZENsaWVudFBvbGljaWVzOwogI2VuZGlmCkBAIC0zNjUsMTEgKzM2MSw2IEBAIGJvb2wg
V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2Rl
ciwgV2ViUHJvY2Vzc0NyZWF0CiAgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgogCi0jaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVy
cy5oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0j
ZW5kaWYKLQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUocGFyYW1ldGVycy5wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggM2FmNTg5ZjE3MTA5Yjk2OTA2MjYzMGRhYzRiMTVhMjNi
ZmYzNmE0OC4uNzJlOTI3NGM1NWNhNWRmOWUyZjMwN2VmNmUyMTA1ZDM1Njk0NmZhMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
aApAQCAtMTMxLDEwICsxMzEsNiBAQCBzdHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cyB7CiAgICAgYm9vbCBoYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFsc2UgfTsKICNlbmRpZgog
Ci0jaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQotICAgIGJvb2wgaGFzUmVnaXN0ZXJlZFNlcnZp
Y2VXb3JrZXJzIHsgdHJ1ZSB9OwotI2VuZGlmCi0KICAgICBTZWNvbmRzIHRlcm1pbmF0aW9uVGlt
ZW91dDsKIAogICAgIFRleHRDaGVja2VyU3RhdGUgdGV4dENoZWNrZXJTdGF0ZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDk2ZWI1YTlhZTkxMDg2NmIyYzY3
ODk2ZjhlY2U1NDAzZDdjMjU3NWMuLjBmN2EyOWE0ZDk1OGRmNjY1MDk4MTdjYzk3OWY3ZWRjYTQw
MDg2NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNzMw
LDcgKzczMCwxOCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aW5pdGlhbGl6ZVdlYlBhZ2UoKQogICAg
IH0KICNlbmRpZgogCi0gICAgcHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkNy
ZWF0ZVdlYlBhZ2UobV9wYWdlSUQsIGNyZWF0aW9uUGFyYW1ldGVycygpKSwgMCk7CisgICAgYXV0
byBwYXJhbWV0ZXJzID0gY3JlYXRpb25QYXJhbWV0ZXJzKCk7CisKKyNpZiBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCisgICAgU3RyaW5nIHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rvcnkg
PSBtX3dlYnNpdGVEYXRhU3RvcmUtPnJlc29sdmVkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRp
cmVjdG9yeSgpOworICAgIGlmIChzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5Lmlz
RW1wdHkoKSkKKyAgICAgICAgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSA9IEFQ
STo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUNvbmZpZ3VyYXRpb24oKS5zZXJ2
aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5OworCisgICAgLy8gRklYTUU6IE1ha2UgdGhp
cyBjb21wdXRhdGlvbiBvbiBhIGJhY2tncm91bmQgdGhyZWFkLgorICAgIHBhcmFtZXRlcnMuaGFz
UmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzID0gU2VydmljZVdvcmtlclByb2Nlc3NQcm94eTo6aGFz
UmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rv
cnkpOworI2VuZGlmCisKKyAgICBwcm9jZXNzKCkuc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6
Q3JlYXRlV2ViUGFnZShtX3BhZ2VJRCwgcGFyYW1ldGVycyksIDApOwogCiAgICAgbV9uZWVkc1Rv
RmluaXNoSW5pdGlhbGl6aW5nV2ViUGFnZUFmdGVyUHJvY2Vzc0xhdW5jaCA9IHRydWU7CiAgICAg
ZmluaXNoSW5pdGlhbGl6aW5nV2ViUGFnZUFmdGVyUHJvY2Vzc0xhdW5jaCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IGZlYmRkMDliYzA2MjI3OTU1
NjZjM2RlMjlmMzI2MDhlNjFjZDBiM2UuLmRmMGU1MTIyZWEzNzExZGU4NTU1OWVlZGZhNWI4Zjdl
NTExNDQxZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAK
QEAgLTgxNSwxMyArODE1LDYgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6aW5pdGlhbGl6ZU5ld1dl
YlByb2Nlc3MoV2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBXZWJzaXRlRGEKICAgICBzZXJ2aWNl
Q29udHJvbGxlci5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwogI2VuZGlmCiAKLSNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCi0gICAgU3RyaW5nIHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25E
aXJlY3RvcnkgPSB3ZWJzaXRlRGF0YVN0b3JlLnJlc29sdmVkU2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbkRpcmVjdG9yeSgpOwotICAgIGlmIChzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0
b3J5LmlzRW1wdHkoKSkKLSAgICAgICAgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9y
eSA9IEFQSTo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25EaXJlY3RvcnkoKTsKLSAgICBwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cyA9IFNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHk6Omhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cyhzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KTsKLSNlbmRpZgotCiAjaWYgRU5B
QkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgcGFyYW1ldGVycy5wbHVnaW5Mb2FkQ2xpZW50
UG9saWNpZXMgPSBtX3BsdWdpbkxvYWRDbGllbnRQb2xpY2llczsKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTY2ZDMyZjVlN2Y2
MzMyMjY5MzU4MTJkOGRlYzA3ZjAwNzg3ZWExLi5mMjQ5YTk0ZWQyYzZkZGQ2NWQ5NGJjMmE1ZWQ0
MzljYTA4NjA4Zjg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcApAQCAtMTE1LDYgKzExNSw3IEBACiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2xNZXNz
YWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAi
V2ViUHJvZ3Jlc3NUcmFja2VyQ2xpZW50LmgiCisjaW5jbHVkZSAiV2ViU2VydmljZVdvcmtlclBy
b3ZpZGVyLmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0UHJvdmlkZXIuaCIKICNpbmNsdWRlICJXZWJT
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuaCIKICNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHkuaCIKQEAgLTU5MCw2ICs1OTEsMTMgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50NjRfdCBw
YWdlSUQsIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogICAgIHNldFZp
ZXdwb3J0Q29uZmlndXJhdGlvbk1pbmltdW1MYXlvdXRTaXplKHBhcmFtZXRlcnMudmlld3BvcnRD
b25maWd1cmF0aW9uTWluaW11bUxheW91dFNpemUpOwogICAgIHNldE1heGltdW1Vbm9ic2N1cmVk
U2l6ZShwYXJhbWV0ZXJzLm1heGltdW1Vbm9ic2N1cmVkU2l6ZSk7CiAjZW5kaWYKKworI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBhdXRvJiBzZXJ2aWNlV29ya2VyUHJvdmlkZXIgPSBX
ZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNpbmdsZXRvbigpOworICAgIGlmIChwYXJhbWV0ZXJz
Lmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykKKyAgICAgICAgc2VydmljZVdvcmtlclByb3Zp
ZGVyLnNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycygpOworICAgIFNlcnZpY2VXb3JrZXJQ
cm92aWRlcjo6c2V0U2hhcmVkUHJvdmlkZXIoc2VydmljZVdvcmtlclByb3ZpZGVyKTsKKyNlbmRp
ZgogfQogCiAjaWYgRU5BQkxFKFdFQl9SVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5jcHAKaW5kZXggZTdjYWRkY2U1NDkxYjFkZDIwMGJiN2RhNDMyZjhkMGEyOGI2OTQ2My4u
OTY4NmNmMDdmNWNiYWFiNGI5NDJhNjFiMzc1Y2M1Yzc2YTBmYTAwZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtNDEwLDEyICs0MTAsNiBAQCB2b2lkIFdlYlBy
b2Nlc3M6OmluaXRpYWxpemVXZWJQcm9jZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMm
JiBwYXJhbWV0ZXJzKQogICAgIEdhbWVwYWRQcm92aWRlcjo6c2luZ2xldG9uKCkuc2V0U2hhcmVk
UHJvdmlkZXIoV2ViR2FtZXBhZFByb3ZpZGVyOjpzaW5nbGV0b24oKSk7CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAgICBhdXRvJiBzZXJ2aWNlV29ya2VyUHJvdmlkZXIg
PSBXZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNpbmdsZXRvbigpOwotICAgIHNlcnZpY2VXb3Jr
ZXJQcm92aWRlci5zZXRIYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMocGFyYW1ldGVycy5oYXNS
ZWdpc3RlcmVkU2VydmljZVdvcmtlcnMpOwotICAgIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2V0
U2hhcmVkUHJvdmlkZXIoc2VydmljZVdvcmtlclByb3ZpZGVyKTsKLSNlbmRpZgotCiAjaWYgRU5B
QkxFKFdFQkFTU0VNQkxZKQogICAgIEpTQzo6V2FzbTo6ZW5hYmxlRmFzdE1lbW9yeSgpOwogI2Vu
ZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332935</attachid>
            <date>2018-02-01 20:13:34 -0800</date>
            <delta_ts>2018-02-02 13:21:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182410-20180201201334.patch</filename>
            <type>text/plain</type>
            <size>11003</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3OTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTA2ZGY1ZGU2NDlkYWNh
MzIzMGE2NjhhNWUyN2I4YTU2ODkwOWVjOC4uMTRhYzYyYzc5MjljYTQzNTM1MjFjMDRhMzZhYWU0
YmU1MjVhOWNlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTAyLTAxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBIYXNTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uIGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjQxMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoYW5nZWQg
dGhlIGRlZmF1bHQgdmFsdWUgb2Ygc2VydmljZSB3b3JrZXJzIGJlaW5nIHJlZ2lzdGVyZWQgdG8g
ZmFsc2UuCisgICAgICAgIEV2ZXJ5IHBhZ2UgY3JlYXRlZCBpbiB0aGUgcHJvY2VzcyB3aWxsIGJl
IHJlc3BvbnNpYmxlIHRvIGNoYW5nZSB0aGUgdmFsdWUgdG8gdHJ1ZSwKKyAgICAgICAgYXQgd2hp
Y2ggdGltZSB0aGUgdmFsdWUgd2lsbCBiZSBrZXB0IHRvIHRydWUgZm9yIHRoZSBsaWZldGltZSBv
ZiB0aGUgcHJvY2Vzcy4KKworICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2Vy
UHJvdmlkZXIuaDoKKwogMjAxOC0wMi0wMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CiAKICAgICAgICAgQ2xlYXJpbmcgYWxsIHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbnMg
c2hvdWxkIHdhaXQgZm9yIGltcG9ydGluZyBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24gdG8g
ZmluaXNoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGY1MDQzOTgzZjk1MTA2NjBhNDc5ZDVhZjE1Y2NkMTNiOTAyYjFl
M2MuLjE1YmVlNjIzNDkwNWJhNTdkNjZhZDczYzk1NTU0Y2JmNzQyM2YwYWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMTgtMDItMDEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUu
Y29tPgorCisgICAgICAgIEhhc1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24gYml0IHNob3VsZCBi
ZSBzZW50IHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyNDEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgTW92ZSB0aGUgYml0IGNvbXB1dGF0aW9uIGF0IHBhZ2Ug
Y3JlYXRpb24gdGltZS4KKyAgICAgICAgVGhpcyBhbGxvd3MgY29tcHV0aW5nIHRoZSBiaXQgYmFz
ZWQgb24gdGhlIHdlYiBzaXRlIGRhdGEgc3RvcmUgYW5kIG5vdCBvbmx5IG9uIHRoZSBwb29sIGNv
bmZpZ3VyYXRpb24uCisgICAgICAgIFdlYlBhZ2UgdXNlcyB0aGF0IGJpdCB0byBhY3RpdmF0ZSBz
ZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24gbWF0Y2hpbmcgZm9yIHRoZSB3aG9sZSBwcm9jZXNz
LgorCisgICAgICAgIEluIGNhc2UgdGhlcmUgaXMgYSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHBy
b3h5IGNyZWF0ZWQsIHRoZSBiaXQgaXMgc2V0IHRvIHRydWUgYnkgZGVmYXVsdC4KKworICAgICAg
ICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFy
ZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJQcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmluaXRpYWxpemVXZWJQYWdl
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQcm9jZXNzUG9vbDo6aW5pdGlhbGl6ZU5ld1dlYlByb2Nlc3MpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9jcHVM
aW1pdCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDE4LTAyLTAxICBZ
b3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBDbGVhcmluZyBhbGwg
c2VydmljZSB3b3JrZXIgcmVnaXN0cmF0aW9ucyBzaG91bGQgd2FpdCBmb3IgaW1wb3J0aW5nIHNl
cnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbiB0byBmaW5pc2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaAppbmRleCAxZGZm
NDQ3MGNjYWE1OTBlZjRjZTQwZjE2NjdkYmRjZWEzNGIyMTY1Li4xMmQ2ZTM0NjRjNjAzYjMzYjJm
MjJhY2Q4ODU5ZTllMThmY2UxZjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5oCkBAIC00OSwxMCArNDksMTAgQEAg
cHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZWdpc3RlclNlcnZpY2VXb3JrZXJD
bGllbnRzKFBBTDo6U2Vzc2lvbklEKTsKIAotICAgIHZvaWQgc2V0SGFzUmVnaXN0ZXJlZFNlcnZp
Y2VXb3JrZXJzKGJvb2wgdmFsdWUpIHsgbV9oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgPSB2
YWx1ZTsgfQorICAgIHZvaWQgc2V0SGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKCkgeyBtX2hh
c1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyA9IHRydWU7IH0KIAogcHJpdmF0ZToKLSAgICBib29s
IG1faGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzIHsgdHJ1ZSB9OworICAgIGJvb2wgbV9oYXNS
ZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcAppbmRleCAzYjA0MjlmNDRlZGNhNmIxNzQwNWJjZjJkYjc3NzY2NzUxNjk3M2Ni
Li5mZWVkMmZiYTM1NjkyZWYzNzRjNWE2MzE3OTY1Zjg0N2U4ZTFmNmQ2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAtMTAz
LDYgKzEwMyw5IEBAIHZvaWQgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKElQQzo6
RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyIDw8IHVybFNjaGVtZUhhbmRsZXJz
OwogI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKICAgICBlbmNvZGVyIDw8IGFwcGxp
Y2F0aW9uTWFuaWZlc3Q7CisjZW5kaWYKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAg
ZW5jb2RlciA8PCBoYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnM7CiAjZW5kaWYKICAgICBlbmNv
ZGVyIDw8IGljZUNhbmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQ7CiAgICAgZW5jb2RlciA8PCBlbnVt
ZXJhdGluZ0FsbE5ldHdvcmtJbnRlcmZhY2VzRW5hYmxlZDsKQEAgLTI4Myw2ICsyODYsMTAgQEAg
c3RkOjpvcHRpb25hbDxXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzPiBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjoKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKICAg
ICBwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uTWFuaWZlc3QgPSBXVEZNb3ZlKCphcHBsaWNhdGlvbk1h
bmlmZXN0KTsKICNlbmRpZgorI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKSkKKyAg
ICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyNlbmRpZgogCiAgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShwYXJhbWV0ZXJzLmljZUNhbmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQpKQogICAgICAgICBy
ZXR1cm4gc3RkOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDQ5Zjc3ZjlkMGY5MTc4Y2QzNGYyMWI0ZDMyMDBkOTI3
MWFiNjQ5YzUuLmU3NmVlMzRlOTQ1NjEyODRjMjgyYmVhNzM0YzU0NTI1NzY3N2VhNmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAg
LTE2Niw2ICsxNjYsMTAgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgewogICAg
IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6QXBwbGljYXRpb25NYW5pZmVzdD4gYXBwbGljYXRpb25N
YW5pZmVzdDsKICNlbmRpZgogCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGJvb2wg
aGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzIHsgdHJ1ZSB9OworI2VuZGlmCisKICAgICAvLyBX
ZWJSVEMgbWVtYmVycy4KICAgICBib29sIGljZUNhbmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQgeyB0
cnVlIH07CiAgICAgYm9vbCBlbnVtZXJhdGluZ0FsbE5ldHdvcmtJbnRlcmZhY2VzRW5hYmxlZCB7
IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDIyNmFmMGE5YjJhMDVkZTRiNjllNjE3MWI4YzVkYjQ2
ZmE3NzJhM2MuLjliYzZjMzc1NjM0OTg0NDIwOTdhOWZjYTgxYmNkNWQxNGUwOTQyYzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnMuY3BwCkBAIC0xMjcsMTAgKzEyNyw2IEBAIHZvaWQgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczo6ZW5jb2RlKElQQzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyIDw8
IGhhc1JpY2hDb250ZW50U2VydmljZXM7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShTRVJWSUNFX1dP
UktFUikKLSAgICBlbmNvZGVyIDw8IGhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VyczsKLSNlbmRp
ZgotCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgZW5jb2RlciA8PCBwbHVn
aW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAjZW5kaWYKQEAgLTM2NSwxMSArMzYxLDYgQEAgYm9vbCBX
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVy
LCBXZWJQcm9jZXNzQ3JlYXQKICAgICAgICAgcmV0dXJuIGZhbHNlOwogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJz
Lmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNl
bmRpZgotCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShwYXJhbWV0ZXJzLnBsdWdpbkxvYWRDbGllbnRQb2xpY2llcykpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaAppbmRleCAzYWY1ODlmMTcxMDliOTY5MDYyNjMwZGFjNGIxNWEyM2Jm
ZjM2YTQ4Li43MmU5Mjc0YzU1Y2E1ZGY5ZTJmMzA3ZWY2ZTIxMDVkMzU2OTQ2ZmEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
CkBAIC0xMzEsMTAgKzEzMSw2IEBAIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
IHsKICAgICBib29sIGhhc1JpY2hDb250ZW50U2VydmljZXMgeyBmYWxzZSB9OwogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgYm9vbCBoYXNSZWdpc3RlcmVkU2Vydmlj
ZVdvcmtlcnMgeyB0cnVlIH07Ci0jZW5kaWYKLQogICAgIFNlY29uZHMgdGVybWluYXRpb25UaW1l
b3V0OwogCiAgICAgVGV4dENoZWNrZXJTdGF0ZSB0ZXh0Q2hlY2tlclN0YXRlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggY2MzY2YyZmJmMmJiMzcxYTVjNjlh
OGY2NGQ1ZTIzOWIwMmM0OWNiMC4uZjRjNmVhN2IzNjRiYzFhNDc4NjkzMWM5NmI0NDI2ZGZhZDRh
ZTlhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC03MzAs
NyArNzMwLDIwIEBAIHZvaWQgV2ViUGFnZVByb3h5Ojppbml0aWFsaXplV2ViUGFnZSgpCiAgICAg
fQogI2VuZGlmCiAKLSAgICBwcm9jZXNzKCkuc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6Q3Jl
YXRlV2ViUGFnZShtX3BhZ2VJRCwgY3JlYXRpb25QYXJhbWV0ZXJzKCkpLCAwKTsKKyAgICBhdXRv
IHBhcmFtZXRlcnMgPSBjcmVhdGlvblBhcmFtZXRlcnMoKTsKKworI2lmIEVOQUJMRShTRVJWSUNF
X1dPUktFUikKKyAgICBwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyA9IHBy
b2Nlc3MoKS5wcm9jZXNzUG9vbCgpLnNlcnZpY2VXb3JrZXJQcm94eSgpOworICAgIGlmICghcGFy
YW1ldGVycy5oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMpIHsKKyAgICAgICAgU3RyaW5nIHNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkgPSBtX3dlYnNpdGVEYXRhU3RvcmUtPnJl
c29sdmVkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSgpOworICAgICAgICBpZiAo
c2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeS5pc0VtcHR5KCkpCisgICAgICAgICAg
ICBzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5ID0gcHJvY2VzcygpLnByb2Nlc3NQ
b29sKCkuY29uZmlndXJhdGlvbigpLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rvcnko
KTsKKyAgICAgICAgLy8gRklYTUU6IE1ha2UgdGhpcyBjb21wdXRhdGlvbiBvbiBhIGJhY2tncm91
bmQgdGhyZWFkLgorICAgICAgICBwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cyA9IFNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHk6Omhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cyhzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KTsKKyAgICB9CisjZW5kaWYKKwor
ICAgIHByb2Nlc3MoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpDcmVhdGVXZWJQYWdlKG1f
cGFnZUlELCBwYXJhbWV0ZXJzKSwgMCk7CiAKICAgICBtX25lZWRzVG9GaW5pc2hJbml0aWFsaXpp
bmdXZWJQYWdlQWZ0ZXJQcm9jZXNzTGF1bmNoID0gdHJ1ZTsKICAgICBmaW5pc2hJbml0aWFsaXpp
bmdXZWJQYWdlQWZ0ZXJQcm9jZXNzTGF1bmNoKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAKaW5kZXggMDVmZTZmODdjOTBkMTg3NjQ4ZGY2MDQ2NmVjMGQ4MGQ1
ZDFkN2JjYi4uODY3MDc4ZWU2OGM0ZDAyZmI5N2U2MDdkNjg2MGJiYWY2YTBjNzZlYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtODE1LDEwICs4MTUs
NiBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjppbml0aWFsaXplTmV3V2ViUHJvY2VzcyhXZWJQcm9j
ZXNzUHJveHkmIHByb2Nlc3MsIFdlYnNpdGVEYQogICAgIHNlcnZpY2VDb250cm9sbGVyLnJlZnJl
c2hFeGlzdGluZ1NlcnZpY2VzKCk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShTRVJWSUNFX1dPUktF
UikKLSAgICBwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyA9IFNlcnZpY2VX
b3JrZXJQcm9jZXNzUHJveHk6Omhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycyhtX2NvbmZpZ3Vy
YXRpb24tPnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkoKSk7Ci0jZW5kaWYKLQog
I2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIHBhcmFtZXRlcnMucGx1Z2luTG9h
ZENsaWVudFBvbGljaWVzID0gbV9wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZTk2NmQz
MmY1ZTdmNjMzMjI2OTM1ODEyZDhkZWMwN2YwMDc4N2VhMS4uYmIxM2ZkNGNiNDM4OGM2YzM1NDhh
ZGQ3MDgzNzk3NThmZGVhMmQyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKQEAgLTExNSw2ICsxMTUsNyBAQAogI2luY2x1ZGUgIldlYlByb2Nlc3NQ
b29sTWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUHJveHlNZXNzYWdlcy5oIgogI2lu
Y2x1ZGUgIldlYlByb2dyZXNzVHJhY2tlckNsaWVudC5oIgorI2luY2x1ZGUgIldlYlNlcnZpY2VX
b3JrZXJQcm92aWRlci5oIgogI2luY2x1ZGUgIldlYlNvY2tldFByb3ZpZGVyLmgiCiAjaW5jbHVk
ZSAiV2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5LmgiCkBAIC01NjYsNiArNTY3LDExIEBAIFdlYlBhZ2U6OldlYlBhZ2UodWlu
dDY0X3QgcGFnZUlELCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVycykKICAg
ICBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQocGFyYW1ldGVycy5zbWFydEluc2VydERlbGV0
ZUVuYWJsZWQpOwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYg
KHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKQorICAgICAgICBTZXJ2aWNl
V29ya2VyUHJvdmlkZXI6OnNpbmdsZXRvbigpLnNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cygpOworI2VuZGlmCisKICNpZiBFTkFCTEUoV0VCX1JUQykKICAgICBpZiAoIXBhcmFtZXRlcnMu
aWNlQ2FuZGlkYXRlRmlsdGVyaW5nRW5hYmxlZCkKICAgICAgICAgZGlzYWJsZUlDRUNhbmRpZGF0
ZUZpbHRlcmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4
IGU3Y2FkZGNlNTQ5MWIxZGQyMDBiYjdkYTQzMmY4ZDBhMjhiNjk0NjMuLmIzODM3NWVjM2Y0MzM3
YjZkOTYxYzc3NDQzZjQ5MGQ5ZTI3ZjE2ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHAKQEAgLTQxMSw5ICs0MTEsNyBAQCB2b2lkIFdlYlByb2Nlc3M6OmluaXRpYWxp
emVXZWJQcm9jZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQog
I2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgYXV0byYgc2VydmljZVdv
cmtlclByb3ZpZGVyID0gV2ViU2VydmljZVdvcmtlclByb3ZpZGVyOjpzaW5nbGV0b24oKTsKLSAg
ICBzZXJ2aWNlV29ya2VyUHJvdmlkZXIuc2V0SGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKHBh
cmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKTsKLSAgICBTZXJ2aWNlV29ya2Vy
UHJvdmlkZXI6OnNldFNoYXJlZFByb3ZpZGVyKHNlcnZpY2VXb3JrZXJQcm92aWRlcik7CisgICAg
U2VydmljZVdvcmtlclByb3ZpZGVyOjpzZXRTaGFyZWRQcm92aWRlcihXZWJTZXJ2aWNlV29ya2Vy
UHJvdmlkZXI6OnNpbmdsZXRvbigpKTsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFdFQkFTU0VNQkxZ
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332997</attachid>
            <date>2018-02-02 13:21:32 -0800</date>
            <delta_ts>2018-02-06 11:35:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182410-20180202132131.patch</filename>
            <type>text/plain</type>
            <size>17738</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3OTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTA2ZGY1ZGU2NDlkYWNh
MzIzMGE2NjhhNWUyN2I4YTU2ODkwOWVjOC4uMTQ3MGNkYjlkOTc5ODc1NjJjNmNhN2U1M2IyMDNl
OGEzM2E5MTZhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTAyLTAxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBIYXNTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uIGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjQxMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENvdmVyZWQg
YnkgbmV3IEFQSSB0ZXN0LgorCisgICAgICAgIENoYW5nZWQgdGhlIGRlZmF1bHQgdmFsdWUgb2Yg
c2VydmljZSB3b3JrZXJzIGJlaW5nIHJlZ2lzdGVyZWQgdG8gZmFsc2UuCisgICAgICAgIEV2ZXJ5
IHBhZ2UgY3JlYXRlZCBpbiB0aGUgcHJvY2VzcyB3aWxsIGJlIHJlc3BvbnNpYmxlIHRvIGNoYW5n
ZSB0aGUgdmFsdWUgdG8gdHJ1ZSwKKyAgICAgICAgYXQgd2hpY2ggdGltZSB0aGUgdmFsdWUgd2ls
bCBiZSBrZXB0IHRvIHRydWUgZm9yIHRoZSBsaWZldGltZSBvZiB0aGUgcHJvY2Vzcy4KKworICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaDoKKwogMjAxOC0w
Mi0wMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQ2xlYXJp
bmcgYWxsIHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbnMgc2hvdWxkIHdhaXQgZm9yIGltcG9y
dGluZyBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24gdG8gZmluaXNoCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJl
YmVjMWViZDhmODIzMTlhN2VhMTRlMGE5ZjEwNTMzNzZlYzI0ZGMuLjA3MzMyNTg3NWQxMDc2Zjhj
MDRkYzAyYmQwN2JhNmQyMjNjMTZjNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTgt
MDItMDIgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEhhc1Nl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb24gYml0IHNob3VsZCBiZSBzZW50IHdoZW4gY3JlYXRpbmcg
YSBuZXcgcGFnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTgyNDEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgTW92ZSB0aGUgYml0IGNvbXB1dGF0aW9uIGF0IHBhZ2UgY3JlYXRpb24gdGltZS4KKyAgICAg
ICAgVGhpcyBhbGxvd3MgY29tcHV0aW5nIHRoZSBiaXQgYmFzZWQgb24gdGhlIHdlYiBzaXRlIGRh
dGEgc3RvcmUgYW5kIG5vdCBvbmx5IG9uIHRoZSBwb29sIGNvbmZpZ3VyYXRpb24uCisgICAgICAg
IFdlYlBhZ2UgdXNlcyB0aGF0IGJpdCB0byBhY3RpdmF0ZSBzZXJ2aWNlIHdvcmtlciByZWdpc3Ry
YXRpb24gbWF0Y2hpbmcgZm9yIHRoZSB3aG9sZSBwcm9jZXNzLgorCisgICAgICAgIEluIGNhc2Ug
dGhlcmUgaXMgYSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHByb3h5IGNyZWF0ZWQsIHRoZSBiaXQg
aXMgc2V0IHRvIHRydWUgYnkgZGVmYXVsdC4KKworICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5j
b2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
czo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlUHJveHk6OmluaXRpYWxpemVXZWJQYWdlKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6
aW5pdGlhbGl6ZU5ld1dlYlByb2Nlc3MpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9jcHVMaW1pdCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5p
dGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDE4LTAyLTAyICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KIAogICAgICAgICBDb25maWd1cmUgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeSBvbiB0aGUgd2ViIHNpdGUgZGF0YSBzdG9yZSBhbmQgbW92ZSBpdCB0byBhIENh
Y2hlcyBzdWJmb2xkZXIgYXMgYSBkZWZhdWx0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmgKaW5kZXggMWRmZjQ0NzBjY2Fh
NTkwZWY0Y2U0MGYxNjY3ZGJkY2VhMzRiMjE2NS4uMTJkNmUzNDY0YzYwM2IzM2IyZjIyYWNkODg1
OWU5ZTE4ZmNlMWYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaApAQCAtNDksMTAgKzQ5LDEwIEBAIHB1YmxpYzoK
IAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50cyhQ
QUw6OlNlc3Npb25JRCk7CiAKLSAgICB2b2lkIHNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2Vy
cyhib29sIHZhbHVlKSB7IG1faGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzID0gdmFsdWU7IH0K
KyAgICB2b2lkIHNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycygpIHsgbV9oYXNSZWdpc3Rl
cmVkU2VydmljZVdvcmtlcnMgPSB0cnVlOyB9CiAKIHByaXZhdGU6Ci0gICAgYm9vbCBtX2hhc1Jl
Z2lzdGVyZWRTZXJ2aWNlV29ya2VycyB7IHRydWUgfTsKKyAgICBib29sIG1faGFzUmVnaXN0ZXJl
ZFNlcnZpY2VXb3JrZXJzIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5j
cHAKaW5kZXggM2IwNDI5ZjQ0ZWRjYTZiMTc0MDViY2YyZGI3Nzc2Njc1MTY5NzNjYi4uZmVlZDJm
YmEzNTY5MmVmMzc0YzVhNjMxNzk2NWY4NDdlOGUxZjZkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTEwMyw2ICsxMDMs
OSBAQCB2b2lkIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXIm
IGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCB1cmxTY2hlbWVIYW5kbGVyczsKICNpZiBF
TkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAgICAgZW5jb2RlciA8PCBhcHBsaWNhdGlvbk1h
bmlmZXN0OworI2VuZGlmCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGVuY29kZXIg
PDwgaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzOwogI2VuZGlmCiAgICAgZW5jb2RlciA8PCBp
Y2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkOwogICAgIGVuY29kZXIgPDwgZW51bWVyYXRpbmdB
bGxOZXR3b3JrSW50ZXJmYWNlc0VuYWJsZWQ7CkBAIC0yODMsNiArMjg2LDEwIEBAIHN0ZDo6b3B0
aW9uYWw8V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycz4gV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
czo6ZGVjb2RlKElQQzo6CiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAgICAgcGFyYW1l
dGVycy5hcHBsaWNhdGlvbk1hbmlmZXN0ID0gV1RGTW92ZSgqYXBwbGljYXRpb25NYW5pZmVzdCk7
CiAjZW5kaWYKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykpCisgICAgICAgIHJl
dHVybiBzdGQ6Om51bGxvcHQ7CisjZW5kaWYKIAogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFy
YW1ldGVycy5pY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkKSkKICAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuaAppbmRleCA0OWY3N2Y5ZDBmOTE3OGNkMzRmMjFiNGQzMjAwZDkyNzFhYjY0OWM1
Li5lNzZlZTM0ZTk0NTYxMjg0YzI4MmJlYTczNGM1NDUyNTc2NzdlYTZhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0xNjYsNiAr
MTY2LDEwIEBAIHN0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBzdGQ6Om9w
dGlvbmFsPFdlYkNvcmU6OkFwcGxpY2F0aW9uTWFuaWZlc3Q+IGFwcGxpY2F0aW9uTWFuaWZlc3Q7
CiAjZW5kaWYKIAorI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBib29sIGhhc1JlZ2lz
dGVyZWRTZXJ2aWNlV29ya2VycyB7IHRydWUgfTsKKyNlbmRpZgorCiAgICAgLy8gV2ViUlRDIG1l
bWJlcnMuCiAgICAgYm9vbCBpY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkIHsgdHJ1ZSB9Owog
ICAgIGJvb2wgZW51bWVyYXRpbmdBbGxOZXR3b3JrSW50ZXJmYWNlc0VuYWJsZWQgeyBmYWxzZSB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcAppbmRleCAyMjZhZjBhOWIyYTA1ZGU0YjY5ZTYxNzFiOGM1ZGI0NmZhNzcyYTNj
Li45YmM2YzM3NTYzNDk4NDQyMDk3YTlmY2E4MWJjZDVkMTRlMDk0MmMyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApA
QCAtMTI3LDEwICsxMjcsNiBAQCB2b2lkIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVu
Y29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBoYXNSaWNo
Q29udGVudFNlcnZpY2VzOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCi0g
ICAgZW5jb2RlciA8PCBoYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnM7Ci0jZW5kaWYKLQogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIGVuY29kZXIgPDwgcGx1Z2luTG9hZENs
aWVudFBvbGljaWVzOwogI2VuZGlmCkBAIC0zNjUsMTEgKzM2MSw2IEBAIGJvb2wgV2ViUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlciwgV2ViUHJv
Y2Vzc0NyZWF0CiAgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKFNF
UlZJQ0VfV09SS0VSKQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5oYXNSZWdp
c3RlcmVkU2VydmljZVdvcmtlcnMpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLQog
I2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
cGFyYW1ldGVycy5wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMpKQogICAgICAgICByZXR1cm4gZmFs
c2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKaW5kZXggM2FmNTg5ZjE3MTA5Yjk2OTA2MjYzMGRhYzRiMTVhMjNiZmYzNmE0OC4u
NzJlOTI3NGM1NWNhNWRmOWUyZjMwN2VmNmUyMTA1ZDM1Njk0NmZhMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMTMx
LDEwICsxMzEsNiBAQCBzdHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAg
Ym9vbCBoYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFsc2UgfTsKICNlbmRpZgogCi0jaWYgRU5B
QkxFKFNFUlZJQ0VfV09SS0VSKQotICAgIGJvb2wgaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJz
IHsgdHJ1ZSB9OwotI2VuZGlmCi0KICAgICBTZWNvbmRzIHRlcm1pbmF0aW9uVGltZW91dDsKIAog
ICAgIFRleHRDaGVja2VyU3RhdGUgdGV4dENoZWNrZXJTdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IGNjM2NmMmZiZjJiYjM3MWE1YzY5YThmNjRkNWUy
MzliMDJjNDljYjAuLjJkMDc1YWNmOTk3OGE2ODUyN2FiYWE5YjI3Y2U1ODZjY2FmZmFjMTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNzMwLDcgKzczMCwy
MCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aW5pdGlhbGl6ZVdlYlBhZ2UoKQogICAgIH0KICNlbmRp
ZgogCi0gICAgcHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkNyZWF0ZVdlYlBh
Z2UobV9wYWdlSUQsIGNyZWF0aW9uUGFyYW1ldGVycygpKSwgMCk7CisgICAgYXV0byBwYXJhbWV0
ZXJzID0gY3JlYXRpb25QYXJhbWV0ZXJzKCk7CisKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIp
CisgICAgcGFyYW1ldGVycy5oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgPSBwcm9jZXNzKCku
cHJvY2Vzc1Bvb2woKS5zZXJ2aWNlV29ya2VyUHJveHkoKTsKKyAgICBpZiAoIXBhcmFtZXRlcnMu
aGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKSB7CisgICAgICAgIFN0cmluZyBzZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5ID0gbV93ZWJzaXRlRGF0YVN0b3JlLT5yZXNvbHZlZFNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkoKTsKKyAgICAgICAgaWYgKHNlcnZpY2VX
b3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkuaXNFbXB0eSgpKQorICAgICAgICAgICAgc2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSA9IEFQSTo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVm
YXVsdERhdGFTdG9yZUNvbmZpZ3VyYXRpb24oKS5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGly
ZWN0b3J5OworICAgICAgICAvLyBGSVhNRTogTWFrZSB0aGlzIGNvbXB1dGF0aW9uIG9uIGEgYmFj
a2dyb3VuZCB0aHJlYWQuCisgICAgICAgIHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VX
b3JrZXJzID0gU2VydmljZVdvcmtlclByb2Nlc3NQcm94eTo6aGFzUmVnaXN0ZXJlZFNlcnZpY2VX
b3JrZXJzKHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkpOworICAgIH0KKyNlbmRp
ZgorCisgICAgcHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkNyZWF0ZVdlYlBh
Z2UobV9wYWdlSUQsIHBhcmFtZXRlcnMpLCAwKTsKIAogICAgIG1fbmVlZHNUb0ZpbmlzaEluaXRp
YWxpemluZ1dlYlBhZ2VBZnRlclByb2Nlc3NMYXVuY2ggPSB0cnVlOwogICAgIGZpbmlzaEluaXRp
YWxpemluZ1dlYlBhZ2VBZnRlclByb2Nlc3NMYXVuY2goKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCBmZWJkZDA5YmMwNjIyNzk1NTY2YzNkZTI5ZjMy
NjA4ZTYxY2QwYjNlLi5kZjBlNTEyMmVhMzcxMWRlODU1NTllZWRmYTViOGY3ZTUxMTQ0MWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC04MTUsMTMg
KzgxNSw2IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OmluaXRpYWxpemVOZXdXZWJQcm9jZXNzKFdl
YlByb2Nlc3NQcm94eSYgcHJvY2VzcywgV2Vic2l0ZURhCiAgICAgc2VydmljZUNvbnRyb2xsZXIu
cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoKTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKFNFUlZJQ0Vf
V09SS0VSKQotICAgIFN0cmluZyBzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5ID0g
d2Vic2l0ZURhdGFTdG9yZS5yZXNvbHZlZFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rv
cnkoKTsKLSAgICBpZiAoc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeS5pc0VtcHR5
KCkpCi0gICAgICAgIHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkgPSBBUEk6Oldl
YnNpdGVEYXRhU3RvcmU6OmRlZmF1bHRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5
KCk7Ci0gICAgcGFyYW1ldGVycy5oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgPSBTZXJ2aWNl
V29ya2VyUHJvY2Vzc1Byb3h5OjpoYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMoc2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSk7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShORVRTQ0FQ
RV9QTFVHSU5fQVBJKQogICAgIHBhcmFtZXRlcnMucGx1Z2luTG9hZENsaWVudFBvbGljaWVzID0g
bV9wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZTk2NmQzMmY1ZTdmNjMzMjI2OTM1ODEy
ZDhkZWMwN2YwMDc4N2VhMS4uZjQ2YWIxZTA5NzAyNzMwNTUxM2IzMDZhMjIwOWQ3MDNmZTU3YTQ4
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAg
LTE4Niw2ICsxODYsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU2NoZW1lUmVnaXN0cnkuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Nl
cmlhbGl6ZWRTY3JpcHRWYWx1ZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU2VydmljZVdvcmtlclBy
b3ZpZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TZXR0aW5ncy5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvU2hhZG93Um9vdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CkBAIC01
NjYsNiArNTY3LDExIEBAIFdlYlBhZ2U6OldlYlBhZ2UodWludDY0X3QgcGFnZUlELCBXZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVycykKICAgICBzZXRTbWFydEluc2VydERlbGV0
ZUVuYWJsZWQocGFyYW1ldGVycy5zbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOwogI2VuZGlmCiAK
KyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYgKHBhcmFtZXRlcnMuaGFzUmVnaXN0
ZXJlZFNlcnZpY2VXb3JrZXJzKQorICAgICAgICBTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNpbmds
ZXRvbigpLnNldEhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycygpOworI2VuZGlmCisKICNpZiBF
TkFCTEUoV0VCX1JUQykKICAgICBpZiAoIXBhcmFtZXRlcnMuaWNlQ2FuZGlkYXRlRmlsdGVyaW5n
RW5hYmxlZCkKICAgICAgICAgZGlzYWJsZUlDRUNhbmRpZGF0ZUZpbHRlcmluZygpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IGU3Y2FkZGNlNTQ5MWIxZGQyMDBi
YjdkYTQzMmY4ZDBhMjhiNjk0NjMuLmIzODM3NWVjM2Y0MzM3YjZkOTYxYzc3NDQzZjQ5MGQ5ZTI3
ZjE2ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTQxMSw5
ICs0MTEsNyBAQCB2b2lkIFdlYlByb2Nlc3M6OmluaXRpYWxpemVXZWJQcm9jZXNzKFdlYlByb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogI2VuZGlmCiAKICNpZiBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCi0gICAgYXV0byYgc2VydmljZVdvcmtlclByb3ZpZGVyID0gV2ViU2Vy
dmljZVdvcmtlclByb3ZpZGVyOjpzaW5nbGV0b24oKTsKLSAgICBzZXJ2aWNlV29ya2VyUHJvdmlk
ZXIuc2V0SGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJl
ZFNlcnZpY2VXb3JrZXJzKTsKLSAgICBTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNldFNoYXJlZFBy
b3ZpZGVyKHNlcnZpY2VXb3JrZXJQcm92aWRlcik7CisgICAgU2VydmljZVdvcmtlclByb3ZpZGVy
OjpzZXRTaGFyZWRQcm92aWRlcihXZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNpbmdsZXRvbigp
KTsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFdFQkFTU0VNQkxZKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
Q2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDY0NGE4MWM5NzhlZTdkOWFhZGFiMjhl
OTUwOGY3NDY1ZTQwNmQwZDAuLjg4ODFhZjc4OTVhNTA3MWY3MWQ1MjI0ZDg1YWJlNWI2YmQyYjBk
MDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxMiBAQAorMjAxOC0wMi0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CisKKyAgICAgICAgSGFzU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiBiaXQgc2hvdWxkIGJl
IHNlbnQgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI0MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
U2VydmljZVdvcmtlckJhc2ljLm1tOgorCiAyMDE4LTAyLTAyICBZb3Vlbm4gRmFibGV0ICA8eW91
ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBDb25maWd1cmUgc2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbkRpcmVjdG9yeSBvbiB0aGUgd2ViIHNpdGUgZGF0YSBzdG9yZSBhbmQgbW92ZSBpdCB0byBh
IENhY2hlcyBzdWJmb2xkZXIgYXMgYSBkZWZhdWx0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1NlcnZpY2VXb3JrZXJCYXNpYy5tbSBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdvcmtlckJhc2ljLm1tCmluZGV4
IDI4ZTllOTkyZmIxYzUwZDJhYzg4ZTliYTFlOTc4ZTcxMTgwMWUyZDkuLjM0M2Y5Nzk3ZDY3MjI3
MjU5Yzc3MzRiN2NiNjMxMzkxZTc3M2JkMDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdvcmtlckJhc2ljLm1tCisrKyBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdvcmtlckJhc2ljLm1tCkBAIC0z
Myw2ICszMyw3IEBACiAjaW1wb3J0IDxXZWJLaXQvV0tVUkxTY2hlbWVUYXNrUHJpdmF0ZS5oPgog
I2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmg+CiAjaW1wb3J0
IDxXZWJLaXQvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L1dL
V2Vic2l0ZURhdGFTdG9yZVJlZi5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYktpdC5oPgogI2ltcG9y
dCA8V2ViS2l0L19XS0V4cGVyaW1lbnRhbEZlYXR1cmUuaD4KICNpbXBvcnQgPHd0Zi9EZXF1ZS5o
PgpAQCAtODM4LDYgKzgzOSw5NiBAQCBURVNUKFNlcnZpY2VXb3JrZXJzLCBTZXJ2aWNlV29ya2Vy
UHJvY2Vzc0NyZWF0aW9uKQogICAgIGRvbmUgPSBmYWxzZTsKIH0KIAorVEVTVChTZXJ2aWNlV29y
a2VycywgSGFzU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkJpdCkKK3sKKyAgICBbV0tXZWJzaXRl
RGF0YVN0b3JlIF9hbGxvd1dlYnNpdGVEYXRhUmVjb3Jkc0ZvckFsbE9yaWdpbnNdOworCisgICAg
UmV0YWluUHRyPFdLV2ViVmlld0NvbmZpZ3VyYXRpb24+IGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5T
KFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIHNldENvbmZpZ3Vy
YXRpb25JbmplY3RlZEJ1bmRsZVBhdGgoY29uZmlndXJhdGlvbi5nZXQoKSk7CisKKyAgICBkb25l
ID0gZmFsc2U7CisKKyAgICBbW2NvbmZpZ3VyYXRpb24gd2Vic2l0ZURhdGFTdG9yZV0gcmVtb3Zl
RGF0YU9mVHlwZXM6W1dLV2Vic2l0ZURhdGFTdG9yZSBhbGxXZWJzaXRlRGF0YVR5cGVzXSBtb2Rp
ZmllZFNpbmNlOltOU0RhdGUgZGlzdGFudFBhc3RdIGNvbXBsZXRpb25IYW5kbGVyOl4oKSB7Cisg
ICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1
bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworCisgICAgW1tjb25maWd1cmF0aW9uIHdlYnNp
dGVEYXRhU3RvcmVdIGZldGNoRGF0YVJlY29yZHNPZlR5cGVzOltOU1NldCBzZXRXaXRoT2JqZWN0
OldLV2Vic2l0ZURhdGFUeXBlU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnNdIGNvbXBsZXRpb25I
YW5kbGVyOl4oTlNBcnJheTxXS1dlYnNpdGVEYXRhUmVjb3JkICo+ICp3ZWJzaXRlRGF0YVJlY29y
ZHMpIHsKKworICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICB9XTsKKyAgICBUZXN0V2ViS2l0QVBJ
OjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIFJldGFpblB0cjxT
V01lc3NhZ2VIYW5kbGVyPiBtZXNzYWdlSGFuZGxlciA9IGFkb3B0TlMoW1tTV01lc3NhZ2VIYW5k
bGVyIGFsbG9jXSBpbml0XSk7CisgICAgW1tjb25maWd1cmF0aW9uIHVzZXJDb250ZW50Q29udHJv
bGxlcl0gYWRkU2NyaXB0TWVzc2FnZUhhbmRsZXI6bWVzc2FnZUhhbmRsZXIuZ2V0KCkgbmFtZTpA
InN3Il07CisgICAgUmV0YWluUHRyPFJlZ3VsYXJQYWdlTWVzc2FnZUhhbmRsZXI+IHJlZ3VsYXJQ
YWdlTWVzc2FnZUhhbmRsZXIgPSBhZG9wdE5TKFtbUmVndWxhclBhZ2VNZXNzYWdlSGFuZGxlciBh
bGxvY10gaW5pdF0pOworICAgIFtbY29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJd
IGFkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOnJlZ3VsYXJQYWdlTWVzc2FnZUhhbmRsZXIuZ2V0KCkg
bmFtZTpAInJlZ3VsYXJQYWdlIl07CisKKyAgICBSZXRhaW5QdHI8U1dTY2hlbWVzPiBoYW5kbGVy
ID0gYWRvcHROUyhbW1NXU2NoZW1lcyBhbGxvY10gaW5pdF0pOworICAgIGhhbmRsZXItPnJlc291
cmNlcy5zZXQoInN3Oi8vaG9zdC9yZWd1bGFyUGFnZVdpdGhvdXRDb25uZWN0aW9uLmh0bWwiLCBS
ZXNvdXJjZUluZm8geyBAInRleHQvaHRtbCIsIHJlZ3VsYXJQYWdlV2l0aG91dENvbm5lY3Rpb25C
eXRlcyB9KTsKKyAgICBoYW5kbGVyLT5yZXNvdXJjZXMuc2V0KCJzdzovL2hvc3QvcmVndWxhclBh
Z2VXaXRoQ29ubmVjdGlvbi5odG1sIiwgUmVzb3VyY2VJbmZvIHsgQCJ0ZXh0L2h0bWwiLCByZWd1
bGFyUGFnZVdpdGhDb25uZWN0aW9uQnl0ZXMgfSk7CisgICAgaGFuZGxlci0+cmVzb3VyY2VzLnNl
dCgic3c6Ly9ob3N0L21haW5XaXRoU2NvcGUuaHRtbCIsIFJlc291cmNlSW5mbyB7IEAidGV4dC9o
dG1sIiwgbWFpbkJ5dGVzV2l0aFNjb3BlIH0pOworICAgIGhhbmRsZXItPnJlc291cmNlcy5zZXQo
InN3Oi8vaG9zdC9tYWluLmh0bWwiLCBSZXNvdXJjZUluZm8geyBAInRleHQvaHRtbCIsIG1haW5C
eXRlcyB9KTsKKyAgICBoYW5kbGVyLT5yZXNvdXJjZXMuc2V0KCJzdzovL2hvc3Qvc3cuanMiLCBS
ZXNvdXJjZUluZm8geyBAImFwcGxpY2F0aW9uL2phdmFzY3JpcHQiLCBzY3JpcHRCeXRlcyB9KTsK
KyAgICBbY29uZmlndXJhdGlvbiBzZXRVUkxTY2hlbWVIYW5kbGVyOmhhbmRsZXIuZ2V0KCkgZm9y
VVJMU2NoZW1lOkAiU1ciXTsKKworICAgIFJldGFpblB0cjxXS1dlYlZpZXc+IHdlYlZpZXcgPSBh
ZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwg
ODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKV0pOworCisgICAgLy8g
TG9hZCBhIHBhZ2UgdGhhdCByZWdpc3RlcnMgYSBzZXJ2aWNlIHdvcmtlci4KKyAgICBOU1VSTFJl
cXVlc3QgKnJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VSTCBVUkxX
aXRoU3RyaW5nOkAic3c6Ly9ob3N0L21haW5XaXRoU2NvcGUuaHRtbCJdXTsKKworICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigm
ZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworICAgIHdlYlZpZXcgPSBudWxscHRyOworCisgICAg
Ly8gTm93IHRoYXQgYSBzdyBpcyByZWdpc3RlcmVkLCBsZXQncyBjcmVhdGUgYSBuZXcgY29uZmln
dXJhdGlvbiBhbmQgdHJ5IGxvYWRpbmcgYSByZWd1bGFyIHBhZ2UKKyAgICBSZXRhaW5QdHI8V0tX
ZWJWaWV3Q29uZmlndXJhdGlvbj4gbmV3Q29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZp
ZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgc2V0Q29uZmlndXJhdGlvbkluamVj
dGVkQnVuZGxlUGF0aChuZXdDb25maWd1cmF0aW9uLmdldCgpKTsKKworICAgIFtbbmV3Q29uZmln
dXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOm1l
c3NhZ2VIYW5kbGVyLmdldCgpIG5hbWU6QCJzdyJdOworICAgIFtbbmV3Q29uZmlndXJhdGlvbiB1
c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOnJlZ3VsYXJQYWdl
TWVzc2FnZUhhbmRsZXIuZ2V0KCkgbmFtZTpAInJlZ3VsYXJQYWdlIl07CisgICAgW25ld0NvbmZp
Z3VyYXRpb24gc2V0VVJMU2NoZW1lSGFuZGxlcjpoYW5kbGVyLmdldCgpIGZvclVSTFNjaGVtZTpA
IlNXIl07CisKKyAgICBuZXdDb25maWd1cmF0aW9uLmdldCgpLndlYnNpdGVEYXRhU3RvcmUgPSBb
V0tXZWJzaXRlRGF0YVN0b3JlIG5vblBlcnNpc3RlbnREYXRhU3RvcmVdOworICAgIFtuZXdDb25m
aWd1cmF0aW9uLmdldCgpLndlYnNpdGVEYXRhU3RvcmUgX3NldFNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25EaXJlY3Rvcnk6IEAifi9ub25leGlzdGluZ2ZvbGRlciJdOworCisgICAgW25ld0NvbmZp
Z3VyYXRpb24uZ2V0KCkucHJvY2Vzc1Bvb2wgX3NldE1heGltdW1OdW1iZXJPZlByb2Nlc3Nlczox
XTsKKworICAgIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZy
YW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246bmV3Q29uZmlndXJh
dGlvbi5nZXQoKV0pOworICAgIHJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJM
OltOU1VSTCBVUkxXaXRoU3RyaW5nOkAic3c6Ly9ob3N0L3JlZ3VsYXJQYWdlV2l0aG91dENvbm5l
Y3Rpb24uaHRtbCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKyAgICBU
ZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAg
IC8vIFRoZXJlIHNob3VsZCBiZSBubyBzdG9yYWdlIHByb2Nlc3MgY3JlYXRlZC4KKyAgICBFWFBF
Q1RfRVEoMCwgd2ViVmlldy5nZXQoKS5jb25maWd1cmF0aW9uLnByb2Nlc3NQb29sLl9zdG9yYWdl
UHJvY2Vzc0lkZW50aWZpZXIpOworCisgICAgLy8gTGV0J3MgdXNlIHRoZSB3ZWIgc2l0ZSBkYXRh
IHN0b3JlIHRoYXQgaGFzIHNlcnZpY2Ugd29ya2VyIGFuZCBsb2FkIGEgcGFnZS4KKyAgICBuZXdD
b25maWd1cmF0aW9uLmdldCgpLndlYnNpdGVEYXRhU3RvcmUgPSBbY29uZmlndXJhdGlvbiB3ZWJz
aXRlRGF0YVN0b3JlXTsKKworICAgIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9j
XSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246
bmV3Q29uZmlndXJhdGlvbi5nZXQoKV0pOworICAgIEVYUEVDVF9FUSgxdSwgd2ViVmlldy5nZXQo
KS5jb25maWd1cmF0aW9uLnByb2Nlc3NQb29sLl93ZWJQcm9jZXNzQ291bnQpOworICAgIHJlcXVl
c3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAi
c3c6Ly9ob3N0L3JlZ3VsYXJQYWdlV2l0aENvbm5lY3Rpb24uaHRtbCJdXTsKKyAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRv
bmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHN0b3JhZ2Ug
cHJvY2VzcyBpcyBsYXVuY2hlZC4KKyAgICBFWFBFQ1RfTkUoMCwgd2ViVmlldy5nZXQoKS5jb25m
aWd1cmF0aW9uLnByb2Nlc3NQb29sLl9zdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIpOworCisgICAg
Ly8gTWFrZSBzdXJlIHRoYXQgbG9hZGluZyB0aGUgc2ltcGxlIHBhZ2UgZGlkIG5vdCBzdGFydCB0
aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vzcy4KKyAgICBFWFBFQ1RfRVEoMXUsIHdlYlZpZXcuZ2V0
KCkuY29uZmlndXJhdGlvbi5wcm9jZXNzUG9vbC5fd2ViUHJvY2Vzc0NvdW50KTsKKworICAgIFtb
Y29uZmlndXJhdGlvbiB3ZWJzaXRlRGF0YVN0b3JlXSByZW1vdmVEYXRhT2ZUeXBlczpbV0tXZWJz
aXRlRGF0YVN0b3JlIGFsbFdlYnNpdGVEYXRhVHlwZXNdIG1vZGlmaWVkU2luY2U6W05TRGF0ZSBk
aXN0YW50UGFzdF0gY29tcGxldGlvbkhhbmRsZXI6XigpIHsKKyAgICAgICAgZG9uZSA9IHRydWU7
CisgICAgfV07CisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25l
ID0gZmFsc2U7Cit9CisKICNlbmRpZiAvLyBXS19IQVZFX0NfU1BJCiAKICNlbmRpZiAvLyBXS19B
UElfRU5BQkxFRAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333196</attachid>
            <date>2018-02-06 11:35:36 -0800</date>
            <delta_ts>2018-02-06 13:24:14 -0800</delta_ts>
            <desc>Added bit caching</desc>
            <filename>bug-182410-20180206113536.patch</filename>
            <type>text/plain</type>
            <size>20492</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MTUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMThkNDEzMTMxZTljZDk0
NGEzYjYxNGM0ZmVmNzNiNzY4ZGYwNmMzYS4uNTg2MDI2YThlZDk4YWE4MDYzMjBjM2MwMTNjNjg3
MzU1YTljMDJjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTAyLTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBIYXNTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uIGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjQxMAor
CisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIER1bWV6LgorCisgICAgICAgIENvdmVyZWQgYnkg
bmV3IEFQSSB0ZXN0LgorCisgICAgICAgIENoYW5nZWQgdGhlIGRlZmF1bHQgdmFsdWUgb2Ygc2Vy
dmljZSB3b3JrZXJzIGJlaW5nIHJlZ2lzdGVyZWQgdG8gZmFsc2UuCisgICAgICAgIEV2ZXJ5IHBh
Z2UgY3JlYXRlZCBpbiB0aGUgcHJvY2VzcyB3aWxsIGJlIHJlc3BvbnNpYmxlIHRvIGNoYW5nZSB0
aGUgdmFsdWUgdG8gdHJ1ZSwKKyAgICAgICAgYXQgd2hpY2ggdGltZSB0aGUgdmFsdWUgd2lsbCBi
ZSBrZXB0IHRvIHRydWUgZm9yIHRoZSBsaWZldGltZSBvZiB0aGUgcHJvY2Vzcy4KKworICAgICAg
ICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaDoKKwogMjAxOC0wMi0w
NSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZWxlYXNlIGFz
c2VydGlvbiBpbiBpbmxpbmVWaWRlb0ZyYW1lCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU5YmY0NmY3MWI2ODUwZjE1
MTFjZWI2YjI3MzNiM2QzZTAyOWFmMzUuLmYwZDRhMWNmNzQ0MjMxNGZmODU1YTY5ZGJjYzVhZDA5
MWI5ZDM5MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMTgtMDItMDYgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEhhc1NlcnZpY2VXb3JrZXJSZWdp
c3RyYXRpb24gYml0IHNob3VsZCBiZSBzZW50IHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyNDEwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgRHVtZXouCisKKyAgICAgICAgTW92ZSB0aGUgYml0IGNv
bXB1dGF0aW9uIGF0IHBhZ2UgY3JlYXRpb24gdGltZS4KKyAgICAgICAgVGhpcyBhbGxvd3MgY29t
cHV0aW5nIHRoZSBiaXQgYmFzZWQgb24gdGhlIHdlYiBzaXRlIGRhdGEgc3RvcmUgYW5kIG5vdCBv
bmx5IG9uIHRoZSBwb29sIGNvbmZpZ3VyYXRpb24uCisgICAgICAgIFdlYlBhZ2UgdXNlcyB0aGF0
IGJpdCB0byBhY3RpdmF0ZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24gbWF0Y2hpbmcgZm9y
IHRoZSB3aG9sZSBwcm9jZXNzLgorCisgICAgICAgIEluIGNhc2UgdGhlcmUgaXMgYSBzZXJ2aWNl
IHdvcmtlciBwcm9jZXNzIHByb3h5IGNyZWF0ZWQsIHRoZSBiaXQgaXMgc2V0IHRvIHRydWUgYnkg
ZGVmYXVsdC4KKworICAgICAgICBCaXQgaXMgY29tcHV0ZWQgYnkgY2hlY2tpbmcgZm9yIGRhdGFi
YXNlIGZpbGUgcHJlc2VuY2UuCisgICAgICAgIFRoaXMgaW5mb3JtYXRpb24gaXMgY2FjaGVkIGlu
IGEgbWFwIGZvciBlZmZpY2llbmN5IHJlYXNvbnMgYW5kIGNsZWFyZWQgd2hlbiBhIHNlcnZpY2Ug
d29ya2VyIHByb2Nlc3MgcHJveHkgaXMgY3JlYXRlZC4KKworICAgICAgICAqIFNoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
czo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmluaXRpYWxpemVXZWJQYWdlKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNz
UG9vbDo6ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rpb25Ub1N0b3JhZ2VQcm9jZXNzKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmluaXRpYWxpemVOZXdXZWJQcm9jZXNz
KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6Om1heUhhdmVSZWdpc3RlcmVkU2Vy
dmljZVdvcmtlcnMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6bV9jcHVMaW1pdCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlBy
b2Nlc3MpOgorCiAyMDE4LTAyLTA1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgog
CiAgICAgICAgIFJlbGVhc2UgYXNzZXJ0aW9uIGluIGlubGluZVZpZGVvRnJhbWUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRl
ci5jcHAKaW5kZXggYTY5NWYwZGNiZmE1ODhmNmQ0ODg4MzI4OGI2YzM4OWEwZGJkODMzMy4uNTE1
ZGFlNzM4MTNlYmQ3Njc1N2YwN2UyYjcyYjRmM2QyNmUxMzkzZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5jcHAK
QEAgLTQ5LDcgKzQ5LDcgQEAgYm9vbCBTZXJ2aWNlV29ya2VyUHJvdmlkZXI6Om1heUhhdmVTZXJ2
aWNlV29ya2VyUmVnaXN0ZXJlZEZvck9yaWdpbihQQUw6OlNlc3Npb24KIHsKICAgICBhdXRvKiBj
b25uZWN0aW9uID0gZXhpc3RpbmdTZXJ2aWNlV29ya2VyQ29ubmVjdGlvbkZvclNlc3Npb24oc2Vz
c2lvbklEKTsKICAgICBpZiAoIWNvbm5lY3Rpb24pCi0gICAgICAgIHJldHVybiBtX2hhc1JlZ2lz
dGVyZWRTZXJ2aWNlV29ya2VyczsKKyAgICAgICAgcmV0dXJuIG1fbWF5SGF2ZVJlZ2lzdGVyZWRT
ZXJ2aWNlV29ya2VyczsKIAogICAgIHJldHVybiBjb25uZWN0aW9uLT5tYXlIYXZlU2VydmljZVdv
cmtlclJlZ2lzdGVyZWRGb3JPcmlnaW4ob3JpZ2luKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUHJvdmlkZXIuaAppbmRleCAxZGZm
NDQ3MGNjYWE1OTBlZjRjZTQwZjE2NjdkYmRjZWEzNGIyMTY1Li44ZTliMzY3Mjk2NzE3ZjE1NTM4
NzBiOGE0ZGQ0Mzc5NWNhZmY4ZDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlclByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJQcm92aWRlci5oCkBAIC00OSwxMCArNDksMTAgQEAg
cHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZWdpc3RlclNlcnZpY2VXb3JrZXJD
bGllbnRzKFBBTDo6U2Vzc2lvbklEKTsKIAotICAgIHZvaWQgc2V0SGFzUmVnaXN0ZXJlZFNlcnZp
Y2VXb3JrZXJzKGJvb2wgdmFsdWUpIHsgbV9oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgPSB2
YWx1ZTsgfQorICAgIHZvaWQgc2V0TWF5SGF2ZVJlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycygpIHsg
bV9tYXlIYXZlUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzID0gdHJ1ZTsgfQogCiBwcml2YXRlOgot
ICAgIGJvb2wgbV9oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgeyB0cnVlIH07CisgICAgYm9v
bCBtX21heUhhdmVSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMgeyBmYWxzZSB9OwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCAzYjA0MjlmNDRlZGNhNmIxNzQwNWJjZjJkYjc3
NzY2NzUxNjk3M2NiLi5mZWVkMmZiYTM1NjkyZWYzNzRjNWE2MzE3OTY1Zjg0N2U4ZTFmNmQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcApAQCAtMTAzLDYgKzEwMyw5IEBAIHZvaWQgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVyczo6
ZW5jb2RlKElQQzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyIDw8IHVybFNj
aGVtZUhhbmRsZXJzOwogI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKICAgICBlbmNv
ZGVyIDw8IGFwcGxpY2F0aW9uTWFuaWZlc3Q7CisjZW5kaWYKKyNpZiBFTkFCTEUoU0VSVklDRV9X
T1JLRVIpCisgICAgZW5jb2RlciA8PCBoYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnM7CiAjZW5k
aWYKICAgICBlbmNvZGVyIDw8IGljZUNhbmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQ7CiAgICAgZW5j
b2RlciA8PCBlbnVtZXJhdGluZ0FsbE5ldHdvcmtJbnRlcmZhY2VzRW5hYmxlZDsKQEAgLTI4Myw2
ICsyODYsMTAgQEAgc3RkOjpvcHRpb25hbDxXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzPiBXZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjoKICAgICAgICAgcmV0dXJuIHN0ZDo6
bnVsbG9wdDsKICAgICBwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uTWFuaWZlc3QgPSBXVEZNb3ZlKCph
cHBsaWNhdGlvbk1hbmlmZXN0KTsKICNlbmRpZgorI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikK
KyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VX
b3JrZXJzKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyNlbmRpZgogCiAgICAgaWYg
KCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLmljZUNhbmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQp
KQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDQ5Zjc3ZjlkMGY5MTc4Y2QzNGYy
MWI0ZDMyMDBkOTI3MWFiNjQ5YzUuLmU3NmVlMzRlOTQ1NjEyODRjMjgyYmVhNzM0YzU0NTI1NzY3
N2VhNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKQEAgLTE2Niw2ICsxNjYsMTAgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFt
ZXRlcnMgewogICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6QXBwbGljYXRpb25NYW5pZmVzdD4g
YXBwbGljYXRpb25NYW5pZmVzdDsKICNlbmRpZgogCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQorICAgIGJvb2wgaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzIHsgdHJ1ZSB9OworI2VuZGlm
CisKICAgICAvLyBXZWJSVEMgbWVtYmVycy4KICAgICBib29sIGljZUNhbmRpZGF0ZUZpbHRlcmlu
Z0VuYWJsZWQgeyB0cnVlIH07CiAgICAgYm9vbCBlbnVtZXJhdGluZ0FsbE5ldHdvcmtJbnRlcmZh
Y2VzRW5hYmxlZCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9X
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDIyNmFmMGE5YjJhMDVkZTRiNjll
NjE3MWI4YzVkYjQ2ZmE3NzJhM2MuLjliYzZjMzc1NjM0OTg0NDIwOTdhOWZjYTgxYmNkNWQxNGUw
OTQyYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuY3BwCkBAIC0xMjcsMTAgKzEyNyw2IEBAIHZvaWQgV2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKElQQzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAg
ICBlbmNvZGVyIDw8IGhhc1JpY2hDb250ZW50U2VydmljZXM7CiAjZW5kaWYKIAotI2lmIEVOQUJM
RShTRVJWSUNFX1dPUktFUikKLSAgICBlbmNvZGVyIDw8IGhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29y
a2VyczsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgZW5j
b2RlciA8PCBwbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7CiAjZW5kaWYKQEAgLTM2NSwxMSArMzYx
LDYgQEAgYm9vbCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNv
ZGVyJiBkZWNvZGVyLCBXZWJQcm9jZXNzQ3JlYXQKICAgICAgICAgcmV0dXJuIGZhbHNlOwogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAg
aWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLnBsdWdpbkxvYWRDbGllbnRQb2xpY2llcykp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCAzYWY1ODlmMTcxMDliOTY5MDYyNjMw
ZGFjNGIxNWEyM2JmZjM2YTQ4Li43MmU5Mjc0YzU1Y2E1ZGY5ZTJmMzA3ZWY2ZTIxMDVkMzU2OTQ2
ZmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oCkBAIC0xMzEsMTAgKzEzMSw2IEBAIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzIHsKICAgICBib29sIGhhc1JpY2hDb250ZW50U2VydmljZXMgeyBmYWxzZSB9
OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgYm9vbCBoYXNSZWdp
c3RlcmVkU2VydmljZVdvcmtlcnMgeyB0cnVlIH07Ci0jZW5kaWYKLQogICAgIFNlY29uZHMgdGVy
bWluYXRpb25UaW1lb3V0OwogCiAgICAgVGV4dENoZWNrZXJTdGF0ZSB0ZXh0Q2hlY2tlclN0YXRl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggNDgxNzZjOTdh
OTFiNGZmMDUwYzgzMzQ5ZWMxNzk5NjJiMDBkZjU1Yy4uYzI0MGJlMWYxMjMxYTFjZTVjODJiMmE4
ZDU3MDJlYTZlNTI3MjlhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCkBAIC03MzAsNyArNzMwLDEzIEBAIHZvaWQgV2ViUGFnZVByb3h5Ojppbml0aWFsaXplV2Vi
UGFnZSgpCiAgICAgfQogI2VuZGlmCiAKLSAgICBwcm9jZXNzKCkuc2VuZChNZXNzYWdlczo6V2Vi
UHJvY2Vzczo6Q3JlYXRlV2ViUGFnZShtX3BhZ2VJRCwgY3JlYXRpb25QYXJhbWV0ZXJzKCkpLCAw
KTsKKyAgICBhdXRvIHBhcmFtZXRlcnMgPSBjcmVhdGlvblBhcmFtZXRlcnMoKTsKKworI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBwYXJhbWV0ZXJzLmhhc1JlZ2lzdGVyZWRTZXJ2aWNl
V29ya2VycyA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLm1heUhhdmVSZWdpc3RlcmVkU2Vydmlj
ZVdvcmtlcnMobV93ZWJzaXRlRGF0YVN0b3JlKTsKKyNlbmRpZgorCisgICAgcHJvY2VzcygpLnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkNyZWF0ZVdlYlBhZ2UobV9wYWdlSUQsIHBhcmFtZXRl
cnMpLCAwKTsKIAogICAgIG1fbmVlZHNUb0ZpbmlzaEluaXRpYWxpemluZ1dlYlBhZ2VBZnRlclBy
b2Nlc3NMYXVuY2ggPSB0cnVlOwogICAgIGZpbmlzaEluaXRpYWxpemluZ1dlYlBhZ2VBZnRlclBy
b2Nlc3NMYXVuY2goKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNw
cAppbmRleCA0ZTc5Zjg1NzczMWIyOGZlMzJkMWFiYTg0YTk2Zjg4NjE2MzRjZGIxLi43YzljNTdm
MTc0ZDA2MzlhMWJkNmMzZDQ5NjBmYjk1ZDhmNjUyMTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC02MDEsNiArNjAxLDggQEAgdm9pZCBXZWJQcm9j
ZXNzUG9vbDo6ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rpb25Ub1N0b3JhZ2VQcm9jZXNz
KFN0b3JhZ2VQcm8KICAgICBpZiAobV9zZXJ2aWNlV29ya2VyUHJvY2VzcykKICAgICAgICAgcmV0
dXJuOwogCisgICAgbV9tYXlIYXZlUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzLmNsZWFyKCk7CisK
ICAgICBXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0b3JlID0gbnVsbHB0cjsKICAgICBp
ZiAoc2Vzc2lvbklEKQogICAgICAgICB3ZWJzaXRlRGF0YVN0b3JlID0gV2Vic2l0ZURhdGFTdG9y
ZTo6ZXhpc3RpbmdOb25EZWZhdWx0RGF0YVN0b3JlRm9yU2Vzc2lvbklEKCpzZXNzaW9uSUQpOwpA
QCAtODE2LDEzICs4MTgsNiBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjppbml0aWFsaXplTmV3V2Vi
UHJvY2VzcyhXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIFdlYnNpdGVEYQogICAgIHNlcnZpY2VD
b250cm9sbGVyLnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CiAjZW5kaWYKIAotI2lmIEVOQUJM
RShTRVJWSUNFX1dPUktFUikKLSAgICBTdHJpbmcgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRp
cmVjdG9yeSA9IHdlYnNpdGVEYXRhU3RvcmUucmVzb2x2ZWRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uRGlyZWN0b3J5KCk7Ci0gICAgaWYgKHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rv
cnkuaXNFbXB0eSgpKQotICAgICAgICBzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5
ID0gQVBJOjpXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeSgpOwotICAgIHBhcmFtZXRlcnMuaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJz
ID0gU2VydmljZVdvcmtlclByb2Nlc3NQcm94eTo6aGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJz
KHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkpOwotI2VuZGlmCi0KICNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICBwYXJhbWV0ZXJzLnBsdWdpbkxvYWRDbGllbnRQ
b2xpY2llcyA9IG1fcGx1Z2luTG9hZENsaWVudFBvbGljaWVzOwogI2VuZGlmCkBAIC0xMDU0LDYg
KzEwNDksMjEgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6dXBkYXRlU2VydmljZVdvcmtlclVzZXJB
Z2VudChjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCkKICAgICBpZiAobV9zZXJ2aWNlV29ya2VyUHJv
Y2VzcykKICAgICAgICAgbV9zZXJ2aWNlV29ya2VyUHJvY2Vzcy0+c2V0VXNlckFnZW50KG1fc2Vy
dmljZVdvcmtlclVzZXJBZ2VudCk7CiB9CisKK2Jvb2wgV2ViUHJvY2Vzc1Bvb2w6Om1heUhhdmVS
ZWdpc3RlcmVkU2VydmljZVdvcmtlcnMoY29uc3QgV2Vic2l0ZURhdGFTdG9yZSYgc3RvcmUpCit7
CisgICAgaWYgKHNlcnZpY2VXb3JrZXJQcm94eSgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKwor
ICAgIFN0cmluZyBzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5ID0gc3RvcmUucmVz
b2x2ZWRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KCk7CisgICAgaWYgKHNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkuaXNFbXB0eSgpKQorICAgICAgICBzZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5ID0gQVBJOjpXZWJzaXRlRGF0YVN0b3JlOjpkZWZh
dWx0RGF0YVN0b3JlQ29uZmlndXJhdGlvbigpLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJl
Y3Rvcnk7CisKKyAgICByZXR1cm4gbV9tYXlIYXZlUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzLmVu
c3VyZShzZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5LCBbJl0geworICAgICAgICAv
LyBGSVhNRTogTWFrZSB0aGlzIGNvbXB1dGF0aW9uIG9uIGEgYmFja2dyb3VuZCB0aHJlYWQuCisg
ICAgICAgIHJldHVybiBTZXJ2aWNlV29ya2VyUHJvY2Vzc1Byb3h5OjpoYXNSZWdpc3RlcmVkU2Vy
dmljZVdvcmtlcnMoc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSk7CisgICAgfSku
aXRlcmF0b3ItPnZhbHVlOworfQogI2VuZGlmCiAKIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnBhZ2VC
ZWdpblVzaW5nV2Vic2l0ZURhdGFTdG9yZShXZWJQYWdlUHJveHkmIHBhZ2UpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAppbmRleCBmYzFkOTY0MGFiNDg0NzU4YzhmMzBk
YjliNzNjNjk3OGJkZWI5NWNlLi4zYjRiOGQ3OWM4ZTI4NmM4YWQzZTNkODEyNGJlZWE2YWZkYjFh
ZjZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKQEAgLTMzMCw2
ICszMzAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRBbGxvd3NBbnlTU0xDZXJ0aWZpY2F0ZUZv
clNlcnZpY2VXb3JrZXIoYm9vbCBhbGxvd3MpIHsgbV9hbGxvd3NBbnlTU0xDZXJ0aWZpY2F0ZUZv
clNlcnZpY2VXb3JrZXIgPSBhbGxvd3M7IH0KICAgICBib29sIGFsbG93c0FueVNTTENlcnRpZmlj
YXRlRm9yU2VydmljZVdvcmtlcigpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzQW55U1NMQ2VydGlm
aWNhdGVGb3JTZXJ2aWNlV29ya2VyOyB9CiAgICAgdm9pZCB1cGRhdGVTZXJ2aWNlV29ya2VyVXNl
ckFnZW50KGNvbnN0IFN0cmluZyYgdXNlckFnZW50KTsKKyAgICBib29sIG1heUhhdmVSZWdpc3Rl
cmVkU2VydmljZVdvcmtlcnMoY29uc3QgV2Vic2l0ZURhdGFTdG9yZSYpOwogI2VuZGlmCiAKICNp
ZiBQTEFURk9STShDT0NPQSkKQEAgLTUwNSw2ICs1MDYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wg
bV9hbGxvd3NBbnlTU0xDZXJ0aWZpY2F0ZUZvclNlcnZpY2VXb3JrZXIgeyBmYWxzZSB9OwogICAg
IFN0cmluZyBtX3NlcnZpY2VXb3JrZXJVc2VyQWdlbnQ7CiAgICAgc3RkOjpvcHRpb25hbDxXZWJQ
cmVmZXJlbmNlc1N0b3JlPiBtX3NlcnZpY2VXb3JrZXJQcmVmZXJlbmNlczsKKyAgICBIYXNoTWFw
PFN0cmluZywgYm9vbD4gbV9tYXlIYXZlUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzOwogI2VuZGlm
CiAKICAgICBSZWY8V2ViUGFnZUdyb3VwPiBtX2RlZmF1bHRQYWdlR3JvdXA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDc3MGM3Mjc0OTgxZjNj
ZTQwZDA3YmQ3OGQ4MzMzMGMzYjMyY2M2OTguLjc1NzY4Y2RhMDE4OTQyNWI3MDFmMjg1YjcyMDlh
M2EwM2QyOTlmZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCkBAIC0xODYsNiArMTg2LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1NjaGVtZVJlZ2lz
dHJ5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1NlcnZp
Y2VXb3JrZXJQcm92aWRlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL1NoYWRvd1Jvb3QuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlZEJ1ZmZl
ci5oPgpAQCAtNTY2LDYgKzU2NywxMSBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJ
RCwgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAgICAgc2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKHBhcmFtZXRlcnMuc21hcnRJbnNlcnREZWxldGVFbmFibGVkKTsK
ICNlbmRpZgogCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGlmIChwYXJhbWV0ZXJz
Lmhhc1JlZ2lzdGVyZWRTZXJ2aWNlV29ya2VycykKKyAgICAgICAgU2VydmljZVdvcmtlclByb3Zp
ZGVyOjpzaW5nbGV0b24oKS5zZXRNYXlIYXZlUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXJzKCk7Cisj
ZW5kaWYKKwogI2lmIEVOQUJMRShXRUJfUlRDKQogICAgIGlmICghcGFyYW1ldGVycy5pY2VDYW5k
aWRhdGVGaWx0ZXJpbmdFbmFibGVkKQogICAgICAgICBkaXNhYmxlSUNFQ2FuZGlkYXRlRmlsdGVy
aW5nKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggZTdjYWRk
Y2U1NDkxYjFkZDIwMGJiN2RhNDMyZjhkMGEyOGI2OTQ2My4uYjM4Mzc1ZWMzZjQzMzdiNmQ5NjFj
Nzc0NDNmNDkwZDllMjdmMTZlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmNwcApAQCAtNDExLDkgKzQxMSw3IEBAIHZvaWQgV2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlBy
b2Nlc3MoV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAjZW5kaWYK
IAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAgICBhdXRvJiBzZXJ2aWNlV29ya2VyUHJv
dmlkZXIgPSBXZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXI6OnNpbmdsZXRvbigpOwotICAgIHNlcnZp
Y2VXb3JrZXJQcm92aWRlci5zZXRIYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMocGFyYW1ldGVy
cy5oYXNSZWdpc3RlcmVkU2VydmljZVdvcmtlcnMpOwotICAgIFNlcnZpY2VXb3JrZXJQcm92aWRl
cjo6c2V0U2hhcmVkUHJvdmlkZXIoc2VydmljZVdvcmtlclByb3ZpZGVyKTsKKyAgICBTZXJ2aWNl
V29ya2VyUHJvdmlkZXI6OnNldFNoYXJlZFByb3ZpZGVyKFdlYlNlcnZpY2VXb3JrZXJQcm92aWRl
cjo6c2luZ2xldG9uKCkpOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCQVNTRU1CTFkpCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjkyMzhhNjkx
NzVmMTUwYWEzZjJkNGZmZmNiZWM5MWI0NmQ2YzNiMC4uZDk0OWE5YWFmNmJjM2E5YWZkMDE2YTVm
OGE5MGYyODEyZTg3ZTAzZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE4LTAyLTA2ICBZb3Vlbm4gRmFibGV0ICA8
eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBIYXNTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
IGJpdCBzaG91bGQgYmUgc2VudCB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2UKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjQxMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IENocmlzIER1bWV6LgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9TZXJ2aWNlV29ya2VyQmFzaWMubW06CisKIDIwMTgtMDItMDUgIFlvdXN1a2Ug
S2ltb3RvICA8eW91c3VrZS5raW1vdG9Ac29ueS5jb20+CiAKICAgICAgICAgW1dpbkNhaXJvXSBS
ZWZpbmUgV2ViS2l0TGVnYWN5IGFuZCBXZWJLaXQgYnVpbGQgZm9yIHdpbmNhaXJvCmRpZmYgLS1n
aXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1NlcnZpY2VXb3JrZXJC
YXNpYy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdv
cmtlckJhc2ljLm1tCmluZGV4IDI4ZTllOTkyZmIxYzUwZDJhYzg4ZTliYTFlOTc4ZTcxMTgwMWUy
ZDkuLjM0M2Y5Nzk3ZDY3MjI3MjU5Yzc3MzRiN2NiNjMxMzkxZTc3M2JkMDcgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdvcmtlckJhc2lj
Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2VydmljZVdv
cmtlckJhc2ljLm1tCkBAIC0zMyw2ICszMyw3IEBACiAjaW1wb3J0IDxXZWJLaXQvV0tVUkxTY2hl
bWVUYXNrUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Q
cml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oPgor
I2ltcG9ydCA8V2ViS2l0L1dLV2Vic2l0ZURhdGFTdG9yZVJlZi5oPgogI2ltcG9ydCA8V2ViS2l0
L1dlYktpdC5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0V4cGVyaW1lbnRhbEZlYXR1cmUuaD4KICNp
bXBvcnQgPHd0Zi9EZXF1ZS5oPgpAQCAtODM4LDYgKzgzOSw5NiBAQCBURVNUKFNlcnZpY2VXb3Jr
ZXJzLCBTZXJ2aWNlV29ya2VyUHJvY2Vzc0NyZWF0aW9uKQogICAgIGRvbmUgPSBmYWxzZTsKIH0K
IAorVEVTVChTZXJ2aWNlV29ya2VycywgSGFzU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkJpdCkK
K3sKKyAgICBbV0tXZWJzaXRlRGF0YVN0b3JlIF9hbGxvd1dlYnNpdGVEYXRhUmVjb3Jkc0ZvckFs
bE9yaWdpbnNdOworCisgICAgUmV0YWluUHRyPFdLV2ViVmlld0NvbmZpZ3VyYXRpb24+IGNvbmZp
Z3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0p
OworICAgIHNldENvbmZpZ3VyYXRpb25JbmplY3RlZEJ1bmRsZVBhdGgoY29uZmlndXJhdGlvbi5n
ZXQoKSk7CisKKyAgICBkb25lID0gZmFsc2U7CisKKyAgICBbW2NvbmZpZ3VyYXRpb24gd2Vic2l0
ZURhdGFTdG9yZV0gcmVtb3ZlRGF0YU9mVHlwZXM6W1dLV2Vic2l0ZURhdGFTdG9yZSBhbGxXZWJz
aXRlRGF0YVR5cGVzXSBtb2RpZmllZFNpbmNlOltOU0RhdGUgZGlzdGFudFBhc3RdIGNvbXBsZXRp
b25IYW5kbGVyOl4oKSB7CisgICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworICAgIFRlc3RX
ZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworCisgICAgW1tj
b25maWd1cmF0aW9uIHdlYnNpdGVEYXRhU3RvcmVdIGZldGNoRGF0YVJlY29yZHNPZlR5cGVzOltO
U1NldCBzZXRXaXRoT2JqZWN0OldLV2Vic2l0ZURhdGFUeXBlU2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbnNdIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNBcnJheTxXS1dlYnNpdGVEYXRhUmVjb3JkICo+
ICp3ZWJzaXRlRGF0YVJlY29yZHMpIHsKKworICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICB9XTsK
KyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsK
KworICAgIFJldGFpblB0cjxTV01lc3NhZ2VIYW5kbGVyPiBtZXNzYWdlSGFuZGxlciA9IGFkb3B0
TlMoW1tTV01lc3NhZ2VIYW5kbGVyIGFsbG9jXSBpbml0XSk7CisgICAgW1tjb25maWd1cmF0aW9u
IHVzZXJDb250ZW50Q29udHJvbGxlcl0gYWRkU2NyaXB0TWVzc2FnZUhhbmRsZXI6bWVzc2FnZUhh
bmRsZXIuZ2V0KCkgbmFtZTpAInN3Il07CisgICAgUmV0YWluUHRyPFJlZ3VsYXJQYWdlTWVzc2Fn
ZUhhbmRsZXI+IHJlZ3VsYXJQYWdlTWVzc2FnZUhhbmRsZXIgPSBhZG9wdE5TKFtbUmVndWxhclBh
Z2VNZXNzYWdlSGFuZGxlciBhbGxvY10gaW5pdF0pOworICAgIFtbY29uZmlndXJhdGlvbiB1c2Vy
Q29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOnJlZ3VsYXJQYWdlTWVz
c2FnZUhhbmRsZXIuZ2V0KCkgbmFtZTpAInJlZ3VsYXJQYWdlIl07CisKKyAgICBSZXRhaW5QdHI8
U1dTY2hlbWVzPiBoYW5kbGVyID0gYWRvcHROUyhbW1NXU2NoZW1lcyBhbGxvY10gaW5pdF0pOwor
ICAgIGhhbmRsZXItPnJlc291cmNlcy5zZXQoInN3Oi8vaG9zdC9yZWd1bGFyUGFnZVdpdGhvdXRD
b25uZWN0aW9uLmh0bWwiLCBSZXNvdXJjZUluZm8geyBAInRleHQvaHRtbCIsIHJlZ3VsYXJQYWdl
V2l0aG91dENvbm5lY3Rpb25CeXRlcyB9KTsKKyAgICBoYW5kbGVyLT5yZXNvdXJjZXMuc2V0KCJz
dzovL2hvc3QvcmVndWxhclBhZ2VXaXRoQ29ubmVjdGlvbi5odG1sIiwgUmVzb3VyY2VJbmZvIHsg
QCJ0ZXh0L2h0bWwiLCByZWd1bGFyUGFnZVdpdGhDb25uZWN0aW9uQnl0ZXMgfSk7CisgICAgaGFu
ZGxlci0+cmVzb3VyY2VzLnNldCgic3c6Ly9ob3N0L21haW5XaXRoU2NvcGUuaHRtbCIsIFJlc291
cmNlSW5mbyB7IEAidGV4dC9odG1sIiwgbWFpbkJ5dGVzV2l0aFNjb3BlIH0pOworICAgIGhhbmRs
ZXItPnJlc291cmNlcy5zZXQoInN3Oi8vaG9zdC9tYWluLmh0bWwiLCBSZXNvdXJjZUluZm8geyBA
InRleHQvaHRtbCIsIG1haW5CeXRlcyB9KTsKKyAgICBoYW5kbGVyLT5yZXNvdXJjZXMuc2V0KCJz
dzovL2hvc3Qvc3cuanMiLCBSZXNvdXJjZUluZm8geyBAImFwcGxpY2F0aW9uL2phdmFzY3JpcHQi
LCBzY3JpcHRCeXRlcyB9KTsKKyAgICBbY29uZmlndXJhdGlvbiBzZXRVUkxTY2hlbWVIYW5kbGVy
OmhhbmRsZXIuZ2V0KCkgZm9yVVJMU2NoZW1lOkAiU1ciXTsKKworICAgIFJldGFpblB0cjxXS1dl
YlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5n
ZXQoKV0pOworCisgICAgLy8gTG9hZCBhIHBhZ2UgdGhhdCByZWdpc3RlcnMgYSBzZXJ2aWNlIHdv
cmtlci4KKyAgICBOU1VSTFJlcXVlc3QgKnJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RX
aXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAic3c6Ly9ob3N0L21haW5XaXRoU2NvcGUuaHRt
bCJdXTsKKworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworICAgIHdlYlZpZXcg
PSBudWxscHRyOworCisgICAgLy8gTm93IHRoYXQgYSBzdyBpcyByZWdpc3RlcmVkLCBsZXQncyBj
cmVhdGUgYSBuZXcgY29uZmlndXJhdGlvbiBhbmQgdHJ5IGxvYWRpbmcgYSByZWd1bGFyIHBhZ2UK
KyAgICBSZXRhaW5QdHI8V0tXZWJWaWV3Q29uZmlndXJhdGlvbj4gbmV3Q29uZmlndXJhdGlvbiA9
IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgc2V0
Q29uZmlndXJhdGlvbkluamVjdGVkQnVuZGxlUGF0aChuZXdDb25maWd1cmF0aW9uLmdldCgpKTsK
KworICAgIFtbbmV3Q29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlw
dE1lc3NhZ2VIYW5kbGVyOm1lc3NhZ2VIYW5kbGVyLmdldCgpIG5hbWU6QCJzdyJdOworICAgIFtb
bmV3Q29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlwdE1lc3NhZ2VI
YW5kbGVyOnJlZ3VsYXJQYWdlTWVzc2FnZUhhbmRsZXIuZ2V0KCkgbmFtZTpAInJlZ3VsYXJQYWdl
Il07CisgICAgW25ld0NvbmZpZ3VyYXRpb24gc2V0VVJMU2NoZW1lSGFuZGxlcjpoYW5kbGVyLmdl
dCgpIGZvclVSTFNjaGVtZTpAIlNXIl07CisKKyAgICBuZXdDb25maWd1cmF0aW9uLmdldCgpLndl
YnNpdGVEYXRhU3RvcmUgPSBbV0tXZWJzaXRlRGF0YVN0b3JlIG5vblBlcnNpc3RlbnREYXRhU3Rv
cmVdOworICAgIFtuZXdDb25maWd1cmF0aW9uLmdldCgpLndlYnNpdGVEYXRhU3RvcmUgX3NldFNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rvcnk6IEAifi9ub25leGlzdGluZ2ZvbGRlciJd
OworCisgICAgW25ld0NvbmZpZ3VyYXRpb24uZ2V0KCkucHJvY2Vzc1Bvb2wgX3NldE1heGltdW1O
dW1iZXJPZlByb2Nlc3NlczoxXTsKKworICAgIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3Vy
YXRpb246bmV3Q29uZmlndXJhdGlvbi5nZXQoKV0pOworICAgIHJlcXVlc3QgPSBbTlNVUkxSZXF1
ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAic3c6Ly9ob3N0L3JlZ3Vs
YXJQYWdlV2l0aG91dENvbm5lY3Rpb24uaHRtbCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVz
dDpyZXF1ZXN0XTsKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRv
bmUgPSBmYWxzZTsKKworICAgIC8vIFRoZXJlIHNob3VsZCBiZSBubyBzdG9yYWdlIHByb2Nlc3Mg
Y3JlYXRlZC4KKyAgICBFWFBFQ1RfRVEoMCwgd2ViVmlldy5nZXQoKS5jb25maWd1cmF0aW9uLnBy
b2Nlc3NQb29sLl9zdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIpOworCisgICAgLy8gTGV0J3MgdXNl
IHRoZSB3ZWIgc2l0ZSBkYXRhIHN0b3JlIHRoYXQgaGFzIHNlcnZpY2Ugd29ya2VyIGFuZCBsb2Fk
IGEgcGFnZS4KKyAgICBuZXdDb25maWd1cmF0aW9uLmdldCgpLndlYnNpdGVEYXRhU3RvcmUgPSBb
Y29uZmlndXJhdGlvbiB3ZWJzaXRlRGF0YVN0b3JlXTsKKworICAgIHdlYlZpZXcgPSBhZG9wdE5T
KFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2
MDApIGNvbmZpZ3VyYXRpb246bmV3Q29uZmlndXJhdGlvbi5nZXQoKV0pOworICAgIEVYUEVDVF9F
USgxdSwgd2ViVmlldy5nZXQoKS5jb25maWd1cmF0aW9uLnByb2Nlc3NQb29sLl93ZWJQcm9jZXNz
Q291bnQpOworICAgIHJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VS
TCBVUkxXaXRoU3RyaW5nOkAic3c6Ly9ob3N0L3JlZ3VsYXJQYWdlV2l0aENvbm5lY3Rpb24uaHRt
bCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKyAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIC8vIE1ha2Ug
c3VyZSB0aGF0IHN0b3JhZ2UgcHJvY2VzcyBpcyBsYXVuY2hlZC4KKyAgICBFWFBFQ1RfTkUoMCwg
d2ViVmlldy5nZXQoKS5jb25maWd1cmF0aW9uLnByb2Nlc3NQb29sLl9zdG9yYWdlUHJvY2Vzc0lk
ZW50aWZpZXIpOworCisgICAgLy8gTWFrZSBzdXJlIHRoYXQgbG9hZGluZyB0aGUgc2ltcGxlIHBh
Z2UgZGlkIG5vdCBzdGFydCB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vzcy4KKyAgICBFWFBFQ1Rf
RVEoMXUsIHdlYlZpZXcuZ2V0KCkuY29uZmlndXJhdGlvbi5wcm9jZXNzUG9vbC5fd2ViUHJvY2Vz
c0NvdW50KTsKKworICAgIFtbY29uZmlndXJhdGlvbiB3ZWJzaXRlRGF0YVN0b3JlXSByZW1vdmVE
YXRhT2ZUeXBlczpbV0tXZWJzaXRlRGF0YVN0b3JlIGFsbFdlYnNpdGVEYXRhVHlwZXNdIG1vZGlm
aWVkU2luY2U6W05TRGF0ZSBkaXN0YW50UGFzdF0gY29tcGxldGlvbkhhbmRsZXI6XigpIHsKKyAg
ICAgICAgZG9uZSA9IHRydWU7CisgICAgfV07CisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVu
KCZkb25lKTsKKyAgICBkb25lID0gZmFsc2U7Cit9CisKICNlbmRpZiAvLyBXS19IQVZFX0NfU1BJ
CiAKICNlbmRpZiAvLyBXS19BUElfRU5BQkxFRAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>