<?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>77724</bug_id>
          
          <creation_ts>2012-02-03 01:44:40 -0800</creation_ts>
          <short_desc>Improve http-equiv content-language parsing</short_desc>
          <delta_ts>2017-07-18 17:13:47 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></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>
          <dependson>21417</dependson>
    
    <dependson>93571</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Matt Falkenhagen">falken</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>falken</cc>
    
    <cc>jshin</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>548578</commentid>
    <comment_count>0</comment_count>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-03 01:44:40 -0800</bug_when>
    <thetext>Spun off of bug 76701. We should figure out what behavior we want for content-language edge cases (whitespace, missing content, etc.) Also, how to handle dynamic changes to meta.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548872</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-02-03 11:13:01 -0800</bug_when>
    <thetext>To me it seems there are two parts to this:

1) Adding much more extensive test coverage.

2) Fixing any bugs we find.

We should do (1) first and land the tests ASAP.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551933</commentid>
    <comment_count>2</comment_count>
      <attachid>126035</attachid>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-08 02:30:28 -0800</bug_when>
    <thetext>Created attachment 126035
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551948</commentid>
    <comment_count>3</comment_count>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-08 02:53:17 -0800</bug_when>
    <thetext>I uploaded a patch with some tests. I tried to choose reasonable expectations and documented what the spec says and what I&apos;ve observed other browsers do. The current implementation is failing some of these expectations, which I&apos;m not sure is acceptable or not when adding new tests. On the other hand it didn&apos;t quite feel correct to make expectations based only on what the current implementation does.

I haven&apos;t yet looked into dynamic changes to meta, as Darin suggested in bug 76701. I&apos;ll try that next. Also  a test for a comma-separated list of languages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552174</commentid>
    <comment_count>4</comment_count>
      <attachid>126035</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-02-08 08:59:32 -0800</bug_when>
    <thetext>Comment on attachment 126035
Patch

Looks reasonable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552688</commentid>
    <comment_count>5</comment_count>
      <attachid>126035</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-08 17:42:02 -0800</bug_when>
    <thetext>Comment on attachment 126035
Patch

Clearing flags on attachment: 126035

Committed r107159: &lt;http://trac.webkit.org/changeset/107159&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552689</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-08 17:42:07 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552841</commentid>
    <comment_count>7</comment_count>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-08 21:47:25 -0800</bug_when>
    <thetext>Thanks for the review. I&apos;ll upload the next patch with tests for dynamic changes and comma-separated list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552852</commentid>
    <comment_count>8</comment_count>
      <attachid>126238</attachid>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-08 22:00:37 -0800</bug_when>
    <thetext>Created attachment 126238
tests for dynamic changes and comma-separated list</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552885</commentid>
    <comment_count>9</comment_count>
      <attachid>126238</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-02-08 23:11:14 -0800</bug_when>
    <thetext>Comment on attachment 126238
tests for dynamic changes and comma-separated list

Actually, I don&apos;t think that this kind of tests belong to fast/text. It&apos;s pure DOM/CSS.

cq+ because some tests have already been landed, but please consider moving them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552965</commentid>
    <comment_count>10</comment_count>
      <attachid>126238</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-09 01:50:23 -0800</bug_when>
    <thetext>Comment on attachment 126238
tests for dynamic changes and comma-separated list

Clearing flags on attachment: 126238

Committed r107200: &lt;http://trac.webkit.org/changeset/107200&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552966</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-09 01:50:28 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553671</commentid>
    <comment_count>12</comment_count>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2012-02-09 18:03:36 -0800</bug_when>
    <thetext>Thanks for the review. Reopening since just tests have landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553708</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-02-09 18:38:15 -0800</bug_when>
    <thetext>Next time please use multiple bug reports. There’s no good reason to use one report for multiple patches when we can file others and have them blocking the original.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330213</commentid>
    <comment_count>14</comment_count>
    <who name="Matt Falkenhagen">falken</who>
    <bug_when>2017-07-18 17:13:47 -0700</bug_when>
    <thetext>As far as I recall by re-reading this thread, the remaining task here is part 2) from comment 1:
&quot;2) Fixing any bugs we find.&quot;

I think it may be acceptable to just close this bug and open a new one if bugs are indeed found based on what was landed in comment 5 and comment 10.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126035</attachid>
            <date>2012-02-08 02:30:28 -0800</date>
            <delta_ts>2012-02-08 22:00:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77724-20120208193026.patch</filename>
            <type>text/plain</type>
            <size>19182</size>
            <attacher name="Matt Falkenhagen">falken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3MDM1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjA2OTY2MjRlMTRkYmRjMDgzMzMz
