<?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>126493</bug_id>
          
          <creation_ts>2014-01-04 13:00:45 -0800</creation_ts>
          <short_desc>Prepare the ScrollingTree for remote use</short_desc>
          <delta_ts>2014-01-04 13:44:24 -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>eflews.bot</cc>
    
    <cc>gyuyoung.kim</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>964426</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-04 13:00:45 -0800</bug_when>
    <thetext>Prepare the ScrollingTree for remote use</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964427</commentid>
    <comment_count>1</comment_count>
      <attachid>220379</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-04 13:05:17 -0800</bug_when>
    <thetext>Created attachment 220379
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964428</commentid>
    <comment_count>2</comment_count>
      <attachid>220379</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-01-04 13:10:23 -0800</bug_when>
    <thetext>Comment on attachment 220379
Patch

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

&gt; Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp:76
&gt; +        static_cast&lt;GraphicsLayer*&gt;(layer())-&gt;syncPosition(position);

Should we have some checked casts for this?

&gt; Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp:79
&gt;      // The cloned tree references PlatformLayers, which are safe to send to the scrolling thread.
&gt;      // FIXME: this Mac threaded-scrolling assumption doesn&apos;t belong here.

Does this comment still hold? You removed a similar one above.

&gt; Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp:76
&gt; +        static_cast&lt;GraphicsLayer*&gt;(layer())-&gt;syncPosition(position);

Checked cast?

&gt; Source/WebCore/page/scrolling/ScrollingStateTree.cpp:201
&gt; +void ScrollingStateTree::setRemovedNodes(const Vector&lt;ScrollingNodeID&gt;&amp; nodes)
&gt; +{
&gt; +    m_nodesRemovedSinceLastCommit = nodes;
&gt; +}

Does this do a copy? Can we make it a move?

&gt; Source/WebCore/page/scrolling/ScrollingStateTree.cpp:208
&gt; +    StateNodeMap::const_iterator it = m_stateNodeMap.find(scrollLayerID);

auto?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964429</commentid>
    <comment_count>3</comment_count>
      <attachid>220379</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2014-01-04 13:10:53 -0800</bug_when>
    <thetext>Comment on attachment 220379
Patch

Attachment 220379 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/5966973905141760</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964430</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-01-04 13:44:24 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/161315</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>220379</attachid>
            <date>2014-01-04 13:05:17 -0800</date>
            <delta_ts>2014-01-04 13:10:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126493-20140104130517.patch</filename>
            <type>text/plain</type>
            <size>15553</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYxMzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDI1NGEyNmZmMGNjMWFm
