<?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>135180</bug_id>
          
          <creation_ts>2014-07-22 15:15:41 -0700</creation_ts>
          <short_desc>REGRESSION (WebKit2): Selection inside accelerated overflow:scroll doesn&apos;t track scrolling</short_desc>
          <delta_ts>2014-07-23 09:00:08 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</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="Enrica Casucci">enrica</reporter>
          <assigned_to name="Enrica Casucci">enrica</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jamesr</cc>
    
    <cc>japhet</cc>
    
    <cc>luiz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1024085</commentid>
    <comment_count>0</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-07-22 15:15:41 -0700</bug_when>
    <thetext>Create a selection inside an accelerated overflow.
Scroll inside the area.
The selection stays at the original position.

&lt;rdar://problem/16721055&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024095</commentid>
    <comment_count>1</comment_count>
      <attachid>235320</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-07-22 15:45:33 -0700</bug_when>
    <thetext>Created attachment 235320
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024099</commentid>
    <comment_count>2</comment_count>
      <attachid>235320</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-07-22 16:00:56 -0700</bug_when>
    <thetext>Comment on attachment 235320
Patch

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

&gt; Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp:315
&gt; +#if PLATFORM(IOS)
&gt; +        if (scrollingLayerPositionAction == SetScrollingLayerPosition)
&gt; +            m_page-&gt;editorClient()-&gt;updateSelection();
&gt; +#endif

Can we push this #ifdef down into editorClient, giving EditorClient an overflowScrollPositionnChanged(bool) which is not #ifdeffed, and only implementing for iOS?

This would be better than having #if PLATFORM(IOS) in core code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024107</commentid>
    <comment_count>3</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-07-22 16:29:09 -0700</bug_when>
    <thetext>Committed revision 171370.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024236</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-23 09:00:08 -0700</bug_when>
    <thetext>This introduced a build failure on Windows due to a missing implementation of &apos;overflowScrollPositionChanged&apos;.

Build fix landed: &lt;http://trac.webkit.org/changeset/171403&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235320</attachid>
            <date>2014-07-22 15:45:33 -0700</date>
            <delta_ts>2014-07-22 16:00:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>overflowscroll.txt</filename>
            <type>text/plain</type>
            <size>22183</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTM2NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDE0LTA3LTIyICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTiAoV2ViS2l0
