<?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>200144</bug_id>
          
          <creation_ts>2019-07-25 16:39:04 -0700</creation_ts>
          <short_desc>Moving right by word boundary right before an object element followed by a br element hangs</short_desc>
          <delta_ts>2019-07-26 16:38:19 -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>HTML Editing</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>mitz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1555961</commentid>
    <comment_count>0</comment_count>
      <attachid>374922</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-25 16:39:04 -0700</bug_when>
    <thetext>Created attachment 374922
Demo

Moving to the right by word boundary immediately before a word boundary causes a hang.

&lt;rdar://problem/53285794&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555983</commentid>
    <comment_count>1</comment_count>
      <attachid>374928</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-25 17:25:05 -0700</bug_when>
    <thetext>Created attachment 374928
Fixes the hang</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555984</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-25 17:26:03 -0700</bug_when>
    <thetext>Is 
שלום
עולם
the right way to say &quot;hello world&quot; in Hebrew?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555994</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-25 18:28:40 -0700</bug_when>
    <thetext>Some analysis:

7/24/19, 8:10 PM Ryosuke Niwa:
We’re stuck in wordBreakIteratorForMinOffsetBoundary with previousBox pointing to the inline box of the object, and previousBox-&gt;renderer() being at the br element after the object element.

7/24/19, 8:19 PM Ryosuke Niwa:
So the problem here is that previousTextOrLineBreakBox never returns a box for the line consisting only of the object element.

7/24/19, 8:22 PM Ryosuke Niwa:
Ugh… scratch that. We’re returning the line box for the object element.

7/24/19, 8:35 PM Ryosuke Niwa:
Okay, in logicallyPreviousBox(~, br’s inline box, previousBoxInDifferentLine=true, ~), previousTextOrLineBreakBox doesn’t return the inline box for the object element, and previousTextOrLineBreakBox finds nothing since there is no more inline box left above the object element in this block flow.

7/25/19, 3:07 PM Ryosuke Niwa:
Hm… so there is something confusing happening here. We’re trying to find the previous position at the beginning of “world” which appears object &amp; br elements. The previous box is that of br element but VisiblePosition points to the beginning of “world”. As a result, when we get to previousRootInlineBoxCandidatePosition, we think previousNode, which is object element and br element are in different lines (which is correct). So, we’d return the position after the object element from ￼previousRootInlineBoxCandidatePosition. Then previousRoot is pointing at the root inline box of the line which contains the object &amp; br elements. Now, previousTextOrLineBreakBox is called with this root box with box=0, resulting in the inlinebox for BR to be returned. We’re back to where we were.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555995</commentid>
    <comment_count>4</comment_count>
      <attachid>374929</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-25 18:42:15 -0700</bug_when>
    <thetext>Created attachment 374929
Added a change log</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556276</commentid>
    <comment_count>5</comment_count>
      <attachid>374929</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-26 16:38:17 -0700</bug_when>
    <thetext>Comment on attachment 374929
Added a change log

Clearing flags on attachment: 374929

Committed r247881: &lt;https://trac.webkit.org/changeset/247881&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556277</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-07-26 16:38:19 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>374922</attachid>
            <date>2019-07-25 16:39:04 -0700</date>
            <delta_ts>2019-07-25 16:39:04 -0700</delta_ts>
            <desc>Demo</desc>
            <filename>53285794.html</filename>
            <type>text/html</type>
            <size>326</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PGh0bWw+Cjxib2R5IGNvbnRlbnRlZGl0YWJsZT4KPGRpdiBjbGFzcz0iYWFhIj5IZWxsbzwvZGl2
PjxkaXY+PGJyPjwvZGl2PjxkaXY+PG9iamVjdCB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGlu
ZyIgaGVpZ2h0PSI1MCIgd2lkdGg9IjUwIj48L29iamVjdD48YnI+PGRpdj5Xb3JsZDwvZGl2Pgo8
c2NyaXB0PgpnZXRTZWxlY3Rpb24oKS5zZXRQb3NpdGlvbihkb2N1bWVudC5xdWVyeVNlbGVjdG9y
KCcuYWFhJykuZmlyc3RDaGlsZCwgNSk7CmdldFNlbGVjdGlvbigpLm1vZGlmeSgnbW92ZScsICdy
aWdodCcsICd3b3JkJyk7Cjwvc2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374928</attachid>
            <date>2019-07-25 17:25:05 -0700</date>
            <delta_ts>2019-07-25 18:42:14 -0700</delta_ts>
            <desc>Fixes the hang</desc>
            <filename>bug-200144-20190725172504.patch</filename>
            <type>text/plain</type>
            <size>12912</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzgxMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE5LTA3LTI1ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIE1vdmluZyByaWdodCBieSB3b3Jk