MWY4OTQ1NzU3ZWI2YzgzZWJhZC4uY2FmZmYxY2VkNTYwNDc4M2M2ZGUwYmM0YWQzN2I3Y2NkMmUy
OWFiMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTAyLTA4ICBNYXR0IEZhbGtlbmhhZ2Vu
ICA8ZmFsa2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXByb3ZlIGh0dHAtZXF1aXYgY29u
dGVudC1sYW5ndWFnZSBwYXJzaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03NzcyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkZCBtb3JlIHRlc3RzIGZvciBtYXBwaW5nIGh0dHAtZXF1aXYgY29udGVu
dC1sYW5ndWFnZSB0byAtd2Via2l0LWxvY2FsZS4gVGhlIGRlc2lyZWQgYmVoYXZpb3Igb2Ygc29t
ZQorICAgICAgICBvZiB0aGVzZSBpcyBub3QgeWV0IGRlY2lkZWQsIHNvIHNvbWUgb2YgdGhlIHRl
c3RzIGN1cnJlbnRseSBmYWlsIGFuZCB0aGUgZXhwZWN0YXRpb25zIG1heSBjaGFuZ2UuIFNlZSBj
b21tZW50cyBpbiBidWcgYW5kIGluIHRoZSB0ZXN0cy4KKworICAgICAgICAqIGZhc3QvdGV4dC9j
b250ZW50LWxhbmd1YWdlLWNhc2UtaW5zZW5zaXRpdml0eS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtY2FzZS1pbnNlbnNpdGl2aXR5Lmh0bWw6IFN0
eWxlIGZpeGVzLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWVtcHR5LWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2Ut
ZW1wdHkuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2Ut
bGF0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxh
bmd1YWdlLWxhdGUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0L2NvbnRlbnQtbGFu
Z3VhZ2UtbWFwcGVkLXRvLXdlYmtpdC1sb2NhbGUtZXhwZWN0ZWQudHh0OiAKKyAgICAgICAgKiBm
YXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS5odG1sOiBT
dHlsZSBmaXhlcy4KKyAgICAgICAgKiBmYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1tdWx0aXBs
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1
YWdlLW11bHRpcGxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxh
bmd1YWdlLW5vLWNvbnRlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3Rl
eHQvY29udGVudC1sYW5ndWFnZS1uby1jb250ZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW9ubHktd2hpdGVzcGFjZS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW9ubHktd2hpdGVzcGFj
ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS13aXRo
LXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3RleHQvY29u
dGVudC1sYW5ndWFnZS13aXRoLXdoaXRlc3BhY2UuaHRtbDogQWRkZWQuCisKIDIwMTItMDItMDcg
IEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVtLm9yZz4KIAogICAgICAgICBbVjhdIEFsbG93
IGJpbmRpbmdzIGZvciBhdHRyaWJ1dGVzIG9uIERPTSBub2RlcyB0byBhbHNvIHNldCBhIG5hbWVk
IGhpZGRlbiByZWZlcmVuY2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250
ZW50LWxhbmd1YWdlLWNhc2UtaW5zZW5zaXRpdml0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1jYXNlLWluc2Vuc2l0aXZpdHktZXhwZWN0ZWQu
dHh0CmluZGV4IDVmMGI0ZGI2NTQ5ZDBhMjdiN2U3YWVhZjM0ZjM4YjQyYmQyMjkwNGMuLjMxNWM0
NWFhZjg4OWU3NzEzZjNmNzk5OGU3MWJkM2FiNGRmZjE3OTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWNhc2UtaW5zZW5zaXRpdml0eS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtY2FzZS1p
bnNlbnNpdGl2aXR5LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIFRlc3QgZm9yIGJ1ZyA3
NjcwMTogbWFwIGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGlj
dWxhciB0ZXN0IHRlc3RzIHRoYXQgdGhlIG1hdGNoaW5nIG9mIHRoZSBodHRwLWVxdWl2IGF0dHJp
YnV0ZSB0byB0aGUgY29udGVudC1sYW5ndWFnZSBzdGF0ZSBpcyBjYXNlIGluc2Vuc2l0aXZlLgog
Ci1QQVNTIGxhbmd1YWdlT2ZOb2RlKCd4MScpIGlzICJqYS1KUCIKK1BBU1MgbGFuZ3VhZ2VPZk5v
ZGUoJ3gnKSBpcyAiamEtSlAiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRF
U1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxh
bmd1YWdlLWNhc2UtaW5zZW5zaXRpdml0eS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2Nv
bnRlbnQtbGFuZ3VhZ2UtY2FzZS1pbnNlbnNpdGl2aXR5Lmh0bWwKaW5kZXggYjk3NWJmMzFlZDJj
NDFjN2NhYTk5NDhjYTZkOWQ3Yjk2NDIwNDQ2YS4uZGQ3YWEzZjJmMDZkNTZjMTI1ZWQ4MGUwZGNi
NWY1ZmE1ZGQyNGU1ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQt
bGFuZ3VhZ2UtY2FzZS1pbnNlbnNpdGl2aXR5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90
ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtY2FzZS1pbnNlbnNpdGl2aXR5Lmh0bWwKQEAgLTEyLDE1ICsx
MiwxMyBAQCBtYXRjaGluZyBvZiB0aGUgaHR0cC1lcXVpdiBhdHRyaWJ1dGUgdG8gdGhlIGNvbnRl
bnQtbGFuZ3VhZ2Ugc3RhdGUgaXMgY2FzZQogaW5zZW5zaXRpdmUuCiA8L3A+CiA8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxkaXYgaWQ9IngxIi8+Cis8ZGl2IGlkPSJ4Ij48L2Rpdj4KIDxzY3Jp
cHQ+CiBmdW5jdGlvbiBsYW5ndWFnZU9mTm9kZShpZCkgewogICAgIHZhciBlbGVtZW50ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOwogICAgIHJldHVybiB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShlbGVtZW50KS53ZWJraXRMb2NhbGU7CiB9Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoImxh
bmd1YWdlT2ZOb2RlKCd4MScpIiwgImphLUpQIik7Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQg
PSB0cnVlOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneCcpIiwgImph
LUpQIik7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC9jb250ZW50LWxhbmd1YWdlLWVtcHR5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWVtcHR5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4w
ZDI3ZjU5ZGFiOGYyZGNlYjE0MDUxZTdlODZmZTRmODk4NDkzNjZmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtZW1wdHktZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsOCBAQAorVGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJViBj
b250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0
ZXN0cyB0aGF0IGEgY29udGVudC1sYW5ndWFnZSBvZiBlbXB0eSBzdHJpbmcgaXMgaWdub3JlZC4g
VGhpcyBleHBlY3RhdGlvbiBtYXkgY2hhbmdlLCBzZWUgYnVnLiBIVE1MNSBkZWNyZWVzIHRoYXQg
dGhlIG1ldGEgZWxlbWVudCBiZSBpZ25vcmVkIGluIGNhc2Ugb2YgdGhlIGVtcHR5IHN0cmluZy4g
SXQncyB1bmNsZWFyIHdoYXQgb3RoZXIgYnJvd3NlcnMgZG8uCisKK0ZBSUwgbGFuZ3VhZ2VPZk5v
ZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzICcnLgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScp
IGlzICJhciIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1l
bXB0eS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtZW1wdHku
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jMDQzYTE4ZmY4ZWY1ZmRiODhmZmMyNGRlM2FhZWVkNjY1MDcyMjVm
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3Vh
Z2UtZW1wdHkuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0cC1l
cXVpdj0iY29udGVudC1sYW5ndWFnZSIgY29udGVudD0iIj4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3Jj
PSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzY3MDEiPmJ1ZyA3NjcwMTwvYT46CittYXAgSFRUUC1FUVVJViBjb250ZW50LWxh
bmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cwordGhh
dCBhIGNvbnRlbnQtbGFuZ3VhZ2Ugb2YgZW1wdHkgc3RyaW5nIGlzIGlnbm9yZWQuIFRoaXMgZXhw
ZWN0YXRpb24gbWF5CitjaGFuZ2UsIHNlZSBidWcuIEhUTUw1IGRlY3JlZXMgdGhhdCB0aGUgbWV0
YSBlbGVtZW50IGJlIGlnbm9yZWQgaW4gY2FzZSBvZiB0aGUKK2VtcHR5IHN0cmluZy4gSXQncyB1
bmNsZWFyIHdoYXQgb3RoZXIgYnJvd3NlcnMgZG8uCis8L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KKzxkaXYgaWQ9IngiPjwvZGl2PgorPGRpdiBpZD0ieSIgbGFuZz0iYXIiPjwvZGl2Pgor
PHNjcmlwdD4KK2Z1bmN0aW9uIGxhbmd1YWdlT2ZOb2RlKGlkKSB7CisgICAgdmFyIGVsZW1lbnQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7CisgICAgcmV0dXJuIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGVsZW1lbnQpLndlYmtpdExvY2FsZTsKK30KK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZygibGFuZ3VhZ2VPZk5vZGUoJ3gnKSIsICJhdXRvIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmco
Imxhbmd1YWdlT2ZOb2RlKCd5JykiLCAiYXIiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtbGF0
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1s
YXRlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NWQ0MjczN2RmMTg4NGRlN2M3OWJhMDBjYWIy
NzVlNjQyNDlkZjg1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2Nv
bnRlbnQtbGFuZ3VhZ2UtbGF0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZv
ciBidWcgNzY3MDE6IG1hcCBIVFRQLUVRVUlWIGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1s
b2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzIHRoYXQgYSBjb250ZW50LWxhbmd1YWdl
IGlzIHVzZWQgZXZlbiBpZiBpdCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGRvY3VtZW50LiBU
aGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuIEFjY29yZGluZyB0byB0aGUgSFRN
TCA1IHNwZWMsIGEgbWV0YSBlbGVtZW50IHNob3VsZCBiZSBwcm9jZXNzZWQgd2hlbiBpdCBpcyBp
bnNlcnRlZCBpbnRvIHRoZSBkb2N1bWVudCwgcmVnYXJkbGVzcyBvZiB3aGVyZS4gSUUgYW5kIEZp
cmVmb3ggYWxzbyBzZWVtIHRvIHByb2Nlc3MgdGhlIGNvbnRlbnQtbGFuZ3VhZ2UgYXQgdGhlIGVu
ZCBvZiB0aGUgZG9jdW1lbnQuCisKK0ZBSUwgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUg
amEtSlAuIFdhcyBhdXRvLgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1sYXRlLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1sYXRlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YjVjN2QzZTE2NWU2OWNjMjM5NTU2NzI3YzQ4MmIzMjkzZDhiZTQ4NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWxhdGUuaHRtbApAQCAt
MCwwICsxLDMwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRl
c3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
NjcwMSI+YnVnIDc2NzAxPC9hPjoKK21hcCBIVFRQLUVRVUlWIGNvbnRlbnQtbGFuZ3VhZ2UgdG8g
LXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzCit0aGF0IGEgY29udGVu
dC1sYW5ndWFnZSBpcyB1c2VkIGV2ZW4gaWYgaXQgYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBk
b2N1bWVudC4KK1RoaXMgZXhwZWN0YXRpb24gbWF5IGNoYW5nZSwgc2VlIGJ1Zy4gIEFjY29yZGlu
ZyB0byB0aGUgSFRNTCA1IHNwZWMsIGEgbWV0YQorZWxlbWVudCBzaG91bGQgYmUgcHJvY2Vzc2Vk
IHdoZW4gaXQgaXMgaW5zZXJ0ZWQgaW50byB0aGUgZG9jdW1lbnQsIHJlZ2FyZGxlc3MKK29mIHdo
ZXJlLiBJRSBhbmQgRmlyZWZveCBhbHNvIHNlZW0gdG8gcHJvY2VzcyB0aGUgY29udGVudC1sYW5n
dWFnZSBhdCB0aGUgZW5kCitvZiB0aGUgZG9jdW1lbnQuCis8L3A+Cis8ZGl2IGlkPSJjb25zb2xl
Ij48L2Rpdj4KKzxkaXYgaWQ9IngiPjwvZGl2PgorPGRpdiBpZD0ieSIgbGFuZz0iYXIiPjwvZGl2
PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxhbmd1YWdlT2ZOb2RlKGlkKSB7CisgICAgdmFyIGVsZW1l
bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7CisgICAgcmV0dXJuIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGVsZW1lbnQpLndlYmtpdExvY2FsZTsKK30KK3Nob3VsZEJlRXF1YWxUb1N0
cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3gnKSIsICJqYS1KUCIpOworc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJsYW5ndWFnZU9mTm9kZSgneScpIiwgImFyIik7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzxtZXRhIGh0dHAt
ZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9ImphLUpQIj4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW1h
cHBlZC10by13ZWJraXQtbG9jYWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC9jb250ZW50LWxhbmd1YWdlLW1hcHBlZC10by13ZWJraXQtbG9jYWxlLWV4cGVjdGVkLnR4dApp
bmRleCA3Yzc5MDc4MDg0MDIwMDU4YzI0NDE3NmZjOWU0NmQ0NzhmOGE4YTFhLi42NmJhODNhYzc0
YjRhNTM0ZDNmYmQxNmNmM2RiMWI2NDk3Y2M0NmMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtbWFwcGVk
LXRvLXdlYmtpdC1sb2NhbGUtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogVGVzdCBmb3Ig
YnVnIDc2NzAxOiBtYXAgY29udGVudC1sYW5ndWFnZSB0byAtd2Via2l0LWxvY2FsZS4KIAotUEFT
UyBsYW5ndWFnZU9mTm9kZSgneDEnKSBpcyAiemgtQ04iCi1QQVNTIGxhbmd1YWdlT2ZOb2RlKCdt
MScpIGlzICJhciIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBpcyAiemgtQ04iCitQQVNTIGxh
bmd1YWdlT2ZOb2RlKCd5JykgaXMgImFyIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29u
dGVudC1sYW5ndWFnZS1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtbWFwcGVkLXRvLXdlYmtpdC1sb2NhbGUuaHRtbApp
bmRleCBiYjYxZWExMDc3OTAzMGQ0ZTNlZGU0NTYxMGVlMTBjOWU0ZjU0OTFhLi45ZmYwZmQ2OTg3
MmM5NjRjZDhhN2ZjYjRjNzRlZGJiYzg0MDMwZGFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW1hcHBlZC10by13ZWJr
aXQtbG9jYWxlLmh0bWwKQEAgLTksMTcgKzksMTUgQEAKIDxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjcwMSI+YnVnIDc2NzAxPC9h
PjoKIG1hcCBjb250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLjwvcD4KIDxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgotPGRpdiBpZD0ieDEiLz4KLTxkaXYgbGFuZz0iYXIiIGlkPSJtMSIv
PgorPGRpdiBpZD0ieCI+PC9kaXY+Cis8ZGl2IGlkPSJ5IiBsYW5nPSJhciI+PC9kaXY+CiA8c2Ny
aXB0PgogZnVuY3Rpb24gbGFuZ3VhZ2VPZk5vZGUoaWQpIHsKICAgICB2YXIgZWxlbWVudCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKICAgICByZXR1cm4gd2luZG93LmdldENvbXB1dGVk
U3R5bGUoZWxlbWVudCkud2Via2l0TG9jYWxlOwogfQotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJs
YW5ndWFnZU9mTm9kZSgneDEnKSIsICJ6aC1DTiIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJs
YW5ndWFnZU9mTm9kZSgnbTEnKSIsICJhciIpOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3gnKSIsICJ6aC1D
TiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneScpIiwgImFyIik7
CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9j
b250ZW50LWxhbmd1YWdlLW11bHRpcGxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC9jb250ZW50LWxhbmd1YWdlLW11bHRpcGxlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
OTgxZWY4NzI1YmMyZTAzYzdiZTczMzY4MDZiMzFjMmY3NTg0MWY3Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtbXVsdGlwbGUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorVGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJ
ViBjb250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVz
dCB0ZXN0cyB0aGF0IGluIHRoZSBldmVudCBvZiBtdWx0aXBsZSBjb250ZW50LWxhbmd1YWdlcywg
dGhlIGZpbmFsIGNvbnRlbnQtbGFuZ3VhZ2UgaXMgdXNlZCBhcyB0aGUgcHJhZ21hLXNldCBkZWZh
dWx0IGxhbmd1YWdlLiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuIFRoZSBI
VE1MNSBzcGVjIGRlY3JlZXMgdGhhdCB0aGUgZmlyc3Qgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZCBv
bmUgYmUgdXNlZC4gRmlyZWZveCBhbmQgSUUgc2VlbSB0byB1c2UgdGhlIGZpbmFsIG9uZS4KKwor
UEFTUyBsYW5ndWFnZU9mTm9kZSgneCcpIGlzICJ6aF9DTiIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUo
J3knKSBpcyAiYXIiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3Vh
Z2UtbXVsdGlwbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdl
LW11bHRpcGxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRlYTYzY2FkZmQ3ZjYyMjA4ZjAzZmE5Y2JjOTRl
YWFhOTFjMmU1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250
ZW50LWxhbmd1YWdlLW11bHRpcGxlLmh0bWwKQEAgLTAsMCArMSwzMSBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4K
KzxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNvbnRlbnQ9IiAgICI+Cis8bWV0
YSBodHRwLWVxdWl2PSJjb250ZW50LWxhbmd1YWdlIiBjb250ZW50PSJqYV9KUCI+Cis8bWV0YSBo
dHRwLWVxdWl2PSJjb250ZW50LWxhbmd1YWdlIiBjb250ZW50PSJ6aF9DTiI+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8
c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc2NzAxIj5idWcgNzY3MDE8L2E+OgorbWFwIEhUVFAtRVFVSVYg
Y29udGVudC1sYW5ndWFnZSB0byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0aWN1bGFyIHRlc3Qg
dGVzdHMKK3RoYXQgaW4gdGhlIGV2ZW50IG9mIG11bHRpcGxlIGNvbnRlbnQtbGFuZ3VhZ2VzLCB0
aGUgZmluYWwgY29udGVudC1sYW5ndWFnZSBpcwordXNlZCBhcyB0aGUgcHJhZ21hLXNldCBkZWZh
dWx0IGxhbmd1YWdlLiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuCitUaGUg
SFRNTDUgc3BlYyBkZWNyZWVzIHRoYXQgdGhlIGZpcnN0IHN1Y2Nlc3NmdWxseSBwcm9jZXNzZWQg
b25lIGJlIHVzZWQuCitGaXJlZm94IGFuZCBJRSBzZWVtIHRvIHVzZSB0aGUgZmluYWwgb25lLgor
PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8ZGl2IGlkPSJ4IiBsYW5nPSJ6aF9DTiI+
PC9kaXY+Cis8ZGl2IGlkPSJ5IiBsYW5nPSJhciI+PC9kaXY+Cis8c2NyaXB0PgorZnVuY3Rpb24g
bGFuZ3VhZ2VPZk5vZGUoaWQpIHsKKyAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKGlkKTsKKyAgICByZXR1cm4gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCku
d2Via2l0TG9jYWxlOworfQorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgn
eCcpIiwgInpoX0NOIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd5
JykiLCAiYXIiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2Utbm8tY29udGVudC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1uby1jb250ZW50LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iODhkYzkyZmMwZjU4MjczY2U4OGQ1NDBjOGQyZjY4YThk
NDBkMzFmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQt
bGFuZ3VhZ2Utbm8tY29udGVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZv
ciBidWcgNzY3MDE6IG1hcCBIVFRQLUVRVUlWIGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1s
b2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzIHRoYXQgYSBjb250ZW50LWxhbmd1YWdl
IHdpdGggbWlzc2luZyBjb250ZW50IGlzIGVmZmVjdGl2ZWx5IGlnbm9yZWQuIFRoaXMgZXhwZWN0
YXRpb24gbWF5IGNoYW5nZSwgc2VlIGNvbW1lbnRzIGluIGJ1Zy4KKworUEFTUyBsYW5ndWFnZU9m
Tm9kZSgneCcpIGlzICJhdXRvIgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1uby1jb250ZW50Lmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1uby1jb250ZW50Lmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uODgzOWIyMmM2NzIwZjRhYTJjMGQ0MGRlZGM5NGVhZGE5YzE3Mjc3ZAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdl
LW5vLWNvbnRlbnQuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0
cC1lcXVpdj0iY29udGVudC1sYW5ndWFnZSI+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHA+
VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTc2NzAxIj5idWcgNzY3MDE8L2E+OgorbWFwIEhUVFAtRVFVSVYgY29udGVudC1sYW5ndWFnZSB0
byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0aWN1bGFyIHRlc3QgdGVzdHMgdGhhdAorYSBjb250
ZW50LWxhbmd1YWdlIHdpdGggbWlzc2luZyBjb250ZW50IGlzIGVmZmVjdGl2ZWx5IGlnbm9yZWQu
IFRoaXMgZXhwZWN0YXRpb24KK21heSBjaGFuZ2UsIHNlZSBjb21tZW50cyBpbiBidWcuCis8L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxkaXYgaWQ9IngiPjwvZGl2PgorPGRpdiBpZD0i
eSIgbGFuZz0iYXIiPjwvZGl2PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxhbmd1YWdlT2ZOb2RlKGlk
KSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7CisgICAg
cmV0dXJuIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLndlYmtpdExvY2FsZTsKK30K
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3gnKSIsICJhdXRvIik7Citz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd5JykiLCAiYXIiKTsKKzwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0
L2NvbnRlbnQtbGFuZ3VhZ2Utb25seS13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW9ubHktd2hpdGVzcGFjZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNWQxNDUwODlkN2M5ODY4MTVkZWM5YjkwZDE1ODY4NmE4MDkxOWQ4OQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdl
LW9ubHktd2hpdGVzcGFjZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitUZXN0IGZvciBi
dWcgNzY3MDE6IG1hcCBIVFRQLUVRVUlWIGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1sb2Nh
bGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzIHRoYXQgYSBjb250ZW50LWxhbmd1YWdlIHdp
dGggd2hpdGVzcGFjZS1vbmx5IGNvbnRlbnQgaXMgaWdub3JlZC4gVGhpcyBleHBlY3RhdGlvbiBt
YXkgY2hhbmdlLCBzZWUgYnVnLiBIVE1MNSBkZWNyZWVzIHRoYXQgdGhlIG1ldGEgZWxlbWVudCBi
ZSBpZ25vcmVkIGluIGNhc2Ugb2Ygd2hpdGVzcGFjZSBvbmx5IGNvbnRlbnQuIEl0J3MgdW5jbGVh
ciB3aGF0IG90aGVyIGJyb3dzZXJzIGRvLgorCitGQUlMIGxhbmd1YWdlT2ZOb2RlKCd4Jykgc2hv
dWxkIGJlIGF1dG8uIFdhcyAnICBcOVxhICAnLgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlz
ICJhciIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1vbmx5
LXdoaXRlc3BhY2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdl
LW9ubHktd2hpdGVzcGFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg4ZTgyZWRiZGE0OGE1MjMyYjczZTk5
NGQ5ZDBiNmUxYjUwNTc1Y2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Rl
eHQvY29udGVudC1sYW5ndWFnZS1vbmx5LXdoaXRlc3BhY2UuaHRtbApAQCAtMCwwICsxLDI4IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC1sYW5ndWFnZSIgY29udGVu
dD0iICAJCisgIj4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5UZXN0IGZvciA8YSBocmVm
PSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzY3MDEiPmJ1ZyA3Njcw
MTwvYT46CittYXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxl
LiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cwordGhhdCBhIGNvbnRlbnQtbGFuZ3VhZ2Ugd2l0
aCB3aGl0ZXNwYWNlLW9ubHkgY29udGVudCBpcyBpZ25vcmVkLiBUaGlzCitleHBlY3RhdGlvbiBt
YXkgY2hhbmdlLCBzZWUgYnVnLiBIVE1MNSBkZWNyZWVzIHRoYXQgdGhlIG1ldGEgZWxlbWVudCBi
ZSBpZ25vcmVkCitpbiBjYXNlIG9mIHdoaXRlc3BhY2Ugb25seSBjb250ZW50LiAgSXQncyB1bmNs
ZWFyIHdoYXQgb3RoZXIgYnJvd3NlcnMgZG8uPC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8ZGl2IGlkPSJ4Ij48L2Rpdj4KKzxkaXYgaWQ9InkiIGxhbmc9ImFyIj48L2Rpdj4KKzxzY3Jp
cHQ+CitmdW5jdGlvbiBsYW5ndWFnZU9mTm9kZShpZCkgeworICAgIHZhciBlbGVtZW50ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOworICAgIHJldHVybiB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShlbGVtZW50KS53ZWJraXRMb2NhbGU7Cit9CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxh
bmd1YWdlT2ZOb2RlKCd4JykiLCAiYXV0byIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5n
dWFnZU9mTm9kZSgneScpIiwgImFyIik7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLXdpdGgtd2hp
dGVzcGFjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5n
dWFnZS13aXRoLXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJhMDFjNzJmYjRj
MTQzZDYwYjEzZGJiZjQ3ZGIzMDhjM2NjYTUyZjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS13aXRoLXdoaXRlc3BhY2UtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsOCBAQAorVGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJViBj
b250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0
ZXN0cyB0aGF0IHRoZSB0aGUgcHJhZ21hLXNldCBkZWZhdWx0IGxhbmd1YWdlIGlzIHNldCB0byB0
aGUgZmlyc3Qgc2VxdWVuY2Ugb2Ygbm9uLXdoaXRlc3BhY2UgY2hhcmFjdGVycyBvZiB0aGUgY29u
dGVudC1sYW5ndWFnZSBjb250ZW50LiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBi
dWcuIFRoaXMgZXhwZWN0YXRpb24gaXMgYXMgcGVyIHRoZSBIVE1MIDUgc3BlYy4gSXQgYXBwZWFy
cyB0aGF0IEZpcmVmb3ggZG9lcyBub3QgZXhhY3RseSBkbyB0aGlzLCBidXQgdHJpbXMgdGhlIGxl
YWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIEl0J3MgdW5jbGVhciB3aGF0IElFIGRvZXMu
CisKK0ZBSUwgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgamFfSlAuIFdhcyAnICBcYVw5
XDlqYS1KUCAgIFw5ICB6aF9DTiBcOVxhXGFcOVw5Jy4KK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3kn
KSBpcyAiYXIiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2Ut
d2l0aC13aGl0ZXNwYWNlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5n
dWFnZS13aXRoLXdoaXRlc3BhY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hODY1OGU3Y2NmOTkzNThmYmQ1
ODExYjY0ZWNmZTk3YWQ5ODc5NWI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2Utd2l0aC13aGl0ZXNwYWNlLmh0bWwKQEAgLTAsMCArMSwz
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtbGFuZ3VhZ2UiIGNv
bnRlbnQ9IiAgCisJCWphLUpQICAgCSB6aF9DTiAJCisKKwkJIj4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQg
c3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzY3MDEiPmJ1ZyA3NjcwMTwvYT46CittYXAgSFRUUC1FUVVJViBjb250ZW50
LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cwor
dGhhdCB0aGUgdGhlIHByYWdtYS1zZXQgZGVmYXVsdCBsYW5ndWFnZSBpcyBzZXQgdG8gdGhlIGZp
cnN0IHNlcXVlbmNlIG9mCitub24td2hpdGVzcGFjZSBjaGFyYWN0ZXJzIG9mIHRoZSBjb250ZW50
LWxhbmd1YWdlIGNvbnRlbnQuIFRoaXMgZXhwZWN0YXRpb24gbWF5CitjaGFuZ2UsIHNlZSBidWcu
IFRoaXMgZXhwZWN0YXRpb24gaXMgYXMgcGVyIHRoZSBIVE1MIDUgc3BlYy4gSXQgYXBwZWFycyB0
aGF0CitGaXJlZm94IGRvZXMgbm90IGV4YWN0bHkgZG8gdGhpcywgYnV0IHRyaW1zIHRoZSBsZWFk
aW5nIGFuZCB0cmFpbGluZword2hpdGVzcGFjZS4gIEl0J3MgdW5jbGVhciB3aGF0IElFIGRvZXMu
Cis8L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxkaXYgaWQ9IngiPjwvZGl2PgorPGRp
diBpZD0ieSIgbGFuZz0iYXIiPjwvZGl2PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxhbmd1YWdlT2ZO
b2RlKGlkKSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7
CisgICAgcmV0dXJuIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLndlYmtpdExvY2Fs
ZTsKK30KK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3gnKSIsICJqYV9K
UCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneScpIiwgImFyIik7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126238</attachid>
            <date>2012-02-08 22:00:37 -0800</date>
            <delta_ts>2012-02-09 01:50:23 -0800</delta_ts>
            <desc>tests for dynamic changes and comma-separated list</desc>
            <filename>bug-77724-20120209150035.patch</filename>
            <type>text/plain</type>
            <size>14348</size>
            <attacher name="Matt Falkenhagen">falken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3MTYyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODMwYmNiNDgzYjBmZDAxZWJiZjk0
