<?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>200999</bug_id>
          
          <creation_ts>2019-08-21 15:17:36 -0700</creation_ts>
          <short_desc>[Mail] Tapping top of message scrolls back to copied text instead of top of the message</short_desc>
          <delta_ts>2019-08-22 10:36:06 -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="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1563719</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:17:36 -0700</bug_when>
    <thetext>[Mail] Tapping top of message scrolls back to copied text instead of top of the message</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563722</commentid>
    <comment_count>1</comment_count>
      <attachid>376928</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:18:07 -0700</bug_when>
    <thetext>Created attachment 376928
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563723</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:18:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/54564878&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563725</commentid>
    <comment_count>3</comment_count>
      <attachid>376929</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:21:46 -0700</bug_when>
    <thetext>Created attachment 376929
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563743</commentid>
    <comment_count>4</comment_count>
      <attachid>376929</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-21 15:36:20 -0700</bug_when>
    <thetext>Comment on attachment 376929
Patch

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

&gt; LayoutTests/editing/selection/ios/change-selection-by-tapping-with-existing-selection.html:51
&gt; +    // await UIHelper.activateElementAndWaitForInputSession(document.getElementById(&quot;editor&quot;));

🤷🏻‍♂️</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563749</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:40:34 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #4)
&gt; Comment on attachment 376929 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=376929&amp;action=review
&gt; 
&gt; &gt; LayoutTests/editing/selection/ios/change-selection-by-tapping-with-existing-selection.html:51
&gt; &gt; +    // await UIHelper.activateElementAndWaitForInputSession(document.getElementById(&quot;editor&quot;));
&gt; 
&gt; 🤷🏻‍♂️

LOL from the test I copied. Will remove</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563752</commentid>
    <comment_count>6</comment_count>
      <attachid>376938</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-21 15:42:01 -0700</bug_when>
    <thetext>Created attachment 376938
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563775</commentid>
    <comment_count>7</comment_count>
      <attachid>376938</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-21 16:05:33 -0700</bug_when>
    <thetext>Comment on attachment 376938
Patch

Clearing flags on attachment: 376938

Committed r248974: &lt;https://trac.webkit.org/changeset/248974&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563776</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-21 16:05:35 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564084</commentid>
    <comment_count>9</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2019-08-22 09:37:50 -0700</bug_when>
    <thetext>This change caused the following tests to fail on iOS Simulator:
editing/deleting/smart-delete-003.html
editing/deleting/smart-delete-004.html
editing/pasteboard/smart-paste-008.html

