<?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>210591</bug_id>
          
          <creation_ts>2020-04-15 22:09:20 -0700</creation_ts>
          <short_desc>[Async overflow scrolling] Slow-repaint overflow scroll have force their enclosing scrollers to be slow too</short_desc>
          <delta_ts>2020-04-16 08:56:16 -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>New Bugs</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>jamesr</cc>
    
    <cc>koivisto</cc>
    
    <cc>luiz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1642140</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-15 22:09:20 -0700</bug_when>
    <thetext>[Async overflow scrolling] Slow-repaint overflow scroll have force their enclosing scrollers to be slow too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642143</commentid>
    <comment_count>1</comment_count>
      <attachid>396619</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-15 22:13:14 -0700</bug_when>
    <thetext>Created attachment 396619
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642155</commentid>
    <comment_count>2</comment_count>
      <attachid>396624</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-15 22:54:17 -0700</bug_when>
    <thetext>Created attachment 396624
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642272</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-16 08:55:27 -0700</bug_when>
    <thetext>Committed r260190: &lt;https://trac.webkit.org/changeset/260190&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396624.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642273</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-16 08:56:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/61888269&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396619</attachid>
            <date>2020-04-15 22:13:14 -0700</date>
            <delta_ts>2020-04-15 22:54:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210591-20200415221313.patch</filename>
            <type>text/plain</type>
            <size>37448</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODdmZjQwZDYyMzA2MGFl
MGQyOTQ2Y2UxYjdmZWRkMmZlYjIzMDY4OS4uYTk5ZWY1ZGI0YjVhYzIzZDhhMDZjOWJjNTdmZWMy
OGYwMzE1OTA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDIwLTA0LTE1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtBc3luYyBvdmVy
ZmxvdyBzY3JvbGxpbmddIFNsb3ctcmVwYWludCBvdmVyZmxvdyBzY3JvbGwgaGF2ZSBmb3JjZSB0
aGVpciBlbmNsb3Npbmcgc2Nyb2xsZXJzIHRvIGJlIHNsb3cgdG9vCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA1OTEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJZiBhbiBvdmVyZmxvdzpzY3JvbGwgaGFz
IGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBpbiB0aGUgY29udGVudHMsIHRoZW4gYm90aCBp
dCBhbmQgYWxsIGl0cyBjb250YWluaW5nLWJsb2NrCisgICAgICAgIHNjcm9sbGluZyBhbmNlc3Rv
cnMgaGF2ZSB0byBiZSBzbG93LXNjcm9sbGluZyB0b28sIGJlY2F1c2Ugc2Nyb2xsaW5nIGFueSBv
ZiB0aGVtIGFmZmVjdHMgdGhlIGxvY2FsIGdlb21ldHJ5CisgICAgICAgIG9mIHRoZSBmaXhlZCBi
YWNrZ3JvdW5kcyB3aGljaCBwYWludCBvbiBzY3JvbGwuCisKKyAgICAgICAgSW1wbGVtZW50IHRo
aXMgYnkgaGF2aW5nIHRoZSBzY3JvbGxpbmcgdHJlZSBkbyBhIHBvc3QtY29tbWl0IHBhc3Mgb3Zl
ciB0aGUgbm9kZXMgd2l0aCBzeW5jIHNjcm9sbGluZyByZWFzb25zCisgICAgICAgICh3aGljaCB3
ZSBjb2xsZWN0IGR1cmluZyB0aGUgY29tbWl0IHBoYXNlKS4gRm9yIGVhY2ggc2xvdy1zY3JvbGxp
bmcgbm9kZSwgd2FsayBpdHMgYW5jZXN0b3IgY2hhaW4gKHZpYQorICAgICAgICBwcm94eSBub2Rl
cyB3aGVuIG5lY2Vzc2FyeSkgYW5kIG1hcmsgdGhlIHNjcm9sbGluZyBub2RlIGFuY2VzdG9ycyB3
aXRoIHRoZSAiRGVzY2VuZGFudFNjcm9sbGVyc0hhdmVTeW5jaHJvbm91c1Njcm9sbGluZyIKKyAg
ICAgICAgcmVhc29uLgorCisgICAgICAgIEZvciB0ZXN0aW5nLCBleHBvc2UgaW50ZXJuYWxzLnNj
cm9sbGluZ1RyZWVBc1RleHQoKSwgd2hpY2ggbmVlZHMgYSBiaXQgb2Ygc3luY2hyb25pemF0aW9u
IHZpYQorICAgICAgICB3YWl0Rm9yU2Nyb2xsaW5nVHJlZUNvbW1pdCgpIHNpbmNlIHRoZSBjb21t
aXQgaGFwcGVucyBvbiB0aGUgc2Nyb2xsaW5nIHRocmVhZC4KKworICAgICAgICBUZXN0czogc2Ny
b2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQt
aW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy5odG1sCisgICAgICAgICAgICAgICBzY3JvbGxpbmdj
b29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0
ZWQtb3ZlcmZsb3cuaHRtbAorICAgICAgICAgICAgICAgc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFj
L2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi5o
dG1sCisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY1Njcm9s
bGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxpbmdUcmVlQXNUZXh0IGNvbnN0KToKKyAgICAgICAgKiBw
YWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmg6CisgICAgICAgICogcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xsaW5nVHJlZUFzVGV4
dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6c3luY2hy
b25vdXNTY3JvbGxpbmdSZWFzb25zQXNUZXh0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9T
Y3JvbGxpbmdDb29yZGluYXRvci5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yVHlwZXMuaDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdU
cmVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWU6OmNvbW1pdFRyZWVTdGF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjp1cGRhdGVUcmVlRnJvbVN0YXRl
Tm9kZVJlY3Vyc2l2ZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpwcm9wYWdh
dGVTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUpOiBEZWxldGVkLgorICAgICAgICAqIHBh
Z2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWU6OndhaXRGb3JTY3JvbGxpbmdUcmVlQ29tbWl0KToKKyAgICAgICAgKiBwYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6Y29tbWl0U3RhdGVBZnRlckNoaWxkcmVuKToKKyAg
ICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5oOgorICAg
ICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpUaHJlYWRlZFNjcm9sbGluZ1RyZWU6OndhaXRGb3JTY3JvbGxpbmdUcmVlQ29t
bWl0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaDoK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRl
cm5hbHM6OnNjcm9sbGluZ1RyZWVBc1RleHQgY29uc3QpOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTA0LTE1
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtBc3lu
YyBvdmVyZmxvdyBzY3JvbGxdIGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBuZWVkcyB0byBk
aXNhYmxlIGFzeW5jIG92ZXJmbG93IHNjcm9sbGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcAppbmRl
eCBmOGU0MjU5MDRjYzdkM2FhNTc4Yzg0NmM4MGI2ZTM3N2ZhMTBjM2Q2Li40OGJiYjhhZTMzOTM3
YjA3ODQyNWE5M2ZlYWE0N2IxNjc1YTQ3MDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcApAQCAt
ODIwLDcgKzgyMCwxNiBAQCBTdHJpbmcgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xs
aW5nU3RhdGVUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVAogICAgICAgICByZXR1cm4g
bV9zY3JvbGxpbmdTdGF0ZVRyZWUtPnJvb3RTdGF0ZU5vZGUoKS0+c2Nyb2xsaW5nU3RhdGVUcmVl
QXNUZXh0KGJlaGF2aW9yKTsKICAgICB9CiAKLSAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgcmV0
dXJuIGVtcHR5U3RyaW5nKCk7Cit9CisKK1N0cmluZyBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
OjpzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yIGJl
aGF2aW9yKSBjb25zdAoreworICAgIGlmICghbV9zY3JvbGxpbmdUcmVlKQorICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKKworICAgIG1fc2Nyb2xsaW5nVHJlZS0+d2FpdEZvclNjcm9sbGlu
Z1RyZWVDb21taXQoKTsKKyAgICByZXR1cm4gbV9zY3JvbGxpbmdUcmVlLT5zY3JvbGxpbmdUcmVl
QXNUZXh0KGJlaGF2aW9yKTsKIH0KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRv
ci5oCmluZGV4IGEyZWQ4YTQxZDcyM2E1NjA1YzhjYjkzOGY2ODZlZGFlM2E4ODYwMmQuLjQ1MjFk
Y2ZjZDI1Y2ZiYTMzZDUxZmFlNGQzNTgxNmQxZTExYjMyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgK
QEAgLTc4LDYgKzc4LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgdXBkYXRlU2Nyb2xsUG9zaXRp
b25BZnRlckFzeW5jU2Nyb2xsKFNjcm9sbGluZ05vZGVJRCwgY29uc3QgRmxvYXRQb2ludCYsIE9w
dGlvbmFsPEZsb2F0UG9pbnQ+IGxheW91dFZpZXdwb3J0T3JpZ2luLCBTY3JvbGxUeXBlLCBTY3Jv
bGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBz
Y3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQoU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVoYXZpb3Ig
PSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvck5vcm1hbCkgY29uc3Qgb3ZlcnJpZGU7
CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHNjcm9sbGluZ1RyZWVBc1RleHQoU2Nyb2xsaW5n
U3RhdGVUcmVlQXNUZXh0QmVoYXZpb3IgPSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlv
ck5vcm1hbCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aWxsQ29t
bWl0VHJlZSgpIG92ZXJyaWRlOwogCiAgICAgYm9vbCBldmVudFRyYWNraW5nUmVnaW9uc0RpcnR5
KCkgY29uc3QgeyByZXR1cm4gbV9ldmVudFRyYWNraW5nUmVnaW9uc0RpcnR5OyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5j
cHAKaW5kZXggYTFjMjM4NWY2MjE0ZTA1YThjN2YxMDg0Zjk5ZTExMDAzMGRjMTUzYS4uZDVkYWEw
OWMwZjQ2MThkMTI3NmY1Y2RlOTMwOTgwMjgyZTcyZWI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcApAQCAtMzg3
LDcgKzM4NywxMiBAQCBTY3JvbGxpbmdOb2RlSUQgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnVuaXF1
ZVNjcm9sbGluZ05vZGVJRCgpCiAKIFN0cmluZyBTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xs
aW5nU3RhdGVUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yKSBjb25z
dAogewotICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKK30K
KworU3RyaW5nIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yKSBjb25zdAoreworICAgIHJldHVybiBlbXB0eVN0
cmluZygpOwogfQogCiBTdHJpbmcgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnN5bmNocm9ub3VzU2Ny
b2xsaW5nUmVhc29uc0FzVGV4dChPcHRpb25TZXQ8U3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24+
IHJlYXNvbnMpCkBAIC0zOTYsMTUgKzQwMSwyMiBAQCBTdHJpbmcgU2Nyb2xsaW5nQ29vcmRpbmF0
b3I6OnN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uc0FzVGV4dChPcHRpb25TZXQ8U3luY2hybwog
CiAgICAgaWYgKHJlYXNvbnMgJiBTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbjo6Rm9yY2VkT25N
YWluVGhyZWFkKQogICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoIkZvcmNlZCBv
biBtYWluIHRocmVhZCwgIik7CisKICAgICBpZiAocmVhc29ucyAmIFN5bmNocm9ub3VzU2Nyb2xs
aW5nUmVhc29uOjpIYXNTbG93UmVwYWludE9iamVjdHMpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiSGFzIHNsb3cgcmVwYWludCBvYmplY3RzLCAiKTsKKwogICAgIGlmIChy
ZWFzb25zICYgU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb246Okhhc1ZpZXdwb3J0Q29uc3RyYWlu
ZWRPYmplY3RzV2l0aG91dFN1cHBvcnRpbmdGaXhlZExheWVycykKICAgICAgICAgc3RyaW5nQnVp
bGRlci5hcHBlbmRMaXRlcmFsKCJIYXMgdmlld3BvcnQgY29uc3RyYWluZWQgb2JqZWN0cyB3aXRo
b3V0IHN1cHBvcnRpbmcgZml4ZWQgbGF5ZXJzLCAiKTsKKwogICAgIGlmIChyZWFzb25zICYgU3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb246Okhhc05vbkxheWVyVmlld3BvcnRDb25zdHJhaW5lZE9i
amVjdHMpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiSGFzIG5vbi1sYXll
ciB2aWV3cG9ydC1jb25zdHJhaW5lZCBvYmplY3RzLCAiKTsKKwogICAgIGlmIChyZWFzb25zICYg
U3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb246OklzSW1hZ2VEb2N1bWVudCkKICAgICAgICAgc3Ry
aW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJJcyBpbWFnZSBkb2N1bWVudCwgIik7CiAKKyAgICBp
ZiAocmVhc29ucyAmIFN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uOjpEZXNjZW5kYW50U2Nyb2xs
ZXJzSGF2ZVN5bmNocm9ub3VzU2Nyb2xsaW5nKQorICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVu
ZExpdGVyYWwoIkhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMsICIpOworCiAg
ICAgaWYgKHN0cmluZ0J1aWxkZXIubGVuZ3RoKCkpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIucmVz
aXplKHN0cmluZ0J1aWxkZXIubGVuZ3RoKCkgLSAyKTsKICAgICByZXR1cm4gc3RyaW5nQnVpbGRl
ci50b1N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Nj
cm9sbGluZ0Nvb3JkaW5hdG9yLmgKaW5kZXggYzhlMjRjYTNmYWVkYmRlNjdmZTQxNjIxZGY1MTNi
NmY4NzBiOGVkOC4uNDI4OTBlYzc1M2FjNWFhYzM3NDcxNGY2NjU5NGQwY2Q2MjAyNjY1NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGlu
YXRvci5oCkBAIC0xNjEsNiArMTYxLDcgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHJl
Y29uY2lsZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllclBvc2l0aW9ucyhTY3JvbGxpbmdOb2RlSUQs
IGNvbnN0IExheW91dFJlY3QmLCBTY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKSB7IH0KICAg
ICB2aXJ0dWFsIFN0cmluZyBzY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQoU2Nyb2xsaW5nU3RhdGVU
cmVlQXNUZXh0QmVoYXZpb3IgPSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvck5vcm1h
bCkgY29uc3Q7CisgICAgdmlydHVhbCBTdHJpbmcgc2Nyb2xsaW5nVHJlZUFzVGV4dChTY3JvbGxp
bmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvciA9IFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2
aW9yTm9ybWFsKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVz
cygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlzU2Nyb2xsU25h
cEluUHJvZ3Jlc3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgdm9pZCB1
cGRhdGVTY3JvbGxTbmFwUHJvcGVydGllc1dpdGhGcmFtZVZpZXcoY29uc3QgRnJhbWVWaWV3Jikg
eyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdD
b29yZGluYXRvclR5cGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxp
bmdDb29yZGluYXRvclR5cGVzLmgKaW5kZXggYWYxNGFiYTRkNjhjYWFkNWU1YWIwZDkxYWNiZGQx
ZmY4MTgyMTFkNS4uMWNjYjM5NTkzZThhZjdkMTNmM2E2N2UyN2UxZDlmYmJkZjEwN2I1ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0
b3JUeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nv
b3JkaW5hdG9yVHlwZXMuaApAQCAtMzAsMTEgKzMwLDE0IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGVudW0gY2xhc3MgU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24geworICAgIC8vIEZsYWdz
IGZvciBmcmFtZSBzY3JvbGxpbmcuCiAgICAgRm9yY2VkT25NYWluVGhyZWFkICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDAsCi0gICAgSGFzU2xvd1JlcGFp
bnRPYmplY3RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDEs
Ci0gICAgSGFzVmlld3BvcnRDb25zdHJhaW5lZE9iamVjdHNXaXRob3V0U3VwcG9ydGluZ0ZpeGVk
TGF5ZXJzICAgPSAxIDw8IDIsCi0gICAgSGFzTm9uTGF5ZXJWaWV3cG9ydENvbnN0cmFpbmVkT2Jq
ZWN0cyAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDMsCi0gICAgSXNJbWFnZURvY3VtZW50
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDQKKyAg
ICBIYXNWaWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0c1dpdGhvdXRTdXBwb3J0aW5nRml4ZWRMYXll
cnMgICA9IDEgPDwgMSwKKyAgICBIYXNOb25MYXllclZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3Rz
ICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwgMiwKKyAgICBJc0ltYWdlRG9jdW1lbnQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwgMywKKyAgICAv
LyBGbGFncyBmb3IgZnJhbWUgYW5kIG92ZXJmbG93IHNjcm9sbGluZy4KKyAgICBIYXNTbG93UmVw
YWludE9iamVjdHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwg
NCwKKyAgICBEZXNjZW5kYW50U2Nyb2xsZXJzSGF2ZVN5bmNocm9ub3VzU2Nyb2xsaW5nICAgICAg
ICAgICAgICAgICA9IDEgPDwgNSwKIH07CiAKIGVudW0gY2xhc3MgU2Nyb2xsaW5nTm9kZVR5cGUg
OiB1aW50OF90IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Nj
cm9sbGluZ1RyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
VHJlZS5jcHAKaW5kZXggYWY3NGM0NGNiZTZhMzAxOGI4NmNhOTBmOGZkYWFmYjZmNjg1M2U0MS4u
NDUzMTI3OTFiMGNkNTQzZmYxNWQyOTE4YTY4NmEzNjdiYjlhMTMwOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKQEAgLTQ0LDYgKzQ0LDE4
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAordXNpbmcgT3JwaGFuU2Nyb2xsaW5nTm9kZU1h
cCA9IEhhc2hNYXA8U2Nyb2xsaW5nTm9kZUlELCBSZWZQdHI8U2Nyb2xsaW5nVHJlZU5vZGU+PjsK
Kworc3RydWN0IENvbW1pdFRyZWVTdGF0ZSB7CisgICAgLy8gdW52aXNpdGVkTm9kZXMgc3RhcnRz
IHdpdGggYWxsIG5vZGVzIGluIHRoZSBtYXA7IHdlIHJlbW92ZSBub2RlcyBhcyB3ZSB2aXNpdCB0
aGVtLiBBdCB0aGUgZW5kLCBpdCdzIHRoZSB1bnZpc2l0ZWQgbm9kZXMuCisgICAgLy8gV2UgY2Fu
J3QgdXNlIG9ycGhhbk5vZGVzIGZvciB0aGlzLCBiZWNhdXNlIG9ycGhhbk5vZGVzIHdvbid0IGNv
bnRhaW4gZGVzY2VuZGFudHMgb2YgcmVtb3ZlZCBub2Rlcy4KKyAgICBIYXNoU2V0PFNjcm9sbGlu
Z05vZGVJRD4gdW52aXNpdGVkTm9kZXM7CisgICAgLy8gTm9kZXMgd2l0aCBub24tZW1wdHkgc3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb25zLgorICAgIEhhc2hTZXQ8U2Nyb2xsaW5nTm9kZUlEPiBz
eW5jaHJvbm91c1Njcm9sbGluZ05vZGVzOworICAgIC8vIG9ycGhhbk5vZGVzIGtlZXBzIGNoaWxk
IG5vZGVzIGFsaXZlIHdoaWxlIHdlIHJlYnVpbGQgY2hpbGQgbGlzdHMuCisgICAgT3JwaGFuU2Ny
b2xsaW5nTm9kZU1hcCBvcnBoYW5Ob2RlczsKK307CisKIFNjcm9sbGluZ1RyZWU6OlNjcm9sbGlu
Z1RyZWUoKSA9IGRlZmF1bHQ7CiBTY3JvbGxpbmdUcmVlOjp+U2Nyb2xsaW5nVHJlZSgpID0gZGVm
YXVsdDsKIApAQCAtMTczLDIyICsxODUsMTkgQEAgdm9pZCBTY3JvbGxpbmdUcmVlOjpjb21taXRU
cmVlU3RhdGUoc3RkOjp1bmlxdWVfcHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gc2Nyb2xsaW4KICAg
ICAgICAgaWYgKHJvb3RTdGF0ZU5vZGVDaGFuZ2VkIHx8IHJvb3ROb2RlLT5oYXNDaGFuZ2VkUHJv
cGVydHkoU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGU6OklzTW9uaXRvcmluZ1doZWVs
RXZlbnRzKSkKICAgICAgICAgICAgIG1faXNNb25pdG9yaW5nV2hlZWxFdmVudHMgPSBzY3JvbGxp
bmdTdGF0ZVRyZWUtPnJvb3RTdGF0ZU5vZGUoKS0+aXNNb25pdG9yaW5nV2hlZWxFdmVudHMoKTsK
ICAgICB9Ci0gICAgCi0gICAgLy8gdW52aXNpdGVkTm9kZXMgc3RhcnRzIHdpdGggYWxsIG5vZGVz
IGluIHRoZSBtYXA7IHdlIHJlbW92ZSBub2RlcyBhcyB3ZSB2aXNpdCB0aGVtLiBBdCB0aGUgZW5k
LCBpdCdzIHRoZSB1bnZpc2l0ZWQgbm9kZXMuCi0gICAgLy8gV2UgY2FuJ3QgdXNlIG9ycGhhbk5v
ZGVzIGZvciB0aGlzLCBiZWNhdXNlIG9ycGhhbk5vZGVzIHdvbid0IGNvbnRhaW4gZGVzY2VuZGFu
dHMgb2YgcmVtb3ZlZCBub2Rlcy4KLSAgICBIYXNoU2V0PFNjcm9sbGluZ05vZGVJRD4gdW52aXNp
dGVkTm9kZXM7Ci0gICAgZm9yIChhdXRvIG5vZGVJRCA6IG1fbm9kZU1hcC5rZXlzKCkpCi0gICAg
ICAgIHVudmlzaXRlZE5vZGVzLmFkZChub2RlSUQpOwogCiAgICAgbV9vdmVyZmxvd1JlbGF0ZWRO
b2Rlc01hcC5jbGVhcigpOwogICAgIG1fYWN0aXZlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGVzLmNs
ZWFyKCk7CiAgICAgbV9hY3RpdmVQb3NpdGlvbmVkTm9kZXMuY2xlYXIoKTsKIAotICAgIC8vIG9y
cGhhbk5vZGVzIGtlZXBzIGNoaWxkIG5vZGVzIGFsaXZlIHdoaWxlIHdlIHJlYnVpbGQgY2hpbGQg
bGlzdHMuCi0gICAgT3JwaGFuU2Nyb2xsaW5nTm9kZU1hcCBvcnBoYW5Ob2RlczsKLSAgICB1cGRh
dGVUcmVlRnJvbVN0YXRlTm9kZShyb290Tm9kZSwgb3JwaGFuTm9kZXMsIHVudmlzaXRlZE5vZGVz
KTsKKyAgICBDb21taXRUcmVlU3RhdGUgY29tbWl0U3RhdGU7CisgICAgZm9yIChhdXRvIG5vZGVJ
RCA6IG1fbm9kZU1hcC5rZXlzKCkpCisgICAgICAgIGNvbW1pdFN0YXRlLnVudmlzaXRlZE5vZGVz
LmFkZChub2RlSUQpOworCisgICAgdXBkYXRlVHJlZUZyb21TdGF0ZU5vZGVSZWN1cnNpdmUocm9v
dE5vZGUsIGNvbW1pdFN0YXRlKTsKKyAgICBwcm9wYWdhdGVTeW5jaHJvbm91c1Njcm9sbGluZ1Jl
YXNvbnMoY29tbWl0U3RhdGUpOwogICAgIAotICAgIGZvciAoYXV0byBub2RlSUQgOiB1bnZpc2l0
ZWROb2RlcykgeworICAgIGZvciAoYXV0byBub2RlSUQgOiBjb21taXRTdGF0ZS51bnZpc2l0ZWRO
b2RlcykgewogICAgICAgICBtX2xhdGNoaW5nQ29udHJvbGxlci5ub2RlV2FzUmVtb3ZlZChub2Rl
SUQpOwogICAgICAgICAKICAgICAgICAgTE9HKFNjcm9sbGluZywgIlNjcm9sbGluZ1RyZWU6OmNv
bW1pdFRyZWVTdGF0ZSAtIHJlbW92aW5nIHVudmlzaXRlZCBub2RlICUiIFBSSXU2NCwgbm9kZUlE
KTsKQEAgLTE5OCw3ICsyMDcsNyBAQCB2b2lkIFNjcm9sbGluZ1RyZWU6OmNvbW1pdFRyZWVTdGF0
ZShzdGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPiBzY3JvbGxpbgogICAgIExPR19X
SVRIX1NUUkVBTShTY3JvbGxpbmcsIHN0cmVhbSA8PCAiY29tbWl0dGVkIFNjcm9sbGluZ1RyZWUi
IDw8IHNjcm9sbGluZ1RyZWVBc1RleHQoU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVoYXZpb3JE
ZWJ1ZykpOwogfQogCi12b2lkIFNjcm9sbGluZ1RyZWU6OnVwZGF0ZVRyZWVGcm9tU3RhdGVOb2Rl
KGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSogc3RhdGVOb2RlLCBPcnBoYW5TY3JvbGxpbmdOb2Rl
TWFwJiBvcnBoYW5Ob2RlcywgSGFzaFNldDxTY3JvbGxpbmdOb2RlSUQ+JiB1bnZpc2l0ZWROb2Rl
cykKK3ZvaWQgU2Nyb2xsaW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGVSZWN1cnNpdmUo
Y29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlKiBzdGF0ZU5vZGUsIENvbW1pdFRyZWVTdGF0ZSYgc3Rh
dGUpCiB7CiAgICAgaWYgKCFzdGF0ZU5vZGUpIHsKICAgICAgICAgbV9ub2RlTWFwLmNsZWFyKCk7
CkBAIC0yMTQsNyArMjIzLDcgQEAgdm9pZCBTY3JvbGxpbmdUcmVlOjp1cGRhdGVUcmVlRnJvbVN0
YXRlTm9kZShjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUqIHN0YXRlTm9kZSwKICAgICBSZWZQdHI8
U2Nyb2xsaW5nVHJlZU5vZGU+IG5vZGU7CiAgICAgaWYgKGl0ICE9IG1fbm9kZU1hcC5lbmQoKSkg
ewogICAgICAgICBub2RlID0gaXQtPnZhbHVlOwotICAgICAgICB1bnZpc2l0ZWROb2Rlcy5yZW1v
dmUobm9kZUlEKTsKKyAgICAgICAgc3RhdGUudW52aXNpdGVkTm9kZXMucmVtb3ZlKG5vZGVJRCk7
CiAgICAgfSBlbHNlIHsKICAgICAgICAgbm9kZSA9IGNyZWF0ZVNjcm9sbGluZ1RyZWVOb2RlKHN0
YXRlTm9kZS0+bm9kZVR5cGUoKSwgbm9kZUlEKTsKICAgICAgICAgaWYgKCFwYXJlbnROb2RlSUQp
IHsKQEAgLTI1MSwxNyArMjYwLDQ2IEBAIHZvaWQgU2Nyb2xsaW5nVHJlZTo6dXBkYXRlVHJlZUZy
b21TdGF0ZU5vZGUoY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlKiBzdGF0ZU5vZGUsCiAgICAgLy8g
TW92ZSBhbGwgY2hpbGRyZW4gaW50byB0aGUgb3JwaGFuTm9kZXMgbWFwLiBMaXZlIG9uZXMgd2ls
bCBnZXQgYWRkZWQgYmFjayBhcyB3ZSByZWN1cnNlIG92ZXIgY2hpbGRyZW4uCiAgICAgZm9yIChh
dXRvJiBjaGlsZFNjcm9sbGluZ05vZGUgOiBub2RlLT5jaGlsZHJlbigpKSB7CiAgICAgICAgIGNo
aWxkU2Nyb2xsaW5nTm9kZS0+c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBvcnBoYW5Ob2Rl
cy5hZGQoY2hpbGRTY3JvbGxpbmdOb2RlLT5zY3JvbGxpbmdOb2RlSUQoKSwgY2hpbGRTY3JvbGxp
bmdOb2RlLnB0cigpKTsKKyAgICAgICAgc3RhdGUub3JwaGFuTm9kZXMuYWRkKGNoaWxkU2Nyb2xs
aW5nTm9kZS0+c2Nyb2xsaW5nTm9kZUlEKCksIGNoaWxkU2Nyb2xsaW5nTm9kZS5wdHIoKSk7CiAg
ICAgfQogICAgIG5vZGUtPnJlbW92ZUFsbENoaWxkcmVuKCk7CiAKICAgICAvLyBOb3cgdXBkYXRl
IHRoZSBjaGlsZHJlbiBpZiB3ZSBoYXZlIGFueS4KICAgICBpZiAoYXV0byBjaGlsZHJlbiA9IHN0
YXRlTm9kZS0+Y2hpbGRyZW4oKSkgewogICAgICAgICBmb3IgKGF1dG8mIGNoaWxkIDogKmNoaWxk
cmVuKQotICAgICAgICAgICAgdXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUoY2hpbGQuZ2V0KCksIG9y
cGhhbk5vZGVzLCB1bnZpc2l0ZWROb2Rlcyk7CisgICAgICAgICAgICB1cGRhdGVUcmVlRnJvbVN0
YXRlTm9kZVJlY3Vyc2l2ZShjaGlsZC5nZXQoKSwgc3RhdGUpOwogICAgIH0KIAogICAgIG5vZGUt
PmNvbW1pdFN0YXRlQWZ0ZXJDaGlsZHJlbigqc3RhdGVOb2RlKTsKKyAgICAKKyAgICBpZiAoaXM8
U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU+KCpub2RlKSAmJiAhZG93bmNhc3Q8U2Nyb2xsaW5n
VHJlZVNjcm9sbGluZ05vZGU+KCpub2RlKS5zeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMoKS5p
c0VtcHR5KCkpCisgICAgICAgIHN0YXRlLnN5bmNocm9ub3VzU2Nyb2xsaW5nTm9kZXMuYWRkKG5v
ZGVJRCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZTo6cHJvcGFnYXRlU3luY2hyb25vdXNTY3Jv
bGxpbmdSZWFzb25zKHN0cnVjdCBDb21taXRUcmVlU3RhdGUmIHN0YXRlKQoreworICAgIGF1dG8g
cHJvcGFnYXRlU3RhdGVUb0FuY2VzdG9ycyA9IFsmXShTY3JvbGxpbmdUcmVlTm9kZSYgbm9kZSkg
eworICAgICAgICBBU1NFUlQoaXM8U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU+KG5vZGUpICYm
ICFkb3duY2FzdDxTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZT4obm9kZSkuc3luY2hyb25vdXNT
Y3JvbGxpbmdSZWFzb25zKCkuaXNFbXB0eSgpKTsKKworICAgICAgICBhdXRvIGN1cnJOb2RlID0g
bm9kZS5wYXJlbnQoKTsKKyAgICAgICAgCisgICAgICAgIHdoaWxlIChjdXJyTm9kZSkgeworICAg
ICAgICAgICAgaWYgKGlzPFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlPihjdXJyTm9kZSkpCisg
ICAgICAgICAgICAgICAgZG93bmNhc3Q8U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU+KCpjdXJy
Tm9kZSkuYWRkU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24oU3luY2hyb25vdXNTY3JvbGxpbmdS
ZWFzb246OkRlc2NlbmRhbnRTY3JvbGxlcnNIYXZlU3luY2hyb25vdXNTY3JvbGxpbmcpOworCisg
ICAgICAgICAgICBpZiAoaXM8U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlPihj
dXJyTm9kZSkpIHsKKyAgICAgICAgICAgICAgICBjdXJyTm9kZSA9IG5vZGVGb3JJRChkb3duY2Fz
dDxTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGU+KCpjdXJyTm9kZSkub3ZlcmZs
b3dTY3JvbGxpbmdOb2RlSUQoKSk7CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGN1cnJOb2RlID0gY3Vyck5vZGUtPnBhcmVudCgpOworICAg
ICAgICB9CisgICAgfTsKKworICAgIGZvciAoYXV0byBub2RlSUQgOiBzdGF0ZS5zeW5jaHJvbm91
c1Njcm9sbGluZ05vZGVzKSB7CisgICAgICAgIGlmIChhdXRvIG5vZGUgPSBub2RlRm9ySUQobm9k
ZUlEKSkKKyAgICAgICAgICAgIHByb3BhZ2F0ZVN0YXRlVG9BbmNlc3RvcnMoKm5vZGUpOworICAg
IH0KIH0KIAogdm9pZCBTY3JvbGxpbmdUcmVlOjphcHBseUxheWVyUG9zaXRpb25zQWZ0ZXJDb21t
aXQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
VHJlZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCmlu
ZGV4IDhkMzFiM2FlMjg1ODAxZjVkMjgyY2ExNDcyMDJmY2ZlODJkMzM4ZjkuLjc0Y2E3MDVlNjMw
Y2M5ZDIxMDg0NWY5MGIyYmRkNzIxYWI4YTBiMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgKQEAgLTE3MCw2ICsxNzAsOCBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIGxvY2tMYXllcnNGb3JIaXRUZXN0aW5nKCkgeyB9CiAgICAgdmlydHVh
bCB2b2lkIHVubG9ja0xheWVyc0ZvckhpdFRlc3RpbmcoKSB7IH0KIAorICAgIHZpcnR1YWwgdm9p
ZCB3YWl0Rm9yU2Nyb2xsaW5nVHJlZUNvbW1pdCgpIHsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgRmxv
YXRQb2ludCBtYWluRnJhbWVTY3JvbGxQb3NpdGlvbigpIGNvbnN0OwogICAgIHZvaWQgc2V0TWFp
bkZyYW1lU2Nyb2xsUG9zaXRpb24oRmxvYXRQb2ludCk7CkBAIC0xNzcsOCArMTc5LDggQEAgcHJv
dGVjdGVkOgogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgU2Nyb2xsaW5nRXZlbnRSZXN1bHQg
aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKIAogcHJpdmF0ZToK
LSAgICB1c2luZyBPcnBoYW5TY3JvbGxpbmdOb2RlTWFwID0gSGFzaE1hcDxTY3JvbGxpbmdOb2Rl
SUQsIFJlZlB0cjxTY3JvbGxpbmdUcmVlTm9kZT4+OwotICAgIHZvaWQgdXBkYXRlVHJlZUZyb21T
dGF0ZU5vZGUoY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlKiwgT3JwaGFuU2Nyb2xsaW5nTm9kZU1h
cCYsIEhhc2hTZXQ8U2Nyb2xsaW5nTm9kZUlEPiYgdW52aXNpdGVkTm9kZXMpOworICAgIHZvaWQg
dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGVSZWN1cnNpdmUoY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2Rl
Kiwgc3RydWN0IENvbW1pdFRyZWVTdGF0ZSYpOworICAgIHZvaWQgcHJvcGFnYXRlU3luY2hyb25v
dXNTY3JvbGxpbmdSZWFzb25zKHN0cnVjdCBDb21taXRUcmVlU3RhdGUmKTsKIAogICAgIHZvaWQg
YXBwbHlMYXllclBvc2l0aW9uc1JlY3Vyc2l2ZShTY3JvbGxpbmdUcmVlTm9kZSYpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xs
aW5nTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVl
U2Nyb2xsaW5nTm9kZS5jcHAKaW5kZXggZmM4Zjc3NzA5Y2M3MDkzOGVhMmY4YTUwN2MwZTNjMTQx
NmQ1NWYwNC4uNmU1OTc5YzBmYjEzMDJkOTBiNTc4M2Y2ZWMxYWYzNDRlMzNjNjM1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGlu
Z05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1Ry
ZWVTY3JvbGxpbmdOb2RlLmNwcApAQCAtMTE3LDYgKzExNyw4IEBAIHZvaWQgU2Nyb2xsaW5nVHJl
ZVNjcm9sbGluZ05vZGU6OmNvbW1pdFN0YXRlQWZ0ZXJDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdT
dGF0ZU5vCiAgICAgICAgIHNjcm9sbGluZ1RyZWUoKS5zY3JvbGxpbmdUcmVlTm9kZVJlcXVlc3Rz
U2Nyb2xsKHNjcm9sbGluZ05vZGVJRCgpLCByZXF1ZXN0ZWRTY3JvbGxEYXRhLnNjcm9sbFBvc2l0
aW9uLCByZXF1ZXN0ZWRTY3JvbGxEYXRhLnNjcm9sbFR5cGUsIHJlcXVlc3RlZFNjcm9sbERhdGEu
Y2xhbXBpbmcpOwogICAgIH0KIAorICAgIC8vIFRoaXMgc3ludGhldGljIGJpdCBpcyBhZGRlZCBi
YWNrIGluIFNjcm9sbGluZ1RyZWU6OnByb3BhZ2F0ZVN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29u
cygpLgorICAgIG1fc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zLnJlbW92ZShTeW5jaHJvbm91
c1Njcm9sbGluZ1JlYXNvbjo6RGVzY2VuZGFudFNjcm9sbGVyc0hhdmVTeW5jaHJvbm91c1Njcm9s
bGluZyk7CiAgICAgbV9pc0ZpcnN0Q29tbWl0ID0gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9k
ZS5oCmluZGV4IGY4ZDNjY2YxNTk1NGE4ZWIyMDdjYWQ2MTc0ZGFiMTAwYmUyYjFiOGYuLjFiNWQ0
MmI0ZGRmMWEyOTJjZmYzNTFjYzI0YWFlZTY3MmIzZDMzZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUu
aApAQCAtNzQsNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgCiAjaWYgRU5BQkxFKFNDUk9MTElOR19U
SFJFQUQpCiAgICAgT3B0aW9uU2V0PFN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uPiBzeW5jaHJv
bm91c1Njcm9sbGluZ1JlYXNvbnMoKSBjb25zdCB7IHJldHVybiBtX3N5bmNocm9ub3VzU2Nyb2xs
aW5nUmVhc29uczsgfQorICAgIHZvaWQgYWRkU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24oU3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb24gcmVhc29uKSB7IG1fc3luY2hyb25vdXNTY3JvbGxpbmdS
ZWFzb25zLmFkZChyZWFzb24pOyB9CiAgICAgYm9vbCBzaG91bGRVcGRhdGVTY3JvbGxMYXllclBv
c2l0aW9uU3luY2hyb25vdXNseSgpIGNvbnN0IHsgcmV0dXJuICFtX3N5bmNocm9ub3VzU2Nyb2xs
aW5nUmVhc29ucy5pc0VtcHR5KCk7IH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmNwcAppbmRleCBkODNl
N2E3YTI5ZDRkYzFmYjMwYTcwMDQxMGU4ODUyZjBmMzQ1NmE1Li5kNDMzYTI2Y2NmMjM5ZDQwYjUw
NzVjZGI3Yjk3MDFjMjEzMjYyZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5jcHAKQEAgLTE1NSw2ICsxNTUsMTEg
QEAgdm9pZCBUaHJlYWRlZFNjcm9sbGluZ1RyZWU6OndhaXRGb3JQZW5kaW5nQ29tbWl0cygpCiAg
ICAgICAgIG1fY29tbWl0Q29uZGl0aW9uLndhaXQobV9wZW5kaW5nQ29tbWl0Q291bnRNdXRleCk7
CiB9CiAKK3ZvaWQgVGhyZWFkZWRTY3JvbGxpbmdUcmVlOjp3YWl0Rm9yU2Nyb2xsaW5nVHJlZUNv
bW1pdCgpCit7CisgICAgd2FpdEZvclBlbmRpbmdDb21taXRzKCk7Cit9CisKIHZvaWQgVGhyZWFk
ZWRTY3JvbGxpbmdUcmVlOjphcHBseUxheWVyUG9zaXRpb25zKCkKIHsKICAgICB3YWl0Rm9yUGVu
ZGluZ0NvbW1pdHMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
VGhyZWFkZWRTY3JvbGxpbmdUcmVlLmgKaW5kZXggMTY4ZjQwNjEwYjI2YzAyNGFiOTQwMGMzZDc5
MTA3MTFhNDc0MjQ1ZS4uM2I5ZDRkYzBkOWFkOGI3NDFmZGI5YzdhZGMyNGUyODEwN2EyMGE4YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxp
bmdUcmVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3Jv
bGxpbmdUcmVlLmgKQEAgLTc4LDYgKzc4LDcgQEAgcHJvdGVjdGVkOgogcHJpdmF0ZToKICAgICBi
b29sIGlzVGhyZWFkZWRTY3JvbGxpbmdUcmVlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1
ZTsgfQogICAgIHZvaWQgYXBwbHlMYXllclBvc2l0aW9ucygpIG92ZXJyaWRlOworICAgIHZvaWQg
d2FpdEZvclNjcm9sbGluZ1RyZWVDb21taXQoKSBvdmVycmlkZTsKIAogICAgIFJlZlB0cjxBc3lu
Y1Njcm9sbGluZ0Nvb3JkaW5hdG9yPiBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZTc4MWYzNzRmMjk1MDllNTU1OTM5OWM4MThm
NTFkMzdjZGM5OTlhYi4uZjg2MTljMWJkY2Q4ZWU3ZDFkOWFiNDcyYjdjZDlmOWVkNmZiZmE4NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMjgzMiw2ICsyODMyLDI2IEBA
IEV4Y2VwdGlvbk9yPFN0cmluZz4gSW50ZXJuYWxzOjpzY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQo
KSBjb25zdAogICAgIHJldHVybiBwYWdlLT5zY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQoKTsKIH0K
IAorRXhjZXB0aW9uT3I8U3RyaW5nPiBJbnRlcm5hbHM6OnNjcm9sbGluZ1RyZWVBc1RleHQoKSBj
b25zdAoreworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRleHREb2N1bWVudCgpOworICAg
IGlmICghZG9jdW1lbnQgfHwgIWRvY3VtZW50LT5mcmFtZSgpKQorICAgICAgICByZXR1cm4gRXhj
ZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisKKyAgICBkb2N1bWVudC0+dXBkYXRlTGF5
b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CisKKyAgICBhdXRvIHBhZ2UgPSBkb2N1bWVu
dC0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisg
ICAgYXV0byBzY3JvbGxpbmdDb29yZGluYXRvciA9IHBhZ2UtPnNjcm9sbGluZ0Nvb3JkaW5hdG9y
KCk7CisgICAgaWYgKCFzY3JvbGxpbmdDb29yZGluYXRvcikKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworCisgICAgc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPmNvbW1pdFRyZWVTdGF0ZUlmTmVlZGVk
KCk7CisgICAgcmV0dXJuIHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5zY3JvbGxpbmdUcmVlQXNUZXh0
KCk7Cit9CisKIEV4Y2VwdGlvbk9yPFN0cmluZz4gSW50ZXJuYWxzOjptYWluVGhyZWFkU2Nyb2xs
aW5nUmVhc29ucygpIGNvbnN0CiB7CiAgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gY29udGV4dERv
Y3VtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBlZGVhYmFjYWU3YzFi
NTM5ZmMwMzUyZjM3OTVkOGMxY2M3YWY2ZTEwLi5jNzRiYzkyOThkMDg4MGU0MTRlZmVmNDFlMDBj
ZWQ4ODUyZWEyMWE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTM5Myw2ICsz
OTMsNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8Ym9vbD4gc2Nyb2xsYmFyVXNpbmdEYXJr
QXBwZWFyYW5jZShOb2RlKikgY29uc3Q7CiAKICAgICBFeGNlcHRpb25PcjxTdHJpbmc+IHNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dCgpIGNvbnN0OworICAgIEV4Y2VwdGlvbk9yPFN0cmluZz4gc2Ny
b2xsaW5nVHJlZUFzVGV4dCgpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPFN0cmluZz4gbWFpblRo
cmVhZFNjcm9sbGluZ1JlYXNvbnMoKSBjb25zdDsKICAgICBFeGNlcHRpb25PcjxSZWY8RE9NUmVj
dExpc3Q+PiBub25GYXN0U2Nyb2xsYWJsZVJlY3RzKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAppbmRleCA0MzE5NTJlOTY1ZjdlMThjNGY1YjU3NTNhZmI1Mjg0Nzc0
YjI2ZDNlLi4xMGE4Nzc2OGRlODUxN2Q3YmY2YTAzZDdjMDgwYTllNTVkMmQxNWJmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC00MjMsNiArNDIzLDcgQEAgZW51bSBDb21w
b3NpdGluZ1BvbGljeSB7CiAgICAgW01heVRocm93RXhjZXB0aW9uXSBib29sZWFuIHNjcm9sbGJh
clVzaW5nRGFya0FwcGVhcmFuY2Uob3B0aW9uYWwgTm9kZT8gbm9kZSA9IG51bGwpOwogCiAgICAg
W01heVRocm93RXhjZXB0aW9uXSBET01TdHJpbmcgc2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0KCk7
CisgICAgW01heVRocm93RXhjZXB0aW9uXSBET01TdHJpbmcgc2Nyb2xsaW5nVHJlZUFzVGV4dCgp
OwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIG1haW5UaHJlYWRTY3JvbGxpbmdS
ZWFzb25zKCk7IC8vIEZJWE1FOiByZW5hbWUgdG8gc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25z
KCkuCiAgICAgW01heVRocm93RXhjZXB0aW9uXSBET01SZWN0TGlzdCBub25GYXN0U2Nyb2xsYWJs
ZVJlY3RzKCk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCAxNGM2MzA1OTlhNDViNzY2NzAxOTA0MGMyYzgyNjVlYzlkNzc5
MGRiLi5jZTJmNTI5NjhhMTkzYTViOTUyZTdhNTNmNWQ0MDQ4MjMzNjA3NzZhIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMjAtMDQtMTUgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CisKKyAgICAgICAgW0FzeW5jIG92ZXJmbG93IHNjcm9sbGluZ10gU2xvdy1yZXBhaW50
IG92ZXJmbG93IHNjcm9sbCBoYXZlIGZvcmNlIHRoZWlyIGVuY2xvc2luZyBzY3JvbGxlcnMgdG8g
YmUgc2xvdyB0b28KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxMDU5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJh
Y2tncm91bmQtaW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHNjcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1ub24tY2Itb3ZlcmZsb3cuaHRtbDogQWRkZWQuCisgICAg
ICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJh
Y2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tn
cm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHNjcm9sbGlu
Z2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5l
c3RlZC1vdmVyZmxvdzItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzY3JvbGxpbmdj
b29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0
ZWQtb3ZlcmZsb3cyLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA0LTE1ICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtBc3luYyBvdmVyZmxvdyBzY3JvbGxd
IGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBuZWVkcyB0byBkaXNhYmxlIGFzeW5jIG92ZXJm
bG93IHNjcm9sbGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0
b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW5vbi1j
Yi1vdmVyZmxvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRv
ci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0ZWQtbm9uLWNi
LW92ZXJmbG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NjUwMTliYjMwNjYwYWE4NjAxNjMy
NGQyZWI3ZjljZjFlODhjNTdkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xs
aW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4t
bmVzdGVkLW5vbi1jYi1vdmVyZmxvdy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NyBAQAorT3V0
ZXIgc2Nyb2xsaW5nIGNvbnRlbnQKK0lubmVyIHNjcm9sbGluZyBjb250ZW50CitGaXhlZCBiYWNr
Z3JvdW5kCisgCisoc2Nyb2xsaW5nIHRyZWUKKyAgKGZyYW1lIHNjcm9sbGluZyBub2RlCisgICAg
KHNjcm9sbGFibGUgYXJlYSBzaXplIHdpZHRoPTgwMCBoZWlnaHQ9NjAwKQorICAgICh0b3RhbCBj
b250ZW50IHNpemUgd2lkdGg9ODAwIGhlaWdodD02MDApCisgICAgKGxhc3QgY29tbWl0dGVkIHNj
cm9sbCBwb3NpdGlvbiAoMCwwKSkKKyAgICAoc2Nyb2xsYWJsZSBhcmVhIHBhcmFtZXRlcnMgCisg
ICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAyKQorICAgICAgKHZlcnRpY2FsIHNj
cm9sbCBlbGFzdGljaXR5IDIpCisgICAgICAoaG9yaXpvbnRhbCBzY3JvbGxiYXIgbW9kZSAwKQor
ICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBtb2RlIDApKQorICAgIChzeW5jaHJvbm91cyBzY3Jv
bGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IG9iamVjdHMsIEhhcyBzbG93IHJlcGFpbnQg
ZGVzY2VuZGFudCBzY3JvbGxlcnMpCisgICAgKGxheW91dCB2aWV3cG9ydCAoMCwwKSB3aWR0aD04
MDAgaGVpZ2h0PTYwMCkKKyAgICAobWluIGxheW91dFZpZXdwb3J0IG9yaWdpbiAoMCwwKSkKKyAg
ICAobWF4IGxheW91dFZpZXdwb3J0IG9yaWdpbiAoMCwwKSkKKyAgICAoYmVoYXZpb3IgZm9yIGZp
eGVkIDApCisgICAgKG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisgICAgICAoc2Nyb2xsYWJsZSBh
cmVhIHNpemUgd2lkdGg9NDA1IGhlaWdodD0zMDUpCisgICAgICAodG90YWwgY29udGVudCBzaXpl
IHdpZHRoPTQwNSBoZWlnaHQ9MTAyMCkKKyAgICAgIChsYXN0IGNvbW1pdHRlZCBzY3JvbGwgcG9z
aXRpb24gKDAsMCkpCisgICAgICAoc2Nyb2xsYWJsZSBhcmVhIHBhcmFtZXRlcnMgCisgICAgICAg
IChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAgICAgICh2ZXJ0aWNhbCBzY3Jv
bGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAoaG9yaXpvbnRhbCBzY3JvbGxiYXIgbW9kZSAwKQor
ICAgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkKKyAgICAgICAgKGhhcyBlbmFibGVk
IHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgIChzeW5jaHJvbm91cyBzY3JvbGxpbmcgcmVh
c29ucyBIYXMgc2xvdyByZXBhaW50IGRlc2NlbmRhbnQgc2Nyb2xsZXJzKQorICAgICAgKHBvc2l0
aW9uZWQgbm9kZQorICAgICAgICAobGF5b3V0IGNvbnN0cmFpbnRzIAorICAgICAgICAgIChsYXll
ci1wb3NpdGlvbi1hdC1sYXN0LWxheW91dCAoMTAsMTI4KSkpCisgICAgICAgIChyZWxhdGVkIG92
ZXJmbG93IG5vZGVzIDEpCisgICAgICAgIChvdmVyZmxvdyBzY3JvbGxpbmcgbm9kZQorICAgICAg
ICAgIChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3aWR0aD0zNTUgaGVpZ2h0PTMwNSkKKyAgICAgICAg
ICAodG90YWwgY29udGVudCBzaXplIHdpZHRoPTQxMCBoZWlnaHQ9MTAyMCkKKyAgICAgICAgICAo
bGFzdCBjb21taXR0ZWQgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQorICAgICAgICAgIChzY3JvbGxh
YmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFz
dGljaXR5IDApCisgICAgICAgICAgICAodmVydGljYWwgc2Nyb2xsIGVsYXN0aWNpdHkgMCkKKyAg
ICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAgICAodmVy
dGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkKKyAgICAgICAgICAgIChoYXMgZW5hYmxlZCBob3Jpem9u
dGFsIHNjcm9sbGJhciAxKQorICAgICAgICAgICAgKGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9s
bGJhciAxKSkKKyAgICAgICAgICAoc3luY2hyb25vdXMgc2Nyb2xsaW5nIHJlYXNvbnMgSGFzIHNs
b3cgcmVwYWludCBvYmplY3RzKSkpKSkpCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9s
bGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWlu
LW5lc3RlZC1ub24tY2Itb3ZlcmZsb3cuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3Jk
aW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1u
b24tY2Itb3ZlcmZsb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZjA3ZTJmMmI1MTIzZTdjODRlNmZjY2Y0
ZTA3Zjk1MTYzNjYzYWYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsaW5n
Y29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVz
dGVkLW5vbi1jYi1vdmVyZmxvdy5odG1sCkBAIC0wLDAgKzEsNjkgQEAKKzwhRE9DVFlQRSBodG1s
PiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFzeW5jT3ZlcmZsb3dTY3JvbGxp
bmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGlu
ZyB0cmVlIHNob3VsZCBzaG93IHNsb3ctcmVwYWludCByZWFzb25zIG9uIHRoZSBvdmVyZmxvdyBh
bmQgcm9vdCBub2RlczwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgICAKKyAgICAgICAgLm91
dGVyLnNjcm9sbGVyIHsKKyAgICAgICAgICAgIG9wYWNpdHk6IDAuOTsKKyAgICAgICAgfQorICAg
ICAgICAuc2Nyb2xsZXIgeworICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyOwor
ICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICBwYWRkaW5n
OiAxMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAz
MDBweDsKKyAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CisgICAgICAgIH0KKyAgICAgICAg
CisgICAgICAgIC5zY3JvbGxlciAuc2Nyb2xsZXIgeworICAgICAgICAgICAgcG9zaXRpb246IGFi
c29sdXRlOworICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7CisgICAgICAgICAgICB3aWR0
aDogMzUwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICB9CisgICAgICAg
IAorICAgICAgICAuc2Nyb2xsaW5nLWNvbnRlbnQgeworICAgICAgICAgICAgaGVpZ2h0OiAxMDAw
cHg7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5maXhlZC1iYWNrZ3JvdW5kIHsKKyAg
ICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4Owor
ICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IGxpbmVhci1ncmFkaWVudChncmVlbiwgYmx1ZSk7CisgICAgICAgICAgICBiYWNrZ3JvdW5kLWF0
dGFjaG1lbnQ6IGZpeGVkOworICAgICAgICB9CisgICAgICAgIC5maWxsZXIgeworICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAgfQor
ICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxw
ZXIuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgIHdp
bmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4geworICAgICAgICAgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Njcm9sbGluZ1RyZWUnKS5pbm5lclRleHQgPSB3aW5kb3cuaW50ZXJuYWxzLnNjcm9sbGluZ1Ry
ZWVBc1RleHQoKSArICJcbiI7CisgICAgICAgIH0sIGZhbHNlKTsKKyAgICA8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorICAgIDxkaXYgY2xhc3M9Im91dGVyIHNjcm9sbGVyIj4KKyAgICAgICAg
PGRpdiBjbGFzcz0ic2Nyb2xsaW5nLWNvbnRlbnQiPgorICAgICAgICAgICAgT3V0ZXIgc2Nyb2xs
aW5nIGNvbnRlbnQKKyAgICAgICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbGVyIj4KKyAgICAgICAg
ICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxpbmctY29udGVudCI+CisgICAgICAgICAgICAgICAg
ICAgIElubmVyIHNjcm9sbGluZyBjb250ZW50CisgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xh
c3M9ImZpeGVkLWJhY2tncm91bmQiPgorICAgICAgICAgICAgICAgICAgICAgICAgRml4ZWQgYmFj
a2dyb3VuZAorICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgICAgICA8L2Rp
dj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKyAgICA8
cHJlIGlkPSJzY3JvbGxpbmdUcmVlIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5k
cy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQt
YmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4
ZjA5ZjgzNzNlMzFiNTcwNDcxZWJmNjEzNjIzMjg4MjllZmVhNzcKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMv
Zml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNDMgQEAKK091dGVyIHNjcm9sbGluZyBjb250ZW50CitJbm5lciBzY3JvbGxpbmcgY29udGVu
dAorRml4ZWQgYmFja2dyb3VuZAorCisoc2Nyb2xsaW5nIHRyZWUKKyAgKGZyYW1lIHNjcm9sbGlu
ZyBub2RlCisgICAgKHNjcm9sbGFibGUgYXJlYSBzaXplIHdpZHRoPTgwMCBoZWlnaHQ9NjAwKQor
ICAgICh0b3RhbCBjb250ZW50IHNpemUgd2lkdGg9ODAwIGhlaWdodD02MDApCisgICAgKGxhc3Qg
Y29tbWl0dGVkIHNjcm9sbCBwb3NpdGlvbiAoMCwwKSkKKyAgICAoc2Nyb2xsYWJsZSBhcmVhIHBh
cmFtZXRlcnMgCisgICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAyKQorICAgICAg
KHZlcnRpY2FsIHNjcm9sbCBlbGFzdGljaXR5IDIpCisgICAgICAoaG9yaXpvbnRhbCBzY3JvbGxi
YXIgbW9kZSAwKQorICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBtb2RlIDApKQorICAgIChzeW5j
aHJvbm91cyBzY3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IG9iamVjdHMsIEhhcyBz
bG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMpCisgICAgKGxheW91dCB2aWV3cG9ydCAo
MCwwKSB3aWR0aD04MDAgaGVpZ2h0PTYwMCkKKyAgICAobWluIGxheW91dFZpZXdwb3J0IG9yaWdp
biAoMCwwKSkKKyAgICAobWF4IGxheW91dFZpZXdwb3J0IG9yaWdpbiAoMCwwKSkKKyAgICAoYmVo
YXZpb3IgZm9yIGZpeGVkIDApCisgICAgKG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisgICAgICAo
c2Nyb2xsYWJsZSBhcmVhIHNpemUgd2lkdGg9NDA1IGhlaWdodD0zMDUpCisgICAgICAodG90YWwg
Y29udGVudCBzaXplIHdpZHRoPTQwNSBoZWlnaHQ9MTAyMCkKKyAgICAgIChsYXN0IGNvbW1pdHRl
ZCBzY3JvbGwgcG9zaXRpb24gKDAsMCkpCisgICAgICAoc2Nyb2xsYWJsZSBhcmVhIHBhcmFtZXRl
cnMgCisgICAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAgICAgICh2
ZXJ0aWNhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAoaG9yaXpvbnRhbCBzY3JvbGxi
YXIgbW9kZSAwKQorICAgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkKKyAgICAgICAg
KGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgIChzeW5jaHJvbm91cyBz
Y3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IGRlc2NlbmRhbnQgc2Nyb2xsZXJzKQor
ICAgICAgKG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEg
c2l6ZSB3aWR0aD0zNTUgaGVpZ2h0PTMwNSkKKyAgICAgICAgKHRvdGFsIGNvbnRlbnQgc2l6ZSB3
aWR0aD00MTAgaGVpZ2h0PTEwMjApCisgICAgICAgIChsYXN0IGNvbW1pdHRlZCBzY3JvbGwgcG9z
aXRpb24gKDAsMCkpCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAg
ICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAgICh2ZXJ0aWNh
bCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBt
b2RlIDApCisgICAgICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAg
KGhhcyBlbmFibGVkIGhvcml6b250YWwgc2Nyb2xsYmFyIDEpCisgICAgICAgICAgKGhhcyBlbmFi
bGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgICAgKHN5bmNocm9ub3VzIHNjcm9sbGlu
ZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgb2JqZWN0cykpKSkpCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvc2Nyb2xs
aW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4t
bmVzdGVkLW92ZXJmbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjIzOGE2YzYxY2E4MDRkOTI3ZGM1NDVk
YzU5YTUxNTAxOTk3M2I4ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Njcm9sbGlu
Z2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5l
c3RlZC1vdmVyZmxvdy5odG1sCkBAIC0wLDAgKzEsNjMgQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0t
IHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFzeW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFi
bGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGluZyB0cmVl
IHNob3VsZCBzaG93IHNsb3ctcmVwYWludCByZWFzb25zIG9uIHRoZSBvdmVyZmxvdyBhbmQgcm9v
dCBub2RlczwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgICAuc2Nyb2xsZXIgeworICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyOworICAgICAgICAgICAgYm9yZGVyOiAxcHgg
c29saWQgYmxhY2s7CisgICAgICAgICAgICBwYWRkaW5nOiAxMHB4OworICAgICAgICAgICAgd2lk
dGg6IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIG92ZXJm
bG93OiBzY3JvbGw7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5zY3JvbGxlciAuc2Ny
b2xsZXIgeworICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7CisgICAgICAgICAgICB3aWR0
aDogMzUwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICB9CisgICAgICAg
IAorICAgICAgICAuc2Nyb2xsaW5nLWNvbnRlbnQgeworICAgICAgICAgICAgaGVpZ2h0OiAxMDAw
cHg7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5maXhlZC1iYWNrZ3JvdW5kIHsKKyAg
ICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4Owor
ICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IGxpbmVhci1ncmFkaWVudChncmVlbiwgYmx1ZSk7CisgICAgICAgICAgICBiYWNrZ3JvdW5kLWF0
dGFjaG1lbnQ6IGZpeGVkOworICAgICAgICB9CisgICAgICAgIC5maWxsZXIgeworICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAgfQor
ICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgd2luZG93
LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7CisgICAgICAgICAgICBpZiAod2luZG93
LmludGVybmFscykKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2Ny
b2xsaW5nVHJlZScpLmlubmVyVGV4dCA9IHdpbmRvdy5pbnRlcm5hbHMuc2Nyb2xsaW5nVHJlZUFz
VGV4dCgpICsgIlxuIjsKKyAgICAgICAgfSwgZmFsc2UpOworICAgIDwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+CisgICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgorICAgICAgICA8ZGl2IGNsYXNz
PSJzY3JvbGxpbmctY29udGVudCI+CisgICAgICAgICAgICBPdXRlciBzY3JvbGxpbmcgY29udGVu
dAorICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgorICAgICAgICAgICAgICAgIDxk
aXYgY2xhc3M9InNjcm9sbGluZy1jb250ZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgSW5uZXIg
c2Nyb2xsaW5nIGNvbnRlbnQKKyAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZml4ZWQt
YmFja2dyb3VuZCI+CisgICAgICAgICAgICAgICAgICAgICAgICBGaXhlZCBiYWNrZ3JvdW5kCisg
ICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAg
ICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorICAgIDxwcmUgaWQ9InNj
cm9sbGluZ1RyZWUiPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJh
Y2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9z
Y3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3Vu
ZC1pbi1uZXN0ZWQtb3ZlcmZsb3cyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNjE3MWJiOWIy
ZDFkZjZkNjg4NTA5OTM1NTllYTVmYWJlMzJlZGVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJh
Y2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NSBA
QAorT3V0ZXIgc2Nyb2xsaW5nIGNvbnRlbnQKK0lubmVyIHNjcm9sbGluZyBjb250ZW50CitGaXhl
ZCBiYWNrZ3JvdW5kCisKKyhzY3JvbGxpbmcgdHJlZQorICAoZnJhbWUgc2Nyb2xsaW5nIG5vZGUK
KyAgICAoc2Nyb2xsYWJsZSBhcmVhIHNpemUgd2lkdGg9ODAwIGhlaWdodD02MDApCisgICAgKHRv
dGFsIGNvbnRlbnQgc2l6ZSB3aWR0aD04MDAgaGVpZ2h0PTYwMCkKKyAgICAobGFzdCBjb21taXR0
ZWQgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQorICAgIChzY3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVy
cyAKKyAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGljaXR5IDIpCisgICAgICAodmVydGlj
YWwgc2Nyb2xsIGVsYXN0aWNpdHkgMikKKyAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2Rl
IDApCisgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkpCisgICAgKHN5bmNocm9ub3Vz
IHNjcm9sbGluZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgb2JqZWN0cywgSGFzIHNsb3cgcmVw
YWludCBkZXNjZW5kYW50IHNjcm9sbGVycykKKyAgICAobGF5b3V0IHZpZXdwb3J0ICgwLDApIHdp
ZHRoPTgwMCBoZWlnaHQ9NjAwKQorICAgIChtaW4gbGF5b3V0Vmlld3BvcnQgb3JpZ2luICgwLDAp
KQorICAgIChtYXggbGF5b3V0Vmlld3BvcnQgb3JpZ2luICgwLDApKQorICAgIChiZWhhdmlvciBm
b3IgZml4ZWQgMCkKKyAgICAob3ZlcmZsb3cgc2Nyb2xsaW5nIG5vZGUKKyAgICAgIChzY3JvbGxh
YmxlIGFyZWEgc2l6ZSB3aWR0aD00MDUgaGVpZ2h0PTMwNSkKKyAgICAgICh0b3RhbCBjb250ZW50
IHNpemUgd2lkdGg9NDA1IGhlaWdodD0xMDIwKQorICAgICAgKGxhc3QgY29tbWl0dGVkIHNjcm9s
bCBwb3NpdGlvbiAoMCwwKSkKKyAgICAgIChzY3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVycyAKKyAg
ICAgICAgKGhvcml6b250YWwgc2Nyb2xsIGVsYXN0aWNpdHkgMCkKKyAgICAgICAgKHZlcnRpY2Fs
IHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2Rl
IDApCisgICAgICAgICh2ZXJ0aWNhbCBzY3JvbGxiYXIgbW9kZSAwKQorICAgICAgICAoaGFzIGVu
YWJsZWQgdmVydGljYWwgc2Nyb2xsYmFyIDEpKQorICAgICAgKHN5bmNocm9ub3VzIHNjcm9sbGlu
ZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMpKQorICAgIChv
dmVyZmxvdyBzY3JvbGwgcHJveHkgbm9kZQorICAgICAgKHJlbGF0ZWQgb3ZlcmZsb3cgc2Nyb2xs
aW5nIG5vZGUgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQorICAgICAgKG92ZXJmbG93IHNjcm9sbGlu
ZyBub2RlCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3aWR0aD0zNTUgaGVpZ2h0PTMw
NSkKKyAgICAgICAgKHRvdGFsIGNvbnRlbnQgc2l6ZSB3aWR0aD00MTAgaGVpZ2h0PTEwMjApCisg
ICAgICAgIChsYXN0IGNvbW1pdHRlZCBzY3JvbGwgcG9zaXRpb24gKDAsMCkpCisgICAgICAgIChz
Y3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAgICAgICAoaG9yaXpvbnRhbCBzY3JvbGwg
ZWxhc3RpY2l0eSAwKQorICAgICAgICAgICh2ZXJ0aWNhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQor
ICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAgKHZlcnRp
Y2FsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAgKGhhcyBlbmFibGVkIGhvcml6b250YWwg
c2Nyb2xsYmFyIDEpCisgICAgICAgICAgKGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9sbGJhciAx
KSkKKyAgICAgICAgKHN5bmNocm9ub3VzIHNjcm9sbGluZyByZWFzb25zIEhhcyBzbG93IHJlcGFp
bnQgb2JqZWN0cykpKSkpCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3Jk
aW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1v
dmVyZmxvdzIuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhl
ZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdzIuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44MmRhZmZjZDI5MDcxNmY0YjNkNDUwNjY4ZmMzYzQyNTEwMGQ3YTkyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVk
LWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi5odG1sCkBA
IC0wLDAgKzEsNjggQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBb
IGludGVybmFsOkFzeW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1s
PgorPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGluZyB0cmVlIHNob3VsZCBzaG93IHNsb3ctcmVw
YWludCByZWFzb25zIG9uIHRoZSBvdmVyZmxvdyBhbmQgcm9vdCBub2RlczwvdGl0bGU+CisgICAg
PHN0eWxlPgorICAgICAgICAuc2Nyb2xsZXIgeworICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogc2lsdmVyOworICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAg
ICAgICBwYWRkaW5nOiAxMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICAg
ICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CisgICAgICAg
IH0KKyAgICAgICAgCisgICAgICAgIC5yZWxhdGl2ZSB7CisgICAgICAgICAgICBwb3NpdGlvbjog
cmVsYXRpdmU7CisgICAgICAgIH0KKyAgICAgICAgLnNjcm9sbGVyIC5zY3JvbGxlciB7CisgICAg
ICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDsKKyAgICAgICAgICAgIHdpZHRoOiAzNTBweDsKKyAg
ICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5z
Y3JvbGxpbmctY29udGVudCB7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMDBweDsKKyAgICAgICAg
fQorICAgICAgICAKKyAgICAgICAgLmZpeGVkLWJhY2tncm91bmQgeworICAgICAgICAgICAgbWFy
Z2luLXRvcDogMTAwcHg7CisgICAgICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgICAgICBo
ZWlnaHQ6IDMwMHB4OworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRp
ZW50KGdyZWVuLCBibHVlKTsKKyAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4
ZWQ7CisgICAgICAgIH0KKyAgICAgICAgLmZpbGxlciB7CisgICAgICAgICAgICB3aWR0aDogMTAw
cHg7CisgICAgICAgICAgICBoZWlnaHQ6IDI1MHB4OworICAgICAgICB9CisgICAgPC9zdHlsZT4K
KyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0
ZW5lcignbG9hZCcsICgpID0+IHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQor
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzY3JvbGxpbmdUcmVlJyku
aW5uZXJUZXh0ID0gd2luZG93LmludGVybmFscy5zY3JvbGxpbmdUcmVlQXNUZXh0KCkgKyAiXG4i
OworICAgICAgICB9LCBmYWxzZSk7CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAg
ICA8ZGl2IGNsYXNzPSJzY3JvbGxlciI+CisgICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbGluZy1j
b250ZW50Ij4KKyAgICAgICAgICAgIE91dGVyIHNjcm9sbGluZyBjb250ZW50CisgICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJyZWxhdGl2ZSI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Ny
b2xsZXIiPgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxpbmctY29udGVu
dCI+CisgICAgICAgICAgICAgICAgICAgICAgICBJbm5lciBzY3JvbGxpbmcgY29udGVudAorICAg
ICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZml4ZWQtYmFja2dyb3VuZCI+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRml4ZWQgYmFja2dyb3VuZAorICAgICAgICAgICAgICAg
ICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAg
ICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2
PgorICAgIDxwcmUgaWQ9InNjcm9sbGluZ1RyZWUiPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396624</attachid>
            <date>2020-04-15 22:54:17 -0700</date>
            <delta_ts>2020-04-16 08:55:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210591-20200415225416.patch</filename>
            <type>text/plain</type>
            <size>38264</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODdmZjQwZDYyMzA2MGFl
MGQyOTQ2Y2UxYjdmZWRkMmZlYjIzMDY4OS4uYTk5ZWY1ZGI0YjVhYzIzZDhhMDZjOWJjNTdmZWMy
OGYwMzE1OTA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDIwLTA0LTE1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtBc3luYyBvdmVy
ZmxvdyBzY3JvbGxpbmddIFNsb3ctcmVwYWludCBvdmVyZmxvdyBzY3JvbGwgaGF2ZSBmb3JjZSB0
aGVpciBlbmNsb3Npbmcgc2Nyb2xsZXJzIHRvIGJlIHNsb3cgdG9vCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA1OTEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJZiBhbiBvdmVyZmxvdzpzY3JvbGwgaGFz
IGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBpbiB0aGUgY29udGVudHMsIHRoZW4gYm90aCBp
dCBhbmQgYWxsIGl0cyBjb250YWluaW5nLWJsb2NrCisgICAgICAgIHNjcm9sbGluZyBhbmNlc3Rv
cnMgaGF2ZSB0byBiZSBzbG93LXNjcm9sbGluZyB0b28sIGJlY2F1c2Ugc2Nyb2xsaW5nIGFueSBv
ZiB0aGVtIGFmZmVjdHMgdGhlIGxvY2FsIGdlb21ldHJ5CisgICAgICAgIG9mIHRoZSBmaXhlZCBi
YWNrZ3JvdW5kcyB3aGljaCBwYWludCBvbiBzY3JvbGwuCisKKyAgICAgICAgSW1wbGVtZW50IHRo
aXMgYnkgaGF2aW5nIHRoZSBzY3JvbGxpbmcgdHJlZSBkbyBhIHBvc3QtY29tbWl0IHBhc3Mgb3Zl
ciB0aGUgbm9kZXMgd2l0aCBzeW5jIHNjcm9sbGluZyByZWFzb25zCisgICAgICAgICh3aGljaCB3
ZSBjb2xsZWN0IGR1cmluZyB0aGUgY29tbWl0IHBoYXNlKS4gRm9yIGVhY2ggc2xvdy1zY3JvbGxp
bmcgbm9kZSwgd2FsayBpdHMgYW5jZXN0b3IgY2hhaW4gKHZpYQorICAgICAgICBwcm94eSBub2Rl
cyB3aGVuIG5lY2Vzc2FyeSkgYW5kIG1hcmsgdGhlIHNjcm9sbGluZyBub2RlIGFuY2VzdG9ycyB3
aXRoIHRoZSAiRGVzY2VuZGFudFNjcm9sbGVyc0hhdmVTeW5jaHJvbm91c1Njcm9sbGluZyIKKyAg
ICAgICAgcmVhc29uLgorCisgICAgICAgIEZvciB0ZXN0aW5nLCBleHBvc2UgaW50ZXJuYWxzLnNj
cm9sbGluZ1RyZWVBc1RleHQoKSwgd2hpY2ggbmVlZHMgYSBiaXQgb2Ygc3luY2hyb25pemF0aW9u
IHZpYQorICAgICAgICB3YWl0Rm9yU2Nyb2xsaW5nVHJlZUNvbW1pdCgpIHNpbmNlIHRoZSBjb21t
aXQgaGFwcGVucyBvbiB0aGUgc2Nyb2xsaW5nIHRocmVhZC4KKworICAgICAgICBUZXN0czogc2Ny
b2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQt
aW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy5odG1sCisgICAgICAgICAgICAgICBzY3JvbGxpbmdj
b29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0
ZWQtb3ZlcmZsb3cuaHRtbAorICAgICAgICAgICAgICAgc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFj
L2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi5o
dG1sCisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY1Njcm9s
bGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxpbmdUcmVlQXNUZXh0IGNvbnN0KToKKyAgICAgICAgKiBw
YWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmg6CisgICAgICAgICogcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xsaW5nVHJlZUFzVGV4
dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6c3luY2hy
b25vdXNTY3JvbGxpbmdSZWFzb25zQXNUZXh0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9T
Y3JvbGxpbmdDb29yZGluYXRvci5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yVHlwZXMuaDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdU
cmVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWU6OmNvbW1pdFRyZWVTdGF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjp1cGRhdGVUcmVlRnJvbVN0YXRl
Tm9kZVJlY3Vyc2l2ZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpwcm9wYWdh
dGVTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUpOiBEZWxldGVkLgorICAgICAgICAqIHBh
Z2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWU6OndhaXRGb3JTY3JvbGxpbmdUcmVlQ29tbWl0KToKKyAgICAgICAgKiBwYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6Y29tbWl0U3RhdGVBZnRlckNoaWxkcmVuKToKKyAg
ICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5oOgorICAg
ICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpUaHJlYWRlZFNjcm9sbGluZ1RyZWU6OndhaXRGb3JTY3JvbGxpbmdUcmVlQ29t
bWl0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaDoK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRl
cm5hbHM6OnNjcm9sbGluZ1RyZWVBc1RleHQgY29uc3QpOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTA0LTE1
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtBc3lu
YyBvdmVyZmxvdyBzY3JvbGxdIGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBuZWVkcyB0byBk
aXNhYmxlIGFzeW5jIG92ZXJmbG93IHNjcm9sbGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcAppbmRl
eCBmOGU0MjU5MDRjYzdkM2FhNTc4Yzg0NmM4MGI2ZTM3N2ZhMTBjM2Q2Li40OGJiYjhhZTMzOTM3
YjA3ODQyNWE5M2ZlYWE0N2IxNjc1YTQ3MDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcApAQCAt
ODIwLDcgKzgyMCwxNiBAQCBTdHJpbmcgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xs
aW5nU3RhdGVUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVAogICAgICAgICByZXR1cm4g
bV9zY3JvbGxpbmdTdGF0ZVRyZWUtPnJvb3RTdGF0ZU5vZGUoKS0+c2Nyb2xsaW5nU3RhdGVUcmVl
QXNUZXh0KGJlaGF2aW9yKTsKICAgICB9CiAKLSAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgcmV0
dXJuIGVtcHR5U3RyaW5nKCk7Cit9CisKK1N0cmluZyBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
OjpzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yIGJl
aGF2aW9yKSBjb25zdAoreworICAgIGlmICghbV9zY3JvbGxpbmdUcmVlKQorICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKKworICAgIG1fc2Nyb2xsaW5nVHJlZS0+d2FpdEZvclNjcm9sbGlu
Z1RyZWVDb21taXQoKTsKKyAgICByZXR1cm4gbV9zY3JvbGxpbmdUcmVlLT5zY3JvbGxpbmdUcmVl
QXNUZXh0KGJlaGF2aW9yKTsKIH0KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRv
ci5oCmluZGV4IGEyZWQ4YTQxZDcyM2E1NjA1YzhjYjkzOGY2ODZlZGFlM2E4ODYwMmQuLjQ1MjFk
Y2ZjZDI1Y2ZiYTMzZDUxZmFlNGQzNTgxNmQxZTExYjMyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgK
QEAgLTc4LDYgKzc4LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgdXBkYXRlU2Nyb2xsUG9zaXRp
b25BZnRlckFzeW5jU2Nyb2xsKFNjcm9sbGluZ05vZGVJRCwgY29uc3QgRmxvYXRQb2ludCYsIE9w
dGlvbmFsPEZsb2F0UG9pbnQ+IGxheW91dFZpZXdwb3J0T3JpZ2luLCBTY3JvbGxUeXBlLCBTY3Jv
bGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBz
Y3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQoU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVoYXZpb3Ig
PSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvck5vcm1hbCkgY29uc3Qgb3ZlcnJpZGU7
CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHNjcm9sbGluZ1RyZWVBc1RleHQoU2Nyb2xsaW5n
U3RhdGVUcmVlQXNUZXh0QmVoYXZpb3IgPSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlv
ck5vcm1hbCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aWxsQ29t
bWl0VHJlZSgpIG92ZXJyaWRlOwogCiAgICAgYm9vbCBldmVudFRyYWNraW5nUmVnaW9uc0RpcnR5
KCkgY29uc3QgeyByZXR1cm4gbV9ldmVudFRyYWNraW5nUmVnaW9uc0RpcnR5OyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5j
cHAKaW5kZXggYTFjMjM4NWY2MjE0ZTA1YThjN2YxMDg0Zjk5ZTExMDAzMGRjMTUzYS4uZDVkYWEw
OWMwZjQ2MThkMTI3NmY1Y2RlOTMwOTgwMjgyZTcyZWI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcApAQCAtMzg3
LDcgKzM4NywxMiBAQCBTY3JvbGxpbmdOb2RlSUQgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnVuaXF1
ZVNjcm9sbGluZ05vZGVJRCgpCiAKIFN0cmluZyBTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xs
aW5nU3RhdGVUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yKSBjb25z
dAogewotICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKK30K
KworU3RyaW5nIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yKSBjb25zdAoreworICAgIHJldHVybiBlbXB0eVN0
cmluZygpOwogfQogCiBTdHJpbmcgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnN5bmNocm9ub3VzU2Ny
b2xsaW5nUmVhc29uc0FzVGV4dChPcHRpb25TZXQ8U3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24+
IHJlYXNvbnMpCkBAIC0zOTYsMTUgKzQwMSwyMiBAQCBTdHJpbmcgU2Nyb2xsaW5nQ29vcmRpbmF0
b3I6OnN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uc0FzVGV4dChPcHRpb25TZXQ8U3luY2hybwog
CiAgICAgaWYgKHJlYXNvbnMgJiBTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbjo6Rm9yY2VkT25N
YWluVGhyZWFkKQogICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoIkZvcmNlZCBv
biBtYWluIHRocmVhZCwgIik7CisKICAgICBpZiAocmVhc29ucyAmIFN5bmNocm9ub3VzU2Nyb2xs
aW5nUmVhc29uOjpIYXNTbG93UmVwYWludE9iamVjdHMpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiSGFzIHNsb3cgcmVwYWludCBvYmplY3RzLCAiKTsKKwogICAgIGlmIChy
ZWFzb25zICYgU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb246Okhhc1ZpZXdwb3J0Q29uc3RyYWlu
ZWRPYmplY3RzV2l0aG91dFN1cHBvcnRpbmdGaXhlZExheWVycykKICAgICAgICAgc3RyaW5nQnVp
bGRlci5hcHBlbmRMaXRlcmFsKCJIYXMgdmlld3BvcnQgY29uc3RyYWluZWQgb2JqZWN0cyB3aXRo
b3V0IHN1cHBvcnRpbmcgZml4ZWQgbGF5ZXJzLCAiKTsKKwogICAgIGlmIChyZWFzb25zICYgU3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb246Okhhc05vbkxheWVyVmlld3BvcnRDb25zdHJhaW5lZE9i
amVjdHMpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiSGFzIG5vbi1sYXll
ciB2aWV3cG9ydC1jb25zdHJhaW5lZCBvYmplY3RzLCAiKTsKKwogICAgIGlmIChyZWFzb25zICYg
U3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb246OklzSW1hZ2VEb2N1bWVudCkKICAgICAgICAgc3Ry
aW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJJcyBpbWFnZSBkb2N1bWVudCwgIik7CiAKKyAgICBp
ZiAocmVhc29ucyAmIFN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uOjpEZXNjZW5kYW50U2Nyb2xs
ZXJzSGF2ZVN5bmNocm9ub3VzU2Nyb2xsaW5nKQorICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVu
ZExpdGVyYWwoIkhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMsICIpOworCiAg
ICAgaWYgKHN0cmluZ0J1aWxkZXIubGVuZ3RoKCkpCiAgICAgICAgIHN0cmluZ0J1aWxkZXIucmVz
aXplKHN0cmluZ0J1aWxkZXIubGVuZ3RoKCkgLSAyKTsKICAgICByZXR1cm4gc3RyaW5nQnVpbGRl
ci50b1N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Nj
cm9sbGluZ0Nvb3JkaW5hdG9yLmgKaW5kZXggYzhlMjRjYTNmYWVkYmRlNjdmZTQxNjIxZGY1MTNi
NmY4NzBiOGVkOC4uNDI4OTBlYzc1M2FjNWFhYzM3NDcxNGY2NjU5NGQwY2Q2MjAyNjY1NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGlu
YXRvci5oCkBAIC0xNjEsNiArMTYxLDcgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHJl
Y29uY2lsZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllclBvc2l0aW9ucyhTY3JvbGxpbmdOb2RlSUQs
IGNvbnN0IExheW91dFJlY3QmLCBTY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKSB7IH0KICAg
ICB2aXJ0dWFsIFN0cmluZyBzY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHQoU2Nyb2xsaW5nU3RhdGVU
cmVlQXNUZXh0QmVoYXZpb3IgPSBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvck5vcm1h
bCkgY29uc3Q7CisgICAgdmlydHVhbCBTdHJpbmcgc2Nyb2xsaW5nVHJlZUFzVGV4dChTY3JvbGxp
bmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvciA9IFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2
aW9yTm9ybWFsKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVz
cygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlzU2Nyb2xsU25h
cEluUHJvZ3Jlc3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgdm9pZCB1
cGRhdGVTY3JvbGxTbmFwUHJvcGVydGllc1dpdGhGcmFtZVZpZXcoY29uc3QgRnJhbWVWaWV3Jikg
eyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdD
b29yZGluYXRvclR5cGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxp
bmdDb29yZGluYXRvclR5cGVzLmgKaW5kZXggYWYxNGFiYTRkNjhjYWFkNWU1YWIwZDkxYWNiZGQx
ZmY4MTgyMTFkNS4uMWNjYjM5NTkzZThhZjdkMTNmM2E2N2UyN2UxZDlmYmJkZjEwN2I1ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0
b3JUeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nv
b3JkaW5hdG9yVHlwZXMuaApAQCAtMzAsMTEgKzMwLDE0IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGVudW0gY2xhc3MgU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24geworICAgIC8vIEZsYWdz
IGZvciBmcmFtZSBzY3JvbGxpbmcuCiAgICAgRm9yY2VkT25NYWluVGhyZWFkICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDAsCi0gICAgSGFzU2xvd1JlcGFp
bnRPYmplY3RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDEs
Ci0gICAgSGFzVmlld3BvcnRDb25zdHJhaW5lZE9iamVjdHNXaXRob3V0U3VwcG9ydGluZ0ZpeGVk
TGF5ZXJzICAgPSAxIDw8IDIsCi0gICAgSGFzTm9uTGF5ZXJWaWV3cG9ydENvbnN0cmFpbmVkT2Jq
ZWN0cyAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDMsCi0gICAgSXNJbWFnZURvY3VtZW50
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxIDw8IDQKKyAg
ICBIYXNWaWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0c1dpdGhvdXRTdXBwb3J0aW5nRml4ZWRMYXll
cnMgICA9IDEgPDwgMSwKKyAgICBIYXNOb25MYXllclZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3Rz
ICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwgMiwKKyAgICBJc0ltYWdlRG9jdW1lbnQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwgMywKKyAgICAv
LyBGbGFncyBmb3IgZnJhbWUgYW5kIG92ZXJmbG93IHNjcm9sbGluZy4KKyAgICBIYXNTbG93UmVw
YWludE9iamVjdHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDEgPDwg
NCwKKyAgICBEZXNjZW5kYW50U2Nyb2xsZXJzSGF2ZVN5bmNocm9ub3VzU2Nyb2xsaW5nICAgICAg
ICAgICAgICAgICA9IDEgPDwgNSwKIH07CiAKIGVudW0gY2xhc3MgU2Nyb2xsaW5nTm9kZVR5cGUg
OiB1aW50OF90IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Nj
cm9sbGluZ1RyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
VHJlZS5jcHAKaW5kZXggYWY3NGM0NGNiZTZhMzAxOGI4NmNhOTBmOGZkYWFmYjZmNjg1M2U0MS4u
NTU2YWFiMjc5YjgwYzhhNzIyMzU2YzkxNDRhZWRlZWRmZmE0Y2I5NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKQEAgLTQ0LDYgKzQ0LDE4
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAordXNpbmcgT3JwaGFuU2Nyb2xsaW5nTm9kZU1h
cCA9IEhhc2hNYXA8U2Nyb2xsaW5nTm9kZUlELCBSZWZQdHI8U2Nyb2xsaW5nVHJlZU5vZGU+PjsK
Kworc3RydWN0IENvbW1pdFRyZWVTdGF0ZSB7CisgICAgLy8gdW52aXNpdGVkTm9kZXMgc3RhcnRz
IHdpdGggYWxsIG5vZGVzIGluIHRoZSBtYXA7IHdlIHJlbW92ZSBub2RlcyBhcyB3ZSB2aXNpdCB0
aGVtLiBBdCB0aGUgZW5kLCBpdCdzIHRoZSB1bnZpc2l0ZWQgbm9kZXMuCisgICAgLy8gV2UgY2Fu
J3QgdXNlIG9ycGhhbk5vZGVzIGZvciB0aGlzLCBiZWNhdXNlIG9ycGhhbk5vZGVzIHdvbid0IGNv
bnRhaW4gZGVzY2VuZGFudHMgb2YgcmVtb3ZlZCBub2Rlcy4KKyAgICBIYXNoU2V0PFNjcm9sbGlu
Z05vZGVJRD4gdW52aXNpdGVkTm9kZXM7CisgICAgLy8gTm9kZXMgd2l0aCBub24tZW1wdHkgc3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb25zLgorICAgIEhhc2hTZXQ8U2Nyb2xsaW5nTm9kZUlEPiBz
eW5jaHJvbm91c1Njcm9sbGluZ05vZGVzOworICAgIC8vIG9ycGhhbk5vZGVzIGtlZXBzIGNoaWxk
IG5vZGVzIGFsaXZlIHdoaWxlIHdlIHJlYnVpbGQgY2hpbGQgbGlzdHMuCisgICAgT3JwaGFuU2Ny
b2xsaW5nTm9kZU1hcCBvcnBoYW5Ob2RlczsKK307CisKIFNjcm9sbGluZ1RyZWU6OlNjcm9sbGlu
Z1RyZWUoKSA9IGRlZmF1bHQ7CiBTY3JvbGxpbmdUcmVlOjp+U2Nyb2xsaW5nVHJlZSgpID0gZGVm
YXVsdDsKIApAQCAtMTczLDIyICsxODUsMTkgQEAgdm9pZCBTY3JvbGxpbmdUcmVlOjpjb21taXRU
cmVlU3RhdGUoc3RkOjp1bmlxdWVfcHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gc2Nyb2xsaW4KICAg
ICAgICAgaWYgKHJvb3RTdGF0ZU5vZGVDaGFuZ2VkIHx8IHJvb3ROb2RlLT5oYXNDaGFuZ2VkUHJv
cGVydHkoU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGU6OklzTW9uaXRvcmluZ1doZWVs
RXZlbnRzKSkKICAgICAgICAgICAgIG1faXNNb25pdG9yaW5nV2hlZWxFdmVudHMgPSBzY3JvbGxp
bmdTdGF0ZVRyZWUtPnJvb3RTdGF0ZU5vZGUoKS0+aXNNb25pdG9yaW5nV2hlZWxFdmVudHMoKTsK
ICAgICB9Ci0gICAgCi0gICAgLy8gdW52aXNpdGVkTm9kZXMgc3RhcnRzIHdpdGggYWxsIG5vZGVz
IGluIHRoZSBtYXA7IHdlIHJlbW92ZSBub2RlcyBhcyB3ZSB2aXNpdCB0aGVtLiBBdCB0aGUgZW5k
LCBpdCdzIHRoZSB1bnZpc2l0ZWQgbm9kZXMuCi0gICAgLy8gV2UgY2FuJ3QgdXNlIG9ycGhhbk5v
ZGVzIGZvciB0aGlzLCBiZWNhdXNlIG9ycGhhbk5vZGVzIHdvbid0IGNvbnRhaW4gZGVzY2VuZGFu
dHMgb2YgcmVtb3ZlZCBub2Rlcy4KLSAgICBIYXNoU2V0PFNjcm9sbGluZ05vZGVJRD4gdW52aXNp
dGVkTm9kZXM7Ci0gICAgZm9yIChhdXRvIG5vZGVJRCA6IG1fbm9kZU1hcC5rZXlzKCkpCi0gICAg
ICAgIHVudmlzaXRlZE5vZGVzLmFkZChub2RlSUQpOwogCiAgICAgbV9vdmVyZmxvd1JlbGF0ZWRO
b2Rlc01hcC5jbGVhcigpOwogICAgIG1fYWN0aXZlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGVzLmNs
ZWFyKCk7CiAgICAgbV9hY3RpdmVQb3NpdGlvbmVkTm9kZXMuY2xlYXIoKTsKIAotICAgIC8vIG9y
cGhhbk5vZGVzIGtlZXBzIGNoaWxkIG5vZGVzIGFsaXZlIHdoaWxlIHdlIHJlYnVpbGQgY2hpbGQg
bGlzdHMuCi0gICAgT3JwaGFuU2Nyb2xsaW5nTm9kZU1hcCBvcnBoYW5Ob2RlczsKLSAgICB1cGRh
dGVUcmVlRnJvbVN0YXRlTm9kZShyb290Tm9kZSwgb3JwaGFuTm9kZXMsIHVudmlzaXRlZE5vZGVz
KTsKLSAgICAKLSAgICBmb3IgKGF1dG8gbm9kZUlEIDogdW52aXNpdGVkTm9kZXMpIHsKKyAgICBD
b21taXRUcmVlU3RhdGUgY29tbWl0U3RhdGU7CisgICAgZm9yIChhdXRvIG5vZGVJRCA6IG1fbm9k
ZU1hcC5rZXlzKCkpCisgICAgICAgIGNvbW1pdFN0YXRlLnVudmlzaXRlZE5vZGVzLmFkZChub2Rl
SUQpOworCisgICAgdXBkYXRlVHJlZUZyb21TdGF0ZU5vZGVSZWN1cnNpdmUocm9vdE5vZGUsIGNv
bW1pdFN0YXRlKTsKKyAgICBwcm9wYWdhdGVTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMoY29t
bWl0U3RhdGUuc3luY2hyb25vdXNTY3JvbGxpbmdOb2Rlcyk7CisKKyAgICBmb3IgKGF1dG8gbm9k
ZUlEIDogY29tbWl0U3RhdGUudW52aXNpdGVkTm9kZXMpIHsKICAgICAgICAgbV9sYXRjaGluZ0Nv
bnRyb2xsZXIubm9kZVdhc1JlbW92ZWQobm9kZUlEKTsKICAgICAgICAgCiAgICAgICAgIExPRyhT
Y3JvbGxpbmcsICJTY3JvbGxpbmdUcmVlOjpjb21taXRUcmVlU3RhdGUgLSByZW1vdmluZyB1bnZp
c2l0ZWQgbm9kZSAlIiBQUkl1NjQsIG5vZGVJRCk7CkBAIC0xOTgsNyArMjA3LDcgQEAgdm9pZCBT
Y3JvbGxpbmdUcmVlOjpjb21taXRUcmVlU3RhdGUoc3RkOjp1bmlxdWVfcHRyPFNjcm9sbGluZ1N0
YXRlVHJlZT4gc2Nyb2xsaW4KICAgICBMT0dfV0lUSF9TVFJFQU0oU2Nyb2xsaW5nLCBzdHJlYW0g
PDwgImNvbW1pdHRlZCBTY3JvbGxpbmdUcmVlIiA8PCBzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yRGVidWcpKTsKIH0KIAotdm9pZCBTY3JvbGxpbmdU
cmVlOjp1cGRhdGVUcmVlRnJvbVN0YXRlTm9kZShjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUqIHN0
YXRlTm9kZSwgT3JwaGFuU2Nyb2xsaW5nTm9kZU1hcCYgb3JwaGFuTm9kZXMsIEhhc2hTZXQ8U2Ny
b2xsaW5nTm9kZUlEPiYgdW52aXNpdGVkTm9kZXMpCit2b2lkIFNjcm9sbGluZ1RyZWU6OnVwZGF0
ZVRyZWVGcm9tU3RhdGVOb2RlUmVjdXJzaXZlKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSogc3Rh
dGVOb2RlLCBDb21taXRUcmVlU3RhdGUmIHN0YXRlKQogewogICAgIGlmICghc3RhdGVOb2RlKSB7
CiAgICAgICAgIG1fbm9kZU1hcC5jbGVhcigpOwpAQCAtMjE0LDcgKzIyMyw3IEBAIHZvaWQgU2Ny
b2xsaW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUoY29uc3QgU2Nyb2xsaW5nU3RhdGVO
b2RlKiBzdGF0ZU5vZGUsCiAgICAgUmVmUHRyPFNjcm9sbGluZ1RyZWVOb2RlPiBub2RlOwogICAg
IGlmIChpdCAhPSBtX25vZGVNYXAuZW5kKCkpIHsKICAgICAgICAgbm9kZSA9IGl0LT52YWx1ZTsK
LSAgICAgICAgdW52aXNpdGVkTm9kZXMucmVtb3ZlKG5vZGVJRCk7CisgICAgICAgIHN0YXRlLnVu
dmlzaXRlZE5vZGVzLnJlbW92ZShub2RlSUQpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIG5vZGUg
PSBjcmVhdGVTY3JvbGxpbmdUcmVlTm9kZShzdGF0ZU5vZGUtPm5vZGVUeXBlKCksIG5vZGVJRCk7
CiAgICAgICAgIGlmICghcGFyZW50Tm9kZUlEKSB7CkBAIC0yNTEsMTcgKzI2MCwyMiBAQCB2b2lk
IFNjcm9sbGluZ1RyZWU6OnVwZGF0ZVRyZWVGcm9tU3RhdGVOb2RlKGNvbnN0IFNjcm9sbGluZ1N0
YXRlTm9kZSogc3RhdGVOb2RlLAogICAgIC8vIE1vdmUgYWxsIGNoaWxkcmVuIGludG8gdGhlIG9y
cGhhbk5vZGVzIG1hcC4gTGl2ZSBvbmVzIHdpbGwgZ2V0IGFkZGVkIGJhY2sgYXMgd2UgcmVjdXJz
ZSBvdmVyIGNoaWxkcmVuLgogICAgIGZvciAoYXV0byYgY2hpbGRTY3JvbGxpbmdOb2RlIDogbm9k
ZS0+Y2hpbGRyZW4oKSkgewogICAgICAgICBjaGlsZFNjcm9sbGluZ05vZGUtPnNldFBhcmVudChu
dWxscHRyKTsKLSAgICAgICAgb3JwaGFuTm9kZXMuYWRkKGNoaWxkU2Nyb2xsaW5nTm9kZS0+c2Ny
b2xsaW5nTm9kZUlEKCksIGNoaWxkU2Nyb2xsaW5nTm9kZS5wdHIoKSk7CisgICAgICAgIHN0YXRl
Lm9ycGhhbk5vZGVzLmFkZChjaGlsZFNjcm9sbGluZ05vZGUtPnNjcm9sbGluZ05vZGVJRCgpLCBj
aGlsZFNjcm9sbGluZ05vZGUucHRyKCkpOwogICAgIH0KICAgICBub2RlLT5yZW1vdmVBbGxDaGls
ZHJlbigpOwogCiAgICAgLy8gTm93IHVwZGF0ZSB0aGUgY2hpbGRyZW4gaWYgd2UgaGF2ZSBhbnku
CiAgICAgaWYgKGF1dG8gY2hpbGRyZW4gPSBzdGF0ZU5vZGUtPmNoaWxkcmVuKCkpIHsKICAgICAg
ICAgZm9yIChhdXRvJiBjaGlsZCA6ICpjaGlsZHJlbikKLSAgICAgICAgICAgIHVwZGF0ZVRyZWVG
cm9tU3RhdGVOb2RlKGNoaWxkLmdldCgpLCBvcnBoYW5Ob2RlcywgdW52aXNpdGVkTm9kZXMpOwor
ICAgICAgICAgICAgdXBkYXRlVHJlZUZyb21TdGF0ZU5vZGVSZWN1cnNpdmUoY2hpbGQuZ2V0KCks
IHN0YXRlKTsKICAgICB9CiAKICAgICBub2RlLT5jb21taXRTdGF0ZUFmdGVyQ2hpbGRyZW4oKnN0
YXRlTm9kZSk7CisgICAgCisjaWYgRU5BQkxFKFNDUk9MTElOR19USFJFQUQpCisgICAgaWYgKGlz
PFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlPigqbm9kZSkgJiYgIWRvd25jYXN0PFNjcm9sbGlu
Z1RyZWVTY3JvbGxpbmdOb2RlPigqbm9kZSkuc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zKCku
aXNFbXB0eSgpKQorICAgICAgICBzdGF0ZS5zeW5jaHJvbm91c1Njcm9sbGluZ05vZGVzLmFkZChu
b2RlSUQpOworI2VuZGlmCiB9CiAKIHZvaWQgU2Nyb2xsaW5nVHJlZTo6YXBwbHlMYXllclBvc2l0
aW9uc0FmdGVyQ29tbWl0KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL1Njcm9sbGluZ1RyZWUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bGluZ1RyZWUuaAppbmRleCA4ZDMxYjNhZTI4NTgwMWY1ZDI4MmNhMTQ3MjAyZmNmZTgyZDMzOGY5
Li42YzA2ODNhNGJiMzk0ZjlhZmEzY2FmZDRiMTZmZTkyM2E5NGRiZTBmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCkBAIC0xNzAsNiArMTcwLDgg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBsb2NrTGF5ZXJzRm9ySGl0VGVzdGluZygpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCB1bmxvY2tMYXllcnNGb3JIaXRUZXN0aW5nKCkgeyB9CiAKKyAg
ICB2aXJ0dWFsIHZvaWQgd2FpdEZvclNjcm9sbGluZ1RyZWVDb21taXQoKSB7IH0KKwogcHJvdGVj
dGVkOgogICAgIEZsb2F0UG9pbnQgbWFpbkZyYW1lU2Nyb2xsUG9zaXRpb24oKSBjb25zdDsKICAg
ICB2b2lkIHNldE1haW5GcmFtZVNjcm9sbFBvc2l0aW9uKEZsb2F0UG9pbnQpOwpAQCAtMTc3LDgg
KzE3OSw4IEBAIHByb3RlY3RlZDoKICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFNjcm9sbGlu
Z0V2ZW50UmVzdWx0IGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7
CiAKIHByaXZhdGU6Ci0gICAgdXNpbmcgT3JwaGFuU2Nyb2xsaW5nTm9kZU1hcCA9IEhhc2hNYXA8
U2Nyb2xsaW5nTm9kZUlELCBSZWZQdHI8U2Nyb2xsaW5nVHJlZU5vZGU+PjsKLSAgICB2b2lkIHVw
ZGF0ZVRyZWVGcm9tU3RhdGVOb2RlKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSosIE9ycGhhblNj
cm9sbGluZ05vZGVNYXAmLCBIYXNoU2V0PFNjcm9sbGluZ05vZGVJRD4mIHVudmlzaXRlZE5vZGVz
KTsKKyAgICB2b2lkIHVwZGF0ZVRyZWVGcm9tU3RhdGVOb2RlUmVjdXJzaXZlKGNvbnN0IFNjcm9s
bGluZ1N0YXRlTm9kZSosIHN0cnVjdCBDb21taXRUcmVlU3RhdGUmKTsKKyAgICB2aXJ0dWFsIHZv
aWQgcHJvcGFnYXRlU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zKGNvbnN0IEhhc2hTZXQ8U2Ny
b2xsaW5nTm9kZUlEPiYpIHsgfQogCiAgICAgdm9pZCBhcHBseUxheWVyUG9zaXRpb25zUmVjdXJz
aXZlKFNjcm9sbGluZ1RyZWVOb2RlJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcAppbmRleCBm
YzhmNzc3MDljYzcwOTM4ZWEyZjhhNTA3YzBlM2MxNDE2ZDU1ZjA0Li4wMTVkMGNhZmJjMzM3MWE1
MDc0NTQ4MDI0ZDIxZjE3MzI1ZjY4ODhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwCkBAIC0x
MTcsNiArMTE3LDEwIEBAIHZvaWQgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU6OmNvbW1pdFN0
YXRlQWZ0ZXJDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vCiAgICAgICAgIHNjcm9sbGlu
Z1RyZWUoKS5zY3JvbGxpbmdUcmVlTm9kZVJlcXVlc3RzU2Nyb2xsKHNjcm9sbGluZ05vZGVJRCgp
LCByZXF1ZXN0ZWRTY3JvbGxEYXRhLnNjcm9sbFBvc2l0aW9uLCByZXF1ZXN0ZWRTY3JvbGxEYXRh
LnNjcm9sbFR5cGUsIHJlcXVlc3RlZFNjcm9sbERhdGEuY2xhbXBpbmcpOwogICAgIH0KIAorICAg
IC8vIFRoaXMgc3ludGhldGljIGJpdCBpcyBhZGRlZCBiYWNrIGluIFNjcm9sbGluZ1RyZWU6OnBy
b3BhZ2F0ZVN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29ucygpLgorI2lmIEVOQUJMRShTQ1JPTExJ
TkdfVEhSRUFEKQorICAgIG1fc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zLnJlbW92ZShTeW5j
aHJvbm91c1Njcm9sbGluZ1JlYXNvbjo6RGVzY2VuZGFudFNjcm9sbGVyc0hhdmVTeW5jaHJvbm91
c1Njcm9sbGluZyk7CisjZW5kaWYKICAgICBtX2lzRmlyc3RDb21taXQgPSBmYWxzZTsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNj
cm9sbGluZ05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1Ry
ZWVTY3JvbGxpbmdOb2RlLmgKaW5kZXggZjhkM2NjZjE1OTU0YThlYjIwN2NhZDYxNzRkYWIxMDBi
ZTJiMWI4Zi4uMWI1ZDQyYjRkZGYxYTI5MmNmZjM1MWNjMjRhYWVlNjcyYjNkMzNlYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGlu
Z05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVl
U2Nyb2xsaW5nTm9kZS5oCkBAIC03NCw2ICs3NCw3IEBAIHB1YmxpYzoKICAgICAKICNpZiBFTkFC
TEUoU0NST0xMSU5HX1RIUkVBRCkKICAgICBPcHRpb25TZXQ8U3luY2hyb25vdXNTY3JvbGxpbmdS
ZWFzb24+IHN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29ucygpIGNvbnN0IHsgcmV0dXJuIG1fc3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb25zOyB9CisgICAgdm9pZCBhZGRTeW5jaHJvbm91c1Njcm9s
bGluZ1JlYXNvbihTeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbiByZWFzb24pIHsgbV9zeW5jaHJv
bm91c1Njcm9sbGluZ1JlYXNvbnMuYWRkKHJlYXNvbik7IH0KICAgICBib29sIHNob3VsZFVwZGF0
ZVNjcm9sbExheWVyUG9zaXRpb25TeW5jaHJvbm91c2x5KCkgY29uc3QgeyByZXR1cm4gIW1fc3lu
Y2hyb25vdXNTY3JvbGxpbmdSZWFzb25zLmlzRW1wdHkoKTsgfQogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUu
Y3BwCmluZGV4IGQ4M2U3YTdhMjlkNGRjMWZiMzBhNzAwNDEwZTg4NTJmMGYzNDU2YTUuLjk1NDlh
NjBhNGNjOGI2NDJiZWFjYTNmMGEwZWI0MTBkNzkwNmY3MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmNwcApAQCAt
MzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIlNjcm9sbGluZ1RocmVhZC5oIgogI2luY2x1ZGUgIlNj
cm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGUuaCIKICNpbmNsdWRlICJTY3JvbGxpbmdUcmVl
Tm9kZS5oIgorI2luY2x1ZGUgIlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5o
IgogI2luY2x1ZGUgIlNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmgiCiAjaW5jbHVkZSA8d3Rm
L1J1bkxvb3AuaD4KIApAQCAtOTIsNiArOTMsMzIgQEAgdm9pZCBUaHJlYWRlZFNjcm9sbGluZ1Ry
ZWU6OmNvbW1pdFRyZWVTdGF0ZShzdGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPgog
ICAgIGRlY3JlbWVudFBlbmRpbmdDb21taXRDb3VudCgpOwogfQogCit2b2lkIFRocmVhZGVkU2Ny
b2xsaW5nVHJlZTo6cHJvcGFnYXRlU3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zKGNvbnN0IEhh
c2hTZXQ8U2Nyb2xsaW5nTm9kZUlEPiYgc3luY2hyb25vdXNTY3JvbGxpbmdOb2RlcykKK3sKKyAg
ICBhdXRvIHByb3BhZ2F0ZVN0YXRlVG9BbmNlc3RvcnMgPSBbJl0oU2Nyb2xsaW5nVHJlZU5vZGUm
IG5vZGUpIHsKKyAgICAgICAgQVNTRVJUKGlzPFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlPihu
b2RlKSAmJiAhZG93bmNhc3Q8U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU+KG5vZGUpLnN5bmNo
cm9ub3VzU2Nyb2xsaW5nUmVhc29ucygpLmlzRW1wdHkoKSk7CisKKyAgICAgICAgYXV0byBjdXJy
Tm9kZSA9IG5vZGUucGFyZW50KCk7CisgICAgICAgIAorICAgICAgICB3aGlsZSAoY3Vyck5vZGUp
IHsKKyAgICAgICAgICAgIGlmIChpczxTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZT4oY3Vyck5v
ZGUpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2Rl
PigqY3Vyck5vZGUpLmFkZFN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29uKFN5bmNocm9ub3VzU2Ny
b2xsaW5nUmVhc29uOjpEZXNjZW5kYW50U2Nyb2xsZXJzSGF2ZVN5bmNocm9ub3VzU2Nyb2xsaW5n
KTsKKworICAgICAgICAgICAgaWYgKGlzPFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5
Tm9kZT4oY3Vyck5vZGUpKSB7CisgICAgICAgICAgICAgICAgY3Vyck5vZGUgPSBub2RlRm9ySUQo
ZG93bmNhc3Q8U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlPigqY3Vyck5vZGUp
Lm92ZXJmbG93U2Nyb2xsaW5nTm9kZUlEKCkpOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICBjdXJyTm9kZSA9IGN1cnJOb2RlLT5wYXJlbnQo
KTsKKyAgICAgICAgfQorICAgIH07CisKKyAgICBmb3IgKGF1dG8gbm9kZUlEIDogc3luY2hyb25v
dXNTY3JvbGxpbmdOb2RlcykgeworICAgICAgICBpZiAoYXV0byBub2RlID0gbm9kZUZvcklEKG5v
ZGVJRCkpCisgICAgICAgICAgICBwcm9wYWdhdGVTdGF0ZVRvQW5jZXN0b3JzKCpub2RlKTsKKyAg
ICB9Cit9CisKIHZvaWQgVGhyZWFkZWRTY3JvbGxpbmdUcmVlOjpzY3JvbGxpbmdUcmVlTm9kZURp
ZFNjcm9sbChTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZSYgbm9kZSwgU2Nyb2xsaW5nTGF5ZXJQ
b3NpdGlvbkFjdGlvbiBzY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKQogewogICAgIGlmICgh
bV9zY3JvbGxpbmdDb29yZGluYXRvcikKQEAgLTE1NSw2ICsxODIsMTEgQEAgdm9pZCBUaHJlYWRl
ZFNjcm9sbGluZ1RyZWU6OndhaXRGb3JQZW5kaW5nQ29tbWl0cygpCiAgICAgICAgIG1fY29tbWl0
Q29uZGl0aW9uLndhaXQobV9wZW5kaW5nQ29tbWl0Q291bnRNdXRleCk7CiB9CiAKK3ZvaWQgVGhy
ZWFkZWRTY3JvbGxpbmdUcmVlOjp3YWl0Rm9yU2Nyb2xsaW5nVHJlZUNvbW1pdCgpCit7CisgICAg
d2FpdEZvclBlbmRpbmdDb21taXRzKCk7Cit9CisKIHZvaWQgVGhyZWFkZWRTY3JvbGxpbmdUcmVl
OjphcHBseUxheWVyUG9zaXRpb25zKCkKIHsKICAgICB3YWl0Rm9yUGVuZGluZ0NvbW1pdHMoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xs
aW5nVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxp
bmdUcmVlLmgKaW5kZXggMTY4ZjQwNjEwYjI2YzAyNGFiOTQwMGMzZDc5MTA3MTFhNDc0MjQ1ZS4u
NTEzNjUzNjQ5NTkyYWQ4YmZmZTRmMGY2NWUyNDVmN2I0NTgzMDhhYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmgKQEAg
LTc4LDYgKzc4LDggQEAgcHJvdGVjdGVkOgogcHJpdmF0ZToKICAgICBib29sIGlzVGhyZWFkZWRT
Y3JvbGxpbmdUcmVlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHZvaWQg
YXBwbHlMYXllclBvc2l0aW9ucygpIG92ZXJyaWRlOworICAgIHZvaWQgd2FpdEZvclNjcm9sbGlu
Z1RyZWVDb21taXQoKSBvdmVycmlkZTsKKyAgICB2b2lkIHByb3BhZ2F0ZVN5bmNocm9ub3VzU2Ny
b2xsaW5nUmVhc29ucyhjb25zdCBIYXNoU2V0PFNjcm9sbGluZ05vZGVJRD4mKSBvdmVycmlkZTsK
IAogICAgIFJlZlB0cjxBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yPiBtX3Njcm9sbGluZ0Nvb3Jk
aW5hdG9yOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZTc4MWYzNzRm
Mjk1MDllNTU1OTM5OWM4MThmNTFkMzdjZGM5OTlhYi4uZjg2MTljMWJkY2Q4ZWU3ZDFkOWFiNDcy
YjdjZDlmOWVkNmZiZmE4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAt
MjgzMiw2ICsyODMyLDI2IEBAIEV4Y2VwdGlvbk9yPFN0cmluZz4gSW50ZXJuYWxzOjpzY3JvbGxp
bmdTdGF0ZVRyZWVBc1RleHQoKSBjb25zdAogICAgIHJldHVybiBwYWdlLT5zY3JvbGxpbmdTdGF0
ZVRyZWVBc1RleHQoKTsKIH0KIAorRXhjZXB0aW9uT3I8U3RyaW5nPiBJbnRlcm5hbHM6OnNjcm9s
bGluZ1RyZWVBc1RleHQoKSBjb25zdAoreworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRl
eHREb2N1bWVudCgpOworICAgIGlmICghZG9jdW1lbnQgfHwgIWRvY3VtZW50LT5mcmFtZSgpKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisKKyAgICBk
b2N1bWVudC0+dXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CisKKyAgICBh
dXRvIHBhZ2UgPSBkb2N1bWVudC0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0
dXJuIFN0cmluZygpOworCisgICAgYXV0byBzY3JvbGxpbmdDb29yZGluYXRvciA9IHBhZ2UtPnNj
cm9sbGluZ0Nvb3JkaW5hdG9yKCk7CisgICAgaWYgKCFzY3JvbGxpbmdDb29yZGluYXRvcikKKyAg
ICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPmNvbW1p
dFRyZWVTdGF0ZUlmTmVlZGVkKCk7CisgICAgcmV0dXJuIHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5z
Y3JvbGxpbmdUcmVlQXNUZXh0KCk7Cit9CisKIEV4Y2VwdGlvbk9yPFN0cmluZz4gSW50ZXJuYWxz
OjptYWluVGhyZWFkU2Nyb2xsaW5nUmVhc29ucygpIGNvbnN0CiB7CiAgICAgRG9jdW1lbnQqIGRv
Y3VtZW50ID0gY29udGV4dERvY3VtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCBlZGVhYmFjYWU3YzFiNTM5ZmMwMzUyZjM3OTVkOGMxY2M3YWY2ZTEwLi5jNzRiYzkyOThk
MDg4MGU0MTRlZmVmNDFlMDBjZWQ4ODUyZWEyMWE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTM5Myw2ICszOTMsNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8Ym9vbD4g
c2Nyb2xsYmFyVXNpbmdEYXJrQXBwZWFyYW5jZShOb2RlKikgY29uc3Q7CiAKICAgICBFeGNlcHRp
b25PcjxTdHJpbmc+IHNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dCgpIGNvbnN0OworICAgIEV4Y2Vw
dGlvbk9yPFN0cmluZz4gc2Nyb2xsaW5nVHJlZUFzVGV4dCgpIGNvbnN0OwogICAgIEV4Y2VwdGlv
bk9yPFN0cmluZz4gbWFpblRocmVhZFNjcm9sbGluZ1JlYXNvbnMoKSBjb25zdDsKICAgICBFeGNl
cHRpb25PcjxSZWY8RE9NUmVjdExpc3Q+PiBub25GYXN0U2Nyb2xsYWJsZVJlY3RzKCkgY29uc3Q7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA0MzE5NTJlOTY1ZjdlMThj
NGY1YjU3NTNhZmI1Mjg0Nzc0YjI2ZDNlLi4xMGE4Nzc2OGRlODUxN2Q3YmY2YTAzZDdjMDgwYTll
NTVkMmQxNWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC00MjMsNiAr
NDIzLDcgQEAgZW51bSBDb21wb3NpdGluZ1BvbGljeSB7CiAgICAgW01heVRocm93RXhjZXB0aW9u
XSBib29sZWFuIHNjcm9sbGJhclVzaW5nRGFya0FwcGVhcmFuY2Uob3B0aW9uYWwgTm9kZT8gbm9k
ZSA9IG51bGwpOwogCiAgICAgW01heVRocm93RXhjZXB0aW9uXSBET01TdHJpbmcgc2Nyb2xsaW5n
U3RhdGVUcmVlQXNUZXh0KCk7CisgICAgW01heVRocm93RXhjZXB0aW9uXSBET01TdHJpbmcgc2Ny
b2xsaW5nVHJlZUFzVGV4dCgpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIG1h
aW5UaHJlYWRTY3JvbGxpbmdSZWFzb25zKCk7IC8vIEZJWE1FOiByZW5hbWUgdG8gc3luY2hyb25v
dXNTY3JvbGxpbmdSZWFzb25zKCkuCiAgICAgW01heVRocm93RXhjZXB0aW9uXSBET01SZWN0TGlz
dCBub25GYXN0U2Nyb2xsYWJsZVJlY3RzKCk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNGM2MzA1OTlhNDViNzY2NzAx
OTA0MGMyYzgyNjVlYzlkNzc5MGRiLi5jZTJmNTI5NjhhMTkzYTViOTUyZTdhNTNmNWQ0MDQ4MjMz
NjA3NzZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDQtMTUgIFNpbW9uIEZyYXNlciAg
PHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgW0FzeW5jIG92ZXJmbG93IHNjcm9s
bGluZ10gU2xvdy1yZXBhaW50IG92ZXJmbG93IHNjcm9sbCBoYXZlIGZvcmNlIHRoZWlyIGVuY2xv
c2luZyBzY3JvbGxlcnMgdG8gYmUgc2xvdyB0b28KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDU5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJh
Y2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHNjcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhl
ZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1ub24tY2Itb3ZlcmZsb3cu
aHRtbDogQWRkZWQuCisgICAgICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJh
Y2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tn
cm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Lmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHNjcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdzItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBzY3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQt
YmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3cyLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA0LTE1
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtBc3lu
YyBvdmVyZmxvdyBzY3JvbGxdIGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCBuZWVkcyB0byBk
aXNhYmxlIGFzeW5jIG92ZXJmbG93IHNjcm9sbGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91
bmQtaW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9z
Y3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3Vu
ZC1pbi1uZXN0ZWQtbm9uLWNiLW92ZXJmbG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NjUw
MTliYjMwNjYwYWE4NjAxNjMyNGQyZWI3ZjljZjFlODhjNTdkCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2Zp
eGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0NyBAQAorT3V0ZXIgc2Nyb2xsaW5nIGNvbnRlbnQKK0lubmVyIHNjcm9sbGluZyBj
b250ZW50CitGaXhlZCBiYWNrZ3JvdW5kCisgCisoc2Nyb2xsaW5nIHRyZWUKKyAgKGZyYW1lIHNj
cm9sbGluZyBub2RlCisgICAgKHNjcm9sbGFibGUgYXJlYSBzaXplIHdpZHRoPTgwMCBoZWlnaHQ9
NjAwKQorICAgICh0b3RhbCBjb250ZW50IHNpemUgd2lkdGg9ODAwIGhlaWdodD02MDApCisgICAg
KGxhc3QgY29tbWl0dGVkIHNjcm9sbCBwb3NpdGlvbiAoMCwwKSkKKyAgICAoc2Nyb2xsYWJsZSBh
cmVhIHBhcmFtZXRlcnMgCisgICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAyKQor
ICAgICAgKHZlcnRpY2FsIHNjcm9sbCBlbGFzdGljaXR5IDIpCisgICAgICAoaG9yaXpvbnRhbCBz
Y3JvbGxiYXIgbW9kZSAwKQorICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBtb2RlIDApKQorICAg
IChzeW5jaHJvbm91cyBzY3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IG9iamVjdHMs
IEhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMpCisgICAgKGxheW91dCB2aWV3
cG9ydCAoMCwwKSB3aWR0aD04MDAgaGVpZ2h0PTYwMCkKKyAgICAobWluIGxheW91dFZpZXdwb3J0
IG9yaWdpbiAoMCwwKSkKKyAgICAobWF4IGxheW91dFZpZXdwb3J0IG9yaWdpbiAoMCwwKSkKKyAg
ICAoYmVoYXZpb3IgZm9yIGZpeGVkIDApCisgICAgKG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisg
ICAgICAoc2Nyb2xsYWJsZSBhcmVhIHNpemUgd2lkdGg9NDA1IGhlaWdodD0zMDUpCisgICAgICAo
dG90YWwgY29udGVudCBzaXplIHdpZHRoPTQwNSBoZWlnaHQ9MTAyMCkKKyAgICAgIChsYXN0IGNv
bW1pdHRlZCBzY3JvbGwgcG9zaXRpb24gKDAsMCkpCisgICAgICAoc2Nyb2xsYWJsZSBhcmVhIHBh
cmFtZXRlcnMgCisgICAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAg
ICAgICh2ZXJ0aWNhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAoaG9yaXpvbnRhbCBz
Y3JvbGxiYXIgbW9kZSAwKQorICAgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkKKyAg
ICAgICAgKGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgIChzeW5jaHJv
bm91cyBzY3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IGRlc2NlbmRhbnQgc2Nyb2xs
ZXJzKQorICAgICAgKHBvc2l0aW9uZWQgbm9kZQorICAgICAgICAobGF5b3V0IGNvbnN0cmFpbnRz
IAorICAgICAgICAgIChsYXllci1wb3NpdGlvbi1hdC1sYXN0LWxheW91dCAoMTAsMTI4KSkpCisg
ICAgICAgIChyZWxhdGVkIG92ZXJmbG93IG5vZGVzIDEpCisgICAgICAgIChvdmVyZmxvdyBzY3Jv
bGxpbmcgbm9kZQorICAgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3aWR0aD0zNTUgaGVp
Z2h0PTMwNSkKKyAgICAgICAgICAodG90YWwgY29udGVudCBzaXplIHdpZHRoPTQxMCBoZWlnaHQ9
MTAyMCkKKyAgICAgICAgICAobGFzdCBjb21taXR0ZWQgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQor
ICAgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAgICAgICAgIChob3Jp
em9udGFsIHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAgICAgICAgICAodmVydGljYWwgc2Nyb2xs
IGVsYXN0aWNpdHkgMCkKKyAgICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2RlIDAp
CisgICAgICAgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkKKyAgICAgICAgICAgICho
YXMgZW5hYmxlZCBob3Jpem9udGFsIHNjcm9sbGJhciAxKQorICAgICAgICAgICAgKGhhcyBlbmFi
bGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgICAgICAoc3luY2hyb25vdXMgc2Nyb2xs
aW5nIHJlYXNvbnMgSGFzIHNsb3cgcmVwYWludCBvYmplY3RzKSkpKSkpCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9m
aXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1ub24tY2Itb3ZlcmZsb3cuaHRtbCBiL0xheW91dFRl
c3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNr
Z3JvdW5kLWluLW5lc3RlZC1ub24tY2Itb3ZlcmZsb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZjA3ZTJm
MmI1MTIzZTdjODRlNmZjY2Y0ZTA3Zjk1MTYzNjYzYWYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVk
LWJhY2tncm91bmQtaW4tbmVzdGVkLW5vbi1jYi1vdmVyZmxvdy5odG1sCkBAIC0wLDAgKzEsNjkg
QEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFz
eW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHRpdGxlPlNjcm9sbGluZyB0cmVlIHNob3VsZCBzaG93IHNsb3ctcmVwYWludCByZWFzb25z
IG9uIHRoZSBvdmVyZmxvdyBhbmQgcm9vdCBub2RlczwvdGl0bGU+CisgICAgPHN0eWxlPgorICAg
ICAgICAKKyAgICAgICAgLm91dGVyLnNjcm9sbGVyIHsKKyAgICAgICAgICAgIG9wYWNpdHk6IDAu
OTsKKyAgICAgICAgfQorICAgICAgICAuc2Nyb2xsZXIgeworICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogc2lsdmVyOworICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Cisg
ICAgICAgICAgICBwYWRkaW5nOiAxMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAg
ICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7Cisg
ICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5zY3JvbGxlciAuc2Nyb2xsZXIgeworICAgICAg
ICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7
CisgICAgICAgICAgICB3aWR0aDogMzUwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4Owor
ICAgICAgICB9CisgICAgICAgIAorICAgICAgICAuc2Nyb2xsaW5nLWNvbnRlbnQgeworICAgICAg
ICAgICAgaGVpZ2h0OiAxMDAwcHg7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5maXhl
ZC1iYWNrZ3JvdW5kIHsKKyAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4OworICAgICAgICAg
ICAgd2lkdGg6IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAg
IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChncmVlbiwgYmx1ZSk7CisgICAgICAg
ICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkOworICAgICAgICB9CisgICAgICAgIC5m
aWxsZXIgeworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAy
NTBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4gewor
ICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Njcm9sbGluZ1RyZWUnKS5pbm5lclRleHQgPSB3aW5kb3cuaW50
ZXJuYWxzLnNjcm9sbGluZ1RyZWVBc1RleHQoKSArICJcbiI7CisgICAgICAgIH0sIGZhbHNlKTsK
KyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgY2xhc3M9Im91dGVyIHNj
cm9sbGVyIj4KKyAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsaW5nLWNvbnRlbnQiPgorICAgICAg
ICAgICAgT3V0ZXIgc2Nyb2xsaW5nIGNvbnRlbnQKKyAgICAgICAgICAgIDxkaXYgY2xhc3M9InNj
cm9sbGVyIj4KKyAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxpbmctY29udGVudCI+
CisgICAgICAgICAgICAgICAgICAgIElubmVyIHNjcm9sbGluZyBjb250ZW50CisgICAgICAgICAg
ICAgICAgICAgIDxkaXYgY2xhc3M9ImZpeGVkLWJhY2tncm91bmQiPgorICAgICAgICAgICAgICAg
ICAgICAgICAgRml4ZWQgYmFja2dyb3VuZAorICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KKyAg
ICAgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4K
KyAgICA8L2Rpdj4KKyAgICA8cHJlIGlkPSJzY3JvbGxpbmdUcmVlIj48L3ByZT4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21h
Yy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQt
YmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3ctZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmQ4ZjA5ZjgzNzNlMzFiNTcwNDcxZWJmNjEzNjIzMjg4MjllZmVhNzcK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMv
Zml4ZWQtYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3ctZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDMgQEAKK091dGVyIHNjcm9sbGluZyBjb250ZW50CitJbm5l
ciBzY3JvbGxpbmcgY29udGVudAorRml4ZWQgYmFja2dyb3VuZAorCisoc2Nyb2xsaW5nIHRyZWUK
KyAgKGZyYW1lIHNjcm9sbGluZyBub2RlCisgICAgKHNjcm9sbGFibGUgYXJlYSBzaXplIHdpZHRo
PTgwMCBoZWlnaHQ9NjAwKQorICAgICh0b3RhbCBjb250ZW50IHNpemUgd2lkdGg9ODAwIGhlaWdo
dD02MDApCisgICAgKGxhc3QgY29tbWl0dGVkIHNjcm9sbCBwb3NpdGlvbiAoMCwwKSkKKyAgICAo
c2Nyb2xsYWJsZSBhcmVhIHBhcmFtZXRlcnMgCisgICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxh
c3RpY2l0eSAyKQorICAgICAgKHZlcnRpY2FsIHNjcm9sbCBlbGFzdGljaXR5IDIpCisgICAgICAo
aG9yaXpvbnRhbCBzY3JvbGxiYXIgbW9kZSAwKQorICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBt
b2RlIDApKQorICAgIChzeW5jaHJvbm91cyBzY3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBh
aW50IG9iamVjdHMsIEhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBzY3JvbGxlcnMpCisgICAg
KGxheW91dCB2aWV3cG9ydCAoMCwwKSB3aWR0aD04MDAgaGVpZ2h0PTYwMCkKKyAgICAobWluIGxh
eW91dFZpZXdwb3J0IG9yaWdpbiAoMCwwKSkKKyAgICAobWF4IGxheW91dFZpZXdwb3J0IG9yaWdp
biAoMCwwKSkKKyAgICAoYmVoYXZpb3IgZm9yIGZpeGVkIDApCisgICAgKG92ZXJmbG93IHNjcm9s
bGluZyBub2RlCisgICAgICAoc2Nyb2xsYWJsZSBhcmVhIHNpemUgd2lkdGg9NDA1IGhlaWdodD0z
MDUpCisgICAgICAodG90YWwgY29udGVudCBzaXplIHdpZHRoPTQwNSBoZWlnaHQ9MTAyMCkKKyAg
ICAgIChsYXN0IGNvbW1pdHRlZCBzY3JvbGwgcG9zaXRpb24gKDAsMCkpCisgICAgICAoc2Nyb2xs
YWJsZSBhcmVhIHBhcmFtZXRlcnMgCisgICAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGlj
aXR5IDApCisgICAgICAgICh2ZXJ0aWNhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAo
aG9yaXpvbnRhbCBzY3JvbGxiYXIgbW9kZSAwKQorICAgICAgICAodmVydGljYWwgc2Nyb2xsYmFy
IG1vZGUgMCkKKyAgICAgICAgKGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAg
ICAgIChzeW5jaHJvbm91cyBzY3JvbGxpbmcgcmVhc29ucyBIYXMgc2xvdyByZXBhaW50IGRlc2Nl
bmRhbnQgc2Nyb2xsZXJzKQorICAgICAgKG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisgICAgICAg
IChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3aWR0aD0zNTUgaGVpZ2h0PTMwNSkKKyAgICAgICAgKHRv
dGFsIGNvbnRlbnQgc2l6ZSB3aWR0aD00MTAgaGVpZ2h0PTEwMjApCisgICAgICAgIChsYXN0IGNv
bW1pdHRlZCBzY3JvbGwgcG9zaXRpb24gKDAsMCkpCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEg
cGFyYW1ldGVycyAKKyAgICAgICAgICAoaG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQor
ICAgICAgICAgICh2ZXJ0aWNhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAgIChob3Jp
em9udGFsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBt
b2RlIDApCisgICAgICAgICAgKGhhcyBlbmFibGVkIGhvcml6b250YWwgc2Nyb2xsYmFyIDEpCisg
ICAgICAgICAgKGhhcyBlbmFibGVkIHZlcnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgICAgKHN5
bmNocm9ub3VzIHNjcm9sbGluZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgb2JqZWN0cykpKSkp
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhl
ZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdy5odG1sIGIv
TGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2Zp
eGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjIzOGE2
YzYxY2E4MDRkOTI3ZGM1NDVkYzU5YTUxNTAxOTk3M2I4ZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdy5odG1sCkBAIC0wLDAgKzEsNjMgQEAKKzwh
RE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFzeW5jT3Zl
cmZsb3dTY3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPlNjcm9sbGluZyB0cmVlIHNob3VsZCBzaG93IHNsb3ctcmVwYWludCByZWFzb25zIG9uIHRo
ZSBvdmVyZmxvdyBhbmQgcm9vdCBub2RlczwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgICAu
c2Nyb2xsZXIgeworICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyOworICAgICAg
ICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICBwYWRkaW5nOiAxMHB4
OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsK
KyAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CisgICAgICAgIH0KKyAgICAgICAgCisgICAg
ICAgIC5zY3JvbGxlciAuc2Nyb2xsZXIgeworICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7
CisgICAgICAgICAgICB3aWR0aDogMzUwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4Owor
ICAgICAgICB9CisgICAgICAgIAorICAgICAgICAuc2Nyb2xsaW5nLWNvbnRlbnQgeworICAgICAg
ICAgICAgaGVpZ2h0OiAxMDAwcHg7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5maXhl
ZC1iYWNrZ3JvdW5kIHsKKyAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4OworICAgICAgICAg
ICAgd2lkdGg6IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAg
IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChncmVlbiwgYmx1ZSk7CisgICAgICAg
ICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkOworICAgICAgICB9CisgICAgICAgIC5m
aWxsZXIgeworICAgICAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAy
NTBweDsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7CisgICAg
ICAgICAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnc2Nyb2xsaW5nVHJlZScpLmlubmVyVGV4dCA9IHdpbmRvdy5pbnRlcm5h
bHMuc2Nyb2xsaW5nVHJlZUFzVGV4dCgpICsgIlxuIjsKKyAgICAgICAgfSwgZmFsc2UpOworICAg
IDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgor
ICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxpbmctY29udGVudCI+CisgICAgICAgICAgICBPdXRl
ciBzY3JvbGxpbmcgY29udGVudAorICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgor
ICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbGluZy1jb250ZW50Ij4KKyAgICAgICAg
ICAgICAgICAgICAgSW5uZXIgc2Nyb2xsaW5nIGNvbnRlbnQKKyAgICAgICAgICAgICAgICAgICAg
PGRpdiBjbGFzcz0iZml4ZWQtYmFja2dyb3VuZCI+CisgICAgICAgICAgICAgICAgICAgICAgICBG
aXhlZCBiYWNrZ3JvdW5kCisgICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAg
ICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2
PgorICAgIDxwcmUgaWQ9InNjcm9sbGluZ1RyZWUiPjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJh
Y2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMvZml4ZWQtYmFja2dyb3Vu
ZHMvZml4ZWQtYmFja2dyb3VuZC1pbi1uZXN0ZWQtb3ZlcmZsb3cyLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xNjE3MWJiOWIyZDFkZjZkNjg4NTA5OTM1NTllYTVmYWJlMzJlZGVmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL2ZpeGVkLWJh
Y2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVkLW92ZXJmbG93Mi1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0NSBAQAorT3V0ZXIgc2Nyb2xsaW5nIGNvbnRlbnQKK0lubmVyIHNjcm9s
bGluZyBjb250ZW50CitGaXhlZCBiYWNrZ3JvdW5kCisKKyhzY3JvbGxpbmcgdHJlZQorICAoZnJh
bWUgc2Nyb2xsaW5nIG5vZGUKKyAgICAoc2Nyb2xsYWJsZSBhcmVhIHNpemUgd2lkdGg9ODAwIGhl
aWdodD02MDApCisgICAgKHRvdGFsIGNvbnRlbnQgc2l6ZSB3aWR0aD04MDAgaGVpZ2h0PTYwMCkK
KyAgICAobGFzdCBjb21taXR0ZWQgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQorICAgIChzY3JvbGxh
YmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAgIChob3Jpem9udGFsIHNjcm9sbCBlbGFzdGljaXR5
IDIpCisgICAgICAodmVydGljYWwgc2Nyb2xsIGVsYXN0aWNpdHkgMikKKyAgICAgIChob3Jpem9u
dGFsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAodmVydGljYWwgc2Nyb2xsYmFyIG1vZGUgMCkp
CisgICAgKHN5bmNocm9ub3VzIHNjcm9sbGluZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgb2Jq
ZWN0cywgSGFzIHNsb3cgcmVwYWludCBkZXNjZW5kYW50IHNjcm9sbGVycykKKyAgICAobGF5b3V0
IHZpZXdwb3J0ICgwLDApIHdpZHRoPTgwMCBoZWlnaHQ9NjAwKQorICAgIChtaW4gbGF5b3V0Vmll
d3BvcnQgb3JpZ2luICgwLDApKQorICAgIChtYXggbGF5b3V0Vmlld3BvcnQgb3JpZ2luICgwLDAp
KQorICAgIChiZWhhdmlvciBmb3IgZml4ZWQgMCkKKyAgICAob3ZlcmZsb3cgc2Nyb2xsaW5nIG5v
ZGUKKyAgICAgIChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3aWR0aD00MDUgaGVpZ2h0PTMwNSkKKyAg
ICAgICh0b3RhbCBjb250ZW50IHNpemUgd2lkdGg9NDA1IGhlaWdodD0xMDIwKQorICAgICAgKGxh
c3QgY29tbWl0dGVkIHNjcm9sbCBwb3NpdGlvbiAoMCwwKSkKKyAgICAgIChzY3JvbGxhYmxlIGFy
ZWEgcGFyYW1ldGVycyAKKyAgICAgICAgKGhvcml6b250YWwgc2Nyb2xsIGVsYXN0aWNpdHkgMCkK
KyAgICAgICAgKHZlcnRpY2FsIHNjcm9sbCBlbGFzdGljaXR5IDApCisgICAgICAgIChob3Jpem9u
dGFsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICh2ZXJ0aWNhbCBzY3JvbGxiYXIgbW9kZSAw
KQorICAgICAgICAoaGFzIGVuYWJsZWQgdmVydGljYWwgc2Nyb2xsYmFyIDEpKQorICAgICAgKHN5
bmNocm9ub3VzIHNjcm9sbGluZyByZWFzb25zIEhhcyBzbG93IHJlcGFpbnQgZGVzY2VuZGFudCBz
Y3JvbGxlcnMpKQorICAgIChvdmVyZmxvdyBzY3JvbGwgcHJveHkgbm9kZQorICAgICAgKHJlbGF0
ZWQgb3ZlcmZsb3cgc2Nyb2xsaW5nIG5vZGUgc2Nyb2xsIHBvc2l0aW9uICgwLDApKQorICAgICAg
KG92ZXJmbG93IHNjcm9sbGluZyBub2RlCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgc2l6ZSB3
aWR0aD0zNTUgaGVpZ2h0PTMwNSkKKyAgICAgICAgKHRvdGFsIGNvbnRlbnQgc2l6ZSB3aWR0aD00
MTAgaGVpZ2h0PTEwMjApCisgICAgICAgIChsYXN0IGNvbW1pdHRlZCBzY3JvbGwgcG9zaXRpb24g
KDAsMCkpCisgICAgICAgIChzY3JvbGxhYmxlIGFyZWEgcGFyYW1ldGVycyAKKyAgICAgICAgICAo
aG9yaXpvbnRhbCBzY3JvbGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAgICh2ZXJ0aWNhbCBzY3Jv
bGwgZWxhc3RpY2l0eSAwKQorICAgICAgICAgIChob3Jpem9udGFsIHNjcm9sbGJhciBtb2RlIDAp
CisgICAgICAgICAgKHZlcnRpY2FsIHNjcm9sbGJhciBtb2RlIDApCisgICAgICAgICAgKGhhcyBl
bmFibGVkIGhvcml6b250YWwgc2Nyb2xsYmFyIDEpCisgICAgICAgICAgKGhhcyBlbmFibGVkIHZl
cnRpY2FsIHNjcm9sbGJhciAxKSkKKyAgICAgICAgKHN5bmNocm9ub3VzIHNjcm9sbGluZyByZWFz
b25zIEhhcyBzbG93IHJlcGFpbnQgb2JqZWN0cykpKSkpCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNr
Z3JvdW5kLWluLW5lc3RlZC1vdmVyZmxvdzIuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nv
b3JkaW5hdG9yL21hYy9maXhlZC1iYWNrZ3JvdW5kcy9maXhlZC1iYWNrZ3JvdW5kLWluLW5lc3Rl
ZC1vdmVyZmxvdzIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MmRhZmZjZDI5MDcxNmY0YjNkNDUwNjY4ZmMz
YzQyNTEwMGQ3YTkyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29v
cmRpbmF0b3IvbWFjL2ZpeGVkLWJhY2tncm91bmRzL2ZpeGVkLWJhY2tncm91bmQtaW4tbmVzdGVk
LW92ZXJmbG93Mi5odG1sCkBAIC0wLDAgKzEsNjggQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdl
YmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFzeW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVk
PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPlNjcm9sbGluZyB0cmVlIHNo
b3VsZCBzaG93IHNsb3ctcmVwYWludCByZWFzb25zIG9uIHRoZSBvdmVyZmxvdyBhbmQgcm9vdCBu
b2RlczwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAgICAuc2Nyb2xsZXIgeworICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyOworICAgICAgICAgICAgYm9yZGVyOiAxcHggc29s
aWQgYmxhY2s7CisgICAgICAgICAgICBwYWRkaW5nOiAxMHB4OworICAgICAgICAgICAgd2lkdGg6
IDQwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgIG92ZXJmbG93
OiBzY3JvbGw7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIC5yZWxhdGl2ZSB7CisgICAg
ICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgIH0KKyAgICAgICAgLnNjcm9sbGVy
IC5zY3JvbGxlciB7CisgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDsKKyAgICAgICAgICAg
IHdpZHRoOiAzNTBweDsKKyAgICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAgIH0KKyAg
ICAgICAgCisgICAgICAgIC5zY3JvbGxpbmctY29udGVudCB7CisgICAgICAgICAgICBoZWlnaHQ6
IDEwMDBweDsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgLmZpeGVkLWJhY2tncm91bmQg
eworICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7CisgICAgICAgICAgICB3aWR0aDogNDAw
cHg7CisgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICAgICAgYmFja2dyb3VuZC1p
bWFnZTogbGluZWFyLWdyYWRpZW50KGdyZWVuLCBibHVlKTsKKyAgICAgICAgICAgIGJhY2tncm91
bmQtYXR0YWNobWVudDogZml4ZWQ7CisgICAgICAgIH0KKyAgICAgICAgLmZpbGxlciB7CisgICAg
ICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDI1MHB4OworICAgICAg
ICB9CisgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICB3
aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsICgpID0+IHsKKyAgICAgICAgICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdzY3JvbGxpbmdUcmVlJykuaW5uZXJUZXh0ID0gd2luZG93LmludGVybmFscy5zY3JvbGxpbmdU
cmVlQXNUZXh0KCkgKyAiXG4iOworICAgICAgICB9LCBmYWxzZSk7CisgICAgPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGNsYXNzPSJzY3JvbGxlciI+CisgICAgICAgIDxkaXYg
Y2xhc3M9InNjcm9sbGluZy1jb250ZW50Ij4KKyAgICAgICAgICAgIE91dGVyIHNjcm9sbGluZyBj
b250ZW50CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWxhdGl2ZSI+CisgICAgICAgICAgICAg
ICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNz
PSJzY3JvbGxpbmctY29udGVudCI+CisgICAgICAgICAgICAgICAgICAgICAgICBJbm5lciBzY3Jv
bGxpbmcgY29udGVudAorICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZml4ZWQt
YmFja2dyb3VuZCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgRml4ZWQgYmFja2dyb3Vu
ZAorICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDwv
ZGl2PgorICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAg
IDwvZGl2PgorICAgIDwvZGl2PgorICAgIDxwcmUgaWQ9InNjcm9sbGluZ1RyZWUiPjwvcHJlPgor
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>