YjMzOTBmNzFmZDFhMmMxZjkwYy4uMWNiNTJjZWZkODNlNzQ5ZDk4NDBmYzIzYzQ4NmI3OTFiNWIy
ZTlhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTA4ICBNYXR0IEZhbGtlbmhhZ2Vu
ICA8ZmFsa2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXByb3ZlIGh0dHAtZXF1aXYgY29u
dGVudC1sYW5ndWFnZSBwYXJzaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03NzcyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkZCB0ZXN0cyBmb3IgbWFwcGluZyBodHRwLWVxdWl2IGNvbnRlbnQtbGFu
Z3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUgdG8gY292ZXIgZHluYW1pYyBjaGFuZ2VzIHRvIHRoZSBt
ZXRhCisgICAgICAgIGVsZW1lbnQgYW5kIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgbGFuZ3Vh
Z2VzLiBUaGUgZGVzaXJlZCBiZWhhdmlvciBvZiBzb21lIG9mIHRoZXNlIGlzIG5vdCB5ZXQgZGVj
aWRlZCwgc28KKyAgICAgICAgc29tZSBvZiB0aGUgdGVzdHMgY3VycmVudGx5IGZhaWwgYW5kIHRo
ZSBleHBlY3RhdGlvbnMgbWF5IGNoYW5nZS4gU2VlIGNvbW1lbnRzIGluIGJ1ZyBhbmQgaW4gdGhl
IHRlc3RzLgorCisgICAgICAgICogZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2Vw
YXJhdGVkLWxpc3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3RleHQvY29u
dGVudC1sYW5ndWFnZS1jb21tYS1zZXBhcmF0ZWQtbGlzdC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1hZGRlZC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWR5bmFtaWNh
bGx5LWFkZGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1
YWdlLWR5bmFtaWNhbGx5LWNoYW5nZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1jaGFuZ2VkLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWR5bmFtaWNhbGx5LXJlbW92
ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3RleHQvY29udGVudC1sYW5n
dWFnZS1keW5hbWljYWxseS1yZW1vdmVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4
dC9jb250ZW50LWxhbmd1YWdlLW11bHRpcGxlLmh0bWw6IEZpeCB0byBhY3R1YWxseSB0ZXN0IGh0
dHAtZXF1aXYgY29udGVudC1sYW5ndWFnZS4KKwogMjAxMi0wMi0wOCAgSWdvciBPbGl2ZWlyYSAg
PGlnb3Iub0BzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIEltcGxlbWVudCByZXZlcnNlIGFu
aW1hdGlvbiBkaXJlY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250
ZW50LWxhbmd1YWdlLWNvbW1hLXNlcGFyYXRlZC1saXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWNvbW1hLXNlcGFyYXRlZC1saXN0LWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5hNDc3NDg0MjA4OTQ4M2MwMjU2N2I1ZmVlMWY4ZmU2NDZlY2Zi
ZDNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFu
Z3VhZ2UtY29tbWEtc2VwYXJhdGVkLWxpc3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAor
VGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1YWdlIHRvIC13
ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IGEgY29tbWEtc2Vw
YXJhdGVkIGxpc3Qgb2YgbGFuZ3VhZ2VzIGlzIGlnbm9yZWQuIFRoaXMgZXhwZWN0YXRpb24gbWF5
IGNoYW5nZSwgc2VlIGJ1Zy4gVGhlIEhUTUw1IHNwZWMgc2F5cyB0aGF0IGNvbnRlbnQtbGFuZ3Vh
Z2Ugc2hvdWxkIG5vdCBoYXZlIG11bHRpcGxlIGxhbmd1YWdlcywgYW5kIGRlY3JlZXMgdGhhdCBh
IGNvbnRlbnQtbGFuZ3VhZ2UgY29udGFpbmluZyBhIGNvbW1hIGJlIGlnbm9yZWQ7IHRoaXMgcG9z
aXRpb24gaGFzIGJlZW4gdXBoZWxkIGZvbGxvd2luZyBzaWduaWZpY2FudCBkZWJhdGUuIEZpcmVm
b3ggYWNjZXB0cyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGFuZCBhIENTUyA6bGFuZyBzZWxlY3Rv
ciBmb3IgYW55IGxhbmd1YWdlIGluIHRoZSBsaXN0IGlzIG1hdGNoZWQuIEl0J3MgdW5jbGVhciB3
aGF0IElFIGRvZXMuCisKK0ZBSUwgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4g
V2FzICdqYSwgemhfQ04nLgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1jb21tYS1zZXBhcmF0ZWQt
bGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEt
c2VwYXJhdGVkLWxpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44N2FkN2MyZjI4ZDMyNTVmNjQxZmZmZmE1
Njc0ZTYxZDFjYTNkNTk4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0
L2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2VwYXJhdGVkLWxpc3QuaHRtbApAQCAtMCwwICsxLDMz
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJj
b250ZW50LWxhbmd1YWdlIiBjb250ZW50PSJqYSwgemhfQ04iPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBz
cmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03NjcwMSI+YnVnIDc2NzAxPC9hPjoKK21hcCBIVFRQLUVRVUlWIGNvbnRlbnQt
bGFuZ3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzCit0
aGF0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgbGFuZ3VhZ2VzIGlzIGlnbm9yZWQuIFRoaXMg
ZXhwZWN0YXRpb24gbWF5CitjaGFuZ2UsIHNlZSBidWcuICBUaGUgSFRNTDUgc3BlYyBzYXlzIHRo
YXQgY29udGVudC1sYW5ndWFnZSBzaG91bGQgbm90IGhhdmUKK211bHRpcGxlIGxhbmd1YWdlcywg
YW5kIGRlY3JlZXMgdGhhdCBhIGNvbnRlbnQtbGFuZ3VhZ2UgY29udGFpbmluZyBhIGNvbW1hIGJl
CitpZ25vcmVkOyB0aGlzIDxhCitocmVmPSJodHRwOi8vbGlzdHMudzMub3JnL0FyY2hpdmVzL1B1
YmxpYy9wdWJsaWMtaHRtbC8yMDExTWFyLzAzOTguaHRtbCI+cG9zaXRpb24gaGFzCitiZWVuIHVw
aGVsZDwvYT4gZm9sbG93aW5nIHNpZ25pZmljYW50IGRlYmF0ZS4gRmlyZWZveCBhY2NlcHRzIGEK
K2NvbW1hLXNlcGFyYXRlZCBsaXN0IGFuZCBhIENTUyA6bGFuZyBzZWxlY3RvciBmb3IgYW55IGxh
bmd1YWdlIGluIHRoZSBsaXN0IGlzCittYXRjaGVkLiBJdCdzIHVuY2xlYXIgd2hhdCBJRSBkb2Vz
LgorPC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8ZGl2IGlkPSJ4Ij48L2Rpdj4KKzxk
aXYgaWQ9InkiIGxhbmc9ImFyIj48L2Rpdj4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsYW5ndWFnZU9m
Tm9kZShpZCkgeworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQp
OworICAgIHJldHVybiB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS53ZWJraXRMb2Nh
bGU7Cit9CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd4JykiLCAiYXV0
byIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneScpIiwgImFyIik7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWR5bmFtaWNhbGx5LWFkZGVkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLWR5bmFtaWNhbGx5LWFkZGVk
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMjk3ODQ2ODg1YzM3ZmQ2NjIwYTgzNWEyYjllMzU5
MmNjOTVmNDNmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRl
bnQtbGFuZ3VhZ2UtZHluYW1pY2FsbHktYWRkZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAg
QEAKK1Rlc3QgZm9yIGJ1ZyA3NjcwMTogbWFwIGh0dHAtZXF1aXYgY29udGVudC1sYW5ndWFnZSB0
byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0aWN1bGFyIHRlc3QgdGVzdHMgdGhhdCBhIGR5bmFt
aWNhbGx5IGFkZGVkIGNvbnRlbnQtbGFuZ3VhZ2UgaXMgcHJvY2Vzc2VkLiBUaGlzIGV4cGVjdGF0
aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuIFRoZSBIVE1MIDUgc3BlYyBkZWNyZWVzIHRoYXQgaHR0
cC1lcXVpdiBjb250ZW50LWxhbmd1YWdlIGJlIHByb2Nlc3NlZCB3aGVuIGl0IGlzIGluc2VydGVk
IGludG8gdGhlIGRvY3VtZW50LiBJbiBGaXJlZm94IGFuZCBJRSBhZGRpbmcgdGhlIG1ldGEgZWxl
bWVudCBkeW5hbWljYWxseSBkb2Vzbid0IHNlZW0gdG8gYWZmZWN0IHRoZSBwYWdlLCBidXQgaW4g
RmlyZWZveCB0aGUgbWV0YSBjb250ZW50LWxhbmd1YWdlIGRpc3BsYXllZCBpbiAiUGFnZSBJbmZv
cm1hdGlvbiIgaXMgYWZmZWN0ZWQuCisKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBpcyAiYXV0
byIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3knKSBpcyAiYXIiCitQQVNTIGxhbmd1YWdlT2ZOb2Rl
KCd4JykgaXMgImphIgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1hZGRlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtZHluYW1pY2FsbHkt
YWRkZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZGZmNzRmMmFhZDIxODZiMjY2Y2ViNGJhODNjNTRmMTI4
YjFkYWRkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQt
bGFuZ3VhZ2UtZHluYW1pY2FsbHktYWRkZWQuaHRtbApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQgaWQ9ImhlYWQiPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9
Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03NjcwMSI+YnVnIDc2NzAxPC9hPjoKK21hcCBodHRwLWVxdWl2IGNvbnRlbnQtbGFu
Z3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzCit0aGF0
IGEgZHluYW1pY2FsbHkgYWRkZWQgY29udGVudC1sYW5ndWFnZSBpcyBwcm9jZXNzZWQuIFRoaXMg
ZXhwZWN0YXRpb24gbWF5CitjaGFuZ2UsIHNlZSBidWcuIFRoZSBIVE1MIDUgc3BlYyBkZWNyZWVz
IHRoYXQgaHR0cC1lcXVpdiBjb250ZW50LWxhbmd1YWdlIGJlCitwcm9jZXNzZWQgd2hlbiBpdCBp
cworPGEgaHJlZj0iaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI2lu
c2VydC1hbi1lbGVtZW50LWludG8tYS1kb2N1bWVudCI+aW5zZXJ0ZWQgaW50byB0aGUgZG9jdW1l
bnQ8L2E+LgorSW4gRmlyZWZveCBhbmQgSUUgYWRkaW5nIHRoZSBtZXRhIGVsZW1lbnQgZHluYW1p
Y2FsbHkgZG9lc24ndCBzZWVtIHRvIGFmZmVjdAordGhlIHBhZ2UsIGJ1dCBpbiBGaXJlZm94IHRo
ZSBtZXRhIGNvbnRlbnQtbGFuZ3VhZ2UgZGlzcGxheWVkIGluICJQYWdlCitJbmZvcm1hdGlvbiIg
aXMgYWZmZWN0ZWQuCis8L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxkaXYgaWQ9Ingi
PjwvZGl2PgorPGRpdiBpZD0ieSIgbGFuZz0iYXIiPjwvZGl2PgorPHNjcmlwdD4KK2Z1bmN0aW9u
IGxhbmd1YWdlT2ZOb2RlKGlkKSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZChpZCk7CisgICAgcmV0dXJuIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQp
LndlYmtpdExvY2FsZTsKK30KK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUo
J3gnKSIsICJhdXRvIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd5
JykiLCAiYXIiKTsKKwordmFyIG1ldGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJtZXRhIik7
CittZXRhLmh0dHBFcXVpdiA9ICJjb250ZW50LWxhbmd1YWdlIjsKK21ldGEuY29udGVudCA9ICJq
YSI7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaGVhZCIpLmFwcGVuZENoaWxkKG1ldGEpOwor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneCcpIiwgImphIik7CitzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd5JykiLCAiYXIiKTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2Nv
bnRlbnQtbGFuZ3VhZ2UtZHluYW1pY2FsbHktY2hhbmdlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1jaGFuZ2VkLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41NWZhZWM2NjZiOWM5OGFjY2UzOTljYmYzYjZmNDM2OGRjMjVh
YzY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFu
Z3VhZ2UtZHluYW1pY2FsbHktY2hhbmdlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAor
VGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgaHR0cC1lcXVpdiBjb250ZW50LWxhbmd1YWdlIHRvIC13
ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IGR5bmFtaWMgY2hh
bmdlcyB0byB0aGUgbWV0YSBlbGVtZW50IGhhdmUgbm8gZWZmZWN0LiBUaGlzIGV4cGVjdGF0aW9u
IG1heSBjaGFuZ2UsIHNlZSBidWcuIFRoZSBIVE1MIDUgc3BlYyBkZWNyZWVzIHRoYXQgdGhlIHBy
YWdtYS1zZXQgZGVmYXVsdCBsYW5ndWFnZSBiZSBzZXQgb25seSB3aGVuIHRoZSBtZXRhIGVsZW1l
bnQgaXMgaW5zZXJ0ZWQgaW50byB0aGUgZG9jdW1lbnQuIEluIEZpcmVmb3ggYW5kIElFIGNoYW5n
aW5nIHRoZSBlbGVtZW50IGR5bmFtaWNhbGx5IGRvZXNuJ3Qgc2VlbSB0byBhZmZlY3QgdGhlIHBh
Z2UsIGJ1dCBpbiBGaXJlZm94IHRoZSBtZXRhIGNvbnRlbnQtbGFuZ3VhZ2UgZGlzcGxheWVkIGlu
ICJQYWdlIEluZm9ybWF0aW9uIiBpcyBhZmZlY3RlZC4KKworUEFTUyBsYW5ndWFnZU9mTm9kZSgn
eCcpIGlzICJ6aCIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3knKSBpcyAiYXIiCitGQUlMIGxhbmd1
YWdlT2ZOb2RlKCd4Jykgc2hvdWxkIGJlIHpoLiBXYXMgamEuCitQQVNTIGxhbmd1YWdlT2ZOb2Rl
KCd5JykgaXMgImFyIgorRkFJTCBsYW5ndWFnZU9mTm9kZSgneCcpIHNob3VsZCBiZSB6aC4gV2Fz
IGphLgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK0ZBSUwgbGFuZ3VhZ2VPZk5v
ZGUoJ3gnKSBzaG91bGQgYmUgemguIFdhcyBqYS4KK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3knKSBp
cyAiYXIiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtZHlu
YW1pY2FsbHktY2hhbmdlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L2NvbnRlbnQtbGFu
Z3VhZ2UtZHluYW1pY2FsbHktY2hhbmdlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYzY2Q0NTFmMDJiMDY2
YTVjNmMwNmE1YWI0MzdiOGFmMzAxMGZiMTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1jaGFuZ2VkLmh0bWwKQEAg
LTAsMCArMSw0NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgaWQ9
InRhcmdldCIgaHR0cC1lcXVpdj0iY29udGVudC1sYW5ndWFnZSIgY29udGVudD0iemgiPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjcwMSI+YnVnIDc2NzAxPC9hPjoKK21hcCBodHRw
LWVxdWl2IGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGljdWxh
ciB0ZXN0IHRlc3RzCit0aGF0IGR5bmFtaWMgY2hhbmdlcyB0byB0aGUgbWV0YSBlbGVtZW50IGhh
dmUgbm8gZWZmZWN0LiBUaGlzIGV4cGVjdGF0aW9uIG1heQorY2hhbmdlLCBzZWUgYnVnLiBUaGUg
SFRNTCA1IHNwZWMgZGVjcmVlcyB0aGF0IHRoZSBwcmFnbWEtc2V0IGRlZmF1bHQgbGFuZ3VhZ2UK
K2JlIHNldCBvbmx5IHdoZW4gdGhlIG1ldGEgZWxlbWVudCBpcyAKKzxhIGhyZWY9Imh0dHA6Ly9k
ZXYudzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNpbnNlcnQtYW4tZWxlbWVudC1pbnRv
LWEtZG9jdW1lbnQiPmluc2VydGVkIGludG8gdGhlIGRvY3VtZW50PC9hPi4KK0luIEZpcmVmb3gg
YW5kIElFIGNoYW5naW5nIHRoZSBlbGVtZW50IGR5bmFtaWNhbGx5IGRvZXNuJ3Qgc2VlbSB0byBh
ZmZlY3QgdGhlCitwYWdlLCBidXQgaW4gRmlyZWZveCB0aGUgbWV0YSBjb250ZW50LWxhbmd1YWdl
IGRpc3BsYXllZCBpbiAiUGFnZSBJbmZvcm1hdGlvbiIKK2lzIGFmZmVjdGVkLgorPC9wPgorPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Cis8ZGl2IGlkPSJ4Ij48L2Rpdj4KKzxkaXYgaWQ9InkiIGxh
bmc9ImFyIj48L2Rpdj4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsYW5ndWFnZU9mTm9kZShpZCkgewor
ICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOworICAgIHJldHVy
biB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS53ZWJraXRMb2NhbGU7Cit9CitzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd4JykiLCAiemgiKTsKK3Nob3VsZEJl
RXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3knKSIsICJhciIpOworCit2YXIgbWV0YSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCittZXRhLmNvbnRl
bnQgPSAiamEiOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCitzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd4JykiLCAiemgiKTsKK3Nob3VsZEJlRXF1YWxU
b1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3knKSIsICJhciIpOworCittZXRhLmh0dHBFcXVpdiA9
ICJmb29iYXIiOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgneCcpIiwg
InpoIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd5JykiLCAiYXIi
KTsKKworbWV0YS5odHRwRXF1aXYgPSAiY29udGVudC1sYW5ndWFnZSI7CitzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCd4JykiLCAiemgiKTsKK3Nob3VsZEJlRXF1YWxUb1N0
cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3knKSIsICJhciIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFn
ZS1keW5hbWljYWxseS1yZW1vdmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC9jb250ZW50LWxhbmd1YWdlLWR5bmFtaWNhbGx5LXJlbW92ZWQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ3OGE3MzQ4MWViNjJhMmE1Njg0NTdkM2JlOGE4N2MwZGNmMThjZjYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWlj
YWxseS1yZW1vdmVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0IGZvciBidWcg
NzY3MDE6IG1hcCBodHRwLWVxdWl2IGNvbnRlbnQtbGFuZ3VhZ2UgdG8gLXdlYmtpdC1sb2NhbGUu
IFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzIHRoYXQgZHluYW1pY2FsbHkgcmVtb3ZpbmcgdGhl
IG1ldGEgZWxlbWVudCBoYXMgbm8gZWZmZWN0LiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2Us
IHNlZSBidWcuIFRoZSBIVE1MIDUgc3BlYyBkZWNyZWVzIHRoYXQgdGhlIHByYWdtYS1zZXQgZGVm
YXVsdCBsYW5ndWFnZSBiZSBjaGFuZ2VkIG9ubHkgd2hlbiB0aGUgbWV0YSBlbGVtZW50IGlzIGlu
c2VydGVkIGludG8gdGhlIGRvY3VtZW50LiBJbiBGaXJlZm94IGFuZCBJRSByZW1vdmluZyB0aGUg
bWV0YSBlbGVtZW50IGRvZXNuJ3Qgc2VlbSB0byBhZmZlY3QgdGhlIHBhZ2UsIGJ1dCBpbiBGaXJl
Zm94IHRoZSBtZXRhIGNvbnRlbnQtbGFuZ3VhZ2UgZGlzcGxheWVkIGluICJQYWdlIEluZm9ybWF0
aW9uIiBpcyBhZmZlY3RlZC4KKworUEFTUyBsYW5ndWFnZU9mTm9kZSgneCcpIGlzICJ6aCIKK1BB
U1MgbGFuZ3VhZ2VPZk5vZGUoJ3knKSBpcyAiYXIiCitQQVNTIGxhbmd1YWdlT2ZOb2RlKCd4Jykg
aXMgInpoIgorUEFTUyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1yZW1vdmVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1keW5hbWljYWxseS1yZW1v
dmVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZTdmNTFhZTJkZWRlMWFkNTYxNWM0NzQ0MTJiMTg3YWVjNTk4
OTkzMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxh
bmd1YWdlLWR5bmFtaWNhbGx5LXJlbW92ZWQuaHRtbApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBpZD0idGFyZ2V0IiBodHRwLWVxdWl2PSJj
b250ZW50LWxhbmd1YWdlIiBjb250ZW50PSJ6aCI+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc2NzAxIj5idWcgNzY3MDE8L2E+OgorbWFwIGh0dHAtZXF1aXYgY29udGVudC1sYW5ndWFn
ZSB0byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0aWN1bGFyIHRlc3QgdGVzdHMKK3RoYXQgZHlu
YW1pY2FsbHkgcmVtb3ZpbmcgdGhlIG1ldGEgZWxlbWVudCBoYXMgbm8gZWZmZWN0LiBUaGlzCitl
eHBlY3RhdGlvbiBtYXkgY2hhbmdlLCBzZWUgYnVnLiBUaGUgSFRNTCA1IHNwZWMgZGVjcmVlcyB0
aGF0IHRoZQorcHJhZ21hLXNldCBkZWZhdWx0IGxhbmd1YWdlIGJlIGNoYW5nZWQgb25seSB3aGVu
IHRoZSBtZXRhIGVsZW1lbnQgaXMKKzxhIGhyZWY9Imh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3Nw
ZWMvT3ZlcnZpZXcuaHRtbCNpbnNlcnQtYW4tZWxlbWVudC1pbnRvLWEtZG9jdW1lbnQiPmluc2Vy
dGVkIGludG8gdGhlIGRvY3VtZW50PC9hPi4KK0luIEZpcmVmb3ggYW5kIElFIHJlbW92aW5nIHRo
ZSBtZXRhIGVsZW1lbnQgZG9lc24ndCBzZWVtIHRvIGFmZmVjdCB0aGUgcGFnZSwKK2J1dCBpbiBG
aXJlZm94IHRoZSBtZXRhIGNvbnRlbnQtbGFuZ3VhZ2UgZGlzcGxheWVkIGluICJQYWdlIEluZm9y
bWF0aW9uIiBpcworYWZmZWN0ZWQuCis8L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxk
aXYgaWQ9IngiPjwvZGl2PgorPGRpdiBpZD0ieSIgbGFuZz0iYXIiPjwvZGl2PgorPHNjcmlwdD4K
K2Z1bmN0aW9uIGxhbmd1YWdlT2ZOb2RlKGlkKSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZChpZCk7CisgICAgcmV0dXJuIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGVsZW1lbnQpLndlYmtpdExvY2FsZTsKK30KK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3Vh
Z2VPZk5vZGUoJ3gnKSIsICJ6aCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9m
Tm9kZSgneScpIiwgImFyIik7CisKK3ZhciBtZXRhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InRhcmdldCIpOwordmFyIHBhcmVudCA9IG1ldGEucGFyZW50Tm9kZTsKK21ldGEucGFyZW50Tm9k
ZS5yZW1vdmVDaGlsZChtZXRhKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5v
ZGUoJ3gnKSIsICJ6aCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgn
eScpIiwgImFyIik7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvdGV4dC9jb250ZW50LWxhbmd1YWdlLW11bHRpcGxlLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvY29udGVudC1sYW5ndWFnZS1tdWx0aXBsZS5odG1sCmluZGV4IDQ0
ZWE2M2NhZGZkN2Y2MjIwOGYwM2ZhOWNiYzk0ZWFhYTkxYzJlNTkuLjBkNzNjZjg0OTQ4ZDY1OTVl
OTAwZTFmYjlkMTFhMjgxMGUzMzRiMjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC9jb250ZW50LWxhbmd1YWdlLW11bHRpcGxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90
ZXh0L2NvbnRlbnQtbGFuZ3VhZ2UtbXVsdGlwbGUuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBUaGUg
SFRNTDUgc3BlYyBkZWNyZWVzIHRoYXQgdGhlIGZpcnN0IHN1Y2Nlc3NmdWxseSBwcm9jZXNzZWQg
b25lIGJlIHVzZWQuCiBGaXJlZm94IGFuZCBJRSBzZWVtIHRvIHVzZSB0aGUgZmluYWwgb25lLgog
PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08ZGl2IGlkPSJ4IiBsYW5nPSJ6aF9DTiI+
PC9kaXY+Cis8ZGl2IGlkPSJ4Ij48L2Rpdj4KIDxkaXYgaWQ9InkiIGxhbmc9ImFyIj48L2Rpdj4K
IDxzY3JpcHQ+CiBmdW5jdGlvbiBsYW5ndWFnZU9mTm9kZShpZCkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>