<?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>201922</bug_id>
          
          <creation_ts>2019-09-18 10:59:24 -0700</creation_ts>
          <short_desc>WebStorageNamespaceProvider / StorageNamespaceImpl no longer need SessionIDs</short_desc>
          <delta_ts>2019-09-24 11:40:56 -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>WebKit2</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>aestes</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1571956</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-18 10:59:24 -0700</bug_when>
    <thetext>WebStorageNamespaceProvider / StorageNamespaceImpl no longer need SessionIDs, now that we have a single session per WebProcess.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571957</commentid>
    <comment_count>1</comment_count>
      <attachid>379049</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-18 11:00:18 -0700</bug_when>
    <thetext>Created attachment 379049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572198</commentid>
    <comment_count>2</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-18 19:30:24 -0700</bug_when>
    <thetext>This patch is ready for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572215</commentid>
    <comment_count>3</comment_count>
      <attachid>379049</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-09-18 20:03:57 -0700</bug_when>
    <thetext>Comment on attachment 379049
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572246</commentid>
    <comment_count>4</comment_count>
      <attachid>379049</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-18 21:19:05 -0700</bug_when>
    <thetext>Comment on attachment 379049
Patch

Clearing flags on attachment: 379049

Committed r250083: &lt;https://trac.webkit.org/changeset/250083&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572247</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-18 21:19:07 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572250</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-18 21:20:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/55505906&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572459</commentid>
    <comment_count>7</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2019-09-19 13:43:38 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572460</commentid>
    <comment_count>8</comment_count>
      <attachid>379160</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2019-09-19 13:43:39 -0700</bug_when>
    <thetext>Created attachment 379160
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572473</commentid>
    <comment_count>9</comment_count>
      <attachid>379160</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-19 13:56:11 -0700</bug_when>
    <thetext>Comment on attachment 379160
Patch

Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572488</commentid>
    <comment_count>10</comment_count>
      <attachid>379160</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-19 14:46:10 -0700</bug_when>
    <thetext>Comment on attachment 379160
Patch

Clearing flags on attachment: 379160

Committed r250106: &lt;https://trac.webkit.org/changeset/250106&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572489</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-19 14:46:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573714</commentid>
    <comment_count>12</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2019-09-24 11:39:36 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573715</commentid>
    <comment_count>13</comment_count>
      <attachid>379461</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2019-09-24 11:39:37 -0700</bug_when>
    <thetext>Created attachment 379461
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573716</commentid>
    <comment_count>14</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-09-24 11:40:35 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol. Please ensure that any frontend changes appropriately use feature checks for new protocol features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573717</commentid>
    <comment_count>15</comment_count>
      <attachid>379461</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2019-09-24 11:40:50 -0700</bug_when>
    <thetext>Comment on attachment 379461
Patch

Wrong but number, sorry for the noise.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379049</attachid>
            <date>2019-09-18 11:00:18 -0700</date>
            <delta_ts>2019-09-19 13:43:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201922-20190918110017.patch</filename>
            <type>text/plain</type>
            <size>13753</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDk1YzExM2NjNzg3OWY5ZjY1
