<?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>58504</bug_id>
          
          <creation_ts>2011-04-13 18:51:30 -0700</creation_ts>
          <short_desc>move caret by word in visual order returns wrong result when caret itself is at word boundary</short_desc>
          <delta_ts>2011-04-22 18:13:56 -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>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows 7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>25298</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Xiaomei Ji">xji</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>mitz</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>385441</commentid>
    <comment_count>0</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-13 18:51:30 -0700</bug_when>
    <thetext>positionBeforeNext() does not work for all cases.

Given &quot;abc def hij&quot; as an example:
if caret is between &quot;b&apos; and &apos;c&apos;, it returns position between &apos; &apos; and &apos;d&apos;.
But if caret is between &apos;c&apos; and &apos; &apos;, it returns position between &apos; &apos; and &apos;h&apos;, which is wrong.

Same problem for positionAfterPreviousWord().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387065</commentid>
    <comment_count>1</comment_count>
      <attachid>89889</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-15 17:15:53 -0700</bug_when>
    <thetext>Created attachment 89889
patch w/ layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389607</commentid>
    <comment_count>2</comment_count>
      <attachid>90437</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-20 16:20:28 -0700</bug_when>
    <thetext>Created attachment 90437
patch w/ layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389674</commentid>
    <comment_count>3</comment_count>
      <attachid>90437</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-20 17:24:01 -0700</bug_when>
    <thetext>Comment on attachment 90437
patch w/ layout test

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

&gt; LayoutTests/editing/selection/move-by-word-visually-expected.txt:178
&gt; +&quot;FFZ LIG&quot;[3, 3]   FAIL expected &quot;ABD DSU &quot;[ 0]

Why do we have different strings in expected result?  That seems wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389713</commentid>
    <comment_count>4</comment_count>
      <attachid>90437</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-20 18:10:56 -0700</bug_when>
    <thetext>Comment on attachment 90437
patch w/ layout test

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

&gt; LayoutTests/editing/selection/move-by-word-visually-expected.txt:179
&gt; +&quot;FFZ LIG&quot;[4, 4]   FAIL expected &quot;ABD DSU &quot;[ 0]

the current behavior is moving from offset 3 in node &quot;FFZ LIG&quot; moves cursor to offset 3 (cursor stays the same position).
It actually should move cursor to offset 0 in node &quot;ABD DSU&quot;.

When the structure is complicated (with embedding elements and bidirectional text) the cursor start and end node might be different.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391005</commentid>
    <comment_count>5</comment_count>
      <attachid>90437</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-22 13:29:42 -0700</bug_when>
    <thetext>Comment on attachment 90437
patch w/ layout test

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

&gt; LayoutTests/editing/selection/move-by-word-visually.html:-374
&gt; -&lt;!-- The content in title means &quot;startOffsetInCurrentNode movingDirectionByWord endingNode endingOffsetInEndingNode&quot; --&gt;
&gt; -&lt;div id=&quot;div_100&quot; contenteditable&gt;××× &lt;span id=&quot;span_100&quot; class=&quot;specific_test&quot; title=&quot;1 left div_100 0&quot;&gt;××&lt;/span&gt;&lt;/div&gt;

Why are we removing this test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391056</commentid>
    <comment_count>6</comment_count>
      <attachid>90437</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-22 14:19:31 -0700</bug_when>
    <thetext>Comment on attachment 90437
patch w/ layout test

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

&gt;&gt; LayoutTests/editing/selection/move-by-word-visually.html:-374
&gt;&gt; -&lt;div id=&quot;div_100&quot; contenteditable&gt;××× &lt;span id=&quot;span_100&quot; class=&quot;specific_test&quot; title=&quot;1 left div_100 0&quot;&gt;××&lt;/span&gt;&lt;/div&gt;
&gt; 
&gt; Why are we removing this test?

It was added to address comment #18 in bug 57806 https://bugs.webkit.org/show_bug.cgi?id=57806#c18.
It is a very specific test just to test a specific path works (at that time, the whole patch is not completed implemented yet).

Now since we have the whole patch ready, and I added test case to test word break stops at right position on *every* visible position. So this specific test is covered, and we are no longer need it anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391073</commentid>
    <comment_count>7</comment_count>
      <attachid>90437</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-22 14:31:41 -0700</bug_when>
    <thetext>Comment on attachment 90437
patch w/ layout test

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

&gt;&gt;&gt; LayoutTests/editing/selection/move-by-word-visually.html:-374
&gt;&gt;&gt; -&lt;div id=&quot;div_100&quot; contenteditable&gt;××× &lt;span id=&quot;span_100&quot; class=&quot;specific_test&quot; title=&quot;1 left div_100 0&quot;&gt;××&lt;/span&gt;&lt;/div&gt;
&gt;&gt; 
&gt;&gt; Why are we removing this test?
&gt; 
&gt; It was added to address comment #18 in bug 57806 https://bugs.webkit.org/show_bug.cgi?id=57806#c18.
&gt; It is a very specific test just to test a specific path works (at that time, the whole patch is not completed implemented yet).
&gt; 
&gt; Now since we have the whole patch ready, and I added test case to test word break stops at right position on *every* visible position. So this specific test is covered, and we are no longer need it anymore.

Okay, thanks for the clarification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391256</commentid>
    <comment_count>8</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-22 17:12:41 -0700</bug_when>
    <thetext>Committed r84710: &lt;http://trac.webkit.org/changeset/84710&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391283</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-22 17:57:01 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/84710 might have broken Qt Linux Release
The following tests are not passing:
editing/selection/move-by-word-visually.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391297</commentid>
    <comment_count>10</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-04-22 18:13:56 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; http://trac.webkit.org/changeset/84710 might have broken Qt Linux Release
&gt; The following tests are not passing:
&gt; editing/selection/move-by-word-visually.html

hm.. the result in QT is weird. Maybe visible position in QT is different, which  is not likely.
Or maybe the nextWordPosition and previousWordPosition in QT has bug.

temporarily put the test in QT&apos;s skip list while investigating.

Filed bug:
https://bugs.webkit.org/show_bug.cgi?id=59265</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89889</attachid>
            <date>2011-04-15 17:15:53 -0700</date>
            <delta_ts>2011-04-20 16:20:28 -0700</delta_ts>
            <desc>patch w/ layout test</desc>
            <filename>58504.v1</filename>
            <type>text/plain</type>
            <size>24250</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0MDUxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDQtMTUgIFhpYW9tZWkg
SmkgIDx4amlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIG1vdmUgY2FyZXQgYnkgd29yZCBpbiB2aXN1YWwgb3JkZXIgcmV0dXJu
cyB3cm9uZyByZXN1bHQgd2hlbiBjYXJldCBpdHNlbGYgaXMgYXQgd29yZCBib3VuZGFyeS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4NTA0LgorCisg
ICAgICAgIHBvc2l0aW9uQmVmb3JlTmV4dFdvcmQgc2hvdWxkIHRha2UgY2FyZSB0aGF0IHRoZSBj
dXJyZW50IHBvc2l0aW9uIGlzIGFmdGVyIGN1cnJlbnQgd29yZC4KKyAgICAgICAgcG9zaXRpb25B
ZnRlclByZXZpb3VzV29yZCBzaG91bGQgdGFrZSBjYXJlIHRoYXQgdGhlIGN1cnJlbnQgcG9zaXRp
biBpcyBiZWZvcmUgY3VycmVudCB3b3JkLgorCisgICAgICAgICogZWRpdGluZy92aXNpYmxlX3Vu
aXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBvc2l0aW9uQmVmb3JlTmV4dFdvcmQpOgorICAg
ICAgICAoV2ViQ29yZTo6cG9zaXRpb25BZnRlclByZXZpb3VzV29yZCk6CisKIDIwMTEtMDQtMTUg
IEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBCcmlhbiBXZWluc3RlaW4uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVf
dW5pdHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91
bml0cy5jcHAJKHJldmlzaW9uIDgzOTk2KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy92aXNp
YmxlX3VuaXRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ3Miw3ICsxNDcyLDExIEBAIHN0YXRp
YyBib29sIHBvc2l0aW9uSXNJbnNpZGVCb3goY29uc3QgVmkKIAogc3RhdGljIFZpc2libGVQb3Np
dGlvbiBwb3NpdGlvbkJlZm9yZU5leHRXb3JkKGNvbnN0IFZpc2libGVQb3NpdGlvbiYgcG9zaXRp
b24pCiB7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uQWZ0ZXJDdXJyZW50V29yZCA9IG5l
eHRXb3JkUG9zaXRpb24ocG9zaXRpb24pOworICAgIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbkFm
dGVyQ3VycmVudFdvcmQ7CisgICAgaWYgKG5leHRXb3JkUG9zaXRpb24ocHJldmlvdXNXb3JkUG9z
aXRpb24ocG9zaXRpb24pKSA9PSBwb3NpdGlvbikKKyAgICAgICAgcG9zaXRpb25BZnRlckN1cnJl
bnRXb3JkID0gcG9zaXRpb247CisgICAgZWxzZQorICAgICAgICBwb3NpdGlvbkFmdGVyQ3VycmVu
dFdvcmQgPSBuZXh0V29yZFBvc2l0aW9uKHBvc2l0aW9uKTsKICAgICBWaXNpYmxlUG9zaXRpb24g
cG9zaXRpb25BZnRlck5leHRXb3JkID0gbmV4dFdvcmRQb3NpdGlvbihwb3NpdGlvbkFmdGVyQ3Vy
cmVudFdvcmQpOwogICAgIGlmIChwb3NpdGlvbkFmdGVyQ3VycmVudFdvcmQgPT0gcG9zaXRpb25B
ZnRlck5leHRXb3JkKQogICAgICAgICByZXR1cm4gcG9zaXRpb25BZnRlckN1cnJlbnRXb3JkOwpA
QCAtMTQ4MSw3ICsxNDg1LDExIEBAIHN0YXRpYyBWaXNpYmxlUG9zaXRpb24gcG9zaXRpb25CZWZv
cmVOZXgKIAogc3RhdGljIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbkFmdGVyUHJldmlvdXNXb3Jk
KGNvbnN0IFZpc2libGVQb3NpdGlvbiYgcG9zaXRpb24pCiB7Ci0gICAgVmlzaWJsZVBvc2l0aW9u
IHBvc2l0aW9uQmVmb3JlQ3VycmVudFdvcmQgPSBwcmV2aW91c1dvcmRQb3NpdGlvbihwb3NpdGlv
bik7CisgICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uQmVmb3JlQ3VycmVudFdvcmQ7CisgICAg
aWYgKHByZXZpb3VzV29yZFBvc2l0aW9uKG5leHRXb3JkUG9zaXRpb24ocG9zaXRpb24pKSA9PSBw
b3NpdGlvbikKKyAgICAgICAgcG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9IHBvc2l0aW9uOwor
ICAgIGVsc2UKKyAgICAgICAgcG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9IHByZXZpb3VzV29y
ZFBvc2l0aW9uKHBvc2l0aW9uKTsKICAgICBWaXNpYmxlUG9zaXRpb24gcG9zaXRpb25CZWZvcmVQ
cmV2aW91c1dvcmQgPSBwcmV2aW91c1dvcmRQb3NpdGlvbihwb3NpdGlvbkJlZm9yZUN1cnJlbnRX
b3JkKTsKICAgICBpZiAocG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9PSBwb3NpdGlvbkJlZm9y
ZVByZXZpb3VzV29yZCkKICAgICAgICAgcmV0dXJuIHBvc2l0aW9uQmVmb3JlQ3VycmVudFdvcmQ7
CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCShyZXZpc2lvbiA4NDA1MSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDExLTA0LTE1ICBYaWFvbWVpIEppICA8eGpp
QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBtb3ZlIGNhcmV0IGJ5IHdvcmQgaW4gdmlzdWFsIG9yZGVyIHJldHVybnMgd3Jvbmcg
cmVzdWx0IHdoZW4gY2FyZXQgaXRzZWxmIGlzIGF0IHdvcmQgYm91bmRhcnkuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUwNC4KKworICAgICAgICBB
ZGQgdGVzdCBjYXNlIHRvIHRlc3QgbW92aW5nIGxlZnQvcmlnaHQgYnkgd29yZCB2aXN1YWxseSBv
biBldmVyeSBjaGFyYWN0ZXIgcG9zaXRpb24uCisgICAgICAgIFJlbW92ZSBhIHNwZWNpZmljIHRl
c3QgYWRkZWQgYmVmb3JlIGZvciB0ZXN0aW5nIGEgc3BlY2lmaWMgY29kZSBwYXRoIHNpbmNlIHRo
ZSB0ZXN0IGNhc2UKKyAgICAgICAgaXMgY292ZXJlZCBub3cuCisKKyAgICAgICAgKiBlZGl0aW5n
L3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHkuaHRtbDoKKwogMjAxMS0wNC0xNSAgQW5k
cmVhcyBLbGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmVt
b3ZlIGEgUXQtc3BlY2lmaWMgZXhwZWN0YXRpb24gdGhhdCdzIG5vIGxvbmdlciBuZWVkZWQuCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHkt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L21vdmUtYnktd29yZC12aXN1YWxseS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDgzOTk2KQorKysg
TGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtODgsOCArODgsMTcgQEAgTW92ZSByaWdodCBieSBv
bmUgd29yZAogVGVzdCAxOCwgTFRSOgogTW92ZSByaWdodCBieSBvbmUgd29yZAogImFiYyBkZWYg
ICAgaGlqIG9wcSJbMCwgNCwgMTVdICAgIEZBSUwgZXhwZWN0ZWQ6IFswLCA0LCAxMSwgMTVdCisi
YWJjIGRlZiAgICBoaWogb3BxIls0LCAxNV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAg
ICBoaWogb3BxIls1LCAxNV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3Bx
Ils2LCAxNV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIls3LCAxNV0g
ICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIls4LCAxNV0gICBGQUlMIGV4
cGVjdGVkIDExCiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKICJhYmMgZGVmICAgIGhpaiBvcHEiWzE4
LCAxNSwgNCwgMF0gICAgRkFJTCBleHBlY3RlZDogWzE4LCAxNSwgMTEsIDQsIDBdCisiYWJjIGRl
ZiAgICBoaWogb3BxIlsxNSwgNF0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWog
b3BxIlsxNCwgNF0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIlsxMywg
NF0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIlsxMiwgNF0gICBGQUlM
IGV4cGVjdGVkIDExCiBUZXN0IDE5LCBMVFI6CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiQUFB
ICJbMCwgM10KQEAgLTEwNywxNCArMTE2LDMwIEBAIE1vdmUgbGVmdCBieSBvbmUgd29yZAogIiBy
c3QgdXZ3Ils4LCA1LCAxXSwgImhpaiBvcHEiWzRdLCAiYWJjIGRlZiAiWzgsIDQsIDBdCiBUZXN0
IDIyLCBSVEw6CiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKLSJhYmMgZGVmICJbMF0sICIgcnN0IHV2
dyJbNF0sICJoaWogb3BxIlszXSwgImFiYyBkZWYgIls3LCAzXSAgICBGQUlMIGV4cGVjdGVkOiBb
ImFiYyBkZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQsICAwLCBdImhpaiBvcHEiWyAzLCBdImFiYyBk
ZWYgIlsgNywgIDNdCi1Nb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCi0iIHJzdCB1dnciWzhdLCAiYWJj
IGRlZiAiWzMsIDddLCAiaGlqIG9wcSJbM10sICIgcnN0IHV2dyJbNF0sICJhYmMgZGVmICJbMF0g
ICAgRkFJTCBleHBlY3RlZDogWyIgcnN0IHV2dyJbIDgsIF0iYWJjIGRlZiAiWyAzLCAgNywgXSJo
aWogb3BxIlsgMywgXSIgcnN0IHV2dyJbIDAsICA0LCBdImFiYyBkZWYgIlsgMF0KKyJhYmMgZGVm
ICJbMF0sICIgcnN0IHV2dyJbNF0sICJoaWogb3BxIlszXSwgImFiYyBkZWYgIls3LCAzXSAgICBG
QUlMIGV4cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQsIF0iaGlqIG9wcSJb
IDcsICAzLCBdImFiYyBkZWYgIlsgNywgIDNdCisiIHJzdCB1dnciWzRdLCAiaGlqIG9wcSJbM10g
ICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KKyIgcnN0IHV2dyJbM10sICJoaWogb3BxIlsz
XSAgIEZBSUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3XQorIiByc3QgdXZ3IlsyXSwgImhpaiBvcHEi
WzNdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCisiIHJzdCB1dnciWzFdLCAiaGlqIG9w
cSJbM10gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KK01vdmUgcmlnaHQgYnkgb25lIHdv
cmQKKyIgcnN0IHV2dyJbOF0sICJhYmMgZGVmICJbMywgN10sICJoaWogb3BxIlszXSwgIiByc3Qg
dXZ3Ils0XSwgImFiYyBkZWYgIlswXSAgICBGQUlMIGV4cGVjdGVkOiBbIiByc3QgdXZ3IlsgOCwg
XSJhYmMgZGVmICJbIDMsICA3LCBdImhpaiBvcHEiWyAzLCAgNywgXSIgcnN0IHV2dyJbIDQsIF0i
YWJjIGRlZiAiWyAwXQorImhpaiBvcHEiWzNdLCAiIHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3Rl
ZCAiaGlqIG9wcSJbIDddCisiaGlqIG9wcSJbNF0sICIgcnN0IHV2dyJbNF0gICBGQUlMIGV4cGVj
dGVkICJoaWogb3BxIlsgN10KKyJoaWogb3BxIls1XSwgIiByc3QgdXZ3Ils0XSAgIEZBSUwgZXhw
ZWN0ZWQgImhpaiBvcHEiWyA3XQorImhpaiBvcHEiWzZdLCAiIHJzdCB1dnciWzRdICAgRkFJTCBl
eHBlY3RlZCAiaGlqIG9wcSJbIDddCiBUZXN0IDIzLCBSVEw6CiBNb3ZlIGxlZnQgYnkgb25lIHdv
cmQKLSJhYmMgZGVmICJbMF0sICIgcnN0IHV2dyJbNF0sICJoaWogb3BxIlszXSwgImFiYyBkZWYg
Ils3LCAzXSAgICBGQUlMIGV4cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQs
ICAwLCBdImhpaiBvcHEiWyAzLCBdImFiYyBkZWYgIlsgNywgIDNdCi1Nb3ZlIHJpZ2h0IGJ5IG9u
ZSB3b3JkCi0iIHJzdCB1dnciWzhdLCAiYWJjIGRlZiAiWzMsIDddLCAiaGlqIG9wcSJbM10sICIg
cnN0IHV2dyJbNF0sICJhYmMgZGVmICJbMF0gICAgRkFJTCBleHBlY3RlZDogWyIgcnN0IHV2dyJb
IDgsIF0iYWJjIGRlZiAiWyAzLCAgNywgXSJoaWogb3BxIlsgMywgXSIgcnN0IHV2dyJbIDAsICA0
LCBdImFiYyBkZWYgIlsgMF0KKyJhYmMgZGVmICJbMF0sICIgcnN0IHV2dyJbNF0sICJoaWogb3Bx
IlszXSwgImFiYyBkZWYgIls3LCAzXSAgICBGQUlMIGV4cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwg
XSIgcnN0IHV2dyJbIDQsIF0iaGlqIG9wcSJbIDcsICAzLCBdImFiYyBkZWYgIlsgNywgIDNdCisi
IHJzdCB1dnciWzRdLCAiaGlqIG9wcSJbM10gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10K
KyIgcnN0IHV2dyJbM10sICJoaWogb3BxIlszXSAgIEZBSUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3
XQorIiByc3QgdXZ3IlsyXSwgImhpaiBvcHEiWzNdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJb
IDddCisiIHJzdCB1dnciWzFdLCAiaGlqIG9wcSJbM10gICBGQUlMIGV4cGVjdGVkICJoaWogb3Bx
IlsgN10KK01vdmUgcmlnaHQgYnkgb25lIHdvcmQKKyIgcnN0IHV2dyJbOF0sICJhYmMgZGVmICJb
MywgN10sICJoaWogb3BxIlszXSwgIiByc3QgdXZ3Ils0XSwgImFiYyBkZWYgIlswXSAgICBGQUlM
IGV4cGVjdGVkOiBbIiByc3QgdXZ3IlsgOCwgXSJhYmMgZGVmICJbIDMsICA3LCBdImhpaiBvcHEi
WyAzLCAgNywgXSIgcnN0IHV2dyJbIDQsIF0iYWJjIGRlZiAiWyAwXQorImhpaiBvcHEiWzNdLCAi
IHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCisiaGlqIG9wcSJbNF0s
ICIgcnN0IHV2dyJbNF0gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KKyJoaWogb3BxIls1
XSwgIiByc3QgdXZ3Ils0XSAgIEZBSUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3XQorImhpaiBvcHEi
WzZdLCAiIHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCiBUZXN0IDI0
LCBMVFI6CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiYWJjIGRlZiAiWzAsIDQsIDhdLCAiaGlq
IG9wcSJbNF0sICIgcnN0IHV2dyJbMSwgNV0KQEAgLTE1MCw2ICsxNzUsMTAgQEAgTW92ZSByaWdo
dCBieSBvbmUgd29yZAogIkFCRCBEU1UgIlswXSwgIkZGWiBMSUciWzNdLCAiQUJEIERTVSAiWzhd
LCAiYWJjIGRlZiJbNF0sICJBQkQgRFNVICJbNywgM10KIE1vdmUgbGVmdCBieSBvbmUgd29yZAog
IkZGWiBMSUciWzddLCAiQUJEIERTVSAiWzMsIDddLCAiYWJjIGRlZiJbNF0sICJBQkQgRFNVICJb
OF0sICJGRlogTElHIlszXSAgICBGQUlMIGV4cGVjdGVkOiBbIkZGWiBMSUciWyA3LCBdIkFCRCBE
U1UgIlsgMywgIDcsIF0iYWJjIGRlZiJbIDQsIF0iQUJEIERTVSAiWyA4LCBdIkZGWiBMSUciWyAz
LCBdIkFCRCBEU1UgIlsgMF0KKyJGRlogTElHIlszLCAzXSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBE
U1UgIlsgMF0KKyJGRlogTElHIls0LCA0XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0K
KyJGRlogTElHIls1LCA1XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0KKyJGRlogTElH
Ils2LCA2XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0KIFRlc3QgMzEsIFJUTDoKIE1v
dmUgbGVmdCBieSBvbmUgd29yZAogIkFCRCBEU1UgIlswLCA0LCA4XSwgImFiYyBkZWYiWzNdLCAi
RkZaIExJRyJbNF0KQEAgLTE1OSwyMiArMTg4LDU3IEBAIFRlc3QgMzIsIExUUjoKIE1vdmUgcmln
aHQgYnkgb25lIHdvcmQKICJBQkQgRFNVICJbMCwgMywgOF0sICJhYmMgZGVmIls0XSwgIkZGWiBM
SUciWzNdCiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKLSJGRlogTElHIls3LCAzXSwgImFiYyBkZWYi
WzRdLCAiQUJEIERTVSAiWzgsIDQsIDBdCisiRkZaIExJRyJbNywgM10sICJhYmMgZGVmIls0XSwg
IkFCRCBEU1UgIls4LCA0LCAwXSAgICBGQUlMIGV4cGVjdGVkOiBbIkZGWiBMSUciWyA3LCAgMywg
XSJhYmMgZGVmIlsgNCwgXSJBQkQgRFNVICJbIDgsICAzLCAgMF0KKyJBQkQgRFNVICJbOCwgNF0g
ICBGQUlMIGV4cGVjdGVkICJBQkQgRFNVICJbIDNdCiBUZXN0IDMzLCBSVEw6CiBNb3ZlIGxlZnQg
Ynkgb25lIHdvcmQKICJBQkQgb3BxIERTVSAiWzAsIDQsIDhdLCAiYWJjIEFBQSBkZWYiWzgsIDQs
IDNdLCAiRkZaIHJzdCBMSUciWzQsIDhdICAgIEZBSUwgZXhwZWN0ZWQ6IFsiQUJEIG9wcSBEU1Ug
IlsgMCwgIDQsICA4LCAgMTIsIF0iYWJjIEFBQSBkZWYiWyA0LCAgMywgXSJGRlogcnN0IExJRyJb
IDQsICA4XQorIkFCRCBvcHEgRFNVICJbOF0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVj
dGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJBQkQgb3BxIERTVSAiWzldLCAiYWJjIEFBQSBkZWYi
WzhdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCisiQUJEIG9wcSBEU1UgIlsx
MF0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0K
KyJBQkQgb3BxIERTVSAiWzExXSwgImFiYyBBQUEgZGVmIls4XSAgIEZBSUwgZXhwZWN0ZWQgIkFC
RCBvcHEgRFNVICJbIDEyXQorIkFCRCBvcHEgRFNVICJbMTJdLCAiYWJjIEFBQSBkZWYiWzhdICAg
RkFJTCBleHBlY3RlZCAiYWJjIEFBQSBkZWYiWyA0XQorImFiYyBBQUEgZGVmIlsxMCwgOF0gICBG
QUlMIGV4cGVjdGVkICJhYmMgQUFBIGRlZiJbIDRdCisiYWJjIEFBQSBkZWYiWzksIDhdICAgRkFJ
TCBleHBlY3RlZCAiYWJjIEFBQSBkZWYiWyA0XQogTW92ZSByaWdodCBieSBvbmUgd29yZAogIkZG
WiByc3QgTElHIlsxMSwgOCwgNF0sICJhYmMgQUFBIGRlZiJbNCwgOF0sICJBQkQgb3BxIERTVSAi
WzgsIDQsIDBdICAgIEZBSUwgZXhwZWN0ZWQ6IFsiRkZaIHJzdCBMSUciWyAxMSwgIDgsICA0LCBd
ImFiYyBBQUEgZGVmIlsgMywgIDQsIF0iQUJEIG9wcSBEU1UgIlsgMTIsICA4LCAgNCwgIDBdCisi
RkZaIHJzdCBMSUciWzRdLCAiYWJjIEFBQSBkZWYiWzRdICAgRkFJTCBleHBlY3RlZCAiYWJjIEFB
QSBkZWYiWyAzXQorImFiYyBBQUEgZGVmIls0LCA4XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEg
RFNVICJbIDEyXQorImFiYyBBQUEgZGVmIls4XSwgIkFCRCBvcHEgRFNVICJbOF0gICBGQUlMIGV4
cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJhYmMgQUFBIGRlZiJbOV0sICJBQkQgb3BxIERT
VSAiWzhdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCisiYWJjIEFBQSBkZWYi
WzEwXSwgIkFCRCBvcHEgRFNVICJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAx
Ml0KIFRlc3QgMzQsIExUUjoKIE1vdmUgcmlnaHQgYnkgb25lIHdvcmQKICJBQkQgb3BxIERTVSAi
WzAsIDRdLCAiYWJjIEFBQSBkZWYiWzgsIDRdLCAiQUJEIG9wcSBEU1UgIlsxMiwgMTFdLCAiRkZa
IHJzdCBMSUciWzQsIDgsIDExXSAgICBGQUlMIGV4cGVjdGVkOiBbIkFCRCBvcHEgRFNVICJbIDAs
ICA0LCAgOCwgXSJhYmMgQUFBIGRlZiJbIDgsICA3LCBdIkFCRCBvcHEgRFNVICJbIDEyLCAgMTEs
IF0iRkZaIHJzdCBMSUciWyA0LCAgOCwgIDExXQorIkFCRCBvcHEgRFNVICJbNF0sICJhYmMgQUFB
IGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4XQorIkFCRCBvcHEgRFNV
ICJbNV0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4
XQorIkFCRCBvcHEgRFNVICJbNl0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJB
QkQgb3BxIERTVSAiWyA4XQorIkFCRCBvcHEgRFNVICJbN10sICJhYmMgQUFBIGRlZiJbOF0gICBG
QUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4XQorImFiYyBBQUEgZGVmIls4LCA0XSAgIEZB
SUwgZXhwZWN0ZWQgImFiYyBBQUEgZGVmIlsgN10KKyJhYmMgQUFBIGRlZiJbOSwgNF0gICBGQUlM
IGV4cGVjdGVkICJhYmMgQUFBIGRlZiJbIDddCisiYWJjIEFBQSBkZWYiWzEwLCA0XSAgIEZBSUwg
ZXhwZWN0ZWQgImFiYyBBQUEgZGVmIlsgN10KKyJhYmMgQUFBIGRlZiJbMTEsIDRdICAgRkFJTCBl
eHBlY3RlZCAiYWJjIEFBQSBkZWYiWyA3XQorImFiYyBBQUEgZGVmIls3LCA0XSAgIEZBSUwgZXhw
ZWN0ZWQgIkFCRCBvcHEgRFNVICJbIDEyXQorImFiYyBBQUEgZGVmIls2LCA0XSAgIEZBSUwgZXhw
ZWN0ZWQgIkFCRCBvcHEgRFNVICJbIDEyXQorImFiYyBBQUEgZGVmIls1LCA0XSAgIEZBSUwgZXhw
ZWN0ZWQgIkFCRCBvcHEgRFNVICJbIDEyXQogTW92ZSBsZWZ0IGJ5IG9uZSB3b3JkCiAiRkZaIHJz
dCBMSUciWzExLCA4LCA0XSwgIkFCRCBvcHEgRFNVICJbMTEsIDEyXSwgImFiYyBBQUEgZGVmIls3
LCA4XSwgIkFCRCBvcHEgRFNVICJbNywgNCwgMF0gICAgRkFJTCBleHBlY3RlZDogWyJGRlogcnN0
IExJRyJbIDExLCAgOCwgIDQsIF0iQUJEIG9wcSBEU1UgIlsgMTEsICAxMiwgXSJhYmMgQUFBIGRl
ZiJbIDcsICA4LCBdIkFCRCBvcHEgRFNVICJbIDgsICA0LCAgMF0KKyJhYmMgQUFBIGRlZiJbOF0s
ICJBQkQgb3BxIERTVSAiWzddICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgOF0KKyJG
RlogcnN0IExJRyJbMV0sICJBQkQgb3BxIERTVSAiWzRdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9w
cSBEU1UgIlsgOF0KKyJGRlogcnN0IExJRyJbMl0sICJBQkQgb3BxIERTVSAiWzRdICAgRkFJTCBl
eHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgOF0KIFRlc3QgMzUsIFJUTDoKIE1vdmUgbGVmdCBieSBv
bmUgd29yZAogIkFCRCBvcHEgRFNVICJbMCwgNCwgOF0sICJhYmMgQUFBIGRlZiJbNCwgOF0sICJG
RlogcnN0IExJRyJbNCwgOF0gICAgRkFJTCBleHBlY3RlZDogWyJBQkQgb3BxIERTVSAiWyAwLCAg
NCwgIDgsICAxMiwgXSJhYmMgQUFBIGRlZiJbIDQsICA4LCBdIkZGWiByc3QgTElHIlsgNCwgIDhd
CisiQUJEIG9wcSBEU1UgIls4XSwgImFiYyBBQUEgZGVmIls0XSAgIEZBSUwgZXhwZWN0ZWQgIkFC
RCBvcHEgRFNVICJbIDEyXQorIkFCRCBvcHEgRFNVICJbOV0sICJhYmMgQUFBIGRlZiJbNF0gICBG
QUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJBQkQgb3BxIERTVSAiWzEwXSwgImFi
YyBBQUEgZGVmIls0XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEgRFNVICJbIDEyXQorIkFCRCBv
cHEgRFNVICJbMTFdLCAiYWJjIEFBQSBkZWYiWzRdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBE
U1UgIlsgMTJdCiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiRkZaIHJzdCBMSUciWzExLCA4LCA0
XSwgImFiYyBBQUEgZGVmIls4LCA0XSwgIkFCRCBvcHEgRFNVICJbMTEsIDgsIDQsIDBdICAgIEZB
SUwgZXhwZWN0ZWQ6IFsiRkZaIHJzdCBMSUciWyAxMSwgIDgsICA0LCBdImFiYyBBQUEgZGVmIlsg
OCwgIDQsIF0iQUJEIG9wcSBEU1UgIlsgMTIsICA4LCAgNCwgIDBdCisiYWJjIEFBQSBkZWYiWzRd
LCAiQUJEIG9wcSBEU1UgIlsxMV0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0K
KyJhYmMgQUFBIGRlZiJbM10sICJBQkQgb3BxIERTVSAiWzExXSAgIEZBSUwgZXhwZWN0ZWQgIkFC
RCBvcHEgRFNVICJbIDEyXQorImFiYyBBQUEgZGVmIlsxXSwgIkFCRCBvcHEgRFNVICJbOF0gICBG
QUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJhYmMgQUFBIGRlZiJbMl0sICJBQkQg
b3BxIERTVSAiWzhdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCiBUZXN0IDM2
LCBMVFI6CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiQUJEIG9wcSBEU1UgIlswLCA0LCA4LCAx
Ml0sICJhYmMgQUFBIGRlZiJbNCwgOF0sICJGRlogcnN0IExJRyJbNCwgOCwgMTFdCkBAIC0xODYs
NyArMjUwLDMgQEAgTW92ZSByaWdodCBieSBvbmUgd29yZAogTW92ZSBsZWZ0IGJ5IG9uZSB3b3Jk
CiAiRkZaIlszXSwgImJiYiBBQUEgIls3LCA0XSwgImFhYSAiWzQsIDBdCiAKLT09PT09PT09IE1v
dmUgQnkgV29yZCBTcGVjaWZpYyBUZXN0ID09PT0KLVRlc3QgMQotTW92ZSBsZWZ0IGJ5IG9uZSB3
b3JkCi0iQkIiWzFdLCAiQUFBICJbMF0KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL21vdmUtYnktd29yZC12aXN1YWxseS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS5odG1sCShyZXZpc2lvbiA4
Mzk5NikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1
YWxseS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC04Niw4ICs4Niw5IEBAIGZ1bmN0aW9uIG5vZGVP
ZldvcmRCcmVhayhub2RlQW5kT2Zmc2V0KQogCiB2YXIgd29yZEJyZWFrczsKIAotZnVuY3Rpb24g
bG9nV29yZEJyZWFrKGluZGV4KQorZnVuY3Rpb24gbG9nV29yZEJyZWFrKGluZGV4LCBmaXJzdCkK
IHsKKyAgICB2YXIgd2l0aE5vZGVEYXRhID0gZmFsc2U7CiAgICAgdmFyIHdvcmRCcmVhayA9IHdv
cmRCcmVha3NbaW5kZXhdOwogICAgIGlmICh3b3JkQnJlYWsuc2VhcmNoKCcsJykgPT0gLTEpCiAg
ICAgICAgIGxvZyh3b3JkQnJlYWspOwpAQCAtOTYsMTYgKzk3LDIxIEBAIGZ1bmN0aW9uIGxvZ1dv
cmRCcmVhayhpbmRleCkKICAgICAgICAgdmFyIG5vZGUgPSBub2RlT2ZXb3JkQnJlYWsobm9kZUFu
ZE9mZnNldCk7CiAKICAgICAgICAgdmFyIGRpZmZlcmVudE5vZGUgPSBmYWxzZTsKLSAgICAgICAg
aWYgKGluZGV4ICE9IDApIHsKKyAgICAgICAgaWYgKGZpcnN0ID09IGZhbHNlKSB7CiAgICAgICAg
ICAgICBkaWZmZXJlbnROb2RlID0gbm9kZU9mV29yZEJyZWFrKG5vZGVBbmRPZmZzZXQpICE9IG5v
ZGVPZldvcmRCcmVhayh3b3JkQnJlYWtzW2luZGV4IC0gMV0uc3BsaXQoJywnKSk7CiAgICAgICAg
IAogICAgICAgICB9CisKICAgICAgICAgaWYgKGRpZmZlcmVudE5vZGUgPT0gdHJ1ZSkKICAgICAg
ICAgICAgIGxvZygiXSIpOwotICAgICAgICBpZiAoaW5kZXggPT0gMCB8fCBkaWZmZXJlbnROb2Rl
ID09IHRydWUpCisKKyAgICAgICAgaWYgKGZpcnN0ID09IHRydWUgfHwgZGlmZmVyZW50Tm9kZSA9
PSB0cnVlKSB7CisgICAgICAgICAgICB3aXRoTm9kZURhdGEgPSAobm9kZSBpbnN0YW5jZW9mIFRl
eHQpOwogICAgICAgICAgICAgbG9nKChub2RlIGluc3RhbmNlb2YgVGV4dCA/ICciJyArIGZvbGQo
bm9kZS5kYXRhKSArICciJyA6ICI8IiArIG5vZGUudGFnTmFtZSArICI+IikgKyAiWyIpOworICAg
ICAgICB9CiAgICAgICAgIGxvZyhub2RlQW5kT2Zmc2V0WzFdKTsKICAgICB9CisgICAgcmV0dXJu
IHdpdGhOb2RlRGF0YTsKIH0KIAogZnVuY3Rpb24gcG9zaXRpb25FcXVhbFRvV29yZEJyZWFrKHBv
c2l0aW9uLCB3b3JkQnJlYWspCkBAIC0xMzIsNyArMTM4LDcgQEAgZnVuY3Rpb24gdmFsaWRhdGVE
YXRhKHBvc2l0aW9ucykKICAgICBpZiAoZXF1YWwgPT0gZmFsc2UpIHsKICAgICAgICAgbG9nKCIg
ICAgRkFJTCBleHBlY3RlZDogWyIpOwogICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHdvcmRC
cmVha3MubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAgIGxvZ1dvcmRCcmVhayhpKTsKKyAgICAg
ICAgICAgIGxvZ1dvcmRCcmVhayhpLCBpID09IDApOwogICAgICAgICAgICAgaWYgKGkgIT0gd29y
ZEJyZWFrcy5sZW5ndGggLSAxKQogICAgICAgICAgICAgICAgIGxvZygiLCAiKTsKICAgICAgICAg
fQpAQCAtMTkxLDYgKzE5Nyw2NiBAQCBmdW5jdGlvbiBtb3ZlQnlXb3JkKHNlbCwgdGVzdCwgc2Vh
cmNoRGlyCiAgICAgbG9nKCJcbiIpOwogfQogCitmdW5jdGlvbiBwb3NpdGlvblBhc3NXb3JkQnJl
YWsocG9zaXRpb24sIHdvcmRCcmVhaywgc2VhcmNoRGlyZWN0aW9uKQoreworICAgIC8vIEhhY2sg
Zm9yIHNwYWNlIGNvbGxhcHNlLgorICAgIC8vIHNlbC5tb2RpZnkoIm1vdmUiLCBkaXIsICJjaGFy
YWN0ZXIiKSBub3QgcmVhY2ggbXVsdGktc3BhY2UuCisgICAgdmFyIG5vZGUgPSBwb3NpdGlvbi5u
b2RlOworICAgIGlmIChub2RlLnBhcmVudE5vZGUuaWQgPT0gIm11bHRpc3BhY2UiKSB7CisgICAg
ICAgIGlmIChzZWFyY2hEaXJlY3Rpb24gPT0gInJpZ2h0IiAmJiBwb3NpdGlvbi5vZmZzZXQgPj0g
d29yZEJyZWFrCisgICAgICAgICAgICB8fCBzZWFyY2hEaXJlY3Rpb24gPT0gImxlZnQiICYmIHBv
c2l0aW9uLm9mZnNldCA8PSB3b3JkQnJlYWspIAorICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworZnVuY3Rpb24gbW92ZUJ5V29yZE9uRXZlcnlD
aGFyKHNlbCwgdGVzdCwgc2VhcmNoRGlyZWN0aW9uLCBkaXIpCit7CisgICAgY29sbGVjdFdvcmRC
cmVha3ModGVzdCwgc2VhcmNoRGlyZWN0aW9uKTsKKyAgICB2YXIgd29yZEJyZWFrSW5kZXggPSAx
OworICAgIHZhciBwcmV2T2Zmc2V0ID0gc2VsLmFuY2hvck9mZnNldDsKKyAgICB2YXIgcHJldk5v
ZGUgPSBzZWwuYW5jaG9yTm9kZTsKKworICAgIHdoaWxlICgxKSB7CisgICAgICAgIHZhciBwb3Np
dGlvbnMgPSBbXTsKKyAgICAgICAgcG9zaXRpb25zLnB1c2goeyBub2RlOiBzZWwuYW5jaG9yTm9k
ZSwgb2Zmc2V0OiBzZWwuYW5jaG9yT2Zmc2V0LCBwb2ludDogY2FyZXRDb29yZGluYXRlcygpIH0p
OworICAgICAgICBzZWwubW9kaWZ5KCJtb3ZlIiwgc2VhcmNoRGlyZWN0aW9uLCAiLXdlYmtpdC12
aXN1YWwtd29yZCIpOworCisgICAgICAgIHZhciBwb3NpdGlvbiA9IHsgbm9kZTogc2VsLmFuY2hv
ck5vZGUsIG9mZnNldDogc2VsLmFuY2hvck9mZnNldCwgcG9pbnQ6IGNhcmV0Q29vcmRpbmF0ZXMo
KSB9OworCisgICAgICAgIGlmICh3b3JkQnJlYWtJbmRleCA+PSB3b3JkQnJlYWtzLmxlbmd0aCkg
eworICAgICAgICAgICAgaWYgKHNlbC5hbmNob3JOb2RlICE9IHByZXZOb2RlIHx8IHNlbC5hbmNo
b3JPZmZzZXQgIT0gcHJldk9mZnNldCkgeworICAgICAgICAgICAgICAgIHBvc2l0aW9ucy5wdXNo
KHBvc2l0aW9uKTsKKyAgICAgICAgICAgICAgICBsb2dQb3NpdGlvbnMocG9zaXRpb25zKTsKKyAg
ICAgICAgICAgICAgICBsb2coIiAgIEZBSUwgZXhwZWN0ZWQgdG8gc3RheSBpbiB0aGUgc2FtZSBw
b3NpdGlvblxuIik7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAoIXBvc2l0aW9u
RXF1YWxUb1dvcmRCcmVhayhwb3NpdGlvbiwgd29yZEJyZWFrc1t3b3JkQnJlYWtJbmRleF0pKSB7
CisgICAgICAgICAgICBwb3NpdGlvbnMucHVzaChwb3NpdGlvbik7CisgICAgICAgICAgICBsb2dQ
b3NpdGlvbnMocG9zaXRpb25zKTsKKyAgICAgICAgICAgIGxvZygiICAgRkFJTCBleHBlY3RlZCAi
KTsKKyAgICAgICAgICAgIHZhciB3aXRoTm9kZURhdGEgPSBsb2dXb3JkQnJlYWsod29yZEJyZWFr
SW5kZXgsIHRydWUpOworICAgICAgICAgICAgaWYgKHdpdGhOb2RlRGF0YSkKKyAgICAgICAgICAg
ICAgICBsb2coIl0iKTsKKyAgICAgICAgICAgIGxvZygiXG4iKTsKKyAgICAgICAgfQorCisgICAg
ICAgIC8vIFJlc3RvcmUgcG9zaXRpb24gYW5kIG1vdmUgYnkgMSBjaGFyYWN0ZXIuCisgICAgICAg
IHNlbC5zZXRQb3NpdGlvbihwcmV2Tm9kZSwgcHJldk9mZnNldCk7CisgICAgICAgIHNlbC5tb2Rp
ZnkoIm1vdmUiLCBzZWFyY2hEaXJlY3Rpb24sICJjaGFyYWN0ZXIiKTsKKyAgICAgICAgaWYgKHBy
ZXZOb2RlID09IHNlbC5hbmNob3JOb2RlICYmIHByZXZPZmZzZXQgPT0gc2VsLmFuY2hvck9mZnNl
dCkKKyAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgIHBvc2l0aW9uID0geyBub2RlOiBzZWwu
YW5jaG9yTm9kZSwgb2Zmc2V0OiBzZWwuYW5jaG9yT2Zmc2V0LCBwb2ludDogY2FyZXRDb29yZGlu
YXRlcygpIH07CisgICAgICAgIGlmICh3b3JkQnJlYWtJbmRleCA8IHdvcmRCcmVha3MubGVuZ3Ro
IAorICAgICAgICAgICAgJiYgKHBvc2l0aW9uRXF1YWxUb1dvcmRCcmVhayhwb3NpdGlvbiwgd29y
ZEJyZWFrc1t3b3JkQnJlYWtJbmRleF0pIAorICAgICAgICAgICAgfHwgcG9zaXRpb25QYXNzV29y
ZEJyZWFrKHBvc2l0aW9uLCB3b3JkQnJlYWtzW3dvcmRCcmVha0luZGV4XSwgc2VhcmNoRGlyZWN0
aW9uKSkpCisgICAgICAgICAgICArK3dvcmRCcmVha0luZGV4OworCisgICAgICAgIHByZXZOb2Rl
ID0gc2VsLmFuY2hvck5vZGU7CisgICAgICAgIHByZXZPZmZzZXQgPSBzZWwuYW5jaG9yT2Zmc2V0
OworICAgIH07Cit9CisKIGZ1bmN0aW9uIG1vdmVCeVdvcmRGb3JFdmVyeVBvc2l0aW9uKHNlbCwg
dGVzdCwgZGlyKQogewogICAgIC8vIENoZWNrIGN0cmwtcmlnaHQtYXJyb3cgd29ya3MgZm9yIGV2
ZXJ5IHBvc2l0aW9uLgpAQCAtMTk5LDYgKzI2NSw4IEBAIGZ1bmN0aW9uIG1vdmVCeVdvcmRGb3JF
dmVyeVBvc2l0aW9uKHNlbCwKICAgICBpZiAoZGlyID09ICJydGwiKQogICAgICAgICBkaXJlY3Rp
b24gPSAibGVmdCI7ICAgIAogICAgIG1vdmVCeVdvcmQoc2VsLCB0ZXN0LCBkaXJlY3Rpb24sIGRp
cik7ICAgIAorICAgIHNlbC5zZXRQb3NpdGlvbih0ZXN0LCAwKTsKKyAgICBtb3ZlQnlXb3JkT25F
dmVyeUNoYXIoc2VsLCB0ZXN0LCBkaXJlY3Rpb24sIGRpcik7CiAKICAgICBzZWwubW9kaWZ5KCJt
b3ZlIiwgImZvcndhcmQiLCAibGluZUJvdW5kYXJ5Iik7CiAgICAgLy8gQ2hlY2sgY3RybC1sZWZ0
LWFycm93IHdvcmtzIGZvciBldmVyeSBwb3NpdGlvbi4KQEAgLTIwNyw2ICsyNzUsOCBAQCBmdW5j
dGlvbiBtb3ZlQnlXb3JkRm9yRXZlcnlQb3NpdGlvbihzZWwsCiAgICAgZWxzZQogICAgICAgICBk
aXJlY3Rpb24gPSAicmlnaHQiOyAgICAKICAgICBtb3ZlQnlXb3JkKHNlbCwgdGVzdCwgZGlyZWN0
aW9uLCBkaXIpOyAgICAKKyAgICBzZWwubW9kaWZ5KCJtb3ZlIiwgImZvcndhcmQiLCAibGluZUJv
dW5kYXJ5Iik7CisgICAgbW92ZUJ5V29yZE9uRXZlcnlDaGFyKHNlbCwgdGVzdCwgZGlyZWN0aW9u
LCBkaXIpOwogfQogCiBmdW5jdGlvbiBydW5Nb3ZlTGVmdFJpZ2h0KHRlc3RzLCB1bml0KQpAQCAt
MjI0LDM5ICsyOTQsOCBAQCBmdW5jdGlvbiBydW5Nb3ZlTGVmdFJpZ2h0KHRlc3RzLCB1bml0KQog
ICAgICAgICAgICAgbG9nKCJUZXN0ICIgKyAoaSArIDEpICsgIiwgUlRMOlxuIik7CiAgICAgICAg
ICAgICBtb3ZlQnlXb3JkRm9yRXZlcnlQb3NpdGlvbihzZWwsIHRlc3RzW2ldLCAicnRsIik7CiAg
ICAgICAgIH0KLQogICAgIH0KLX0KIAotZnVuY3Rpb24gcnVuU3BlY2lmaWNUZXN0KHRlc3RzKQot
ewotICAgIHZhciBzZWwgPSBnZXRTZWxlY3Rpb24oKTsKLSAgICBsb2coIlxuPT09PT09PT0gTW92
ZSBCeSBXb3JkIFNwZWNpZmljIFRlc3QgPT09PVxuIik7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkg
PCB0ZXN0cy5sZW5ndGg7ICsraSkgewotICAgICAgICBsb2coIlRlc3QgIiArIChpICsgMSkgKyAi
XG4iKTsKLSAgICAgICAgdmFyIGNvbXBvbmVudHMgPSB0ZXN0c1tpXS50aXRsZS5zcGxpdCgiICIp
OwotICAgICAgICB2YXIgc3RhcnRPZmZzZXQgPSBjb21wb25lbnRzWzBdOwotICAgICAgICB2YXIg
bW92aW5nRGlyZWN0aW9uID0gY29tcG9uZW50c1sxXTsKLSAgICAgICAgdmFyIGVuZGluZ05vZGUg
PSBjb21wb25lbnRzWzJdOwotICAgICAgICB2YXIgZW5kaW5nT2Zmc2V0ID0gY29tcG9uZW50c1sz
XTsKLSAKLSAgICAgICAgbG9nKCJNb3ZlICIgKyBtb3ZpbmdEaXJlY3Rpb24gKyAiIGJ5IG9uZSB3
b3JkXG4iKTsKLQotICAgICAgICB2YXIgcG9zaXRpb25zID0gW107Ci0gICAgICAgIHNlbC5zZXRQ
b3NpdGlvbih0ZXN0c1tpXS5maXJzdENoaWxkLCBzdGFydE9mZnNldCk7Ci0gICAgICAgIHBvc2l0
aW9ucy5wdXNoKHsgbm9kZTogc2VsLmFuY2hvck5vZGUsIG9mZnNldDogc2VsLmFuY2hvck9mZnNl
dCwgcG9pbnQ6IGNhcmV0Q29vcmRpbmF0ZXMoKSB9KTsKLQotICAgICAgICBzZWwubW9kaWZ5KCJt
b3ZlIiwgbW92aW5nRGlyZWN0aW9uLCAiLXdlYmtpdC12aXN1YWwtd29yZCIpOwotICAgICAgICBw
b3NpdGlvbnMucHVzaCh7IG5vZGU6IHNlbC5hbmNob3JOb2RlLCBvZmZzZXQ6IHNlbC5hbmNob3JP
ZmZzZXQsIHBvaW50OiBjYXJldENvb3JkaW5hdGVzKCkgfSk7Ci0KLSAgICAgICAgbG9nUG9zaXRp
b25zKHBvc2l0aW9ucyk7Ci0KLSAgICAgICAgaWYgKHNlbC5hbmNob3JOb2RlLnBhcmVudE5vZGUg
IT0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZW5kaW5nTm9kZSkgfHwgc2VsLmFuY2hvck9mZnNl
dCAhPSBlbmRpbmdPZmZzZXQpIHsKLSAgICAgICAgICAgIGxvZygiICAgIEZBSUw6IGV4cGVjdGVk
ICIpOwotICAgICAgICAgICAgdmFyIGVuZGluZ0NoaWxkTm9kZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKGVuZGluZ05vZGUpLmZpcnN0Q2hpbGQ7Ci0gICAgICAgICAgICBsb2coKGVuZGluZ0No
aWxkTm9kZSBpbnN0YW5jZW9mIFRleHQgPyAnIicgKyBmb2xkKGVuZGluZ0NoaWxkTm9kZS5kYXRh
KSArICciJyA6ICI8IiArIGVuZGluZ0NoaWxkTm9kZS50YWdOYW1lICsgIj4iKSArICJbIiArIGVu
ZGluZ09mZnNldCArICJdIik7Ci0gICAgICAgIH0KLSAgICB9CiAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RNb3ZlQnlXb3JkIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKIH0KIApA
QCAtMjY0LDkgKzMwMyw2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgbG9nKCJcbj09PT09
PT09IE1vdmUgQnkgV29yZCA9PT09XG4iKTsKICAgICB2YXIgdGVzdHMgPSBkb2N1bWVudC5nZXRF
bGVtZW50c0J5Q2xhc3NOYW1lKCJ0ZXN0X21vdmVfYnlfd29yZCIpOwogICAgIHJ1bk1vdmVMZWZ0
UmlnaHQodGVzdHMsICJ3b3JkIik7Ci0gICAgCi0gICAgdGVzdHMgPSBkb2N1bWVudC5nZXRFbGVt
ZW50c0J5Q2xhc3NOYW1lKCJzcGVjaWZpY190ZXN0Iik7Ci0gICAgcnVuU3BlY2lmaWNUZXN0KHRl
c3RzKTsKIH0KIAogb25sb2FkID0gZnVuY3Rpb24oKSB7CkBAIC0zMjgsNyArMzY0LDcgQEAgd2hl
cmUgY2hpbGRfbm9kZV9pbmRleCBpcyBvcHRpb25hbCwgZGVmYQogPCEtLSBtdWx0aXBsZSBzcGFj
ZXMgYmV0d2VlbiB3b3JkLiAKICAgICAgRkFJTEVEOiB3b3JkIGJyZWFrIGJldHdlZW4gImRlZiIg
YW5kICJoaWoiIGlzIHVucmVhY2hhYmxlLgogLS0+Ci08ZGl2IGRpcj1sdHIgY2xhc3M9InRlc3Rf
bW92ZV9ieV93b3JkIiB0aXRsZT0iMCA0IDExIDE1fDE4IDE1IDExIDQgMCIgY29udGVudGVkaXRh
YmxlPmFiYyBkZWYgICAgaGlqIG9wcTwvZGl2PgorPGRpdiBpZD0ibXVsdGlzcGFjZSIgZGlyPWx0
ciBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSIwIDQgMTEgMTV8MTggMTUgMTEgNCAw
IiBjb250ZW50ZWRpdGFibGU+YWJjIGRlZiAgICBoaWogb3BxPC9kaXY+CiAKIDwhLS0gSW5saW5l
IGVsZW1lbnQgLS0+CiA8ZGl2IGRpcj1sdHIgaWQ9ImRpdl8xIiBjbGFzcz0idGVzdF9tb3ZlX2J5
X3dvcmQiIHRpdGxlPSJbZGl2XzEsIDBdW2Rpdl8xLCAzXXxbc3Bhbl8xLCAyXVtkaXZfMSwgM11b
ZGl2XzEsMF0iIGNvbnRlbnRlZGl0YWJsZT7XkNeQ15AgPHNwYW4gaWQ9InNwYW5fMSI+15HXkTwv
c3Bhbj48L2Rpdj4KQEAgLTMzOCwxMCArMzc0LDEwIEBAIHdoZXJlIGNoaWxkX25vZGVfaW5kZXgg
aXMgb3B0aW9uYWwsIGRlZmEKIDxkaXYgZGlyPWx0ciBpZD0iZGl2XzMiIGNsYXNzPSJ0ZXN0X21v
dmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMywgMF1bZGl2XzMsIDRdW2Rpdl8zLCA4XVtzcGFuXzMs
IDRdW2Rpdl8zLCAxLCAzXVtkaXZfMywgNSwgM118W2Rpdl8zLCA4LCAzXVtkaXZfMywgNSwgM11b
ZGl2XzMsIDEsIDNdW3NwYW5fMywgNF1bZGl2XzMsIDhdW2Rpdl8zLCA0XVtkaXZfMywgMF0iIGNv
bnRlbnRlZGl0YWJsZT5hYmMgZGVmIDxzcGFuIGlkPSJzcGFuXzMiPmhpaiBvcHE8L3NwYW4+IHJz
dCB1dnc8L2Rpdj4KIAogPCEtLSBGQUlMRUQgLS0+Ci08ZGl2IGRpcj1ydGwgaWQ9ImRpdl80IiBj
bGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzQsIDgsIDNdW2Rpdl80LCAzLCAx
XVtkaXZfNCwgNywgMV1bc3Bhbl80LCAzLCAxXVtkaXZfNCwgMCwgM11bZGl2XzQsIDQsIDNdW2Rp
dl80LCAwLCAxXXxbZGl2XzQsIDAsIDFdW2Rpdl80LCA0LCAzXVtkaXZfNCwgMCwgM11bc3Bhbl80
LCAzLCAxXVtkaXZfNCwgNywgMV1bZGl2XzQsIDMsIDFdIiBjb250ZW50ZWRpdGFibGU+YWJjIGRl
ZiA8c3BhbiBpZD0ic3Bhbl80Ij5oaWogb3BxPC9zcGFuPiByc3QgdXZ3PC9kaXY+Cis8ZGl2IGRp
cj1ydGwgaWQ9ImRpdl80IiBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzQs
IDgsIDNdW2Rpdl80LCAzLCAxXVtkaXZfNCwgNywgMV1bc3Bhbl80LCAzLCAxXVtzcGFuXzQsIDcs
IDFdW2Rpdl80LCA0LCAzXVtkaXZfNCwgMCwgMV18W2Rpdl80LCAwLCAxXVtkaXZfNCwgNCwgM11b
c3Bhbl80LCA3LCAxXVtzcGFuXzQsIDMsIDFdW2Rpdl80LCA3LCAxXVtkaXZfNCwgMywgMV0iIGNv
bnRlbnRlZGl0YWJsZT5hYmMgZGVmIDxzcGFuIGlkPSJzcGFuXzQiPmhpaiBvcHE8L3NwYW4+IHJz
dCB1dnc8L2Rpdj4KIAotPCEtLSBGQUlMRUQgLS0+Ci08ZGl2IGlkPSJkaXZfNSIgZGlyPXJ0bCBj
bGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzUsIDgsIDNdW2Rpdl81LCAzLCAx
XVtkaXZfNSwgNywgMV1bc3Bhbl81LCAzLCAxXVtkaXZfNSwgMCwgM11bZGl2XzUsIDQsIDNdW2Rp
dl81LCAwLCAxXXxbZGl2XzUsIDAsIDFdW2Rpdl81LCA0LCAzXVtkaXZfNSwgMCwgM11bc3Bhbl81
LCAzLCAxXVtkaXZfNSwgNywgMV1bZGl2XzUsIDMsIDFdImNvbnRlbnRlZGl0YWJsZT5hYmMgZGVm
IDxzcGFuIGRpcj1sdHIgaWQ9InNwYW5fNSI+aGlqIG9wcTwvc3Bhbj4gcnN0IHV2dzwvZGl2Pgor
PCEtLSBGQUlMRUQuIFRoZSByZW5kZXIgcmVzdWx0IGlzIHRoZSBzYW1lIGFzIGRpdl80LiAtLT4K
KzxkaXYgaWQ9ImRpdl81IiBkaXI9cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9
IltkaXZfNSwgOCwgM11bZGl2XzUsIDMsIDFdW2Rpdl81LCA3LCAxXVtzcGFuXzUsIDMsIDFdW3Nw
YW5fNSwgNywgMV1bZGl2XzUsIDQsIDNdW2Rpdl81LCAwLCAxXXxbZGl2XzUsIDAsIDFdW2Rpdl81
LCA0LCAzXVtzcGFuXzUsIDcsIDFdW3NwYW5fNSwgMywgMV1bZGl2XzUsIDcsIDFdW2Rpdl81LCAz
LCAxXSJjb250ZW50ZWRpdGFibGU+YWJjIGRlZiA8c3BhbiBkaXI9bHRyIGlkPSJzcGFuXzUiPmhp
aiBvcHE8L3NwYW4+IHJzdCB1dnc8L2Rpdj4KIAogPGRpdiBpZD0iZGl2XzYiIGRpcj1sdHIgY2xh
c3M9InRlc3RfbW92ZV9ieV93b3JkIiB0aXRsZT0iW2Rpdl82LCAwLCAxXVtkaXZfNiwgNCwgMV1b
ZGl2XzYsIDgsIDFdW3NwYW5fNiwgNCwgMV1bZGl2XzYsIDEsIDNdW2Rpdl82LCA1LCAzXXxbZGl2
XzYsIDgsIDNdW2Rpdl82LCA1LCAzXVtkaXZfNiwgMSwgM11bc3Bhbl82LCA0LCAxXVtkaXZfNiwg
OCwgMV1bZGl2XzYsIDQsIDFdW2Rpdl82LCAwLCAxXSIgY29udGVudGVkaXRhYmxlPmFiYyBkZWYg
PHNwYW4gZGlyPXJ0bCBpZD0ic3Bhbl82Ij5oaWogb3BxPC9zcGFuPiByc3QgdXZ3PC9kaXY+CiAK
QEAgLTM2MywxMSArMzk5LDEwIEBAIHdoZXJlIGNoaWxkX25vZGVfaW5kZXggaXMgb3B0aW9uYWws
IGRlZmEKIAogPGRpdiBpZD0iZGl2XzEzIiBkaXI9cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29y
ZCIgdGl0bGU9IltkaXZfMTMsIDcsIDNdW2Rpdl8xMywgNCwgM11bc3Bhbl8xMywgMywgMV1bZGl2
XzEzLCA4LCAxXVtkaXZfMTMsIDQsIDFdW2Rpdl8xMywgMCwgMV18W2Rpdl8xMywgMCwgMV1bZGl2
XzEzLCA0LCAxXVtkaXZfMTMsIDgsIDFdW3NwYW5fMTMsIDMsIDFdW2Rpdl8xMywgNCwgM10iIGNv
bnRlbnRlZGl0YWJsZT7XkNeR15Mg15PXotekIDxzcGFuIGlkPSJzcGFuXzEzIj5hYmMgZGVmPC9z
cGFuPteV15XXqSDXm9eY15Y8L2Rpdj4KIAotPGRpdiBpZD0iZGl2XzE0IiBkaXI9bHRyIGNsYXNz
PSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMTQsIDAsIDFdW2Rpdl8xNCwgMywgMV1b
ZGl2XzE0LCA4LCAxXVtzcGFuXzE0LCA0LCAxXVtkaXZfMTQsIDMsIDNdfFtkaXZfMTQsIDcsIDNd
W2Rpdl8xNCwgMywgM11bc3Bhbl8xNCwgNCwgMV1bZGl2XzE0LCA4LCAxXVtkaXZfMTQsIDQsIDFd
W2Rpdl8xNCwgMCwgMV0iIGNvbnRlbnRlZGl0YWJsZT7XkNeR15Mg15PXotekIDxzcGFuIGlkPSJz
cGFuXzE0Ij5hYmMgZGVmPC9zcGFuPteV15XXqSDXm9eY15Y8L2Rpdj4KKzxkaXYgaWQ9ImRpdl8x
NCIgZGlyPWx0ciBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzE0LCAwLCAx
XVtkaXZfMTQsIDMsIDFdW2Rpdl8xNCwgOCwgMV1bc3Bhbl8xNCwgNCwgMV1bZGl2XzE0LCAzLCAz
XXxbZGl2XzE0LCA3LCAzXVtkaXZfMTQsIDMsIDNdW3NwYW5fMTQsIDQsIDFdW2Rpdl8xNCwgOCwg
MV1bZGl2XzE0LCAzLCAxXVtkaXZfMTQsIDAsIDFdIiBjb250ZW50ZWRpdGFibGU+15DXkdeTINeT
16LXpCA8c3BhbiBpZD0ic3Bhbl8xNCI+YWJjIGRlZjwvc3Bhbj7XldeV16kg15vXmNeWPC9kaXY+
CiAKIDwhLS0gRkFJTEVEIC0tPgotPGRpdiBpZD0iZGl2XzE1IiBkaXI9cnRsIGNsYXNzPSJ0ZXN0
X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMTUsIDExLCAzXVtkaXZfMTUsIDgsIDNdW2Rpdl8x
NSwgNCwgM11bc3Bhbl8xNSwgMywgMV1bc3Bhbl8xNSwgNCwgMV1bZGl2XzE1LCAxMiwgMV1bZGl2
XzE1LCA4LCAxXVtkaXZfMTUsIDQsIDFdW2Rpdl8xNSwgMCwgMV18W2Rpdl8xNSwgMCwgMV1bZGl2
XzE1LCA0LCAxXVtkaXZfMTUsIDgsIDFdW2Rpdl8xNSwgMTIsIDFdW3NwYW5fMTUsIDQsIDFdW3Nw
YW5fMTUsIDMsIDFdW2Rpdl8xNSwgNCwgM11bZGl2XzE1LCA4LCAzXSIKLWNvbnRlbnRlZGl0YWJs
ZT7XkNeR15Mgb3BxINeT16LXpCA8c3BhbiBkaXI9bHRyIGlkPSJzcGFuXzE1Ij5hYmMg15DXkNeQ
IGRlZjwvc3Bhbj7XldeV16kgcnN0INeb15jXljwvZGl2PgorPGRpdiBpZD0iZGl2XzE1IiBkaXI9
cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMTUsIDExLCAzXVtkaXZf
MTUsIDgsIDNdW2Rpdl8xNSwgNCwgM11bc3Bhbl8xNSwgMywgMV1bc3Bhbl8xNSwgNCwgMV1bZGl2
XzE1LCAxMiwgMV1bZGl2XzE1LCA4LCAxXVtkaXZfMTUsIDQsIDFdW2Rpdl8xNSwgMCwgMV18W2Rp
dl8xNSwgMCwgMV1bZGl2XzE1LCA0LCAxXVtkaXZfMTUsIDgsIDFdW2Rpdl8xNSwgMTIsIDFdW3Nw
YW5fMTUsIDQsIDFdW3NwYW5fMTUsIDMsIDFdW2Rpdl8xNSwgNCwgM11bZGl2XzE1LCA4LCAzXSIg
Y29udGVudGVkaXRhYmxlPteQ15HXkyBvcHEg15PXotekIDxzcGFuIGRpcj1sdHIgaWQ9InNwYW5f
MTUiPmFiYyDXkNeQ15AgZGVmPC9zcGFuPteV15XXqSByc3Qg15vXmNeWPC9kaXY+CiAKIDwhLS0g
RkFJTEVELCBhbmQgd3JvbmcgcHJpbnRpbmcgcmVzdWx0IC0tPgogPGRpdiBpZD0iZGl2XzE2IiBk
aXI9bHRyIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMTYsIDAsIDFdW2Rp
dl8xNiwgNCwgMV1bZGl2XzE2LCA4LCAxXVtzcGFuXzE2LCA4LCAxXVtzcGFuXzE2LCA3LCAxXVtk
aXZfMTYsIDEyLCAxXVtkaXZfMTYsIDExLCAxXVtkaXZfMTYsIDQsIDNdW2Rpdl8xNiwgOCwgM11b
ZGl2XzE2LCAxMSwgM118W2Rpdl8xNiwgMTEsIDNdW2Rpdl8xNiwgOCwgM11bZGl2XzE2LCA0LCAz
XVtkaXZfMTYsIDExLCAxXVtkaXZfMTYsIDEyLCAxXVtzcGFuXzE2LCA3LCAxXVtzcGFuXzE2LCA4
LCAxXVtkaXZfMTYsIDgsIDFdW2Rpdl8xNiwgNCwgMV1bZGl2XzE2LCAwLCAxXSIgY29udGVudGVk
aXRhYmxlPteQ15HXkyBvcHEg15PXotekIDxzcGFuIGRpcj1ydGwgaWQ9InNwYW5fMTYiPmFiYyDX
kNeQ15AgZGVmPC9zcGFuPteV15XXqSByc3Qg15vXmNeWPC9kaXY+CkBAIC0zNzksOCArNDE0LDYg
QEAgY29udGVudGVkaXRhYmxlPteQ15HXkyBvcHEg15PXotekIDxzcGFuIAogCiA8ZGl2IGlkPSJk
aXZfMTkiIGRpcj1sdHIgY2xhc3M9InRlc3RfbW92ZV9ieV93b3JkIiB0aXRsZT0iW2Rpdl8xOSwg
MCwgMV1bZGl2XzE5LCA0LCAxXVtzcGFuXzE5LCA0LCAxXVtzcGFuXzE5LCA3LCAxXXxbZGl2XzE5
LCAzLCAzXVtzcGFuXzE5LCA3LCAxXVtzcGFuXzE5LCA0LCAxXVtkaXZfMTksIDQsIDFdW2Rpdl8x
OSwgMCwgMV0iIGNvbnRlbnRlZGl0YWJsZT5hYWEgPHNwYW4gaWQ9InNwYW5fMTkiPmJiYiDXkNeQ
15AgPC9zcGFuPteV15XXqTwvZGl2PgogCi08IS0tIFRoZSBjb250ZW50IGluIHRpdGxlIG1lYW5z
ICJzdGFydE9mZnNldEluQ3VycmVudE5vZGUgbW92aW5nRGlyZWN0aW9uQnlXb3JkIGVuZGluZ05v
ZGUgZW5kaW5nT2Zmc2V0SW5FbmRpbmdOb2RlIiAtLT4KLTxkaXYgaWQ9ImRpdl8xMDAiIGNvbnRl
bnRlZGl0YWJsZT7XkNeQ15AgPHNwYW4gaWQ9InNwYW5fMTAwIiBjbGFzcz0ic3BlY2lmaWNfdGVz
dCIgdGl0bGU9IjEgbGVmdCBkaXZfMTAwIDAiPteR15E8L3NwYW4+PC9kaXY+CiA8L2Rpdj4KIAog
PHByZSBpZD0iY29uc29sZSI+PC9wcmU+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90437</attachid>
            <date>2011-04-20 16:20:28 -0700</date>
            <delta_ts>2011-04-22 14:31:41 -0700</delta_ts>
            <desc>patch w/ layout test</desc>
            <filename>58504.v2</filename>
            <type>text/plain</type>
            <size>24166</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0NDMxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDQtMjAgIFhpYW9tZWkg
SmkgIDx4amlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIG1vdmUgY2FyZXQgYnkgd29yZCBpbiB2aXN1YWwgb3JkZXIgcmV0dXJu
cyB3cm9uZyByZXN1bHQgd2hlbiBjYXJldCBpdHNlbGYgaXMgYXQgd29yZCBib3VuZGFyeS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4NTA0LgorCisg
ICAgICAgIHBvc2l0aW9uQmVmb3JlTmV4dFdvcmQgc2hvdWxkIHRha2UgY2FyZSB0aGF0IHRoZSBj
dXJyZW50IHBvc2l0aW9uIGlzIGFmdGVyIGN1cnJlbnQgd29yZC4KKyAgICAgICAgcG9zaXRpb25B
ZnRlclByZXZpb3VzV29yZCBzaG91bGQgdGFrZSBjYXJlIHRoYXQgdGhlIGN1cnJlbnQgcG9zaXRp
biBpcyBiZWZvcmUgY3VycmVudCB3b3JkLgorCisgICAgICAgICogZWRpdGluZy92aXNpYmxlX3Vu
aXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBvc2l0aW9uQmVmb3JlTmV4dFdvcmQpOgorICAg
ICAgICAoV2ViQ29yZTo6cG9zaXRpb25BZnRlclByZXZpb3VzV29yZCk6CisKIDIwMTEtMDQtMjAg
IFN0ZXZlIExhY2V5ICA8c2psQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBF
cmljIENhcmxzb24uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0cy5j
cHAJKHJldmlzaW9uIDg0NDI3KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy92aXNpYmxlX3Vu
aXRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ3Miw3ICsxNDcyLDExIEBAIHN0YXRpYyBib29s
IHBvc2l0aW9uSXNJbnNpZGVCb3goY29uc3QgVmkKIAogc3RhdGljIFZpc2libGVQb3NpdGlvbiBw
b3NpdGlvbkJlZm9yZU5leHRXb3JkKGNvbnN0IFZpc2libGVQb3NpdGlvbiYgcG9zaXRpb24pCiB7
Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uQWZ0ZXJDdXJyZW50V29yZCA9IG5leHRXb3Jk
UG9zaXRpb24ocG9zaXRpb24pOworICAgIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbkFmdGVyQ3Vy
cmVudFdvcmQ7CisgICAgaWYgKG5leHRXb3JkUG9zaXRpb24ocHJldmlvdXNXb3JkUG9zaXRpb24o
cG9zaXRpb24pKSA9PSBwb3NpdGlvbikKKyAgICAgICAgcG9zaXRpb25BZnRlckN1cnJlbnRXb3Jk
ID0gcG9zaXRpb247CisgICAgZWxzZQorICAgICAgICBwb3NpdGlvbkFmdGVyQ3VycmVudFdvcmQg
PSBuZXh0V29yZFBvc2l0aW9uKHBvc2l0aW9uKTsKICAgICBWaXNpYmxlUG9zaXRpb24gcG9zaXRp
b25BZnRlck5leHRXb3JkID0gbmV4dFdvcmRQb3NpdGlvbihwb3NpdGlvbkFmdGVyQ3VycmVudFdv
cmQpOwogICAgIGlmIChwb3NpdGlvbkFmdGVyQ3VycmVudFdvcmQgPT0gcG9zaXRpb25BZnRlck5l
eHRXb3JkKQogICAgICAgICByZXR1cm4gcG9zaXRpb25BZnRlckN1cnJlbnRXb3JkOwpAQCAtMTQ4
MSw3ICsxNDg1LDExIEBAIHN0YXRpYyBWaXNpYmxlUG9zaXRpb24gcG9zaXRpb25CZWZvcmVOZXgK
IAogc3RhdGljIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbkFmdGVyUHJldmlvdXNXb3JkKGNvbnN0
IFZpc2libGVQb3NpdGlvbiYgcG9zaXRpb24pCiB7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0
aW9uQmVmb3JlQ3VycmVudFdvcmQgPSBwcmV2aW91c1dvcmRQb3NpdGlvbihwb3NpdGlvbik7Cisg
ICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uQmVmb3JlQ3VycmVudFdvcmQ7CisgICAgaWYgKHBy
ZXZpb3VzV29yZFBvc2l0aW9uKG5leHRXb3JkUG9zaXRpb24ocG9zaXRpb24pKSA9PSBwb3NpdGlv
bikKKyAgICAgICAgcG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9IHBvc2l0aW9uOworICAgIGVs
c2UKKyAgICAgICAgcG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9IHByZXZpb3VzV29yZFBvc2l0
aW9uKHBvc2l0aW9uKTsKICAgICBWaXNpYmxlUG9zaXRpb24gcG9zaXRpb25CZWZvcmVQcmV2aW91
c1dvcmQgPSBwcmV2aW91c1dvcmRQb3NpdGlvbihwb3NpdGlvbkJlZm9yZUN1cnJlbnRXb3JkKTsK
ICAgICBpZiAocG9zaXRpb25CZWZvcmVDdXJyZW50V29yZCA9PSBwb3NpdGlvbkJlZm9yZVByZXZp
b3VzV29yZCkKICAgICAgICAgcmV0dXJuIHBvc2l0aW9uQmVmb3JlQ3VycmVudFdvcmQ7CkluZGV4
OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCShyZXZpc2lvbiA4NDQzMSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDExLTA0LTIwICBYaWFvbWVpIEppICA8eGppQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBtb3ZlIGNhcmV0IGJ5IHdvcmQgaW4gdmlzdWFsIG9yZGVyIHJldHVybnMgd3JvbmcgcmVzdWx0
IHdoZW4gY2FyZXQgaXRzZWxmIGlzIGF0IHdvcmQgYm91bmRhcnkuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUwNC4KKworICAgICAgICBBZGQgdGVz
dCBjYXNlIHRvIHRlc3QgbW92aW5nIGxlZnQvcmlnaHQgYnkgd29yZCB2aXN1YWxseSBvbiBldmVy
eSBjaGFyYWN0ZXIgcG9zaXRpb24uCisgICAgICAgIFJlbW92ZSBhIHNwZWNpZmljIHRlc3QgYWRk
ZWQgYmVmb3JlIGZvciB0ZXN0aW5nIGEgc3BlY2lmaWMgY29kZSBwYXRoIHNpbmNlIHRoZSB0ZXN0
IGNhc2UKKyAgICAgICAgaXMgY292ZXJlZCBub3cuCisKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVj
dGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRp
bmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS5odG1sOgorCiAyMDExLTA0LTIwICBK
aWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBmaXhl
ZCB0eXBvIGluIHRoZSBmYWlsZWQgdGVzdCBhZGRlZCB0byBjaHJvbWl1bSB0ZXN0CkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LXdvcmQtdmlzdWFsbHktZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUt
Ynktd29yZC12aXN1YWxseS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDg0NDI3KQorKysgTGF5b3V0
VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLXZpc3VhbGx5LWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtODgsOCArODgsMTcgQEAgTW92ZSByaWdodCBieSBvbmUgd29y
ZAogVGVzdCAxOCwgTFRSOgogTW92ZSByaWdodCBieSBvbmUgd29yZAogImFiYyBkZWYgICAgaGlq
IG9wcSJbMCwgNCwgMTVdICAgIEZBSUwgZXhwZWN0ZWQ6IFswLCA0LCAxMSwgMTVdCisiYWJjIGRl
ZiAgICBoaWogb3BxIls0LCAxNV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWog
b3BxIls1LCAxNV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIls2LCAx
NV0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIls3LCAxNV0gICBGQUlM
IGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIls4LCAxNV0gICBGQUlMIGV4cGVjdGVk
IDExCiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKICJhYmMgZGVmICAgIGhpaiBvcHEiWzE4LCAxNSwg
NCwgMF0gICAgRkFJTCBleHBlY3RlZDogWzE4LCAxNSwgMTEsIDQsIDBdCisiYWJjIGRlZiAgICBo
aWogb3BxIlsxNSwgNF0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIlsx
NCwgNF0gICBGQUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIlsxMywgNF0gICBG
QUlMIGV4cGVjdGVkIDExCisiYWJjIGRlZiAgICBoaWogb3BxIlsxMiwgNF0gICBGQUlMIGV4cGVj
dGVkIDExCiBUZXN0IDE5LCBMVFI6CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiQUFBICJbMCwg
M10KQEAgLTEwNywxNCArMTE2LDMwIEBAIE1vdmUgbGVmdCBieSBvbmUgd29yZAogIiByc3QgdXZ3
Ils4LCA1LCAxXSwgImhpaiBvcHEiWzRdLCAiYWJjIGRlZiAiWzgsIDQsIDBdCiBUZXN0IDIyLCBS
VEw6CiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKLSJhYmMgZGVmICJbMF0sICIgcnN0IHV2dyJbNF0s
ICJoaWogb3BxIlszXSwgImFiYyBkZWYgIls3LCAzXSAgICBGQUlMIGV4cGVjdGVkOiBbImFiYyBk
ZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQsICAwLCBdImhpaiBvcHEiWyAzLCBdImFiYyBkZWYgIlsg
NywgIDNdCi1Nb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCi0iIHJzdCB1dnciWzhdLCAiYWJjIGRlZiAi
WzMsIDddLCAiaGlqIG9wcSJbM10sICIgcnN0IHV2dyJbNF0sICJhYmMgZGVmICJbMF0gICAgRkFJ
TCBleHBlY3RlZDogWyIgcnN0IHV2dyJbIDgsIF0iYWJjIGRlZiAiWyAzLCAgNywgXSJoaWogb3Bx
IlsgMywgXSIgcnN0IHV2dyJbIDAsICA0LCBdImFiYyBkZWYgIlsgMF0KKyJhYmMgZGVmICJbMF0s
ICIgcnN0IHV2dyJbNF0sICJoaWogb3BxIlszXSwgImFiYyBkZWYgIls3LCAzXSAgICBGQUlMIGV4
cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQsIF0iaGlqIG9wcSJbIDcsICAz
LCBdImFiYyBkZWYgIlsgNywgIDNdCisiIHJzdCB1dnciWzRdLCAiaGlqIG9wcSJbM10gICBGQUlM
IGV4cGVjdGVkICJoaWogb3BxIlsgN10KKyIgcnN0IHV2dyJbM10sICJoaWogb3BxIlszXSAgIEZB
SUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3XQorIiByc3QgdXZ3IlsyXSwgImhpaiBvcHEiWzNdICAg
RkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCisiIHJzdCB1dnciWzFdLCAiaGlqIG9wcSJbM10g
ICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KK01vdmUgcmlnaHQgYnkgb25lIHdvcmQKKyIg
cnN0IHV2dyJbOF0sICJhYmMgZGVmICJbMywgN10sICJoaWogb3BxIlszXSwgIiByc3QgdXZ3Ils0
XSwgImFiYyBkZWYgIlswXSAgICBGQUlMIGV4cGVjdGVkOiBbIiByc3QgdXZ3IlsgOCwgXSJhYmMg
ZGVmICJbIDMsICA3LCBdImhpaiBvcHEiWyAzLCAgNywgXSIgcnN0IHV2dyJbIDQsIF0iYWJjIGRl
ZiAiWyAwXQorImhpaiBvcHEiWzNdLCAiIHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3RlZCAiaGlq
IG9wcSJbIDddCisiaGlqIG9wcSJbNF0sICIgcnN0IHV2dyJbNF0gICBGQUlMIGV4cGVjdGVkICJo
aWogb3BxIlsgN10KKyJoaWogb3BxIls1XSwgIiByc3QgdXZ3Ils0XSAgIEZBSUwgZXhwZWN0ZWQg
ImhpaiBvcHEiWyA3XQorImhpaiBvcHEiWzZdLCAiIHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3Rl
ZCAiaGlqIG9wcSJbIDddCiBUZXN0IDIzLCBSVEw6CiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKLSJh
YmMgZGVmICJbMF0sICIgcnN0IHV2dyJbNF0sICJoaWogb3BxIlszXSwgImFiYyBkZWYgIls3LCAz
XSAgICBGQUlMIGV4cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwgXSIgcnN0IHV2dyJbIDQsICAwLCBd
ImhpaiBvcHEiWyAzLCBdImFiYyBkZWYgIlsgNywgIDNdCi1Nb3ZlIHJpZ2h0IGJ5IG9uZSB3b3Jk
Ci0iIHJzdCB1dnciWzhdLCAiYWJjIGRlZiAiWzMsIDddLCAiaGlqIG9wcSJbM10sICIgcnN0IHV2
dyJbNF0sICJhYmMgZGVmICJbMF0gICAgRkFJTCBleHBlY3RlZDogWyIgcnN0IHV2dyJbIDgsIF0i
YWJjIGRlZiAiWyAzLCAgNywgXSJoaWogb3BxIlsgMywgXSIgcnN0IHV2dyJbIDAsICA0LCBdImFi
YyBkZWYgIlsgMF0KKyJhYmMgZGVmICJbMF0sICIgcnN0IHV2dyJbNF0sICJoaWogb3BxIlszXSwg
ImFiYyBkZWYgIls3LCAzXSAgICBGQUlMIGV4cGVjdGVkOiBbImFiYyBkZWYgIlsgMCwgXSIgcnN0
IHV2dyJbIDQsIF0iaGlqIG9wcSJbIDcsICAzLCBdImFiYyBkZWYgIlsgNywgIDNdCisiIHJzdCB1
dnciWzRdLCAiaGlqIG9wcSJbM10gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KKyIgcnN0
IHV2dyJbM10sICJoaWogb3BxIlszXSAgIEZBSUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3XQorIiBy
c3QgdXZ3IlsyXSwgImhpaiBvcHEiWzNdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCisi
IHJzdCB1dnciWzFdLCAiaGlqIG9wcSJbM10gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10K
K01vdmUgcmlnaHQgYnkgb25lIHdvcmQKKyIgcnN0IHV2dyJbOF0sICJhYmMgZGVmICJbMywgN10s
ICJoaWogb3BxIlszXSwgIiByc3QgdXZ3Ils0XSwgImFiYyBkZWYgIlswXSAgICBGQUlMIGV4cGVj
dGVkOiBbIiByc3QgdXZ3IlsgOCwgXSJhYmMgZGVmICJbIDMsICA3LCBdImhpaiBvcHEiWyAzLCAg
NywgXSIgcnN0IHV2dyJbIDQsIF0iYWJjIGRlZiAiWyAwXQorImhpaiBvcHEiWzNdLCAiIHJzdCB1
dnciWzRdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCisiaGlqIG9wcSJbNF0sICIgcnN0
IHV2dyJbNF0gICBGQUlMIGV4cGVjdGVkICJoaWogb3BxIlsgN10KKyJoaWogb3BxIls1XSwgIiBy
c3QgdXZ3Ils0XSAgIEZBSUwgZXhwZWN0ZWQgImhpaiBvcHEiWyA3XQorImhpaiBvcHEiWzZdLCAi
IHJzdCB1dnciWzRdICAgRkFJTCBleHBlY3RlZCAiaGlqIG9wcSJbIDddCiBUZXN0IDI0LCBMVFI6
CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiYWJjIGRlZiAiWzAsIDQsIDhdLCAiaGlqIG9wcSJb
NF0sICIgcnN0IHV2dyJbMSwgNV0KQEAgLTE1MCw2ICsxNzUsMTAgQEAgTW92ZSByaWdodCBieSBv
bmUgd29yZAogIkFCRCBEU1UgIlswXSwgIkZGWiBMSUciWzNdLCAiQUJEIERTVSAiWzhdLCAiYWJj
IGRlZiJbNF0sICJBQkQgRFNVICJbNywgM10KIE1vdmUgbGVmdCBieSBvbmUgd29yZAogIkZGWiBM
SUciWzddLCAiQUJEIERTVSAiWzMsIDddLCAiYWJjIGRlZiJbNF0sICJBQkQgRFNVICJbOF0sICJG
RlogTElHIlszXSAgICBGQUlMIGV4cGVjdGVkOiBbIkZGWiBMSUciWyA3LCBdIkFCRCBEU1UgIlsg
MywgIDcsIF0iYWJjIGRlZiJbIDQsIF0iQUJEIERTVSAiWyA4LCBdIkZGWiBMSUciWyAzLCBdIkFC
RCBEU1UgIlsgMF0KKyJGRlogTElHIlszLCAzXSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsg
MF0KKyJGRlogTElHIls0LCA0XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0KKyJGRlog
TElHIls1LCA1XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0KKyJGRlogTElHIls2LCA2
XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBEU1UgIlsgMF0KIFRlc3QgMzEsIFJUTDoKIE1vdmUgbGVm
dCBieSBvbmUgd29yZAogIkFCRCBEU1UgIlswLCA0LCA4XSwgImFiYyBkZWYiWzNdLCAiRkZaIExJ
RyJbNF0KQEAgLTE1OSwyMiArMTg4LDU3IEBAIFRlc3QgMzIsIExUUjoKIE1vdmUgcmlnaHQgYnkg
b25lIHdvcmQKICJBQkQgRFNVICJbMCwgMywgOF0sICJhYmMgZGVmIls0XSwgIkZGWiBMSUciWzNd
CiBNb3ZlIGxlZnQgYnkgb25lIHdvcmQKLSJGRlogTElHIls3LCAzXSwgImFiYyBkZWYiWzRdLCAi
QUJEIERTVSAiWzgsIDQsIDBdCisiRkZaIExJRyJbNywgM10sICJhYmMgZGVmIls0XSwgIkFCRCBE
U1UgIls4LCA0LCAwXSAgICBGQUlMIGV4cGVjdGVkOiBbIkZGWiBMSUciWyA3LCAgMywgXSJhYmMg
ZGVmIlsgNCwgXSJBQkQgRFNVICJbIDgsICAzLCAgMF0KKyJBQkQgRFNVICJbOCwgNF0gICBGQUlM
IGV4cGVjdGVkICJBQkQgRFNVICJbIDNdCiBUZXN0IDMzLCBSVEw6CiBNb3ZlIGxlZnQgYnkgb25l
IHdvcmQKICJBQkQgb3BxIERTVSAiWzAsIDQsIDhdLCAiYWJjIEFBQSBkZWYiWzgsIDQsIDNdLCAi
RkZaIHJzdCBMSUciWzQsIDhdICAgIEZBSUwgZXhwZWN0ZWQ6IFsiQUJEIG9wcSBEU1UgIlsgMCwg
IDQsICA4LCAgMTIsIF0iYWJjIEFBQSBkZWYiWyA0LCAgMywgXSJGRlogcnN0IExJRyJbIDQsICA4
XQorIkFCRCBvcHEgRFNVICJbOF0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJB
QkQgb3BxIERTVSAiWyAxMl0KKyJBQkQgb3BxIERTVSAiWzldLCAiYWJjIEFBQSBkZWYiWzhdICAg
RkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCisiQUJEIG9wcSBEU1UgIlsxMF0sICJh
YmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJBQkQg
b3BxIERTVSAiWzExXSwgImFiYyBBQUEgZGVmIls4XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEg
RFNVICJbIDEyXQorIkFCRCBvcHEgRFNVICJbMTJdLCAiYWJjIEFBQSBkZWYiWzhdICAgRkFJTCBl
eHBlY3RlZCAiYWJjIEFBQSBkZWYiWyA0XQorImFiYyBBQUEgZGVmIlsxMCwgOF0gICBGQUlMIGV4
cGVjdGVkICJhYmMgQUFBIGRlZiJbIDRdCisiYWJjIEFBQSBkZWYiWzksIDhdICAgRkFJTCBleHBl
Y3RlZCAiYWJjIEFBQSBkZWYiWyA0XQogTW92ZSByaWdodCBieSBvbmUgd29yZAogIkZGWiByc3Qg
TElHIlsxMSwgOCwgNF0sICJhYmMgQUFBIGRlZiJbNCwgOF0sICJBQkQgb3BxIERTVSAiWzgsIDQs
IDBdICAgIEZBSUwgZXhwZWN0ZWQ6IFsiRkZaIHJzdCBMSUciWyAxMSwgIDgsICA0LCBdImFiYyBB
QUEgZGVmIlsgMywgIDQsIF0iQUJEIG9wcSBEU1UgIlsgMTIsICA4LCAgNCwgIDBdCisiRkZaIHJz
dCBMSUciWzRdLCAiYWJjIEFBQSBkZWYiWzRdICAgRkFJTCBleHBlY3RlZCAiYWJjIEFBQSBkZWYi
WyAzXQorImFiYyBBQUEgZGVmIls0LCA4XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEgRFNVICJb
IDEyXQorImFiYyBBQUEgZGVmIls4XSwgIkFCRCBvcHEgRFNVICJbOF0gICBGQUlMIGV4cGVjdGVk
ICJBQkQgb3BxIERTVSAiWyAxMl0KKyJhYmMgQUFBIGRlZiJbOV0sICJBQkQgb3BxIERTVSAiWzhd
ICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCisiYWJjIEFBQSBkZWYiWzEwXSwg
IkFCRCBvcHEgRFNVICJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KIFRl
c3QgMzQsIExUUjoKIE1vdmUgcmlnaHQgYnkgb25lIHdvcmQKICJBQkQgb3BxIERTVSAiWzAsIDRd
LCAiYWJjIEFBQSBkZWYiWzgsIDRdLCAiQUJEIG9wcSBEU1UgIlsxMiwgMTFdLCAiRkZaIHJzdCBM
SUciWzQsIDgsIDExXSAgICBGQUlMIGV4cGVjdGVkOiBbIkFCRCBvcHEgRFNVICJbIDAsICA0LCAg
OCwgXSJhYmMgQUFBIGRlZiJbIDgsICA3LCBdIkFCRCBvcHEgRFNVICJbIDEyLCAgMTEsIF0iRkZa
IHJzdCBMSUciWyA0LCAgOCwgIDExXQorIkFCRCBvcHEgRFNVICJbNF0sICJhYmMgQUFBIGRlZiJb
OF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4XQorIkFCRCBvcHEgRFNVICJbNV0s
ICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4XQorIkFC
RCBvcHEgRFNVICJbNl0sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3Bx
IERTVSAiWyA4XQorIkFCRCBvcHEgRFNVICJbN10sICJhYmMgQUFBIGRlZiJbOF0gICBGQUlMIGV4
cGVjdGVkICJBQkQgb3BxIERTVSAiWyA4XQorImFiYyBBQUEgZGVmIls4LCA0XSAgIEZBSUwgZXhw
ZWN0ZWQgImFiYyBBQUEgZGVmIlsgN10KKyJhYmMgQUFBIGRlZiJbOSwgNF0gICBGQUlMIGV4cGVj
dGVkICJhYmMgQUFBIGRlZiJbIDddCisiYWJjIEFBQSBkZWYiWzEwLCA0XSAgIEZBSUwgZXhwZWN0
ZWQgImFiYyBBQUEgZGVmIlsgN10KKyJhYmMgQUFBIGRlZiJbMTEsIDRdICAgRkFJTCBleHBlY3Rl
ZCAiYWJjIEFBQSBkZWYiWyA3XQorImFiYyBBQUEgZGVmIls3LCA0XSAgIEZBSUwgZXhwZWN0ZWQg
IkFCRCBvcHEgRFNVICJbIDEyXQorImFiYyBBQUEgZGVmIls2LCA0XSAgIEZBSUwgZXhwZWN0ZWQg
IkFCRCBvcHEgRFNVICJbIDEyXQorImFiYyBBQUEgZGVmIls1LCA0XSAgIEZBSUwgZXhwZWN0ZWQg
IkFCRCBvcHEgRFNVICJbIDEyXQogTW92ZSBsZWZ0IGJ5IG9uZSB3b3JkCiAiRkZaIHJzdCBMSUci
WzExLCA4LCA0XSwgIkFCRCBvcHEgRFNVICJbMTEsIDEyXSwgImFiYyBBQUEgZGVmIls3LCA4XSwg
IkFCRCBvcHEgRFNVICJbNywgNCwgMF0gICAgRkFJTCBleHBlY3RlZDogWyJGRlogcnN0IExJRyJb
IDExLCAgOCwgIDQsIF0iQUJEIG9wcSBEU1UgIlsgMTEsICAxMiwgXSJhYmMgQUFBIGRlZiJbIDcs
ICA4LCBdIkFCRCBvcHEgRFNVICJbIDgsICA0LCAgMF0KKyJhYmMgQUFBIGRlZiJbOF0sICJBQkQg
b3BxIERTVSAiWzddICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgOF0KKyJGRlogcnN0
IExJRyJbMV0sICJBQkQgb3BxIERTVSAiWzRdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1Ug
IlsgOF0KKyJGRlogcnN0IExJRyJbMl0sICJBQkQgb3BxIERTVSAiWzRdICAgRkFJTCBleHBlY3Rl
ZCAiQUJEIG9wcSBEU1UgIlsgOF0KIFRlc3QgMzUsIFJUTDoKIE1vdmUgbGVmdCBieSBvbmUgd29y
ZAogIkFCRCBvcHEgRFNVICJbMCwgNCwgOF0sICJhYmMgQUFBIGRlZiJbNCwgOF0sICJGRlogcnN0
IExJRyJbNCwgOF0gICAgRkFJTCBleHBlY3RlZDogWyJBQkQgb3BxIERTVSAiWyAwLCAgNCwgIDgs
ICAxMiwgXSJhYmMgQUFBIGRlZiJbIDQsICA4LCBdIkZGWiByc3QgTElHIlsgNCwgIDhdCisiQUJE
IG9wcSBEU1UgIls4XSwgImFiYyBBQUEgZGVmIls0XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEg
RFNVICJbIDEyXQorIkFCRCBvcHEgRFNVICJbOV0sICJhYmMgQUFBIGRlZiJbNF0gICBGQUlMIGV4
cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJBQkQgb3BxIERTVSAiWzEwXSwgImFiYyBBQUEg
ZGVmIls0XSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEgRFNVICJbIDEyXQorIkFCRCBvcHEgRFNV
ICJbMTFdLCAiYWJjIEFBQSBkZWYiWzRdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsg
MTJdCiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiRkZaIHJzdCBMSUciWzExLCA4LCA0XSwgImFi
YyBBQUEgZGVmIls4LCA0XSwgIkFCRCBvcHEgRFNVICJbMTEsIDgsIDQsIDBdICAgIEZBSUwgZXhw
ZWN0ZWQ6IFsiRkZaIHJzdCBMSUciWyAxMSwgIDgsICA0LCBdImFiYyBBQUEgZGVmIlsgOCwgIDQs
IF0iQUJEIG9wcSBEU1UgIlsgMTIsICA4LCAgNCwgIDBdCisiYWJjIEFBQSBkZWYiWzRdLCAiQUJE
IG9wcSBEU1UgIlsxMV0gICBGQUlMIGV4cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJhYmMg
QUFBIGRlZiJbM10sICJBQkQgb3BxIERTVSAiWzExXSAgIEZBSUwgZXhwZWN0ZWQgIkFCRCBvcHEg
RFNVICJbIDEyXQorImFiYyBBQUEgZGVmIlsxXSwgIkFCRCBvcHEgRFNVICJbOF0gICBGQUlMIGV4
cGVjdGVkICJBQkQgb3BxIERTVSAiWyAxMl0KKyJhYmMgQUFBIGRlZiJbMl0sICJBQkQgb3BxIERT
VSAiWzhdICAgRkFJTCBleHBlY3RlZCAiQUJEIG9wcSBEU1UgIlsgMTJdCiBUZXN0IDM2LCBMVFI6
CiBNb3ZlIHJpZ2h0IGJ5IG9uZSB3b3JkCiAiQUJEIG9wcSBEU1UgIlswLCA0LCA4LCAxMl0sICJh
YmMgQUFBIGRlZiJbNCwgOF0sICJGRlogcnN0IExJRyJbNCwgOCwgMTFdCkBAIC0xODYsNyArMjUw
LDMgQEAgTW92ZSByaWdodCBieSBvbmUgd29yZAogTW92ZSBsZWZ0IGJ5IG9uZSB3b3JkCiAiRkZa
IlszXSwgImJiYiBBQUEgIls3LCA0XSwgImFhYSAiWzQsIDBdCiAKLT09PT09PT09IE1vdmUgQnkg
V29yZCBTcGVjaWZpYyBUZXN0ID09PT0KLVRlc3QgMQotTW92ZSBsZWZ0IGJ5IG9uZSB3b3JkCi0i
QkIiWzFdLCAiQUFBICJbMF0KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21v
dmUtYnktd29yZC12aXN1YWxseS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRp
bmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS5odG1sCShyZXZpc2lvbiA4NDQyNykK
KysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC12aXN1YWxseS5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw4ICs3Nyw5IEBAIGZ1bmN0aW9uIG5vZGVPZldvcmRC
cmVhayhub2RlQW5kT2Zmc2V0KQogCiB2YXIgd29yZEJyZWFrczsKIAotZnVuY3Rpb24gbG9nV29y
ZEJyZWFrKGluZGV4KQorZnVuY3Rpb24gbG9nV29yZEJyZWFrKGluZGV4LCBmaXJzdCkKIHsKKyAg
ICB2YXIgd2l0aE5vZGVEYXRhID0gZmFsc2U7CiAgICAgdmFyIHdvcmRCcmVhayA9IHdvcmRCcmVh
a3NbaW5kZXhdOwogICAgIGlmICh3b3JkQnJlYWsuc2VhcmNoKCcsJykgPT0gLTEpCiAgICAgICAg
IGxvZyh3b3JkQnJlYWspOwpAQCAtODcsMTYgKzg4LDIxIEBAIGZ1bmN0aW9uIGxvZ1dvcmRCcmVh
ayhpbmRleCkKICAgICAgICAgdmFyIG5vZGUgPSBub2RlT2ZXb3JkQnJlYWsobm9kZUFuZE9mZnNl
dCk7CiAKICAgICAgICAgdmFyIGRpZmZlcmVudE5vZGUgPSBmYWxzZTsKLSAgICAgICAgaWYgKGlu
ZGV4ICE9IDApIHsKKyAgICAgICAgaWYgKGZpcnN0ID09IGZhbHNlKSB7CiAgICAgICAgICAgICBk
aWZmZXJlbnROb2RlID0gbm9kZU9mV29yZEJyZWFrKG5vZGVBbmRPZmZzZXQpICE9IG5vZGVPZldv
cmRCcmVhayh3b3JkQnJlYWtzW2luZGV4IC0gMV0uc3BsaXQoJywnKSk7CiAgICAgICAgIAogICAg
ICAgICB9CisKICAgICAgICAgaWYgKGRpZmZlcmVudE5vZGUgPT0gdHJ1ZSkKICAgICAgICAgICAg
IGxvZygiXSIpOwotICAgICAgICBpZiAoaW5kZXggPT0gMCB8fCBkaWZmZXJlbnROb2RlID09IHRy
dWUpCisKKyAgICAgICAgaWYgKGZpcnN0ID09IHRydWUgfHwgZGlmZmVyZW50Tm9kZSA9PSB0cnVl
KSB7CisgICAgICAgICAgICB3aXRoTm9kZURhdGEgPSAobm9kZSBpbnN0YW5jZW9mIFRleHQpOwog
ICAgICAgICAgICAgbG9nKChub2RlIGluc3RhbmNlb2YgVGV4dCA/ICciJyArIGZvbGQobm9kZS5k
YXRhKSArICciJyA6ICI8IiArIG5vZGUudGFnTmFtZSArICI+IikgKyAiWyIpOworICAgICAgICB9
CiAgICAgICAgIGxvZyhub2RlQW5kT2Zmc2V0WzFdKTsKICAgICB9CisgICAgcmV0dXJuIHdpdGhO
b2RlRGF0YTsKIH0KIAogZnVuY3Rpb24gcG9zaXRpb25FcXVhbFRvV29yZEJyZWFrKHBvc2l0aW9u
LCB3b3JkQnJlYWspCkBAIC0xMjMsNyArMTI5LDcgQEAgZnVuY3Rpb24gdmFsaWRhdGVEYXRhKHBv
c2l0aW9ucykKICAgICBpZiAoZXF1YWwgPT0gZmFsc2UpIHsKICAgICAgICAgbG9nKCIgICAgRkFJ
TCBleHBlY3RlZDogWyIpOwogICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHdvcmRCcmVha3Mu
bGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAgIGxvZ1dvcmRCcmVhayhpKTsKKyAgICAgICAgICAg
IGxvZ1dvcmRCcmVhayhpLCBpID09IDApOwogICAgICAgICAgICAgaWYgKGkgIT0gd29yZEJyZWFr
cy5sZW5ndGggLSAxKQogICAgICAgICAgICAgICAgIGxvZygiLCAiKTsKICAgICAgICAgfQpAQCAt
MTgyLDYgKzE4OCw2NiBAQCBmdW5jdGlvbiBtb3ZlQnlXb3JkKHNlbCwgdGVzdCwgc2VhcmNoRGly
CiAgICAgbG9nKCJcbiIpOwogfQogCitmdW5jdGlvbiBwb3NpdGlvblBhc3NXb3JkQnJlYWsocG9z
aXRpb24sIHdvcmRCcmVhaywgc2VhcmNoRGlyZWN0aW9uKQoreworICAgIC8vIEhhY2sgZm9yIHNw
YWNlIGNvbGxhcHNlLgorICAgIC8vIHNlbC5tb2RpZnkoIm1vdmUiLCBkaXIsICJjaGFyYWN0ZXIi
KSBub3QgcmVhY2ggbXVsdGktc3BhY2UuCisgICAgdmFyIG5vZGUgPSBwb3NpdGlvbi5ub2RlOwor
ICAgIGlmIChub2RlLnBhcmVudE5vZGUuaWQgPT0gIm11bHRpc3BhY2UiKSB7CisgICAgICAgIGlm
IChzZWFyY2hEaXJlY3Rpb24gPT0gInJpZ2h0IiAmJiBwb3NpdGlvbi5vZmZzZXQgPj0gd29yZEJy
ZWFrCisgICAgICAgICAgICB8fCBzZWFyY2hEaXJlY3Rpb24gPT0gImxlZnQiICYmIHBvc2l0aW9u
Lm9mZnNldCA8PSB3b3JkQnJlYWspIAorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQor
ICAgIHJldHVybiBmYWxzZTsKK30KKworZnVuY3Rpb24gbW92ZUJ5V29yZE9uRXZlcnlDaGFyKHNl
bCwgdGVzdCwgc2VhcmNoRGlyZWN0aW9uLCBkaXIpCit7CisgICAgY29sbGVjdFdvcmRCcmVha3Mo
dGVzdCwgc2VhcmNoRGlyZWN0aW9uKTsKKyAgICB2YXIgd29yZEJyZWFrSW5kZXggPSAxOworICAg
IHZhciBwcmV2T2Zmc2V0ID0gc2VsLmFuY2hvck9mZnNldDsKKyAgICB2YXIgcHJldk5vZGUgPSBz
ZWwuYW5jaG9yTm9kZTsKKworICAgIHdoaWxlICgxKSB7CisgICAgICAgIHZhciBwb3NpdGlvbnMg
PSBbXTsKKyAgICAgICAgcG9zaXRpb25zLnB1c2goeyBub2RlOiBzZWwuYW5jaG9yTm9kZSwgb2Zm
c2V0OiBzZWwuYW5jaG9yT2Zmc2V0IH0pOworICAgICAgICBzZWwubW9kaWZ5KCJtb3ZlIiwgc2Vh
cmNoRGlyZWN0aW9uLCAiLXdlYmtpdC12aXN1YWwtd29yZCIpOworCisgICAgICAgIHZhciBwb3Np
dGlvbiA9IHsgbm9kZTogc2VsLmFuY2hvck5vZGUsIG9mZnNldDogc2VsLmFuY2hvck9mZnNldCB9
OworCisgICAgICAgIGlmICh3b3JkQnJlYWtJbmRleCA+PSB3b3JkQnJlYWtzLmxlbmd0aCkgewor
ICAgICAgICAgICAgaWYgKHNlbC5hbmNob3JOb2RlICE9IHByZXZOb2RlIHx8IHNlbC5hbmNob3JP
ZmZzZXQgIT0gcHJldk9mZnNldCkgeworICAgICAgICAgICAgICAgIHBvc2l0aW9ucy5wdXNoKHBv
c2l0aW9uKTsKKyAgICAgICAgICAgICAgICBsb2dQb3NpdGlvbnMocG9zaXRpb25zKTsKKyAgICAg
ICAgICAgICAgICBsb2coIiAgIEZBSUwgZXhwZWN0ZWQgdG8gc3RheSBpbiB0aGUgc2FtZSBwb3Np
dGlvblxuIik7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAoIXBvc2l0aW9uRXF1
YWxUb1dvcmRCcmVhayhwb3NpdGlvbiwgd29yZEJyZWFrc1t3b3JkQnJlYWtJbmRleF0pKSB7Cisg
ICAgICAgICAgICBwb3NpdGlvbnMucHVzaChwb3NpdGlvbik7CisgICAgICAgICAgICBsb2dQb3Np
dGlvbnMocG9zaXRpb25zKTsKKyAgICAgICAgICAgIGxvZygiICAgRkFJTCBleHBlY3RlZCAiKTsK
KyAgICAgICAgICAgIHZhciB3aXRoTm9kZURhdGEgPSBsb2dXb3JkQnJlYWsod29yZEJyZWFrSW5k
ZXgsIHRydWUpOworICAgICAgICAgICAgaWYgKHdpdGhOb2RlRGF0YSkKKyAgICAgICAgICAgICAg
ICBsb2coIl0iKTsKKyAgICAgICAgICAgIGxvZygiXG4iKTsKKyAgICAgICAgfQorCisgICAgICAg
IC8vIFJlc3RvcmUgcG9zaXRpb24gYW5kIG1vdmUgYnkgMSBjaGFyYWN0ZXIuCisgICAgICAgIHNl
bC5zZXRQb3NpdGlvbihwcmV2Tm9kZSwgcHJldk9mZnNldCk7CisgICAgICAgIHNlbC5tb2RpZnko
Im1vdmUiLCBzZWFyY2hEaXJlY3Rpb24sICJjaGFyYWN0ZXIiKTsKKyAgICAgICAgaWYgKHByZXZO
b2RlID09IHNlbC5hbmNob3JOb2RlICYmIHByZXZPZmZzZXQgPT0gc2VsLmFuY2hvck9mZnNldCkK
KyAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgIHBvc2l0aW9uID0geyBub2RlOiBzZWwuYW5j
aG9yTm9kZSwgb2Zmc2V0OiBzZWwuYW5jaG9yT2Zmc2V0IH07CisgICAgICAgIGlmICh3b3JkQnJl
YWtJbmRleCA8IHdvcmRCcmVha3MubGVuZ3RoIAorICAgICAgICAgICAgJiYgKHBvc2l0aW9uRXF1
YWxUb1dvcmRCcmVhayhwb3NpdGlvbiwgd29yZEJyZWFrc1t3b3JkQnJlYWtJbmRleF0pIAorICAg
ICAgICAgICAgfHwgcG9zaXRpb25QYXNzV29yZEJyZWFrKHBvc2l0aW9uLCB3b3JkQnJlYWtzW3dv
cmRCcmVha0luZGV4XSwgc2VhcmNoRGlyZWN0aW9uKSkpCisgICAgICAgICAgICArK3dvcmRCcmVh
a0luZGV4OworCisgICAgICAgIHByZXZOb2RlID0gc2VsLmFuY2hvck5vZGU7CisgICAgICAgIHBy
ZXZPZmZzZXQgPSBzZWwuYW5jaG9yT2Zmc2V0OworICAgIH07Cit9CisKIGZ1bmN0aW9uIG1vdmVC
eVdvcmRGb3JFdmVyeVBvc2l0aW9uKHNlbCwgdGVzdCwgZGlyKQogewogICAgIC8vIENoZWNrIGN0
cmwtcmlnaHQtYXJyb3cgd29ya3MgZm9yIGV2ZXJ5IHBvc2l0aW9uLgpAQCAtMTkwLDYgKzI1Niw4
IEBAIGZ1bmN0aW9uIG1vdmVCeVdvcmRGb3JFdmVyeVBvc2l0aW9uKHNlbCwKICAgICBpZiAoZGly
ID09ICJydGwiKQogICAgICAgICBkaXJlY3Rpb24gPSAibGVmdCI7ICAgIAogICAgIG1vdmVCeVdv
cmQoc2VsLCB0ZXN0LCBkaXJlY3Rpb24sIGRpcik7ICAgIAorICAgIHNlbC5zZXRQb3NpdGlvbih0
ZXN0LCAwKTsKKyAgICBtb3ZlQnlXb3JkT25FdmVyeUNoYXIoc2VsLCB0ZXN0LCBkaXJlY3Rpb24s
IGRpcik7CiAKICAgICBzZWwubW9kaWZ5KCJtb3ZlIiwgImZvcndhcmQiLCAibGluZUJvdW5kYXJ5
Iik7CiAgICAgLy8gQ2hlY2sgY3RybC1sZWZ0LWFycm93IHdvcmtzIGZvciBldmVyeSBwb3NpdGlv
bi4KQEAgLTE5OCw2ICsyNjYsOCBAQCBmdW5jdGlvbiBtb3ZlQnlXb3JkRm9yRXZlcnlQb3NpdGlv
bihzZWwsCiAgICAgZWxzZQogICAgICAgICBkaXJlY3Rpb24gPSAicmlnaHQiOyAgICAKICAgICBt
b3ZlQnlXb3JkKHNlbCwgdGVzdCwgZGlyZWN0aW9uLCBkaXIpOyAgICAKKyAgICBzZWwubW9kaWZ5
KCJtb3ZlIiwgImZvcndhcmQiLCAibGluZUJvdW5kYXJ5Iik7CisgICAgbW92ZUJ5V29yZE9uRXZl
cnlDaGFyKHNlbCwgdGVzdCwgZGlyZWN0aW9uLCBkaXIpOwogfQogCiBmdW5jdGlvbiBydW5Nb3Zl
TGVmdFJpZ2h0KHRlc3RzLCB1bml0KQpAQCAtMjE1LDM5ICsyODUsOCBAQCBmdW5jdGlvbiBydW5N
b3ZlTGVmdFJpZ2h0KHRlc3RzLCB1bml0KQogICAgICAgICAgICAgbG9nKCJUZXN0ICIgKyAoaSAr
IDEpICsgIiwgUlRMOlxuIik7CiAgICAgICAgICAgICBtb3ZlQnlXb3JkRm9yRXZlcnlQb3NpdGlv
bihzZWwsIHRlc3RzW2ldLCAicnRsIik7CiAgICAgICAgIH0KLQogICAgIH0KLX0KIAotZnVuY3Rp
b24gcnVuU3BlY2lmaWNUZXN0KHRlc3RzKQotewotICAgIHZhciBzZWwgPSBnZXRTZWxlY3Rpb24o
KTsKLSAgICBsb2coIlxuPT09PT09PT0gTW92ZSBCeSBXb3JkIFNwZWNpZmljIFRlc3QgPT09PVxu
Iik7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0ZXN0cy5sZW5ndGg7ICsraSkgewotICAgICAg
ICBsb2coIlRlc3QgIiArIChpICsgMSkgKyAiXG4iKTsKLSAgICAgICAgdmFyIGNvbXBvbmVudHMg
PSB0ZXN0c1tpXS50aXRsZS5zcGxpdCgiICIpOwotICAgICAgICB2YXIgc3RhcnRPZmZzZXQgPSBj
b21wb25lbnRzWzBdOwotICAgICAgICB2YXIgbW92aW5nRGlyZWN0aW9uID0gY29tcG9uZW50c1sx
XTsKLSAgICAgICAgdmFyIGVuZGluZ05vZGUgPSBjb21wb25lbnRzWzJdOwotICAgICAgICB2YXIg
ZW5kaW5nT2Zmc2V0ID0gY29tcG9uZW50c1szXTsKLSAKLSAgICAgICAgbG9nKCJNb3ZlICIgKyBt
b3ZpbmdEaXJlY3Rpb24gKyAiIGJ5IG9uZSB3b3JkXG4iKTsKLQotICAgICAgICB2YXIgcG9zaXRp
b25zID0gW107Ci0gICAgICAgIHNlbC5zZXRQb3NpdGlvbih0ZXN0c1tpXS5maXJzdENoaWxkLCBz
dGFydE9mZnNldCk7Ci0gICAgICAgIHBvc2l0aW9ucy5wdXNoKHsgbm9kZTogc2VsLmFuY2hvck5v
ZGUsIG9mZnNldDogc2VsLmFuY2hvck9mZnNldCB9KTsKLQotICAgICAgICBzZWwubW9kaWZ5KCJt
b3ZlIiwgbW92aW5nRGlyZWN0aW9uLCAiLXdlYmtpdC12aXN1YWwtd29yZCIpOwotICAgICAgICBw
b3NpdGlvbnMucHVzaCh7IG5vZGU6IHNlbC5hbmNob3JOb2RlLCBvZmZzZXQ6IHNlbC5hbmNob3JP
ZmZzZXQgfSk7Ci0KLSAgICAgICAgbG9nUG9zaXRpb25zKHBvc2l0aW9ucyk7Ci0KLSAgICAgICAg
aWYgKHNlbC5hbmNob3JOb2RlLnBhcmVudE5vZGUgIT0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ZW5kaW5nTm9kZSkgfHwgc2VsLmFuY2hvck9mZnNldCAhPSBlbmRpbmdPZmZzZXQpIHsKLSAgICAg
ICAgICAgIGxvZygiICAgIEZBSUw6IGV4cGVjdGVkICIpOwotICAgICAgICAgICAgdmFyIGVuZGlu
Z0NoaWxkTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVuZGluZ05vZGUpLmZpcnN0Q2hp
bGQ7Ci0gICAgICAgICAgICBsb2coKGVuZGluZ0NoaWxkTm9kZSBpbnN0YW5jZW9mIFRleHQgPyAn
IicgKyBmb2xkKGVuZGluZ0NoaWxkTm9kZS5kYXRhKSArICciJyA6ICI8IiArIGVuZGluZ0NoaWxk
Tm9kZS50YWdOYW1lICsgIj4iKSArICJbIiArIGVuZGluZ09mZnNldCArICJdIik7Ci0gICAgICAg
IH0KLSAgICB9CiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RNb3ZlQnlXb3JkIiku
c3R5bGUuZGlzcGxheSA9ICJub25lIjsKIH0KIApAQCAtMjU1LDkgKzI5NCw2IEBAIGZ1bmN0aW9u
IHJ1blRlc3QoKSB7CiAgICAgbG9nKCJcbj09PT09PT09IE1vdmUgQnkgV29yZCA9PT09XG4iKTsK
ICAgICB2YXIgdGVzdHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJ0ZXN0X21v
dmVfYnlfd29yZCIpOwogICAgIHJ1bk1vdmVMZWZ0UmlnaHQodGVzdHMsICJ3b3JkIik7Ci0gICAg
Ci0gICAgdGVzdHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzcGVjaWZpY190
ZXN0Iik7Ci0gICAgcnVuU3BlY2lmaWNUZXN0KHRlc3RzKTsKIH0KIAogb25sb2FkID0gZnVuY3Rp
b24oKSB7CkBAIC0zMTksNyArMzU1LDcgQEAgd2hlcmUgY2hpbGRfbm9kZV9pbmRleCBpcyBvcHRp
b25hbCwgZGVmYQogPCEtLSBtdWx0aXBsZSBzcGFjZXMgYmV0d2VlbiB3b3JkLiAKICAgICAgRkFJ
TEVEOiB3b3JkIGJyZWFrIGJldHdlZW4gImRlZiIgYW5kICJoaWoiIGlzIHVucmVhY2hhYmxlLgog
LS0+Ci08ZGl2IGRpcj1sdHIgY2xhc3M9InRlc3RfbW92ZV9ieV93b3JkIiB0aXRsZT0iMCA0IDEx
IDE1fDE4IDE1IDExIDQgMCIgY29udGVudGVkaXRhYmxlPmFiYyBkZWYgICAgaGlqIG9wcTwvZGl2
PgorPGRpdiBpZD0ibXVsdGlzcGFjZSIgZGlyPWx0ciBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQi
IHRpdGxlPSIwIDQgMTEgMTV8MTggMTUgMTEgNCAwIiBjb250ZW50ZWRpdGFibGU+YWJjIGRlZiAg
ICBoaWogb3BxPC9kaXY+CiAKIDwhLS0gSW5saW5lIGVsZW1lbnQgLS0+CiA8ZGl2IGRpcj1sdHIg
aWQ9ImRpdl8xIiBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzEsIDBdW2Rp
dl8xLCAzXXxbc3Bhbl8xLCAyXVtkaXZfMSwgM11bZGl2XzEsMF0iIGNvbnRlbnRlZGl0YWJsZT7X
kNeQ15AgPHNwYW4gaWQ9InNwYW5fMSI+15HXkTwvc3Bhbj48L2Rpdj4KQEAgLTMyOSwxMCArMzY1
LDEwIEBAIHdoZXJlIGNoaWxkX25vZGVfaW5kZXggaXMgb3B0aW9uYWwsIGRlZmEKIDxkaXYgZGly
PWx0ciBpZD0iZGl2XzMiIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMywg
MF1bZGl2XzMsIDRdW2Rpdl8zLCA4XVtzcGFuXzMsIDRdW2Rpdl8zLCAxLCAzXVtkaXZfMywgNSwg
M118W2Rpdl8zLCA4LCAzXVtkaXZfMywgNSwgM11bZGl2XzMsIDEsIDNdW3NwYW5fMywgNF1bZGl2
XzMsIDhdW2Rpdl8zLCA0XVtkaXZfMywgMF0iIGNvbnRlbnRlZGl0YWJsZT5hYmMgZGVmIDxzcGFu
IGlkPSJzcGFuXzMiPmhpaiBvcHE8L3NwYW4+IHJzdCB1dnc8L2Rpdj4KIAogPCEtLSBGQUlMRUQg
LS0+Ci08ZGl2IGRpcj1ydGwgaWQ9ImRpdl80IiBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRp
dGxlPSJbZGl2XzQsIDgsIDNdW2Rpdl80LCAzLCAxXVtkaXZfNCwgNywgMV1bc3Bhbl80LCAzLCAx
XVtkaXZfNCwgMCwgM11bZGl2XzQsIDQsIDNdW2Rpdl80LCAwLCAxXXxbZGl2XzQsIDAsIDFdW2Rp
dl80LCA0LCAzXVtkaXZfNCwgMCwgM11bc3Bhbl80LCAzLCAxXVtkaXZfNCwgNywgMV1bZGl2XzQs
IDMsIDFdIiBjb250ZW50ZWRpdGFibGU+YWJjIGRlZiA8c3BhbiBpZD0ic3Bhbl80Ij5oaWogb3Bx
PC9zcGFuPiByc3QgdXZ3PC9kaXY+Cis8ZGl2IGRpcj1ydGwgaWQ9ImRpdl80IiBjbGFzcz0idGVz
dF9tb3ZlX2J5X3dvcmQiIHRpdGxlPSJbZGl2XzQsIDgsIDNdW2Rpdl80LCAzLCAxXVtkaXZfNCwg
NywgMV1bc3Bhbl80LCAzLCAxXVtzcGFuXzQsIDcsIDFdW2Rpdl80LCA0LCAzXVtkaXZfNCwgMCwg
MV18W2Rpdl80LCAwLCAxXVtkaXZfNCwgNCwgM11bc3Bhbl80LCA3LCAxXVtzcGFuXzQsIDMsIDFd
W2Rpdl80LCA3LCAxXVtkaXZfNCwgMywgMV0iIGNvbnRlbnRlZGl0YWJsZT5hYmMgZGVmIDxzcGFu
IGlkPSJzcGFuXzQiPmhpaiBvcHE8L3NwYW4+IHJzdCB1dnc8L2Rpdj4KIAotPCEtLSBGQUlMRUQg
LS0+Ci08ZGl2IGlkPSJkaXZfNSIgZGlyPXJ0bCBjbGFzcz0idGVzdF9tb3ZlX2J5X3dvcmQiIHRp
dGxlPSJbZGl2XzUsIDgsIDNdW2Rpdl81LCAzLCAxXVtkaXZfNSwgNywgMV1bc3Bhbl81LCAzLCAx
XVtkaXZfNSwgMCwgM11bZGl2XzUsIDQsIDNdW2Rpdl81LCAwLCAxXXxbZGl2XzUsIDAsIDFdW2Rp
dl81LCA0LCAzXVtkaXZfNSwgMCwgM11bc3Bhbl81LCAzLCAxXVtkaXZfNSwgNywgMV1bZGl2XzUs
IDMsIDFdImNvbnRlbnRlZGl0YWJsZT5hYmMgZGVmIDxzcGFuIGRpcj1sdHIgaWQ9InNwYW5fNSI+
aGlqIG9wcTwvc3Bhbj4gcnN0IHV2dzwvZGl2PgorPCEtLSBGQUlMRUQuIFRoZSByZW5kZXIgcmVz
dWx0IGlzIHRoZSBzYW1lIGFzIGRpdl80LiAtLT4KKzxkaXYgaWQ9ImRpdl81IiBkaXI9cnRsIGNs
YXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfNSwgOCwgM11bZGl2XzUsIDMsIDFd
W2Rpdl81LCA3LCAxXVtzcGFuXzUsIDMsIDFdW3NwYW5fNSwgNywgMV1bZGl2XzUsIDQsIDNdW2Rp
dl81LCAwLCAxXXxbZGl2XzUsIDAsIDFdW2Rpdl81LCA0LCAzXVtzcGFuXzUsIDcsIDFdW3NwYW5f
NSwgMywgMV1bZGl2XzUsIDcsIDFdW2Rpdl81LCAzLCAxXSJjb250ZW50ZWRpdGFibGU+YWJjIGRl
ZiA8c3BhbiBkaXI9bHRyIGlkPSJzcGFuXzUiPmhpaiBvcHE8L3NwYW4+IHJzdCB1dnc8L2Rpdj4K
IAogPGRpdiBpZD0iZGl2XzYiIGRpcj1sdHIgY2xhc3M9InRlc3RfbW92ZV9ieV93b3JkIiB0aXRs
ZT0iW2Rpdl82LCAwLCAxXVtkaXZfNiwgNCwgMV1bZGl2XzYsIDgsIDFdW3NwYW5fNiwgNCwgMV1b
ZGl2XzYsIDEsIDNdW2Rpdl82LCA1LCAzXXxbZGl2XzYsIDgsIDNdW2Rpdl82LCA1LCAzXVtkaXZf
NiwgMSwgM11bc3Bhbl82LCA0LCAxXVtkaXZfNiwgOCwgMV1bZGl2XzYsIDQsIDFdW2Rpdl82LCAw
LCAxXSIgY29udGVudGVkaXRhYmxlPmFiYyBkZWYgPHNwYW4gZGlyPXJ0bCBpZD0ic3Bhbl82Ij5o
aWogb3BxPC9zcGFuPiByc3QgdXZ3PC9kaXY+CiAKQEAgLTM1NCwxMSArMzkwLDEwIEBAIHdoZXJl
IGNoaWxkX25vZGVfaW5kZXggaXMgb3B0aW9uYWwsIGRlZmEKIAogPGRpdiBpZD0iZGl2XzEzIiBk
aXI9cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZfMTMsIDcsIDNdW2Rp
dl8xMywgNCwgM11bc3Bhbl8xMywgMywgMV1bZGl2XzEzLCA4LCAxXVtkaXZfMTMsIDQsIDFdW2Rp
dl8xMywgMCwgMV18W2Rpdl8xMywgMCwgMV1bZGl2XzEzLCA0LCAxXVtkaXZfMTMsIDgsIDFdW3Nw
YW5fMTMsIDMsIDFdW2Rpdl8xMywgNCwgM10iIGNvbnRlbnRlZGl0YWJsZT7XkNeR15Mg15PXotek
IDxzcGFuIGlkPSJzcGFuXzEzIj5hYmMgZGVmPC9zcGFuPteV15XXqSDXm9eY15Y8L2Rpdj4KIAot
PGRpdiBpZD0iZGl2XzE0IiBkaXI9bHRyIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9
IltkaXZfMTQsIDAsIDFdW2Rpdl8xNCwgMywgMV1bZGl2XzE0LCA4LCAxXVtzcGFuXzE0LCA0LCAx
XVtkaXZfMTQsIDMsIDNdfFtkaXZfMTQsIDcsIDNdW2Rpdl8xNCwgMywgM11bc3Bhbl8xNCwgNCwg
MV1bZGl2XzE0LCA4LCAxXVtkaXZfMTQsIDQsIDFdW2Rpdl8xNCwgMCwgMV0iIGNvbnRlbnRlZGl0
YWJsZT7XkNeR15Mg15PXotekIDxzcGFuIGlkPSJzcGFuXzE0Ij5hYmMgZGVmPC9zcGFuPteV15XX
qSDXm9eY15Y8L2Rpdj4KKzxkaXYgaWQ9ImRpdl8xNCIgZGlyPWx0ciBjbGFzcz0idGVzdF9tb3Zl
X2J5X3dvcmQiIHRpdGxlPSJbZGl2XzE0LCAwLCAxXVtkaXZfMTQsIDMsIDFdW2Rpdl8xNCwgOCwg
MV1bc3Bhbl8xNCwgNCwgMV1bZGl2XzE0LCAzLCAzXXxbZGl2XzE0LCA3LCAzXVtkaXZfMTQsIDMs
IDNdW3NwYW5fMTQsIDQsIDFdW2Rpdl8xNCwgOCwgMV1bZGl2XzE0LCAzLCAxXVtkaXZfMTQsIDAs
IDFdIiBjb250ZW50ZWRpdGFibGU+15DXkdeTINeT16LXpCA8c3BhbiBpZD0ic3Bhbl8xNCI+YWJj
IGRlZjwvc3Bhbj7XldeV16kg15vXmNeWPC9kaXY+CiAKIDwhLS0gRkFJTEVEIC0tPgotPGRpdiBp
ZD0iZGl2XzE1IiBkaXI9cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29yZCIgdGl0bGU9IltkaXZf
MTUsIDExLCAzXVtkaXZfMTUsIDgsIDNdW2Rpdl8xNSwgNCwgM11bc3Bhbl8xNSwgMywgMV1bc3Bh
bl8xNSwgNCwgMV1bZGl2XzE1LCAxMiwgMV1bZGl2XzE1LCA4LCAxXVtkaXZfMTUsIDQsIDFdW2Rp
dl8xNSwgMCwgMV18W2Rpdl8xNSwgMCwgMV1bZGl2XzE1LCA0LCAxXVtkaXZfMTUsIDgsIDFdW2Rp
dl8xNSwgMTIsIDFdW3NwYW5fMTUsIDQsIDFdW3NwYW5fMTUsIDMsIDFdW2Rpdl8xNSwgNCwgM11b
ZGl2XzE1LCA4LCAzXSIKLWNvbnRlbnRlZGl0YWJsZT7XkNeR15Mgb3BxINeT16LXpCA8c3BhbiBk
aXI9bHRyIGlkPSJzcGFuXzE1Ij5hYmMg15DXkNeQIGRlZjwvc3Bhbj7XldeV16kgcnN0INeb15jX
ljwvZGl2PgorPGRpdiBpZD0iZGl2XzE1IiBkaXI9cnRsIGNsYXNzPSJ0ZXN0X21vdmVfYnlfd29y
ZCIgdGl0bGU9IltkaXZfMTUsIDExLCAzXVtkaXZfMTUsIDgsIDNdW2Rpdl8xNSwgNCwgM11bc3Bh
bl8xNSwgMywgMV1bc3Bhbl8xNSwgNCwgMV1bZGl2XzE1LCAxMiwgMV1bZGl2XzE1LCA4LCAxXVtk
aXZfMTUsIDQsIDFdW2Rpdl8xNSwgMCwgMV18W2Rpdl8xNSwgMCwgMV1bZGl2XzE1LCA0LCAxXVtk
aXZfMTUsIDgsIDFdW2Rpdl8xNSwgMTIsIDFdW3NwYW5fMTUsIDQsIDFdW3NwYW5fMTUsIDMsIDFd
W2Rpdl8xNSwgNCwgM11bZGl2XzE1LCA4LCAzXSIgY29udGVudGVkaXRhYmxlPteQ15HXkyBvcHEg
15PXotekIDxzcGFuIGRpcj1sdHIgaWQ9InNwYW5fMTUiPmFiYyDXkNeQ15AgZGVmPC9zcGFuPteV
15XXqSByc3Qg15vXmNeWPC9kaXY+CiAKIDwhLS0gRkFJTEVELCBhbmQgd3JvbmcgcHJpbnRpbmcg
cmVzdWx0IC0tPgogPGRpdiBpZD0iZGl2XzE2IiBkaXI9bHRyIGNsYXNzPSJ0ZXN0X21vdmVfYnlf
d29yZCIgdGl0bGU9IltkaXZfMTYsIDAsIDFdW2Rpdl8xNiwgNCwgMV1bZGl2XzE2LCA4LCAxXVtz
cGFuXzE2LCA4LCAxXVtzcGFuXzE2LCA3LCAxXVtkaXZfMTYsIDEyLCAxXVtkaXZfMTYsIDExLCAx
XVtkaXZfMTYsIDQsIDNdW2Rpdl8xNiwgOCwgM11bZGl2XzE2LCAxMSwgM118W2Rpdl8xNiwgMTEs
IDNdW2Rpdl8xNiwgOCwgM11bZGl2XzE2LCA0LCAzXVtkaXZfMTYsIDExLCAxXVtkaXZfMTYsIDEy
LCAxXVtzcGFuXzE2LCA3LCAxXVtzcGFuXzE2LCA4LCAxXVtkaXZfMTYsIDgsIDFdW2Rpdl8xNiwg
NCwgMV1bZGl2XzE2LCAwLCAxXSIgY29udGVudGVkaXRhYmxlPteQ15HXkyBvcHEg15PXotekIDxz
cGFuIGRpcj1ydGwgaWQ9InNwYW5fMTYiPmFiYyDXkNeQ15AgZGVmPC9zcGFuPteV15XXqSByc3Qg
15vXmNeWPC9kaXY+CkBAIC0zNzAsOCArNDA1LDYgQEAgY29udGVudGVkaXRhYmxlPteQ15HXkyBv
cHEg15PXotekIDxzcGFuIAogCiA8ZGl2IGlkPSJkaXZfMTkiIGRpcj1sdHIgY2xhc3M9InRlc3Rf
bW92ZV9ieV93b3JkIiB0aXRsZT0iW2Rpdl8xOSwgMCwgMV1bZGl2XzE5LCA0LCAxXVtzcGFuXzE5
LCA0LCAxXVtzcGFuXzE5LCA3LCAxXXxbZGl2XzE5LCAzLCAzXVtzcGFuXzE5LCA3LCAxXVtzcGFu
XzE5LCA0LCAxXVtkaXZfMTksIDQsIDFdW2Rpdl8xOSwgMCwgMV0iIGNvbnRlbnRlZGl0YWJsZT5h
YWEgPHNwYW4gaWQ9InNwYW5fMTkiPmJiYiDXkNeQ15AgPC9zcGFuPteV15XXqTwvZGl2PgogCi08
IS0tIFRoZSBjb250ZW50IGluIHRpdGxlIG1lYW5zICJzdGFydE9mZnNldEluQ3VycmVudE5vZGUg
bW92aW5nRGlyZWN0aW9uQnlXb3JkIGVuZGluZ05vZGUgZW5kaW5nT2Zmc2V0SW5FbmRpbmdOb2Rl
IiAtLT4KLTxkaXYgaWQ9ImRpdl8xMDAiIGNvbnRlbnRlZGl0YWJsZT7XkNeQ15AgPHNwYW4gaWQ9
InNwYW5fMTAwIiBjbGFzcz0ic3BlY2lmaWNfdGVzdCIgdGl0bGU9IjEgbGVmdCBkaXZfMTAwIDAi
PteR15E8L3NwYW4+PC9kaXY+CiA8L2Rpdj4KIAogPHByZSBpZD0iY29uc29sZSI+PC9wcmU+Cg==
</data>
<flag name="review"
          id="83191"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>