<?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>223670</bug_id>
          
          <creation_ts>2021-03-23 20:56:17 -0700</creation_ts>
          <short_desc>Move &apos;displayNominalFramesPerSecond&apos; from Page to the relevant DisplayRefreshMonitor</short_desc>
          <delta_ts>2021-04-08 10:43:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1743137</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-03-23 20:56:17 -0700</bug_when>
    <thetext>Move &apos;displayNominalFramesPerSecond&apos; from Page to the relevant DisplayRefreshMonitor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1743139</commentid>
    <comment_count>1</comment_count>
      <attachid>424096</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-03-23 20:59:50 -0700</bug_when>
    <thetext>Created attachment 424096
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745496</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-30 20:57:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/76036732&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748351</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-04-08 10:43:11 -0700</bug_when>
    <thetext>Don&apos;t need to do this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424096</attachid>
            <date>2021-03-23 20:59:50 -0700</date>
            <delta_ts>2021-03-24 14:52:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223670-20210323205949.patch</filename>
            <type>text/plain</type>
            <size>18734</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0NzU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGI5MTkyNjAyMmE5NTIz
NDk0OTZmNGY3NjM1ZjRjZWE3NDEzZWZhYy4uNDI2NTg4Y2RmNTFmM2Q5YTEwOTFkYTE4ZjE0ZWRm
ZmY3NGU4NGFjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDIxLTAzLTIzICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgJ2Rpc3Bs
YXlOb21pbmFsRnJhbWVzUGVyU2Vjb25kJyBmcm9tIFBhZ2UgdG8gdGhlIHJlbGV2YW50IERpc3Bs
YXlSZWZyZXNoTW9uaXRvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjIzNjcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgU2luY2Ugd2UgaGF2ZSBhIERpc3BsYXlSZWZyZXNoTW9uaXRvciBwZXIgZGlzcGxh
eSAoYXMgbG9uZyBhcyBpdCBoYXMgY2xpZW50cyksIHdlIGNhbiBzdG9yZQorICAgICAgICB0aGUg
ZGlzcGxheSdzIG5vbWluYWxGcmFtZXNQZXJTZWNvbmQgb24gdGhlIG1vbml0b3IuCisKKyAgICAg
ICAgUGFnZSBhbHdheXMgaGFzIGEgUmVuZGVyaW5nVXBkYXRlU2NoZWR1bGVyIHdoaWNoIGlzIGEg
RGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50LCBzbyB3ZSdsbAorICAgICAgICBhbHdheXMgaGF2
ZSBhIERpc3BsYXlSZWZyZXNoTW9uaXRvciB0aGF0IGNvcnJlc3BvbmRzIHdpdGggdGhlIFBhZ2Un
cyBkaXNwbGF5SUQuCisKKyAgICAgICAgUmVuYW1lIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFn
ZXI6OndpbmRvd1NjcmVlbkRpZENoYW5nZSgpIHRvIGNsaWVudERpZENoYW5nZURpc3BsYXkoKQor
ICAgICAgICB3aGljaCBiZXR0ZXIgbWF0Y2hlcyB0aGUgZnVuY3Rpb24gcHVycG9zZSwgYW5kIGFk
ZCB1cGRhdGVNb25pdG9yTm9taW5hbEZyYW1lc1BlclNlY29uZCgpIHRvCisgICAgICAgIHVwZGF0
ZSB0aGUgbm9taW5hbEZyYW1lc1BlclNlY29uZCBnaXZlbiBhIFBsYXRmb3JtRGlzcGxheUlEIChz
aW5jZSB0aGlzIG1pZ2h0IGNyZWF0ZSBhCisgICAgICAgIG1vbml0b3IsIGl0IG5lZWRzIGEgZmFj
dG9yeSkuCisKKyAgICAgICAgKiBwYWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
aHJvbWU6OndpbmRvd1NjcmVlbkRpZENoYW5nZSk6CisgICAgICAgICogcGFnZS9QYWdlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNjcm9sbGluZ0Nvb3JkaW5hdG9yKToKKyAgICAgICAg
KFdlYkNvcmU6OlBhZ2U6OndpbmRvd1NjcmVlbkRpZENoYW5nZSk6CisgICAgICAgIChXZWJDb3Jl
OjpQYWdlOjpkaXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29uZCBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpQYWdlOjpwcmVmZXJyZWRSZW5kZXJpbmdVcGRhdGVJbnRlcnZhbCBjb25zdCk6Cisg
ICAgICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpkaXNwbGF5Tm9t
aW5hbEZyYW1lc1BlclNlY29uZCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9SZW5k
ZXJpbmdVcGRhdGVTY2hlZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyaW5nVXBk
YXRlU2NoZWR1bGVyOjp3aW5kb3dTY3JlZW5EaWRDaGFuZ2UpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9uaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
aXNwbGF5UmVmcmVzaE1vbml0b3I6OnNldE5vbWluYWxGcmFtZXNQZXJTZWNvbmQpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9uaXRvci5oOgorICAgICAgICAo
V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yOjpub21pbmFsRnJhbWVzUGVyU2Vjb25kIGNv
bnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVmcmVzaE1vbml0b3JN
YW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFn
ZXI6OnVucmVnaXN0ZXJDbGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheVJlZnJlc2hN
b25pdG9yTWFuYWdlcjo6Y2xpZW50RGlkQ2hhbmdlRGlzcGxheSk6CisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjp1cGRhdGVNb25pdG9yTm9taW5hbEZyYW1l
c1BlclNlY29uZCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5h
Z2VyOjpub21pbmFsRnJhbWVzUGVyU2Vjb25kRm9yRGlzcGxheSBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjpkaXNwbGF5V2FzVXBkYXRlZCk6
CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjptb25pdG9y
Rm9yRGlzcGxheUlEKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvck1h
bmFnZXI6OmV4aXN0aW5nTW9uaXRvckZvckRpc3BsYXlJRCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjptb25pdG9yRm9yQ2xpZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OndpbmRvd1NjcmVl
bkRpZENoYW5nZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1v
bml0b3JNYW5hZ2VyOjptb25pdG9yRm9yRGlzcGxheUlEIGNvbnN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllclVwZGF0ZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclVwZGF0ZXI6OkdyYXBoaWNzTGF5ZXJVcGRhdGVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJVcGRhdGVyOjpzY3JlZW5EaWRDaGFu
Z2UpOgorCiAyMDIxLTAzLTIzICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29t
PgogCiAgICAgICAgIEFkZCBEaXNwbGF5TGluayBsb2cgY2hhbm5lbHMgaW4gV2ViQ29yZSBhbmQg
V2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKaW5kZXggN2ZlNzE0NGFmNmYxNDE5Y2Y2MTFmYjY4
MjA5MTlhZmNhZDJlOTY4ZS4uZWMyNDc2YTk3OTQyZjgwNjk1ZDZkMDA3ZGM5NGMyZjZjMGEyOGZi
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcApAQCAtNTQ2LDExICs1NDYsOCBAQCBQbGF0Zm9ybURp
c3BsYXlJRCBDaHJvbWU6OmRpc3BsYXlJRCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fcGFnZS5kaXNw
bGF5SUQoKTsKIH0KIAotdm9pZCBDaHJvbWU6OndpbmRvd1NjcmVlbkRpZENoYW5nZShQbGF0Zm9y
bURpc3BsYXlJRCBkaXNwbGF5SUQsIE9wdGlvbmFsPHVuc2lnbmVkPiBub21pbmFsRnJhbWVJbnRl
cnZhbCkKK3ZvaWQgQ2hyb21lOjp3aW5kb3dTY3JlZW5EaWRDaGFuZ2UoUGxhdGZvcm1EaXNwbGF5
SUQgZGlzcGxheUlELCBPcHRpb25hbDxGcmFtZXNQZXJTZWNvbmQ+IG5vbWluYWxGcmFtZUludGVy
dmFsKQogewotICAgIGlmIChkaXNwbGF5SUQgPT0gbV9wYWdlLmRpc3BsYXlJRCgpICYmIG5vbWlu
YWxGcmFtZUludGVydmFsID09IG1fcGFnZS5kaXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29uZCgp
KQotICAgICAgICByZXR1cm47Ci0KICAgICBtX3BhZ2Uud2luZG93U2NyZWVuRGlkQ2hhbmdlKGRp
c3BsYXlJRCwgbm9taW5hbEZyYW1lSW50ZXJ2YWwpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAppbmRl
eCAwNDczYjUyZTBmNDVmOGQyMjAyZjkyMTdhNjU2ZjMzNTViN2NkZWEwLi5mNjM3NmVhODYyYzU2
MmJkN2VjOGE0Y2Y3ZTZiNGNmMjZiOWMzOGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKQEAgLTQ1LDYg
KzQ1LDcgQEAKICNpbmNsdWRlICJEZWJ1Z1BhZ2VPdmVybGF5cy5oIgogI2luY2x1ZGUgIkRpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50LmgiCiAjaW5jbHVkZSAiRGlhZ25vc3RpY0xvZ2dpbmdLZXlzLmgi
CisjaW5jbHVkZSAiRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRNYXJrZXJDb250cm9sbGVyLmgiCiAj
aW5jbHVkZSAiRG9jdW1lbnRUaW1lbGluZS5oIgpAQCAtNDQ3LDcgKzQ0OCw3IEBAIFNjcm9sbGlu
Z0Nvb3JkaW5hdG9yKiBQYWdlOjpzY3JvbGxpbmdDb29yZGluYXRvcigpCiAgICAgICAgIGlmICgh
bV9zY3JvbGxpbmdDb29yZGluYXRvcikKICAgICAgICAgICAgIG1fc2Nyb2xsaW5nQ29vcmRpbmF0
b3IgPSBTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKHRoaXMpOwogCi0gICAgICAgIG1fc2Ny
b2xsaW5nQ29vcmRpbmF0b3ItPndpbmRvd1NjcmVlbkRpZENoYW5nZShtX2Rpc3BsYXlJRCwgbV9k
aXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29uZCk7CisgICAgICAgIG1fc2Nyb2xsaW5nQ29vcmRp
bmF0b3ItPndpbmRvd1NjcmVlbkRpZENoYW5nZShtX2Rpc3BsYXlJRCwgZGlzcGxheU5vbWluYWxG
cmFtZXNQZXJTZWNvbmQoKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIG1fc2Nyb2xsaW5nQ29vcmRp
bmF0b3IuZ2V0KCk7CkBAIC0xMTc3LDExICsxMTc4LDEyIEBAIHZvaWQgUGFnZTo6c2NyZWVuUHJv
cGVydGllc0RpZENoYW5nZSgpCiAKIHZvaWQgUGFnZTo6d2luZG93U2NyZWVuRGlkQ2hhbmdlKFBs
YXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJRCwgT3B0aW9uYWw8RnJhbWVzUGVyU2Vjb25kPiBub21p
bmFsRnJhbWVzUGVyU2Vjb25kKQogewotICAgIGlmIChkaXNwbGF5SUQgPT0gbV9kaXNwbGF5SUQg
JiYgbm9taW5hbEZyYW1lc1BlclNlY29uZCA9PSBtX2Rpc3BsYXlOb21pbmFsRnJhbWVzUGVyU2Vj
b25kKQorICAgIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKS51
cGRhdGVNb25pdG9yTm9taW5hbEZyYW1lc1BlclNlY29uZChkaXNwbGF5SUQsIGNocm9tZSgpLmNs
aWVudCgpLmRpc3BsYXlSZWZyZXNoTW9uaXRvckZhY3RvcnkoKSwgbm9taW5hbEZyYW1lc1BlclNl
Y29uZCk7CisKKyAgICBpZiAoZGlzcGxheUlEID09IG1fZGlzcGxheUlEKQogICAgICAgICByZXR1
cm47CiAKICAgICBtX2Rpc3BsYXlJRCA9IGRpc3BsYXlJRDsKLSAgICBtX2Rpc3BsYXlOb21pbmFs
RnJhbWVzUGVyU2Vjb25kID0gbm9taW5hbEZyYW1lc1BlclNlY29uZDsKIAogICAgIGZvciAoRnJh
bWUqIGZyYW1lID0gJm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRy
YXZlcnNlTmV4dCgpKSB7CiAgICAgICAgIGlmIChmcmFtZS0+ZG9jdW1lbnQoKSkKQEAgLTEyMDMs
NiArMTIwNSwxMSBAQCB2b2lkIFBhZ2U6OndpbmRvd1NjcmVlbkRpZENoYW5nZShQbGF0Zm9ybURp
c3BsYXlJRCBkaXNwbGF5SUQsIE9wdGlvbmFsPEZyYW1lc1BlcgogICAgIHNldE5lZWRzUmVjYWxj
U3R5bGVJbkFsbEZyYW1lcygpOwogfQogCitPcHRpb25hbDxGcmFtZXNQZXJTZWNvbmQ+IFBhZ2U6
OmRpc3BsYXlOb21pbmFsRnJhbWVzUGVyU2Vjb25kKCkgY29uc3QKK3sKKyAgICByZXR1cm4gRGlz
cGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLm5vbWluYWxGcmFtZXNQ
ZXJTZWNvbmRGb3JEaXNwbGF5KG1fZGlzcGxheUlEKTsKK30KKwogdm9pZCBQYWdlOjpzZXRJbml0
aWFsU2NhbGVJZ25vcmluZ0NvbnRlbnRTaXplKGZsb2F0IHNjYWxlKQogewogICAgIG1faW5pdGlh
bFNjYWxlSWdub3JpbmdDb250ZW50U2l6ZSA9IHNjYWxlOwpAQCAtMTc3OSw3ICsxNzg2LDcgQEAg
dm9pZCBQYWdlOjpyZXN1bWVTY3JpcHRlZEFuaW1hdGlvbnMoKQogU2Vjb25kcyBQYWdlOjpwcmVm
ZXJyZWRSZW5kZXJpbmdVcGRhdGVJbnRlcnZhbCgpIGNvbnN0CiB7CiAgICAgaWYgKCFzZXR0aW5n
cygpLnByZWZlclBhZ2VSZW5kZXJpbmdVcGRhdGVzTmVhcjYwRlBTRW5hYmxlZCgpKQotICAgICAg
ICByZXR1cm4gcHJlZmVycmVkRnJhbWVJbnRlcnZhbChtX3Rocm90dGxpbmdSZWFzb25zLCBtX2Rp
c3BsYXlOb21pbmFsRnJhbWVzUGVyU2Vjb25kKTsKKyAgICAgICAgcmV0dXJuIHByZWZlcnJlZEZy
YW1lSW50ZXJ2YWwobV90aHJvdHRsaW5nUmVhc29ucywgZGlzcGxheU5vbWluYWxGcmFtZXNQZXJT
ZWNvbmQoKSk7CiAgICAgcmV0dXJuIHByZWZlcnJlZEZyYW1lSW50ZXJ2YWwobV90aHJvdHRsaW5n
UmVhc29ucywgV1RGOjpudWxsb3B0KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaAppbmRleCA2ZThhZDRiYzM4
ZjA5Y2UxM2UxZWY4NDhkYWRlZTk0ZDA2M2E0Mzg4Li45ZWRlNzY0ODU2OGM4NTVmNzU4YTg1OWNm
NzUwMmM5M2QzYjBmOTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaApAQCAtNDIxLDcgKzQyMSw3IEBAIHB1Ymxp
YzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNjcmVlblByb3BlcnRpZXNEaWRDaGFuZ2UoKTsK
ICAgICB2b2lkIHdpbmRvd1NjcmVlbkRpZENoYW5nZShQbGF0Zm9ybURpc3BsYXlJRCwgT3B0aW9u
YWw8RnJhbWVzUGVyU2Vjb25kPiBub21pbmFsRnJhbWVzUGVyU2Vjb25kKTsKICAgICBQbGF0Zm9y
bURpc3BsYXlJRCBkaXNwbGF5SUQoKSBjb25zdCB7IHJldHVybiBtX2Rpc3BsYXlJRDsgfQotICAg
IE9wdGlvbmFsPHVuc2lnbmVkPiBkaXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29uZCgpIGNvbnN0
IHsgcmV0dXJuIG1fZGlzcGxheU5vbWluYWxGcmFtZXNQZXJTZWNvbmQ7IH0KKyAgICBPcHRpb25h
bDxGcmFtZXNQZXJTZWNvbmQ+IGRpc3BsYXlOb21pbmFsRnJhbWVzUGVyU2Vjb25kKCkgY29uc3Q7
CiAKICAgICBmbG9hdCB0b3BDb250ZW50SW5zZXQoKSBjb25zdCB7IHJldHVybiBtX3RvcENvbnRl
bnRJbnNldDsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0VG9wQ29udGVudEluc2V0KGZs
b2F0KTsKQEAgLTkyOSw3ICs5MjksNiBAQCBwcml2YXRlOgogICAgIFJUQ0NvbnRyb2xsZXIgbV9y
dGNDb250cm9sbGVyOwogCiAgICAgUGxhdGZvcm1EaXNwbGF5SUQgbV9kaXNwbGF5SUQgeyAwIH07
Ci0gICAgT3B0aW9uYWw8dW5zaWduZWQ+IG1fZGlzcGxheU5vbWluYWxGcmFtZXNQZXJTZWNvbmQ7
CiAKICAgICBpbnQgbV9uZXN0ZWRSdW5Mb29wQ291bnQgeyAwIH07CiAgICAgV1RGOjpGdW5jdGlv
bjx2b2lkKCk+IG1fdW5uZXN0Q2FsbGJhY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1JlbmRlcmluZ1VwZGF0ZVNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Jl
bmRlcmluZ1VwZGF0ZVNjaGVkdWxlci5jcHAKaW5kZXggMzIwYmNjNzRmOWJhMzgyZDZiZDE4YjYw
OWY3NWQzM2NhMzllYTk2Mi4uZDAzMjdkMzE3MTYzZDllNDU0ZDhkYzI2MDI3YjdjOTk3OWVhMmU3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9SZW5kZXJpbmdVcGRhdGVTY2hlZHVs
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUmVuZGVyaW5nVXBkYXRlU2NoZWR1bGVy
LmNwcApAQCAtMTM1LDcgKzEzNSw3IEBAIERpc3BsYXlSZWZyZXNoTW9uaXRvckZhY3RvcnkqIFJl
bmRlcmluZ1VwZGF0ZVNjaGVkdWxlcjo6ZGlzcGxheVJlZnJlc2hNb25pdG9yRmFjCiAKIHZvaWQg
UmVuZGVyaW5nVXBkYXRlU2NoZWR1bGVyOjp3aW5kb3dTY3JlZW5EaWRDaGFuZ2UoUGxhdGZvcm1E
aXNwbGF5SUQgZGlzcGxheUlEKQogewotICAgIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6
OnNoYXJlZE1hbmFnZXIoKS53aW5kb3dTY3JlZW5EaWRDaGFuZ2UoZGlzcGxheUlELCAqdGhpcyk7
CisgICAgRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLmNsaWVu
dERpZENoYW5nZURpc3BsYXkoKnRoaXMsIGRpc3BsYXlJRCk7CiB9CiAKIHZvaWQgUmVuZGVyaW5n
VXBkYXRlU2NoZWR1bGVyOjpkaXNwbGF5UmVmcmVzaEZpcmVkKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9uaXRvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVmcmVzaE1vbml0b3IuY3Bw
CmluZGV4IGQ3ZWNkYzI2NzI5Mjg4NTM2MWNkNTU3ZGI2ZTM4ZjlmYzdmMGY3NTMuLmRlYjk4N2E3
MmVjOTIzMGIwZWZlZDVjYjA5YTNmMmQ5ZjQ0M2ZjM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9uaXRvci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9yLmNwcApA
QCAtOTgsNiArOTgsMTEgQEAgYm9vbCBEaXNwbGF5UmVmcmVzaE1vbml0b3I6OnJlbW92ZUNsaWVu
dChEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQmIGNsaWVudCkKICAgICByZXR1cm4gbV9jbGll
bnRzLnJlbW92ZSgmY2xpZW50KTsKIH0KIAordm9pZCBEaXNwbGF5UmVmcmVzaE1vbml0b3I6OnNl
dE5vbWluYWxGcmFtZXNQZXJTZWNvbmQoT3B0aW9uYWw8RnJhbWVzUGVyU2Vjb25kPiBub21pbmFs
RnJhbWVzUGVyU2Vjb25kKQoreworICAgIG1fZGlzcGxheU5vbWluYWxGcmFtZXNQZXJTZWNvbmQg
PSBub21pbmFsRnJhbWVzUGVyU2Vjb25kOworfQorCiB2b2lkIERpc3BsYXlSZWZyZXNoTW9uaXRv
cjo6ZGlzcGxheURpZFJlZnJlc2goKQogewogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9uaXRvci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9yLmgKaW5kZXggNmZj
NGI0Yzk5NWU3MWM1MjBiODhmMWM0MmIwNDE2MjQ4YTEyOGNiYi4uNGE2OTU5MTY4NzFhYThlNDQy
YmFkYzU2Mjg0ZDJjZWE2NGE0OTg3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9yLmgKQEAgLTM4LDYgKzM4LDcg
QEAgY2xhc3MgRGlzcGxheUFuaW1hdGlvbkNsaWVudDsKIGNsYXNzIERpc3BsYXlSZWZyZXNoTW9u
aXRvckNsaWVudDsKIGNsYXNzIERpc3BsYXlSZWZyZXNoTW9uaXRvckZhY3Rvcnk7CiAKKy8vIE1h
bmFnZXMgdGhlIHNldCBvZiBjbGllbnRzIGZvciBhIHNpbmdsZSBwaHlzaWNhbCBkaXNwbGF5Lgog
Y2xhc3MgRGlzcGxheVJlZnJlc2hNb25pdG9yIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVk
PERpc3BsYXlSZWZyZXNoTW9uaXRvcj4gewogcHVibGljOgogICAgIHN0YXRpYyBSZWZQdHI8RGlz
cGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGUoRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9yeSos
IFBsYXRmb3JtRGlzcGxheUlEKTsKQEAgLTQ3LDE0ICs0OCwxNSBAQCBwdWJsaWM6CiAKICAgICB2
aXJ0dWFsIHZvaWQgc2V0UHJlZmVycmVkRnJhbWVzUGVyU2Vjb25kKEZyYW1lc1BlclNlY29uZCkg
eyB9CiAKKyAgICB2b2lkIHNldE5vbWluYWxGcmFtZXNQZXJTZWNvbmQoT3B0aW9uYWw8RnJhbWVz
UGVyU2Vjb25kPik7CisgICAgT3B0aW9uYWw8RnJhbWVzUGVyU2Vjb25kPiBub21pbmFsRnJhbWVz
UGVyU2Vjb25kKCkgY29uc3QgeyByZXR1cm4gbV9kaXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29u
ZDsgfQorCiAgICAgLy8gUmV0dXJuIHRydWUgaWYgY2FsbGJhY2sgcmVxdWVzdCB3YXMgc2NoZWR1
bGVkLCBmYWxzZSBpZiBpdCBjb3VsZG4ndCBiZQogICAgIC8vIChlLmcuLCBoYXJkd2FyZSByZWZy
ZXNoIGlzIG5vdCBhdmFpbGFibGUpCiAgICAgdmlydHVhbCBib29sIHJlcXVlc3RSZWZyZXNoQ2Fs
bGJhY2soKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3RvcCgpIHsgfQogCi0gICAgdm9pZCB3
aW5kb3dTY3JlZW5EaWRDaGFuZ2UoUGxhdGZvcm1EaXNwbGF5SUQpOwotICAgIAogICAgIGJvb2wg
aGFzQ2xpZW50cygpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50cy5zaXplKCk7IH0KICAgICB2b2lk
IGFkZENsaWVudChEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQmKTsKICAgICBib29sIHJlbW92
ZUNsaWVudChEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQmKTsKQEAgLTk1LDYgKzk3LDcgQEAg
cHJpdmF0ZToKICAgICBIYXNoU2V0PERpc3BsYXlSZWZyZXNoTW9uaXRvckNsaWVudCo+KiBtX2Ns
aWVudHNUb0JlTm90aWZpZWQgeyBudWxscHRyIH07CiAgICAgTG9jayBtX211dGV4OwogICAgIFBs
YXRmb3JtRGlzcGxheUlEIG1fZGlzcGxheUlEIHsgMCB9OworICAgIE9wdGlvbmFsPEZyYW1lc1Bl
clNlY29uZD4gbV9kaXNwbGF5Tm9taW5hbEZyYW1lc1BlclNlY29uZDsKICAgICBpbnQgbV91bnNj
aGVkdWxlZEZpcmVDb3VudCB7IDAgfTsgLy8gTnVtYmVyIG9mIHRpbWVzIHRoZSBkaXNwbGF5IGxp
bmsgaGFzIGZpcmVkIHdpdGggbm8gY2xpZW50cy4KICAgICBib29sIG1fYWN0aXZlIHsgdHJ1ZSB9
OwogICAgIGJvb2wgbV9zY2hlZHVsZWQgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVmcmVzaE1vbml0b3JN
YW5hZ2VyLmNwcAppbmRleCBlOGRmZWM3YTFkNTQzMzRhZjUyNzU4Yzg5YzA2M2ViNTI1YTVlYzcw
Li5kNTZkZTRmMDM5OGM1Yzk2N2U3ZjkyNjBhMGI0OWIyNGNjYWQ5ZmQwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5h
Z2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9EaXNwbGF5UmVm
cmVzaE1vbml0b3JNYW5hZ2VyLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiRGlz
cGxheVJlZnJlc2hNb25pdG9yLmgiCiAjaW5jbHVkZSAiRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xp
ZW50LmgiCisjaW5jbHVkZSAiRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9yeS5oIgogI2luY2x1
ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CiAKQEAgLTQx
LDI4ICs0Miw2IEBAIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXImIERpc3BsYXlSZWZyZXNo
TW9uaXRvck1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKQogICAgIHJldHVybiBtYW5hZ2VyLmdldCgp
OwogfQogCi1EaXNwbGF5UmVmcmVzaE1vbml0b3IqIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFn
ZXI6Om1vbml0b3JGb3JDbGllbnQoRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50JiBjbGllbnQp
Ci17Ci0gICAgaWYgKCFjbGllbnQuaGFzRGlzcGxheUlEKCkpCi0gICAgICAgIHJldHVybiBudWxs
cHRyOwotCi0gICAgUGxhdGZvcm1EaXNwbGF5SUQgY2xpZW50RGlzcGxheUlEID0gY2xpZW50LmRp
c3BsYXlJRCgpOwotICAgIGlmIChhdXRvKiBleGlzdGluZ01vbml0b3IgPSBtb25pdG9yRm9yRGlz
cGxheUlEKGNsaWVudERpc3BsYXlJRCkpIHsKLSAgICAgICAgZXhpc3RpbmdNb25pdG9yLT5hZGRD
bGllbnQoY2xpZW50KTsKLSAgICAgICAgcmV0dXJuIGV4aXN0aW5nTW9uaXRvcjsKLSAgICB9Ci0K
LSAgICBhdXRvIG1vbml0b3IgPSBEaXNwbGF5UmVmcmVzaE1vbml0b3I6OmNyZWF0ZShjbGllbnQu
ZGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9yeSgpLCBjbGllbnREaXNwbGF5SUQpOwotICAgIGlm
ICghbW9uaXRvcikKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICBMT0dfV0lUSF9TVFJF
QU0oRGlzcGxheUxpbmssIHN0cmVhbSA8PCAiRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6
bW9uaXRvckZvckNsaWVudCgpIC0gY3JlYXRlZCBtb25pdG9yICIgPDwgbW9uaXRvci5nZXQoKSA8
PCAiIGZvciBkaXNwbGF5ICIgPDwgY2xpZW50RGlzcGxheUlEKTsKLSAgICBtb25pdG9yLT5hZGRD
bGllbnQoY2xpZW50KTsKLSAgICBEaXNwbGF5UmVmcmVzaE1vbml0b3IqIHJlc3VsdCA9IG1vbml0
b3IuZ2V0KCk7Ci0gICAgbV9tb25pdG9ycy5hcHBlbmQoeyBXVEZNb3ZlKG1vbml0b3IpIH0pOwot
ICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KIHZvaWQgRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdl
cjo6dW5yZWdpc3RlckNsaWVudChEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQmIGNsaWVudCkK
IHsKICAgICBpZiAoIWNsaWVudC5oYXNEaXNwbGF5SUQoKSkKQEAgLTcyLDYgKzUxLDcgQEAgdm9p
ZCBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjp1bnJlZ2lzdGVyQ2xpZW50KERpc3BsYXlS
ZWZyZXNoTW9uaXRvckNsaWVudCYKICAgICBhdXRvIGluZGV4ID0gZmluZE1vbml0b3JGb3JEaXNw
bGF5SUQoY2xpZW50RGlzcGxheUlEKTsKICAgICBpZiAoaW5kZXggPT0gbm90Rm91bmQpCiAgICAg
ICAgIHJldHVybjsKKwogICAgIFJlZlB0cjxEaXNwbGF5UmVmcmVzaE1vbml0b3I+IG1vbml0b3Ig
PSBtX21vbml0b3JzW2luZGV4XS5tb25pdG9yOwogICAgIGlmIChtb25pdG9yLT5yZW1vdmVDbGll
bnQoY2xpZW50KSkgewogICAgICAgICBpZiAoIW1vbml0b3ItPmhhc0NsaWVudHMoKSkKQEAgLTEw
Niw3ICs4Niw3IEBAIHZvaWQgRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6ZGlzcGxheURp
ZFJlZnJlc2goRGlzcGxheVJlZnJlc2hNb25pdG9yJiBtb25pCiAgICAgfSk7CiB9CiAKLXZvaWQg
RGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6d2luZG93U2NyZWVuRGlkQ2hhbmdlKFBsYXRm
b3JtRGlzcGxheUlEIGRpc3BsYXlJRCwgRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50JiBjbGll
bnQpCit2b2lkIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OmNsaWVudERpZENoYW5nZURp
c3BsYXkoRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50JiBjbGllbnQsIFBsYXRmb3JtRGlzcGxh
eUlEIGRpc3BsYXlJRCkKIHsKICAgICBpZiAoY2xpZW50Lmhhc0Rpc3BsYXlJRCgpICYmIGNsaWVu
dC5kaXNwbGF5SUQoKSA9PSBkaXNwbGF5SUQpCiAgICAgICAgIHJldHVybjsKQEAgLTExNyw5ICs5
NywyMiBAQCB2b2lkIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OndpbmRvd1NjcmVlbkRp
ZENoYW5nZShQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbAogICAgICAgICBzY2hlZHVsZUFuaW1hdGlv
bihjbGllbnQpOwogfQogCit2b2lkIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OnVwZGF0
ZU1vbml0b3JOb21pbmFsRnJhbWVzUGVyU2Vjb25kKFBsYXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJ
RCwgRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9yeSogZmFjdG9yeSwgT3B0aW9uYWw8RnJhbWVz
UGVyU2Vjb25kPiBub21pbmFsRnJhbWVzUGVyU2Vjb25kKQoreworICAgIG1vbml0b3JGb3JEaXNw
bGF5SUQoZmFjdG9yeSwgZGlzcGxheUlEKS5zZXROb21pbmFsRnJhbWVzUGVyU2Vjb25kKG5vbWlu
YWxGcmFtZXNQZXJTZWNvbmQpOworfQorCitPcHRpb25hbDxGcmFtZXNQZXJTZWNvbmQ+IERpc3Bs
YXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6Om5vbWluYWxGcmFtZXNQZXJTZWNvbmRGb3JEaXNwbGF5
KFBsYXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJRCkgY29uc3QKK3sKKyAgICBpZiAoYXV0byogZGlz
cGxheU1vbml0b3IgPSBleGlzdGluZ01vbml0b3JGb3JEaXNwbGF5SUQoZGlzcGxheUlEKSkKKyAg
ICAgICAgcmV0dXJuIGRpc3BsYXlNb25pdG9yLT5ub21pbmFsRnJhbWVzUGVyU2Vjb25kKCk7CisK
KyAgICByZXR1cm4gV1RGOjpudWxsb3B0OworfQorCiB2b2lkIERpc3BsYXlSZWZyZXNoTW9uaXRv
ck1hbmFnZXI6OmRpc3BsYXlXYXNVcGRhdGVkKFBsYXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJRCkK
IHsKLSAgICBhdXRvKiBtb25pdG9yID0gbW9uaXRvckZvckRpc3BsYXlJRChkaXNwbGF5SUQpOwor
ICAgIGF1dG8qIG1vbml0b3IgPSBleGlzdGluZ01vbml0b3JGb3JEaXNwbGF5SUQoZGlzcGxheUlE
KTsKICAgICBpZiAobW9uaXRvciAmJiBtb25pdG9yLT5oYXNSZXF1ZXN0ZWRSZWZyZXNoQ2FsbGJh
Y2soKSkKICAgICAgICAgbW9uaXRvci0+ZGlzcGxheUxpbmtGaXJlZCgpOwogfQpAQCAtMTMxLDEw
ICsxMjQsMzMgQEAgc2l6ZV90IERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OmZpbmRNb25p
dG9yRm9yRGlzcGxheUlEKFBsYXRmb3JtRGlzcGxheUlEIGQKICAgICB9KTsKIH0KIAotRGlzcGxh
eVJlZnJlc2hNb25pdG9yKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjptb25pdG9yRm9y
RGlzcGxheUlEKFBsYXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJRCkgY29uc3QKK0Rpc3BsYXlSZWZy
ZXNoTW9uaXRvciYgRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6bW9uaXRvckZvckRpc3Bs
YXlJRChEaXNwbGF5UmVmcmVzaE1vbml0b3JGYWN0b3J5KiBmYWN0b3J5LCBQbGF0Zm9ybURpc3Bs
YXlJRCBkaXNwbGF5SUQpCit7CisgICAgaWYgKGF1dG8qIGV4aXN0aW5nTW9uaXRvciA9IGV4aXN0
aW5nTW9uaXRvckZvckRpc3BsYXlJRChkaXNwbGF5SUQpKQorICAgICAgICByZXR1cm4gKmV4aXN0
aW5nTW9uaXRvcjsKKworICAgIGF1dG8gbW9uaXRvciA9IERpc3BsYXlSZWZyZXNoTW9uaXRvcjo6
Y3JlYXRlKGZhY3RvcnksIGRpc3BsYXlJRCk7CisgICAgTE9HX1dJVEhfU1RSRUFNKERpc3BsYXlM
aW5rLCBzdHJlYW0gPDwgIkRpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6Om1vbml0b3JGb3JD
bGllbnQoKSAtIGNyZWF0ZWQgbW9uaXRvciAiIDw8ICZtb25pdG9yIDw8ICIgZm9yIGRpc3BsYXkg
IiA8PCBkaXNwbGF5SUQpOworCisgICAgRGlzcGxheVJlZnJlc2hNb25pdG9yKiByZXN1bHQgPSBt
b25pdG9yLmdldCgpOworICAgIG1fbW9uaXRvcnMuYXBwZW5kKHsgV1RGTW92ZShtb25pdG9yKSB9
KTsKKyAgICByZXR1cm4gKnJlc3VsdDsKK30KKworRGlzcGxheVJlZnJlc2hNb25pdG9yKiBEaXNw
bGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjpleGlzdGluZ01vbml0b3JGb3JEaXNwbGF5SUQoUGxh
dGZvcm1EaXNwbGF5SUQgZGlzcGxheUlEKSBjb25zdAogewogICAgIGF1dG8gaW5kZXggPSBmaW5k
TW9uaXRvckZvckRpc3BsYXlJRChkaXNwbGF5SUQpOwogICAgIHJldHVybiBpbmRleCA9PSBub3RG
b3VuZCA/IG51bGxwdHIgOiBtX21vbml0b3JzW2luZGV4XS5tb25pdG9yLmdldCgpOwogfQogCitE
aXNwbGF5UmVmcmVzaE1vbml0b3IqIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6Om1vbml0
b3JGb3JDbGllbnQoRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50JiBjbGllbnQpCit7CisgICAg
aWYgKCFjbGllbnQuaGFzRGlzcGxheUlEKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisg
ICAgYXV0byYgbW9uaXRvciA9IG1vbml0b3JGb3JEaXNwbGF5SUQoY2xpZW50LmRpc3BsYXlSZWZy
ZXNoTW9uaXRvckZhY3RvcnkoKSwgY2xpZW50LmRpc3BsYXlJRCgpKTsKKyAgICBtb25pdG9yLmFk
ZENsaWVudChjbGllbnQpOworICAgIHJldHVybiAmbW9uaXRvcjsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJlc2hNb25pdG9y
TWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRGlzcGxheVJlZnJl
c2hNb25pdG9yTWFuYWdlci5oCmluZGV4IDBhZTBmYTA5ZmIwNjZlZjllMDc0ODZiZDQ3Mzc5ZWZh
MjY0ODRmMTAuLjY2YTAyMzk3NWNmZDhmZjc3ZjE0ZDQ3NWM5ZWVmYjhlODUxNmUxZmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Rpc3BsYXlSZWZyZXNoTW9u
aXRvck1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9EaXNw
bGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyLmgKQEAgLTM0LDYgKzM0LDggQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCitjbGFzcyBEaXNwbGF5UmVmcmVzaE1vbml0b3JGYWN0b3J5OworCiBjbGFz
cyBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyIHsKICAgICBmcmllbmQgY2xhc3MgTmV2ZXJE
ZXN0cm95ZWQ8RGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcj47CiAgICAgZnJpZW5kIGNsYXNz
IERpc3BsYXlSZWZyZXNoTW9uaXRvcjsKQEAgLTQ0LDcgKzQ2LDExIEBAIHB1YmxpYzoKIAogICAg
IHZvaWQgc2V0UHJlZmVycmVkRnJhbWVzUGVyU2Vjb25kKERpc3BsYXlSZWZyZXNoTW9uaXRvckNs
aWVudCYsIEZyYW1lc1BlclNlY29uZCk7CiAgICAgYm9vbCBzY2hlZHVsZUFuaW1hdGlvbihEaXNw
bGF5UmVmcmVzaE1vbml0b3JDbGllbnQmKTsKLSAgICB2b2lkIHdpbmRvd1NjcmVlbkRpZENoYW5n
ZShQbGF0Zm9ybURpc3BsYXlJRCwgRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50Jik7CisKKyAg
ICB2b2lkIGNsaWVudERpZENoYW5nZURpc3BsYXkoRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50
JiwgUGxhdGZvcm1EaXNwbGF5SUQpOworCisgICAgdm9pZCB1cGRhdGVNb25pdG9yTm9taW5hbEZy
YW1lc1BlclNlY29uZChQbGF0Zm9ybURpc3BsYXlJRCwgRGlzcGxheVJlZnJlc2hNb25pdG9yRmFj
dG9yeSosIE9wdGlvbmFsPEZyYW1lc1BlclNlY29uZD4gbm9taW5hbEZyYW1lc1BlclNlY29uZCk7
CisgICAgT3B0aW9uYWw8RnJhbWVzUGVyU2Vjb25kPiBub21pbmFsRnJhbWVzUGVyU2Vjb25kRm9y
RGlzcGxheShQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3Q7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIGRpc3BsYXlXYXNVcGRhdGVkKFBsYXRmb3JtRGlzcGxheUlEKTsKIApAQCAtNTUsNyArNjEs
MTAgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpc3BsYXlEaWRSZWZyZXNoKERpc3BsYXlSZWZyZXNo
TW9uaXRvciYpOwogCiAgICAgc2l6ZV90IGZpbmRNb25pdG9yRm9yRGlzcGxheUlEKFBsYXRmb3Jt
RGlzcGxheUlEKSBjb25zdDsKLSAgICBEaXNwbGF5UmVmcmVzaE1vbml0b3IqIG1vbml0b3JGb3JE
aXNwbGF5SUQoUGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0OworCisgICAgRGlzcGxheVJlZnJlc2hN
b25pdG9yJiBtb25pdG9yRm9yRGlzcGxheUlEKERpc3BsYXlSZWZyZXNoTW9uaXRvckZhY3Rvcnkq
LCBQbGF0Zm9ybURpc3BsYXlJRCk7CisgICAgRGlzcGxheVJlZnJlc2hNb25pdG9yKiBleGlzdGlu
Z01vbml0b3JGb3JEaXNwbGF5SUQoUGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0OworCiAgICAgRGlz
cGxheVJlZnJlc2hNb25pdG9yKiBtb25pdG9yRm9yQ2xpZW50KERpc3BsYXlSZWZyZXNoTW9uaXRv
ckNsaWVudCYpOwogCiAgICAgc3RydWN0IERpc3BsYXlSZWZyZXNoTW9uaXRvcldyYXBwZXIgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXll
clVwZGF0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NM
YXllclVwZGF0ZXIuY3BwCmluZGV4IGMyMGRiZWMyMmYwMjk1NjA0N2M3NjljOTMxYTVmMzFjZTc1
ZDA2ODguLjRmOGE0YzlkODBkNWZiYTIwZTUxODYyYWZmZGI0OWY4ZDZiNGQ0ZjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXJVcGRhdGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVy
VXBkYXRlci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogR3JhcGhp
Y3NMYXllclVwZGF0ZXI6OkdyYXBoaWNzTGF5ZXJVcGRhdGVyKEdyYXBoaWNzTGF5ZXJVcGRhdGVy
Q2xpZW50JiBjbGllbnQsIFBsYXRmb3JtRGlzcGxheUlEIGRpc3BsYXlJRCkKICAgICA6IG1fY2xp
ZW50KGNsaWVudCkKIHsKLSAgICBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyOjpzaGFyZWRN
YW5hZ2VyKCkud2luZG93U2NyZWVuRGlkQ2hhbmdlKGRpc3BsYXlJRCwgKnRoaXMpOworICAgIERp
c3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXI6OnNoYXJlZE1hbmFnZXIoKS5jbGllbnREaWRDaGFu
Z2VEaXNwbGF5KCp0aGlzLCBkaXNwbGF5SUQpOwogICAgIHNjaGVkdWxlVXBkYXRlKCk7CiB9CiAK
QEAgLTU0LDcgKzU0LDcgQEAgdm9pZCBHcmFwaGljc0xheWVyVXBkYXRlcjo6c2NoZWR1bGVVcGRh
dGUoKQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJVcGRhdGVyOjpzY3JlZW5EaWRDaGFuZ2UoUGxhdGZv
cm1EaXNwbGF5SUQgZGlzcGxheUlEKQogewotICAgIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFn
ZXI6OnNoYXJlZE1hbmFnZXIoKS53aW5kb3dTY3JlZW5EaWRDaGFuZ2UoZGlzcGxheUlELCAqdGhp
cyk7CisgICAgRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLmNs
aWVudERpZENoYW5nZURpc3BsYXkoKnRoaXMsIGRpc3BsYXlJRCk7CiB9CiAKIHZvaWQgR3JhcGhp
Y3NMYXllclVwZGF0ZXI6OmRpc3BsYXlSZWZyZXNoRmlyZWQoKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>