<?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>126360</bug_id>
          
          <creation_ts>2014-01-01 11:08:39 -0800</creation_ts>
          <short_desc>Updating the scrolling tree should use references to state nodes</short_desc>
          <delta_ts>2014-01-01 11:49:45 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>andersca</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jamesr</cc>
    
    <cc>luiz</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>963613</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-01 11:08:39 -0800</bug_when>
    <thetext>Updating the scrolling tree should use references to state nodes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>963614</commentid>
    <comment_count>1</comment_count>
      <attachid>220187</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-01 11:10:22 -0800</bug_when>
    <thetext>Created attachment 220187
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>963617</commentid>
    <comment_count>2</comment_count>
      <attachid>220187</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-01 11:43:45 -0800</bug_when>
    <thetext>Comment on attachment 220187
Patch

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

&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:76
&gt; +    const ScrollingStateScrollingNode&amp; scrollingStateNode = toScrollingStateScrollingNode(stateNode);

const auto&amp; ?

&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:121
&gt; +    const ScrollingStateScrollingNode&amp; scrollingStateNode = toScrollingStateScrollingNode(stateNode);

const auto&amp;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>963618</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-01 11:49:45 -0800</bug_when>
    <thetext>https://trac.webkit.org/r161194</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>220187</attachid>
            <date>2014-01-01 11:10:22 -0800</date>
            <delta_ts>2014-01-01 11:43:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126360-20140101111022.patch</filename>
            <type>text/plain</type>
            <size>23756</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYxMTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGQ2YWJmZTY4NGE5N2Q1