YmQxMWYwMGQwOGQ3YTc5NDU4OWVhOWIuLmQyMGU3YzUxODgxNmU2YzBmNzIwN2ZiM2ZiY2U1ZTMy
ZmZlOWI4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTktMDktMTggIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJTdG9yYWdlTmFtZXNwYWNlUHJv
dmlkZXIgLyBTdG9yYWdlTmFtZXNwYWNlSW1wbCBubyBsb25nZXIgbmVlZCBTZXNzaW9uSURzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDE5MjIKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJTdG9yYWdl
TmFtZXNwYWNlUHJvdmlkZXIgLyBTdG9yYWdlTmFtZXNwYWNlSW1wbCBubyBsb25nZXIgbmVlZCBT
ZXNzaW9uSURzLCBub3cgdGhhdAorICAgICAgICB3ZSBoYXZlIGEgc2luZ2xlIHNlc3Npb24gcGVy
IFdlYlByb2Nlc3MuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFy
ZWFNYXAuY3BwOgorICAgICAgICAoV2ViS2l0OjpTdG9yYWdlQXJlYU1hcDo6Y29ubmVjdCk6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6U3RvcmFnZU5hbWVzcGFjZUltcGw6OmNyZWF0ZVNlc3Npb25TdG9y
YWdlTmFtZXNwYWNlKToKKyAgICAgICAgKFdlYktpdDo6U3RvcmFnZU5hbWVzcGFjZUltcGw6OmNy
ZWF0ZUxvY2FsU3RvcmFnZU5hbWVzcGFjZSk6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VOYW1l
c3BhY2VJbXBsOjpjcmVhdGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UpOgorICAgICAg
ICAoV2ViS2l0OjpTdG9yYWdlTmFtZXNwYWNlSW1wbDo6U3RvcmFnZU5hbWVzcGFjZUltcGwpOgor
ICAgICAgICAoV2ViS2l0OjpTdG9yYWdlTmFtZXNwYWNlSW1wbDo6c2Vzc2lvbklEIGNvbnN0KToK
KyAgICAgICAgKFdlYktpdDo6U3RvcmFnZU5hbWVzcGFjZUltcGw6OmNvcHkpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5oOgorICAgICAgICAo
KTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlN0b3JhZ2UvV2ViU3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZU5hbWVzcGFj
ZVByb3ZpZGVyOjpjcmVhdGVTZXNzaW9uU3RvcmFnZU5hbWVzcGFjZSk6CisgICAgICAgIChXZWJL
aXQ6OldlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcjo6Y3JlYXRlTG9jYWxTdG9yYWdlTmFtZXNw
YWNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOjpjcmVh
dGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UpOgorCiAyMDE5LTA5LTE4ICBDaHJpcyBE
dW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgRHJvcCBGcmFtZUxvYWRlckNsaWVu
dDo6c2Vzc2lvbklEKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJT
dG9yYWdlL1N0b3JhZ2VBcmVhTWFwLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJT
dG9yYWdlL1N0b3JhZ2VBcmVhTWFwLmNwcAppbmRleCBkOWI0YjY3NzQ2YTFmYjc4YmE4N2U4MDI2
MGU5NGM2MTJhMTVlNWM1Li4zNDEzYzQ3Y2M5MDUyNTg1OTBlNjgxMjY2NzkwYzk3MjhmNjcxNDE0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdl
QXJlYU1hcC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3Rv
cmFnZUFyZWFNYXAuY3BwCkBAIC0zNTMsMTIgKzM1MywxMiBAQCB2b2lkIFN0b3JhZ2VBcmVhTWFw
Ojpjb25uZWN0KCkKICAgICBjYXNlIFN0b3JhZ2VUeXBlOjpMb2NhbDoKICAgICBjYXNlIFN0b3Jh
Z2VUeXBlOjpUcmFuc2llbnRMb2NhbDoKICAgICAgICAgaWYgKFNlY3VyaXR5T3JpZ2luKiB0b3BM
ZXZlbE9yaWdpbiA9IG1fc3RvcmFnZU5hbWVzcGFjZS0+dG9wTGV2ZWxPcmlnaW4oKSkKLSAgICAg
ICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6U3RvcmFnZU1hbmFnZXJTZXQ6
OkNvbm5lY3RUb1RyYW5zaWVudExvY2FsU3RvcmFnZUFyZWEobV9zdG9yYWdlTmFtZXNwYWNlLT5z
ZXNzaW9uSUQoKSwgbV9zdG9yYWdlTmFtZXNwYWNlLT5zdG9yYWdlTmFtZXNwYWNlSUQoKSwgdG9w
TGV2ZWxPcmlnaW4tPmRhdGEoKSwgbV9zZWN1cml0eU9yaWdpbi0+ZGF0YSgpKSwgTWVzc2FnZXM6
OlN0b3JhZ2VNYW5hZ2VyU2V0OjpDb25uZWN0VG9UcmFuc2llbnRMb2NhbFN0b3JhZ2VBcmVhOjpS
ZXBseShtX3N0b3JhZ2VNYXBJRCksIDApOworICAgICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRT
eW5jKE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlclNldDo6Q29ubmVjdFRvVHJhbnNpZW50TG9jYWxT
dG9yYWdlQXJlYShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXNzaW9uSUQoKSwgbV9zdG9yYWdl
TmFtZXNwYWNlLT5zdG9yYWdlTmFtZXNwYWNlSUQoKSwgdG9wTGV2ZWxPcmlnaW4tPmRhdGEoKSwg
bV9zZWN1cml0eU9yaWdpbi0+ZGF0YSgpKSwgTWVzc2FnZXM6OlN0b3JhZ2VNYW5hZ2VyU2V0OjpD
b25uZWN0VG9UcmFuc2llbnRMb2NhbFN0b3JhZ2VBcmVhOjpSZXBseShtX3N0b3JhZ2VNYXBJRCks
IDApOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5l
bnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZFN5bmMoTWVz
c2FnZXM6OlN0b3JhZ2VNYW5hZ2VyU2V0OjpDb25uZWN0VG9Mb2NhbFN0b3JhZ2VBcmVhKG1fc3Rv
cmFnZU5hbWVzcGFjZS0+c2Vzc2lvbklEKCksIG1fc3RvcmFnZU5hbWVzcGFjZS0+c3RvcmFnZU5h
bWVzcGFjZUlEKCksIG1fc2VjdXJpdHlPcmlnaW4tPmRhdGEoKSksIE1lc3NhZ2VzOjpTdG9yYWdl
TWFuYWdlclNldDo6Q29ubmVjdFRvTG9jYWxTdG9yYWdlQXJlYTo6UmVwbHkobV9zdG9yYWdlTWFw
SUQpLCAwKTsKKyAgICAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdv
cmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6U3Rv
cmFnZU1hbmFnZXJTZXQ6OkNvbm5lY3RUb0xvY2FsU3RvcmFnZUFyZWEoV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkuc2Vzc2lvbklEKCksIG1fc3RvcmFnZU5hbWVzcGFjZS0+c3RvcmFnZU5hbWVzcGFj
ZUlEKCksIG1fc2VjdXJpdHlPcmlnaW4tPmRhdGEoKSksIE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdl
clNldDo6Q29ubmVjdFRvTG9jYWxTdG9yYWdlQXJlYTo6UmVwbHkobV9zdG9yYWdlTWFwSUQpLCAw
KTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTdG9yYWdlVHlwZTo6U2Vzc2lvbjoKLSAgICAg
ICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9u
KCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlclNldDo6Q29u
bmVjdFRvU2Vzc2lvblN0b3JhZ2VBcmVhKG1fc3RvcmFnZU5hbWVzcGFjZS0+c2Vzc2lvbklEKCks
IG1fc3RvcmFnZU5hbWVzcGFjZS0+c3RvcmFnZU5hbWVzcGFjZUlEKCksIG1fc2VjdXJpdHlPcmln
aW4tPmRhdGEoKSksIE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlclNldDo6Q29ubmVjdFRvU2Vzc2lv
blN0b3JhZ2VBcmVhOjpSZXBseShtX3N0b3JhZ2VNYXBJRCksIDApOworICAgICAgICBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0
aW9uKCkuc2VuZFN5bmMoTWVzc2FnZXM6OlN0b3JhZ2VNYW5hZ2VyU2V0OjpDb25uZWN0VG9TZXNz
aW9uU3RvcmFnZUFyZWEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCksIG1fc3Rv
cmFnZU5hbWVzcGFjZS0+c3RvcmFnZU5hbWVzcGFjZUlEKCksIG1fc2VjdXJpdHlPcmlnaW4tPmRh
dGEoKSksIE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlclNldDo6Q29ubmVjdFRvU2Vzc2lvblN0b3Jh
Z2VBcmVhOjpSZXBseShtX3N0b3JhZ2VNYXBJRCksIDApOwogICAgIH0KIAogICAgIGlmIChtX3N0
b3JhZ2VNYXBJRCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9y
YWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJTdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcAppbmRleCAwY2JlNzcwOWYxMTJiMDQ5
OGM1NDNiN2E5ZmVlNjY1ZmJiYTg0YTY2Li5jMzFhMThlMGMzOGJlZGQ0MGYzOGM4MmQzMmIyYmFj
NzJhODY4Y2M5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFn
ZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlN0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZUltcGwuY3BwCkBAIC00OCwzMiArNDgsMzEgQEAg
c3RhdGljIEhhc2hNYXA8U3RvcmFnZU5hbWVzcGFjZUltcGw6OklkZW50aWZpZXIsIFN0b3JhZ2VO
YW1lc3BhY2VJbXBsKj4mIHNlc3Npb24KICAgICByZXR1cm4gbWFwOwogfQogCi1SZWY8U3RvcmFn
ZU5hbWVzcGFjZUltcGw+IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVTZXNzaW9uU3RvcmFn
ZU5hbWVzcGFjZShJZGVudGlmaWVyIGlkZW50aWZpZXIsIFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwg
dW5zaWduZWQgcXVvdGFJbkJ5dGVzLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8U3Rv
cmFnZU5hbWVzcGFjZUltcGw+IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVTZXNzaW9uU3Rv
cmFnZU5hbWVzcGFjZShJZGVudGlmaWVyIGlkZW50aWZpZXIsIFBhZ2VJZGVudGlmaWVyIHBhZ2VJ
RCwgdW5zaWduZWQgcXVvdGFJbkJ5dGVzKQogewogICAgIC8vIFRoZSBpZGVudGlmaWVyIG9mIGEg
c2Vzc2lvbiBzdG9yYWdlIG5hbWVzcGFjZSBpcyB0aGUgV2ViUGFnZVByb3h5SWRlbnRpZmllci4g
SXQgaXMgcG9zc2libGUgd2UgaGF2ZSBzZXZlcmFsIFdlYlBhZ2Ugb2JqZWN0cyBpbiBhIHNpbmds
ZSBwcm9jZXNzIGZvciB0aGUgc2FtZQogICAgIC8vIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgYW5k
IHRoZXNlIG5lZWQgdG8gc2hhcmUgdGhlIHNhbWUgbmFtZXNwYWNlIGluc3RhbmNlIHNvIHdlIGtu
b3cgd2hlcmUgdG8gcm91dGUgdGhlIElQQyB0by4KICAgICBpZiAoYXV0byogZXhpc3RpbmdOYW1l
c3BhY2UgPSBzZXNzaW9uU3RvcmFnZU5hbWVzcGFjZXMoKS5nZXQoaWRlbnRpZmllcikpCiAgICAg
ICAgIHJldHVybiAqZXhpc3RpbmdOYW1lc3BhY2U7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
U3RvcmFnZU5hbWVzcGFjZUltcGwoU3RvcmFnZVR5cGU6OlNlc3Npb24sIGlkZW50aWZpZXIsIHBh
Z2VJRCwgbnVsbHB0ciwgcXVvdGFJbkJ5dGVzLCBzZXNzaW9uSUQpKTsKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBTdG9yYWdlTmFtZXNwYWNlSW1wbChTdG9yYWdlVHlwZTo6U2Vzc2lvbiwgaWRl
bnRpZmllciwgcGFnZUlELCBudWxscHRyLCBxdW90YUluQnl0ZXMpKTsKIH0KIAotUmVmPFN0b3Jh
Z2VOYW1lc3BhY2VJbXBsPiBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6Y3JlYXRlTG9jYWxTdG9yYWdl
TmFtZXNwYWNlKElkZW50aWZpZXIgaWRlbnRpZmllciwgdW5zaWduZWQgcXVvdGFJbkJ5dGVzLCBQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitSZWY8U3RvcmFnZU5hbWVzcGFjZUltcGw+IFN0b3Jh
Z2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVMb2NhbFN0b3JhZ2VOYW1lc3BhY2UoSWRlbnRpZmllciBp
ZGVudGlmaWVyLCB1bnNpZ25lZCBxdW90YUluQnl0ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU3RvcmFnZU5hbWVzcGFjZUltcGwoU3RvcmFnZVR5cGU6OkxvY2FsLCBpZGVudGlmaWVy
LCBXVEY6Om51bGxvcHQsIG51bGxwdHIsIHF1b3RhSW5CeXRlcywgc2Vzc2lvbklEKSk7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgU3RvcmFnZU5hbWVzcGFjZUltcGwoU3RvcmFnZVR5cGU6Okxv
Y2FsLCBpZGVudGlmaWVyLCBXVEY6Om51bGxvcHQsIG51bGxwdHIsIHF1b3RhSW5CeXRlcykpOwog
fQogCi1SZWY8U3RvcmFnZU5hbWVzcGFjZUltcGw+IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVh
dGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UoSWRlbnRpZmllciBpZGVudGlmaWVyLCBX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgdG9wTGV2ZWxPcmlnaW4sIHVpbnQ2NF90IHF1b3RhSW5C
eXRlcywgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQorUmVmPFN0b3JhZ2VOYW1lc3BhY2VJbXBs
PiBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6Y3JlYXRlVHJhbnNpZW50TG9jYWxTdG9yYWdlTmFtZXNw
YWNlKElkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIHRvcExl
dmVsT3JpZ2luLCB1aW50NjRfdCBxdW90YUluQnl0ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU3RvcmFnZU5hbWVzcGFjZUltcGwoU3RvcmFnZVR5cGU6OlRyYW5zaWVudExvY2FsLCBp
ZGVudGlmaWVyLCBXVEY6Om51bGxvcHQsICZ0b3BMZXZlbE9yaWdpbiwgcXVvdGFJbkJ5dGVzLCBz
ZXNzaW9uSUQpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdG9yYWdlTmFtZXNwYWNlSW1w
bChTdG9yYWdlVHlwZTo6VHJhbnNpZW50TG9jYWwsIGlkZW50aWZpZXIsIFdURjo6bnVsbG9wdCwg
JnRvcExldmVsT3JpZ2luLCBxdW90YUluQnl0ZXMpKTsKIH0KIAotU3RvcmFnZU5hbWVzcGFjZUlt
cGw6OlN0b3JhZ2VOYW1lc3BhY2VJbXBsKFdlYkNvcmU6OlN0b3JhZ2VUeXBlIHN0b3JhZ2VUeXBl
LCBJZGVudGlmaWVyIHN0b3JhZ2VOYW1lc3BhY2VJRCwgY29uc3QgT3B0aW9uYWw8UGFnZUlkZW50
aWZpZXI+JiBwYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qIHRvcExldmVs
T3JpZ2luLCB1bnNpZ25lZCBxdW90YUluQnl0ZXMsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkK
K1N0b3JhZ2VOYW1lc3BhY2VJbXBsOjpTdG9yYWdlTmFtZXNwYWNlSW1wbChXZWJDb3JlOjpTdG9y
YWdlVHlwZSBzdG9yYWdlVHlwZSwgSWRlbnRpZmllciBzdG9yYWdlTmFtZXNwYWNlSUQsIGNvbnN0
IE9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiYgcGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luKiB0b3BMZXZlbE9yaWdpbiwgdW5zaWduZWQgcXVvdGFJbkJ5dGVzKQogICAgIDog
bV9zdG9yYWdlVHlwZShzdG9yYWdlVHlwZSkKICAgICAsIG1fc3RvcmFnZU5hbWVzcGFjZUlEKHN0
b3JhZ2VOYW1lc3BhY2VJRCkKICAgICAsIG1fc2Vzc2lvblBhZ2VJRChwYWdlSWRlbnRpZmllcikK
ICAgICAsIG1fdG9wTGV2ZWxPcmlnaW4odG9wTGV2ZWxPcmlnaW4pCiAgICAgLCBtX3F1b3RhSW5C
eXRlcyhxdW90YUluQnl0ZXMpCi0gICAgLCBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiB7CiAgICAg
QVNTRVJUKHN0b3JhZ2VUeXBlID09IFN0b3JhZ2VUeXBlOjpTZXNzaW9uIHx8ICFtX3Nlc3Npb25Q
YWdlSUQpOwogICAgIApAQCAtOTEsNiArOTAsMTEgQEAgU3RvcmFnZU5hbWVzcGFjZUltcGw6On5T
dG9yYWdlTmFtZXNwYWNlSW1wbCgpCiAgICAgfQogfQogCitQQUw6OlNlc3Npb25JRCBTdG9yYWdl
TmFtZXNwYWNlSW1wbDo6c2Vzc2lvbklEKCkgY29uc3QKK3sKKyAgICByZXR1cm4gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCk7Cit9CisKIHZvaWQgU3RvcmFnZU5hbWVzcGFjZUlt
cGw6OmRpZERlc3Ryb3lTdG9yYWdlQXJlYU1hcChTdG9yYWdlQXJlYU1hcCYgbWFwKQogewogICAg
IG1fc3RvcmFnZUFyZWFNYXBzLnJlbW92ZShtYXAuc2VjdXJpdHlPcmlnaW4oKS5kYXRhKCkpOwpA
QCAtMTE3LDkgKzEyMSw5IEBAIFJlZjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlTmFtZXNwYWNl
SW1wbDo6Y29weShQYWdlJiBuZXdQYWdlKQogICAgIEFTU0VSVChtX3N0b3JhZ2VUeXBlID09IFN0
b3JhZ2VUeXBlOjpTZXNzaW9uKTsKIAogICAgIGlmIChhdXRvIG5ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmV4aXN0aW5nTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uKCkpCi0gICAgICAgIG5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi0+Y29ubmVjdGlvbigp
LnNlbmQoTWVzc2FnZXM6OlN0b3JhZ2VNYW5hZ2VyU2V0OjpDbG9uZVNlc3Npb25TdG9yYWdlTmFt
ZXNwYWNlKG5ld1BhZ2Uuc2Vzc2lvbklEKCksIG1fc3RvcmFnZU5hbWVzcGFjZUlELCBXZWJQYWdl
Ojpmcm9tQ29yZVBhZ2UobmV3UGFnZSkuc2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVy
KCkpLCAwKTsKKyAgICAgICAgbmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLT5jb25uZWN0aW9uKCku
c2VuZChNZXNzYWdlczo6U3RvcmFnZU1hbmFnZXJTZXQ6OkNsb25lU2Vzc2lvblN0b3JhZ2VOYW1l
c3BhY2Uoc2Vzc2lvbklEKCksIG1fc3RvcmFnZU5hbWVzcGFjZUlELCBXZWJQYWdlOjpmcm9tQ29y
ZVBhZ2UobmV3UGFnZSkuc2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyKCkpLCAwKTsK
IAotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFN0b3JhZ2VOYW1lc3BhY2VJbXBsKG1fc3RvcmFn
ZVR5cGUsIFdlYlBhZ2U6OmZyb21Db3JlUGFnZShuZXdQYWdlKS5zZXNzaW9uU3RvcmFnZU5hbWVz
cGFjZUlkZW50aWZpZXIoKSwgV2ViUGFnZTo6ZnJvbUNvcmVQYWdlKG5ld1BhZ2UpLmlkZW50aWZp
ZXIoKSwgbV90b3BMZXZlbE9yaWdpbi5nZXQoKSwgbV9xdW90YUluQnl0ZXMsIG5ld1BhZ2Uuc2Vz
c2lvbklEKCkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdG9yYWdlTmFtZXNwYWNlSW1w
bChtX3N0b3JhZ2VUeXBlLCBXZWJQYWdlOjpmcm9tQ29yZVBhZ2UobmV3UGFnZSkuc2Vzc2lvblN0
b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyKCksIFdlYlBhZ2U6OmZyb21Db3JlUGFnZShuZXdQYWdl
KS5pZGVudGlmaWVyKCksIG1fdG9wTGV2ZWxPcmlnaW4uZ2V0KCksIG1fcXVvdGFJbkJ5dGVzKSk7
CiB9CiAKIHZvaWQgU3RvcmFnZU5hbWVzcGFjZUltcGw6OnNldFNlc3Npb25JREZvclRlc3Rpbmco
UEFMOjpTZXNzaW9uSUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
U3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlN0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZUltcGwuaAppbmRleCBjNzYwYTU0N2MxOGRjZDZj
NzE4ODJkYzQ5MjU5ZTEwYzFlMWI5NWIyLi44YmU4OTc3MzdjZmQxYzg0OTY2YjJhZGJlNzIwMzJh
OWJlZjYzNjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFn
ZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJTdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmgKQEAgLTQ0LDkgKzQ0LDkgQEAgY2xhc3Mg
U3RvcmFnZU5hbWVzcGFjZUltcGwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFnZU5hbWVzcGFjZSB7
CiBwdWJsaWM6CiAgICAgdXNpbmcgSWRlbnRpZmllciA9IFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlm
aWVyOwogCi0gICAgc3RhdGljIFJlZjxTdG9yYWdlTmFtZXNwYWNlSW1wbD4gY3JlYXRlU2Vzc2lv
blN0b3JhZ2VOYW1lc3BhY2UoSWRlbnRpZmllciwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIHVu
c2lnbmVkIHF1b3RhSW5CeXRlcywgUEFMOjpTZXNzaW9uSUQpOwotICAgIHN0YXRpYyBSZWY8U3Rv
cmFnZU5hbWVzcGFjZUltcGw+IGNyZWF0ZUxvY2FsU3RvcmFnZU5hbWVzcGFjZShJZGVudGlmaWVy
LCB1bnNpZ25lZCBxdW90YUluQnl0ZXMsIFBBTDo6U2Vzc2lvbklEKTsKLSAgICBzdGF0aWMgUmVm
PFN0b3JhZ2VOYW1lc3BhY2VJbXBsPiBjcmVhdGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3Bh
Y2UoSWRlbnRpZmllciwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIHRvcExldmVsT3JpZ2luLCB1
aW50NjRfdCBxdW90YUluQnl0ZXMsIFBBTDo6U2Vzc2lvbklEKTsKKyAgICBzdGF0aWMgUmVmPFN0
b3JhZ2VOYW1lc3BhY2VJbXBsPiBjcmVhdGVTZXNzaW9uU3RvcmFnZU5hbWVzcGFjZShJZGVudGlm
aWVyLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgdW5zaWduZWQgcXVvdGFJbkJ5dGVzKTsKKyAg
ICBzdGF0aWMgUmVmPFN0b3JhZ2VOYW1lc3BhY2VJbXBsPiBjcmVhdGVMb2NhbFN0b3JhZ2VOYW1l
c3BhY2UoSWRlbnRpZmllciwgdW5zaWduZWQgcXVvdGFJbkJ5dGVzKTsKKyAgICBzdGF0aWMgUmVm
PFN0b3JhZ2VOYW1lc3BhY2VJbXBsPiBjcmVhdGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3Bh
Y2UoSWRlbnRpZmllciwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIHRvcExldmVsT3JpZ2luLCB1
aW50NjRfdCBxdW90YUluQnl0ZXMpOwogCiAgICAgdmlydHVhbCB+U3RvcmFnZU5hbWVzcGFjZUlt
cGwoKTsKIApAQCAtNTYsMTQgKzU2LDE0IEBAIHB1YmxpYzoKICAgICB1aW50NjRfdCBwYWdlR3Jv
dXBJRCgpIGNvbnN0OwogICAgIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiB0b3BMZXZlbE9yaWdp
bigpIGNvbnN0IHsgcmV0dXJuIG1fdG9wTGV2ZWxPcmlnaW4uZ2V0KCk7IH0KICAgICB1bnNpZ25l
ZCBxdW90YUluQnl0ZXMoKSBjb25zdCB7IHJldHVybiBtX3F1b3RhSW5CeXRlczsgfQotICAgIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fc2Vzc2lv
bklEOyB9CisgICAgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3Qgb3ZlcnJpZGU7CiAK
ICAgICB2b2lkIGRpZERlc3Ryb3lTdG9yYWdlQXJlYU1hcChTdG9yYWdlQXJlYU1hcCYpOwogCiAg
ICAgdm9pZCBzZXRTZXNzaW9uSURGb3JUZXN0aW5nKFBBTDo6U2Vzc2lvbklEKSBvdmVycmlkZTsK
IAogcHJpdmF0ZToKLSAgICBTdG9yYWdlTmFtZXNwYWNlSW1wbChXZWJDb3JlOjpTdG9yYWdlVHlw
ZSwgSWRlbnRpZmllciwgY29uc3QgT3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlkZW50aWZpZXI+Jiwg
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qIHRvcExldmVsT3JpZ2luLCB1bnNpZ25lZCBxdW90YUlu
Qnl0ZXMsIFBBTDo6U2Vzc2lvbklEKTsKKyAgICBTdG9yYWdlTmFtZXNwYWNlSW1wbChXZWJDb3Jl
OjpTdG9yYWdlVHlwZSwgSWRlbnRpZmllciwgY29uc3QgT3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXI+JiwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qIHRvcExldmVsT3JpZ2luLCB1bnNp
Z25lZCBxdW90YUluQnl0ZXMpOwogCiAgICAgUmVmPFdlYkNvcmU6OlN0b3JhZ2VBcmVhPiBzdG9y
YWdlQXJlYShjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmKSBvdmVycmlkZTsKIApA
QCAtNzksOCArNzksNiBAQCBwcml2YXRlOgogCiAgICAgY29uc3QgdW5zaWduZWQgbV9xdW90YUlu
Qnl0ZXM7CiAKLSAgICBQQUw6OlNlc3Npb25JRCBtX3Nlc3Npb25JRDsKLQogICAgIEhhc2hNYXA8
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhLCBSZWZQdHI8U3RvcmFnZUFyZWFNYXA+PiBtX3N0
b3JhZ2VBcmVhTWFwczsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJTdG9yYWdlL1dlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9XZWJTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuY3Bw
CmluZGV4IDIxNTNmMTk0ZWYyNzA4ZWY3ZTZkOWFkN2QzMWZmMjA0YmQyNjhhOGIuLjYyYjc4MjVk
Zjc1ZmEzZTA1MDQ2MDEzN2YyNTczNmE4OWU0OWM2NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1dlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvV2ViU3RvcmFnZU5hbWVz
cGFjZVByb3ZpZGVyLmNwcApAQCAtNjcsMTcgKzY3LDE5IEBAIFdlYlN0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlcjo6fldlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcigpCiBSZWY8V2ViQ29yZTo6U3Rv
cmFnZU5hbWVzcGFjZT4gV2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOjpjcmVhdGVTZXNzaW9u
U3RvcmFnZU5hbWVzcGFjZShQYWdlJiBwYWdlLCB1bnNpZ25lZCBxdW90YSkKIHsKICAgICBhdXRv
JiB3ZWJQYWdlID0gV2ViUGFnZTo6ZnJvbUNvcmVQYWdlKHBhZ2UpOwotICAgIHJldHVybiBTdG9y
YWdlTmFtZXNwYWNlSW1wbDo6Y3JlYXRlU2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2Uod2ViUGFnZS5z
ZXNzaW9uU3RvcmFnZU5hbWVzcGFjZUlkZW50aWZpZXIoKSwgd2ViUGFnZS5pZGVudGlmaWVyKCks
IHF1b3RhLCBwYWdlLnNlc3Npb25JRCgpKTsKKyAgICByZXR1cm4gU3RvcmFnZU5hbWVzcGFjZUlt
cGw6OmNyZWF0ZVNlc3Npb25TdG9yYWdlTmFtZXNwYWNlKHdlYlBhZ2Uuc2Vzc2lvblN0b3JhZ2VO
YW1lc3BhY2VJZGVudGlmaWVyKCksIHdlYlBhZ2UuaWRlbnRpZmllcigpLCBxdW90YSk7CiB9CiAK
IFJlZjxXZWJDb3JlOjpTdG9yYWdlTmFtZXNwYWNlPiBXZWJTdG9yYWdlTmFtZXNwYWNlUHJvdmlk
ZXI6OmNyZWF0ZUxvY2FsU3RvcmFnZU5hbWVzcGFjZSh1bnNpZ25lZCBxdW90YSwgUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklEKQogewotICAgIHJldHVybiBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6Y3Jl
YXRlTG9jYWxTdG9yYWdlTmFtZXNwYWNlKG1fbG9jYWxTdG9yYWdlTmFtZXNwYWNlSWRlbnRpZmll
ciwgcXVvdGEsIHNlc3Npb25JRCk7CisgICAgQVNTRVJUX1VOVVNFRChzZXNzaW9uSUQsIHNlc3Np
b25JRCA9PSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXNzaW9uSUQoKSk7CisgICAgcmV0dXJu
IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVMb2NhbFN0b3JhZ2VOYW1lc3BhY2UobV9sb2Nh
bFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyLCBxdW90YSk7CiB9CiAKIFJlZjxXZWJDb3JlOjpT
dG9yYWdlTmFtZXNwYWNlPiBXZWJTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXI6OmNyZWF0ZVRyYW5z
aWVudExvY2FsU3RvcmFnZU5hbWVzcGFjZShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgdG9wTGV2
ZWxPcmlnaW4sIHVuc2lnbmVkIHF1b3RhLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0g
ICAgcmV0dXJuIFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVUcmFuc2llbnRMb2NhbFN0b3Jh
Z2VOYW1lc3BhY2UobV9sb2NhbFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyLCB0b3BMZXZlbE9y
aWdpbiwgcXVvdGEsIHNlc3Npb25JRCk7CisgICAgQVNTRVJUX1VOVVNFRChzZXNzaW9uSUQsIHNl
c3Npb25JRCA9PSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXNzaW9uSUQoKSk7CisgICAgcmV0
dXJuIFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1l
c3BhY2UobV9sb2NhbFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyLCB0b3BMZXZlbE9yaWdpbiwg
cXVvdGEpOwogfQogCiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379160</attachid>
            <date>2019-09-19 13:43:39 -0700</date>
            <delta_ts>2019-09-24 11:39:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201922-20190919134339.patch</filename>
            <type>text/plain</type>
            <size>1695</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDFjZWIxZDM1ZGNkMzNlZjEw