IGJvdW5kYXJ5IHJpZ2h0IGJlZm9yZSBhbiBvYmplY3QgZWxlbWVudCBpbmZpbml0ZSBsb29wcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTQ0CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IGVk
aXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1l
bnQtMS5odG1sCisgICAgICAgICAgICAgICBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQt
dmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTIuaHRtbAorCisgICAgICAgICogZWRpdGlu
Zy9WaXNpYmxlVW5pdHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bG9naWNhbGx5UHJldmlvdXNC
b3gpOgorCiAyMDE5LTA3LTI0ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtXSExTTF0gVXNlIGJtYWxsb2MgaW5zdGVhZCBvZiBzeXN0ZW0gbWFsbG9jIGZvciBX
SExTTCBkYXRhIHN0cnVjdHVyZXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJs
ZVVuaXRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVV
bml0cy5jcHAJKHJldmlzaW9uIDI0NzgxMykKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlz
aWJsZVVuaXRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMyLDcgKzIzMiw3IEBAIHN0YXRpYyBj
b25zdCBJbmxpbmVCb3gqIGxvZ2ljYWxseVByZXZpb3UKICAgICAgICAgaWYgKCFwcmV2aW91c1Jv
b3QpCiAgICAgICAgICAgICBicmVhazsKIAotICAgICAgICBwcmV2aW91c0JveCA9IGxlYWZCb3hl
cy5wcmV2aW91c1RleHRPckxpbmVCcmVha0JveChwcmV2aW91c1Jvb3QsIDApOworICAgICAgICBw
cmV2aW91c0JveCA9IGxlYWZCb3hlcy5wcmV2aW91c1RleHRPckxpbmVCcmVha0JveChwcmV2aW91
c1Jvb3QsICZzdGFydEJveC0+cm9vdCgpID09IHByZXZpb3VzUm9vdCA/IHN0YXJ0Qm94IDogbnVs
bHB0cik7CiAgICAgICAgIGlmIChwcmV2aW91c0JveCkgewogICAgICAgICAgICAgcHJldmlvdXNC
b3hJbkRpZmZlcmVudExpbmUgPSB0cnVlOwogICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzQm94
OwpAQCAtMjczLDcgKzI3Myw3IEBAIHN0YXRpYyBjb25zdCBJbmxpbmVCb3gqIGxvZ2ljYWxseU5l
eHRCb3gKICAgICAgICAgaWYgKCFuZXh0Um9vdCkKICAgICAgICAgICAgIGJyZWFrOwogCi0gICAg
ICAgIG5leHRCb3ggPSBsZWFmQm94ZXMubmV4dFRleHRPckxpbmVCcmVha0JveChuZXh0Um9vdCwg
MCk7CisgICAgICAgIG5leHRCb3ggPSBsZWFmQm94ZXMubmV4dFRleHRPckxpbmVCcmVha0JveChu
ZXh0Um9vdCwgJnN0YXJ0Qm94LT5yb290KCkgPT0gbmV4dFJvb3QgPyBzdGFydEJveCA6IG51bGxw
dHIpOwogICAgICAgICBpZiAobmV4dEJveCkgewogICAgICAgICAgICAgbmV4dEJveEluRGlmZmVy
ZW50TGluZSA9IHRydWU7CiAgICAgICAgICAgICByZXR1cm4gbmV4dEJveDsKSW5kZXg6IExheW91
dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0NzgxMykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDIwIEBACisyMDE5LTA3LTI1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQu
b3JnPgorCisgICAgICAgIE1vdmluZyByaWdodCBieSB3b3JkIGJvdW5kYXJ5IHJpZ2h0IGJlZm9y
ZSBhbiBvYmplY3QgZWxlbWVudCBpbmZpbml0ZSBsb29wcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgcmVncmVzc2lvbiB0ZXN0cy4gVGhlIHNl
Y29uZCB0ZXN0IGNhc2UgaW52b2xlcyBub24td29yZCBjaGFyYWN0ZXJzICIlKSIgd2hpY2ggYXJl
IHNraXBwZWQgbGlrZSB3aGl0ZXNwYWNlcworICAgICAgICBmb3IgdGhlIHB1cnBvc2VzIG9mIG1v
dmluZyByaWdodCBvciBsZWZ0IGJ5IHdvcmQgZ3JhbnVsYXJpdHkuIFRoZSB0aGlyZCB0ZXN0IGNh
c2UgaW52b2x2ZXMgUlRMIHRleHQuCisKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9tb3Zl
LWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTEtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHkt
YWNyb3NzLW9iamVjdC1lbGVtZW50LTEuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9z
ZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0yLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13
b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0yLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGVkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0
LWVsZW1lbnQtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0
aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1sOiBB
ZGRlZC4KKwogMjAxOS0wNy0yNCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgV2ViIEluc3BlY3Rvcjogc3VwcG9ydCBgY29uc29sZS5zY3JlZW5zaG90YCB3aXRo
IEltYWdlRGF0YSBhbmQgSW1hZ2VCaXRtYXAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvc2Vs
ZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMS1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92
ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0xLWV4cGVjdGVkLnR4dAko
bm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdv
cmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTEtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsOTIgQEAKK1RoaXMgdGVzdHMgbW92aW5nIHJpZ2h0IGFuZCBsZWZ0
IGJ5IHdvcmQgYm91bmRhcnkgYWNyb3NzIGFuIG9iamVjdCBlbGVtZW50LiBXZWJLaXQgc2hvdWxk
IG5vdCBoYW5nLgorCitJbml0aWFsIHN0YXRlOgorfCA8ZGl2PgorfCAgICI8I3NlbGVjdGlvbi1j
YXJldD5IZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAg
ICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAg
ICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkIgorCitNb3Zl
IHJpZ2h0IGNvdW50OiAxOgorfCA8ZGl2PgorfCAgICJIZWxsbzwjc2VsZWN0aW9uLWNhcmV0PiIK
K3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1
MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUw
IgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkIgorCitNb3ZlIHJpZ2h0IGNvdW50
OiAyOgorfCA8ZGl2PgorfCAgICJIZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAg
Ym9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gt
c29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAg
IldvcmxkPCNzZWxlY3Rpb24tY2FyZXQ+IgorCitNb3ZlIHJpZ2h0IGNvdW50OiAzOgorfCA8ZGl2
PgorfCAgICJIZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgor
fCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgor
fCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkPCNzZWxl
Y3Rpb24tY2FyZXQ+IgorCitNb3ZlIGxlZnQgY291bnQ6IDE6Cit8IDxkaXY+Cit8ICAgIkhlbGxv
IgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9
IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0i
NTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiPCNzZWxlY3Rpb24tY2FyZXQ+V29ybGQi
CisKK01vdmUgbGVmdCBjb3VudDogMjoKK3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2FyZXQ+
SGVsbG8iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhl
aWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdp
ZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICJXb3JsZCIKKworTW92ZSBsZWZ0
IGNvdW50OiAzOgorfCA8ZGl2PgorfCAgICI8I3NlbGVjdGlvbi1jYXJldD5IZWxsbyIKK3wgPGRp
dj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wg
ICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAg
IDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkIgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0x
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1i
eS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0xLmh0bWwJKG5vbmV4aXN0ZW50
KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5
LWFjcm9zcy1vYmplY3QtZWxlbWVudC0xLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwy
NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPGRpdiBpZD0iZWRpdG9yIiBj
b250ZW50ZWRpdGFibGU+PGRpdj5IZWxsbzwvZGl2PjxkaXY+PG9iamVjdCB0eXBlPSJhcHBsaWNh
dGlvbi94LXNvbWV0aGluZyIgaGVpZ2h0PSI1MCIgd2lkdGg9IjUwIiBib3JkZXI9IjEiPjwvb2Jq
ZWN0Pjxicj48ZGl2PldvcmxkPC9kaXY+PC9kaXY+PC9kaXY+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2R1bXAtYXMtbWFya3VwLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisKK01hcmt1
cC5kZXNjcmlwdGlvbignVGhpcyB0ZXN0cyBtb3ZpbmcgcmlnaHQgYW5kIGxlZnQgYnkgd29yZCBi
b3VuZGFyeSBhY3Jvc3MgYW4gb2JqZWN0IGVsZW1lbnQuIFdlYktpdCBzaG91bGQgbm90IGhhbmcu
Jyk7CitlZGl0b3IuZm9jdXMoKTsKK2dldFNlbGVjdGlvbigpLnNldFBvc2l0aW9uKGVkaXRvciwg
MCk7CisKK01hcmt1cC5kdW1wKGVkaXRvciwgJ0luaXRpYWwgc3RhdGUnKTsKK2ZvciAobGV0IGkg
PSAwOyBpIDwgMzsgaSsrKSB7CisgICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCdtb3ZlJywgJ3Jp
Z2h0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAuZHVtcChlZGl0b3IsIGBNb3ZlIHJpZ2h0IGNvdW50
OiAke2kgKyAxfWApOworfQorCitmb3IgKGxldCBpID0gMDsgaSA8IDM7IGkrKykgeworICAgIGdl
dFNlbGVjdGlvbigpLm1vZGlmeSgnbW92ZScsICdsZWZ0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAu
ZHVtcChlZGl0b3IsIGBNb3ZlIGxlZnQgY291bnQ6ICR7aSArIDF9YCk7Cit9CisKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
bW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0yLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdv
cmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTItZXhwZWN0ZWQudHh0CShub25leGlz
dGVudCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1
YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw5MiBAQAorVGhpcyB0ZXN0cyBtb3ZpbmcgcmlnaHQgYW5kIGxlZnQgYnkgd29y
ZCBib3VuZGFyeSBhY3Jvc3MgYW4gb2JqZWN0IGVsZW1lbnQuIFdlYktpdCBzaG91bGQgbm90IGhh
bmcuCisKK0luaXRpYWwgc3RhdGU6Cit8IDxkaXY+Cit8ICAgIjwjc2VsZWN0aW9uLWNhcmV0Pkhl
bGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBo
ZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3
aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQiCisKK01vdmUgcmln
aHQgY291bnQ6IDE6Cit8IDxkaXY+Cit8ICAgIkhlbGxvPCNzZWxlY3Rpb24tY2FyZXQ+ICUpIgor
fCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUw
IgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAi
Cit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQiCisKK01vdmUgcmlnaHQgY291bnQ6
IDI6Cit8IDxkaXY+Cit8ICAgIkhlbGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAg
ICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24v
eC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAg
ICAiV29ybGQ8I3NlbGVjdGlvbi1jYXJldD4iCisKK01vdmUgcmlnaHQgY291bnQ6IDM6Cit8IDxk
aXY+Cit8ICAgIkhlbGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9
IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhp
bmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQ8
I3NlbGVjdGlvbi1jYXJldD4iCisKK01vdmUgbGVmdCBjb3VudDogMToKK3wgPGRpdj4KK3wgICAi
SGVsbG8gJSkiCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAg
IGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAg
IHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICI8I3NlbGVjdGlvbi1jYXJl
dD5Xb3JsZCIKKworTW92ZSBsZWZ0IGNvdW50OiAyOgorfCA8ZGl2PgorfCAgICI8I3NlbGVjdGlv
bi1jYXJldD5IZWxsbyAlKSIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIx
IgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5n
IgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkIgor
CitNb3ZlIGxlZnQgY291bnQ6IDM6Cit8IDxkaXY+Cit8ICAgIjwjc2VsZWN0aW9uLWNhcmV0Pkhl
bGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBo
ZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3
aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQiCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9i
amVjdC1lbGVtZW50LTIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTIuaHRt
bAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5
LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTIuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8ZGl2
IGlkPSJlZGl0b3IiIGNvbnRlbnRlZGl0YWJsZT48ZGl2PkhlbGxvICUpPC9kaXY+PGRpdj48b2Jq
ZWN0IHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIiBoZWlnaHQ9IjUwIiB3aWR0aD0iNTAi
IGJvcmRlcj0iMSI+PC9vYmplY3Q+PGJyPjxkaXY+V29ybGQ8L2Rpdj48L2Rpdj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvZHVtcC1hcy1tYXJrdXAuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdD4KKworTWFya3VwLmRlc2NyaXB0aW9uKCdUaGlzIHRlc3RzIG1vdmluZyByaWdodCBh
bmQgbGVmdCBieSB3b3JkIGJvdW5kYXJ5IGFjcm9zcyBhbiBvYmplY3QgZWxlbWVudC4gV2ViS2l0
IHNob3VsZCBub3QgaGFuZy4nKTsKK2VkaXRvci5mb2N1cygpOworZ2V0U2VsZWN0aW9uKCkuc2V0
UG9zaXRpb24oZWRpdG9yLCAwKTsKKworTWFya3VwLmR1bXAoZWRpdG9yLCAnSW5pdGlhbCBzdGF0
ZScpOworZm9yIChsZXQgaSA9IDA7IGkgPCAzOyBpKyspIHsKKyAgICBnZXRTZWxlY3Rpb24oKS5t
b2RpZnkoJ21vdmUnLCAncmlnaHQnLCAnd29yZCcpOworICAgIE1hcmt1cC5kdW1wKGVkaXRvciwg
YE1vdmUgcmlnaHQgY291bnQ6ICR7aSArIDF9YCk7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwg
MzsgaSsrKSB7CisgICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCdtb3ZlJywgJ2xlZnQnLCAnd29y
ZCcpOworICAgIE1hcmt1cC5kdW1wKGVkaXRvciwgYE1vdmUgbGVmdCBjb3VudDogJHtpICsgMX1g
KTsKK30KKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVt
ZW50LTMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2Vs
ZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy1leHBl
Y3RlZC50eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
bW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0zLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkyIEBACitUaGlzIHRlc3RzIG1vdmluZyBsZWZ0
IGFuZCByaWdodCBieSB3b3JkIGJvdW5kYXJ5IGFjcm9zcyBhbiBvYmplY3QgZWxlbWVudC4gV2Vi
S2l0IHNob3VsZCBub3QgaGFuZy4KKworSW5pdGlhbCBzdGF0ZToKK3wgPGRpdj4KK3wgICAiPCNz
ZWxlY3Rpb24tY2FyZXQ+16nXnNeV150iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJv
cmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNv
bWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICLX
oteV15zXnSIKKworTW92ZSBsZWZ0IGNvdW50OiAxOgorfCA8ZGl2PgorfCAgICLXqdec15XXnTwj
c2VsZWN0aW9uLWNhcmV0PiIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIx
IgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5n
IgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgItei15XXnNed
IgorCitNb3ZlIGxlZnQgY291bnQ6IDI6Cit8IDxkaXY+Cit8ICAgItep15zXldedIgorfCA8ZGl2
PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAg
ICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAg
PGJyPgorfCAgIDxkaXY+Cit8ICAgICAi16LXldec1508I3NlbGVjdGlvbi1jYXJldD4iCisKK01v
dmUgbGVmdCBjb3VudDogMzoKK3wgPGRpdj4KK3wgICAi16nXnNeV150iCit8IDxkaXY+Cit8ICAg
PG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBl
PSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8
ICAgPGRpdj4KK3wgICAgICLXoteV15zXnTwjc2VsZWN0aW9uLWNhcmV0PiIKKworTW92ZSByaWdo
dCBjb3VudDogMToKK3wgPGRpdj4KK3wgICAi16nXnNeV150iCit8IDxkaXY+Cit8ICAgPG9iamVj
dD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBs
aWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRp
dj4KK3wgICAgICI8I3NlbGVjdGlvbi1jYXJldD7XoteV15zXnSIKKworTW92ZSByaWdodCBjb3Vu
dDogMjoKK3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2FyZXQ+16nXnNeV150iCit8IDxkaXY+
Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAg
ICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8
YnI+Cit8ICAgPGRpdj4KK3wgICAgICLXoteV15zXnSIKKworTW92ZSByaWdodCBjb3VudDogMzoK
K3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2FyZXQ+16nXnNeV150iCit8IDxkaXY+Cit8ICAg
PG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBl
PSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8
ICAgPGRpdj4KK3wgICAgICLXoteV15zXnSIKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvc2Vs
ZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29y
ZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1sCShub25leGlzdGVudCkKKysr
IExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jv
c3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjUgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWwgY2hhcnNldD0idXRmLTgiPgorPGJvZHk+Cis8ZGl2IGlk
PSJlZGl0b3IiIGRpcj0icnRsIiBjb250ZW50ZWRpdGFibGU+PGRpdj4mIzE1MTM7JiMxNTAwOyYj
MTQ5MzsmIzE1MDE7PC9kaXY+PGRpdj48b2JqZWN0IHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRo
aW5nIiBoZWlnaHQ9IjUwIiB3aWR0aD0iNTAiIGJvcmRlcj0iMSI+PC9vYmplY3Q+PGJyPjxkaXY+
JiMxNTA2OyYjMTQ5MzsmIzE1MDA7JiMxNTAxOzwvZGl2PjwvZGl2PjwvZGl2PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy9kdW1wLWFzLW1hcmt1cC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
PgorCitNYXJrdXAuZGVzY3JpcHRpb24oJ1RoaXMgdGVzdHMgbW92aW5nIGxlZnQgYW5kIHJpZ2h0
IGJ5IHdvcmQgYm91bmRhcnkgYWNyb3NzIGFuIG9iamVjdCBlbGVtZW50LiBXZWJLaXQgc2hvdWxk
IG5vdCBoYW5nLicpOworZWRpdG9yLmZvY3VzKCk7CitnZXRTZWxlY3Rpb24oKS5zZXRQb3NpdGlv
bihlZGl0b3IsIDApOworCitNYXJrdXAuZHVtcChlZGl0b3IsICdJbml0aWFsIHN0YXRlJyk7Citm
b3IgKGxldCBpID0gMDsgaSA8IDM7IGkrKykgeworICAgIGdldFNlbGVjdGlvbigpLm1vZGlmeSgn
bW92ZScsICdsZWZ0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAuZHVtcChlZGl0b3IsIGBNb3ZlIGxl
ZnQgY291bnQ6ICR7aSArIDF9YCk7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMzsgaSsrKSB7
CisgICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCdtb3ZlJywgJ3JpZ2h0JywgJ3dvcmQnKTsKKyAg
ICBNYXJrdXAuZHVtcChlZGl0b3IsIGBNb3ZlIHJpZ2h0IGNvdW50OiAke2kgKyAxfWApOworfQor
Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374929</attachid>
            <date>2019-07-25 18:42:15 -0700</date>
            <delta_ts>2019-07-26 16:38:17 -0700</delta_ts>
            <desc>Added a change log</desc>
            <filename>bug-200144-20190725184214.patch</filename>
            <type>text/plain</type>
            <size>14472</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzgxMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBACisyMDE5LTA3LTI1ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIE1vdmluZyByaWdodCBieSB3b3Jk