Mik6IFNlbGVjdGlvbiBpbnNpZGUgYWNjZWxlcmF0ZWQgb3ZlcmZsb3c6c2Nyb2xsIGRvZXNuJ3Qg
dHJhY2sgc2Nyb2xsaW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTM1MTgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjcyMTA1NT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBc3luY1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yIHdpbGwgZm9yY2UgYSBzZWxlY3Rpb24gdXBkYXRlIG9uIGlPUworICAgICAg
ICB3aGVuIHNjcm9sbGluZyB0ZXJtaW5hdGVzIGluIGFuIG92ZXJmbG93IHNjcm9sbC4KKworICAg
ICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDoKKyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVu
dC5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRl
U2Nyb2xsUG9zaXRpb25BZnRlckFzeW5jU2Nyb2xsKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGlu
Zy9TY3JvbGxpbmdUcmVlLmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpzY3Jv
bGxpbmdUcmVlTm9kZVdpbGxTdGFydFNjcm9sbCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxp
bmdUcmVlOjpzY3JvbGxpbmdUcmVlTm9kZURpZEVuZFNjcm9sbCk6CisKIDIwMTQtMDctMjIgIE15
bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBD
b2NvYSB0aHJvd3MgZXhjZXB0aW9uIHdoZW4gdGhlIHJldHVybiB0eXBlIG9mIE5TQWNjZXNzaWJp
bGl0eUxpbmtlZFVJRWxlbWVudHNBdHRyaWJ1dGUgaXMgbm90IGFuIGFycmF5CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4Myw2ICs0
ODMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBEb2N1bWVudEZyYWdtZW50KiBkb2N1bWVudEZy
YWdtZW50RnJvbURlbGVnYXRlKGludCkgb3ZlcnJpZGUgeyByZXR1cm4gbnVsbHB0cjsgfQogICAg
IHZpcnR1YWwgYm9vbCBwZXJmb3Jtc1R3b1N0ZXBQYXN0ZShEb2N1bWVudEZyYWdtZW50Kikgb3Zl
cnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGludCBwYXN0ZWJvYXJkQ2hhbmdl
Q291bnQoKSBvdmVycmlkZSB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVNl
bGVjdGlvbigpIG92ZXJyaWRlIHsgfQogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAkocmV2aXNpb24gMTcxMzU5KQorKysgU291
cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTMxLDYg
KzEzMSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIERvY3VtZW50RnJhZ21lbnQqIGRvY3VtZW50
RnJhZ21lbnRGcm9tRGVsZWdhdGUoaW50IGluZGV4KSA9IDA7CiAgICAgdmlydHVhbCBib29sIHBl
cmZvcm1zVHdvU3RlcFBhc3RlKERvY3VtZW50RnJhZ21lbnQqKSA9IDA7CiAgICAgdmlydHVhbCBp
bnQgcGFzdGVib2FyZENoYW5nZUNvdW50KCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVT
ZWxlY3Rpb24oKSA9IDA7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQpJbmRleDogU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxp
bmdDb29yZGluYXRvci5jcHAJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yOCw2ICsyOCw3IEBACiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKICNpbmNsdWRl
ICJBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgiCiAKKyNpbmNsdWRlICJFZGl0b3JDbGllbnQu
aCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgogI2luY2x1ZGUg
IkdyYXBoaWNzTGF5ZXIuaCIKQEAgLTMwOCw2ICszMDksMTAgQEAgdm9pZCBBc3luY1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yOjp1cGRhdGVTYwogICAgICAgICBzY3JvbGxhYmxlQXJlYS0+c2V0SXNVc2Vy
U2Nyb2xsKHNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb24gPT0gU3luY1Njcm9sbGluZ0xheWVy
UG9zaXRpb24pOwogICAgICAgICBzY3JvbGxhYmxlQXJlYS0+c2Nyb2xsVG9PZmZzZXRXaXRob3V0
QW5pbWF0aW9uKHNjcm9sbFBvc2l0aW9uKTsKICAgICAgICAgc2Nyb2xsYWJsZUFyZWEtPnNldElz
VXNlclNjcm9sbChmYWxzZSk7CisjaWYgUExBVEZPUk0oSU9TKQorICAgICAgICBpZiAoc2Nyb2xs
aW5nTGF5ZXJQb3NpdGlvbkFjdGlvbiA9PSBTZXRTY3JvbGxpbmdMYXllclBvc2l0aW9uKQorICAg
ICAgICAgICAgbV9wYWdlLT5lZGl0b3JDbGllbnQoKS0+dXBkYXRlU2VsZWN0aW9uKCk7CisjZW5k
aWYKICAgICB9CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bGluZ1RyZWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9T
Y3JvbGxpbmdUcmVlLmgJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaAkod29ya2luZyBjb3B5KQpAQCAtOTMsNiArOTMsOCBA
QCBwdWJsaWM6CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIHZpcnR1YWwgRmxvYXRSZWN0IGZpeGVk
UG9zaXRpb25SZWN0KCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZVdp
bGxTdGFydFBhbkdlc3R1cmUoKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2Nyb2xsaW5nVHJlZU5v
ZGVXaWxsU3RhcnRTY3JvbGwoKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2Nyb2xsaW5nVHJlZU5v
ZGVEaWRFbmRTY3JvbGwoKSB7IH0KICNlbmRpZgogCiAgICAgYm9vbCBpc1BvaW50SW5Ob25GYXN0
U2Nyb2xsYWJsZVJlZ2lvbihJbnRQb2ludCk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNzEz
NjcpCisrKyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSw1MSBAQAorMjAxNC0wNy0yMiAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgor
CisgICAgICAgIFJFR1JFU1NJT04gKFdlYktpdDIpOiBTZWxlY3Rpb24gaW5zaWRlIGFjY2VsZXJh
dGVkIG92ZXJmbG93OnNjcm9sbCBkb2Vzbid0IHRyYWNrIHNjcm9sbGluZy4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTE4MAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMTY3MjEwNTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkcyBub3RpZmljYXRpb25zIHRvIHRoZSBXS0NvbnRlbnRWaWV3IHRv
IGtub3cgd2hlbiBzY3JvbGxpbmcgc3RhcnRzIGFuZCBlbmRzCisgICAgICAgIGluIGFuIG92ZXJm
bG93IHNjcm9sbC4gV2hlbiBzY3JvbGxpbmcgc3RhcnRzLCB3ZSBoaWRlIHRoZSBzZWxlY3Rpb24g
YW5kIHdlIHJlc3RvcmUKKyAgICAgICAgaXQgd2hlbiBzY3JvbGxpbmcgZW5kcywgdGhvdWdoIG5v
dCBiZWZvcmUgdGhlIHNlbGVjdGlvbiBpbmZvcm1hdGlvbiBpbiB0aGUgZWRpdG9yCisgICAgICAg
IHN0YXRlIGhhcyBiZWVuIHVwZGF0ZWQuCisgICAgICAgIEl0IGFsc28gYWRkcyBhIG5ldyBtZXRo
b2QgdG8gdGhlIEVkaXRvckNsaWVudCBjbGFzcyB0byBmb3JjZSB0aGUKKyAgICAgICAgc2VsZWN0
aW9uIHVwZGF0ZSB3aGVuIHNjcm9sbGluZyBpcyBjb21wbGV0ZWQuCisgICAgICAgIAorICAgICAg
ICAqIFVJUHJvY2Vzcy9QYWdlQ2xpZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1Njcm9sbGlu
Zy9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNz
L1Njcm9sbGluZy9SZW1vdGVTY3JvbGxpbmdUcmVlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlU2Nyb2xsaW5nVHJlZTo6c2Nyb2xsaW5nVHJlZU5vZGVXaWxsU3RhcnRTY3JvbGwpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVTY3JvbGxpbmdUcmVlOjpzY3JvbGxpbmdUcmVlTm9kZURpZEVu
ZFNjcm9sbCk6CisgICAgICAgICogVUlQcm9jZXNzL1Njcm9sbGluZy9SZW1vdGVTY3JvbGxpbmdU
cmVlLmg6CisgICAgICAgICogVUlQcm9jZXNzL1Njcm9sbGluZy9pb3MvU2Nyb2xsaW5nVHJlZU92
ZXJmbG93U2Nyb2xsaW5nTm9kZUlPUy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9TY3JvbGxpbmcv
aW9zL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVJT1MubW06CisgICAgICAgICgt
W1dLT3ZlcmZsb3dTY3JvbGxWaWV3RGVsZWdhdGUgc2Nyb2xsVmlld1dpbGxCZWdpbkRyYWdnaW5n
Ol0pOgorICAgICAgICAoLVtXS092ZXJmbG93U2Nyb2xsVmlld0RlbGVnYXRlIHNjcm9sbFZpZXdE
aWRFbmREcmFnZ2luZzp3aWxsRGVjZWxlcmF0ZTpdKToKKyAgICAgICAgKC1bV0tPdmVyZmxvd1Nj
cm9sbFZpZXdEZWxlZ2F0ZSBzY3JvbGxWaWV3RGlkRW5kRGVjZWxlcmF0aW5nOl0pOgorICAgICAg
ICAoV2ViS2l0OjpTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlSU9TOjpvdmVyZmxv
d1Njcm9sbFdpbGxTdGFydCk6CisgICAgICAgIChXZWJLaXQ6OlNjcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbGluZ05vZGVJT1M6Om92ZXJmbG93U2Nyb2xsRGlkRW5kKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50
SW1wbElPUy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW06
CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpvdmVyZmxvd1Njcm9sbFdpbGxTdGFy
dFNjcm9sbCk6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpvdmVyZmxvd1Njcm9s
bERpZEVuZFNjcm9sbCk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9SZW1vdGVTY3JvbGxpbmdD
b29yZGluYXRvclByb3h5SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVTY3JvbGxpbmdD
b29yZGluYXRvclByb3h5OjpzY3JvbGxpbmdUcmVlTm9kZVdpbGxTdGFydFNjcm9sbCk6CisgICAg
ICAgIChXZWJLaXQ6OlJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk6OnNjcm9sbGluZ1Ry
ZWVOb2RlRGlkRW5kU2Nyb2xsKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0lu
dGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9vdmVyZmxvd1Njcm9sbGlu
Z1dpbGxCZWdpbl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9vdmVyZmxvd1Njcm9sbGlu
Z0RpZEVuZF0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF91cGRhdGVDaGFuZ2VkU2VsZWN0
aW9uXSk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW06CisgICAg
ICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6b3ZlcmZsb3dTY3JvbGxXaWxsU3RhcnRTY3JvbGwp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6Om92ZXJmbG93U2Nyb2xsRGlkRW5kU2Ny
b2xsKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVu
dC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkVkaXRvckNs
aWVudElPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50Ojp1cGRhdGVTZWxl
Y3Rpb24pOgorCiAyMDE0LTA3LTIyICBUaW1vdGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFw
cGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTcxMjM5KTogTXVjaCBtb3JlIHRpbWUg
c3BlbnQgdGFraW5nIHNuYXBzaG90cyBkdXJpbmcgdGhlIFBMVApJbmRleDogU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUGFnZUNsaWVudC5oCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNzMsNiArMjczLDgg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgV2ViQ29yZTo6RmxvYXRTaXplIGNvbnRlbnRzU2l6ZSgp
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgb3ZlcmZsb3dTY3JvbGxWaWV3V2lsbFN0YXJ0
UGFuR2VzdHVyZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgb3ZlcmZsb3dTY3JvbGxWaWV3RGlk
U2Nyb2xsKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBvdmVyZmxvd1Njcm9sbFdpbGxTdGFydFNj
cm9sbCgpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgb3ZlcmZsb3dTY3JvbGxEaWRFbmRTY3JvbGwo
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaERyYXdpbmdQYWdlc1RvUERGKGNvbnN0
IElQQzo6RGF0YVJlZmVyZW5jZSYpID0gMDsKICAgICB2aXJ0dWFsIFZlY3RvcjxTdHJpbmc+IG1p
bWVUeXBlc1dpdGhDdXN0b21Db250ZW50UHJvdmlkZXJzKCkgPSAwOwogCkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTM5
MCw2ICszOTAsOCBAQCBwdWJsaWM6CiAgICAgV2ViQ29yZTo6RmxvYXRSZWN0IGNvbXB1dGVDdXN0
b21GaXhlZFBvc2l0aW9uUmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIHVub2JzY3VyZWRD
b250ZW50UmVjdCwgZG91YmxlIGRpc3BsYXllZENvbnRlbnRTY2FsZSwgVW5vYnNjdXJlZFJlY3RD
b25zdHJhaW50ID0gVW5vYnNjdXJlZFJlY3RDb25zdHJhaW50OjpVbmNvbnN0cmFpbmVkKSBjb25z
dDsKICAgICB2b2lkIG92ZXJmbG93U2Nyb2xsVmlld1dpbGxTdGFydFBhbkdlc3R1cmUoKTsKICAg
ICB2b2lkIG92ZXJmbG93U2Nyb2xsVmlld0RpZFNjcm9sbCgpOworICAgIHZvaWQgb3ZlcmZsb3dT
Y3JvbGxXaWxsU3RhcnRTY3JvbGwoKTsKKyAgICB2b2lkIG92ZXJmbG93U2Nyb2xsRGlkRW5kU2Ny
b2xsKCk7CiAKICAgICB2b2lkIGR5bmFtaWNWaWV3cG9ydFNpemVVcGRhdGUoY29uc3QgV2ViQ29y
ZTo6RmxvYXRTaXplJiBtaW5pbXVtTGF5b3V0U2l6ZSwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXpl
JiBtaW5pbXVtTGF5b3V0U2l6ZUZvck1pbmltYWxVSSwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXpl
JiBtYXhpbXVtVW5vYnNjdXJlZFNpemUsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgdGFyZ2V0
RXhwb3NlZENvbnRlbnRSZWN0LCBjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIHRhcmdldFVub2Jz
Y3VyZWRSZWN0LCBjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIHRhcmdldFVub2JzY3VyZWRSZWN0
SW5TY3JvbGxWaWV3Q29vcmRpbmF0ZXMsIGRvdWJsZSB0YXJnZXRTY2FsZSwgaW50MzJfdCBkZXZp
Y2VPcmllbnRhdGlvbik7CiAgICAgdm9pZCBzeW5jaHJvbml6ZUR5bmFtaWNWaWV3cG9ydFVwZGF0
ZSgpOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Njcm9sbGluZy9SZW1vdGVTY3Jv
bGxpbmdDb29yZGluYXRvclByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1Njcm9sbGluZy9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5LmgJKHJldmlz
aW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9TY3JvbGxpbmcvUmVtb3Rl
U2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC03NSw2ICs3NSw4
IEBAIHB1YmxpYzoKICNpZiBQTEFURk9STShJT1MpCiAgICAgV2ViQ29yZTo6RmxvYXRSZWN0IGN1
c3RvbUZpeGVkUG9zaXRpb25SZWN0KCkgY29uc3Q7CiAgICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9k
ZVdpbGxTdGFydFBhbkdlc3R1cmUoKTsKKyAgICB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlV2lsbFN0
YXJ0U2Nyb2xsKCk7CisgICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZURpZEVuZFNjcm9sbCgpOwog
I2VuZGlmCiAKIHByaXZhdGU6CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xs
aW5nL1JlbW90ZVNjcm9sbGluZ1RyZWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9TY3JvbGxpbmcvUmVtb3RlU2Nyb2xsaW5nVHJlZS5jcHAJKHJldmlzaW9uIDE3
MTM1OSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9TY3JvbGxpbmcvUmVtb3RlU2Nyb2xs
aW5nVHJlZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg3LDYgKzg3LDE3IEBAIHZvaWQgUmVtb3Rl
U2Nyb2xsaW5nVHJlZTo6c2Nyb2xsaW5nVHJlZU4KIHsKICAgICBtX3Njcm9sbGluZ0Nvb3JkaW5h
dG9yUHJveHkuc2Nyb2xsaW5nVHJlZU5vZGVXaWxsU3RhcnRQYW5HZXN0dXJlKCk7CiB9CisgICAg
Cit2b2lkIFJlbW90ZVNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2RlV2lsbFN0YXJ0U2Ny
b2xsKCkKK3sKKyAgICBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuc2Nyb2xsaW5nVHJlZU5v
ZGVXaWxsU3RhcnRTY3JvbGwoKTsKK30KKwordm9pZCBSZW1vdGVTY3JvbGxpbmdUcmVlOjpzY3Jv
bGxpbmdUcmVlTm9kZURpZEVuZFNjcm9sbCgpCit7CisgICAgbV9zY3JvbGxpbmdDb29yZGluYXRv
clByb3h5LnNjcm9sbGluZ1RyZWVOb2RlRGlkRW5kU2Nyb2xsKCk7Cit9CisKICNlbmRpZgogCiB2
b2lkIFJlbW90ZVNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2RlRGlkU2Nyb2xsKFNjcm9s
bGluZ05vZGVJRCBub2RlSUQsIGNvbnN0IEZsb2F0UG9pbnQmIHNjcm9sbFBvc2l0aW9uLCBTZXRP
clN5bmNTY3JvbGxpbmdMYXllclBvc2l0aW9uIHNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb24p
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xsaW5nL1JlbW90ZVNjcm9sbGlu
Z1RyZWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xsaW5n
L1JlbW90ZVNjcm9sbGluZ1RyZWUuaAkocmV2aXNpb24gMTcxMzU5KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1Njcm9sbGluZy9SZW1vdGVTY3JvbGxpbmdUcmVlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTU5LDYgKzU5LDggQEAgcHJpdmF0ZToKICNpZiBQTEFURk9STShJT1MpCiAgICAgdmly
dHVhbCBXZWJDb3JlOjpGbG9hdFJlY3QgZml4ZWRQb3NpdGlvblJlY3QoKSBvdmVycmlkZTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2Nyb2xsaW5nVHJlZU5vZGVXaWxsU3RhcnRQYW5HZXN0dXJlKCkgb3Zl
cnJpZGU7CisgICAgdmlydHVhbCB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlV2lsbFN0YXJ0U2Nyb2xs
KCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlRGlkRW5kU2Ny
b2xsKCkgb3ZlcnJpZGU7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpTY3JvbGxpbmdUcmVlTm9kZT4gY3JlYXRlU2Nyb2xsaW5nVHJlZU5vZGUoV2ViQ29yZTo6U2Ny
b2xsaW5nTm9kZVR5cGUsIFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCkgb3ZlcnJpZGU7CkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xsaW5nL2lvcy9TY3JvbGxpbmdUcmVlT3Zl
cmZsb3dTY3JvbGxpbmdOb2RlSU9TLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1Njcm9sbGluZy9pb3MvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZUlP
Uy5oCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xs
aW5nL2lvcy9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlSU9TLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQwLDYgKzQwLDggQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNj
cm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVJT1M+IGNyZWF0ZShXZWJDb3JlOjpTY3Jv
bGxpbmdUcmVlJiwgV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlEKTsKICAgICB2aXJ0dWFsIH5TY3Jv
bGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlSU9TKCk7CiAKKyAgICB2b2lkIG92ZXJmbG93
U2Nyb2xsV2lsbFN0YXJ0KCk7CisgICAgdm9pZCBvdmVyZmxvd1Njcm9sbERpZEVuZCgpOwogICAg
IHZvaWQgb3ZlcmZsb3dTY3JvbGxWaWV3V2lsbFN0YXJ0UGFuR2VzdHVyZSgpOwogICAgIHZvaWQg
c2Nyb2xsVmlld0RpZFNjcm9sbChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiwgYm9vbCBpblVz
ZXJJbnRlcmF0aW9uKTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Njcm9sbGlu
Zy9pb3MvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZUlPUy5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xsaW5nL2lvcy9TY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxpbmdOb2RlSU9TLm1tCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvU2Nyb2xsaW5nL2lvcy9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3Jv
bGxpbmdOb2RlSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBAIC0gKHZvaWQp
c2Nyb2xsVmlld1dpbGxCZWdpbkRyYWdnaW5nOihVSVMKIAogICAgIGlmIChzY3JvbGxWaWV3LnBh
bkdlc3R1cmVSZWNvZ25pemVyLnN0YXRlID09IFVJR2VzdHVyZVJlY29nbml6ZXJTdGF0ZUJlZ2Fu
KQogICAgICAgICBfc2Nyb2xsaW5nVHJlZU5vZGUtPm92ZXJmbG93U2Nyb2xsVmlld1dpbGxTdGFy
dFBhbkdlc3R1cmUoKTsKKyAgICBfc2Nyb2xsaW5nVHJlZU5vZGUtPm92ZXJmbG93U2Nyb2xsV2ls
bFN0YXJ0KCk7CiB9CiAKIC0gKHZvaWQpc2Nyb2xsVmlld0RpZEVuZERyYWdnaW5nOihVSVNjcm9s
bFZpZXcgKilzY3JvbGxWaWV3IHdpbGxEZWNlbGVyYXRlOihCT09MKXdpbGxEZWNlbGVyYXRlCkBA
IC03Nyw2ICs3OCw3IEBAIC0gKHZvaWQpc2Nyb2xsVmlld0RpZEVuZERyYWdnaW5nOihVSVNjcm8K
ICAgICBpZiAoX2luVXNlckludGVyYWN0aW9uICYmICF3aWxsRGVjZWxlcmF0ZSkgewogICAgICAg
ICBfaW5Vc2VySW50ZXJhY3Rpb24gPSBOTzsKICAgICAgICAgX3Njcm9sbGluZ1RyZWVOb2RlLT5z
Y3JvbGxWaWV3RGlkU2Nyb2xsKHNjcm9sbFZpZXcuY29udGVudE9mZnNldCwgX2luVXNlckludGVy
YWN0aW9uKTsKKyAgICAgICAgX3Njcm9sbGluZ1RyZWVOb2RlLT5vdmVyZmxvd1Njcm9sbERpZEVu
ZCgpOwogICAgIH0KIH0KIApAQCAtODUsNiArODcsNyBAQCAtICh2b2lkKXNjcm9sbFZpZXdEaWRF
bmREZWNlbGVyYXRpbmc6KFVJCiAgICAgaWYgKF9pblVzZXJJbnRlcmFjdGlvbikgewogICAgICAg
ICBfaW5Vc2VySW50ZXJhY3Rpb24gPSBOTzsKICAgICAgICAgX3Njcm9sbGluZ1RyZWVOb2RlLT5z
Y3JvbGxWaWV3RGlkU2Nyb2xsKHNjcm9sbFZpZXcuY29udGVudE9mZnNldCwgX2luVXNlckludGVy
YWN0aW9uKTsKKyAgICAgICAgX3Njcm9sbGluZ1RyZWVOb2RlLT5vdmVyZmxvd1Njcm9sbERpZEVu
ZCgpOwogICAgIH0KIH0KIApAQCAtMjMyLDYgKzIzNSwxNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVP
dmVyZmxvd1Njcm9sbGluZ05vZGVJCiAgICAgICAgIGNoaWxkLT51cGRhdGVMYXllcnNBZnRlckFu
Y2VzdG9yQ2hhbmdlKCp0aGlzLCBmaXhlZFBvc2l0aW9uUmVjdCwgc2Nyb2xsRGVsdGEpOwogfQog
Cit2b2lkIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVJT1M6Om92ZXJmbG93U2Ny
b2xsV2lsbFN0YXJ0KCkKK3sKKyAgICBzY3JvbGxpbmdUcmVlKCkuc2Nyb2xsaW5nVHJlZU5vZGVX
aWxsU3RhcnRTY3JvbGwoKTsKK30KKwordm9pZCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxp
bmdOb2RlSU9TOjpvdmVyZmxvd1Njcm9sbERpZEVuZCgpCit7CisgICAgc2Nyb2xsaW5nVHJlZSgp
LnNjcm9sbGluZ1RyZWVOb2RlRGlkRW5kU2Nyb2xsKCk7Cit9CisKIHZvaWQgU2Nyb2xsaW5nVHJl
ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZUlPUzo6b3ZlcmZsb3dTY3JvbGxWaWV3V2lsbFN0YXJ0UGFu
R2VzdHVyZSgpCiB7CiAgICAgc2Nyb2xsaW5nVHJlZSgpLnNjcm9sbGluZ1RyZWVOb2RlV2lsbFN0
YXJ0UGFuR2VzdHVyZSgpOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9QYWdl
Q2xpZW50SW1wbElPUy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvUGFnZUNsaWVudEltcGxJT1MuaAkocmV2aXNpb24gMTcxMzU5KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
NDcsNiArMTQ3LDkgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgem9vbVRvUmVjdChXZWJD
b3JlOjpGbG9hdFJlY3QsIGRvdWJsZSBtaW5pbXVtU2NhbGUsIGRvdWJsZSBtYXhpbXVtU2NhbGUp
IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBvdmVyZmxvd1Njcm9sbFZpZXdXaWxsU3RhcnRQ
YW5HZXN0dXJlKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIG92ZXJmbG93U2Nyb2xsVmll
d0RpZFNjcm9sbCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBvdmVyZmxvd1Njcm9sbFdp
bGxTdGFydFNjcm9sbCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBvdmVyZmxvd1Njcm9s
bERpZEVuZFNjcm9sbCgpIG92ZXJyaWRlOworCiAgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaERy
YXdpbmdQYWdlc1RvUERGKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYpIG92ZXJyaWRlOwogCiAg
ICAgLy8gQXV4aWxpYXJ5IENsaWVudCBDcmVhdGlvbgpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tCShyZXZpc2lvbiAxNzEzNTkp
CisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC02NDUsNiArNjQ1LDE2IEBAIHZvaWQgUGFnZUNsaWVudEltcGw6Om92
ZXJmbG93U2Nyb2xsVmlld0QKICAgICBbbV9jb250ZW50VmlldyBfZGlkU2Nyb2xsXTsKIH0KIAor
dm9pZCBQYWdlQ2xpZW50SW1wbDo6b3ZlcmZsb3dTY3JvbGxXaWxsU3RhcnRTY3JvbGwoKQorewor
ICAgIFttX2NvbnRlbnRWaWV3IF9vdmVyZmxvd1Njcm9sbGluZ1dpbGxCZWdpbl07Cit9CisKK3Zv
aWQgUGFnZUNsaWVudEltcGw6Om92ZXJmbG93U2Nyb2xsRGlkRW5kU2Nyb2xsKCkKK3sKKyAgICBb
bV9jb250ZW50VmlldyBfb3ZlcmZsb3dTY3JvbGxpbmdEaWRFbmRdOworfQorCiB2b2lkIFBhZ2VD
bGllbnRJbXBsOjpkaWRGaW5pc2hEcmF3aW5nUGFnZXNUb1BERihjb25zdCBJUEM6OkRhdGFSZWZl
cmVuY2UmIHBkZkRhdGEpCiB7CiAgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gZGF0YSA9IGFkb3B0
Q0YoQ0ZEYXRhQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIHBkZkRhdGEuZGF0YSgpLCBwZGZE
YXRhLnNpemUoKSkpOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9SZW1vdGVT
Y3JvbGxpbmdDb29yZGluYXRvclByb3h5SU9TLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9pb3MvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eUlPUy5tbQko
cmV2aXNpb24gMTcxMzU5KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9SZW1vdGVT
Y3JvbGxpbmdDb29yZGluYXRvclByb3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDMsNiAr
MTAzLDE2IEBAIHZvaWQgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eTo6c2MKICAgICBt
X3dlYlBhZ2VQcm94eS5vdmVyZmxvd1Njcm9sbFZpZXdXaWxsU3RhcnRQYW5HZXN0dXJlKCk7CiB9
CiAKK3ZvaWQgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eTo6c2Nyb2xsaW5nVHJlZU5v
ZGVXaWxsU3RhcnRTY3JvbGwoKQoreworICAgIG1fd2ViUGFnZVByb3h5Lm92ZXJmbG93U2Nyb2xs
V2lsbFN0YXJ0U2Nyb2xsKCk7Cit9CisgICAgCit2b2lkIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5h
dG9yUHJveHk6OnNjcm9sbGluZ1RyZWVOb2RlRGlkRW5kU2Nyb2xsKCkKK3sKKyAgICBtX3dlYlBh
Z2VQcm94eS5vdmVyZmxvd1Njcm9sbERpZEVuZFNjcm9sbCgpOworfQorCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKIAogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTEzNyw2ICsxMzcsNyBAQCBzdHJ1Y3QgV0tBdXRvQ29ycmVjdGlvbkRh
dGEgewogICAgIEJPT0wgX3BvdGVudGlhbFRhcEluUHJvZ3Jlc3M7CiAgICAgQk9PTCBfaGFzVGFw
SGlnaGxpZ2h0Rm9yUG90ZW50aWFsVGFwOwogICAgIEJPT0wgX3NlbGVjdGlvbk5lZWRzVXBkYXRl
OworICAgIEJPT0wgX3Nob3VsZFJlc3RvcmVTZWxlY3Rpb247CiAgICAgQk9PTCBfdXNpbmdHZXN0
dXJlRm9yU2VsZWN0aW9uOwogICAgIEJPT0wgX2luc3BlY3Rvck5vZGVTZWFyY2hFbmFibGVkOwog
ICAgIEJPT0wgX2RpZEFjY2Vzc29yeVRhYkluaXRpYXRlRm9jdXM7CkBAIC0xNzQsNiArMTc1LDgg
QEAgc3RydWN0IFdLQXV0b0NvcnJlY3Rpb25EYXRhIHsKIC0gKHZvaWQpX3dpbGxTdGFydFNjcm9s
bGluZ09yWm9vbWluZzsKIC0gKHZvaWQpX2RpZFNjcm9sbDsKIC0gKHZvaWQpX2RpZEVuZFNjcm9s
bGluZ09yWm9vbWluZzsKKy0gKHZvaWQpX292ZXJmbG93U2Nyb2xsaW5nV2lsbEJlZ2luOworLSAo
dm9pZClfb3ZlcmZsb3dTY3JvbGxpbmdEaWRFbmQ7CiAtICh2b2lkKV9kaWRVcGRhdGVCbG9ja1Nl
bGVjdGlvbldpdGhUb3VjaDooV2ViS2l0OjpTZWxlY3Rpb25Ub3VjaCl0b3VjaCB3aXRoRmxhZ3M6
KFdlYktpdDo6U2VsZWN0aW9uRmxhZ3MpZmxhZ3MgZ3Jvd1RocmVzaG9sZDooQ0dGbG9hdClncm93
VGhyZXNob2xkIHNocmlua1RocmVzaG9sZDooQ0dGbG9hdClzaHJpbmtUaHJlc2hvbGQ7CiAtICh2
b2lkKV9zaG93UGxheWJhY2tUYXJnZXRQaWNrZXI6KEJPT0wpaGFzVmlkZW8gZnJvbVJlY3Q6KGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmKWVsZW1lbnRSZWN0OwogLSAodm9pZClfc2hvd1J1bk9wZW5Q
YW5lbDooV2ViS2l0OjpXZWJPcGVuUGFuZWxQYXJhbWV0ZXJzKilwYXJhbWV0ZXJzIHJlc3VsdExp
c3RlbmVyOihXZWJLaXQ6OldlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyUHJveHkqKWxpc3RlbmVy
OwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0JKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC02NTQsNiArNjU0LDI1IEBAIC0gKHZvaWQpX2RpZFNjcm9sbAogICAgIFtzZWxmIF9j
YW5jZWxJbnRlcmFjdGlvbl07CiB9CiAKKy0gKHZvaWQpX292ZXJmbG93U2Nyb2xsaW5nV2lsbEJl
Z2luCit7CisgICAgW193ZWJTZWxlY3Rpb25Bc3Npc3RhbnQgd2lsbFN0YXJ0U2Nyb2xsaW5nT3Zl
cmZsb3ddOworICAgIFtfdGV4dFNlbGVjdGlvbkFzc2lzdGFudCB3aWxsU3RhcnRTY3JvbGxpbmdP
dmVyZmxvd107ICAgIAorfQorCistICh2b2lkKV9vdmVyZmxvd1Njcm9sbGluZ0RpZEVuZAorewor
ICAgIC8vIElmIHNjcm9sbGluZyBlbmRzIGJlZm9yZSB3ZSd2ZSByZWNlaXZlZCBhIHNlbGVjdGlv
biB1cGRhdGUsCisgICAgLy8gd2UgcG9zdHBvbmUgc2hvd2luZyB0aGUgc2VsZWN0aW9uIHVudGls
IHRoZSB1cGRhdGUgaXMgcmVjZWl2ZWQuCisgICAgaWYgKCFfc2VsZWN0aW9uTmVlZHNVcGRhdGUp
IHsKKyAgICAgICAgX3Nob3VsZFJlc3RvcmVTZWxlY3Rpb24gPSBZRVM7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisgICAgW3NlbGYgX3VwZGF0ZUNoYW5nZWRTZWxlY3Rpb25dOworICAgIFtfd2Vi
U2VsZWN0aW9uQXNzaXN0YW50IGRpZEVuZFNjcm9sbGluZ092ZXJmbG93XTsKKyAgICBbX3RleHRT
ZWxlY3Rpb25Bc3Npc3RhbnQgZGlkRW5kU2Nyb2xsaW5nT3ZlcmZsb3ddOworfQorCiAtIChCT09M
KV9yZXF1aXJlc0tleWJvYXJkV2hlbkZpcnN0UmVzcG9uZGVyCiB7CiAgICAgLy8gRklYTUU6IFdl
IHNob3VsZCBhZGQgdGhlIGxvZ2ljIHRvIGhhbmRsZSBrZXlib2FyZCB2aXNpYmlsaXR5IGR1cmlu
ZyBmb2N1cyByZWRpcmVjdHMuCkBAIC0yNjA5LDYgKzI2MjgsMTEgQEAgLSAodm9pZClfdXBkYXRl
Q2hhbmdlZFNlbGVjdGlvbgogICAgIH0gZWxzZSBpZiAoIV9wYWdlLT5lZGl0b3JTdGF0ZSgpLmlz
Q29udGVudEVkaXRhYmxlKQogICAgICAgICBbX3dlYlNlbGVjdGlvbkFzc2lzdGFudCBzZWxlY3Rp
b25DaGFuZ2VkXTsKICAgICBfc2VsZWN0aW9uTmVlZHNVcGRhdGUgPSBOTzsKKyAgICBpZiAoX3No
b3VsZFJlc3RvcmVTZWxlY3Rpb24pIHsKKyAgICAgICAgW193ZWJTZWxlY3Rpb25Bc3Npc3RhbnQg
ZGlkRW5kU2Nyb2xsaW5nT3ZlcmZsb3ddOworICAgICAgICBbX3RleHRTZWxlY3Rpb25Bc3Npc3Rh
bnQgZGlkRW5kU2Nyb2xsaW5nT3ZlcmZsb3ddOworICAgICAgICBfc2hvdWxkUmVzdG9yZVNlbGVj
dGlvbiA9IE5POworICAgIH0KIH0KIAogLSAodm9pZClfc2hvd1BsYXliYWNrVGFyZ2V0UGlja2Vy
OihCT09MKWhhc1ZpZGVvIGZyb21SZWN0Oihjb25zdCBJbnRSZWN0JillbGVtZW50UmVjdApJbmRl
eDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0J
KHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViUGFn
ZVByb3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNTEsNiArMjUxLDE2IEBAIHZvaWQgV2Vi
UGFnZVByb3h5OjpvdmVyZmxvd1Njcm9sbFZpZXdEaWQKICAgICBtX3BhZ2VDbGllbnQub3ZlcmZs
b3dTY3JvbGxWaWV3RGlkU2Nyb2xsKCk7CiB9CiAKK3ZvaWQgV2ViUGFnZVByb3h5OjpvdmVyZmxv
d1Njcm9sbFdpbGxTdGFydFNjcm9sbCgpCit7CisgICAgbV9wYWdlQ2xpZW50Lm92ZXJmbG93U2Ny
b2xsV2lsbFN0YXJ0U2Nyb2xsKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpvdmVyZmxvd1Nj
cm9sbERpZEVuZFNjcm9sbCgpCit7CisgICAgbV9wYWdlQ2xpZW50Lm92ZXJmbG93U2Nyb2xsRGlk
RW5kU2Nyb2xsKCk7Cit9CisKIHZvaWQgV2ViUGFnZVByb3h5OjpkeW5hbWljVmlld3BvcnRTaXpl
VXBkYXRlKGNvbnN0IEZsb2F0U2l6ZSYgbWluaW11bUxheW91dFNpemUsIGNvbnN0IFdlYkNvcmU6
OkZsb2F0U2l6ZSYgbWluaW11bUxheW91dFNpemVGb3JNaW5pbWFsVUksIGNvbnN0IFdlYkNvcmU6
OkZsb2F0U2l6ZSYgbWF4aW11bVVub2JzY3VyZWRTaXplLCBjb25zdCBGbG9hdFJlY3QmIHRhcmdl
dEV4cG9zZWRDb250ZW50UmVjdCwgY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRVbm9ic2N1cmVkUmVj
dCwgY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRVbm9ic2N1cmVkUmVjdEluU2Nyb2xsVmlld0Nvb3Jk
aW5hdGVzLCAgZG91YmxlIHRhcmdldFNjYWxlLCBpbnQzMl90IGRldmljZU9yaWVudGF0aW9uKQog
ewogICAgIG1fZHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZVdhaXRpbmdGb3JUYXJnZXQgPSB0cnVl
OwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNjMsNiArMTYzLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNv
cmU6OkRvY3VtZW50RnJhZ21lbnQqIGRvY3VtZW50RnJhZ21lbnRGcm9tRGVsZWdhdGUoaW50IGlu
ZGV4KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIGJvb2wgcGVyZm9ybXNUd29TdGVwUGFzdGUoV2Vi
Q29yZTo6RG9jdW1lbnRGcmFnbWVudCopIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgaW50IHBhc3Rl
Ym9hcmRDaGFuZ2VDb3VudCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTZWxl
Y3Rpb24oKSBvdmVycmlkZTsKICNlbmRpZgogCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzR2xv
YmFsU2VsZWN0aW9uKCkgb3ZlcnJpZGU7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJFZGl0b3JDbGllbnRJT1MubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xp
ZW50SU9TLm1tCShyZXZpc2lvbiAxNzEzNTkpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJFZGl0b3JDbGllbnRJT1MubW0JKHdvcmtpbmcgY29weSkK
QEAgLTEzNCw2ICsxMzQsMTEgQEAgaW50IFdlYkVkaXRvckNsaWVudDo6cGFzdGVib2FyZENoYW5n
ZUNvdQogICAgIHJldHVybiAwOwogfQogCit2b2lkIFdlYkVkaXRvckNsaWVudDo6dXBkYXRlU2Vs
ZWN0aW9uKCkKK3sKKyAgICBtX3BhZ2UtPmRpZENoYW5nZVNlbGVjdGlvbigpOworfQorCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPUykKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE3MTM2NykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE0LTA3LTIyICBFbnJpY2EgQ2Fz
dWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTiAoV2ViS2l0Mik6
IFNlbGVjdGlvbiBpbnNpZGUgYWNjZWxlcmF0ZWQgb3ZlcmZsb3c6c2Nyb2xsIGRvZXNuJ3QgdHJh
Y2sgc2Nyb2xsaW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTM1MTgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjcyMTA1NT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L1dlYkVkaXRvckNsaWVudC5oOgorCiAyMDE0LTA3LTIyICBKZXJlbXkgSm9uZXMgIDxqZXJlbXlq
QGFwcGxlLmNvbT4KIAogICAgICAgICBEb24ndCBjcmVhdGUgbmV3IFVJV2luZG93IGZvciB2aWRl
byBmdWxsc2NyZWVuLgpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xNDQsNiArMTQ0LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkRvY3VtZW50
RnJhZ21lbnQqIGRvY3VtZW50RnJhZ21lbnRGcm9tRGVsZWdhdGUoaW50IGluZGV4KSBvdmVycmlk
ZTsKICAgICB2aXJ0dWFsIGJvb2wgcGVyZm9ybXNUd29TdGVwUGFzdGUoV2ViQ29yZTo6RG9jdW1l
bnRGcmFnbWVudCopIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgaW50IHBhc3RlYm9hcmRDaGFuZ2VD
b3VudCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTZWxlY3Rpb24oKSBvdmVy
cmlkZSB7IH07CiAjZW5kaWYKICAgICAKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRXJhc2VNYXJr
ZXJzQWZ0ZXJDaGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6VGV4dENoZWNraW5nVHlwZSkgY29uc3Qg
b3ZlcnJpZGU7Cg==
</data>
<flag name="review"
          id="259891"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>