NTI3MGE3OTdjYmNjMTJlNDAwZDI1OTQ5OS4uMzQ1NmQzNTAyY2E4ZmU3ZDdmMzliYmY2MGY5MTkw
ODQ1YzQ1YThkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM5IEBACiAyMDE0LTAxLTAxICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIFVwZGF0aW5nIHRo
ZSBzY3JvbGxpbmcgdHJlZSBzaG91bGQgdXNlIHJlZmVyZW5jZXMgdG8gc3RhdGUgbm9kZXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNjM2MAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoYW5nZSBmdW5j
dGlvbnMgcmVsYXRlZCB0byBTY3JvbGxpbmdUcmVlTm9kZSB1cGRhdGluZyB0byB0YWtlCisgICAg
ICAgIGNvbnN0IHJlZmVyZW5jZXMgdG8gc3RhdGUgbm9kZXMgcmF0aGVyIHRoYW4gcG9pbnRlcnMu
CisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlTm9kZTo6aGFzQ2hhbmdlZFByb3BlcnR5KToKKyAg
ICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbGluZ1RyZWU6OmNvbW1pdE5ld1RyZWVTdGF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxpbmdUcmVlOjp1cGRhdGVUcmVlRnJvbVN0YXRlTm9kZSk6IFRoZSBub2RlIGNhbiBi
ZSBuaWwgc28KKyAgICAgICAgdGhpcyBjb250aW51ZXMgdG8gdGFrZSBhIHBvaW50ZXIuCisgICAg
ICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpyZW1vdmVEZXN0cm95ZWROb2Rlcyk6CisgICAg
ICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL1Njcm9sbGluZ1RyZWVOb2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdU
cmVlTm9kZTo6dXBkYXRlQWZ0ZXJDaGlsZHJlbik6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZVNjcm9sbGluZ05vZGU6OnVwZGF0ZUJlZm9yZUNoaWxkcmVuKToKKyAgICAgICAgKiBw
YWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5oOgorICAgICAgICAqIHBh
Z2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRml4ZWROb2RlLmg6CisgICAgICAgICogcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGaXhlZE5vZGUubW06CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxpbmdUcmVlRml4ZWROb2RlOjp1cGRhdGVCZWZvcmVDaGlsZHJlbik6CisgICAg
ICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjLmg6
CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2Rl
TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVNYWM6
OnVwZGF0ZUJlZm9yZUNoaWxkcmVuKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVT
Y3JvbGxpbmdOb2RlTWFjOjp1cGRhdGVBZnRlckNoaWxkcmVuKToKKyAgICAgICAgKiBwYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUuaDoKKyAgICAgICAgKiBwYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUubW06CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZTo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4pOgorCisyMDE0
LTAxLTAxICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCiAgICAgICAg
IEFkZCBhIHR5cGVkZWYgZm9yIFBsYXRmb3JtTGF5ZXJJRCBvbiBHcmFwaGljc0xheWVyLCBhbmQg
bWlncmF0ZSBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbiB0byB1c2UgaXQKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNjM0NgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlTm9kZS5oCmluZGV4IGIz
N2E0MjI2M2YxYTI1YWVjMDI2NThiMTdkZTJlODE3MWFlNTkzYzUuLjVkMmFmMjk1NzM3OGExMzc3
ZTRlOTQ1Y2ZlMTkwZDI5YzFlNDA1ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlTm9kZS5oCkBAIC02Miw3ICs2Miw3IEBAIHB1YmxpYzoK
ICAgICB0eXBlZGVmIHVuc2lnbmVkIENoYW5nZWRQcm9wZXJ0aWVzOwogCiAgICAgYm9vbCBoYXND
aGFuZ2VkUHJvcGVydGllcygpIGNvbnN0IHsgcmV0dXJuIG1fY2hhbmdlZFByb3BlcnRpZXM7IH0K
LSAgICBib29sIGhhc0NoYW5nZWRQcm9wZXJ0eSh1bnNpZ25lZCBwcm9wZXJ0eUJpdCkgeyByZXR1
cm4gbV9jaGFuZ2VkUHJvcGVydGllcyAmICgxIDw8IHByb3BlcnR5Qml0KTsgfQorICAgIGJvb2wg
aGFzQ2hhbmdlZFByb3BlcnR5KHVuc2lnbmVkIHByb3BlcnR5Qml0KSBjb25zdCB7IHJldHVybiBt
X2NoYW5nZWRQcm9wZXJ0aWVzICYgKDEgPDwgcHJvcGVydHlCaXQpOyB9CiAgICAgdm9pZCByZXNl
dENoYW5nZWRQcm9wZXJ0aWVzKCkgeyBtX2NoYW5nZWRQcm9wZXJ0aWVzID0gMDsgfQogICAgIHZv
aWQgc2V0UHJvcGVydHlDaGFuZ2VkKHVuc2lnbmVkIHByb3BlcnR5Qml0KSB7IG1fY2hhbmdlZFBy
b3BlcnRpZXMgfD0gKDEgPDwgcHJvcGVydHlCaXQpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKaW5kZXggNzlkMDRiYTQ1Mjg4ZTc2YjNl
YzUwYjU3ZjBlZjVkOWFiZDViYzQ4ZC4uZWU2OTRiODQ5NzE0OTVhOTExZjYwZjJiZTliOTgyM2Zk
MzNmMWNiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
VHJlZS5jcHAKQEAgLTE0NiwxMSArMTQ2LDExIEBAIHZvaWQgU2Nyb2xsaW5nVHJlZTo6Y29tbWl0
TmV3VHJlZVN0YXRlKFBhc3NPd25QdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPiBzY3JvbGxpbmdTCiAg
ICAgYm9vbCBzY3JvbGxSZXF1ZXN0SXNQcm9nYW1tYXRpYyA9IHJvb3ROb2RlID8gcm9vdE5vZGUt
PnJlcXVlc3RlZFNjcm9sbFBvc2l0aW9uUmVwcmVzZW50c1Byb2dyYW1tYXRpY1Njcm9sbCgpIDog
ZmFsc2U7CiAgICAgVGVtcG9yYXJ5Q2hhbmdlPGJvb2w+IGNoYW5nZUhhbmRsaW5nUHJvZ3JhbW1h
dGljU2Nyb2xsKG1faXNIYW5kbGluZ1Byb2dyYW1tYXRpY1Njcm9sbCwgc2Nyb2xsUmVxdWVzdElz
UHJvZ2FtbWF0aWMpOwogCi0gICAgcmVtb3ZlRGVzdHJveWVkTm9kZXMoc2Nyb2xsaW5nU3RhdGVU
cmVlLmdldCgpKTsKKyAgICByZW1vdmVEZXN0cm95ZWROb2Rlcygqc2Nyb2xsaW5nU3RhdGVUcmVl
KTsKICAgICB1cGRhdGVUcmVlRnJvbVN0YXRlTm9kZShyb290Tm9kZSk7CiB9CiAKLXZvaWQgU2Ny
b2xsaW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUoU2Nyb2xsaW5nU3RhdGVOb2RlKiBz
dGF0ZU5vZGUpCit2b2lkIFNjcm9sbGluZ1RyZWU6OnVwZGF0ZVRyZWVGcm9tU3RhdGVOb2RlKGNv
bnN0IFNjcm9sbGluZ1N0YXRlTm9kZSogc3RhdGVOb2RlKQogewogICAgIGlmICghc3RhdGVOb2Rl
KSB7CiAgICAgICAgIG1fbm9kZU1hcC5jbGVhcigpOwpAQCAtMTY1LDcgKzE2NSw3IEBAIHZvaWQg
U2Nyb2xsaW5nVHJlZTo6dXBkYXRlVHJlZUZyb21TdGF0ZU5vZGUoU2Nyb2xsaW5nU3RhdGVOb2Rl
KiBzdGF0ZU5vZGUpCiAgICAgU2Nyb2xsaW5nVHJlZU5vZGUqIG5vZGU7CiAgICAgaWYgKGl0ICE9
IG1fbm9kZU1hcC5lbmQoKSkgewogICAgICAgICBub2RlID0gaXQtPnZhbHVlOwotICAgICAgICBu
b2RlLT51cGRhdGVCZWZvcmVDaGlsZHJlbihzdGF0ZU5vZGUpOworICAgICAgICBub2RlLT51cGRh
dGVCZWZvcmVDaGlsZHJlbigqc3RhdGVOb2RlKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBJ
ZiB0aGUgbm9kZSBpc24ndCBmb3VuZCwgaXQncyBlaXRoZXIgbmV3IGFuZCBuZWVkcyB0byBiZSBh
ZGRlZCB0byB0aGUgdHJlZSwgb3IgdGhlcmUgaXMgYSBuZXcgSUQgZm9yIG91cgogICAgICAgICAv
LyByb290IG5vZGUuCkBAIC0xNzYsNyArMTc2LDcgQEAgdm9pZCBTY3JvbGxpbmdUcmVlOjp1cGRh
dGVUcmVlRnJvbVN0YXRlTm9kZShTY3JvbGxpbmdTdGF0ZU5vZGUqIHN0YXRlTm9kZSkKIAogICAg
ICAgICAgICAgbV9yb290Tm9kZSA9IFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlOjpjcmVhdGUo
KnRoaXMsIG5vZGVJRCk7CiAgICAgICAgICAgICBtX25vZGVNYXAuc2V0KG5vZGVJRCwgbV9yb290
Tm9kZS5nZXQoKSk7Ci0gICAgICAgICAgICBtX3Jvb3ROb2RlLT51cGRhdGVCZWZvcmVDaGlsZHJl
bihzdGF0ZU5vZGUpOworICAgICAgICAgICAgbV9yb290Tm9kZS0+dXBkYXRlQmVmb3JlQ2hpbGRy
ZW4oKnN0YXRlTm9kZSk7CiAgICAgICAgICAgICBub2RlID0gbV9yb290Tm9kZS5nZXQoKTsKICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIE93blB0cjxTY3JvbGxpbmdUcmVlTm9kZT4gbmV3
Tm9kZTsKQEAgLTIwMSw3ICsyMDEsNyBAQCB2b2lkIFNjcm9sbGluZ1RyZWU6OnVwZGF0ZVRyZWVG
cm9tU3RhdGVOb2RlKFNjcm9sbGluZ1N0YXRlTm9kZSogc3RhdGVOb2RlKQogICAgICAgICAgICAg
ICAgIG5ld05vZGUtPnNldFBhcmVudChwYXJlbnQpOwogICAgICAgICAgICAgICAgIHBhcmVudC0+
YXBwZW5kQ2hpbGQobmV3Tm9kZS5yZWxlYXNlKCkpOwogICAgICAgICAgICAgfQotICAgICAgICAg
ICAgbm9kZS0+dXBkYXRlQmVmb3JlQ2hpbGRyZW4oc3RhdGVOb2RlKTsKKyAgICAgICAgICAgIG5v
ZGUtPnVwZGF0ZUJlZm9yZUNoaWxkcmVuKCpzdGF0ZU5vZGUpOwogICAgICAgICB9CiAgICAgfQog
CkBAIC0yMTIsMTIgKzIxMiwxMiBAQCB2b2lkIFNjcm9sbGluZ1RyZWU6OnVwZGF0ZVRyZWVGcm9t
U3RhdGVOb2RlKFNjcm9sbGluZ1N0YXRlTm9kZSogc3RhdGVOb2RlKQogICAgICAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkKICAgICAgICAgICAgIHVwZGF0ZVRyZWVGcm9tU3Rh
dGVOb2RlKHN0YXRlTm9kZUNoaWxkcmVuLT5hdChpKS5nZXQoKSk7CiAgICAgfQotICAgIG5vZGUt
PnVwZGF0ZUFmdGVyQ2hpbGRyZW4oc3RhdGVOb2RlKTsKKyAgICBub2RlLT51cGRhdGVBZnRlckNo
aWxkcmVuKCpzdGF0ZU5vZGUpOwogfQogCi12b2lkIFNjcm9sbGluZ1RyZWU6OnJlbW92ZURlc3Ry
b3llZE5vZGVzKFNjcm9sbGluZ1N0YXRlVHJlZSogc3RhdGVUcmVlKQordm9pZCBTY3JvbGxpbmdU
cmVlOjpyZW1vdmVEZXN0cm95ZWROb2Rlcyhjb25zdCBTY3JvbGxpbmdTdGF0ZVRyZWUmIHN0YXRl
VHJlZSkKIHsKLSAgICBjb25zdCBWZWN0b3I8U2Nyb2xsaW5nTm9kZUlEPiYgcmVtb3ZlZE5vZGVz
ID0gc3RhdGVUcmVlLT5yZW1vdmVkTm9kZXMoKTsKKyAgICBjb25zdCBWZWN0b3I8U2Nyb2xsaW5n
Tm9kZUlEPiYgcmVtb3ZlZE5vZGVzID0gc3RhdGVUcmVlLnJlbW92ZWROb2RlcygpOwogICAgIHNp
emVfdCBzaXplID0gcmVtb3ZlZE5vZGVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IHNpemU7ICsraSkgewogICAgICAgICBTY3JvbGxpbmdUcmVlTm9kZSogbm9kZSA9IG1fbm9k
ZU1hcC50YWtlKHJlbW92ZWROb2Rlc1tpXSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlLmgKaW5kZXggODdjZWNlZWNkZTczMTNkZWZiMGY0MTM1M2U5YjRi
YzVlNjVlMWM5Mi4uZjFiMjhhNWY3NDUzNGJiOTNmMzU1NTc3ZTZlZjBlM2FmNmYzOTkxOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaApAQCAtMTEy
LDggKzExMiw4IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgU2Nyb2xsaW5nVHJl
ZShTY3JvbGxpbmdDb29yZGluYXRvciopOwogCi0gICAgdm9pZCByZW1vdmVEZXN0cm95ZWROb2Rl
cyhTY3JvbGxpbmdTdGF0ZVRyZWUqKTsKLSAgICB2b2lkIHVwZGF0ZVRyZWVGcm9tU3RhdGVOb2Rl
KFNjcm9sbGluZ1N0YXRlTm9kZSopOworICAgIHZvaWQgcmVtb3ZlRGVzdHJveWVkTm9kZXMoY29u
c3QgU2Nyb2xsaW5nU3RhdGVUcmVlJik7CisgICAgdm9pZCB1cGRhdGVUcmVlRnJvbVN0YXRlTm9k
ZShjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUqKTsKIAogICAgIFJlZlB0cjxTY3JvbGxpbmdDb29y
ZGluYXRvcj4gbV9zY3JvbGxpbmdDb29yZGluYXRvcjsKICAgICBPd25QdHI8U2Nyb2xsaW5nVHJl
ZVNjcm9sbGluZ05vZGU+IG1fcm9vdE5vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvU2Nyb2xsaW5nVHJlZU5vZGUuaAppbmRleCA2MWJhZDYyNzRkMGU0MDY4ZmQ0Y2E4
OGE3MmE1NjRlMDNiNzk0OWYyLi45ZWJmNDM0MTQwNDJiZmNmMThiN2EyY2JjODEyY2Q1ZjVmOTEy
MDk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdU
cmVlTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1Ry
ZWVOb2RlLmgKQEAgLTQzLDggKzQzLDggQEAgY2xhc3MgU2Nyb2xsaW5nVHJlZU5vZGUgewogcHVi
bGljOgogICAgIHZpcnR1YWwgflNjcm9sbGluZ1RyZWVOb2RlKCk7CiAKLSAgICB2aXJ0dWFsIHZv
aWQgdXBkYXRlQmVmb3JlQ2hpbGRyZW4oU2Nyb2xsaW5nU3RhdGVOb2RlKikgPSAwOwotICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVBZnRlckNoaWxkcmVuKFNjcm9sbGluZ1N0YXRlTm9kZSopIHsgfQor
ICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0
ZU5vZGUmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUFmdGVyQ2hpbGRyZW4oY29uc3Qg
U2Nyb2xsaW5nU3RhdGVOb2RlJikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFyZW50U2Nyb2xs
UG9zaXRpb25EaWRDaGFuZ2UoY29uc3QgSW50UmVjdCYgdmlld3BvcnRSZWN0LCBjb25zdCBGbG9h
dFNpemUmIGN1bXVsYXRpdmVEZWx0YSkgPSAwOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHAKaW5k
ZXggZDJlYzk2ZDM2NWY5Njg1YTg4ZGFkYjkxYjZlNjhiYzAzMTk2N2UzZi4uYjZlNDNjZTcwZGMy
ODk4Y2MxMjNjOGEwYmNiYjE2ODBiZDdlNWQwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcApA
QCAtNDcsNDEgKzQ3LDQxIEBAIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlOjp+U2Nyb2xsaW5n
VHJlZVNjcm9sbGluZ05vZGUoKQogewogfQogCi12b2lkIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdO
b2RlOjp1cGRhdGVCZWZvcmVDaGlsZHJlbihTY3JvbGxpbmdTdGF0ZU5vZGUqIHN0YXRlTm9kZSkK
K3ZvaWQgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGU6OnVwZGF0ZUJlZm9yZUNoaWxkcmVuKGNv
bnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQogewotICAgIFNjcm9sbGluZ1N0YXRl
U2Nyb2xsaW5nTm9kZSogc3RhdGUgPSB0b1Njcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZShzdGF0
ZU5vZGUpOworICAgIGNvbnN0IFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZSYgc3RhdGUgPSB0
b1Njcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZShzdGF0ZU5vZGUpOwogCi0gICAgaWYgKHN0YXRl
LT5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpWaWV3cG9y
dFJlY3QpKQotICAgICAgICBtX3ZpZXdwb3J0UmVjdCA9IHN0YXRlLT52aWV3cG9ydFJlY3QoKTsK
KyAgICBpZiAoc3RhdGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5n
Tm9kZTo6Vmlld3BvcnRSZWN0KSkKKyAgICAgICAgbV92aWV3cG9ydFJlY3QgPSBzdGF0ZS52aWV3
cG9ydFJlY3QoKTsKIAotICAgIGlmIChzdGF0ZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGlu
Z1N0YXRlU2Nyb2xsaW5nTm9kZTo6VG90YWxDb250ZW50c1NpemUpKSB7CisgICAgaWYgKHN0YXRl
Lmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlRvdGFsQ29u
dGVudHNTaXplKSkgewogICAgICAgICBpZiAoc2Nyb2xsaW5nVHJlZSgpLmlzUnViYmVyQmFuZElu
UHJvZ3Jlc3MoKSkKICAgICAgICAgICAgIG1fdG90YWxDb250ZW50c1NpemVGb3JSdWJiZXJCYW5k
ID0gbV90b3RhbENvbnRlbnRzU2l6ZTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgbV90b3Rh
bENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgPSBzdGF0ZS0+dG90YWxDb250ZW50c1NpemUoKTsK
LSAgICAgICAgbV90b3RhbENvbnRlbnRzU2l6ZSA9IHN0YXRlLT50b3RhbENvbnRlbnRzU2l6ZSgp
OworICAgICAgICAgICAgbV90b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgPSBzdGF0ZS50
b3RhbENvbnRlbnRzU2l6ZSgpOworICAgICAgICBtX3RvdGFsQ29udGVudHNTaXplID0gc3RhdGUu
dG90YWxDb250ZW50c1NpemUoKTsKICAgICB9CiAKLSAgICBpZiAoc3RhdGUtPmhhc0NoYW5nZWRQ
cm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlNjcm9sbE9yaWdpbikpCi0gICAg
ICAgIG1fc2Nyb2xsT3JpZ2luID0gc3RhdGUtPnNjcm9sbE9yaWdpbigpOworICAgIGlmIChzdGF0
ZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpTY3JvbGxP
cmlnaW4pKQorICAgICAgICBtX3Njcm9sbE9yaWdpbiA9IHN0YXRlLnNjcm9sbE9yaWdpbigpOwog
Ci0gICAgaWYgKHN0YXRlLT5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxp
bmdOb2RlOjpTY3JvbGxhYmxlQXJlYVBhcmFtcykpCi0gICAgICAgIG1fc2Nyb2xsYWJsZUFyZWFQ
YXJhbWV0ZXJzID0gc3RhdGUtPnNjcm9sbGFibGVBcmVhUGFyYW1ldGVycygpOworICAgIGlmIChz
dGF0ZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpTY3Jv
bGxhYmxlQXJlYVBhcmFtcykpCisgICAgICAgIG1fc2Nyb2xsYWJsZUFyZWFQYXJhbWV0ZXJzID0g
c3RhdGUuc2Nyb2xsYWJsZUFyZWFQYXJhbWV0ZXJzKCk7CiAKLSAgICBpZiAoc3RhdGUtPmhhc0No
YW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OkZyYW1lU2NhbGVGYWN0
b3IpKQotICAgICAgICBtX2ZyYW1lU2NhbGVGYWN0b3IgPSBzdGF0ZS0+ZnJhbWVTY2FsZUZhY3Rv
cigpOworICAgIGlmIChzdGF0ZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3Jv
bGxpbmdOb2RlOjpGcmFtZVNjYWxlRmFjdG9yKSkKKyAgICAgICAgbV9mcmFtZVNjYWxlRmFjdG9y
ID0gc3RhdGUuZnJhbWVTY2FsZUZhY3RvcigpOwogCi0gICAgaWYgKHN0YXRlLT5oYXNDaGFuZ2Vk
UHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpSZWFzb25zRm9yU3luY2hyb25v
dXNTY3JvbGxpbmcpKQotICAgICAgICBtX3N5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29ucyA9IHN0
YXRlLT5zeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMoKTsKKyAgICBpZiAoc3RhdGUuaGFzQ2hh
bmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6UmVhc29uc0ZvclN5bmNo
cm9ub3VzU2Nyb2xsaW5nKSkKKyAgICAgICAgbV9zeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMg
PSBzdGF0ZS5zeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMoKTsKIAotICAgIGlmIChzdGF0ZS0+
aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6SGVhZGVySGVp
Z2h0KSkKLSAgICAgICAgbV9oZWFkZXJIZWlnaHQgPSBzdGF0ZS0+aGVhZGVySGVpZ2h0KCk7Cisg
ICAgaWYgKHN0YXRlLmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05v
ZGU6OkhlYWRlckhlaWdodCkpCisgICAgICAgIG1faGVhZGVySGVpZ2h0ID0gc3RhdGUuaGVhZGVy
SGVpZ2h0KCk7CiAKLSAgICBpZiAoc3RhdGUtPmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdT
dGF0ZVNjcm9sbGluZ05vZGU6OkZvb3RlckhlaWdodCkpCi0gICAgICAgIG1fZm9vdGVySGVpZ2h0
ID0gc3RhdGUtPmZvb3RlckhlaWdodCgpOworICAgIGlmIChzdGF0ZS5oYXNDaGFuZ2VkUHJvcGVy
dHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpGb290ZXJIZWlnaHQpKQorICAgICAgICBt
X2Zvb3RlckhlaWdodCA9IHN0YXRlLmZvb3RlckhlaWdodCgpOwogCi0gICAgaWYgKHN0YXRlLT5o
YXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpCZWhhdmlvckZv
ckZpeGVkRWxlbWVudHMpKQotICAgICAgICBtX2JlaGF2aW9yRm9yRml4ZWQgPSBzdGF0ZS0+c2Ny
b2xsQmVoYXZpb3JGb3JGaXhlZEVsZW1lbnRzKCk7CisgICAgaWYgKHN0YXRlLmhhc0NoYW5nZWRQ
cm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OkJlaGF2aW9yRm9yRml4ZWRFbGVt
ZW50cykpCisgICAgICAgIG1fYmVoYXZpb3JGb3JGaXhlZCA9IHN0YXRlLnNjcm9sbEJlaGF2aW9y
Rm9yRml4ZWRFbGVtZW50cygpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5n
Tm9kZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9s
bGluZ05vZGUuaAppbmRleCBhYjA5OGM5OWY1N2U3ZDc3Mjk2NTUyMGQwZGQxZWFjYTkwNmVjNGI1
Li4xNjI5MjNiNGZhZmFmZGFhYjdmZTgxNzQ4YWVlYWI0ZWVkMTgyMzU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxp
bmdOb2RlLmgKQEAgLTQ1LDcgKzQ1LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzT3duUHRy
PFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlPiBjcmVhdGUoU2Nyb2xsaW5nVHJlZSYsIFNjcm9s
bGluZ05vZGVJRCk7CiAgICAgdmlydHVhbCB+U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUoKTsK
IAotICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVCZWZvcmVDaGlsZHJlbihTY3JvbGxpbmdTdGF0ZU5v
ZGUqKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlQmVmb3JlQ2hpbGRyZW4oY29u
c3QgU2Nyb2xsaW5nU3RhdGVOb2RlJikgT1ZFUlJJREU7CiAKICAgICAvLyBGSVhNRTogV2Ugc2hv
dWxkIGltcGxlbWVudCB0aGlzIHdoZW4gd2Ugc3VwcG9ydCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5n
Tm9kZXMgYXMgY2hpbGRyZW4uCiAgICAgdmlydHVhbCB2b2lkIHBhcmVudFNjcm9sbFBvc2l0aW9u
RGlkQ2hhbmdlKGNvbnN0IEludFJlY3QmIC8qdmlld3BvcnRSZWN0Ki8sIGNvbnN0IEZsb2F0U2l6
ZSYgLypjdW11bGF0aXZlRGVsdGEqLykgT1ZFUlJJREUgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGaXhlZE5vZGUuaApp
bmRleCAzNmU0MjliNjJiOTg0YmZiZTI0ZjBjNzY1OWRlY2FhZjNmMzAwMGM5Li45NzI2MjBlZDBh
NGNkNTEwYzcxMTk3YzFlYWJkOTQ5NjU5ODcxZWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRml4ZWROb2RlLmgKQEAg
LTQ3LDcgKzQ3LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBTY3JvbGxpbmdUcmVlRml4ZWRO
b2RlKFNjcm9sbGluZ1RyZWUmLCBTY3JvbGxpbmdOb2RlSUQpOwogCi0gICAgdmlydHVhbCB2b2lk
IHVwZGF0ZUJlZm9yZUNoaWxkcmVuKFNjcm9sbGluZ1N0YXRlTm9kZSopIE9WRVJSSURFOworICAg
IHZpcnR1YWwgdm9pZCB1cGRhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5v
ZGUmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyZW50U2Nyb2xsUG9zaXRpb25EaWRD
aGFuZ2UoY29uc3QgSW50UmVjdCYgdmlld3BvcnRSZWN0LCBjb25zdCBGbG9hdFNpemUmIGN1bXVs
YXRpdmVEZWx0YSkgT1ZFUlJJREU7CiAKICAgICBGaXhlZFBvc2l0aW9uVmlld3BvcnRDb25zdHJh
aW50cyBtX2NvbnN0cmFpbnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGaXhlZE5vZGUubW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5tbQppbmRleCAwMmY4MzllNDRl
MmIzYzI3MWU4NzdkZjQ5MmJhNDgzM2U1NTA1MjUwLi5jNDA0YWNkMzA0MTRlNGMyMWMzOTJmYzA5
YzFkYWZlNGFlY2MwN2VhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9tYWMvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5tbQpAQCAtNDcsMTUgKzQ3LDE1
IEBAIFNjcm9sbGluZ1RyZWVGaXhlZE5vZGU6On5TY3JvbGxpbmdUcmVlRml4ZWROb2RlKCkKIHsK
IH0KIAotdm9pZCBTY3JvbGxpbmdUcmVlRml4ZWROb2RlOjp1cGRhdGVCZWZvcmVDaGlsZHJlbihT
Y3JvbGxpbmdTdGF0ZU5vZGUqIHN0YXRlTm9kZSkKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZpeGVkTm9k
ZTo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJiBzdGF0ZU5v
ZGUpCiB7Ci0gICAgU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUqIGZpeGVkU3RhdGVOb2RlID0gdG9T
Y3JvbGxpbmdTdGF0ZUZpeGVkTm9kZShzdGF0ZU5vZGUpOworICAgIGNvbnN0IFNjcm9sbGluZ1N0
YXRlRml4ZWROb2RlJiBmaXhlZFN0YXRlTm9kZSA9IHRvU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUo
c3RhdGVOb2RlKTsKIAotICAgIGlmIChmaXhlZFN0YXRlTm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5
KFNjcm9sbGluZ1N0YXRlTm9kZTo6U2Nyb2xsTGF5ZXIpKQotICAgICAgICBtX2xheWVyID0gZml4
ZWRTdGF0ZU5vZGUtPnBsYXRmb3JtU2Nyb2xsTGF5ZXIoKTsKKyAgICBpZiAoZml4ZWRTdGF0ZU5v
ZGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6U2Nyb2xsTGF5ZXIpKQor
ICAgICAgICBtX2xheWVyID0gZml4ZWRTdGF0ZU5vZGUucGxhdGZvcm1TY3JvbGxMYXllcigpOwog
Ci0gICAgaWYgKHN0YXRlTm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlRml4
ZWROb2RlOjpWaWV3cG9ydENvbnN0cmFpbnRzKSkKLSAgICAgICAgbV9jb25zdHJhaW50cyA9IGZp
eGVkU3RhdGVOb2RlLT52aWV3cG9ydENvbnN0cmFpbnRzKCk7CisgICAgaWYgKHN0YXRlTm9kZS5o
YXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGU6OlZpZXdwb3J0Q29uc3Ry
YWludHMpKQorICAgICAgICBtX2NvbnN0cmFpbnRzID0gZml4ZWRTdGF0ZU5vZGUudmlld3BvcnRD
b25zdHJhaW50cygpOwogfQogCiBzdGF0aWMgaW5saW5lIENHUG9pbnQgb3BlcmF0b3IqKENHUG9p
bnQmIGEsIGNvbnN0IENHU2l6ZSYgYikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZU1hYy5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjLmgK
aW5kZXggNWJlNTM5ZjI3Yjk2OTQ0NWIxZTY1MTA1NzM5OTAxNzVlMWRmNTcyNi4uMDI2OTAzY2Zh
YWE4MTljNzgwNTIwYjU1MGYyM2E3YTdkMWQ0N2JkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxp
bmdOb2RlTWFjLmgKQEAgLTQ0LDggKzQ0LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8v
IFNjcm9sbGluZ1RyZWVOb2RlIG1lbWJlciBmdW5jdGlvbnMuCi0gICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKFNjcm9sbGluZ1N0YXRlTm9kZSopIE9WRVJSSURFOwotICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVBZnRlckNoaWxkcmVuKFNjcm9sbGluZ1N0YXRlTm9kZSopIE9WRVJS
SURFOworICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxp
bmdTdGF0ZU5vZGUmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlQWZ0ZXJDaGls
ZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZv
aWQgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSBPVkVSUklERTsK
IAogICAgIC8vIFNjcm9sbEVsYXN0aWNpdHlDb250cm9sbGVyIG1lbWJlciBmdW5jdGlvbnMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZVNjcm9sbGluZ05vZGVNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMv
U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVNYWMubW0KaW5kZXggZjBhMjljZWE1Y2FmYTMyZjEw
YzdkODg2MmQ0ZTY5MzNjZGI1N2U1ZC4uYWY4NDQ3OTI0YTQwNDYyNWNkZDA0MjBjNGJiNzMyN2M4
M2JlZjA5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Nj
cm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZU1hYy5tbQpAQCAtNzAsMzQg
KzcwLDM0IEBAIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5nVHJlZVNj
cm9sbGluZ05vZGVNYWMoKQogICAgICAgICBDRlJ1bkxvb3BUaW1lckludmFsaWRhdGUobV9zbmFw
UnViYmVyYmFuZFRpbWVyLmdldCgpKTsKIH0KIAotdm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5n
Tm9kZU1hYzo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4oU2Nyb2xsaW5nU3RhdGVOb2RlKiBzdGF0ZU5v
ZGUpCit2b2lkIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjOjp1cGRhdGVCZWZvcmVDaGls
ZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmIHN0YXRlTm9kZSkKIHsKICAgICBTY3JvbGxp
bmdUcmVlU2Nyb2xsaW5nTm9kZTo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4oc3RhdGVOb2RlKTsKLSAg
ICBTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGUqIHNjcm9sbGluZ1N0YXRlTm9kZSA9IHRvU2Ny
b2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlKHN0YXRlTm9kZSk7CisgICAgY29uc3QgU2Nyb2xsaW5n
U3RhdGVTY3JvbGxpbmdOb2RlJiBzY3JvbGxpbmdTdGF0ZU5vZGUgPSB0b1Njcm9sbGluZ1N0YXRl
U2Nyb2xsaW5nTm9kZShzdGF0ZU5vZGUpOwogCi0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS0+
aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6U2Nyb2xsTGF5ZXIpKQotICAg
ICAgICBtX3Njcm9sbExheWVyID0gc2Nyb2xsaW5nU3RhdGVOb2RlLT5wbGF0Zm9ybVNjcm9sbExh
eWVyKCk7CisgICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Ny
b2xsaW5nU3RhdGVOb2RlOjpTY3JvbGxMYXllcikpCisgICAgICAgIG1fc2Nyb2xsTGF5ZXIgPSBz
Y3JvbGxpbmdTdGF0ZU5vZGUucGxhdGZvcm1TY3JvbGxMYXllcigpOwogCi0gICAgaWYgKHNjcm9s
bGluZ1N0YXRlTm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5n
Tm9kZTo6Q291bnRlclNjcm9sbGluZ0xheWVyKSkKLSAgICAgICAgbV9jb3VudGVyU2Nyb2xsaW5n
TGF5ZXIgPSBzY3JvbGxpbmdTdGF0ZU5vZGUtPmNvdW50ZXJTY3JvbGxpbmdQbGF0Zm9ybUxheWVy
KCk7CisgICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xs
aW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpDb3VudGVyU2Nyb2xsaW5nTGF5ZXIpKQorICAgICAgICBt
X2NvdW50ZXJTY3JvbGxpbmdMYXllciA9IHNjcm9sbGluZ1N0YXRlTm9kZS5jb3VudGVyU2Nyb2xs
aW5nUGxhdGZvcm1MYXllcigpOwogCi0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS0+aGFzQ2hh
bmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6SGVhZGVyTGF5ZXIpKQot
ICAgICAgICBtX2hlYWRlckxheWVyID0gc2Nyb2xsaW5nU3RhdGVOb2RlLT5oZWFkZXJQbGF0Zm9y
bUxheWVyKCk7CisgICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHko
U2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpIZWFkZXJMYXllcikpCisgICAgICAgIG1faGVh
ZGVyTGF5ZXIgPSBzY3JvbGxpbmdTdGF0ZU5vZGUuaGVhZGVyUGxhdGZvcm1MYXllcigpOwogCi0g
ICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0
YXRlU2Nyb2xsaW5nTm9kZTo6Rm9vdGVyTGF5ZXIpKQotICAgICAgICBtX2Zvb3RlckxheWVyID0g
c2Nyb2xsaW5nU3RhdGVOb2RlLT5mb290ZXJQbGF0Zm9ybUxheWVyKCk7CisgICAgaWYgKHNjcm9s
bGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdO
b2RlOjpGb290ZXJMYXllcikpCisgICAgICAgIG1fZm9vdGVyTGF5ZXIgPSBzY3JvbGxpbmdTdGF0
ZU5vZGUuZm9vdGVyUGxhdGZvcm1MYXllcigpOwogCi0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9k
ZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6UGFpbnRl
ckZvclNjcm9sbGJhcikpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhclBhaW50ZXIgPSBz
Y3JvbGxpbmdTdGF0ZU5vZGUtPnZlcnRpY2FsU2Nyb2xsYmFyUGFpbnRlcigpOwotICAgICAgICBt
X2hvcml6b250YWxTY3JvbGxiYXJQYWludGVyID0gc2Nyb2xsaW5nU3RhdGVOb2RlLT5ob3Jpem9u
dGFsU2Nyb2xsYmFyUGFpbnRlcigpOworICAgIGlmIChzY3JvbGxpbmdTdGF0ZU5vZGUuaGFzQ2hh
bmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6UGFpbnRlckZvclNjcm9s
bGJhcikpIHsKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhclBhaW50ZXIgPSBzY3JvbGxpbmdT
dGF0ZU5vZGUudmVydGljYWxTY3JvbGxiYXJQYWludGVyKCk7CisgICAgICAgIG1faG9yaXpvbnRh
bFNjcm9sbGJhclBhaW50ZXIgPSBzY3JvbGxpbmdTdGF0ZU5vZGUuaG9yaXpvbnRhbFNjcm9sbGJh
clBhaW50ZXIoKTsKICAgICB9CiAKLSAgICBpZiAoc2Nyb2xsaW5nU3RhdGVOb2RlLT5oYXNDaGFu
Z2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpSZWFzb25zRm9yU3luY2hy
b25vdXNTY3JvbGxpbmcpKSB7CisgICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2Vk
UHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpSZWFzb25zRm9yU3luY2hyb25v
dXNTY3JvbGxpbmcpKSB7CiAgICAgICAgIGlmIChzaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0
aW9uU3luY2hyb25vdXNseSgpKSB7CiAgICAgICAgICAgICAvLyBXZSdyZSB0cmFuc2l0aW9uaW5n
IHRvIHRoZSBzbG93ICJ1cGRhdGUgc2Nyb2xsIGxheWVyIHBvc2l0aW9uIG9uIHRoZSBtYWluIHRo
cmVhZCIgbW9kZS4KICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgdGhlIHByb2JhYmxlIG1haW4g
dGhyZWFkIHNjcm9sbCBwb3NpdGlvbiB3aXRoIHRoZSBjdXJyZW50IHNjcm9sbCBsYXllciBwb3Np
dGlvbi4KLSAgICAgICAgICAgIGlmIChzY3JvbGxpbmdTdGF0ZU5vZGUtPmhhc0NoYW5nZWRQcm9w
ZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlJlcXVlc3RlZFNjcm9sbFBvc2l0aW9u
KSkKLSAgICAgICAgICAgICAgICBtX3Byb2JhYmxlTWFpblRocmVhZFNjcm9sbFBvc2l0aW9uID0g
c2Nyb2xsaW5nU3RhdGVOb2RlLT5yZXF1ZXN0ZWRTY3JvbGxQb3NpdGlvbigpOworICAgICAgICAg
ICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3Rh
dGVTY3JvbGxpbmdOb2RlOjpSZXF1ZXN0ZWRTY3JvbGxQb3NpdGlvbikpCisgICAgICAgICAgICAg
ICAgbV9wcm9iYWJsZU1haW5UaHJlYWRTY3JvbGxQb3NpdGlvbiA9IHNjcm9sbGluZ1N0YXRlTm9k
ZS5yZXF1ZXN0ZWRTY3JvbGxQb3NpdGlvbigpOwogICAgICAgICAgICAgZWxzZSB7CiAgICAgICAg
ICAgICAgICAgQ0dQb2ludCBzY3JvbGxMYXllclBvc2l0aW9uID0gbV9zY3JvbGxMYXllci5nZXQo
KS5wb3NpdGlvbjsKICAgICAgICAgICAgICAgICBtX3Byb2JhYmxlTWFpblRocmVhZFNjcm9sbFBv
c2l0aW9uID0gSW50UG9pbnQoLXNjcm9sbExheWVyUG9zaXRpb24ueCwgLXNjcm9sbExheWVyUG9z
aXRpb24ueSk7CkBAIC0xMDgsMjMgKzEwOCwyMyBAQCB2b2lkIFNjcm9sbGluZ1RyZWVTY3JvbGxp
bmdOb2RlTWFjOjp1cGRhdGVCZWZvcmVDaGlsZHJlbihTY3JvbGxpbmdTdGF0ZU5vZGUqIHN0YQog
ICAgICAgICAgICAgbG9nVGhyZWFkZWRTY3JvbGxpbmdNb2RlKHN5bmNocm9ub3VzU2Nyb2xsaW5n
UmVhc29ucygpKTsKICAgICB9CiAKLSAgICBpZiAoc2Nyb2xsaW5nU3RhdGVOb2RlLT5oYXNDaGFu
Z2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpXaGVlbEV2ZW50SGFuZGxl
ckNvdW50KSkgeworICAgIGlmIChzY3JvbGxpbmdTdGF0ZU5vZGUuaGFzQ2hhbmdlZFByb3BlcnR5
KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6V2hlZWxFdmVudEhhbmRsZXJDb3VudCkpIHsK
ICAgICAgICAgaWYgKHNjcm9sbGluZ1RyZWUoKS5zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdF
bmFibGVkKCkpCi0gICAgICAgICAgICBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZChz
Y3JvbGxpbmdTdGF0ZU5vZGUtPndoZWVsRXZlbnRIYW5kbGVyQ291bnQoKSk7CisgICAgICAgICAg
ICBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZChzY3JvbGxpbmdTdGF0ZU5vZGUud2hl
ZWxFdmVudEhhbmRsZXJDb3VudCgpKTsKICAgICB9CiB9CiAKLXZvaWQgU2Nyb2xsaW5nVHJlZVNj
cm9sbGluZ05vZGVNYWM6OnVwZGF0ZUFmdGVyQ2hpbGRyZW4oU2Nyb2xsaW5nU3RhdGVOb2RlKiBz
dGF0ZU5vZGUpCit2b2lkIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlTWFjOjp1cGRhdGVBZnRl
ckNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQogewogICAgIFNj
cm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlOjp1cGRhdGVBZnRlckNoaWxkcmVuKHN0YXRlTm9kZSk7
CiAKLSAgICBTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGUqIHNjcm9sbGluZ1N0YXRlTm9kZSA9
IHRvU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlKHN0YXRlTm9kZSk7CisgICAgY29uc3QgU2Ny
b2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlJiBzY3JvbGxpbmdTdGF0ZU5vZGUgPSB0b1Njcm9sbGlu
Z1N0YXRlU2Nyb2xsaW5nTm9kZShzdGF0ZU5vZGUpOwogCiAgICAgLy8gVXBkYXRlIHRoZSBzY3Jv
bGwgcG9zaXRpb24gYWZ0ZXIgY2hpbGQgbm9kZXMgaGF2ZSBiZWVuIHVwZGF0ZWQsIGJlY2F1c2Ug
dGhleSBuZWVkIHRvIGhhdmUgdXBkYXRlZCB0aGVpciBjb25zdHJhaW50cyBiZWZvcmUgYW55IHNj
cm9sbGluZyBoYXBwZW5zLgotICAgIGlmIChzY3JvbGxpbmdTdGF0ZU5vZGUtPmhhc0NoYW5nZWRQ
cm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlJlcXVlc3RlZFNjcm9sbFBvc2l0
aW9uKSkKLSAgICAgICAgc2V0U2Nyb2xsUG9zaXRpb24oc2Nyb2xsaW5nU3RhdGVOb2RlLT5yZXF1
ZXN0ZWRTY3JvbGxQb3NpdGlvbigpKTsKKyAgICBpZiAoc2Nyb2xsaW5nU3RhdGVOb2RlLmhhc0No
YW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlJlcXVlc3RlZFNjcm9s
bFBvc2l0aW9uKSkKKyAgICAgICAgc2V0U2Nyb2xsUG9zaXRpb24oc2Nyb2xsaW5nU3RhdGVOb2Rl
LnJlcXVlc3RlZFNjcm9sbFBvc2l0aW9uKCkpOwogCi0gICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9k
ZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6U2Nyb2xsTGF5ZXIpIHx8
IHNjcm9sbGluZ1N0YXRlTm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Ny
b2xsaW5nTm9kZTo6VG90YWxDb250ZW50c1NpemUpIHx8IHNjcm9sbGluZ1N0YXRlTm9kZS0+aGFz
Q2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6Vmlld3BvcnRSZWN0
KSkKKyAgICBpZiAoc2Nyb2xsaW5nU3RhdGVOb2RlLmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxp
bmdTdGF0ZU5vZGU6OlNjcm9sbExheWVyKSB8fCBzY3JvbGxpbmdTdGF0ZU5vZGUuaGFzQ2hhbmdl
ZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6VG90YWxDb250ZW50c1NpemUp
IHx8IHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVT
Y3JvbGxpbmdOb2RlOjpWaWV3cG9ydFJlY3QpKQogICAgICAgICB1cGRhdGVNYWluRnJhbWVQaW5T
dGF0ZShzY3JvbGxQb3NpdGlvbigpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTdGlja3lOb2RlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUuaAppbmRleCA4
MGZmNDAwZTU0OWY1NGIyMzYyMGFlN2YzODhhOTQ1MzViYTBhMWRiLi5jZGE4OTQ4NDVmMzRhYWNj
NGM0NGYzNTRiNDZmZDE0NzM4ZTc1YTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUuaApAQCAtNDcs
NyArNDcsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNjcm9sbGluZ1RyZWVTdGlja3lOb2Rl
KFNjcm9sbGluZ1RyZWUmLCBTY3JvbGxpbmdOb2RlSUQpOwogCi0gICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKFNjcm9sbGluZ1N0YXRlTm9kZSopIE9WRVJSSURFOworICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUm
KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyZW50U2Nyb2xsUG9zaXRpb25EaWRDaGFu
Z2UoY29uc3QgSW50UmVjdCYgdmlld3BvcnRSZWN0LCBjb25zdCBGbG9hdFNpemUmIGN1bXVsYXRp
dmVEZWx0YSkgT1ZFUlJJREU7CiAKICAgICBTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWlu
dHMgbV9jb25zdHJhaW50czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL21hYy9TY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZS5tbQppbmRleCBiNWY2YTRlNWU1
MjU2ZDNkNTlhNDYxMzA1MmZjZjk2MzljNjAwY2U0Li5jMTQ4NTcyNmJjMDQ3YmNkZGJmNWI2ZWJl
OTM4ZTg2NjQzZGRlMjc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9tYWMvU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTdGlja3lOb2RlLm1tCkBAIC00NywxNSArNDcs
MTUgQEAgU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGU6On5TY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZSgp
CiB7CiB9CiAKLXZvaWQgU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGU6OnVwZGF0ZUJlZm9yZUNoaWxk
cmVuKFNjcm9sbGluZ1N0YXRlTm9kZSogc3RhdGVOb2RlKQordm9pZCBTY3JvbGxpbmdUcmVlU3Rp
Y2t5Tm9kZTo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJiBz
dGF0ZU5vZGUpCiB7Ci0gICAgU2Nyb2xsaW5nU3RhdGVTdGlja3lOb2RlKiBzdGlja3lTdGF0ZU5v
ZGUgPSB0b1Njcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZShzdGF0ZU5vZGUpOworICAgIGNvbnN0IFNj
cm9sbGluZ1N0YXRlU3RpY2t5Tm9kZSYgc3RpY2t5U3RhdGVOb2RlID0gdG9TY3JvbGxpbmdTdGF0
ZVN0aWNreU5vZGUoc3RhdGVOb2RlKTsKIAotICAgIGlmIChzdGlja3lTdGF0ZU5vZGUtPmhhc0No
YW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZU5vZGU6OlNjcm9sbExheWVyKSkKLSAgICAgICAg
bV9sYXllciA9IHN0aWNreVN0YXRlTm9kZS0+cGxhdGZvcm1TY3JvbGxMYXllcigpOworICAgIGlm
IChzdGlja3lTdGF0ZU5vZGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6
U2Nyb2xsTGF5ZXIpKQorICAgICAgICBtX2xheWVyID0gc3RpY2t5U3RhdGVOb2RlLnBsYXRmb3Jt
U2Nyb2xsTGF5ZXIoKTsKIAotICAgIGlmIChzdGF0ZU5vZGUtPmhhc0NoYW5nZWRQcm9wZXJ0eShT
Y3JvbGxpbmdTdGF0ZVN0aWNreU5vZGU6OlZpZXdwb3J0Q29uc3RyYWludHMpKQotICAgICAgICBt
X2NvbnN0cmFpbnRzID0gc3RpY2t5U3RhdGVOb2RlLT52aWV3cG9ydENvbnN0cmFpbnRzKCk7Cisg
ICAgaWYgKHN0YXRlTm9kZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTdGlja3lO
b2RlOjpWaWV3cG9ydENvbnN0cmFpbnRzKSkKKyAgICAgICAgbV9jb25zdHJhaW50cyA9IHN0aWNr
eVN0YXRlTm9kZS52aWV3cG9ydENvbnN0cmFpbnRzKCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgQ0dQ
b2ludCBvcGVyYXRvciooQ0dQb2ludCYgYSwgY29uc3QgQ0dTaXplJiBiKQo=
</data>
<flag name="review"
          id="243870"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>