IGJvdW5kYXJ5IHJpZ2h0IGJlZm9yZSBhbiBvYmplY3QgZWxlbWVudCBmb2xsb3dlZCBieSBhIGJy
IGVsZW1lbnQgaGFuZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwMDE0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRoZSBidWcgd2FzIGNhdXNlZCBieSBhbiBpbmZpbml0ZSBsb29wIGluc2lkZSB3b3Jk
QnJlYWtJdGVyYXRvckZvck1pbk9mZnNldEJvdW5kYXJ5IHdoZW4gaXQncyB0cnlpbmcgdG8KKyAg
ICAgICAgZmluZCB0aGUgcHJldmlvdXMgd29yZCBib3VuZGFyeSBhdCB0aGUgYmVnaW5uaW5nIG9m
IGEgd29yZCBhZnRlciB0aGUgb2JqZWN0IGVsZW1lbnQgYW5kIHRoZSBiciBlbGVtZW50LgorICAg
ICAgICBJbiB0aGlzIGNhc2UsIHByZXZpb3VzQm94IGlzIGF0IHRoZSBiciBlbGVtZW50IGFmdGVy
IHRoZSBvYmplY3QgZWxlbWVudCBpbiB0aGUgcHJlY2VkaW5nIGxpbmUsIGFuZAorICAgICAgICBs
b2dpY2FsbHlQcmV2aW91c0JveCBlbmRzIHVwIHJldHVybmluZyB0aGUgc2FtZSBpbmxpbmUgYm94
ICh0aGF0IG9mIHRoZSBiciBlbGVtZW50KSwgY2F1c2luZyBhIGhhbmcuCisKKyAgICAgICAgSGVy
ZSdzIGhvdy4gSW4gbG9naWNhbGx5UHJldmlvdXNCb3gsIHByZXZpb3VzUm9vdElubGluZUJveENh
bmRpZGF0ZVBvc2l0aW9uIHJldHVybnMgYSBsZWdhY3kgcG9zaXRpb24KKyAgICAgICAgaW1tZWRp
YXRlbHkgYWZ0ZXIgdGhlIG9iamVjdCBlbGVtZW50LiBUaGUgcm9vdCBpbmxpbmUgYm94IGZvciB0
aGlzIHBvc2l0aW9uIChwcmV2aW91c1Jvb3QpIGlzIHRoZSBvbmUKKyAgICAgICAgdGhhdCBjb250
YWlucyB0aGUgb2JqZWN0IGVsZW1lbnQgYW5kIHRoZSBiciBlbGVtZW50LiBIb3dldmVyLCB3aGVu
IHByZXZpb3VzVGV4dE9yTGluZUJyZWFrQm94IGlzIGNhbGxlZAorICAgICAgICBvbiB0aGlzIHJv
b3QgaW5saW5lIGJveCwgImJveCIgYXJndW1lbnQgb2YgdGhlIGZ1bmN0aW9uIGlzIHNldCB0byBu
dWxscHRyLCBhbmQgYXMgYSByZXN1bHQsIHRoZSBmdW5jdGlvbgorICAgICAgICBmaW5kcyBhbmQg
cmV0dXJucyB0aGUgc2FtZSBpbmxpbmUgYm94IG9mIHRoZSBiciBlbGVtZW50IHRoYXQgd2FzIHBh
c3NlZCB0byBsb2dpY2FsbHlQcmV2aW91c0JveC4KKworICAgICAgICBGaXhlZCB0aGUgYnVnIGJ5
IHBhc3NpbmcgdGhlIHN0YXJ0aW5nIGlubGluZSBib3ggdG8gcHJldmlvdXNSb290SW5saW5lQm94
Q2FuZGlkYXRlUG9zaXRpb24gd2hlbiBpdHMKKyAgICAgICAgcm9vdCBpbmxpbmUgYm94IGlzIHRo
ZSBwcmV2aW91cyByb290IGlubGluZSBib3ggKHByZXZpb3VzUm9vdCkuIEFsc28gYXBwbGllZCB0
aGUgc2FtZSBmaXggdG8KKyAgICAgICAgbG9naWNhbGx5TmV4dEJveCBldmVuIHRob3VnaCB3ZSBk
b24ndCBoYXZlIGEgcmVwcm9kdWN0aW9uIGZvciB0aGF0IGNhc2UgZm9yIG5vdyAoUlRMIHRlc3Qg
Y2FzZSBpcworICAgICAgICB1bmFmZmVjdGVkIGJ5IG5leHRSb290SW5saW5lQm94Q2FuZGlkYXRl
UG9zaXRpb24pLgorCisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdv
cmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTEuaHRtbAorICAgICAgICAgICAgICAg
ZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxl
bWVudC0yLmh0bWwKKyAgICAgICAgICAgICAgIGVkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29y
ZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1sCisKKyAgICAgICAgKiBlZGl0
aW5nL1Zpc2libGVVbml0cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpsb2dpY2FsbHlQcmV2aW91
c0JveCk6IEZpeGVkIHRoZSBidWcuCisgICAgICAgIChXZWJDb3JlOjpsb2dpY2FsbHlOZXh0Qm94
KTogRGl0dG8uCisKIDIwMTktMDctMjQgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+
CiAKICAgICAgICAgW1dITFNMXSBVc2UgYm1hbGxvYyBpbnN0ZWFkIG9mIHN5c3RlbSBtYWxsb2Mg
Zm9yIFdITFNMIGRhdGEgc3RydWN0dXJlcwpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9W
aXNpYmxlVW5pdHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlz
aWJsZVVuaXRzLmNwcAkocmV2aXNpb24gMjQ3ODEzKQorKysgU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9WaXNpYmxlVW5pdHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMzIsNyArMjMyLDcgQEAgc3Rh
dGljIGNvbnN0IElubGluZUJveCogbG9naWNhbGx5UHJldmlvdQogICAgICAgICBpZiAoIXByZXZp
b3VzUm9vdCkKICAgICAgICAgICAgIGJyZWFrOwogCi0gICAgICAgIHByZXZpb3VzQm94ID0gbGVh
ZkJveGVzLnByZXZpb3VzVGV4dE9yTGluZUJyZWFrQm94KHByZXZpb3VzUm9vdCwgMCk7CisgICAg
ICAgIHByZXZpb3VzQm94ID0gbGVhZkJveGVzLnByZXZpb3VzVGV4dE9yTGluZUJyZWFrQm94KHBy
ZXZpb3VzUm9vdCwgJnN0YXJ0Qm94LT5yb290KCkgPT0gcHJldmlvdXNSb290ID8gc3RhcnRCb3gg
OiBudWxscHRyKTsKICAgICAgICAgaWYgKHByZXZpb3VzQm94KSB7CiAgICAgICAgICAgICBwcmV2
aW91c0JveEluRGlmZmVyZW50TGluZSA9IHRydWU7CiAgICAgICAgICAgICByZXR1cm4gcHJldmlv
dXNCb3g7CkBAIC0yNzMsNyArMjczLDcgQEAgc3RhdGljIGNvbnN0IElubGluZUJveCogbG9naWNh
bGx5TmV4dEJveAogICAgICAgICBpZiAoIW5leHRSb290KQogICAgICAgICAgICAgYnJlYWs7CiAK
LSAgICAgICAgbmV4dEJveCA9IGxlYWZCb3hlcy5uZXh0VGV4dE9yTGluZUJyZWFrQm94KG5leHRS
b290LCAwKTsKKyAgICAgICAgbmV4dEJveCA9IGxlYWZCb3hlcy5uZXh0VGV4dE9yTGluZUJyZWFr
Qm94KG5leHRSb290LCAmc3RhcnRCb3gtPnJvb3QoKSA9PSBuZXh0Um9vdCA/IHN0YXJ0Qm94IDog
bnVsbHB0cik7CiAgICAgICAgIGlmIChuZXh0Qm94KSB7CiAgICAgICAgICAgICBuZXh0Qm94SW5E
aWZmZXJlbnRMaW5lID0gdHJ1ZTsKICAgICAgICAgICAgIHJldHVybiBuZXh0Qm94OwpJbmRleDog
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxv
ZwkocmV2aXNpb24gMjQ3ODEzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTktMDctMjUgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgTW92aW5nIHJpZ2h0IGJ5IHdvcmQgYm91bmRhcnkgcmlnaHQg
YmVmb3JlIGFuIG9iamVjdCBlbGVtZW50IGZvbGxvd2VkIGJ5IGEgYnIgZWxlbWVudCBoYW5ncwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTQ0CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgcmVn
cmVzc2lvbiB0ZXN0cy4gVGhlIHNlY29uZCB0ZXN0IGNhc2UgaW52b2xlcyBub24td29yZCBjaGFy
YWN0ZXJzICIlKSIgd2hpY2ggYXJlIHNraXBwZWQgbGlrZSB3aGl0ZXNwYWNlcworICAgICAgICBm
b3IgdGhlIHB1cnBvc2VzIG9mIG1vdmluZyByaWdodCBvciBsZWZ0IGJ5IHdvcmQgZ3JhbnVsYXJp
dHkuIFRoZSB0aGlyZCB0ZXN0IGNhc2UgaW52b2x2ZXMgUlRMIHRleHQuCisKKyAgICAgICAgKiBl
ZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVt
ZW50LTEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9t
b3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTEuaHRtbDogQWRkZWQu
CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9z
cy1vYmplY3QtZWxlbWVudC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGlu
Zy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0y
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12
aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2Jq
ZWN0LWVsZW1lbnQtMy5odG1sOiBBZGRlZC4KKwogMjAxOS0wNy0yNCAgRGV2aW4gUm91c3NvICA8
ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3Rvcjogc3VwcG9ydCBgY29u
c29sZS5zY3JlZW5zaG90YCB3aXRoIEltYWdlRGF0YSBhbmQgSW1hZ2VCaXRtYXAKSW5kZXg6IExh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mt
b2JqZWN0LWVsZW1lbnQtMS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxl
bWVudC0xLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTEt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOTIgQEAKK1RoaXMgdGVzdHMg
bW92aW5nIHJpZ2h0IGFuZCBsZWZ0IGJ5IHdvcmQgYm91bmRhcnkgYWNyb3NzIGFuIG9iamVjdCBl
bGVtZW50LiBXZWJLaXQgc2hvdWxkIG5vdCBoYW5nLgorCitJbml0aWFsIHN0YXRlOgorfCA8ZGl2
PgorfCAgICI8I3NlbGVjdGlvbi1jYXJldD5IZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0Pgor
fCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0
aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2Pgor
fCAgICAgIldvcmxkIgorCitNb3ZlIHJpZ2h0IGNvdW50OiAxOgorfCA8ZGl2PgorfCAgICJIZWxs
bzwjc2VsZWN0aW9uLWNhcmV0PiIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVy
PSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRo
aW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxk
IgorCitNb3ZlIHJpZ2h0IGNvdW50OiAyOgorfCA8ZGl2PgorfCAgICJIZWxsbyIKK3wgPGRpdj4K
K3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAg
IHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxi
cj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkPCNzZWxlY3Rpb24tY2FyZXQ+IgorCitNb3ZlIHJp
Z2h0IGNvdW50OiAzOgorfCA8ZGl2PgorfCAgICJIZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0
PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxp
Y2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2
PgorfCAgICAgIldvcmxkPCNzZWxlY3Rpb24tY2FyZXQ+IgorCitNb3ZlIGxlZnQgY291bnQ6IDE6
Cit8IDxkaXY+Cit8ICAgIkhlbGxvIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3Jk
ZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21l
dGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiPCNz
ZWxlY3Rpb24tY2FyZXQ+V29ybGQiCisKK01vdmUgbGVmdCBjb3VudDogMjoKK3wgPGRpdj4KK3wg
ICAiPCNzZWxlY3Rpb24tY2FyZXQ+SGVsbG8iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAg
IGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94
LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAg
ICJXb3JsZCIKKworTW92ZSBsZWZ0IGNvdW50OiAzOgorfCA8ZGl2PgorfCAgICI8I3NlbGVjdGlv
bi1jYXJldD5IZWxsbyIKK3wgPGRpdj4KK3wgICA8b2JqZWN0PgorfCAgICAgYm9yZGVyPSIxIgor
fCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIgor
fCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8ZGl2PgorfCAgICAgIldvcmxkIgpJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFj
cm9zcy1vYmplY3QtZWxlbWVudC0xLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVu
dC0xLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
bW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3QtZWxlbWVudC0xLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5
PgorPGRpdiBpZD0iZWRpdG9yIiBjb250ZW50ZWRpdGFibGU+PGRpdj5IZWxsbzwvZGl2PjxkaXY+
PG9iamVjdCB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIgaGVpZ2h0PSI1MCIgd2lkdGg9
IjUwIiBib3JkZXI9IjEiPjwvb2JqZWN0Pjxicj48ZGl2PldvcmxkPC9kaXY+PC9kaXY+PC9kaXY+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2R1bXAtYXMtbWFya3VwLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQ+CisKK01hcmt1cC5kZXNjcmlwdGlvbignVGhpcyB0ZXN0cyBtb3Zpbmcgcmln
aHQgYW5kIGxlZnQgYnkgd29yZCBib3VuZGFyeSBhY3Jvc3MgYW4gb2JqZWN0IGVsZW1lbnQuIFdl
YktpdCBzaG91bGQgbm90IGhhbmcuJyk7CitlZGl0b3IuZm9jdXMoKTsKK2dldFNlbGVjdGlvbigp
LnNldFBvc2l0aW9uKGVkaXRvciwgMCk7CisKK01hcmt1cC5kdW1wKGVkaXRvciwgJ0luaXRpYWwg
c3RhdGUnKTsKK2ZvciAobGV0IGkgPSAwOyBpIDwgMzsgaSsrKSB7CisgICAgZ2V0U2VsZWN0aW9u
KCkubW9kaWZ5KCdtb3ZlJywgJ3JpZ2h0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAuZHVtcChlZGl0
b3IsIGBNb3ZlIHJpZ2h0IGNvdW50OiAke2kgKyAxfWApOworfQorCitmb3IgKGxldCBpID0gMDsg
aSA8IDM7IGkrKykgeworICAgIGdldFNlbGVjdGlvbigpLm1vZGlmeSgnbW92ZScsICdsZWZ0Jywg
J3dvcmQnKTsKKyAgICBNYXJrdXAuZHVtcChlZGl0b3IsIGBNb3ZlIGxlZnQgY291bnQ6ICR7aSAr
IDF9YCk7Cit9CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3Qt
ZWxlbWVudC0yLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTIt
ZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMi1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5MiBAQAorVGhpcyB0ZXN0cyBtb3Zpbmcg
cmlnaHQgYW5kIGxlZnQgYnkgd29yZCBib3VuZGFyeSBhY3Jvc3MgYW4gb2JqZWN0IGVsZW1lbnQu
IFdlYktpdCBzaG91bGQgbm90IGhhbmcuCisKK0luaXRpYWwgc3RhdGU6Cit8IDxkaXY+Cit8ICAg
Ijwjc2VsZWN0aW9uLWNhcmV0PkhlbGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAg
ICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24v
eC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAg
ICAiV29ybGQiCisKK01vdmUgcmlnaHQgY291bnQ6IDE6Cit8IDxkaXY+Cit8ICAgIkhlbGxvPCNz
ZWxlY3Rpb24tY2FyZXQ+ICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9
IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhp
bmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQi
CisKK01vdmUgcmlnaHQgY291bnQ6IDI6Cit8IDxkaXY+Cit8ICAgIkhlbGxvICUpIgorfCA8ZGl2
PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAg
ICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAg
PGJyPgorfCAgIDxkaXY+Cit8ICAgICAiV29ybGQ8I3NlbGVjdGlvbi1jYXJldD4iCisKK01vdmUg
cmlnaHQgY291bnQ6IDM6Cit8IDxkaXY+Cit8ICAgIkhlbGxvICUpIgorfCA8ZGl2PgorfCAgIDxv
YmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0i
YXBwbGljYXRpb24veC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAg
IDxkaXY+Cit8ICAgICAiV29ybGQ8I3NlbGVjdGlvbi1jYXJldD4iCisKK01vdmUgbGVmdCBjb3Vu
dDogMToKK3wgPGRpdj4KK3wgICAiSGVsbG8gJSkiCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wg
ICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlv
bi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wg
ICAgICI8I3NlbGVjdGlvbi1jYXJldD5Xb3JsZCIKKworTW92ZSBsZWZ0IGNvdW50OiAyOgorfCA8
ZGl2PgorfCAgICI8I3NlbGVjdGlvbi1jYXJldD5IZWxsbyAlKSIKK3wgPGRpdj4KK3wgICA8b2Jq
ZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFw
cGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8
ZGl2PgorfCAgICAgIldvcmxkIgorCitNb3ZlIGxlZnQgY291bnQ6IDM6Cit8IDxkaXY+Cit8ICAg
Ijwjc2VsZWN0aW9uLWNhcmV0PkhlbGxvICUpIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAg
ICBib3JkZXI9IjEiCit8ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24v
eC1zb21ldGhpbmciCit8ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAg
ICAiV29ybGQiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdv
cmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3Nz
LW9iamVjdC1lbGVtZW50LTIuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9lZGl0
aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktYWNyb3NzLW9iamVjdC1lbGVtZW50
LTIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGJvZHk+Cis8ZGl2IGlkPSJlZGl0b3IiIGNvbnRlbnRlZGl0YWJsZT48ZGl2Pkhl
bGxvICUpPC9kaXY+PGRpdj48b2JqZWN0IHR5cGU9ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIiBo
ZWlnaHQ9IjUwIiB3aWR0aD0iNTAiIGJvcmRlcj0iMSI+PC9vYmplY3Q+PGJyPjxkaXY+V29ybGQ8
L2Rpdj48L2Rpdj48L2Rpdj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvZHVtcC1hcy1t
YXJrdXAuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKworTWFya3VwLmRlc2NyaXB0aW9uKCdUaGlz
IHRlc3RzIG1vdmluZyByaWdodCBhbmQgbGVmdCBieSB3b3JkIGJvdW5kYXJ5IGFjcm9zcyBhbiBv
YmplY3QgZWxlbWVudC4gV2ViS2l0IHNob3VsZCBub3QgaGFuZy4nKTsKK2VkaXRvci5mb2N1cygp
OworZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRpb24oZWRpdG9yLCAwKTsKKworTWFya3VwLmR1bXAo
ZWRpdG9yLCAnSW5pdGlhbCBzdGF0ZScpOworZm9yIChsZXQgaSA9IDA7IGkgPCAzOyBpKyspIHsK
KyAgICBnZXRTZWxlY3Rpb24oKS5tb2RpZnkoJ21vdmUnLCAncmlnaHQnLCAnd29yZCcpOworICAg
IE1hcmt1cC5kdW1wKGVkaXRvciwgYE1vdmUgcmlnaHQgY291bnQ6ICR7aSArIDF9YCk7Cit9CisK
K2ZvciAobGV0IGkgPSAwOyBpIDwgMzsgaSsrKSB7CisgICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5
KCdtb3ZlJywgJ2xlZnQnLCAnd29yZCcpOworICAgIE1hcmt1cC5kdW1wKGVkaXRvciwgYE1vdmUg
bGVmdCBjb3VudDogJHtpICsgMX1gKTsKK30KKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFs
bHktYWNyb3NzLW9iamVjdC1lbGVtZW50LTMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mt
b2JqZWN0LWVsZW1lbnQtMy1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWFjcm9zcy1vYmplY3Qt
ZWxlbWVudC0zLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkyIEBACitU
aGlzIHRlc3RzIG1vdmluZyBsZWZ0IGFuZCByaWdodCBieSB3b3JkIGJvdW5kYXJ5IGFjcm9zcyBh
biBvYmplY3QgZWxlbWVudC4gV2ViS2l0IHNob3VsZCBub3QgaGFuZy4KKworSW5pdGlhbCBzdGF0
ZToKK3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2FyZXQ+16nXnNeV150iCit8IDxkaXY+Cit8
ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0iNTAiCit8ICAgICB0
eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+
Cit8ICAgPGRpdj4KK3wgICAgICLXoteV15zXnSIKKworTW92ZSBsZWZ0IGNvdW50OiAxOgorfCA8
ZGl2PgorfCAgICLXqdec15XXnTwjc2VsZWN0aW9uLWNhcmV0PiIKK3wgPGRpdj4KK3wgICA8b2Jq
ZWN0PgorfCAgICAgYm9yZGVyPSIxIgorfCAgICAgaGVpZ2h0PSI1MCIKK3wgICAgIHR5cGU9ImFw
cGxpY2F0aW9uL3gtc29tZXRoaW5nIgorfCAgICAgd2lkdGg9IjUwIgorfCAgIDxicj4KK3wgICA8
ZGl2PgorfCAgICAgItei15XXnNedIgorCitNb3ZlIGxlZnQgY291bnQ6IDI6Cit8IDxkaXY+Cit8
ICAgItep15zXldedIgorfCA8ZGl2PgorfCAgIDxvYmplY3Q+Cit8ICAgICBib3JkZXI9IjEiCit8
ICAgICBoZWlnaHQ9IjUwIgorfCAgICAgdHlwZT0iYXBwbGljYXRpb24veC1zb21ldGhpbmciCit8
ICAgICB3aWR0aD0iNTAiCit8ICAgPGJyPgorfCAgIDxkaXY+Cit8ICAgICAi16LXldec1508I3Nl
bGVjdGlvbi1jYXJldD4iCisKK01vdmUgbGVmdCBjb3VudDogMzoKK3wgPGRpdj4KK3wgICAi16nX
nNeV150iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhl
aWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdp
ZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICLXoteV15zXnTwjc2VsZWN0aW9u
LWNhcmV0PiIKKworTW92ZSByaWdodCBjb3VudDogMToKK3wgPGRpdj4KK3wgICAi16nXnNeV150i
Cit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhlaWdodD0i
NTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdpZHRoPSI1
MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICI8I3NlbGVjdGlvbi1jYXJldD7XoteV15zX
nSIKKworTW92ZSByaWdodCBjb3VudDogMjoKK3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2Fy
ZXQ+16nXnNeV150iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wg
ICAgIGhlaWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wg
ICAgIHdpZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICLXoteV15zXnSIKKwor
TW92ZSByaWdodCBjb3VudDogMzoKK3wgPGRpdj4KK3wgICAiPCNzZWxlY3Rpb24tY2FyZXQ+16nX
nNeV150iCit8IDxkaXY+Cit8ICAgPG9iamVjdD4KK3wgICAgIGJvcmRlcj0iMSIKK3wgICAgIGhl
aWdodD0iNTAiCit8ICAgICB0eXBlPSJhcHBsaWNhdGlvbi94LXNvbWV0aGluZyIKK3wgICAgIHdp
ZHRoPSI1MCIKK3wgICA8YnI+Cit8ICAgPGRpdj4KK3wgICAgICLXoteV15zXnSIKSW5kZXg6IExh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mt
b2JqZWN0LWVsZW1lbnQtMy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
c2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5o
dG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUt
Ynktd29yZC12aXN1YWxseS1hY3Jvc3Mtb2JqZWN0LWVsZW1lbnQtMy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWwgY2hhcnNldD0idXRm
LTgiPgorPGJvZHk+Cis8ZGl2IGlkPSJlZGl0b3IiIGRpcj0icnRsIiBjb250ZW50ZWRpdGFibGU+
PGRpdj4mIzE1MTM7JiMxNTAwOyYjMTQ5MzsmIzE1MDE7PC9kaXY+PGRpdj48b2JqZWN0IHR5cGU9
ImFwcGxpY2F0aW9uL3gtc29tZXRoaW5nIiBoZWlnaHQ9IjUwIiB3aWR0aD0iNTAiIGJvcmRlcj0i
MSI+PC9vYmplY3Q+PGJyPjxkaXY+JiMxNTA2OyYjMTQ5MzsmIzE1MDA7JiMxNTAxOzwvZGl2Pjwv
ZGl2PjwvZGl2PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9kdW1wLWFzLW1hcmt1cC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitNYXJrdXAuZGVzY3JpcHRpb24oJ1RoaXMgdGVzdHMg
bW92aW5nIGxlZnQgYW5kIHJpZ2h0IGJ5IHdvcmQgYm91bmRhcnkgYWNyb3NzIGFuIG9iamVjdCBl
bGVtZW50LiBXZWJLaXQgc2hvdWxkIG5vdCBoYW5nLicpOworZWRpdG9yLmZvY3VzKCk7CitnZXRT
ZWxlY3Rpb24oKS5zZXRQb3NpdGlvbihlZGl0b3IsIDApOworCitNYXJrdXAuZHVtcChlZGl0b3Is
ICdJbml0aWFsIHN0YXRlJyk7Citmb3IgKGxldCBpID0gMDsgaSA8IDM7IGkrKykgeworICAgIGdl
dFNlbGVjdGlvbigpLm1vZGlmeSgnbW92ZScsICdsZWZ0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAu
ZHVtcChlZGl0b3IsIGBNb3ZlIGxlZnQgY291bnQ6ICR7aSArIDF9YCk7Cit9CisKK2ZvciAobGV0
IGkgPSAwOyBpIDwgMzsgaSsrKSB7CisgICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCdtb3ZlJywg
J3JpZ2h0JywgJ3dvcmQnKTsKKyAgICBNYXJrdXAuZHVtcChlZGl0b3IsIGBNb3ZlIHJpZ2h0IGNv
dW50OiAke2kgKyAxfWApOworfQorCis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>