MzYzYWI3NDU2YTFmZjMyNDFiZjUzMDkwMC4uNDM3MGQ2MDNlZGY5MjFjNWU1NzU0ZGJhMjgyYTQx
MjgzYzY0NDA1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE0LTAxLTA0ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFByZXBhcmUgdGhl
IFNjcm9sbGluZ1RyZWUgZm9yIHJlbW90ZSB1c2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNjQ5MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gY29tbWl0dGluZyB0aGUgc2Nyb2xsaW5nIHRyZWUs
IHdlIGNsb25lIHRoZSBTY3JvbGxpbmdTdGF0ZVRyZWUKKyAgICAgICAgdG8gaGFuZCBvZmYgdG8g
YW5vdGhlciB0aHJlYWQsIG9yIChpbiBmdXR1cmUpIHRvIGVuY29kZSB0byBzZW5kIHRvIHRoZQor
ICAgICAgICBVSSBwcm9jZXNzLiBEdXJpbmcgdGhpcyBjbG9uaW5nIHByb2Nlc3MsIHR3byB0eXBl
cyBvZiBsYXllciB0cmFuc2Zvcm1hdGlvbnMKKyAgICAgICAgdGFrZSBwbGFjZTogZm9yIHRocmVh
ZGVkIHNjcm9sbGluZywgd2UgcmVwbGFjZSBHcmFwaGljc0xheWVyIHdpdGggUGxhdGZvcm1MYXll
cnMuCisgICAgICAgIEZvciByZW1vdGUgc2Nyb2xsaW5nLCB3ZSdsbCByZXBsYWNlIEdyYXBoaWNz
TGF5ZXJzIHdpdGggUGxhdGZvcm1MYXllcklEcy4KKyAgICAgICAgQWxsb3cgdGhlIFNjcm9sbGlu
Z0Nvb3JkaW5hdG9yIHRvIHNwZWNpZnkgd2hpY2ggdHlwZSBvZiB0cmFuc2Zvcm1hdGlvbiBvY2N1
cnMKKyAgICAgICAgYnkgZ2l2aW5nIFNjcm9sbGluZ1N0YXRlVHJlZSBhIExheWVyUmVwcmVzZW50
YXRpb246OlR5cGUgbWVtYmVyLAorICAgICAgICB3aGljaCBpcyBjb25zdWx0ZWQgZHVyaW5nIFNj
cm9sbGluZ1N0YXRlTm9kZSBjbG9uaW5nLgorICAgICAgICAKKyAgICAgICAgQWxzbyBvbmx5IGNv
cHkgbGF5ZXJzIHRoYXQgaGF2ZSBjaGFuZ2VkIHRvIGF2b2lkIHNldHRpbmcgZGlydHkgYml0cy4K
KyAgICAgICAgCisgICAgICAgIEV4cG9zZSBzb21lIG90aGVyIHN0dWZmIG9uIFNjcm9sbGluZ1N0
YXRlVHJlZSB3aGljaCB3aWxsIGJlIG5lZWRlZCBmb3IKKyAgICAgICAgcmVtb3RlIHNjcm9sbGlu
Zy4KKworICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlRml4ZWROb2RlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlRml4ZWROb2RlOjpzeW5jTGF5ZXJQ
b3NpdGlvbkZvclZpZXdwb3J0UmVjdCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nU3RhdGVOb2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlTm9kZTo6
U2Nyb2xsaW5nU3RhdGVOb2RlKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdT
dGF0ZU5vZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkxheWVyUmVwcmVzZW50YXRpb246Om9wZXJh
dG9yIEdyYXBoaWNzTGF5ZXI6OlBsYXRmb3JtTGF5ZXJJRCk6CisgICAgICAgIChXZWJDb3JlOjpM
YXllclJlcHJlc2VudGF0aW9uOjp0b1JlcHJlc2VudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGluZ1N0YXRlTm9kZTo6Y2hhbmdlZFByb3BlcnRpZXMpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsaW5nU3RhdGVOb2RlOjpzZXRDaGFuZ2VkUHJvcGVydGllcyk6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZU5vZGU6OnBhcmVudE5vZGVJRCk6CisgICAgICAgICogcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZTo6U2Nyb2xsaW5nU3RhdGVTY3JvbGxp
bmdOb2RlKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZVN0aWNreU5v
ZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nU3RhdGVTdGlja3lOb2RlOjpzeW5j
TGF5ZXJQb3NpdGlvbkZvclZpZXdwb3J0UmVjdCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nU3RhdGVUcmVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRl
VHJlZTo6U2Nyb2xsaW5nU3RhdGVUcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0
YXRlVHJlZTo6Y29tbWl0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlVHJlZTo6
c2V0UmVtb3ZlZE5vZGVzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlVHJlZTo6
c3RhdGVOb2RlRm9ySUQpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRl
VHJlZS5oOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nU3RhdGVUcmVlOjpub2RlQ291bnQp
OgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nU3RhdGVUcmVlOjpub2RlTWFwKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlVHJlZTo6cHJlZmVycmVkTGF5ZXJSZXByZXNlbnRh
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZVRyZWU6OnNldFByZWZlcnJl
ZExheWVyUmVwcmVzZW50YXRpb24pOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3Jv
bGxpbmdDb29yZGluYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3Jk
aW5hdG9yTWFjOjpjb21taXRUcmVlU3RhdGUpOgorCiAyMDE0LTAxLTAzICBTaW1vbiBGcmFzZXIg
IDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEF0dGVtcHQgdG8gZml4IEVGTCBi
dWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGlu
Z1N0YXRlRml4ZWROb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bGluZ1N0YXRlRml4ZWROb2RlLmNwcAppbmRleCA5MTQ5MDg5ZTQ1N2M4N2IzYjc3NDVjMzU3MGYx
MTViNjJmMmIwNGMxLi5jY2U0MmViN2U1MjIwMTA5MGZiYTg1NTc1ZmQ3MDJiN2E5ZTFkOTVmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZUZp
eGVkTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
U3RhdGVGaXhlZE5vZGUuY3BwCkBAIC03Miw3ICs3Miw4IEBAIHZvaWQgU2Nyb2xsaW5nU3RhdGVG
aXhlZE5vZGU6OnVwZGF0ZUNvbnN0cmFpbnRzKGNvbnN0IEZpeGVkUG9zaXRpb25WaWV3cG9ydENv
bnN0CiB2b2lkIFNjcm9sbGluZ1N0YXRlRml4ZWROb2RlOjpzeW5jTGF5ZXJQb3NpdGlvbkZvclZp
ZXdwb3J0UmVjdChjb25zdCBMYXlvdXRSZWN0JiB2aWV3cG9ydFJlY3QpCiB7CiAgICAgRmxvYXRQ
b2ludCBwb3NpdGlvbiA9IG1fY29uc3RyYWludHMubGF5ZXJQb3NpdGlvbkZvclZpZXdwb3J0UmVj
dCh2aWV3cG9ydFJlY3QpOwotICAgIHN0YXRpY19jYXN0PEdyYXBoaWNzTGF5ZXIqPihsYXllcigp
KS0+c3luY1Bvc2l0aW9uKHBvc2l0aW9uKTsKKyAgICBpZiAobGF5ZXIoKS5yZXByZXNlbnRzR3Jh
cGhpY3NMYXllcigpKQorICAgICAgICBzdGF0aWNfY2FzdDxHcmFwaGljc0xheWVyKj4obGF5ZXIo
KSktPnN5bmNQb3NpdGlvbihwb3NpdGlvbik7CiB9CiAKIHZvaWQgU2Nyb2xsaW5nU3RhdGVGaXhl
ZE5vZGU6OmR1bXBQcm9wZXJ0aWVzKFRleHRTdHJlYW0mIHRzLCBpbnQgaW5kZW50KSBjb25zdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVO
b2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlTm9k
ZS5jcHAKaW5kZXggYThhYTZmMTNlM2ViZGE2Y2JlNTA1OGMwY2FlNzlmN2U5ZTdiMjAyYS4uMGI2
MGM1YWNiYjI5YTVmMzk0YmM4NmJlNGMzMWU4YTA4Y2UwYzFjZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVOb2RlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUuY3BwCkBAIC01NCw5
ICs1NCw4IEBAIFNjcm9sbGluZ1N0YXRlTm9kZTo6U2Nyb2xsaW5nU3RhdGVOb2RlKGNvbnN0IFNj
cm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlLCBTY3JvCiAgICAgLCBtX3Njcm9sbGluZ1N0YXRl
VHJlZShhZG9wdGl2ZVRyZWUpCiAgICAgLCBtX3BhcmVudCgwKQogewotICAgIC8vIFRoZSBjbG9u
ZWQgdHJlZSByZWZlcmVuY2VzIFBsYXRmb3JtTGF5ZXJzLCB3aGljaCBhcmUgc2FmZSB0byBzZW5k
IHRvIHRoZSBzY3JvbGxpbmcgdGhyZWFkLgotICAgIC8vIEZJWE1FOiB0aGlzIE1hYyB0aHJlYWRl
ZC1zY3JvbGxpbmcgYXNzdW1wdGlvbiBkb2Vzbid0IGJlbG9uZyBoZXJlLgotICAgIHNldExheWVy
KHN0YXRlTm9kZS5sYXllcigpLnRvUGxhdGZvcm1MYXllcigpKTsKKyAgICBpZiAoaGFzQ2hhbmdl
ZFByb3BlcnR5KFNjcm9sbExheWVyKSkKKyAgICAgICAgc2V0TGF5ZXIoc3RhdGVOb2RlLmxheWVy
KCkudG9SZXByZXNlbnRhdGlvbihhZG9wdGl2ZVRyZWUucHJlZmVycmVkTGF5ZXJSZXByZXNlbnRh
dGlvbigpKSk7CiAgICAgc2Nyb2xsaW5nU3RhdGVUcmVlKCkuYWRkTm9kZSh0aGlzKTsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVO
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUu
aAppbmRleCA2NmM0YWRmMjVkMmY0MTg4MGU3MmVmMmFmMmQxNDhiMjM4YWNhMmE1Li4xMGFmYzIz
MjFhODcyOTg4YWZmYTk1MjQ1MGE5YzRiMTBiZGQ4ODQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZU5vZGUuaApAQCAtNTIsNyArNTIsNyBA
QCBjbGFzcyBUZXh0U3RyZWFtOwogLy8gYykgUmVtb3RlIHNjcm9sbGluZyBVSSBwcm9jZXNzLCB3
aGVyZSBMYXllclJlcHJlc2VudGF0aW9uIHdyYXBzIGp1c3QgYSBQbGF0Zm9ybUxheWVySUQuCiBj
bGFzcyBMYXllclJlcHJlc2VudGF0aW9uIHsKIHB1YmxpYzoKLSAgICBlbnVtIExheWVyUmVwcmVz
ZW50YXRpb25UeXBlIHsKKyAgICBlbnVtIFR5cGUgewogICAgICAgICBFbXB0eVJlcHJlc2VudGF0
aW9uLAogICAgICAgICBHcmFwaGljc0xheWVyUmVwcmVzZW50YXRpb24sCiAgICAgICAgIFBsYXRm
b3JtTGF5ZXJSZXByZXNlbnRhdGlvbiwKQEAgLTk3LDcgKzk3LDcgQEAgcHVibGljOgogCiAgICAg
b3BlcmF0b3IgR3JhcGhpY3NMYXllcjo6UGxhdGZvcm1MYXllcklEKCkgY29uc3QKICAgICB7Ci0g
ICAgICAgIEFTU0VSVChtX3JlcHJlc2VudGF0aW9uID09IFBsYXRmb3JtTGF5ZXJJRFJlcHJlc2Vu
dGF0aW9uIHx8IG1fcmVwcmVzZW50YXRpb24gPT0gR3JhcGhpY3NMYXllclJlcHJlc2VudGF0aW9u
KTsKKyAgICAgICAgQVNTRVJUKG1fcmVwcmVzZW50YXRpb24gIT0gUGxhdGZvcm1MYXllclJlcHJl
c2VudGF0aW9uKTsKICAgICAgICAgcmV0dXJuIG1fbGF5ZXJJRDsKICAgICB9CiAgICAgCkBAIC0x
MjAsMTYgKzEyMCwyNCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAg
ICAKLSAgICBMYXllclJlcHJlc2VudGF0aW9uIHRvUGxhdGZvcm1MYXllcigpIGNvbnN0CisgICAg
TGF5ZXJSZXByZXNlbnRhdGlvbiB0b1JlcHJlc2VudGF0aW9uKFR5cGUgcmVwcmVzZW50YXRpb24p
IGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQobV9yZXByZXNlbnRhdGlvbiA9PSBHcmFwaGlj
c0xheWVyUmVwcmVzZW50YXRpb24pOwotICAgICAgICByZXR1cm4gbV9ncmFwaGljc0xheWVyID8g
bV9ncmFwaGljc0xheWVyLT5wbGF0Zm9ybUxheWVyKCkgOiBudWxscHRyOworICAgICAgICBzd2l0
Y2ggKHJlcHJlc2VudGF0aW9uKSB7CisgICAgICAgIGNhc2UgRW1wdHlSZXByZXNlbnRhdGlvbjoK
KyAgICAgICAgICAgIHJldHVybiBMYXllclJlcHJlc2VudGF0aW9uKCk7CisgICAgICAgIGNhc2Ug
R3JhcGhpY3NMYXllclJlcHJlc2VudGF0aW9uOgorICAgICAgICAgICAgQVNTRVJUKG1fcmVwcmVz
ZW50YXRpb24gPT0gR3JhcGhpY3NMYXllclJlcHJlc2VudGF0aW9uKTsKKyAgICAgICAgICAgIHJl
dHVybiAqdGhpczsKKyAgICAgICAgY2FzZSBQbGF0Zm9ybUxheWVyUmVwcmVzZW50YXRpb246Cisg
ICAgICAgICAgICByZXR1cm4gbV9ncmFwaGljc0xheWVyID8gbV9ncmFwaGljc0xheWVyLT5wbGF0
Zm9ybUxheWVyKCkgOiBudWxscHRyOworICAgICAgICBjYXNlIFBsYXRmb3JtTGF5ZXJJRFJlcHJl
c2VudGF0aW9uOgorICAgICAgICAgICAgcmV0dXJuIExheWVyUmVwcmVzZW50YXRpb24obV9sYXll
cklEKTsKKyAgICAgICAgfQogICAgIH0KLSAgICAKKwogICAgIGJvb2wgcmVwcmVzZW50c0dyYXBo
aWNzTGF5ZXIoKSBjb25zdCB7IHJldHVybiBtX3JlcHJlc2VudGF0aW9uID09IEdyYXBoaWNzTGF5
ZXJSZXByZXNlbnRhdGlvbjsgfQotICAgIGJvb2wgcmVwcmVzZW50c1BsYXRmb3JtTGF5ZXIoKSBj
b25zdCB7IHJldHVybiBtX3JlcHJlc2VudGF0aW9uID09IFBsYXRmb3JtTGF5ZXJSZXByZXNlbnRh
dGlvbjsgfQogICAgIGJvb2wgcmVwcmVzZW50c1BsYXRmb3JtTGF5ZXJJRCgpIGNvbnN0IHsgcmV0
dXJuIG1fcmVwcmVzZW50YXRpb24gPT0gUGxhdGZvcm1MYXllcklEUmVwcmVzZW50YXRpb247IH0K
LQorICAgIAogcHJpdmF0ZToKICAgICB1bmlvbiB7CiAgICAgICAgIEdyYXBoaWNzTGF5ZXIqIG1f
Z3JhcGhpY3NMYXllcjsKQEAgLTEzNyw3ICsxNDUsNyBAQCBwcml2YXRlOgogICAgIH07CiAKICAg
ICBHcmFwaGljc0xheWVyOjpQbGF0Zm9ybUxheWVySUQgbV9sYXllcklEOwotICAgIExheWVyUmVw
cmVzZW50YXRpb25UeXBlIG1fcmVwcmVzZW50YXRpb247CisgICAgVHlwZSBtX3JlcHJlc2VudGF0
aW9uOwogfTsKIAogY2xhc3MgU2Nyb2xsaW5nU3RhdGVOb2RlIHsKQEAgLTE2Miw2ICsxNzAsOSBA
QCBwdWJsaWM6CiAgICAgdm9pZCByZXNldENoYW5nZWRQcm9wZXJ0aWVzKCkgeyBtX2NoYW5nZWRQ
cm9wZXJ0aWVzID0gMDsgfQogICAgIHZvaWQgc2V0UHJvcGVydHlDaGFuZ2VkKHVuc2lnbmVkIHBy
b3BlcnR5Qml0KTsKIAorICAgIENoYW5nZWRQcm9wZXJ0aWVzIGNoYW5nZWRQcm9wZXJ0aWVzKCkg
Y29uc3QgeyByZXR1cm4gbV9jaGFuZ2VkUHJvcGVydGllczsgfQorICAgIHZvaWQgc2V0Q2hhbmdl
ZFByb3BlcnRpZXMoQ2hhbmdlZFByb3BlcnRpZXMgY2hhbmdlZFByb3BlcnRpZXMpIHsgbV9jaGFu
Z2VkUHJvcGVydGllcyA9IGNoYW5nZWRQcm9wZXJ0aWVzOyB9CisgICAgCiAgICAgdmlydHVhbCB2
b2lkIHN5bmNMYXllclBvc2l0aW9uRm9yVmlld3BvcnRSZWN0KGNvbnN0IExheW91dFJlY3QmIC8q
dmlld3BvcnRSZWN0Ki8pIHsgfQogCiAgICAgY29uc3QgTGF5ZXJSZXByZXNlbnRhdGlvbiYgbGF5
ZXIoKSBjb25zdCB7IHJldHVybiBtX2xheWVyOyB9CkBAIC0xNzMsNiArMTg0LDcgQEAgcHVibGlj
OgogCiAgICAgU2Nyb2xsaW5nU3RhdGVOb2RlKiBwYXJlbnQoKSBjb25zdCB7IHJldHVybiBtX3Bh
cmVudDsgfQogICAgIHZvaWQgc2V0UGFyZW50KFNjcm9sbGluZ1N0YXRlTm9kZSogcGFyZW50KSB7
IG1fcGFyZW50ID0gcGFyZW50OyB9CisgICAgU2Nyb2xsaW5nTm9kZUlEIHBhcmVudE5vZGVJRCgp
IGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50ID8gbV9wYXJlbnQtPnNjcm9sbGluZ05vZGVJRCgpIDog
MDsgfQogCiAgICAgVmVjdG9yPE93blB0cjxTY3JvbGxpbmdTdGF0ZU5vZGU+PiogY2hpbGRyZW4o
KSBjb25zdCB7IHJldHVybiBtX2NoaWxkcmVuLmdldCgpOyB9CiAKQEAgLTE4OCw3ICsyMDAsNiBA
QCBwcml2YXRlOgogICAgIHZvaWQgZHVtcChUZXh0U3RyZWFtJiwgaW50IGluZGVudCkgY29uc3Q7
CiAKICAgICB2aXJ0dWFsIHZvaWQgZHVtcFByb3BlcnRpZXMoVGV4dFN0cmVhbSYsIGludCBpbmRl
bnQpIGNvbnN0ID0gMDsKLSAgICBDaGFuZ2VkUHJvcGVydGllcyBjaGFuZ2VkUHJvcGVydGllcygp
IGNvbnN0IHsgcmV0dXJuIG1fY2hhbmdlZFByb3BlcnRpZXM7IH0KICAgICB2b2lkIHdpbGxCZVJl
bW92ZWRGcm9tU3RhdGVUcmVlKCk7CiAKICAgICBjb25zdCBTY3JvbGxpbmdOb2RlVHlwZSBtX25v
ZGVUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nU3RhdGVTY3JvbGxpbmdOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1Njcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZS5jcHAKaW5kZXggYTk0MjAyYjBlMmE0ZjY4ZTc3
ZmIxZmVlOTE2ODg2ZDJkOWFkMjBhNy4uMGQxMzBmODkxNWFlOThlMmNkMTM5OTQxM2Y3ZGJlYWQz
Yjc3YmVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nU3RhdGVTY3JvbGxpbmdOb2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGUuY3BwCkBAIC03Nyw5ICs3NywxNCBAQCBT
Y3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6OlNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9kZShj
b25zdCBTY3JvbGxpbmdTdGF0ZVNjcgogewogICAgIC8vIFRoZSBjbG9uZWQgdHJlZSByZWZlcmVu
Y2VzIFBsYXRmb3JtTGF5ZXJzLCB3aGljaCBhcmUgc2FmZSB0byBzZW5kIHRvIHRoZSBzY3JvbGxp
bmcgdGhyZWFkLgogICAgIC8vIEZJWE1FOiB0aGlzIE1hYyB0aHJlYWRlZC1zY3JvbGxpbmcgYXNz
dW1wdGlvbiBkb2Vzbid0IGJlbG9uZyBoZXJlLgotICAgIHNldENvdW50ZXJTY3JvbGxpbmdMYXll
cihzdGF0ZU5vZGUuY291bnRlclNjcm9sbGluZ0xheWVyKCkudG9QbGF0Zm9ybUxheWVyKCkpOwot
ICAgIHNldEhlYWRlckxheWVyKHN0YXRlTm9kZS5oZWFkZXJMYXllcigpLnRvUGxhdGZvcm1MYXll
cigpKTsKLSAgICBzZXRGb290ZXJMYXllcihzdGF0ZU5vZGUuZm9vdGVyTGF5ZXIoKS50b1BsYXRm
b3JtTGF5ZXIoKSk7CisgICAgaWYgKGhhc0NoYW5nZWRQcm9wZXJ0eShDb3VudGVyU2Nyb2xsaW5n
TGF5ZXIpKQorICAgICAgICBzZXRDb3VudGVyU2Nyb2xsaW5nTGF5ZXIoc3RhdGVOb2RlLmNvdW50
ZXJTY3JvbGxpbmdMYXllcigpLnRvUmVwcmVzZW50YXRpb24oYWRvcHRpdmVUcmVlLnByZWZlcnJl
ZExheWVyUmVwcmVzZW50YXRpb24oKSkpOworCisgICAgaWYgKGhhc0NoYW5nZWRQcm9wZXJ0eShI
ZWFkZXJMYXllcikpCisgICAgICAgIHNldEhlYWRlckxheWVyKHN0YXRlTm9kZS5oZWFkZXJMYXll
cigpLnRvUmVwcmVzZW50YXRpb24oYWRvcHRpdmVUcmVlLnByZWZlcnJlZExheWVyUmVwcmVzZW50
YXRpb24oKSkpOworCisgICAgaWYgKGhhc0NoYW5nZWRQcm9wZXJ0eShGb290ZXJMYXllcikpCisg
ICAgICAgIHNldEZvb3RlckxheWVyKHN0YXRlTm9kZS5mb290ZXJMYXllcigpLnRvUmVwcmVzZW50
YXRpb24oYWRvcHRpdmVUcmVlLnByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb24oKSkpOwogfQog
CiBTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGU6On5TY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05v
ZGUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
U3RhdGVTdGlja3lOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bGluZ1N0YXRlU3RpY2t5Tm9kZS5jcHAKaW5kZXggYjU4Zjc3NTQ0NmYyNDhiZTVmNTk3NTUzZjRm
ZWVjYjEzYThlYTI3YS4uZWQ5ZGJmNTYxNGM5ZmQwYjA1ZjdmN2Y4Y2JkN2NlYjM0Y2U5ZWQ4MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVT
dGlja3lOb2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxp
bmdTdGF0ZVN0aWNreU5vZGUuY3BwCkBAIC03Miw3ICs3Miw4IEBAIHZvaWQgU2Nyb2xsaW5nU3Rh
dGVTdGlja3lOb2RlOjp1cGRhdGVDb25zdHJhaW50cyhjb25zdCBTdGlja3lQb3NpdGlvblZpZXdw
b3J0Q29uCiB2b2lkIFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZTo6c3luY0xheWVyUG9zaXRpb25G
b3JWaWV3cG9ydFJlY3QoY29uc3QgTGF5b3V0UmVjdCYgdmlld3BvcnRSZWN0KQogewogICAgIEZs
b2F0UG9pbnQgcG9zaXRpb24gPSBtX2NvbnN0cmFpbnRzLmxheWVyUG9zaXRpb25Gb3JDb25zdHJh
aW5pbmdSZWN0KHZpZXdwb3J0UmVjdCk7Ci0gICAgc3RhdGljX2Nhc3Q8R3JhcGhpY3NMYXllcio+
KGxheWVyKCkpLT5zeW5jUG9zaXRpb24ocG9zaXRpb24pOworICAgIGlmIChsYXllcigpLnJlcHJl
c2VudHNHcmFwaGljc0xheWVyKCkpCisgICAgICAgIHN0YXRpY19jYXN0PEdyYXBoaWNzTGF5ZXIq
PihsYXllcigpKS0+c3luY1Bvc2l0aW9uKHBvc2l0aW9uKTsKIH0KIAogdm9pZCBTY3JvbGxpbmdT
dGF0ZVN0aWNreU5vZGU6OmR1bXBQcm9wZXJ0aWVzKFRleHRTdHJlYW0mIHRzLCBpbnQgaW5kZW50
KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nU3RhdGVUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGlu
Z1N0YXRlVHJlZS5jcHAKaW5kZXggMGE4NmY4NTg5MGY4YjcyNGFlZWZhNzdhYzZiODExYWYxOWMw
MjVjNi4uNzVkYWRmMDBkOTUwNGE2MzdlNmUwNTVjMWVjMDEyODc0YmEzZjU3YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVUcmVlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZVRyZWUuY3Bw
CkBAIC00NCw2ICs0NCw3IEBAIFNjcm9sbGluZ1N0YXRlVHJlZTo6U2Nyb2xsaW5nU3RhdGVUcmVl
KEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IqIHNjcm9sbGluZ0Nvb3JkCiAgICAgOiBtX3Njcm9s
bGluZ0Nvb3JkaW5hdG9yKHNjcm9sbGluZ0Nvb3JkaW5hdG9yKQogICAgICwgbV9oYXNDaGFuZ2Vk
UHJvcGVydGllcyhmYWxzZSkKICAgICAsIG1faGFzTmV3Um9vdFN0YXRlTm9kZShmYWxzZSkKKyAg
ICAsIG1fcHJlZmVycmVkTGF5ZXJSZXByZXNlbnRhdGlvbihMYXllclJlcHJlc2VudGF0aW9uOjpH
cmFwaGljc0xheWVyUmVwcmVzZW50YXRpb24pCiB7CiB9CiAKQEAgLTE0MCwxMCArMTQxLDEyIEBA
IHZvaWQgU2Nyb2xsaW5nU3RhdGVUcmVlOjpjbGVhcigpCiAgICAgbV9zdGF0ZU5vZGVNYXAuY2xl
YXIoKTsKIH0KIAotUGFzc093blB0cjxTY3JvbGxpbmdTdGF0ZVRyZWU+IFNjcm9sbGluZ1N0YXRl
VHJlZTo6Y29tbWl0KCkKK1Bhc3NPd25QdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPiBTY3JvbGxpbmdT
dGF0ZVRyZWU6OmNvbW1pdChMYXllclJlcHJlc2VudGF0aW9uOjpUeXBlIHByZWZlcnJlZExheWVy
UmVwcmVzZW50YXRpb24pCiB7CiAgICAgLy8gVGhpcyBmdW5jdGlvbiBjbG9uZXMgYW5kIHJlc2V0
cyB0aGUgY3VycmVudCBzdGF0ZSB0cmVlLCBidXQgbGVhdmVzIHRoZSB0cmVlIHN0cnVjdHVyZSBp
bnRhY3QuCiAgICAgT3duUHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gdHJlZVN0YXRlQ2xvbmUgPSBT
Y3JvbGxpbmdTdGF0ZVRyZWU6OmNyZWF0ZSgpOworICAgIHRyZWVTdGF0ZUNsb25lLT5zZXRQcmVm
ZXJyZWRMYXllclJlcHJlc2VudGF0aW9uKHByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb24pOwor
CiAgICAgaWYgKG1fcm9vdFN0YXRlTm9kZSkKICAgICAgICAgdHJlZVN0YXRlQ2xvbmUtPnNldFJv
b3RTdGF0ZU5vZGUoc3RhdGljX3BvaW50ZXJfY2FzdDxTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05v
ZGU+KG1fcm9vdFN0YXRlTm9kZS0+Y2xvbmVBbmRSZXNldCgqdHJlZVN0YXRlQ2xvbmUpKSk7CiAK
QEAgLTE5MiwxMiArMTk1LDE3IEBAIHZvaWQgU2Nyb2xsaW5nU3RhdGVUcmVlOjpkaWRSZW1vdmVO
b2RlKFNjcm9sbGluZ05vZGVJRCBub2RlSUQpCiAgICAgc2V0SGFzQ2hhbmdlZFByb3BlcnRpZXMo
KTsKIH0KIAordm9pZCBTY3JvbGxpbmdTdGF0ZVRyZWU6OnNldFJlbW92ZWROb2Rlcyhjb25zdCBW
ZWN0b3I8U2Nyb2xsaW5nTm9kZUlEPiYgbm9kZXMpCit7CisgICAgbV9ub2Rlc1JlbW92ZWRTaW5j
ZUxhc3RDb21taXQgPSBub2RlczsKK30KKwogU2Nyb2xsaW5nU3RhdGVOb2RlKiBTY3JvbGxpbmdT
dGF0ZVRyZWU6OnN0YXRlTm9kZUZvcklEKFNjcm9sbGluZ05vZGVJRCBzY3JvbGxMYXllcklEKQog
ewogICAgIGlmICghc2Nyb2xsTGF5ZXJJRCkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBIYXNo
TWFwPFNjcm9sbGluZ05vZGVJRCwgU2Nyb2xsaW5nU3RhdGVOb2RlKj46OmNvbnN0X2l0ZXJhdG9y
IGl0ID0gbV9zdGF0ZU5vZGVNYXAuZmluZChzY3JvbGxMYXllcklEKTsKKyAgICBTdGF0ZU5vZGVN
YXA6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9zdGF0ZU5vZGVNYXAuZmluZChzY3JvbGxMYXllcklE
KTsKICAgICBpZiAoaXQgPT0gbV9zdGF0ZU5vZGVNYXAuZW5kKCkpCiAgICAgICAgIHJldHVybiAw
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdT
dGF0ZVRyZWUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRl
VHJlZS5oCmluZGV4IGUwNTRmMzgyZDZmMjg3Mzc1MzdjNzdhOGU2OTMxMGFhZTA4N2Y3MjAuLmM1
ZDBkYWQzNDJiZWI5MmI2YTVhOGYxZDNiNDkyMWQxMTM1ZTg0MmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlVHJlZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlVHJlZS5oCkBAIC01NywxNCAr
NTcsMjMgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXIoKTsKICAgICAKICAgICBjb25zdCBWZWN0
b3I8U2Nyb2xsaW5nTm9kZUlEPiYgcmVtb3ZlZE5vZGVzKCkgY29uc3QgeyByZXR1cm4gbV9ub2Rl
c1JlbW92ZWRTaW5jZUxhc3RDb21taXQ7IH0KKyAgICB2b2lkIHNldFJlbW92ZWROb2Rlcyhjb25z
dCBWZWN0b3I8U2Nyb2xsaW5nTm9kZUlEPiYpOwogCiAgICAgLy8gQ29waWVzIHRoZSBjdXJyZW50
IHRyZWUgc3RhdGUgYW5kIGNsZWFycyB0aGUgY2hhbmdlZCBwcm9wZXJ0aWVzIG1hc2sgaW4gdGhl
IG9yaWdpbmFsLgotICAgIFBhc3NPd25QdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPiBjb21taXQoKTsK
KyAgICBQYXNzT3duUHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gY29tbWl0KExheWVyUmVwcmVzZW50
YXRpb246OlR5cGUgcHJlZmVycmVkTGF5ZXJSZXByZXNlbnRhdGlvbik7CiAKICAgICB2b2lkIHNl
dEhhc0NoYW5nZWRQcm9wZXJ0aWVzKGJvb2wgPSB0cnVlKTsKICAgICBib29sIGhhc0NoYW5nZWRQ
cm9wZXJ0aWVzKCkgY29uc3QgeyByZXR1cm4gbV9oYXNDaGFuZ2VkUHJvcGVydGllczsgfQogCiAg
ICAgYm9vbCBoYXNOZXdSb290U3RhdGVOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9oYXNOZXdSb290
U3RhdGVOb2RlOyB9CisgICAgCisgICAgaW50IG5vZGVDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1f
c3RhdGVOb2RlTWFwLnNpemUoKTsgfQorCisgICAgdHlwZWRlZiBIYXNoTWFwPFNjcm9sbGluZ05v
ZGVJRCwgU2Nyb2xsaW5nU3RhdGVOb2RlKj4gU3RhdGVOb2RlTWFwOworICAgIGNvbnN0IFN0YXRl
Tm9kZU1hcCYgbm9kZU1hcCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGVOb2RlTWFwOyB9CisKKyAg
ICBMYXllclJlcHJlc2VudGF0aW9uOjpUeXBlIHByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb24o
KSBjb25zdCB7IHJldHVybiBtX3ByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb247IH0KKyAgICB2
b2lkIHNldFByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb24oTGF5ZXJSZXByZXNlbnRhdGlvbjo6
VHlwZSByZXByZXNlbnRhdGlvbikgeyBtX3ByZWZlcnJlZExheWVyUmVwcmVzZW50YXRpb24gPSBy
ZXByZXNlbnRhdGlvbjsgfQogCiBwcml2YXRlOgogICAgIFNjcm9sbGluZ1N0YXRlVHJlZShBc3lu
Y1Njcm9sbGluZ0Nvb3JkaW5hdG9yKik7CkBAIC03NSwxMSArODQsMTIgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGRpZFJlbW92ZU5vZGUoU2Nyb2xsaW5nTm9kZUlEKTsKIAogICAgIEFzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IqIG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3I7Ci0gICAgSGFzaE1hcDxTY3Jv
bGxpbmdOb2RlSUQsIFNjcm9sbGluZ1N0YXRlTm9kZSo+IG1fc3RhdGVOb2RlTWFwOworICAgIFN0
YXRlTm9kZU1hcCBtX3N0YXRlTm9kZU1hcDsKICAgICBPd25QdHI8U2Nyb2xsaW5nU3RhdGVTY3Jv
bGxpbmdOb2RlPiBtX3Jvb3RTdGF0ZU5vZGU7CiAgICAgVmVjdG9yPFNjcm9sbGluZ05vZGVJRD4g
bV9ub2Rlc1JlbW92ZWRTaW5jZUxhc3RDb21taXQ7CiAgICAgYm9vbCBtX2hhc0NoYW5nZWRQcm9w
ZXJ0aWVzOwogICAgIGJvb2wgbV9oYXNOZXdSb290U3RhdGVOb2RlOworICAgIExheWVyUmVwcmVz
ZW50YXRpb246OlR5cGUgbV9wcmVmZXJyZWRMYXllclJlcHJlc2VudGF0aW9uOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLm1tCmluZGV4IDhmOTc0YTIz
YmU4NjM2ZTdiNGQxNDc2MmU0ZjU4Mjk2YTQ4N2YyMTkuLjhmNWY0YTljNjEwOWIzM2YyMzFmNzY5
NzA5MTc2NTQ1OGNmOTQzYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL21hYy9TY3JvbGxpbmdDb29yZGluYXRvck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMubW0KQEAgLTExMCw3ICsx
MTAsNyBAQCB2b2lkIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjOjpjb21taXRUcmVlU3RhdGUoKQog
ewogICAgIEFTU0VSVChzY3JvbGxpbmdTdGF0ZVRyZWUoKS0+aGFzQ2hhbmdlZFByb3BlcnRpZXMo
KSk7CiAKLSAgICBPd25QdHI8U2Nyb2xsaW5nU3RhdGVUcmVlPiB0cmVlU3RhdGUgPSBzY3JvbGxp
bmdTdGF0ZVRyZWUoKS0+Y29tbWl0KCk7CisgICAgT3duUHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4g
dHJlZVN0YXRlID0gc2Nyb2xsaW5nU3RhdGVUcmVlKCktPmNvbW1pdChMYXllclJlcHJlc2VudGF0
aW9uOjpQbGF0Zm9ybUxheWVyUmVwcmVzZW50YXRpb24pOwogICAgIFNjcm9sbGluZ1RocmVhZDo6
ZGlzcGF0Y2goYmluZCgmVGhyZWFkZWRTY3JvbGxpbmdUcmVlOjpjb21taXROZXdUcmVlU3RhdGUs
IHRvVGhyZWFkZWRTY3JvbGxpbmdUcmVlKHNjcm9sbGluZ1RyZWUoKSksIHRyZWVTdGF0ZS5yZWxl
YXNlKCkpKTsKIAogICAgIHVwZGF0ZVRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yKCk7Cg==
</data>
<flag name="review"
          id="244077"
          type_id="1"
          status="+"
          setter="sam"
    />
    <flag name="commit-queue"
          id="244078"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>