OWY4Y2YyZDgyM2YxYWQ5OTYxMDg1MzEuLmI1NjAzOTk3NGQ3YjVjNDEwYjljNjA1MGE1NGU3MDNl
MTUzOWY1ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTktMDktMTkgIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViU3RvcmFnZU5hbWVz
cGFjZVByb3ZpZGVyIC8gU3RvcmFnZU5hbWVzcGFjZUltcGwgbm8gbG9uZ2VyIG5lZWQgU2Vzc2lv
bklEcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAx
OTIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NTUwNTkwNj4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggR1RLIERlYnVnIGNvbXBpbGF0aW9u
IGFmdGVyIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yNTAwODM6CisgICAgICAg
IC4uLy4uL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1dlYlN0b3JhZ2VOYW1l
c3BhY2VQcm92aWRlci5jcHA6NzU6NTU6IGVycm9yOiBubyBtZW1iZXIgbmFtZWQgJ3NpbmdsZXRv
bicgaW4gbmFtZXNwYWNlICdXZWJDb3JlOjpQcm9jZXNzJworICAgICAgICBBU1NFUlRfVU5VU0VE
KHNlc3Npb25JRCwgc2Vzc2lvbklEID09IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnNlc3Npb25J
RCgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+
fn5+fl4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViU3RvcmFnZS9XZWJTdG9yYWdlTmFtZXNw
YWNlUHJvdmlkZXIuY3BwOgorCiAyMDE5LTA5LTE5ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1A
YXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBJbmplY3RlZEJ1bmRsZSBTUEkgdG8gYmV0dGVy
IHN1cHBvcnQgTlNTZWN1cmVDb2RpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJTdG9yYWdlL1dlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9XZWJTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIu
Y3BwCmluZGV4IDYyYjc4MjVkZjc1ZmEzZTA1MDQ2MDEzN2YyNTczNmE4OWU0OWM2NDUuLjJiYWZk
NGVkYmMyOGMyYjlmMDc2NjIxMDU2OTMzYzVjY2VlNjg5ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1dlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvV2ViU3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyLmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIlN0b3JhZ2VO
YW1lc3BhY2VJbXBsLmgiCiAjaW5jbHVkZSAiV2ViUGFnZS5oIgogI2luY2x1ZGUgIldlYlBhZ2VH
cm91cFByb3h5LmgiCisjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgogI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>379461</attachid>
            <date>2019-09-24 11:39:37 -0700</date>
            <delta_ts>2019-09-24 11:40:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201922-20190924113937.patch</filename>
            <type>text/plain</type>
            <size>20647</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
