<?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>178843</bug_id>
          
          <creation_ts>2017-10-25 20:27:55 -0700</creation_ts>
          <short_desc>Remove code to update block selection</short_desc>
          <delta_ts>2017-10-26 11:20:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Megan Gardner">megan_gardner</reporter>
          <assigned_to name="Megan Gardner">megan_gardner</assigned_to>
          <cc>aestes</cc>
    
    <cc>enrica</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1364653</commentid>
    <comment_count>0</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2017-10-25 20:27:55 -0700</bug_when>
    <thetext>Remove code to update block selection</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364656</commentid>
    <comment_count>1</comment_count>
      <attachid>324949</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2017-10-25 20:31:57 -0700</bug_when>
    <thetext>Created attachment 324949
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364657</commentid>
    <comment_count>2</comment_count>
      <attachid>324949</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-10-25 20:39:20 -0700</bug_when>
    <thetext>Comment on attachment 324949
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3960
&gt; +    if ((!_selectionNeedsUpdate) || (_page-&gt;editorState().isMissingPostLayoutData))

Too many parens. Also, this should be in its own patch! Possibly with a test :)

r=me for the rest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364703</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-10-25 23:04:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/35191802&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364927</commentid>
    <comment_count>4</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2017-10-26 11:20:50 -0700</bug_when>
    <thetext>https://trac.webkit.org/r224029</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324949</attachid>
            <date>2017-10-25 20:31:57 -0700</date>
            <delta_ts>2017-10-25 20:39:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178843-20171025203156.patch</filename>
            <type>text/plain</type>
            <size>18540</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjQwMDApCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE3LTEwLTI1ICBNZWdhbiBHYXJk
bmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIGNvZGUgdG8g
dXBkYXRlIGJsb2NrIHNlbGVjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTc4ODQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgUmVtb3ZlcyBjb2RlIGZvciB1cGRhdGluZyBibG9jayBzZWxlY3Rpb24s
IHdoaWNoIGhhcyBiZWVuIGRpc2FibGVkLgorICAgICAgICBUaGlzIGNvZGUgaXMgYmVpbmcgc2xv
d2x5IHBydW5lZCB0byBhdm9pZCByZWdyZXNzaW9ucyBhbmQgYWNjaWRlbnRhbCByZW1vdmFsIG9m
IGNvZGUgdGhhdCBpcyBiZWluZyB1c2VkLgorICAgICAgICBBbHNvIGFkZGVkIGFuIGFkZGl0aW9u
YWwgZWFybHkgb3V0IGZvciB1cGRhdGluZyBzZWxlY3Rpb24uIElmIHdlIGRvIG5vdCBoYXZlIHBv
c3RMYXlvdXREYXRhLCB0aGVuIHdlIGFyZSBub3QKKyAgICAgICAgYWN0dWFsbHkgcmVhZHkgdG8g
dXBkYXRlIHRoZSBzZWxlY3Rpb24uCisKKyAgICAgICAgKiBQbGF0Zm9ybS9zcGkvaW9zL1VJS2l0
U1BJLmg6CisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmg6
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbToKKyAgICAgICAg
KFdlYktpdDo6UGFnZUNsaWVudEltcGw6OmRpZFVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNo
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9u
Lm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF91cGRhdGVDaGFuZ2VkU2VsZWN0aW9uOl0p
OgorICAgICAgICAodG9TZWxlY3Rpb25IYW5kbGVQb3NpdGlvbik6IERlbGV0ZWQuCisgICAgICAg
ICgtW1dLQ29udGVudFZpZXcgX2RpZFVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoOndpdGhG
bGFnczpncm93VGhyZXNob2xkOnNocmlua1RocmVzaG9sZDpdKTogRGVsZXRlZC4KKyAgICAgICAg
KC1bV0tDb250ZW50VmlldyBjaGFuZ2VCbG9ja1NlbGVjdGlvbldpdGhUb3VjaEF0OndpdGhTZWxl
Y3Rpb25Ub3VjaDpmb3JIYW5kbGU6XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL2lv
cy9XZWJQYWdlUHJveHlJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6dXBk
YXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2gpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmRpZFVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoKTogRGVsZXRlZC4K
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6c2hvdWxkRXhwYW5k
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2hhbmdlQmxvY2tTZWxlY3Rp
b24pOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVCbG9ja1NlbGVj
dGlvbldpdGhUb3VjaCk6IERlbGV0ZWQuCisKIDIwMTctMTAtMjUgIFBlciBBcm5lIFZvbGxhbiAg
PHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIE5ldHdvcmsgcHJvY2VzcyBjcmFzaCB1bmRl
ciBXZWJLaXQ6OkF1dGhlbnRpY2F0aW9uTWFuYWdlcjo6cmVqZWN0UHJvdGVjdGlvblNwYWNlQW5k
Q29udGludWVGb3JTaW5nbGVDaGFsbGVuZ2UuCkluZGV4OiBTb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
L3NwaS9pb3MvVUlLaXRTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
L3NwaS9pb3MvVUlLaXRTUEkuaAkocmV2aXNpb24gMjIzODYzKQorKysgU291cmNlL1dlYktpdC9Q
bGF0Zm9ybS9zcGkvaW9zL1VJS2l0U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYxOCw3ICs2MTgs
NiBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBVSVdLSGFuZGxlUG9zCiAKIEBvcHRpb25h
bAogCi0tICh2b2lkKWNoYW5nZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoQXQ6KENHUG9pbnQpcG9p
bnQgd2l0aFNlbGVjdGlvblRvdWNoOihVSVdLU2VsZWN0aW9uVG91Y2gpdG91Y2ggZm9ySGFuZGxl
OihVSVdLSGFuZGxlUG9zaXRpb24paGFuZGxlOwogLSAodm9pZCljbGVhclNlbGVjdGlvbjsKIC0g
KHZvaWQpcmVwbGFjZURpY3RhdGVkVGV4dDooTlNTdHJpbmcgKilvbGRUZXh0IHdpdGhUZXh0OihO
U1N0cmluZyAqKW5ld1RleHQ7CiAtICh2b2lkKXJlcXVlc3REaWN0YXRpb25Db250ZXh0Oih2b2lk
ICheKShOU1N0cmluZyAqc2VsZWN0ZWRUZXh0LCBOU1N0cmluZyAqcHJlZml4VGV4dCwgTlNTdHJp
bmcgKnBvc3RmaXhUZXh0KSljb21wbGV0aW9uSGFuZGxlcjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1BhZ2VDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9QYWdlQ2xpZW50LmgJKHJldmlzaW9uIDIyMzg2MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1BhZ2VDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzAyLDcgKzMwMiw2IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcG9zaXRpb25JbmZvcm1hdGlvbkRpZENoYW5nZShjb25z
dCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiYpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgc2F2ZUltYWdlVG9MaWJyYXJ5KFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYpID0gMDsK
ICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzQmxvY2tTZWxlY3Rpb24oKSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIGRpZFVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoKHVpbnQzMl90IHRvdWNoLCB1
aW50MzJfdCBmbGFncywgZmxvYXQgZ3Jvd1RocmVzaG9sZCwgZmxvYXQgc2hyaW5rVGhyZXNob2xk
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhh
c1ZpZGVvLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBlbGVtZW50UmVjdCkgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBkaXNhYmxlRG91YmxlVGFwR2VzdHVyZXNEdXJpbmdUYXBJZk5lY2Vzc2FyeSh1
aW50NjRfdCByZXF1ZXN0SUQpID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBtaW5pbXVtWm9vbVNj
YWxlKCkgY29uc3QgPSAwOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmgJKHJldmlzaW9uIDIyMzg2MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MTUsNyArNTE1LDYgQEAgcHVibGljOgogICAgIHZv
aWQgc2VsZWN0V2l0aEdlc3R1cmUoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQsIFdlYkNvcmU6OlRl
eHRHcmFudWxhcml0eSwgdWludDMyX3QgZ2VzdHVyZVR5cGUsIHVpbnQzMl90IGdlc3R1cmVTdGF0
ZSwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEFzc2lzdGVkTm9kZSwgV1RGOjpGdW5jdGlvbjx2b2lk
IChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIHVpbnQzMl90LCB1aW50MzJfdCwgdWludDMyX3Qs
IENhbGxiYWNrQmFzZTo6RXJyb3IpPiYmKTsKICAgICB2b2lkIHVwZGF0ZVNlbGVjdGlvbldpdGhU
b3VjaGVzKGNvbnN0IFdlYkNvcmU6OkludFBvaW50LCB1aW50MzJfdCB0b3VjaGVzLCBib29sIGJh
c2VJc1N0YXJ0LCBXVEY6OkZ1bmN0aW9uPHZvaWQgKGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jiwg
dWludDMyX3QsIHVpbnQzMl90LCBDYWxsYmFja0Jhc2U6OkVycm9yKT4mJik7CiAgICAgdm9pZCBz
ZWxlY3RXaXRoVHdvVG91Y2hlcyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCBmcm9tLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCB0bywgdWludDMyX3QgZ2VzdHVyZVR5cGUsIHVpbnQzMl90IGdlc3R1
cmVTdGF0ZSwgV1RGOjpGdW5jdGlvbjx2b2lkIChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIHVp
bnQzMl90LCB1aW50MzJfdCwgdWludDMyX3QsIENhbGxiYWNrQmFzZTo6RXJyb3IpPiYmKTsKLSAg
ICB2b2lkIHVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoKGNvbnN0IFdlYkNvcmU6OkludFBv
aW50LCB1aW50MzJfdCB0b3VjaCwgdWludDMyX3QgaGFuZGxlUG9zaXRpb24pOwogICAgIHZvaWQg
ZXh0ZW5kU2VsZWN0aW9uKFdlYkNvcmU6OlRleHRHcmFudWxhcml0eSk7CiAgICAgdm9pZCBzZWxl
Y3RXb3JkQmFja3dhcmQoKTsKICAgICB2b2lkIG1vdmVTZWxlY3Rpb25CeU9mZnNldChpbnQzMl90
IG9mZnNldCwgV1RGOjpGdW5jdGlvbjx2b2lkIChDYWxsYmFja0Jhc2U6OkVycm9yKT4mJik7CkBA
IC01NDAsNyArNTM5LDYgQEAgcHVibGljOgogICAgIHZvaWQgc3RvcEludGVyYWN0aW9uKCk7CiAg
ICAgdm9pZCBwZXJmb3JtQWN0aW9uT25FbGVtZW50KHVpbnQzMl90IGFjdGlvbik7CiAgICAgdm9p
ZCBzYXZlSW1hZ2VUb0xpYnJhcnkoY29uc3QgU2hhcmVkTWVtb3J5OjpIYW5kbGUmIGltYWdlSGFu
ZGxlLCB1aW50NjRfdCBpbWFnZVNpemUpOwotICAgIHZvaWQgZGlkVXBkYXRlQmxvY2tTZWxlY3Rp
b25XaXRoVG91Y2godWludDMyX3QgdG91Y2gsIHVpbnQzMl90IGZsYWdzLCBmbG9hdCBncm93VGhy
ZXNob2xkLCBmbG9hdCBzaHJpbmtUaHJlc2hvbGQpOwogICAgIHZvaWQgZm9jdXNOZXh0QXNzaXN0
ZWROb2RlKGJvb2wgaXNGb3J3YXJkLCBXVEY6OkZ1bmN0aW9uPHZvaWQgKENhbGxiYWNrQmFzZTo6
RXJyb3IpPiYmKTsKICAgICB2b2lkIHNldEFzc2lzdGVkTm9kZVZhbHVlKGNvbnN0IFN0cmluZyYp
OwogICAgIHZvaWQgc2V0QXNzaXN0ZWROb2RlVmFsdWVBc051bWJlcihkb3VibGUpOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgko
cmV2aXNpb24gMjIzODYzKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNzksNyArMTc5LDYgQEAgbWVzc2FnZXMg
LT4gV2ViUGFnZVByb3h5IHsKICAgICBJbnRlcnByZXRLZXlFdmVudChzdHJ1Y3QgV2ViS2l0OjpF
ZGl0b3JTdGF0ZSBzdGF0ZSwgYm9vbCBpc0NoYXJFdmVudCkgLT4gKGJvb2wgaGFuZGxlZCkKICAg
ICBEaWRSZWNlaXZlUG9zaXRpb25JbmZvcm1hdGlvbihzdHJ1Y3QgV2ViS2l0OjpJbnRlcmFjdGlv
bkluZm9ybWF0aW9uQXRQb3NpdGlvbiBpbmZvcm1hdGlvbikKICAgICBTYXZlSW1hZ2VUb0xpYnJh
cnkoV2ViS2l0OjpTaGFyZWRNZW1vcnk6OkhhbmRsZSBoYW5kbGUsIHVpbnQ2NF90IHNpemUpCi0g
ICAgRGlkVXBkYXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2godWludDMyX3QgdG91Y2gsIHVpbnQz
Ml90IGZsYWdzLCBmbG9hdCBncm93VGhyZXNob2xkLCBmbG9hdCBzaHJpbmtUaHJlc2hvbGQpCiAg
ICAgU2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8sIFdlYkNvcmU6OkludFJl
Y3QgZWxlbWVudFJlY3QpCiAgICAgQ29tbWl0UG90ZW50aWFsVGFwRmFpbGVkKCkKICAgICBEaWRO
b3RIYW5kbGVUYXBBc0NsaWNrKFdlYkNvcmU6OkludFBvaW50IHBvaW50KQpJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmgJKHJldmlzaW9u
IDIyMzg2MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElP
Uy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzIsNyArMTMyLDYgQEAgcHJpdmF0ZToKICAgICB2b2lk
IHBvc2l0aW9uSW5mb3JtYXRpb25EaWRDaGFuZ2UoY29uc3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlv
bkF0UG9zaXRpb24mKSBvdmVycmlkZTsKICAgICB2b2lkIHNhdmVJbWFnZVRvTGlicmFyeShSZWY8
V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYmKSBvdmVycmlkZTsKICAgICBib29sIGFsbG93c0Jsb2Nr
U2VsZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRVcGRhdGVCbG9ja1NlbGVjdGlvbldp
dGhUb3VjaCh1aW50MzJfdCB0b3VjaCwgdWludDMyX3QgZmxhZ3MsIGZsb2F0IGdyb3dUaHJlc2hv
bGQsIGZsb2F0IHNocmlua1RocmVzaG9sZCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBzaG93UGxheWJh
Y2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbywgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgZWxl
bWVudFJlY3QpIG92ZXJyaWRlOwogCiAgICAgYm9vbCBoYW5kbGVSdW5PcGVuUGFuZWwoV2ViUGFn
ZVByb3h5KiwgV2ViRnJhbWVQcm94eSosIEFQSTo6T3BlblBhbmVsUGFyYW1ldGVycyosIFdlYk9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyUHJveHkqKSBvdmVycmlkZTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW0JKHJldmlzaW9uIDIy
Mzg2MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5t
bQkod29ya2luZyBjb3B5KQpAQCAtNTc0LDExICs1NzQsNiBAQCBib29sIFBhZ2VDbGllbnRJbXBs
OjphbGxvd3NCbG9ja1NlbGVjdGlvCiAgICAgcmV0dXJuIFttX3dlYlZpZXcgX2FsbG93c0Jsb2Nr
U2VsZWN0aW9uXTsKIH0KIAotdm9pZCBQYWdlQ2xpZW50SW1wbDo6ZGlkVXBkYXRlQmxvY2tTZWxl
Y3Rpb25XaXRoVG91Y2godWludDMyX3QgdG91Y2gsIHVpbnQzMl90IGZsYWdzLCBmbG9hdCBncm93
VGhyZXNob2xkLCBmbG9hdCBzaHJpbmtUaHJlc2hvbGQpCi17Ci0gICAgW21fY29udGVudFZpZXcg
X2RpZFVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoOihTZWxlY3Rpb25Ub3VjaCl0b3VjaCB3
aXRoRmxhZ3M6KFNlbGVjdGlvbkZsYWdzKWZsYWdzIGdyb3dUaHJlc2hvbGQ6Z3Jvd1RocmVzaG9s
ZCBzaHJpbmtUaHJlc2hvbGQ6c2hyaW5rVGhyZXNob2xkXTsKLX0KLQogdm9pZCBQYWdlQ2xpZW50
SW1wbDo6c2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8sIGNvbnN0IEludFJl
Y3QmIGVsZW1lbnRSZWN0KQogewogICAgIFttX2NvbnRlbnRWaWV3IF9zaG93UGxheWJhY2tUYXJn
ZXRQaWNrZXI6aGFzVmlkZW8gZnJvbVJlY3Q6ZWxlbWVudFJlY3RdOwpJbmRleDogU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24u
aAkocmV2aXNpb24gMjIzODYzKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOTQsNyArMjk0LDYgQEAg
Rk9SX0VBQ0hfV0tDT05URU5UVklFV19BQ1RJT04oREVDTEFSRV9XSwogLSAodm9pZClfZGlkRW5k
U2Nyb2xsaW5nT3Jab29taW5nOwogLSAodm9pZClfb3ZlcmZsb3dTY3JvbGxpbmdXaWxsQmVnaW47
CiAtICh2b2lkKV9vdmVyZmxvd1Njcm9sbGluZ0RpZEVuZDsKLS0gKHZvaWQpX2RpZFVwZGF0ZUJs
b2NrU2VsZWN0aW9uV2l0aFRvdWNoOihXZWJLaXQ6OlNlbGVjdGlvblRvdWNoKXRvdWNoIHdpdGhG
bGFnczooV2ViS2l0OjpTZWxlY3Rpb25GbGFncylmbGFncyBncm93VGhyZXNob2xkOihDR0Zsb2F0
KWdyb3dUaHJlc2hvbGQgc2hyaW5rVGhyZXNob2xkOihDR0Zsb2F0KXNocmlua1RocmVzaG9sZDsK
IC0gKHZvaWQpX3Nob3dQbGF5YmFja1RhcmdldFBpY2tlcjooQk9PTCloYXNWaWRlbyBmcm9tUmVj
dDooY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpZWxlbWVudFJlY3Q7CiAtICh2b2lkKV9zaG93UnVu
T3BlblBhbmVsOihBUEk6Ok9wZW5QYW5lbFBhcmFtZXRlcnMqKXBhcmFtZXRlcnMgcmVzdWx0TGlz
dGVuZXI6KFdlYktpdDo6V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXJQcm94eSopbGlzdGVuZXI7
CiAtICh2b2lkKWFjY2Vzc29yeURvbmU7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0JKHJldmlzaW9uIDIy
Mzg2MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0JKHdvcmtpbmcgY29weSkKQEAgLTI0NzgsMjAgKzI0NzgsNiBAQCBzdGF0aWMgaW5s
aW5lIFVJV0tTZWxlY3Rpb25GbGFncyB0b1VJV0tTCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFVJ
V0tTZWxlY3Rpb25GbGFncz4odWlGbGFncyk7CiB9CiAKLXN0YXRpYyBpbmxpbmUgU2VsZWN0aW9u
SGFuZGxlUG9zaXRpb24gdG9TZWxlY3Rpb25IYW5kbGVQb3NpdGlvbihVSVdLSGFuZGxlUG9zaXRp
b24gcG9zaXRpb24pCi17Ci0gICAgc3dpdGNoIChwb3NpdGlvbikgewotICAgIGNhc2UgVUlXS0hh
bmRsZVRvcDoKLSAgICAgICAgcmV0dXJuIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uOjpUb3A7Ci0g
ICAgY2FzZSBVSVdLSGFuZGxlUmlnaHQ6Ci0gICAgICAgIHJldHVybiBTZWxlY3Rpb25IYW5kbGVQ
b3NpdGlvbjo6UmlnaHQ7Ci0gICAgY2FzZSBVSVdLSGFuZGxlQm90dG9tOgotICAgICAgICByZXR1
cm4gU2VsZWN0aW9uSGFuZGxlUG9zaXRpb246OkJvdHRvbTsKLSAgICBjYXNlIFVJV0tIYW5kbGVM
ZWZ0OgotICAgICAgICByZXR1cm4gU2VsZWN0aW9uSGFuZGxlUG9zaXRpb246OkxlZnQ7Ci0gICAg
fQotfQotCiBzdGF0aWMgaW5saW5lIFdlYkNvcmU6OlRleHRHcmFudWxhcml0eSB0b1dLVGV4dEdy
YW51bGFyaXR5KFVJVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5KQogewogICAgIHN3aXRjaCAo
Z3JhbnVsYXJpdHkpIHsKQEAgLTI1NTAsMTMgKzI1MzYsNiBAQCBzdGF0aWMgdm9pZCBzZWxlY3Rp
b25DaGFuZ2VkV2l0aFRvdWNoKFdLCiAgICAgICAgIFsoVUlXS1RleHRJbnRlcmFjdGlvbkFzc2lz
dGFudCAqKVt2aWV3IGludGVyYWN0aW9uQXNzaXN0YW50XSBzZWxlY3Rpb25DaGFuZ2VkV2l0aFRv
dWNoQXQ6KENHUG9pbnQpcG9pbnQgd2l0aFNlbGVjdGlvblRvdWNoOnRvVUlXS1NlbGVjdGlvblRv
dWNoKChTZWxlY3Rpb25Ub3VjaCl0b3VjaCkgd2l0aEZsYWdzOnN0YXRpY19jYXN0PFVJV0tTZWxl
Y3Rpb25GbGFncz4oZmxhZ3MpXTsKIH0KIAotLSAodm9pZClfZGlkVXBkYXRlQmxvY2tTZWxlY3Rp
b25XaXRoVG91Y2g6KFNlbGVjdGlvblRvdWNoKXRvdWNoIHdpdGhGbGFnczooU2VsZWN0aW9uRmxh
Z3MpZmxhZ3MgZ3Jvd1RocmVzaG9sZDooQ0dGbG9hdClncm93VGhyZXNob2xkIHNocmlua1RocmVz
aG9sZDooQ0dGbG9hdClzaHJpbmtUaHJlc2hvbGQKLXsKLSAgICBbX3dlYlNlbGVjdGlvbkFzc2lz
dGFudCBibG9ja1NlbGVjdGlvbkNoYW5nZWRXaXRoVG91Y2g6dG9VSVdLU2VsZWN0aW9uVG91Y2go
dG91Y2gpIHdpdGhGbGFnczp0b1VJV0tTZWxlY3Rpb25GbGFncyhmbGFncykgZ3Jvd1RocmVzaG9s
ZDpncm93VGhyZXNob2xkIHNocmlua1RocmVzaG9sZDpzaHJpbmtUaHJlc2hvbGRdOwotICAgIGlm
ICh0b3VjaCAhPSBTZWxlY3Rpb25Ub3VjaDo6U3RhcnRlZCAmJiB0b3VjaCAhPSBTZWxlY3Rpb25U
b3VjaDo6TW92ZWQpCi0gICAgICAgIF91c2luZ0dlc3R1cmVGb3JTZWxlY3Rpb24gPSBOTzsKLX0K
LQogLSAoQk9PTClfaXNJbnRlcmFjdGluZ1dpdGhBc3Npc3RlZE5vZGUKIHsKICAgICByZXR1cm4g
X3RleHRTZWxlY3Rpb25Bc3Npc3RhbnQgIT0gbmlsOwpAQCAtMjYwNCwxMiArMjU4Myw2IEBAIC0g
KHZvaWQpY2hhbmdlU2VsZWN0aW9uV2l0aFRvdWNoZXNGcm9tOigKICAgICB9KTsKIH0KIAotLSAo
dm9pZCljaGFuZ2VCbG9ja1NlbGVjdGlvbldpdGhUb3VjaEF0OihDR1BvaW50KXBvaW50IHdpdGhT
ZWxlY3Rpb25Ub3VjaDooVUlXS1NlbGVjdGlvblRvdWNoKXRvdWNoIGZvckhhbmRsZTooVUlXS0hh
bmRsZVBvc2l0aW9uKWhhbmRsZQotewotICAgIF91c2luZ0dlc3R1cmVGb3JTZWxlY3Rpb24gPSBZ
RVM7Ci0gICAgX3BhZ2UtPnVwZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoKFdlYkNvcmU6Oklu
dFBvaW50KHBvaW50KSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRvU2VsZWN0aW9uVG91Y2godG91
Y2gpKSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRvU2VsZWN0aW9uSGFuZGxlUG9zaXRpb24oaGFu
ZGxlKSkpOwotfQotCiAtICh2b2lkKW1vdmVCeU9mZnNldDooTlNJbnRlZ2VyKW9mZnNldAogewog
ICAgIGlmICghb2Zmc2V0KQpAQCAtMzk4NCw3ICszOTU3LDcgQEAgLSAodm9pZClfdXBkYXRlQ2hh
bmdlZFNlbGVjdGlvbgogCiAtICh2b2lkKV91cGRhdGVDaGFuZ2VkU2VsZWN0aW9uOihCT09MKWZv
cmNlCiB7Ci0gICAgaWYgKCFfc2VsZWN0aW9uTmVlZHNVcGRhdGUpCisgICAgaWYgKCghX3NlbGVj
dGlvbk5lZWRzVXBkYXRlKSB8fCAoX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExh
eW91dERhdGEpKQogICAgICAgICByZXR1cm47CiAKICAgICBXS1NlbGVjdGlvbkRyYXdpbmdJbmZv
IHNlbGVjdGlvbkRyYXdpbmdJbmZvKF9wYWdlLT5lZGl0b3JTdGF0ZSgpKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQkocmV2aXNpb24g
MjIzODYzKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5t
bQkod29ya2luZyBjb3B5KQpAQCAtNjE2LDExICs2MTYsNiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6
c2VsZWN0V2l0aFR3b1RvdWNoZXMoCiAgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlOjpTZWxlY3RXaXRoVHdvVG91Y2hlcyhmcm9tLCB0bywgZ2VzdHVyZVR5cGUsIGdlc3R1cmVT
dGF0ZSwgY2FsbGJhY2tJRCksIG1fcGFnZUlEKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OnVw
ZGF0ZUJsb2NrU2VsZWN0aW9uV2l0aFRvdWNoKGNvbnN0IFdlYkNvcmU6OkludFBvaW50IHBvaW50
LCB1aW50MzJfdCB0b3VjaCwgdWludDMyX3QgaGFuZGxlUG9zaXRpb24pCi17Ci0gICAgbV9wcm9j
ZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVcGRhdGVCbG9ja1NlbGVjdGlvbldpdGhUb3Vj
aChwb2ludCwgdG91Y2gsIGhhbmRsZVBvc2l0aW9uKSwgbV9wYWdlSUQpOwotfQotCiB2b2lkIFdl
YlBhZ2VQcm94eTo6ZGlkUmVjZWl2ZVBvc2l0aW9uSW5mb3JtYXRpb24oY29uc3QgSW50ZXJhY3Rp
b25JbmZvcm1hdGlvbkF0UG9zaXRpb24mIGluZm8pCiB7CiAgICAgbV9wYWdlQ2xpZW50LnBvc2l0
aW9uSW5mb3JtYXRpb25EaWRDaGFuZ2UoaW5mbyk7CkBAIC02NTMsMTEgKzY0OCw2IEBAIHZvaWQg
V2ViUGFnZVByb3h5OjpzYXZlSW1hZ2VUb0xpYnJhcnkoY28KICAgICBtX3BhZ2VDbGllbnQuc2F2
ZUltYWdlVG9MaWJyYXJ5KFdURk1vdmUoYnVmZmVyKSk7CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5
OjpkaWRVcGRhdGVCbG9ja1NlbGVjdGlvbldpdGhUb3VjaCh1aW50MzJfdCB0b3VjaCwgdWludDMy
X3QgZmxhZ3MsIGZsb2F0IGdyb3dUaHJlc2hvbGQsIGZsb2F0IHNocmlua1RocmVzaG9sZCkKLXsK
LSAgICBtX3BhZ2VDbGllbnQuZGlkVXBkYXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2godG91Y2gs
IGZsYWdzLCBncm93VGhyZXNob2xkLCBzaHJpbmtUaHJlc2hvbGQpOwotfQotCiB2b2lkIFdlYlBh
Z2VQcm94eTo6YXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91bmQoKQogewogICAgIGJvb2wgaXNT
dXNwZW5kZWRVbmRlckxvY2sgPSBbVUlBcHAgaXNTdXNwZW5kZWRVbmRlckxvY2tdOwpJbmRleDog
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkocmV2aXNpb24gMjIz
ODYzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC01NTAsNyArNTUwLDYgQEAgcHVibGljOgogICAgIHZvaWQgYmx1ckFzc2lz
dGVkTm9kZSgpOwogICAgIHZvaWQgc2VsZWN0V2l0aEdlc3R1cmUoY29uc3QgV2ViQ29yZTo6SW50
UG9pbnQmLCB1aW50MzJfdCBncmFudWxhcml0eSwgdWludDMyX3QgZ2VzdHVyZVR5cGUsIHVpbnQz
Ml90IGdlc3R1cmVTdGF0ZSwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEFzc2lzdGVkTm9kZSwgQ2Fs
bGJhY2tJRCk7CiAgICAgdm9pZCB1cGRhdGVTZWxlY3Rpb25XaXRoVG91Y2hlcyhjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYsIHVpbnQzMl90IHRvdWNoZXMsIGJvb2wgYmFzZUlzU3RhcnQsIENhbGxi
YWNrSUQpOwotICAgIHZvaWQgdXBkYXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2goY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmLCB1aW50MzJfdCB0b3VjaCwgdWludDMyX3QgaGFuZGxlUG9zaXRpb24p
OwogICAgIHZvaWQgc2VsZWN0V2l0aFR3b1RvdWNoZXMoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
IGZyb20sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiB0bywgdWludDMyX3QgZ2VzdHVyZVR5cGUs
IHVpbnQzMl90IGdlc3R1cmVTdGF0ZSwgQ2FsbGJhY2tJRCk7CiAgICAgdm9pZCBleHRlbmRTZWxl
Y3Rpb24odWludDMyX3QgZ3JhbnVsYXJpdHkpOwogICAgIHZvaWQgc2VsZWN0V29yZEJhY2t3YXJk
KCk7CkBAIC0xMDI2LDcgKzEwMjUsNiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxXZWJDb3JlOjpS
YW5nZT4gcmFuZ2VGb3JXZWJTZWxlY3Rpb25BdFBvc2l0aW9uKGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVBvc2l0aW9uJiwgU2VsZWN0aW9uRmxhZ3MmKTsK
ICAgICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IHJhbmdlRm9yQmxvY2tBdFBvaW50KGNvbnN0IFdl
YkNvcmU6OkludFBvaW50Jik7CiAgICAgdm9pZCBjb21wdXRlRXhwYW5kQW5kU2hyaW5rVGhyZXNo
b2xkc0ZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIFNlbGVjdGlvbkhhbmRsZVBv
c2l0aW9uLCBmbG9hdCYgZ3Jvd1RocmVzaG9sZCwgZmxvYXQmIHNocmlua1RocmVzaG9sZCk7Ci0g
ICAgUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBjaGFuZ2VCbG9ja1NlbGVjdGlvbihjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uLCBmbG9hdCYgZ3Jvd1RocmVz
aG9sZCwgZmxvYXQmIHNocmlua1RocmVzaG9sZCwgU2VsZWN0aW9uRmxhZ3MmKTsKICAgICBSZWY8
V2ViQ29yZTo6UmFuZ2U+IGV4cGFuZGVkUmFuZ2VGcm9tSGFuZGxlKFdlYkNvcmU6OlJhbmdlJiwg
U2VsZWN0aW9uSGFuZGxlUG9zaXRpb24pOwogICAgIFJlZjxXZWJDb3JlOjpSYW5nZT4gY29udHJh
Y3RlZFJhbmdlRnJvbUhhbmRsZShXZWJDb3JlOjpSYW5nZSYgY3VycmVudFJhbmdlLCBTZWxlY3Rp
b25IYW5kbGVQb3NpdGlvbiwgU2VsZWN0aW9uRmxhZ3MmKTsKICAgICB2b2lkIGdldEFzc2lzdGVk
Tm9kZUluZm9ybWF0aW9uKEFzc2lzdGVkTm9kZUluZm9ybWF0aW9uJik7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4J
KHJldmlzaW9uIDIyMzg2MykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDYgQEAgbWVzc2Fn
ZXMgLT4gV2ViUGFnZSBMZWdhY3lSZWNlaXZlciB7CiAgICAgQmx1ckFzc2lzdGVkTm9kZSgpCiAg
ICAgU2VsZWN0V2l0aEdlc3R1cmUoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQzMl90IGdy
YW51bGFyaXR5LCB1aW50MzJfdCBnZXN0dXJlVHlwZSwgdWludDMyX3QgZ2VzdHVyZVN0YXRlLCBi
b29sIGlzSW50ZXJhY3RpbmdXaXRoQXNzaXN0ZWROb2RlLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2Fs
bGJhY2tJRCkKICAgICBVcGRhdGVTZWxlY3Rpb25XaXRoVG91Y2hlcyhXZWJDb3JlOjpJbnRQb2lu
dCBwb2ludCwgdWludDMyX3QgdG91Y2hlcywgYm9vbCBiYXNlSXNTdGFydCwgV2ViS2l0OjpDYWxs
YmFja0lEIGNhbGxiYWNrSUQpCi0gICAgVXBkYXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2goV2Vi
Q29yZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQzMl90IHRvdWNoLCB1aW50MzJfdCBoYW5kbGVQb3Np
dGlvbikKICAgICBTZWxlY3RXaXRoVHdvVG91Y2hlcyhXZWJDb3JlOjpJbnRQb2ludCBmcm9tLCBX
ZWJDb3JlOjpJbnRQb2ludCB0bywgdWludDMyX3QgZ2VzdHVyZVR5cGUsIHVpbnQzMl90IGdlc3R1
cmVTdGF0ZSwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCiAgICAgRXh0ZW5kU2VsZWN0
aW9uKHVpbnQzMl90IGdyYW51bGFyaXR5KQogICAgIFNlbGVjdFdvcmRCYWNrd2FyZCgpCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlP
Uy5tbQkocmV2aXNpb24gMjIzODYzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvaW9zL1dlYlBhZ2VJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTE2NTgsNjIgKzE2NTgsNiBA
QCB2b2lkIFdlYlBhZ2U6OmNvbXB1dGVFeHBhbmRBbmRTaHJpbmtUaHJlCiAKIH0KIAotc3RhdGlj
IGlubGluZSBib29sIHNob3VsZEV4cGFuZChTZWxlY3Rpb25IYW5kbGVQb3NpdGlvbiBoYW5kbGVQ
b3NpdGlvbiwgY29uc3QgSW50UmVjdCYgcmVjdCwgY29uc3QgSW50UG9pbnQmIHBvaW50KQotewot
ICAgIHN3aXRjaCAoaGFuZGxlUG9zaXRpb24pIHsKLSAgICBjYXNlIFNlbGVjdGlvbkhhbmRsZVBv
c2l0aW9uOjpUb3A6Ci0gICAgICAgIHJldHVybiAocG9pbnQueSgpIDwgcmVjdC55KCkpOwotICAg
IGNhc2UgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb246OkxlZnQ6Ci0gICAgICAgIHJldHVybiAocG9p
bnQueCgpIDwgcmVjdC54KCkpOwotICAgIGNhc2UgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb246OlJp
Z2h0OgotICAgICAgICByZXR1cm4gKHBvaW50LngoKSA+IHJlY3QubWF4WCgpKTsKLSAgICBjYXNl
IFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uOjpCb3R0b206Ci0gICAgICAgIHJldHVybiAocG9pbnQu
eSgpID4gcmVjdC5tYXhZKCkpOwotICAgIH0KLX0KLQotUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBX
ZWJQYWdlOjpjaGFuZ2VCbG9ja1NlbGVjdGlvbihjb25zdCBJbnRQb2ludCYgcG9pbnQsIFNlbGVj
dGlvbkhhbmRsZVBvc2l0aW9uIGhhbmRsZVBvc2l0aW9uLCBmbG9hdCYgZ3Jvd1RocmVzaG9sZCwg
ZmxvYXQmIHNocmlua1RocmVzaG9sZCwgU2VsZWN0aW9uRmxhZ3MmIGZsYWdzKQotewotICAgIEZy
YW1lJiBmcmFtZSA9IG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNlZE9yTWFpbkZyYW1l
KCk7Ci0gICAgUmVmUHRyPFJhbmdlPiBjdXJyZW50UmFuZ2UgPSBtX2N1cnJlbnRCbG9ja1NlbGVj
dGlvbiA/IG1fY3VycmVudEJsb2NrU2VsZWN0aW9uLmdldCgpIDogZnJhbWUuc2VsZWN0aW9uKCku
c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICBpZiAoIWN1cnJlbnRSYW5nZSkK
LSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgUmVmUHRyPFJhbmdlPiBuZXdSYW5nZSA9IHNo
b3VsZEV4cGFuZChoYW5kbGVQb3NpdGlvbiwgc2VsZWN0aW9uQm94Rm9yUmFuZ2UoY3VycmVudFJh
bmdlLmdldCgpKSwgcG9pbnQpID8gZXhwYW5kZWRSYW5nZUZyb21IYW5kbGUoKmN1cnJlbnRSYW5n
ZSwgaGFuZGxlUG9zaXRpb24pIDogY29udHJhY3RlZFJhbmdlRnJvbUhhbmRsZSgqY3VycmVudFJh
bmdlLCBoYW5kbGVQb3NpdGlvbiwgZmxhZ3MpOwotCi0gICAgaWYgKG5ld1JhbmdlKSB7Ci0gICAg
ICAgIG1fY3VycmVudEJsb2NrU2VsZWN0aW9uID0gbmV3UmFuZ2U7Ci0gICAgICAgIGZyYW1lLnNl
bGVjdGlvbigpLnNldFNlbGVjdGVkUmFuZ2UobmV3UmFuZ2UuZ2V0KCksIFZQX0RFRkFVTFRfQUZG
SU5JVFksIHRydWUsIFVzZXJUcmlnZ2VyZWQpOwotICAgIH0KLQotICAgIGNvbXB1dGVFeHBhbmRB
bmRTaHJpbmtUaHJlc2hvbGRzRm9ySGFuZGxlKHBvaW50LCBoYW5kbGVQb3NpdGlvbiwgZ3Jvd1Ro
cmVzaG9sZCwgc2hyaW5rVGhyZXNob2xkKTsKLSAgICByZXR1cm4gbmV3UmFuZ2U7Ci19Ci0KLXZv
aWQgV2ViUGFnZTo6dXBkYXRlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2goY29uc3QgSW50UG9pbnQm
IHBvaW50LCB1aW50MzJfdCB0b3VjaCwgdWludDMyX3QgaGFuZGxlUG9zaXRpb24pCi17Ci0gICAg
RnJhbWUmIGZyYW1lID0gbV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJh
bWUoKTsKLSAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZnJhbWUudmlldygpLT5yb290Vmll
d1RvQ29udGVudHMocG9pbnQpOwotCi0gICAgZmxvYXQgZ3Jvd1RocmVzaG9sZCA9IDA7Ci0gICAg
ZmxvYXQgc2hyaW5rVGhyZXNob2xkID0gMDsKLSAgICBTZWxlY3Rpb25GbGFncyBmbGFncyA9IE5v
bmU7Ci0KLSAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PFNlbGVjdGlvblRvdWNoPih0b3VjaCkpIHsK
LSAgICBjYXNlIFNlbGVjdGlvblRvdWNoOjpTdGFydGVkOgotICAgICAgICBjb21wdXRlRXhwYW5k
QW5kU2hyaW5rVGhyZXNob2xkc0ZvckhhbmRsZShhZGp1c3RlZFBvaW50LCBzdGF0aWNfY2FzdDxT
ZWxlY3Rpb25IYW5kbGVQb3NpdGlvbj4oaGFuZGxlUG9zaXRpb24pLCBncm93VGhyZXNob2xkLCBz
aHJpbmtUaHJlc2hvbGQpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFNlbGVjdGlvblRvdWNo
OjpFbmRlZDoKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBTZWxlY3Rpb25Ub3VjaDo6TW92ZWQ6
Ci0gICAgICAgIGNoYW5nZUJsb2NrU2VsZWN0aW9uKGFkanVzdGVkUG9pbnQsIHN0YXRpY19jYXN0
PFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uPihoYW5kbGVQb3NpdGlvbiksIGdyb3dUaHJlc2hvbGQs
IHNocmlua1RocmVzaG9sZCwgZmxhZ3MpOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0Ogot
ICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpEaWRVcGRhdGVCbG9ja1NlbGVjdGlvbldpdGhUb3VjaCh0b3VjaCwgc3RhdGljX2Nhc3Q8dWlu
dDMyX3Q+KGZsYWdzKSwgZ3Jvd1RocmVzaG9sZCwgc2hyaW5rVGhyZXNob2xkKSk7Ci19Ci0KIHZv
aWQgV2ViUGFnZTo6Y2xlYXJTZWxlY3Rpb24oKQogewogICAgIG1fY3VycmVudEJsb2NrU2VsZWN0
aW9uID0gbnVsbHB0cjsK
</data>
<flag name="review"
          id="344509"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>