https://build.webkit.org/results/Apple%20iOS%2012%20Simulator%20Release%20WK2%20(Tests)/r249004%20(5907)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564121</commentid>
    <comment_count>10</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-08-22 10:36:06 -0700</bug_when>
    <thetext>(In reply to Ryan Haddad from comment #9)
&gt; This change caused the following tests to fail on iOS Simulator:
&gt; editing/deleting/smart-delete-003.html
&gt; editing/deleting/smart-delete-004.html
&gt; editing/pasteboard/smart-paste-008.html
&gt; 
&gt; https://build.webkit.org/results/
&gt; Apple%20iOS%2012%20Simulator%20Release%20WK2%20(Tests)/r249004%20(5907)/
&gt; results.html

Rebaselined in https://trac.webkit.org/changeset/249017/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376928</attachid>
            <date>2019-08-21 15:18:07 -0700</date>
            <delta_ts>2019-08-21 15:21:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200999-20190821151806.patch</filename>
            <type>text/plain</type>
            <size>15387</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk5MTMwYTE4MmM3MWFj
YTQyMDQxZmYzMWM1YjJlOTY2ZDAwZjg1Ni4uYWU0Y2I3NDdiNGMwNWM3MjY2ZWE1ZDFjZGM4ZjBj
MDJmNGE4ODA2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE5LTA4LTIxICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWlsXSBUYXBw
aW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFjayB0byBjb3BpZWQgdGV4dCBpbnN0ZWFkIG9m
IHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NDU2NDg3OD4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBlZGl0
aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rp
bmctc2VsZWN0aW9uLmh0bWwKKworICAgICAgICAqIHBhZ2UvRWRpdG9yQ2xpZW50Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnQ6OnNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5n
ZVNlbGVjdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVByZXNzRXZlbnRTaW5nbGVD
bGljayk6CisgICAgICAgIEluc3RlYWQgb2YgZW5jb2RpbmcgcGxhdGZvcm0gYmVoYXZpb3JzIGlu
IEV2ZW50SGFuZGxlciwgZGVmZXIgdG8gRWRpdG9yQ2xpZW50LgorCiAyMDE5LTA4LTIxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIEhMUyBzdHJlYW1z
IGRpc2FwcGVhciBmcm9tIE5vdyBQbGF5aW5nIHdoZW4gcGF1c2VkIG9uIHRoZSBsb2NrIHNjcmVl
bgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCA3YzJiNjY1N2EyNWQ3MjVkZTdmNDAyYzM5YjAwZDlhNjg5Mzg4OWE0Li5j
NjE0NDdmYmQ1YzM3MTZhOTQ3YjUzNWUzMGU1ZDBlMDVmMTU4NGE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMyIEBACisyMDE5LTA4LTIxICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWlsXSBUYXBwaW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFj
ayB0byBjb3BpZWQgdGV4dCBpbnN0ZWFkIG9mIHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NDU2NDg3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbiB0aGUgY2FzZSB3aGVyZSB5b3UgaGF2ZSBhIFdlYkNvcmUgc2Vs
ZWN0aW9uIGJ1dCBhcmUgbm90IGZpcnN0IHJlc3BvbmRlciwKKyAgICAgICAgd2hlbiB5b3UgdGFw
IHRoZSBXS1dlYlZpZXcgdG8gYmVjb21lIGZpcnN0IHJlc3BvbmRlciwgRXZlbnRIYW5kbGVyIHdv
dWxkCisgICAgICAgIGJhaWwgZnJvbSBzZXR0aW5nIHRoZSBzZWxlY3Rpb24sIGFzc3VtaW5nIFVJ
S2l0IHdhcyBnb2luZyB0byBkbyBpdC4gVGhpcworICAgICAgICBiZWhhdmlvciB3YXMgaW50cm9k
dWNlZCBpbiByPy4KKworICAgICAgICBIb3dldmVyLCBzaW5jZSB3ZSBhcmUgbm90IGZpcnN0IHJl
c3BvbmRlciwgVUlLaXQgZG9lcyBub3QgY2hhbmdlIHRoZQorICAgICAgICBzZWxlY3Rpb24sIHNp
bmNlIGl0IGNvbnNpZGVycyB0aGUgdmlldyB0byBub3QgYmUgZWRpdGFibGUuCisKKyAgICAgICAg
Rml4IHRoaXMgYnkgbGV0dGluZyBXZWJDb3JlIHNldCB0aGUgc2VsZWN0aW9uIGluIHRoaXMgY2Fz
ZSwgYXMgaXQgdXNlZCB0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9p
b3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGll
bnQ6OnNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5nZVNlbGVjdGlvbiBjb25zdCk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6aXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQgY29uc3QpOgorICAgICAg
ICBDb3B5IHRoZSBsb2dpYyBmcm9tIEV2ZW50SGFuZGxlciwgd2l0aCB0aGUgYWRkZWQgY2F2ZWF0
ICh3aGljaCBmaXhlcyB0aGUKKyAgICAgICAgYWZvcmVtZW50aW9uZWQgYmVoYXZpb3IpIHRoYXQg
d2Ugd2lsbCBhbGxvdyBFdmVudEhhbmRsZXIgdG8gY2hhbmdlIHRoZQorICAgICAgICBzZWxlY3Rp
b24gaWYgd2UgZG9uJ3QgaGF2ZSBhIGZvY3VzZWQgbm9kZSBpbiB0aGUgVUlLaXQgc2Vuc2UsIGJl
Y2F1c2UKKyAgICAgICAgd2Uga25vdyB0aGF0IHRoZSBwbGF0Zm9ybSB0ZXh0IGludGVyYWN0aW9u
IGNvZGUgd2lsbCAqbm90KiBjaGFuZ2UgdGhlCisgICAgICAgIHNlbGVjdGlvbiBpZiB0aGF0IGlz
IHRoZSBjYXNlLCBzbyBpdCdzIHVwIHRvIHVzLgorCiAyMDE5LTA4LTIxICBLZWl0aCBSb2xsaW4g
IDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3Igd2F0Y2hP
UyA8IDYuMApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IDA4ZjQzNzlhYjZiZjBkNDkx
MWRlNjQ2ZWJmOGRhMDM3ODM0OTYyMmIuLmEyZGMyZWNlMGNlZTVkYTM2OGEyNjQzMDIyYmU0OTVk
MTU1Y2M3MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAor
MjAxOS0wOC0yMSAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAg
ICAgICBbTWFpbF0gVGFwcGluZyB0b3Agb2YgbWVzc2FnZSBzY3JvbGxzIGJhY2sgdG8gY29waWVk
IHRleHQgaW5zdGVhZCBvZiB0b3Agb2YgdGhlIG1lc3NhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDk5OQorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTQ1NjQ4Nzg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDoKKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW06CisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6
OnNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5nZVNlbGVjdGlvbiBjb25zdCk6CisgICAgICAg
IENvcHkgdGhlIGV4aXN0aW5nIGJlaGF2aW9yIGZyb20gRXZlbnRIYW5kbGVyLgorICAgICAgICBX
ZSBkbyBub3QgZml4IHRoZSBidWcgaW4gV2ViS2l0TGVnYWN5IGZvciBhIG11bHRpdHVkZSBvZiBy
ZWFzb25zLCBwcmltYXJpbHkKKyAgICAgICAgYmVjYXVzZSB3ZSBkbyBub3Qga25vdyBvZiBhbnkg
dXNlciBpbXBhY3QuCisKIDIwMTktMDgtMTkgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5j
b20+CiAKICAgICAgICAgUmVtb3ZlIElEQi1zcGVjaWZpYyBxdW90YQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRp
dG9yQ2xpZW50LmgKaW5kZXggMTM2NmU4YmJmMGY3NjFkZjExMDRiMzBiNTQyMDNmNDY4MzExNGEy
My4uZTIwZDlkM2E3NDc0MDNlOGRiZWU0NDE4ZWY1ZWI0NjRjNjljNzE0MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0VkaXRvckNsaWVudC5oCkBAIC0xODYsNiArMTg2LDggQEAgcHVibGljOgogICAgIHZpcnR1
YWwgYm9vbCBwZXJmb3JtVHdvU3RlcERyb3AoRG9jdW1lbnRGcmFnbWVudCYsIFJhbmdlJiBkZXN0
aW5hdGlvbiwgYm9vbCBpc01vdmUpID0gMDsKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5TaG93Rm9u
dFBhbmVsKCkgY29uc3QgPSAwOworCisgICAgdmlydHVhbCBib29sIHNob3VsZEFsbG93U2luZ2xl
Q2xpY2tUb0NoYW5nZVNlbGVjdGlvbihOb2RlJiwgY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYpIGNv
bnN0IHsgcmV0dXJuIHRydWU7IH0KIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcAppbmRleCBkMjBiOThjNDE1ZWVjODI3NmY4OTAwZjI0YzY3YTk3ZjEwMWQwYTA3Li4xMDZj
ODBiN2RiZjgzZmZjMjFhM2Y5ZGY5MTFjYTJlMzJjMDA0ZDc1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9F
dmVudEhhbmRsZXIuY3BwCkBAIC02OTgsMTIgKzY5OCw4IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpo
YW5kbGVNb3VzZVByZXNzRXZlbnRTaW5nbGVDbGljayhjb25zdCBNb3VzZUV2ZW50V2l0aEhpdFRl
c3RSCiAgICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24gPSBtX2ZyYW1lLnNlbGVjdGlv
bigpLnNlbGVjdGlvbigpOwogICAgIFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSA9IENoYXJh
Y3RlckdyYW51bGFyaXR5OwogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICAvLyBUaGUg
dGV4dCBzZWxlY3Rpb24gYXNzaXN0YW50IHdpbGwgaGFuZGxlIHNlbGVjdGlvbiBpbiB0aGUgY2Fz
ZSB3aGVyZSB3ZSBhcmUgYWxyZWFkeSBlZGl0aW5nIHRoZSBub2RlCi0gICAgYXV0byogZWRpdGFi
bGVSb290ID0gbmV3U2VsZWN0aW9uLnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsKLSAgICBpZiAoZWRp
dGFibGVSb290ICYmIGVkaXRhYmxlUm9vdCA9PSB0YXJnZXROb2RlLT5yb290RWRpdGFibGVFbGVt
ZW50KCkpCisgICAgaWYgKCFtX2ZyYW1lLmVkaXRvcigpLmNsaWVudCgpLT5zaG91bGRBbGxvd1Np
bmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24oKnRhcmdldE5vZGUsIG5ld1NlbGVjdGlvbikpCiAg
ICAgICAgIHJldHVybiB0cnVlOwotI2VuZGlmCiAKICAgICBpZiAoZXh0ZW5kU2VsZWN0aW9uICYm
IG5ld1NlbGVjdGlvbi5pc0NhcmV0T3JSYW5nZSgpKSB7CiAgICAgICAgIFZpc2libGVTZWxlY3Rp
b24gc2VsZWN0aW9uSW5Vc2VyU2VsZWN0QWxsID0gZXhwYW5kU2VsZWN0aW9uVG9SZXNwZWN0U2Vs
ZWN0T25Nb3VzZURvd24oKnRhcmdldE5vZGUsIFZpc2libGVTZWxlY3Rpb24ocG9zKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmgKaW5kZXggZDIyZDRjYjczZjI5NzNmNTY1NWE4NzNlYmQyMmQ2YjAwNmFlMGYz
ZC4uYmVhMTdmOWFhODkyYTdiMzM3ZGI1NjAwNDhjYzg3NzAzYjVjNGQxNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaApAQCAtMTgxLDYgKzE4MSw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6
OkRvY3VtZW50RnJhZ21lbnQ+IGRvY3VtZW50RnJhZ21lbnRGcm9tRGVsZWdhdGUoaW50IGluZGV4
KSBmaW5hbDsKICAgICBib29sIHBlcmZvcm1zVHdvU3RlcFBhc3RlKFdlYkNvcmU6OkRvY3VtZW50
RnJhZ21lbnQqKSBmaW5hbDsKICAgICB2b2lkIHVwZGF0ZVN0cmluZ0ZvckZpbmQoY29uc3QgU3Ry
aW5nJikgZmluYWw7CisgICAgYm9vbCBzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxl
Y3Rpb24oV2ViQ29yZTo6Tm9kZSYsIGNvbnN0IFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb24mKSBj
b25zdCBmaW5hbDsKICNlbmRpZgogCiAgICAgYm9vbCBwZXJmb3JtVHdvU3RlcERyb3AoV2ViQ29y
ZTo6RG9jdW1lbnRGcmFnbWVudCYsIFdlYkNvcmU6OlJhbmdlJiwgYm9vbCBpc01vdmUpIGZpbmFs
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lv
cy9XZWJFZGl0b3JDbGllbnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvaW9zL1dlYkVkaXRvckNsaWVudElPUy5tbQppbmRleCA4YjczMzZkODY1YWI3MDBh
MjQwYzBkNTBhMzM3ZDg3ODM3M2I2MTYyLi44YTc5YjI3YjMzMDBiMzliMDgwNmZkMjM2ODljMzJj
NjlhY2ZiMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvaW9zL1dlYkVkaXRvckNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkVkaXRvckNsaWVudElPUy5tbQpAQCAtMTAyLDYg
KzEwMiwxMyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6b3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNo
YW5nZWQoKQogICAgIG1fcGFnZS0+ZGlkQ2hhbmdlT3ZlcmZsb3dTY3JvbGxQb3NpdGlvbigpOwog
fQogCitib29sIFdlYkVkaXRvckNsaWVudDo6c2hvdWxkQWxsb3dTaW5nbGVDbGlja1RvQ2hhbmdl
U2VsZWN0aW9uKFdlYkNvcmU6Ok5vZGUmIHRhcmdldE5vZGUsIGNvbnN0IFdlYkNvcmU6OlZpc2li
bGVTZWxlY3Rpb24mIG5ld1NlbGVjdGlvbikgY29uc3QKK3sKKyAgICAvLyBUaGUgdGV4dCBzZWxl
Y3Rpb24gYXNzaXN0YW50IHdpbGwgaGFuZGxlIHNlbGVjdGlvbiBpbiB0aGUgY2FzZSB3aGVyZSB3
ZSBhcmUgYWxyZWFkeSBlZGl0aW5nIHRoZSBub2RlCisgICAgYXV0byogZWRpdGFibGVSb290ID0g
bmV3U2VsZWN0aW9uLnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsKKyAgICByZXR1cm4gIWVkaXRhYmxl
Um9vdCB8fCBlZGl0YWJsZVJvb3QgIT0gdGFyZ2V0Tm9kZS5yb290RWRpdGFibGVFbGVtZW50KCkg
fHwgIW1fcGFnZS0+aXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoKTsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IDQwY2VkNzY0
ZTMwNmYxOWUzMDY4NGJjZTY3Y2VjZDY3ZjYyMDA2NTcuLjc0NjY4ODI2MmNjMTc4OTdmNzFmZGQ1
YjQwMWUwZDQ2OTk2MTZmNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKQEAgLTY3OCw2ICs2NzgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRGb2N1c2Vk
RWxlbWVudFZhbHVlQXNOdW1iZXIoZG91YmxlKTsKICAgICB2b2lkIHNldEZvY3VzZWRFbGVtZW50
U2VsZWN0ZWRJbmRleCh1aW50MzJfdCBpbmRleCwgYm9vbCBhbGxvd011bHRpcGxlU2VsZWN0aW9u
KTsKICAgICB2b2lkIHNldElzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50KGJvb2wp
OworICAgIGJvb2wgaXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoKSBjb25zdCB7
IHJldHVybiBtX2lzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50OyB9CiAgICAgdm9p
ZCB1cGRhdGVTZWxlY3Rpb25BcHBlYXJhbmNlKCk7CiAgICAgdm9pZCBnZXRTZWxlY3Rpb25Db250
ZXh0KENhbGxiYWNrSUQpOwogICAgIHZvaWQgaGFuZGxlVHdvRmluZ2VyVGFwQXRQb2ludChjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYsIE9wdGlvblNldDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmll
cj4sIHVpbnQ2NF90IHJlcXVlc3RJRCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IGI1MTA3ODdkODA5
YmNmOTdiNzY4OWU3NDA5MzI4Mzc1YWEwYjBiMzEuLjVhZTUxOGY0MGVlYTg0MmEyM2EwN2M5ODUw
MWY4NzRhZDViN2MxYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCkBAIC0xNzYsNiArMTc2LDEwIEBAIHBy
aXZhdGU6CiAKICAgICB2b2lkIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0
ZXAmLCBib29sIGlzUmVkbyk7CiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIGJvb2wg
c2hvdWxkQWxsb3dTaW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uKFdlYkNvcmU6Ok5vZGUmIHRh
cmdldE5vZGUsIGNvbnN0IFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb24mIG5ld1NlbGVjdGlvbikg
Y29uc3Q7CisjZW5kaWYKKwogICAgIGJvb2wgY2FuU2hvd0ZvbnRQYW5lbCgpIGNvbnN0IGZpbmFs
CiAgICAgewogI2lmIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQppbmRleCBmZmZiMjFj
MzYxZGYzYzNjMTkwNzNhYTc2OWY0Njg5ZmUyN2E0ZTBkLi41MWM2YWI0Yzc3NzlhNGI0ZTA0MDEx
ZTE5MmI0NjE1OTBmYjlkZmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCkBAIC0xMjU4LDMgKzEyNTgs
MTIgQEAgdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlcXVlc3RDaGVja2luZ09mU3RyaW5nKFdlYkNv
cmU6OlRleHRDaGVja2luZ1JlcXVlc3QmIHJlcXUKICAgICAgICAgfV07CiAjZW5kaWYKIH0KKwor
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCitib29sIFdlYkVkaXRvckNsaWVudDo6c2hvdWxkQWxs
b3dTaW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uKFdlYkNvcmU6Ok5vZGUmIHRhcmdldE5vZGUs
IGNvbnN0IFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb24mIG5ld1NlbGVjdGlvbikgY29uc3QKK3sK
KyAgICAvLyBUaGUgdGV4dCBzZWxlY3Rpb24gYXNzaXN0YW50IHdpbGwgaGFuZGxlIHNlbGVjdGlv
biBpbiB0aGUgY2FzZSB3aGVyZSB3ZSBhcmUgYWxyZWFkeSBlZGl0aW5nIHRoZSBub2RlCisgICAg
YXV0byogZWRpdGFibGVSb290ID0gbmV3U2VsZWN0aW9uLnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsK
KyAgICByZXR1cm4gIWVkaXRhYmxlUm9vdCB8fCBlZGl0YWJsZVJvb3QgIT0gdGFyZ2V0Tm9kZS5y
b290RWRpdGFibGVFbGVtZW50KCk7Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5NzRjYzdhMTUwODU5MTYw
NmEyY2UwMmFiNjg2ZjE3YTNhNzcxYjY0Li4wNWVlYWJjZTk4N2M4ZGY0MTVmZWU0NTczOWY3Njgy
Yjc0YTkwOWVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTktMDgtMjEgIFRpbSBIb3J0b24g
IDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW01haWxdIFRhcHBpbmcgdG9w
IG9mIG1lc3NhZ2Ugc2Nyb2xscyBiYWNrIHRvIGNvcGllZCB0ZXh0IGluc3RlYWQgb2YgdG9wIG9m
IHRoZSBtZXNzYWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDA5OTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0NTY0ODc4PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rp
b24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlv
bi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9j
aGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24uaHRtbDog
QWRkZWQuCisKIDIwMTktMDgtMjEgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgog
CiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFBhZ2U6IHJlLWFkZCBlbmFibGUvZGlzYWJsZSBhZnRl
ciByMjQ4NDU0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mv
Y2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0aW9uLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0
aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjU1YzQ3ZjY3NTI4ZmQ3MmE0ZWNhZTA2YzYyYWNmYTEwMjIwMmJhN2UKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVj
dGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEzIEBACitIZXJlJ3MgdG8gdGhlIGNyYXp5IG9uZXMsIHRoZSBtaXNmaXRzLCB0aGUg
cmViZWxzLCB0aGUgdHJvdWJsZSBtYWtlcnMsIHRoZSByb3VuZCBwZWdzIGluIHRoZSBzcXVhcmUg
aG9sZXMsIHRoZSBvbmVzIHdobyBzZWUgdGhpbmdzIGRpZmZlcmVudGx5LiBUaGVyZSBub3QgZm9u
ZCBvZiBydWxlcywgYW5kIHRoZXkgaGF2ZSBubyByZXNwZWN0IGZvciB0aGUgc3RhdHVzIHF1bywg
eW91IGNhbiBxdW90ZSB0aGVuLCBkaXNhZ3JlZSB3aXRoIHRoZW0sIGdsb3JpZnkgb3IgdmlsaWZ5
IHRoZW0sIGFib3V0IHRoZSBvbmx5IHRoaW5nIHlvdSBjYW4ndCBkbyBpcyBpZ25vcmUgdGhlbS4g
QmVjYXVzZSB0aGV5IGNoYW5nZSB0aGluZ3MuIFRoZXkgcHVzaCB0aGUgaHVtYW4gcmFjZSBmb3J3
YXJkLiBBbmQgd2hpbGUgc29tZSBtYXkgc2VlIHRoZW0gYXMgdGhlIGNyYXp5IG9uZXMsIHdlIHNl
ZSBnZW5pdXMuIEJlY2F1c2UgdGhlIHBlb3BsZSB3aG8gYXJlIGNyYXp5IGVub3VnaCB0byB0aGlu
ayB0aGV5IGNhbiBjaGFuZ2UgdGhlIHdvcmxkIGFyZSB0aGUgb25lcyB3aG8gZG8uCisKK1Zlcmlm
aWVzIHRoYXQgdGFwcGluZyB0byBjaGFuZ2Ugc2VsZWN0aW9uIHdvcmtzIHdoZW4gd2UgYWxyZWFk
eSBoYXZlIGEgc2VsZWN0aW9uIGluIHRoZSBzYW1lIGVkaXRhYmxlIHJvb3QgYnV0IGRvIG5vdCBj
dXJyZW50bHkgaGF2ZSBhIGZvY3VzZWQgbm9kZSBpbiB0aGUgVUlLaXQgc2Vuc2UuCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKworU2VsZWN0aW9uIGJlZm9yZSB0YXA6ICh0YXJnZXQjMCwgdGFy
Z2V0IzIpCitTZWxlY3Rpb24gYWZ0ZXIgdGFwOiAoZWRpdG9yIzAsIGVkaXRvciMwKQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24t
YnktdGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0
aW5nLXNlbGVjdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0ODY2MWFlMjlmZjVkY2VmZjE3YmQyMDI3
YzJmY2U1YWMyNmY5YWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2Vs
ZWN0aW9uLmh0bWwKQEAgLTAsMCArMSw3MSBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0
LXRlc3QtcnVubmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3Njcmlw
dD4KKzxtZXRhIG5hbWU9dmlld3BvcnQgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0
aWFsLXNjYWxlPTEsIHVzZXItc2NhbGFibGU9bm8iPgorPHN0eWxlPgorYm9keSwgaHRtbCB7Cisg
ICAgd2lkdGg6IDEwMCU7CisgICAgaGVpZ2h0OiAxMDAlOworICAgIG1hcmdpbjogMDsKK30KKwor
I2VkaXRvciB7CisgICAgd2lkdGg6IDMwMHB4OworICAgIGhlaWdodDogMzIwcHg7CisgICAgZm9u
dC1zaXplOiAxOHB4OworfQorPC9zdHlsZT4KKzxzY3JpcHQ+Citqc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKworZnVuY3Rpb24gc2VsZWN0aW9uVG9TdHJpbmcoKSB7CisgICAgY29uc3Qgc2VsZWN0aW9u
ID0gZ2V0U2VsZWN0aW9uKCk7CisgICAgaWYgKCFzZWxlY3Rpb24ucmFuZ2VDb3VudCkKKyAgICAg
ICAgcmV0dXJuICIobm8gc2VsZWN0aW9uKSI7CisKKyAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlv
bi5nZXRSYW5nZUF0KDApOworICAgIHJldHVybiBgKCR7cmFuZ2Uuc3RhcnRDb250YWluZXIucGFy
ZW50RWxlbWVudC5pZH0jJHtyYW5nZS5zdGFydE9mZnNldH0sICR7cmFuZ2UuZW5kQ29udGFpbmVy
LnBhcmVudEVsZW1lbnQuaWR9IyR7cmFuZ2UuZW5kT2Zmc2V0fSlgOworfQorCitmdW5jdGlvbiB0
YXBBbmRXYWl0Rm9yU2VsZWN0aW9uQ2hhbmdlKHgsIHkpIHsKKyAgICByZXR1cm4gbmV3IFByb21p
c2UocmVzb2x2ZSA9PiB7CisgICAgICAgIGNvbnN0IGVkaXRvciA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJlZGl0b3IiKTsKKyAgICAgICAgbGV0IGRvbmVDb3VudCA9IDA7CisgICAgICAgIGNv
bnN0IGNoZWNrRG9uZSA9ICgpID0+IHsKKyAgICAgICAgICAgIGlmICgrK2RvbmVDb3VudCAhPSAy
KQorICAgICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgICAgZG9jdW1lbnQucmVtb3Zl
RXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIiwgY2hlY2tEb25lKTsKKyAgICAgICAgICAg
IHJlc29sdmUoKTsKKyAgICAgICAgfQorICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVy
KCJzZWxlY3Rpb25jaGFuZ2UiLCBjaGVja0RvbmUpOworICAgICAgICBVSUhlbHBlci5hY3RpdmF0
ZUF0KHgsIHkpLnRoZW4oY2hlY2tEb25lKTsKKyAgICB9KTsKK30KKworYWRkRXZlbnRMaXN0ZW5l
cigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAgICBkZXNjcmlwdGlvbigiVmVyaWZpZXMgdGhhdCB0
YXBwaW5nIHRvIGNoYW5nZSBzZWxlY3Rpb24gd29ya3Mgd2hlbiB3ZSBhbHJlYWR5IGhhdmUgYSBz
ZWxlY3Rpb24gaW4gdGhlIHNhbWUgZWRpdGFibGUgcm9vdCBidXQgZG8gbm90IGN1cnJlbnRseSBo
YXZlIGEgZm9jdXNlZCBub2RlIGluIHRoZSBVSUtpdCBzZW5zZS4iKTsKKworICAgIC8vIGF3YWl0
IFVJSGVscGVyLmFjdGl2YXRlRWxlbWVudEFuZFdhaXRGb3JJbnB1dFNlc3Npb24oZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImVkaXRvciIpKTsKKworICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnNldEJh
c2VBbmRFeHRlbnQodGFyZ2V0LCAwLCB0YXJnZXQsIDIpOworCisgICAgZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcigiI3NlbGVjdGlvbi1iZWZvcmUiKS50ZXh0Q29udGVudCA9IHNlbGVjdGlvblRvU3Ry
aW5nKCk7CisgICAgYXdhaXQgdGFwQW5kV2FpdEZvclNlbGVjdGlvbkNoYW5nZSg1LCA1KTsKKyAg
ICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc2VsZWN0aW9uLWFmdGVyIikudGV4dENvbnRlbnQg
PSBzZWxlY3Rpb25Ub1N0cmluZygpOworCisgICAgZmluaXNoSlNUZXN0KCk7Cit9KTsKKzwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBjb250ZW50ZWRpdGFibGUgaWQ9ImVkaXRvciI+SGVy
ZSdzIHRvIHRoZSBjcmF6eSBvbmVzLCB0aGUgbWlzZml0cywgdGhlIHJlYmVscywgdGhlIHRyb3Vi
bGUgbWFrZXJzLCB0aGUgcm91bmQgcGVncyBpbiB0aGUgc3F1YXJlIGhvbGVzLCB0aGUgb25lcyB3
aG8gc2VlIHRoaW5ncyBkaWZmZXJlbnRseS4gVGhlcmUgbm90IGZvbmQgb2YgcnVsZXMsIGFuZCB0
aGV5IGhhdmUgbm8gcmVzcGVjdCBmb3IgdGhlIHN0YXR1cyBxdW8sIHlvdSBjYW4gcXVvdGUgdGhl
biwgZGlzYWdyZWUgd2l0aCB0aGVtLCBnbG9yaWZ5IG9yIHZpbGlmeSB0aGVtLCBhYm91dCB0aGUg
b25seSB0aGluZyB5b3UgY2FuJ3QgZG8gaXMgaWdub3JlIHRoZW0uICBCZWNhdXNlIHRoZXkgY2hh
bmdlIHRoaW5ncy4gVGhleSBwdXNoIHRoZSBodW1hbiByYWNlIGZvcndhcmQuIEFuZCB3aGlsZSBz
b21lIG1heSBzZWUgdGhlbSBhcyB0aGUgY3Jhenkgb25lcywgd2Ugc2VlIGdlbml1cy4gQmVjYXVz
ZSB0aGUgcGVvcGxlIHdobyBhcmUgY3JhenkgZW5vdWdoIHRvIHRoaW5rIHRoZXkgY2FuIGNoYW5n
ZSB0aGUgd29ybGQgYXJlIHRoZSBvbmVzIHdobyA8c3BhbiBpZD0ndGFyZ2V0Jz5kbzwvc3Bhbj4u
PC9wPgorICAgIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorICAgIDxwIGlkPSJjb25zb2xlIj48
L3A+CisgICAgPGRpdj5TZWxlY3Rpb24gYmVmb3JlIHRhcDogPHNwYW4gaWQ9InNlbGVjdGlvbi1i
ZWZvcmUiPjwvc3Bhbj48L2Rpdj4KKyAgICA8ZGl2PlNlbGVjdGlvbiBhZnRlciB0YXA6IDxzcGFu
IGlkPSJzZWxlY3Rpb24tYWZ0ZXIiPjwvc3Bhbj48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376929</attachid>
            <date>2019-08-21 15:21:46 -0700</date>
            <delta_ts>2019-08-21 15:42:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200999-20190821152145.patch</filename>
            <type>text/plain</type>
            <size>15392</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk5MTMwYTE4MmM3MWFj
YTQyMDQxZmYzMWM1YjJlOTY2ZDAwZjg1Ni4uYWU0Y2I3NDdiNGMwNWM3MjY2ZWE1ZDFjZGM4ZjBj
MDJmNGE4ODA2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE5LTA4LTIxICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWlsXSBUYXBw
aW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFjayB0byBjb3BpZWQgdGV4dCBpbnN0ZWFkIG9m
IHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NDU2NDg3OD4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBlZGl0
aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rp
bmctc2VsZWN0aW9uLmh0bWwKKworICAgICAgICAqIHBhZ2UvRWRpdG9yQ2xpZW50Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnQ6OnNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5n
ZVNlbGVjdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVByZXNzRXZlbnRTaW5nbGVD
bGljayk6CisgICAgICAgIEluc3RlYWQgb2YgZW5jb2RpbmcgcGxhdGZvcm0gYmVoYXZpb3JzIGlu
IEV2ZW50SGFuZGxlciwgZGVmZXIgdG8gRWRpdG9yQ2xpZW50LgorCiAyMDE5LTA4LTIxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIEhMUyBzdHJlYW1z
IGRpc2FwcGVhciBmcm9tIE5vdyBQbGF5aW5nIHdoZW4gcGF1c2VkIG9uIHRoZSBsb2NrIHNjcmVl
bgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCA3YzJiNjY1N2EyNWQ3MjVkZTdmNDAyYzM5YjAwZDlhNjg5Mzg4OWE0Li40
NzBmZTllNmQ3ODQ5ZjBkZmZlZGY1ODQ0MzBhN2JkOThmMzQ4MWRhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMyIEBACisyMDE5LTA4LTIxICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWlsXSBUYXBwaW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFj
ayB0byBjb3BpZWQgdGV4dCBpbnN0ZWFkIG9mIHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NDU2NDg3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbiB0aGUgY2FzZSB3aGVyZSB5b3UgaGF2ZSBhIFdlYkNvcmUgc2Vs
ZWN0aW9uIGJ1dCBhcmUgbm90IGZpcnN0IHJlc3BvbmRlciwKKyAgICAgICAgd2hlbiB5b3UgdGFw
IHRoZSBXS1dlYlZpZXcgdG8gYmVjb21lIGZpcnN0IHJlc3BvbmRlciwgRXZlbnRIYW5kbGVyIHdv
dWxkCisgICAgICAgIGJhaWwgZnJvbSBzZXR0aW5nIHRoZSBzZWxlY3Rpb24sIGFzc3VtaW5nIFVJ
S2l0IHdhcyBnb2luZyB0byBkbyBpdC4gVGhpcworICAgICAgICBiZWhhdmlvciB3YXMgaW50cm9k
dWNlZCBpbiByMjMzMzExLgorCisgICAgICAgIEhvd2V2ZXIsIHNpbmNlIHdlIGFyZSBub3QgZmly
c3QgcmVzcG9uZGVyLCBVSUtpdCBkb2VzIG5vdCBjaGFuZ2UgdGhlCisgICAgICAgIHNlbGVjdGlv
biwgc2luY2UgaXQgY29uc2lkZXJzIHRoZSB2aWV3IHRvIG5vdCBiZSBlZGl0YWJsZS4KKworICAg
ICAgICBGaXggdGhpcyBieSBsZXR0aW5nIFdlYkNvcmUgc2V0IHRoZSBzZWxlY3Rpb24gaW4gdGhp
cyBjYXNlLCBhcyBpdCB1c2VkIHRvLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L2lvcy9XZWJFZGl0b3JDbGllbnRJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRv
ckNsaWVudDo6c2hvdWxkQWxsb3dTaW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uIGNvbnN0KToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjppc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCBjb25zdCk6Cisg
ICAgICAgIENvcHkgdGhlIGxvZ2ljIGZyb20gRXZlbnRIYW5kbGVyLCB3aXRoIHRoZSBhZGRlZCBj
YXZlYXQgKHdoaWNoIGZpeGVzIHRoZQorICAgICAgICBhZm9yZW1lbnRpb25lZCBiZWhhdmlvcikg
dGhhdCB3ZSB3aWxsIGFsbG93IEV2ZW50SGFuZGxlciB0byBjaGFuZ2UgdGhlCisgICAgICAgIHNl
bGVjdGlvbiBpZiB3ZSBkb24ndCBoYXZlIGEgZm9jdXNlZCBub2RlIGluIHRoZSBVSUtpdCBzZW5z
ZSwgYmVjYXVzZQorICAgICAgICB3ZSBrbm93IHRoYXQgdGhlIHBsYXRmb3JtIHRleHQgaW50ZXJh
Y3Rpb24gY29kZSB3aWxsICpub3QqIGNoYW5nZSB0aGUKKyAgICAgICAgc2VsZWN0aW9uIGlmIHRo
YXQgaXMgdGhlIGNhc2UsIHNvIGl0J3MgdXAgdG8gdXMuCisKIDIwMTktMDgtMjEgIEtlaXRoIFJv
bGxpbiAgPGtyb2xsaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBzdXBwb3J0IGZvciB3
YXRjaE9TIDwgNi4wCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggMDhmNDM3OWFiNmJm
MGQ0OTExZGU2NDZlYmY4ZGEwMzc4MzQ5NjIyYi4uYTJkYzJlY2UwY2VlNWRhMzY4YTI2NDMwMjJi
ZTQ5NWQxNTVjYzcwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDE5LTA4LTIxICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgor
CisgICAgICAgIFtNYWlsXSBUYXBwaW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFjayB0byBj
b3BpZWQgdGV4dCBpbnN0ZWFkIG9mIHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS81NDU2NDg3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOgorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKFdlYkVkaXRvckNs
aWVudDo6c2hvdWxkQWxsb3dTaW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uIGNvbnN0KToKKyAg
ICAgICAgQ29weSB0aGUgZXhpc3RpbmcgYmVoYXZpb3IgZnJvbSBFdmVudEhhbmRsZXIuCisgICAg
ICAgIFdlIGRvIG5vdCBmaXggdGhlIGJ1ZyBpbiBXZWJLaXRMZWdhY3kgZm9yIGEgbXVsdGl0dWRl
IG9mIHJlYXNvbnMsIHByaW1hcmlseQorICAgICAgICBiZWNhdXNlIHdlIGRvIG5vdCBrbm93IG9m
IGFueSB1c2VyIGltcGFjdC4KKwogMjAxOS0wOC0xOSAgU2lodWkgTGl1ICA8c2lodWlfbGl1QGFw
cGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgSURCLXNwZWNpZmljIHF1b3RhCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9FZGl0b3JDbGllbnQuaAppbmRleCAxMzY2ZThiYmYwZjc2MWRmMTEwNGIzMGI1NDIwM2Y0Njgz
MTE0YTIzLi5lMjBkOWQzYTc0NzQwM2U4ZGJlZTQ0MThlZjVlYjQ2NGM2OWM3MTQxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKQEAgLTE4Niw2ICsxODYsOCBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCBib29sIHBlcmZvcm1Ud29TdGVwRHJvcChEb2N1bWVudEZyYWdtZW50JiwgUmFuZ2Um
IGRlc3RpbmF0aW9uLCBib29sIGlzTW92ZSkgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGNhblNo
b3dGb250UGFuZWwoKSBjb25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQWxsb3dT
aW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uKE5vZGUmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9u
JikgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwCmluZGV4IGQyMGI5OGM0MTVlZWM4Mjc2Zjg5MDBmMjRjNjdhOTdmMTAxZDBhMDcu
LjEwNmM4MGI3ZGJmODNmZmMyMWEzZjlkZjkxMWNhMmUzMmMwMDRkNzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTY5OCwxMiArNjk4LDggQEAgYm9vbCBFdmVudEhhbmRs
ZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudFNpbmdsZUNsaWNrKGNvbnN0IE1vdXNlRXZlbnRXaXRo
SGl0VGVzdFIKICAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbiA9IG1fZnJhbWUuc2Vs
ZWN0aW9uKCkuc2VsZWN0aW9uKCk7CiAgICAgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5ID0g
Q2hhcmFjdGVyR3JhbnVsYXJpdHk7CiAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIC8v
IFRoZSB0ZXh0IHNlbGVjdGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2VsZWN0aW9uIGluIHRo
ZSBjYXNlIHdoZXJlIHdlIGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUKLSAgICBhdXRvKiBl
ZGl0YWJsZVJvb3QgPSBuZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVudCgpOwotICAgIGlm
IChlZGl0YWJsZVJvb3QgJiYgZWRpdGFibGVSb290ID09IHRhcmdldE5vZGUtPnJvb3RFZGl0YWJs
ZUVsZW1lbnQoKSkKKyAgICBpZiAoIW1fZnJhbWUuZWRpdG9yKCkuY2xpZW50KCktPnNob3VsZEFs
bG93U2luZ2xlQ2xpY2tUb0NoYW5nZVNlbGVjdGlvbigqdGFyZ2V0Tm9kZSwgbmV3U2VsZWN0aW9u
KSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0jZW5kaWYKIAogICAgIGlmIChleHRlbmRTZWxlY3Rp
b24gJiYgbmV3U2VsZWN0aW9uLmlzQ2FyZXRPclJhbmdlKCkpIHsKICAgICAgICAgVmlzaWJsZVNl
bGVjdGlvbiBzZWxlY3Rpb25JblVzZXJTZWxlY3RBbGwgPSBleHBhbmRTZWxlY3Rpb25Ub1Jlc3Bl
Y3RTZWxlY3RPbk1vdXNlRG93bigqdGFyZ2V0Tm9kZSwgVmlzaWJsZVNlbGVjdGlvbihwb3MpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJF
ZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJFZGl0b3JDbGllbnQuaAppbmRleCBkMjJkNGNiNzNmMjk3M2Y1NjU1YTg3M2ViZDIyZDZiMDA2
YWUwZjNkLi5iZWExN2Y5YWE4OTJhN2IzMzdkYjU2MDA0OGNjODc3MDNiNWM0ZDE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVk
aXRvckNsaWVudC5oCkBAIC0xODEsNiArMTgxLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V2Vi
Q29yZTo6RG9jdW1lbnRGcmFnbWVudD4gZG9jdW1lbnRGcmFnbWVudEZyb21EZWxlZ2F0ZShpbnQg
aW5kZXgpIGZpbmFsOwogICAgIGJvb2wgcGVyZm9ybXNUd29TdGVwUGFzdGUoV2ViQ29yZTo6RG9j
dW1lbnRGcmFnbWVudCopIGZpbmFsOwogICAgIHZvaWQgdXBkYXRlU3RyaW5nRm9yRmluZChjb25z
dCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5n
ZVNlbGVjdGlvbihXZWJDb3JlOjpOb2RlJiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlv
biYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICAgICBib29sIHBlcmZvcm1Ud29TdGVwRHJvcChX
ZWJDb3JlOjpEb2N1bWVudEZyYWdtZW50JiwgV2ViQ29yZTo6UmFuZ2UmLCBib29sIGlzTW92ZSkg
ZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvaW9zL1dlYkVkaXRvckNsaWVudElPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCmluZGV4IDhiNzMzNmQ4NjVh
YjcwMGEyNDBjMGQ1MGEzMzdkODc4MzczYjYxNjIuLjhhNzliMjdiMzMwMGIzOWIwODA2ZmQyMzY4
OWMzMmM2OWFjZmIyOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCkBAIC0x
MDIsNiArMTAyLDEzIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpvdmVyZmxvd1Njcm9sbFBvc2l0
aW9uQ2hhbmdlZCgpCiAgICAgbV9wYWdlLT5kaWRDaGFuZ2VPdmVyZmxvd1Njcm9sbFBvc2l0aW9u
KCk7CiB9CiAKK2Jvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9D
aGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6Tm9kZSYgdGFyZ2V0Tm9kZSwgY29uc3QgV2ViQ29yZTo6
VmlzaWJsZVNlbGVjdGlvbiYgbmV3U2VsZWN0aW9uKSBjb25zdAoreworICAgIC8vIFRoZSB0ZXh0
IHNlbGVjdGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2VsZWN0aW9uIGluIHRoZSBjYXNlIHdo
ZXJlIHdlIGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUKKyAgICBhdXRvKiBlZGl0YWJsZVJv
b3QgPSBuZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVudCgpOworICAgIHJldHVybiAhZWRp
dGFibGVSb290IHx8IGVkaXRhYmxlUm9vdCAhPSB0YXJnZXROb2RlLnJvb3RFZGl0YWJsZUVsZW1l
bnQoKSB8fCAhbV9wYWdlLT5pc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCgpOwor
fQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1J
TFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggNDBj
ZWQ3NjRlMzA2ZjE5ZTMwNjg0YmNlNjdjZWNkNjdmNjIwMDY1Ny4uNzQ2Njg4MjYyY2MxNzg5N2Y3
MWZkZDViNDAxZTBkNDY5OTYxNmY1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaApAQCAtNjc4LDYgKzY3OCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEZv
Y3VzZWRFbGVtZW50VmFsdWVBc051bWJlcihkb3VibGUpOwogICAgIHZvaWQgc2V0Rm9jdXNlZEVs
ZW1lbnRTZWxlY3RlZEluZGV4KHVpbnQzMl90IGluZGV4LCBib29sIGFsbG93TXVsdGlwbGVTZWxl
Y3Rpb24pOwogICAgIHZvaWQgc2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQo
Ym9vbCk7CisgICAgYm9vbCBpc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCgpIGNv
bnN0IHsgcmV0dXJuIG1faXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQ7IH0KICAg
ICB2b2lkIHVwZGF0ZVNlbGVjdGlvbkFwcGVhcmFuY2UoKTsKICAgICB2b2lkIGdldFNlbGVjdGlv
bkNvbnRleHQoQ2FsbGJhY2tJRCk7CiAgICAgdm9pZCBoYW5kbGVUd29GaW5nZXJUYXBBdFBvaW50
KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgT3B0aW9uU2V0PFdlYktpdDo6V2ViRXZlbnQ6Ok1v
ZGlmaWVyPiwgdWludDY0X3QgcmVxdWVzdElEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggYjUxMDc4
N2Q4MDliY2Y5N2I3Njg5ZTc0MDkzMjgzNzVhYTBiMGIzMS4uNWFlNTE4ZjQwZWVhODQyYTIzYTA3
Yzk4NTAxZjg3NGFkNWI3YzFhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKQEAgLTE3Niw2ICsxNzYsMTAg
QEAgcHJpdmF0ZToKIAogICAgIHZvaWQgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChXZWJDb3JlOjpV
bmRvU3RlcCYsIGJvb2wgaXNSZWRvKTsKIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAg
Ym9vbCBzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6Tm9k
ZSYgdGFyZ2V0Tm9kZSwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgbmV3U2VsZWN0
aW9uKSBjb25zdDsKKyNlbmRpZgorCiAgICAgYm9vbCBjYW5TaG93Rm9udFBhbmVsKCkgY29uc3Qg
ZmluYWwKICAgICB7CiAjaWYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCmluZGV4IGZm
ZmIyMWMzNjFkZjNjM2MxOTA3M2FhNzY5ZjQ2ODlmZTI3YTRlMGQuLjUxYzZhYjRjNzc3OWE0YjRl
MDQwMTFlMTkyYjQ2MTU5MGZiOWRmZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KQEAgLTEyNTgsMyAr
MTI1OCwxMiBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVxdWVzdENoZWNraW5nT2ZTdHJpbmco
V2ViQ29yZTo6VGV4dENoZWNraW5nUmVxdWVzdCYgcmVxdQogICAgICAgICB9XTsKICNlbmRpZgog
fQorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKK2Jvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91
bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6Tm9kZSYgdGFyZ2V0
Tm9kZSwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgbmV3U2VsZWN0aW9uKSBjb25z
dAoreworICAgIC8vIFRoZSB0ZXh0IHNlbGVjdGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2Vs
ZWN0aW9uIGluIHRoZSBjYXNlIHdoZXJlIHdlIGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUK
KyAgICBhdXRvKiBlZGl0YWJsZVJvb3QgPSBuZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVu
dCgpOworICAgIHJldHVybiAhZWRpdGFibGVSb290IHx8IGVkaXRhYmxlUm9vdCAhPSB0YXJnZXRO
b2RlLnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk3NGNjN2ExNTA4
NTkxNjA2YTJjZTAyYWI2ODZmMTdhM2E3NzFiNjQuLjA1ZWVhYmNlOTg3YzhkZjQxNWZlZTQ1NzM5
Zjc2ODJiNzRhOTA5ZWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0wOC0yMSAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFpbF0gVGFwcGlu
ZyB0b3Agb2YgbWVzc2FnZSBzY3JvbGxzIGJhY2sgdG8gY29waWVkIHRleHQgaW5zdGVhZCBvZiB0
b3Agb2YgdGhlIG1lc3NhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMDk5OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTQ1NjQ4Nzg+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBlZGl0aW5nL3Nl
bGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2Vs
ZWN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlvbi5o
dG1sOiBBZGRlZC4KKwogMjAxOS0wOC0yMSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5j
b20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogUGFnZTogcmUtYWRkIGVuYWJsZS9kaXNhYmxl
IGFmdGVyIHIyNDg0NTQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1z
ZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlvbi1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNTVjNDdmNjc1MjhmZDcyYTRlY2FlMDZjNjJhY2ZhMTAyMjAyYmE3ZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Ut
c2VsZWN0aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTMgQEAKK0hlcmUncyB0byB0aGUgY3Jhenkgb25lcywgdGhlIG1pc2ZpdHMs
IHRoZSByZWJlbHMsIHRoZSB0cm91YmxlIG1ha2VycywgdGhlIHJvdW5kIHBlZ3MgaW4gdGhlIHNx
dWFyZSBob2xlcywgdGhlIG9uZXMgd2hvIHNlZSB0aGluZ3MgZGlmZmVyZW50bHkuIFRoZXJlIG5v
dCBmb25kIG9mIHJ1bGVzLCBhbmQgdGhleSBoYXZlIG5vIHJlc3BlY3QgZm9yIHRoZSBzdGF0dXMg
cXVvLCB5b3UgY2FuIHF1b3RlIHRoZW4sIGRpc2FncmVlIHdpdGggdGhlbSwgZ2xvcmlmeSBvciB2
aWxpZnkgdGhlbSwgYWJvdXQgdGhlIG9ubHkgdGhpbmcgeW91IGNhbid0IGRvIGlzIGlnbm9yZSB0
aGVtLiBCZWNhdXNlIHRoZXkgY2hhbmdlIHRoaW5ncy4gVGhleSBwdXNoIHRoZSBodW1hbiByYWNl
IGZvcndhcmQuIEFuZCB3aGlsZSBzb21lIG1heSBzZWUgdGhlbSBhcyB0aGUgY3Jhenkgb25lcywg
d2Ugc2VlIGdlbml1cy4gQmVjYXVzZSB0aGUgcGVvcGxlIHdobyBhcmUgY3JhenkgZW5vdWdoIHRv
IHRoaW5rIHRoZXkgY2FuIGNoYW5nZSB0aGUgd29ybGQgYXJlIHRoZSBvbmVzIHdobyBkby4KKwor
VmVyaWZpZXMgdGhhdCB0YXBwaW5nIHRvIGNoYW5nZSBzZWxlY3Rpb24gd29ya3Mgd2hlbiB3ZSBh
bHJlYWR5IGhhdmUgYSBzZWxlY3Rpb24gaW4gdGhlIHNhbWUgZWRpdGFibGUgcm9vdCBidXQgZG8g
bm90IGN1cnJlbnRseSBoYXZlIGEgZm9jdXNlZCBub2RlIGluIHRoZSBVSUtpdCBzZW5zZS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCitTZWxlY3Rpb24gYmVmb3JlIHRhcDogKHRhcmdldCMw
LCB0YXJnZXQjMikKK1NlbGVjdGlvbiBhZnRlciB0YXA6IChlZGl0b3IjMCwgZWRpdG9yIzApCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVj
dGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgt
ZXhpc3Rpbmctc2VsZWN0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQ4NjYxYWUyOWZmNWRjZWZmMTdi
ZDIwMjdjMmZjZTVhYzI2ZjlhZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRp
bmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGlu
Zy1zZWxlY3Rpb24uaHRtbApAQCAtMCwwICsxLDcxIEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3
ZWJraXQtdGVzdC1ydW5uZXIgWyB1c2VGbGV4aWJsZVZpZXdwb3J0PXRydWUgXSAtLT4KKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwv
c2NyaXB0PgorPG1ldGEgbmFtZT12aWV3cG9ydCBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgs
IGluaXRpYWwtc2NhbGU9MSwgdXNlci1zY2FsYWJsZT1ubyI+Cis8c3R5bGU+Citib2R5LCBodG1s
IHsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDEwMCU7CisgICAgbWFyZ2luOiAwOwor
fQorCisjZWRpdG9yIHsKKyAgICB3aWR0aDogMzAwcHg7CisgICAgaGVpZ2h0OiAzMjBweDsKKyAg
ICBmb250LXNpemU6IDE4cHg7Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2pzVGVzdElzQXN5bmMg
PSB0cnVlOworCitmdW5jdGlvbiBzZWxlY3Rpb25Ub1N0cmluZygpIHsKKyAgICBjb25zdCBzZWxl
Y3Rpb24gPSBnZXRTZWxlY3Rpb24oKTsKKyAgICBpZiAoIXNlbGVjdGlvbi5yYW5nZUNvdW50KQor
ICAgICAgICByZXR1cm4gIihubyBzZWxlY3Rpb24pIjsKKworICAgIGNvbnN0IHJhbmdlID0gc2Vs
ZWN0aW9uLmdldFJhbmdlQXQoMCk7CisgICAgcmV0dXJuIGAoJHtyYW5nZS5zdGFydENvbnRhaW5l
ci5wYXJlbnRFbGVtZW50LmlkfSMke3JhbmdlLnN0YXJ0T2Zmc2V0fSwgJHtyYW5nZS5lbmRDb250
YWluZXIucGFyZW50RWxlbWVudC5pZH0jJHtyYW5nZS5lbmRPZmZzZXR9KWA7Cit9CisKK2Z1bmN0
aW9uIHRhcEFuZFdhaXRGb3JTZWxlY3Rpb25DaGFuZ2UoeCwgeSkgeworICAgIHJldHVybiBuZXcg
UHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgICAgY29uc3QgZWRpdG9yID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImVkaXRvciIpOworICAgICAgICBsZXQgZG9uZUNvdW50ID0gMDsKKyAgICAg
ICAgY29uc3QgY2hlY2tEb25lID0gKCkgPT4geworICAgICAgICAgICAgaWYgKCsrZG9uZUNvdW50
ICE9IDIpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICBkb2N1bWVudC5y
ZW1vdmVFdmVudExpc3RlbmVyKCJzZWxlY3Rpb25jaGFuZ2UiLCBjaGVja0RvbmUpOworICAgICAg
ICAgICAgcmVzb2x2ZSgpOworICAgICAgICB9CisgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlz
dGVuZXIoInNlbGVjdGlvbmNoYW5nZSIsIGNoZWNrRG9uZSk7CisgICAgICAgIFVJSGVscGVyLmFj
dGl2YXRlQXQoeCwgeSkudGhlbihjaGVja0RvbmUpOworICAgIH0pOworfQorCithZGRFdmVudExp
c3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4geworICAgIGRlc2NyaXB0aW9uKCJWZXJpZmllcyB0
aGF0IHRhcHBpbmcgdG8gY2hhbmdlIHNlbGVjdGlvbiB3b3JrcyB3aGVuIHdlIGFscmVhZHkgaGF2
ZSBhIHNlbGVjdGlvbiBpbiB0aGUgc2FtZSBlZGl0YWJsZSByb290IGJ1dCBkbyBub3QgY3VycmVu
dGx5IGhhdmUgYSBmb2N1c2VkIG5vZGUgaW4gdGhlIFVJS2l0IHNlbnNlLiIpOworCisgICAgLy8g
YXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVFbGVtZW50QW5kV2FpdEZvcklucHV0U2Vzc2lvbihkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZWRpdG9yIikpOworCisgICAgdmFyIHRhcmdldCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKKyAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCku
c2V0QmFzZUFuZEV4dGVudCh0YXJnZXQsIDAsIHRhcmdldCwgMik7CisKKyAgICBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCIjc2VsZWN0aW9uLWJlZm9yZSIpLnRleHRDb250ZW50ID0gc2VsZWN0aW9u
VG9TdHJpbmcoKTsKKyAgICBhd2FpdCB0YXBBbmRXYWl0Rm9yU2VsZWN0aW9uQ2hhbmdlKDUsIDUp
OworICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNzZWxlY3Rpb24tYWZ0ZXIiKS50ZXh0Q29u
dGVudCA9IHNlbGVjdGlvblRvU3RyaW5nKCk7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOwor
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGNvbnRlbnRlZGl0YWJsZSBpZD0iZWRpdG9y
Ij5IZXJlJ3MgdG8gdGhlIGNyYXp5IG9uZXMsIHRoZSBtaXNmaXRzLCB0aGUgcmViZWxzLCB0aGUg
dHJvdWJsZSBtYWtlcnMsIHRoZSByb3VuZCBwZWdzIGluIHRoZSBzcXVhcmUgaG9sZXMsIHRoZSBv
bmVzIHdobyBzZWUgdGhpbmdzIGRpZmZlcmVudGx5LiBUaGVyZSBub3QgZm9uZCBvZiBydWxlcywg
YW5kIHRoZXkgaGF2ZSBubyByZXNwZWN0IGZvciB0aGUgc3RhdHVzIHF1bywgeW91IGNhbiBxdW90
ZSB0aGVuLCBkaXNhZ3JlZSB3aXRoIHRoZW0sIGdsb3JpZnkgb3IgdmlsaWZ5IHRoZW0sIGFib3V0
IHRoZSBvbmx5IHRoaW5nIHlvdSBjYW4ndCBkbyBpcyBpZ25vcmUgdGhlbS4gIEJlY2F1c2UgdGhl
eSBjaGFuZ2UgdGhpbmdzLiBUaGV5IHB1c2ggdGhlIGh1bWFuIHJhY2UgZm9yd2FyZC4gQW5kIHdo
aWxlIHNvbWUgbWF5IHNlZSB0aGVtIGFzIHRoZSBjcmF6eSBvbmVzLCB3ZSBzZWUgZ2VuaXVzLiBC
ZWNhdXNlIHRoZSBwZW9wbGUgd2hvIGFyZSBjcmF6eSBlbm91Z2ggdG8gdGhpbmsgdGhleSBjYW4g
Y2hhbmdlIHRoZSB3b3JsZCBhcmUgdGhlIG9uZXMgd2hvIDxzcGFuIGlkPSd0YXJnZXQnPmRvPC9z
cGFuPi48L3A+CisgICAgPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+CisgICAgPHAgaWQ9ImNvbnNv
bGUiPjwvcD4KKyAgICA8ZGl2PlNlbGVjdGlvbiBiZWZvcmUgdGFwOiA8c3BhbiBpZD0ic2VsZWN0
aW9uLWJlZm9yZSI+PC9zcGFuPjwvZGl2PgorICAgIDxkaXY+U2VsZWN0aW9uIGFmdGVyIHRhcDog
PHNwYW4gaWQ9InNlbGVjdGlvbi1hZnRlciI+PC9zcGFuPjwvZGl2PgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376938</attachid>
            <date>2019-08-21 15:42:01 -0700</date>
            <delta_ts>2019-08-21 16:05:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200999-20190821154200.patch</filename>
            <type>text/plain</type>
            <size>15285</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk5MTMwYTE4MmM3MWFj
YTQyMDQxZmYzMWM1YjJlOTY2ZDAwZjg1Ni4uNDFhMzJlZWNmODkyZGFjNTM2YmI0NGVkYWJjODk2
NDlhYWRlZWJkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE5LTA4LTIxICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWlsXSBUYXBw
aW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFjayB0byBjb3BpZWQgdGV4dCBpbnN0ZWFkIG9m
IHRvcCBvZiB0aGUgbWVzc2FnZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAwOTk5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NDU2NDg3OD4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNpZWguCisKKyAgICAgICAgVGVzdDogZWRpdGlu
Zy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5n
LXNlbGVjdGlvbi5odG1sCisKKyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50OjpzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VT
ZWxlY3Rpb24gY29uc3QpOgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VQcmVzc0V2ZW50U2luZ2xlQ2xp
Y2spOgorICAgICAgICBJbnN0ZWFkIG9mIGVuY29kaW5nIHBsYXRmb3JtIGJlaGF2aW9ycyBpbiBF
dmVudEhhbmRsZXIsIGRlZmVyIHRvIEVkaXRvckNsaWVudC4KKwogMjAxOS0wOC0yMSAgSmVyIE5v
YmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBITFMgc3RyZWFtcyBk
aXNhcHBlYXIgZnJvbSBOb3cgUGxheWluZyB3aGVuIHBhdXNlZCBvbiB0aGUgbG9jayBzY3JlZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2MyYjY2NTdhMjVkNzI1ZGU3ZjQwMmMzOWIwMGQ5YTY4OTM4ODlhNC4uYTcy
MzkwZDJiNTViZTgwOTYxMGQ0NDY4ZmE4NjljZWE4ZDJmMzM4MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwzMiBAQAorMjAxOS0wOC0yMSAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBbTWFpbF0gVGFwcGluZyB0b3Agb2YgbWVzc2FnZSBzY3JvbGxzIGJhY2sg
dG8gY29waWVkIHRleHQgaW5zdGVhZCBvZiB0b3Agb2YgdGhlIG1lc3NhZ2UKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDk5OQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNTQ1NjQ4Nzg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVo
LgorCisgICAgICAgIEluIHRoZSBjYXNlIHdoZXJlIHlvdSBoYXZlIGEgV2ViQ29yZSBzZWxlY3Rp
b24gYnV0IGFyZSBub3QgZmlyc3QgcmVzcG9uZGVyLAorICAgICAgICB3aGVuIHlvdSB0YXAgdGhl
IFdLV2ViVmlldyB0byBiZWNvbWUgZmlyc3QgcmVzcG9uZGVyLCBFdmVudEhhbmRsZXIgd291bGQK
KyAgICAgICAgYmFpbCBmcm9tIHNldHRpbmcgdGhlIHNlbGVjdGlvbiwgYXNzdW1pbmcgVUlLaXQg
d2FzIGdvaW5nIHRvIGRvIGl0LiBUaGlzCisgICAgICAgIGJlaGF2aW9yIHdhcyBpbnRyb2R1Y2Vk
IGluIHIyMzMzMTEuCisKKyAgICAgICAgSG93ZXZlciwgc2luY2Ugd2UgYXJlIG5vdCBmaXJzdCBy
ZXNwb25kZXIsIFVJS2l0IGRvZXMgbm90IGNoYW5nZSB0aGUKKyAgICAgICAgc2VsZWN0aW9uLCBz
aW5jZSBpdCBjb25zaWRlcnMgdGhlIHZpZXcgdG8gbm90IGJlIGVkaXRhYmxlLgorCisgICAgICAg
IEZpeCB0aGlzIGJ5IGxldHRpbmcgV2ViQ29yZSBzZXQgdGhlIHNlbGVjdGlvbiBpbiB0aGlzIGNh
c2UsIGFzIGl0IHVzZWQgdG8uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkVkaXRvckNsaWVudC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
aW9zL1dlYkVkaXRvckNsaWVudElPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xp
ZW50OjpzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24gY29uc3QpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OmlzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50IGNvbnN0KToKKyAgICAg
ICAgQ29weSB0aGUgbG9naWMgZnJvbSBFdmVudEhhbmRsZXIsIHdpdGggdGhlIGFkZGVkIGNhdmVh
dCAod2hpY2ggZml4ZXMgdGhlCisgICAgICAgIGFmb3JlbWVudGlvbmVkIGJlaGF2aW9yKSB0aGF0
IHdlIHdpbGwgYWxsb3cgRXZlbnRIYW5kbGVyIHRvIGNoYW5nZSB0aGUKKyAgICAgICAgc2VsZWN0
aW9uIGlmIHdlIGRvbid0IGhhdmUgYSBmb2N1c2VkIG5vZGUgaW4gdGhlIFVJS2l0IHNlbnNlLCBi
ZWNhdXNlCisgICAgICAgIHdlIGtub3cgdGhhdCB0aGUgcGxhdGZvcm0gdGV4dCBpbnRlcmFjdGlv
biBjb2RlIHdpbGwgKm5vdCogY2hhbmdlIHRoZQorICAgICAgICBzZWxlY3Rpb24gaWYgdGhhdCBp
cyB0aGUgY2FzZSwgc28gaXQncyB1cCB0byB1cy4KKwogMjAxOS0wOC0yMSAgS2VpdGggUm9sbGlu
ICA8a3JvbGxpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHN1cHBvcnQgZm9yIHdhdGNo
T1MgPCA2LjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRleCAwOGY0Mzc5YWI2YmYwZDQ5
MTFkZTY0NmViZjhkYTAzNzgzNDk2MjJiLi40ODYxZjFiODY5NDZhNTBkOGQ4ZjNhZmRkZTkyYmM5
NzQ2ZTYyMTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAK
KzIwMTktMDgtMjEgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAg
ICAgICAgW01haWxdIFRhcHBpbmcgdG9wIG9mIG1lc3NhZ2Ugc2Nyb2xscyBiYWNrIHRvIGNvcGll
ZCB0ZXh0IGluc3RlYWQgb2YgdG9wIG9mIHRoZSBtZXNzYWdlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDA5OTkKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzU0NTY0ODc4PgorCisgICAgICAgIFJldmlld2VkIGJ5IFdlbnNvbiBIc2llaC4KKworICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6
c2hvdWxkQWxsb3dTaW5nbGVDbGlja1RvQ2hhbmdlU2VsZWN0aW9uIGNvbnN0KToKKyAgICAgICAg
Q29weSB0aGUgZXhpc3RpbmcgYmVoYXZpb3IgZnJvbSBFdmVudEhhbmRsZXIuCisgICAgICAgIFdl
IGRvIG5vdCBmaXggdGhlIGJ1ZyBpbiBXZWJLaXRMZWdhY3kgZm9yIGEgbXVsdGl0dWRlIG9mIHJl
YXNvbnMsIHByaW1hcmlseQorICAgICAgICBiZWNhdXNlIHdlIGRvIG5vdCBrbm93IG9mIGFueSB1
c2VyIGltcGFjdC4KKwogMjAxOS0wOC0xOSAgU2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNv
bT4KIAogICAgICAgICBSZW1vdmUgSURCLXNwZWNpZmljIHF1b3RhCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0
b3JDbGllbnQuaAppbmRleCAxMzY2ZThiYmYwZjc2MWRmMTEwNGIzMGI1NDIwM2Y0NjgzMTE0YTIz
Li5lMjBkOWQzYTc0NzQwM2U4ZGJlZTQ0MThlZjVlYjQ2NGM2OWM3MTQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRWRpdG9yQ2xpZW50LmgKQEAgLTE4Niw2ICsxODYsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBib29sIHBlcmZvcm1Ud29TdGVwRHJvcChEb2N1bWVudEZyYWdtZW50JiwgUmFuZ2UmIGRlc3Rp
bmF0aW9uLCBib29sIGlzTW92ZSkgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGNhblNob3dGb250
UGFuZWwoKSBjb25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQWxsb3dTaW5nbGVD
bGlja1RvQ2hhbmdlU2VsZWN0aW9uKE5vZGUmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJikgY29u
c3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwCmluZGV4IGQyMGI5OGM0MTVlZWM4Mjc2Zjg5MDBmMjRjNjdhOTdmMTAxZDBhMDcuLjEwNmM4
MGI3ZGJmODNmZmMyMWEzZjlkZjkxMWNhMmUzMmMwMDRkNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAKQEAgLTY5OCwxMiArNjk4LDggQEAgYm9vbCBFdmVudEhhbmRsZXI6Omhh
bmRsZU1vdXNlUHJlc3NFdmVudFNpbmdsZUNsaWNrKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVz
dFIKICAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbiA9IG1fZnJhbWUuc2VsZWN0aW9u
KCkuc2VsZWN0aW9uKCk7CiAgICAgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5ID0gQ2hhcmFj
dGVyR3JhbnVsYXJpdHk7CiAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIC8vIFRoZSB0
ZXh0IHNlbGVjdGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2VsZWN0aW9uIGluIHRoZSBjYXNl
IHdoZXJlIHdlIGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUKLSAgICBhdXRvKiBlZGl0YWJs
ZVJvb3QgPSBuZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVudCgpOwotICAgIGlmIChlZGl0
YWJsZVJvb3QgJiYgZWRpdGFibGVSb290ID09IHRhcmdldE5vZGUtPnJvb3RFZGl0YWJsZUVsZW1l
bnQoKSkKKyAgICBpZiAoIW1fZnJhbWUuZWRpdG9yKCkuY2xpZW50KCktPnNob3VsZEFsbG93U2lu
Z2xlQ2xpY2tUb0NoYW5nZVNlbGVjdGlvbigqdGFyZ2V0Tm9kZSwgbmV3U2VsZWN0aW9uKSkKICAg
ICAgICAgcmV0dXJuIHRydWU7Ci0jZW5kaWYKIAogICAgIGlmIChleHRlbmRTZWxlY3Rpb24gJiYg
bmV3U2VsZWN0aW9uLmlzQ2FyZXRPclJhbmdlKCkpIHsKICAgICAgICAgVmlzaWJsZVNlbGVjdGlv
biBzZWxlY3Rpb25JblVzZXJTZWxlY3RBbGwgPSBleHBhbmRTZWxlY3Rpb25Ub1Jlc3BlY3RTZWxl
Y3RPbk1vdXNlRG93bigqdGFyZ2V0Tm9kZSwgVmlzaWJsZVNlbGVjdGlvbihwb3MpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuaAppbmRleCBkMjJkNGNiNzNmMjk3M2Y1NjU1YTg3M2ViZDIyZDZiMDA2YWUwZjNk
Li5iZWExN2Y5YWE4OTJhN2IzMzdkYjU2MDA0OGNjODc3MDNiNWM0ZDE1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5oCkBAIC0xODEsNiArMTgxLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6
RG9jdW1lbnRGcmFnbWVudD4gZG9jdW1lbnRGcmFnbWVudEZyb21EZWxlZ2F0ZShpbnQgaW5kZXgp
IGZpbmFsOwogICAgIGJvb2wgcGVyZm9ybXNUd29TdGVwUGFzdGUoV2ViQ29yZTo6RG9jdW1lbnRG
cmFnbWVudCopIGZpbmFsOwogICAgIHZvaWQgdXBkYXRlU3RyaW5nRm9yRmluZChjb25zdCBTdHJp
bmcmKSBmaW5hbDsKKyAgICBib29sIHNob3VsZEFsbG93U2luZ2xlQ2xpY2tUb0NoYW5nZVNlbGVj
dGlvbihXZWJDb3JlOjpOb2RlJiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYpIGNv
bnN0IGZpbmFsOwogI2VuZGlmCiAKICAgICBib29sIHBlcmZvcm1Ud29TdGVwRHJvcChXZWJDb3Jl
OjpEb2N1bWVudEZyYWdtZW50JiwgV2ViQ29yZTo6UmFuZ2UmLCBib29sIGlzTW92ZSkgZmluYWw7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9z
L1dlYkVkaXRvckNsaWVudElPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCmluZGV4IDhiNzMzNmQ4NjVhYjcwMGEy
NDBjMGQ1MGEzMzdkODc4MzczYjYxNjIuLjhhNzliMjdiMzMwMGIzOWIwODA2ZmQyMzY4OWMzMmM2
OWFjZmIyOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRWRpdG9yQ2xpZW50SU9TLm1tCkBAIC0xMDIsNiAr
MTAyLDEzIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpvdmVyZmxvd1Njcm9sbFBvc2l0aW9uQ2hh
bmdlZCgpCiAgICAgbV9wYWdlLT5kaWRDaGFuZ2VPdmVyZmxvd1Njcm9sbFBvc2l0aW9uKCk7CiB9
CiAKK2Jvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VT
ZWxlY3Rpb24oV2ViQ29yZTo6Tm9kZSYgdGFyZ2V0Tm9kZSwgY29uc3QgV2ViQ29yZTo6VmlzaWJs
ZVNlbGVjdGlvbiYgbmV3U2VsZWN0aW9uKSBjb25zdAoreworICAgIC8vIFRoZSB0ZXh0IHNlbGVj
dGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2VsZWN0aW9uIGluIHRoZSBjYXNlIHdoZXJlIHdl
IGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUKKyAgICBhdXRvKiBlZGl0YWJsZVJvb3QgPSBu
ZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVudCgpOworICAgIHJldHVybiAhZWRpdGFibGVS
b290IHx8IGVkaXRhYmxlUm9vdCAhPSB0YXJnZXROb2RlLnJvb3RFZGl0YWJsZUVsZW1lbnQoKSB8
fCAhbV9wYWdlLT5pc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCgpOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggNDBjZWQ3NjRl
MzA2ZjE5ZTMwNjg0YmNlNjdjZWNkNjdmNjIwMDY1Ny4uNzQ2Njg4MjYyY2MxNzg5N2Y3MWZkZDVi
NDAxZTBkNDY5OTYxNmY1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaApAQCAtNjc4LDYgKzY3OCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEZvY3VzZWRF
bGVtZW50VmFsdWVBc051bWJlcihkb3VibGUpOwogICAgIHZvaWQgc2V0Rm9jdXNlZEVsZW1lbnRT
ZWxlY3RlZEluZGV4KHVpbnQzMl90IGluZGV4LCBib29sIGFsbG93TXVsdGlwbGVTZWxlY3Rpb24p
OwogICAgIHZvaWQgc2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoYm9vbCk7
CisgICAgYm9vbCBpc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCgpIGNvbnN0IHsg
cmV0dXJuIG1faXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQ7IH0KICAgICB2b2lk
IHVwZGF0ZVNlbGVjdGlvbkFwcGVhcmFuY2UoKTsKICAgICB2b2lkIGdldFNlbGVjdGlvbkNvbnRl
eHQoQ2FsbGJhY2tJRCk7CiAgICAgdm9pZCBoYW5kbGVUd29GaW5nZXJUYXBBdFBvaW50KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JiwgT3B0aW9uU2V0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlmaWVy
PiwgdWludDY0X3QgcmVxdWVzdElEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggYjUxMDc4N2Q4MDli
Y2Y5N2I3Njg5ZTc0MDkzMjgzNzVhYTBiMGIzMS4uNWFlNTE4ZjQwZWVhODQyYTIzYTA3Yzk4NTAx
Zjg3NGFkNWI3YzFhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKQEAgLTE3Niw2ICsxNzYsMTAgQEAgcHJp
dmF0ZToKIAogICAgIHZvaWQgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3Rl
cCYsIGJvb2wgaXNSZWRvKTsKIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgYm9vbCBz
aG91bGRBbGxvd1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6Tm9kZSYgdGFy
Z2V0Tm9kZSwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgbmV3U2VsZWN0aW9uKSBj
b25zdDsKKyNlbmRpZgorCiAgICAgYm9vbCBjYW5TaG93Rm9udFBhbmVsKCkgY29uc3QgZmluYWwK
ICAgICB7CiAjaWYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCmluZGV4IGZmZmIyMWMz
NjFkZjNjM2MxOTA3M2FhNzY5ZjQ2ODlmZTI3YTRlMGQuLjUxYzZhYjRjNzc3OWE0YjRlMDQwMTFl
MTkyYjQ2MTU5MGZiOWRmZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KQEAgLTEyNTgsMyArMTI1OCwx
MiBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVxdWVzdENoZWNraW5nT2ZTdHJpbmcoV2ViQ29y
ZTo6VGV4dENoZWNraW5nUmVxdWVzdCYgcmVxdQogICAgICAgICB9XTsKICNlbmRpZgogfQorCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKK2Jvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRBbGxv
d1NpbmdsZUNsaWNrVG9DaGFuZ2VTZWxlY3Rpb24oV2ViQ29yZTo6Tm9kZSYgdGFyZ2V0Tm9kZSwg
Y29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgbmV3U2VsZWN0aW9uKSBjb25zdAorewor
ICAgIC8vIFRoZSB0ZXh0IHNlbGVjdGlvbiBhc3Npc3RhbnQgd2lsbCBoYW5kbGUgc2VsZWN0aW9u
IGluIHRoZSBjYXNlIHdoZXJlIHdlIGFyZSBhbHJlYWR5IGVkaXRpbmcgdGhlIG5vZGUKKyAgICBh
dXRvKiBlZGl0YWJsZVJvb3QgPSBuZXdTZWxlY3Rpb24ucm9vdEVkaXRhYmxlRWxlbWVudCgpOwor
ICAgIHJldHVybiAhZWRpdGFibGVSb290IHx8IGVkaXRhYmxlUm9vdCAhPSB0YXJnZXROb2RlLnJv
b3RFZGl0YWJsZUVsZW1lbnQoKTsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk3NGNjN2ExNTA4NTkxNjA2
YTJjZTAyYWI2ODZmMTdhM2E3NzFiNjQuLjAzNDM0ZTBlNmVjM2MyMzk4NWVhNzM4NWUwMTRiNTEw
NTEyNzNjNmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0wOC0yMSAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFpbF0gVGFwcGluZyB0b3Ag
b2YgbWVzc2FnZSBzY3JvbGxzIGJhY2sgdG8gY29waWVkIHRleHQgaW5zdGVhZCBvZiB0b3Agb2Yg
dGhlIG1lc3NhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwMDk5OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTQ1NjQ4Nzg+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVoLgorCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlvbi1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFu
Z2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24uaHRtbDogQWRk
ZWQuCisKIDIwMTktMDgtMjEgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAg
ICAgICAgIFdlYiBJbnNwZWN0b3I6IFBhZ2U6IHJlLWFkZCBlbmFibGUvZGlzYWJsZSBhZnRlciBy
MjQ4NDU0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hh
bmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0aW9uLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9u
LWJ5LXRhcHBpbmctd2l0aC1leGlzdGluZy1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjU1YzQ3ZjY3NTI4ZmQ3MmE0ZWNhZTA2YzYyYWNmYTEwMjIwMmJhN2UKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlv
bi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEzIEBACitIZXJlJ3MgdG8gdGhlIGNyYXp5IG9uZXMsIHRoZSBtaXNmaXRzLCB0aGUgcmVi
ZWxzLCB0aGUgdHJvdWJsZSBtYWtlcnMsIHRoZSByb3VuZCBwZWdzIGluIHRoZSBzcXVhcmUgaG9s
ZXMsIHRoZSBvbmVzIHdobyBzZWUgdGhpbmdzIGRpZmZlcmVudGx5LiBUaGVyZSBub3QgZm9uZCBv
ZiBydWxlcywgYW5kIHRoZXkgaGF2ZSBubyByZXNwZWN0IGZvciB0aGUgc3RhdHVzIHF1bywgeW91
IGNhbiBxdW90ZSB0aGVuLCBkaXNhZ3JlZSB3aXRoIHRoZW0sIGdsb3JpZnkgb3IgdmlsaWZ5IHRo
ZW0sIGFib3V0IHRoZSBvbmx5IHRoaW5nIHlvdSBjYW4ndCBkbyBpcyBpZ25vcmUgdGhlbS4gQmVj
YXVzZSB0aGV5IGNoYW5nZSB0aGluZ3MuIFRoZXkgcHVzaCB0aGUgaHVtYW4gcmFjZSBmb3J3YXJk
LiBBbmQgd2hpbGUgc29tZSBtYXkgc2VlIHRoZW0gYXMgdGhlIGNyYXp5IG9uZXMsIHdlIHNlZSBn
ZW5pdXMuIEJlY2F1c2UgdGhlIHBlb3BsZSB3aG8gYXJlIGNyYXp5IGVub3VnaCB0byB0aGluayB0
aGV5IGNhbiBjaGFuZ2UgdGhlIHdvcmxkIGFyZSB0aGUgb25lcyB3aG8gZG8uCisKK1ZlcmlmaWVz
IHRoYXQgdGFwcGluZyB0byBjaGFuZ2Ugc2VsZWN0aW9uIHdvcmtzIHdoZW4gd2UgYWxyZWFkeSBo
YXZlIGEgc2VsZWN0aW9uIGluIHRoZSBzYW1lIGVkaXRhYmxlIHJvb3QgYnV0IGRvIG5vdCBjdXJy
ZW50bHkgaGF2ZSBhIGZvY3VzZWQgbm9kZSBpbiB0aGUgVUlLaXQgc2Vuc2UuCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKworU2VsZWN0aW9uIGJlZm9yZSB0YXA6ICh0YXJnZXQjMCwgdGFyZ2V0
IzIpCitTZWxlY3Rpb24gYWZ0ZXIgdGFwOiAoZWRpdG9yIzAsIGVkaXRvciMwKQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnkt
dGFwcGluZy13aXRoLWV4aXN0aW5nLXNlbGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy13aXRoLWV4aXN0aW5n
LXNlbGVjdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3MDc0MGM2NTY4YjU1ZGNmM2RhN2ZlYTlhNTk0
MTE1ODViZWFiOTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLXdpdGgtZXhpc3Rpbmctc2VsZWN0
aW9uLmh0bWwKQEAgLTAsMCArMSw2OSBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRl
c3QtcnVubmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4K
KzxtZXRhIG5hbWU9dmlld3BvcnQgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFs
LXNjYWxlPTEsIHVzZXItc2NhbGFibGU9bm8iPgorPHN0eWxlPgorYm9keSwgaHRtbCB7CisgICAg
d2lkdGg6IDEwMCU7CisgICAgaGVpZ2h0OiAxMDAlOworICAgIG1hcmdpbjogMDsKK30KKworI2Vk
aXRvciB7CisgICAgd2lkdGg6IDMwMHB4OworICAgIGhlaWdodDogMzIwcHg7CisgICAgZm9udC1z
aXplOiAxOHB4OworfQorPC9zdHlsZT4KKzxzY3JpcHQ+Citqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
KworZnVuY3Rpb24gc2VsZWN0aW9uVG9TdHJpbmcoKSB7CisgICAgY29uc3Qgc2VsZWN0aW9uID0g
Z2V0U2VsZWN0aW9uKCk7CisgICAgaWYgKCFzZWxlY3Rpb24ucmFuZ2VDb3VudCkKKyAgICAgICAg
cmV0dXJuICIobm8gc2VsZWN0aW9uKSI7CisKKyAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlvbi5n
ZXRSYW5nZUF0KDApOworICAgIHJldHVybiBgKCR7cmFuZ2Uuc3RhcnRDb250YWluZXIucGFyZW50
RWxlbWVudC5pZH0jJHtyYW5nZS5zdGFydE9mZnNldH0sICR7cmFuZ2UuZW5kQ29udGFpbmVyLnBh
cmVudEVsZW1lbnQuaWR9IyR7cmFuZ2UuZW5kT2Zmc2V0fSlgOworfQorCitmdW5jdGlvbiB0YXBB
bmRXYWl0Rm9yU2VsZWN0aW9uQ2hhbmdlKHgsIHkpIHsKKyAgICByZXR1cm4gbmV3IFByb21pc2Uo
cmVzb2x2ZSA9PiB7CisgICAgICAgIGNvbnN0IGVkaXRvciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJlZGl0b3IiKTsKKyAgICAgICAgbGV0IGRvbmVDb3VudCA9IDA7CisgICAgICAgIGNvbnN0
IGNoZWNrRG9uZSA9ICgpID0+IHsKKyAgICAgICAgICAgIGlmICgrK2RvbmVDb3VudCAhPSAyKQor
ICAgICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIiwgY2hlY2tEb25lKTsKKyAgICAgICAgICAgIHJl
c29sdmUoKTsKKyAgICAgICAgfQorICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJz
ZWxlY3Rpb25jaGFuZ2UiLCBjaGVja0RvbmUpOworICAgICAgICBVSUhlbHBlci5hY3RpdmF0ZUF0
KHgsIHkpLnRoZW4oY2hlY2tEb25lKTsKKyAgICB9KTsKK30KKworYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIsIGFzeW5jICgpID0+IHsKKyAgICBkZXNjcmlwdGlvbigiVmVyaWZpZXMgdGhhdCB0YXBw
aW5nIHRvIGNoYW5nZSBzZWxlY3Rpb24gd29ya3Mgd2hlbiB3ZSBhbHJlYWR5IGhhdmUgYSBzZWxl
Y3Rpb24gaW4gdGhlIHNhbWUgZWRpdGFibGUgcm9vdCBidXQgZG8gbm90IGN1cnJlbnRseSBoYXZl
IGEgZm9jdXNlZCBub2RlIGluIHRoZSBVSUtpdCBzZW5zZS4iKTsKKworICAgIHZhciB0YXJnZXQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgd2luZG93LmdldFNlbGVj
dGlvbigpLnNldEJhc2VBbmRFeHRlbnQodGFyZ2V0LCAwLCB0YXJnZXQsIDIpOworCisgICAgZG9j
dW1lbnQucXVlcnlTZWxlY3RvcigiI3NlbGVjdGlvbi1iZWZvcmUiKS50ZXh0Q29udGVudCA9IHNl
bGVjdGlvblRvU3RyaW5nKCk7CisgICAgYXdhaXQgdGFwQW5kV2FpdEZvclNlbGVjdGlvbkNoYW5n
ZSg1LCA1KTsKKyAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc2VsZWN0aW9uLWFmdGVyIiku
dGV4dENvbnRlbnQgPSBzZWxlY3Rpb25Ub1N0cmluZygpOworCisgICAgZmluaXNoSlNUZXN0KCk7
Cit9KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBjb250ZW50ZWRpdGFibGUgaWQ9
ImVkaXRvciI+SGVyZSdzIHRvIHRoZSBjcmF6eSBvbmVzLCB0aGUgbWlzZml0cywgdGhlIHJlYmVs
cywgdGhlIHRyb3VibGUgbWFrZXJzLCB0aGUgcm91bmQgcGVncyBpbiB0aGUgc3F1YXJlIGhvbGVz
LCB0aGUgb25lcyB3aG8gc2VlIHRoaW5ncyBkaWZmZXJlbnRseS4gVGhlcmUgbm90IGZvbmQgb2Yg
cnVsZXMsIGFuZCB0aGV5IGhhdmUgbm8gcmVzcGVjdCBmb3IgdGhlIHN0YXR1cyBxdW8sIHlvdSBj
YW4gcXVvdGUgdGhlbiwgZGlzYWdyZWUgd2l0aCB0aGVtLCBnbG9yaWZ5IG9yIHZpbGlmeSB0aGVt
LCBhYm91dCB0aGUgb25seSB0aGluZyB5b3UgY2FuJ3QgZG8gaXMgaWdub3JlIHRoZW0uICBCZWNh
dXNlIHRoZXkgY2hhbmdlIHRoaW5ncy4gVGhleSBwdXNoIHRoZSBodW1hbiByYWNlIGZvcndhcmQu
IEFuZCB3aGlsZSBzb21lIG1heSBzZWUgdGhlbSBhcyB0aGUgY3Jhenkgb25lcywgd2Ugc2VlIGdl
bml1cy4gQmVjYXVzZSB0aGUgcGVvcGxlIHdobyBhcmUgY3JhenkgZW5vdWdoIHRvIHRoaW5rIHRo
ZXkgY2FuIGNoYW5nZSB0aGUgd29ybGQgYXJlIHRoZSBvbmVzIHdobyA8c3BhbiBpZD0ndGFyZ2V0
Jz5kbzwvc3Bhbj4uPC9wPgorICAgIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorICAgIDxwIGlk
PSJjb25zb2xlIj48L3A+CisgICAgPGRpdj5TZWxlY3Rpb24gYmVmb3JlIHRhcDogPHNwYW4gaWQ9
InNlbGVjdGlvbi1iZWZvcmUiPjwvc3Bhbj48L2Rpdj4KKyAgICA8ZGl2PlNlbGVjdGlvbiBhZnRl
ciB0YXA6IDxzcGFuIGlkPSJzZWxlY3Rpb24tYWZ0ZXIiPjwvc3Bhbj48L2Rpdj4KKzwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>