MDRlODc5MTExZmRmNjE2OTRlYzhhNzM3OGYxOWZhZmZkNDVlZjliLi42NzJiNDFmOTQwZTQ4ZDZj
NTc4YWRjMGFjMmY1NWNkNDhlYjE1MjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNCBAQAorMjAxOS0wOS0yNCAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBXZWJTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIgLyBTdG9yYWdlTmFt
ZXNwYWNlSW1wbCBubyBsb25nZXIgbmVlZCBTZXNzaW9uSURzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDE5MjIKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzU1NTA1OTA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIENoYW5nZWQgYnJlYWtwb2ludCByZXNvbHV0aW9uIGxvZ2ljIHRvIG1ha2UgaXQgY29z
aXN0ZW50IGFjcm9zcyBwbGF0Zm9ybXMgYW5kCisgICAgICAgIGJldHRlciBoYW5kbGUgdGhlIGNh
c2Ugd2hlbiB0aGVyZSBhcmUgc2V2ZXJhbCBEZWJ1Z2dlclBhdXNlUG9zaXRpb25zIGF0IHRoZSBz
YW1lCisgICAgICAgIG9mZnNldCAoYnV0IHdpdGggZGlmZmVyZW50IHR5cGVzKS4KKworICAgICAg
ICAqIGRlYnVnZ2VyL0RlYnVnZ2VyLmNwcDoKKyAgICAgICAgKEpTQzo6RGVidWdnZXI6OnJlc29s
dmVCcmVha3BvaW50KTogY2xhcmlmaWVkIHRoYXQgaW4gdGhlIG1hcCBjb2x1bW5zIGFyZSAwLWJh
c2VkLgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyUGFyc2VEYXRhLmNwcDoKKyAgICAgICAg
KEpTQzo6RGVidWdnZXJQYXVzZVBvc2l0aW9uczo6YnJlYWtwb2ludExvY2F0aW9uRm9yTGluZUNv
bHVtbik6IHJlcGxhY2VkIGN1c3RvbQorICAgICAgICBiaW5hcnkgc2VhcmNoIHdpdGggc3RkOjps
b3dlcl9ib3VuZC4gSWYgdGhlcmUgYXJlIHNldmVyYWwgcGF1c2UgcG9zaXRpb25zIGF0IHRoZQor
ICAgICAgICBzYW1lIG9mZnNldCB0aGV5IHdpbGwgYmUgc29ydGVkIGJ5IHRoZSB0eXBlIGFuZCB0
aGUgYWxnb3JpdGhtIGlzIGd1YXJhbnRlZWQgdG8gc2VlCisgICAgICAgIGxlZ3Rtb3N0IG9uZSBm
aXJzdC4KKworICAgICAgICAoSlNDOjpEZWJ1Z2dlclBhdXNlUG9zaXRpb25zOjpzb3J0KTogdXNl
IHR5cGUgYXMgc2Vjb25kYXJ5IG9yZGVyaW5nIGNvbXBvbmVudC4KKyAgICAgICAgKiBkZWJ1Z2dl
ci9EZWJ1Z2dlclBhcnNlRGF0YS5oOiBSZWFycmFuZ2VkIHR5cGUgY29uc3RhbnRzIHNvIHRoYXQg
RW50ZXIgPCBQYXVzZSA8IExlYXZlCisgICAgICAgIHRoaXMgY2hhbmdlIGFsb25nIHdpdGggc29y
dGluZyBieSB0eXBlIHNob3VsZCBndWFyYW50ZWUgdGhhdCBpbiBjYXNlIG9mIHNldmVyYWwgcGF1
c2UKKyAgICAgICAgcG9zaXRpb25zIGF0IHRoZSBzYW1lIGxpbmUgRW50ZXIgZ29lcyBiZWZvcmUg
UGF1c2UgYmVmb3JlIExlYXZlIGFuZCB0aGUgYnJlYWtwb2ludAorICAgICAgICByZXNvbHV0aW9u
IHdpbGwgeWllbGQgcmVzdWx0IHNpbWlsYXIgdG8gdGhhdCB3aGVuIGVhY2ggcGF1c2UgbG9jYXRp
b25zIGhhcyBkaWZmZXJlbnQKKyAgICAgICAgcG9zaXRpb24uCisKKyAgICAgICAgKiBpbnNwZWN0
b3IvcHJvdG9jb2wvRGVidWdnZXIuanNvbjogY2xhcmlmaWVkIHRoYXQgcG9zaXRpb25zIGFyZSAw
LWJhc2VkLgorICAgICAgICAqIHBhcnNlci9QYXJzZXJUb2tlbnMuaDoKKyAgICAgICAgKEpTQzo6
SlNUZXh0UG9zaXRpb246OmNvbHVtbiBjb25zdCk6IGFkZGVkIGhlbHBlciBtZXRob2QgZm9yIGNv
bXB1dGluZyBjb2x1bW4uCisKIDIwMTktMDktMTkgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlZmFjdG9yaW5nOiBmaXggYnJva2VuIGluZGVudGF0aW9uIGluIEpT
Tm9uRGVzdHJ1Y3RpYmxlUHJveHkuaC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3M2E3YmRiMjIzYjI4OGU2YWE2
NTZlZTUwODM0YTE5YjQ0MTAzMWE2Li42NThhY2E3ODUwNDFmYjdlNjk1N2MwYmZmMzUxN2QzNDVm
YTU4OGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTktMDktMjAgIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rvcjog
dGVzdHMgdW5kZXIgTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyIGFyZSBmbGFreQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3MTMxCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS8xODQ2MTMzNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBGaXggZGVidWdnZXIgdGVzdHMgb24gR1RLLiBBbGwgdGVz
dHMgdGhhdCBwYXVzZSBvbiBicmVha3BvaW50IGRpZG4ndCB3b3JrIGJlY2F1c2UKKyAgICAgICAg
aW4gbGF5b3V0IHRlc3RzIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwgd2FzIHVzaW5nIFRp
bWVyIHRvIGRpc3BhdGNoIGNvbW1hbmRzCisgICAgICAgIHNlbnQgZnJvbSB0aGUgbG9jYWwgZnJv
bnQtZW5kIHBhZ2UgdG8gdGhlIGluc3BlY3RlZCBvbmUuIFdoZW4gcGF1c2VkIGluc2lkZSBhIHNj
cmlwdAorICAgICAgICB0cmlnZ2VyZWQgYnkgdGhlIGZyb250LWVuZCBuZXN0ZWQgdGltZXIgZXZl
bnQgd291bGQgYmUgc2NoZWR1bGVkIGJ1dCBuZXZlciBmaXJlZAorICAgICAgICBiZWNhdXNlIGlu
IGdsaWIgaW1wbGVtZW50YXRpb24gb2YgUnVuTG9vcDo6VGltZXJCYXNlIHVzZXMgZXZlbnQgc291
cmNlIHdoaWNoIGRvZXNuJ3QKKyAgICAgICAgYWxsb3cgcmVjdXJzaW9uIChnX3NvdXJjZV9zZXRf
Y2FuX3JlY3Vyc2UgaXMgbm90IGNhbGxlZCBvbiB0aGUgc291cmNlKSwgc28gZGlzcGF0Y2hpbmcK
KyAgICAgICAgRGVidWdnZXIucmVzdW1lIGNvbW1hbmQgZGlkbid0IHdvcmsgd2hlbiBwYXVzZWQg
aW5zaWRlIGFub3RoZXIgaW5zcGVjdG9yIGNvbW1hbmQgKGUuZy4KKyAgICAgICAgZXZhbCkuIFJ1
bkxvb3AgaXRzZWxmIHVzZXMgZXZlbnQgc291cmNlIHdoaWNoIGRvZXMgYWxsb3cgcmVjdXJzaW9u
LiBTbyBpbnN0ZWFkIG9mIHVzaW5nCisgICAgICAgIGEgdGltZXIgZm9yIGFzeW5jaHJvbm91cyBj
b21tYW5kIGRpc3BhdGNoaW5nIHdpdGggZGVsYXk9MCB3ZSBub3cgc2NoZWR1bGUgYSB0YXNrIGlu
CisgICAgICAgIFJ1bkxvb3AncyBxdWV1ZS4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JGcm9udGVuZENsaWVudExvY2FsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJh
Y2tlbmREaXNwYXRjaFRhc2s6OmRpc3BhdGNoKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckJhY2tlbmREaXNwYXRjaFRhc2s6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckJhY2tlbmREaXNwYXRjaFRhc2s6Okluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2spOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzazo6c2NoZWR1bGVPbmVT
aG90KTogZW5zdXJlcyB0aGF0IHRoZXJlIGlzIG9uZSBpbnNwZWN0b3IKKyAgICAgICAgZGlzcGF0
Y2ggdGFzayBpbiB0aGUgcXVldWUuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5k
RGlzcGF0Y2hUYXNrOjpkaXNwYXRjaE9uZU1lc3NhZ2UpOiB0aGlzIGlzIG1vc3RseSB0aGUgc2Ft
ZSBiZWhhdmlvcgorICAgICAgICBhcyB3YXMgd2l0aCB0aW1lckZpcmVkLCB3ZSBzaG91bGQgYmUg
YWJsZSB0byBkaXNwYXRjaCBhbGwgYWNjdW11bGF0ZWQgbWVzc2FnZXMgZnJvbSB0aGUgcXVldWUK
KyAgICAgICAgaW4gb25lIGJhdGNoZWQgYnV0IGZvciBub3cgSSdkIGxpa2UgdG8ga2VlcCBpdCBv
bmUgcGVyIGl0ZXJhdGlvbi4KKwogMjAxOS0wOS0xOSAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBw
bGUuY29tPgogCiAgICAgICAgIEhUTUxWaWRlb0VsZW1lbnQgd2l0aCBhIGJyb2tlbiBwb3N0ZXIg
aW1hZ2Ugd2lsbCB0YWtlIHNxdWFyZSBkaW1lbnNpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGVidWdnZXIvRGVidWdnZXIuY3BwCmluZGV4IGIwY2ZkZjg4YmQ0MTM3YzQ0ODhhMjMwMTMxOTAz
YTQyM2M2OTdkYjcuLmEwNWM4MzBhMWQ1ZjA1NGNlYTZhOGUzZTNlMmM1ZjliMDE2NDNmZTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmNwcApAQCAtMzU5LDE0
ICszNTksMTQgQEAgdm9pZCBEZWJ1Z2dlcjo6cmVzb2x2ZUJyZWFrcG9pbnQoQnJlYWtwb2ludCYg
YnJlYWtwb2ludCwgU291cmNlUHJvdmlkZXIqIHNvdXJjZVAKIAogICAgIC8vIEZJWE1FOiA8aHR0
cHM6Ly93ZWJraXQub3JnL2IvMTYyNzcxPiBXZWIgSW5zcGVjdG9yOiBBZG9wdCBUZXh0UG9zaXRp
b24gaW4gSW5zcGVjdG9yIHRvIGF2b2lkIG9uZUJhc2VkSW50L3plcm9CYXNlZEludCBhbWJpZ3Vp
dHkKICAgICAvLyBJbnNwZWN0b3IgYnJlYWtwb2ludCBsaW5lIGFuZCBjb2x1bW4gdmFsdWVzIGFy
ZSB6ZXJvLWJhc2VkIGJ1dCB0aGUgZXhlY3V0YWJsZQotICAgIC8vIGFuZCBDb2RlQmxvY2sgbGlu
ZSBhbmQgY29sdW1uIHZhbHVlcyBhcmUgb25lLWJhc2VkLgorICAgIC8vIGFuZCBDb2RlQmxvY2sg
bGluZSB2YWx1ZXMgYXJlIG9uZS1iYXNlZCB3aGlsZSBjb2x1bW4gaXMgemVyby1iYXNlZC4KICAg
ICB1bnNpZ25lZCBsaW5lID0gYnJlYWtwb2ludC5saW5lICsgMTsKLSAgICB1bnNpZ25lZCBjb2x1
bW4gPSBicmVha3BvaW50LmNvbHVtbiA/IGJyZWFrcG9pbnQuY29sdW1uIDogQnJlYWtwb2ludDo6
dW5zcGVjaWZpZWRDb2x1bW47CisgICAgdW5zaWduZWQgY29sdW1uID0gYnJlYWtwb2ludC5jb2x1
bW47CiAKICAgICAvLyBBY2NvdW50IGZvciBhIDxzY3JpcHQ+J3Mgc3RhcnQgcG9zaXRpb24gb24g
dGhlIGZpcnN0IGxpbmUgb25seS4KICAgICB1bnNpZ25lZCBwcm92aWRlclN0YXJ0TGluZSA9IHNv
dXJjZVByb3ZpZGVyLT5zdGFydFBvc2l0aW9uKCkubV9saW5lLm9uZUJhc2VkSW50KCk7IC8vIE9u
ZSBiYXNlZCB0byBtYXRjaCB0aGUgYWxyZWFkeSBhZGp1c3RlZCBsaW5lLgogICAgIHVuc2lnbmVk
IHByb3ZpZGVyU3RhcnRDb2x1bW4gPSBzb3VyY2VQcm92aWRlci0+c3RhcnRQb3NpdGlvbigpLm1f
Y29sdW1uLnplcm9CYXNlZEludCgpOyAvLyBaZXJvIGJhc2VkIHNvIGNvbHVtbiB6ZXJvIGlzIHpl
cm8uCi0gICAgaWYgKGxpbmUgPT0gcHJvdmlkZXJTdGFydExpbmUgJiYgY29sdW1uICE9IEJyZWFr
cG9pbnQ6OnVuc3BlY2lmaWVkQ29sdW1uKSB7CisgICAgaWYgKGxpbmUgPT0gcHJvdmlkZXJTdGFy
dExpbmUgJiYgYnJlYWtwb2ludC5jb2x1bW4pIHsKICAgICAgICAgQVNTRVJUKHByb3ZpZGVyU3Rh
cnRDb2x1bW4gPD0gY29sdW1uKTsKICAgICAgICAgaWYgKHByb3ZpZGVyU3RhcnRDb2x1bW4pCiAg
ICAgICAgICAgICBjb2x1bW4gLT0gcHJvdmlkZXJTdGFydENvbHVtbjsKQEAgLTM3OCwxNiArMzc4
LDE2IEBAIHZvaWQgRGVidWdnZXI6OnJlc29sdmVCcmVha3BvaW50KEJyZWFrcG9pbnQmIGJyZWFr
cG9pbnQsIFNvdXJjZVByb3ZpZGVyKiBzb3VyY2VQCiAgICAgICAgIHJldHVybjsKIAogICAgIHVu
c2lnbmVkIHJlc29sdmVkTGluZSA9IHJlc29sdmVkUG9zaXRpb24tPmxpbmU7Ci0gICAgdW5zaWdu
ZWQgcmVzb2x2ZWRDb2x1bW4gPSByZXNvbHZlZFBvc2l0aW9uLT5vZmZzZXQgLSByZXNvbHZlZFBv
c2l0aW9uLT5saW5lU3RhcnRPZmZzZXQgKyAxOworICAgIHVuc2lnbmVkIHJlc29sdmVkQ29sdW1u
ID0gcmVzb2x2ZWRQb3NpdGlvbi0+b2Zmc2V0IC0gcmVzb2x2ZWRQb3NpdGlvbi0+bGluZVN0YXJ0
T2Zmc2V0OwogCiAgICAgLy8gUmUtYWNjb3VudCBmb3IgYSA8c2NyaXB0PidzIHN0YXJ0IHBvc2l0
aW9uIG9uIHRoZSBmaXJzdCBsaW5lIG9ubHkuCi0gICAgaWYgKHJlc29sdmVkTGluZSA9PSBwcm92
aWRlclN0YXJ0TGluZSAmJiBjb2x1bW4gIT0gQnJlYWtwb2ludDo6dW5zcGVjaWZpZWRDb2x1bW4p
IHsKKyAgICBpZiAocmVzb2x2ZWRMaW5lID09IHByb3ZpZGVyU3RhcnRMaW5lICYmIGJyZWFrcG9p
bnQuY29sdW1uKSB7CiAgICAgICAgIGlmIChwcm92aWRlclN0YXJ0Q29sdW1uKQogICAgICAgICAg
ICAgcmVzb2x2ZWRDb2x1bW4gKz0gcHJvdmlkZXJTdGFydENvbHVtbjsKICAgICB9CiAKICAgICBi
cmVha3BvaW50LmxpbmUgPSByZXNvbHZlZExpbmUgLSAxOwotICAgIGJyZWFrcG9pbnQuY29sdW1u
ID0gcmVzb2x2ZWRDb2x1bW4gLSAxOworICAgIGJyZWFrcG9pbnQuY29sdW1uID0gcmVzb2x2ZWRD
b2x1bW47CiAgICAgYnJlYWtwb2ludC5yZXNvbHZlZCA9IHRydWU7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclBhcnNlRGF0YS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJQYXJzZURhdGEuY3BwCmluZGV4
IDljMzM1YTRiYjEwYWZmODVhNTdmYjQ1YWE0YTA1ZjQ4NGJjNTI1OWEuLmU2ZjFhNWQ4NTZjMTFm
NTI3MTA3OWRlOWI0OGQ0Y2I0ZmJhMzNjN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclBhcnNlRGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyUGFyc2VEYXRhLmNwcApAQCAtMzMsNDMgKzMzLDI5IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBPcHRpb25hbDxKU1RleHRQb3NpdGlvbj4gRGVidWdnZXJQYXVz
ZVBvc2l0aW9uczo6YnJlYWtwb2ludExvY2F0aW9uRm9yTGluZUNvbHVtbihpbnQgbGluZSwgaW50
IGNvbHVtbikKIHsKLSAgICB1bnNpZ25lZCBzdGFydCA9IDA7Ci0gICAgdW5zaWduZWQgZW5kID0g
bV9wb3NpdGlvbnMuc2l6ZSgpOwotICAgIHdoaWxlIChzdGFydCAhPSBlbmQpIHsKLSAgICAgICAg
dW5zaWduZWQgbWlkZGxlID0gc3RhcnQgKyAoKGVuZCAtIHN0YXJ0KSAvIDIpOwotICAgICAgICBE
ZWJ1Z2dlclBhdXNlUG9zaXRpb24mIHBhdXNlUG9zaXRpb24gPSBtX3Bvc2l0aW9uc1ttaWRkbGVd
OwotICAgICAgICBpbnQgcGF1c2VMaW5lID0gcGF1c2VQb3NpdGlvbi5wb3NpdGlvbi5saW5lOwot
ICAgICAgICBpbnQgcGF1c2VDb2x1bW4gPSBwYXVzZVBvc2l0aW9uLnBvc2l0aW9uLm9mZnNldCAt
IHBhdXNlUG9zaXRpb24ucG9zaXRpb24ubGluZVN0YXJ0T2Zmc2V0OwotCi0gICAgICAgIGlmIChs
aW5lIDwgcGF1c2VMaW5lKSB7Ci0gICAgICAgICAgICBlbmQgPSBtaWRkbGU7Ci0gICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAgICBpZiAobGluZSA+IHBhdXNlTGluZSkgewot
ICAgICAgICAgICAgc3RhcnQgPSBtaWRkbGUgKyAxOwotICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIH0KKyAgICBEZWJ1Z2dlclBhdXNlUG9zaXRpb24gcG9zaXRpb247CisgICAgcG9zaXRp
b24ucG9zaXRpb24ubGluZSA9IGxpbmU7CisgICAgcG9zaXRpb24ucG9zaXRpb24ub2Zmc2V0ID0g
Y29sdW1uOworICAgIHBvc2l0aW9uLnBvc2l0aW9uLmxpbmVTdGFydE9mZnNldCA9IDA7CisgICAg
YXV0byBpdCA9IHN0ZDo6bG93ZXJfYm91bmQobV9wb3NpdGlvbnMuYmVnaW4oKSwgbV9wb3NpdGlv
bnMuZW5kKCksIHBvc2l0aW9uLCBbXSAoY29uc3QgRGVidWdnZXJQYXVzZVBvc2l0aW9uJiBhLCBj
b25zdCBEZWJ1Z2dlclBhdXNlUG9zaXRpb24mIGIpIHsKKyAgICAgICAgaWYgKGEucG9zaXRpb24u
bGluZSA9PSBiLnBvc2l0aW9uLmxpbmUpCisgICAgICAgICAgICByZXR1cm4gYS5wb3NpdGlvbi5j
b2x1bW4oKSA8IGIucG9zaXRpb24uY29sdW1uKCk7CisgICAgICAgIHJldHVybiBhLnBvc2l0aW9u
LmxpbmUgPCBiLnBvc2l0aW9uLmxpbmU7CisgICAgfSk7CiAKLSAgICAgICAgaWYgKGNvbHVtbiA9
PSBwYXVzZUNvbHVtbikgewotICAgICAgICAgICAgLy8gRm91bmQgYW4gZXhhY3QgcG9zaXRpb24g
bWF0Y2guIFJvbGwgZm9yd2FyZCBpZiB0aGlzIHdhcyBhIGZ1bmN0aW9uIEVudHJ5LgotICAgICAg
ICAgICAgLy8gV2UgYXJlIGd1YXJlbnRlZWQgdG8gaGF2ZSBhIExlYXZlIGZvciBhbiBFbnRyeSBz
byB3ZSBkb24ndCBuZWVkIHRvIGJvdW5kcyBjaGVjay4KLSAgICAgICAgICAgIHdoaWxlICh0cnVl
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKHBhdXNlUG9zaXRpb24udHlwZSAhPSBEZWJ1Z2dlclBh
dXNlUG9zaXRpb25UeXBlOjpFbnRlcikKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE9wdGlv
bmFsPEpTVGV4dFBvc2l0aW9uPihwYXVzZVBvc2l0aW9uLnBvc2l0aW9uKTsKLSAgICAgICAgICAg
ICAgICBwYXVzZVBvc2l0aW9uID0gbV9wb3NpdGlvbnNbbWlkZGxlKytdOwotICAgICAgICAgICAg
fQotICAgICAgICB9CisgICAgaWYgKGl0ID09IG1fcG9zaXRpb25zLmVuZCgpKQorICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OwogCi0gICAgICAgIGlmIChjb2x1bW4gPCBwYXVzZUNvbHVtbikK
LSAgICAgICAgICAgIGVuZCA9IG1pZGRsZTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgc3Rh
cnQgPSBtaWRkbGUgKyAxOworICAgIGlmIChsaW5lID09IGl0LT5wb3NpdGlvbi5saW5lICYmIGNv
bHVtbiA9PSBpdC0+cG9zaXRpb24uY29sdW1uKCkpIHsKKyAgICAgICAgLy8gRm91bmQgYW4gZXhh
Y3QgcG9zaXRpb24gbWF0Y2guIFJvbGwgZm9yd2FyZCBpZiB0aGlzIHdhcyBhIGZ1bmN0aW9uIEVu
dHJ5LgorICAgICAgICAvLyBXZSBhcmUgZ3VhcmVudGVlZCB0byBoYXZlIGEgTGVhdmUgZm9yIGFu
IEVudHJ5IHNvIHdlIGRvbid0IG5lZWQgdG8gYm91bmRzIGNoZWNrLgorICAgICAgICB3aGlsZSAo
dHJ1ZSkgeworICAgICAgICAgICAgaWYgKGl0LT50eXBlICE9IERlYnVnZ2VyUGF1c2VQb3NpdGlv
blR5cGU6OkVudGVyKQorICAgICAgICAgICAgICAgIHJldHVybiBPcHRpb25hbDxKU1RleHRQb3Np
dGlvbj4oaXQtPnBvc2l0aW9uKTsKKyAgICAgICAgICAgICsraXQ7CisgICAgICAgIH0KICAgICB9
CiAKLSAgICAvLyBQYXN0IHRoZSBlbmQsIG5vIHBvc3NpYmxlIHBhdXNlIGxvY2F0aW9ucy4KLSAg
ICBpZiAoc3RhcnQgPj0gbV9wb3NpdGlvbnMuc2l6ZSgpKQotICAgICAgICByZXR1cm4gV1RGOjpu
dWxsb3B0OwotCiAgICAgLy8gSWYgdGhlIG5leHQgbG9jYXRpb24gaXMgYSBmdW5jdGlvbiBFbnRy
eSB3ZSB3aWxsIG5lZWQgdG8gZGVjaWRlIGlmIHdlIHNob3VsZCBnbyBpbnRvCiAgICAgLy8gdGhl
IGZ1bmN0aW9uIG9yIGdvIHBhc3QgdGhlIGZ1bmN0aW9uLiBXZSBkZWNpZGUgdG8gZ28gaW50byB0
aGUgZnVuY3Rpb24gaWYgdGhlCiAgICAgLy8gaW5wdXQgaXMgb24gdGhlIHNhbWUgbGluZSBhcyB0
aGUgZnVuY3Rpb24gZW50cnkuIEZvciBleGFtcGxlOgpAQCAtODYsNyArNzIsNyBAQCBPcHRpb25h
bDxKU1RleHRQb3NpdGlvbj4gRGVidWdnZXJQYXVzZVBvc2l0aW9uczo6YnJlYWtwb2ludExvY2F0
aW9uRm9yTGluZUNvbHVtbgogICAgIC8vIElmIHRoZSBpbnB1dCB3YXMgbGluZSAzLCBnbyBpbnRv
IHRoZSBmdW5jdGlvbiB0byBwYXVzZSBvbiBsaW5lIDQuCiAKICAgICAvLyBWYWxpZCBwYXVzZSBs
b2NhdGlvbi4gVXNlIGl0LgotICAgIERlYnVnZ2VyUGF1c2VQb3NpdGlvbiYgZmlyc3RTbGlkZVBv
c2l0aW9uID0gbV9wb3NpdGlvbnNbc3RhcnRdOworICAgIERlYnVnZ2VyUGF1c2VQb3NpdGlvbiYg
Zmlyc3RTbGlkZVBvc2l0aW9uID0gKml0OwogICAgIGlmIChmaXJzdFNsaWRlUG9zaXRpb24udHlw
ZSAhPSBEZWJ1Z2dlclBhdXNlUG9zaXRpb25UeXBlOjpFbnRlcikKICAgICAgICAgcmV0dXJuIE9w
dGlvbmFsPEpTVGV4dFBvc2l0aW9uPihmaXJzdFNsaWRlUG9zaXRpb24ucG9zaXRpb24pOwogCkBA
IC05NCw4ICs4MCw4IEBAIE9wdGlvbmFsPEpTVGV4dFBvc2l0aW9uPiBEZWJ1Z2dlclBhdXNlUG9z
aXRpb25zOjpicmVha3BvaW50TG9jYXRpb25Gb3JMaW5lQ29sdW1uCiAgICAgLy8gSWYgZW50cnlT
dGFja1NpemUgaXMgPiAwIHdlIGFyZSBza2lwcGluZyBmdW5jdGlvbnMuCiAgICAgYm9vbCBzaG91
bGRFbnRlckZ1bmN0aW9uID0gZmlyc3RTbGlkZVBvc2l0aW9uLnBvc2l0aW9uLmxpbmUgPT0gbGlu
ZTsKICAgICBpbnQgZW50cnlTdGFja1NpemUgPSBzaG91bGRFbnRlckZ1bmN0aW9uID8gMCA6IDE7
Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gc3RhcnQgKyAxOyBpIDwgbV9wb3NpdGlvbnMuc2l6ZSgp
OyArK2kpIHsKLSAgICAgICAgRGVidWdnZXJQYXVzZVBvc2l0aW9uJiBzbGlkZVBvc2l0aW9uID0g
bV9wb3NpdGlvbnNbaV07CisgICAgZm9yICgrK2l0OyBpdCAhPSBtX3Bvc2l0aW9ucy5lbmQoKTsg
KytpdCkgeworICAgICAgICBEZWJ1Z2dlclBhdXNlUG9zaXRpb24mIHNsaWRlUG9zaXRpb24gPSAq
aXQ7CiAgICAgICAgIEFTU0VSVChlbnRyeVN0YWNrU2l6ZSA+PSAwKTsKIAogICAgICAgICAvLyBB
bHJlYWR5IHNraXBwaW5nIGZ1bmN0aW9ucy4KQEAgLTEyNCw2ICsxMTAsOCBAQCBPcHRpb25hbDxK
U1RleHRQb3NpdGlvbj4gRGVidWdnZXJQYXVzZVBvc2l0aW9uczo6YnJlYWtwb2ludExvY2F0aW9u
Rm9yTGluZUNvbHVtbgogdm9pZCBEZWJ1Z2dlclBhdXNlUG9zaXRpb25zOjpzb3J0KCkKIHsKICAg
ICBzdGQ6OnNvcnQobV9wb3NpdGlvbnMuYmVnaW4oKSwgbV9wb3NpdGlvbnMuZW5kKCksIFtdIChj
b25zdCBEZWJ1Z2dlclBhdXNlUG9zaXRpb24mIGEsIGNvbnN0IERlYnVnZ2VyUGF1c2VQb3NpdGlv
biYgYikgeworICAgICAgICBpZiAoYS5wb3NpdGlvbi5vZmZzZXQgPT0gYi5wb3NpdGlvbi5vZmZz
ZXQpCisgICAgICAgICAgICByZXR1cm4gYS50eXBlIDwgYi50eXBlOwogICAgICAgICByZXR1cm4g
YS5wb3NpdGlvbi5vZmZzZXQgPCBiLnBvc2l0aW9uLm9mZnNldDsKICAgICB9KTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclBhcnNlRGF0YS5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyUGFyc2VEYXRhLmgKaW5k
ZXggOTY1OWIxZDAyODNmM2RmOWNjOTVlN2E5M2MzYzY5ZThkMjNhMmRjMS4uNTY1OWJmODI3OGM1
NWNhMjMxY2E2N2ZiZTc3OWE2NmM1ZjIyN2Y0ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyUGFyc2VEYXRhLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyUGFyc2VEYXRhLmgKQEAgLTMzLDcgKzMzLDcgQEAgbmFt
ZXNwYWNlIEpTQyB7CiBjbGFzcyBTb3VyY2VQcm92aWRlcjsKIGNsYXNzIFZNOwogCi1lbnVtIGNs
YXNzIERlYnVnZ2VyUGF1c2VQb3NpdGlvblR5cGUgeyBFbnRlciwgTGVhdmUsIFBhdXNlIH07Citl
bnVtIGNsYXNzIERlYnVnZ2VyUGF1c2VQb3NpdGlvblR5cGUgeyBFbnRlciwgUGF1c2UsIExlYXZl
IH07CiBzdHJ1Y3QgRGVidWdnZXJQYXVzZVBvc2l0aW9uIHsKICAgICBEZWJ1Z2dlclBhdXNlUG9z
aXRpb25UeXBlIHR5cGU7CiAgICAgSlNUZXh0UG9zaXRpb24gcG9zaXRpb247CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RlYnVnZ2VyLmpzb24g
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0RlYnVnZ2VyLmpzb24K
aW5kZXggMTVhYmQzNjI2NDBiYTdkYWM2ZjY2ODIyZmFlMjEyYTVhYTk5ODRmZS4uMTZkNDExMGZk
MmQzMzUwODQyYzk2Y2FmYzg2NGFhNmI2ZTM4Nzk1MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9EZWJ1Z2dlci5qc29uCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvRGVidWdnZXIuanNvbgpAQCAtMjgsOCAr
MjgsOCBAQAogICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkxvY2F0aW9uIGluIHRoZSBzb3Vy
Y2UgY29kZS4iLAogICAgICAgICAgICAgInByb3BlcnRpZXMiOiBbCiAgICAgICAgICAgICAgICAg
eyAibmFtZSI6ICJzY3JpcHRJZCIsICIkcmVmIjogIlNjcmlwdElkIiwgImRlc2NyaXB0aW9uIjog
IlNjcmlwdCBpZGVudGlmaWVyIGFzIHJlcG9ydGVkIGluIHRoZSA8Y29kZT5EZWJ1Z2dlci5zY3Jp
cHRQYXJzZWQ8L2NvZGU+LiIgfSwKLSAgICAgICAgICAgICAgICB7ICJuYW1lIjogImxpbmVOdW1i
ZXIiLCAidHlwZSI6ICJpbnRlZ2VyIiwgImRlc2NyaXB0aW9uIjogIkxpbmUgbnVtYmVyIGluIHRo
ZSBzY3JpcHQuIiB9LAotICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiY29sdW1uTnVtYmVyIiwg
InR5cGUiOiAiaW50ZWdlciIsICJvcHRpb25hbCI6IHRydWUsICJkZXNjcmlwdGlvbiI6ICJDb2x1
bW4gbnVtYmVyIGluIHRoZSBzY3JpcHQuIiB9CisgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJs
aW5lTnVtYmVyIiwgInR5cGUiOiAiaW50ZWdlciIsICJkZXNjcmlwdGlvbiI6ICJMaW5lIG51bWJl
ciBpbiB0aGUgc2NyaXB0ICgwLWJhc2VkKS4iIH0sCisgICAgICAgICAgICAgICAgeyAibmFtZSI6
ICJjb2x1bW5OdW1iZXIiLCAidHlwZSI6ICJpbnRlZ2VyIiwgIm9wdGlvbmFsIjogdHJ1ZSwgImRl
c2NyaXB0aW9uIjogIkNvbHVtbiBudW1iZXIgaW4gdGhlIHNjcmlwdCAoMC1iYXNlZCkuIiB9CiAg
ICAgICAgICAgICBdCiAgICAgICAgIH0sCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL1BhcnNlclRva2Vucy5oCmluZGV4IDcyMDY0YjkyODQ4MTY2ZjZkZTJiMjNmOGEz
ZjU4Yzk4MWI3Njc5ZTkuLjdhZDBiOTkyNzRjYmI0ZTM5MDlhY2M3YmNkNzg4MjM3YTc3YmFjZTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJUb2tlbnMuaApAQCAtMjE3
LDYgKzIxNyw4IEBAIHN0cnVjdCBKU1RleHRQb3NpdGlvbiB7CiAgICAgICAgIHJldHVybiAhKCp0
aGlzID09IG90aGVyKTsKICAgICB9CiAKKyAgICBpbnQgY29sdW1uKCkgY29uc3QgeyByZXR1cm4g
b2Zmc2V0IC0gbGluZVN0YXJ0T2Zmc2V0OyB9CisKICAgICBpbnQgbGluZSB7IDAgfTsKICAgICBp
bnQgb2Zmc2V0IHsgMCB9OwogICAgIGludCBsaW5lU3RhcnRPZmZzZXQgeyAwIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRMb2Nh
bC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRM
b2NhbC5jcHAKaW5kZXggNzcyZWM3NDY5MTNjYzY4ZGI5OWVhYmFjOTEzMTEzOWU5Yjc0OGZmYS4u
YzI2YWNjYmYxMzYyMTk2MjNkZGUzZjVkMmFmODc3MThkMzcxZTk2YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2Fs
LmNwcApAQCAtODEsMTggKzgxLDM0IEBAIHB1YmxpYzoKICAgICAgICAgQVNTRVJUX0FSRyhtZXNz
YWdlLCAhbWVzc2FnZS5pc0VtcHR5KCkpOwogCiAgICAgICAgIG1fbWVzc2FnZXMuYXBwZW5kKG1l
c3NhZ2UpOwotICAgICAgICBpZiAoIW1fdGltZXIuaXNBY3RpdmUoKSkKLSAgICAgICAgICAgIG1f
dGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CisgICAgICAgIHNjaGVkdWxlT25lU2hvdCgpOwogICAg
IH0KIAogICAgIHZvaWQgcmVzZXQoKQogICAgIHsKICAgICAgICAgbV9tZXNzYWdlcy5jbGVhcigp
OwotICAgICAgICBtX3RpbWVyLnN0b3AoKTsKICAgICAgICAgbV9pbnNwZWN0ZWRQYWdlQ29udHJv
bGxlciA9IG51bGxwdHI7CiAgICAgfQogCi0gICAgdm9pZCB0aW1lckZpcmVkKCkKK3ByaXZhdGU6
CisgICAgSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoVGFzayhJbnNwZWN0b3JDb250cm9sbGVyKiBp
bnNwZWN0ZWRQYWdlQ29udHJvbGxlcikKKyAgICAgICAgOiBtX2luc3BlY3RlZFBhZ2VDb250cm9s
bGVyKGluc3BlY3RlZFBhZ2VDb250cm9sbGVyKQorICAgIHsKKyAgICAgICAgQVNTRVJUX0FSRyhp
bnNwZWN0ZWRQYWdlQ29udHJvbGxlciwgaW5zcGVjdGVkUGFnZUNvbnRyb2xsZXIpOworICAgIH0K
KworICAgIHZvaWQgc2NoZWR1bGVPbmVTaG90KCkKKyAgICB7CisgICAgICAgIGlmIChtX2hhc1Rh
c2tJblF1ZXVlKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBtX2hhc1Rhc2tJblF1ZXVl
ID0gdHJ1ZTsKKyAgICAgICAgUnVuTG9vcDo6Y3VycmVudCgpLmRpc3BhdGNoKFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKKyAgICAgICAgICAgIG1faGFzVGFza0luUXVl
dWUgPSBmYWxzZTsKKyAgICAgICAgICAgIGRpc3BhdGNoT25lTWVzc2FnZSgpOworICAgICAgICB9
KTsKKyAgICB9CisKKyAgICB2b2lkIGRpc3BhdGNoT25lTWVzc2FnZSgpCiAgICAgewogICAgICAg
ICBBU1NFUlQobV9pbnNwZWN0ZWRQYWdlQ29udHJvbGxlcik7CiAKQEAgLTEwNCwyMCArMTIwLDEy
IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1faW5zcGVjdGVkUGFnZUNvbnRyb2xsZXItPmRpc3Bh
dGNoTWVzc2FnZUZyb21Gcm9udGVuZChtX21lc3NhZ2VzLnRha2VGaXJzdCgpKTsKIAogICAgICAg
ICBpZiAoIW1fbWVzc2FnZXMuaXNFbXB0eSgpICYmIG1faW5zcGVjdGVkUGFnZUNvbnRyb2xsZXIp
Ci0gICAgICAgICAgICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOwotICAgIH0KLQotcHJpdmF0
ZToKLSAgICBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hUYXNrKEluc3BlY3RvckNvbnRyb2xsZXIq
IGluc3BlY3RlZFBhZ2VDb250cm9sbGVyKQotICAgICAgICA6IG1faW5zcGVjdGVkUGFnZUNvbnRy
b2xsZXIoaW5zcGVjdGVkUGFnZUNvbnRyb2xsZXIpCi0gICAgICAgICwgbV90aW1lcigqdGhpcywg
Jkluc3BlY3RvckJhY2tlbmREaXNwYXRjaFRhc2s6OnRpbWVyRmlyZWQpCi0gICAgewotICAgICAg
ICBBU1NFUlRfQVJHKGluc3BlY3RlZFBhZ2VDb250cm9sbGVyLCBpbnNwZWN0ZWRQYWdlQ29udHJv
bGxlcik7CisgICAgICAgICAgICBzY2hlZHVsZU9uZVNob3QoKTsKICAgICB9CiAKICAgICBJbnNw
ZWN0b3JDb250cm9sbGVyKiBtX2luc3BlY3RlZFBhZ2VDb250cm9sbGVyIHsgbnVsbHB0ciB9Owot
ICAgIFRpbWVyIG1fdGltZXI7CiAgICAgRGVxdWU8U3RyaW5nPiBtX21lc3NhZ2VzOworICAgIGJv
b2wgbV9oYXNUYXNrSW5RdWV1ZSB7IGZhbHNlIH07CiB9OwogCiBTdHJpbmcgSW5zcGVjdG9yRnJv
bnRlbmRDbGllbnRMb2NhbDo6U2V0dGluZ3M6OmdldFByb3BlcnR5KGNvbnN0IFN0cmluZyYpCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZTllZmQ1ZGUwZmQ0MDZkZTZlYjJmMWJmNjZlNWJmZmNiMzBmNzE5Mi4uNmE1MDgwY2Fi
NGM4ZTdhOTljNzRjZWQ3MTg4ZGRmNWVlOTY5NGYxYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisy
MDE5LTA5LTIwICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IHRlc3RzIHVuZGVyIExheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlciBhcmUgZmxha3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNzEzMQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTg0NjEzMzU+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIGluc3BlY3Rv
ci9kZWJ1Z2dlciB0ZXN0cyBvbiBHVEsuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIv
YnJlYWtwb2ludHMvcmVzb2x2ZWQtZHVtcC1hbGwtcGF1c2UtbG9jYXRpb25zLWV4cGVjdGVkLnR4
dDogUmViYXNlbGluZWQgdGhlIHRlc3QKKyAgICAgICAgYWZ0ZXIgY2hhbmdlcyBpbiB0aGUgYnJl
YWtwb2ludCByZXNvbHV0aW9uIGNvZGUuIE5vdyB0aGUgb3V0cHV0IG9uIEdUSyBpcyB0aGUgc2Ft
ZSBhcyBvbiBNYWMuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6CisK
IDIwMTktMDktMTkgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KIAogICAgICAgICBI
VE1MVmlkZW9FbGVtZW50IHdpdGggYSBicm9rZW4gcG9zdGVyIGltYWdlIHdpbGwgdGFrZSBzcXVh
cmUgZGltZW5zaW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIv
YnJlYWtwb2ludHMvcmVzb2x2ZWQtZHVtcC1hbGwtcGF1c2UtbG9jYXRpb25zLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50cy9yZXNvbHZlZC1k
dW1wLWFsbC1wYXVzZS1sb2NhdGlvbnMtZXhwZWN0ZWQudHh0CmluZGV4IDYxYmIzZGMwYjcyOWEx
YmQ2ZDQ3MGRmNmE3ZWI2NGQ1OTdlY2ExNGMuLmNjMDhkOTQ5Y2ViNDNmOTU5ZmUyNzhiNmE2ZGQx
MDQ5MTk4ZTA4NDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9i
cmVha3BvaW50cy9yZXNvbHZlZC1kdW1wLWFsbC1wYXVzZS1sb2NhdGlvbnMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50cy9yZXNvbHZl
ZC1kdW1wLWFsbC1wYXVzZS1sb2NhdGlvbnMtZXhwZWN0ZWQudHh0CkBAIC0yMTY2LDcgKzIxNjYs
NyBAQCBQQVVTRVMgQVQ6IDg5OjcKICAgICAgOTIgICAgICAgIHgKIAogSU5TRVJUSU5HIEFUOiA4
OTo4Ci1QQVVTRVMgQVQ6IDk0OjAKK1BBVVNFUyBBVDogOTg6MAogICAgICA4NiAgICAKICAgICAg
ODcgICAgeCA9PiB4OwogICAgICA4OCAgICAoKSA9PiAxOwpAQCAtMjE3NSwxMCArMjE3NSwxNCBA
QCBQQVVTRVMgQVQ6IDk0OjAKICAgICAgOTEgICAgKHgpID0+IHsKICAgICAgOTIgICAgICAgIHgK
ICAgICAgOTMgICAgfTsKLSA9PiAgOTQgICAgfCgpID0+IHsKKyAgICAgOTQgICAgKCkgPT4gewog
ICAgICA5NSAgICAgICAgdmFyIHg7CiAgICAgIDk2ICAgIH07CiAgICAgIDk3ICAgIAorID0+ICA5
OCAgICB8dmFyIGZPYmogPSB7CisgICAgIDk5ICAgICAgICBmMTogZnVuY3Rpb24oKSB7CisgICAg
MTAwICAgICAgICAgICAgdmFyIHg7CisgICAgMTAxICAgICAgICB9LAogCiBJTlNFUlRJTkcgQVQ6
IDkwOjAKIFBBVVNFUyBBVDogOTA6MApAQCAtMjI0Miw2ICsyMjQ2LDE2IEBAIFBBVVNFUyBBVDog
OTM6MAogICAgICA5NSAgICAgICAgdmFyIHg7CiAgICAgIDk2ICAgIH07CiAKK0lOU0VSVElORyBB
VDogOTQ6MAorUEFVU0VTIEFUOiA5NDowCisgICAgIDkxICAgICh4KSA9PiB7CisgICAgIDkyICAg
ICAgICB4CisgICAgIDkzICAgIH07CistPT4gIDk0ICAgIHwoKSA9PiB7CisgICAgIDk1ICAgICAg
ICB2YXIgeDsKKyAgICAgOTYgICAgfTsKKyAgICAgOTcgICAgCisKIElOU0VSVElORyBBVDogOTQ6
MQogUEFVU0VTIEFUOiA5NTo0CiAgICAgIDkxICAgICh4KSA9PiB7CkBAIC0yMjY0LDE4ICsyMjc4
LDYgQEAgUEFVU0VTIEFUOiA5NjowCiAgICAgIDk4ICAgIHZhciBmT2JqID0gewogICAgICA5OSAg
ICAgICAgZjE6IGZ1bmN0aW9uKCkgewogCi1JTlNFUlRJTkcgQVQ6IDk2OjEKLVBBVVNFUyBBVDog
OTg6MAotICAgICA5MyAgICB9OwotICAgICA5NCAgICAoKSA9PiB7Ci0gICAgIDk1ICAgICAgICB2
YXIgeDsKLSAtPiAgOTYgICAgfSM7Ci0gICAgIDk3ICAgIAotID0+ICA5OCAgICB8dmFyIGZPYmog
PSB7Ci0gICAgIDk5ICAgICAgICBmMTogZnVuY3Rpb24oKSB7Ci0gICAgMTAwICAgICAgICAgICAg
dmFyIHg7Ci0gICAgMTAxICAgICAgICB9LAotCiBJTlNFUlRJTkcgQVQ6IDk5OjAKIFBBVVNFUyBB
VDogMTAwOjgKICAgICAgOTYgICAgfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggNmUxOWUxNTEyM2U0NGFiNzcwMjhjNWRmMjY0OTQyMGE3ZjYyMzllZC4u
OWRhYWE4N2FmMmFjNTgzZTgwMDhiYWY3YWVmMjU0MmJjMzAwYTgzNSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzMTEsMjEgKzIzMTEsOCBAQCB3ZWJr
aXQub3JnL2IvMTE2OTU3IG1lZGlhL3RyYWNrL3RyYWNrLWF1dG9tYXRpYy1zdWJ0aXRsZXMuaHRt
bCBbIFRpbWVvdXQgXQogCiB3ZWJraXQub3JnL2IvMTIwNjgyIGluc3BlY3Rvci9wYWdlL2FyY2hp
dmUuaHRtbCBbIFRpbWVvdXQgXQogCit3ZWJraXQub3JnL2IvMTQ3NTE4IGluc3BlY3Rvci9kZWJ1
Z2dlci9uZXN0ZWQtaW5zcGVjdG9ycy5odG1sIFsgVGltZW91dCBdCiB3ZWJraXQub3JnL2IvMTIy
NTcxIGh0dHAvdGVzdHMvaW5zcGVjdG9yL2RvbS9jcm9zcy1kb21haW4taW5zcGVjdGVkLW5vZGUt
YWNjZXNzLmh0bWwgWyBUaW1lb3V0IFBhc3MgXQotd2Via2l0Lm9yZy9iLzEyMjU3MSBpbnNwZWN0
b3IvZGVidWdnZXIvc2V0QnJlYWtwb2ludC5odG1sIFsgVGltZW91dCBQYXNzIF0KLXdlYmtpdC5v
cmcvYi8xMjI1NzEgaW5zcGVjdG9yL2RlYnVnZ2VyL2NhbGwtZnJhbWUtZnVuY3Rpb24tbmFtZS5o
dG1sIFsgVGltZW91dCBQYXNzIF0KLXdlYmtpdC5vcmcvYi8xMjI1NzEgaW5zcGVjdG9yL2RlYnVn
Z2VyL3NldEJyZWFrcG9pbnQtb3B0aW9ucy1leGNlcHRpb24uaHRtbCBbIFRpbWVvdXQgUGFzcyBd
Ci13ZWJraXQub3JnL2IvMTIyNTcxIGluc3BlY3Rvci9kZWJ1Z2dlci9zZXRQYXVzZU9uRXhjZXB0
aW9ucy1hbGwuaHRtbCBbIFRpbWVvdXQgUGFzcyBdCi13ZWJraXQub3JnL2IvMTIyNTcxIGluc3Bl
Y3Rvci9kZWJ1Z2dlci9zZXRQYXVzZU9uRXhjZXB0aW9ucy1ub25lLmh0bWwgWyBUaW1lb3V0IFBh
c3MgXQotd2Via2l0Lm9yZy9iLzEyMjU3MSBpbnNwZWN0b3IvZGVidWdnZXIvY2FsbC1mcmFtZS10
aGlzLWhvc3QuaHRtbCBbIFRpbWVvdXQgUGFzcyBDcmFzaCBdCi13ZWJraXQub3JnL2IvMTIyNTcx
IGluc3BlY3Rvci9kZWJ1Z2dlci9zZXRCcmVha3BvaW50LWF1dG9Db250aW51ZS5odG1sIFsgVGlt
ZW91dCBQYXNzIF0KLXdlYmtpdC5vcmcvYi8xMjI1NzEgaW5zcGVjdG9yL2RlYnVnZ2VyL3NldFBh
dXNlT25FeGNlcHRpb25zLXVuY2F1Z2h0Lmh0bWwgWyBUaW1lb3V0IFBhc3MgXQotd2Via2l0Lm9y
Zy9iLzEyMjU3MSBpbnNwZWN0b3IvZGVidWdnZXIvc2V0QnJlYWtwb2ludC1hY3Rpb25zLmh0bWwg
WyBGYWlsdXJlIFRpbWVvdXQgUGFzcyBdCi13ZWJraXQub3JnL2IvMTIyNTcxIGluc3BlY3Rvci9k
ZWJ1Z2dlci9jYWxsLWZyYW1lLXRoaXMtbm9uc3RyaWN0Lmh0bWwgWyBUaW1lb3V0IFBhc3MgXQot
d2Via2l0Lm9yZy9iLzEyMjU3MSBpbnNwZWN0b3IvZGVidWdnZXIvc2V0QnJlYWtwb2ludC1jb2x1
bW4uaHRtbCBbIFRpbWVvdXQgUGFzcyBdCi13ZWJraXQub3JnL2IvMTIyNTcxIGluc3BlY3Rvci9k
ZWJ1Z2dlci9zZXRCcmVha3BvaW50LWNvbmRpdGlvbi5odG1sIFsgVGltZW91dCBQYXNzIF0KLXdl
YmtpdC5vcmcvYi8xMjI1NzEgaW5zcGVjdG9yL2RlYnVnZ2VyL3JlbW92ZUJyZWFrcG9pbnQuaHRt
bCBbIFRpbWVvdXQgUGFzcyBdCi13ZWJraXQub3JnL2IvMTIyNTcxIGluc3BlY3Rvci9kZWJ1Z2dl
ci9jYWxsLWZyYW1lLXRoaXMtc3RyaWN0Lmh0bWwgWyBUaW1lb3V0IFBhc3MgXQogd2Via2l0Lm9y
Zy9iLzEyMjU3MSBpbnNwZWN0b3IvZG9tL3JlcXVlc3QtY2hpbGQtbm9kZXMtZGVwdGguaHRtbCBb
IFRpbWVvdXQgUGFzcyBdCiB3ZWJraXQub3JnL2IvMTIyNTcxIGluc3BlY3Rvci9kb20vZm9jdXMu
aHRtbCBbIEZhaWx1cmUgVGltZW91dCBQYXNzIF0KIHdlYmtpdC5vcmcvYi8xMjI1NzEgaW5zcGVj
dG9yL3J1bnRpbWUvZ2V0UHJvcGVydGllcy5odG1sIFsgVGltZW91dCBQYXNzIENyYXNoIF0KQEAg
LTIzNzAsNyArMjM1Nyw2IEBAIHdlYmtpdC5vcmcvYi8xMzY2NzQgbWVkaWEvdHJhY2svdHJhY2st
Y3VlLXJlbmRlcmluZy13aXRoLXBhZGRpbmcuaHRtbCBbIFRpbWVvdXQKIAogd2Via2l0Lm9yZy9i
LzEzNzY5OCBtZWRpYS92aWRlby1jb250cm9scy1kcmFnLmh0bWwgWyBUaW1lb3V0IF0KIAotd2Vi
a2l0Lm9yZy9iLzEzNzEzMSBpbnNwZWN0b3IvZGVidWdnZXIgWyBTa2lwIF0KIHdlYmtpdC5vcmcv
Yi8xNDc1MTggaW5zcGVjdG9yL2RvbSBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzE0NzUxOCBpbnNw
ZWN0b3IvbW9kZWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xNDc1MTggaW5zcGVjdG9yL3RpbWVs
aW5lIFsgU2tpcCBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>