<?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>50536</bug_id>
          
          <creation_ts>2010-12-05 07:12:25 -0800</creation_ts>
          <short_desc>[Qt] Fix caret browsing navigation mode</short_desc>
          <delta_ts>2010-12-17 09:15:04 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          <dependson>51235</dependson>
          <blocked>50942</blocked>
    
    <blocked>47271</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antonio Gomes">tonikitoo</reporter>
          <assigned_to name="Antonio Gomes">tonikitoo</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>kling</cc>
    
    <cc>mario</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yael</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>317371</commentid>
    <comment_count>0</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-05 07:12:25 -0800</bug_when>
    <thetext>After bug 47426 got broken in Qt and no regression test catch it because the tests are not actually test caret browsing mode.

Patch coming ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317373</commentid>
    <comment_count>1</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-05 07:18:45 -0800</bug_when>
    <thetext>(In reply to comment #0)
&gt; After bug 47426 got broken in Qt

&quot;After bug 47426, caret browsing got broken in Qt...&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317378</commentid>
    <comment_count>2</comment_count>
      <attachid>75629</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-05 07:43:27 -0800</bug_when>
    <thetext>Created attachment 75629
patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317380</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-05 07:45:05 -0800</bug_when>
    <thetext>Attachment 75629 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/platform/mac/Skipped&apos;, u&apos;LayoutTests/platform/win/Skipped&apos;, u&apos;WebKit/qt/ChangeLog&apos;, u&apos;WebKit/qt/WebCoreSupport/EditorClientQt.cpp&apos;]&quot; exit_code: 1
WebKit/qt/WebCoreSupport/EditorClientQt.cpp:471:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317497</commentid>
    <comment_count>4</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-12-06 02:06:36 -0800</bug_when>
    <thetext>Attachment 75629 did not build on qt:
Build output: http://queues.webkit.org/results/6771071</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317506</commentid>
    <comment_count>5</comment_count>
      <attachid>75629</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-12-06 02:51:28 -0800</bug_when>
    <thetext>Comment on attachment 75629
patch v1

r- to fix the build. I can&apos;t find any occurance of isCaretBrowsingEnabled() in WebKit trunk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317566</commentid>
    <comment_count>6</comment_count>
      <attachid>75677</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-06 05:06:59 -0800</bug_when>
    <thetext>Created attachment 75677
(committed r74229, r=ariya) patch v2 - it builds and has no style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>317594</commentid>
    <comment_count>7</comment_count>
      <attachid>75677</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-12-06 06:49:35 -0800</bug_when>
    <thetext>Comment on attachment 75677
(committed r74229, r=ariya) patch v2 - it builds and has no style issues.

Looks good to me, sorry for the regression bug 42476 caused.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318793</commentid>
    <comment_count>8</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-08 08:07:59 -0800</bug_when>
    <thetext>Just to make reviewing simpler, patch is simple. Summary:

- it makes an already existing gtk-specific test to be a generic test, but skips it for Mac and Win, since these DRTs do not support testing caret browsing.

- It reintroduces some of the code removed in bug 47426, since in that bug we missed the caret browsing mode tests.

I am actually fixing this because it blocks fixing a conflicts between Spatial Navigation and Caret Browsing features.

Easier now anyone? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319118</commentid>
    <comment_count>9</comment_count>
      <attachid>75677</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-12-08 16:35:51 -0800</bug_when>
    <thetext>Comment on attachment 75677
(committed r74229, r=ariya) patch v2 - it builds and has no style issues.

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

&gt; WebKit/qt/WebCoreSupport/EditorClientQt.cpp:479
&gt; +                if (kevent-&gt;shiftKey() &amp;&amp; kevent-&gt;ctrlKey())
&gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveWordBackwardAndModifySelection&quot;).execute();
&gt; +                else if (kevent-&gt;shiftKey())
&gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveLeftAndModifySelection&quot;).execute();
&gt; +                else if (kevent-&gt;ctrlKey())
&gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveWordBackward&quot;).execute();
&gt; +                else
&gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveLeft&quot;).execute();

Isn&apos;t better to directly call selection controller&apos;s modify?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320866</commentid>
    <comment_count>10</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-12 12:19:23 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 75677 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=75677&amp;action=review
&gt; 
&gt; &gt; WebKit/qt/WebCoreSupport/EditorClientQt.cpp:479
&gt; &gt; +                if (kevent-&gt;shiftKey() &amp;&amp; kevent-&gt;ctrlKey())
&gt; &gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveWordBackwardAndModifySelection&quot;).execute();
&gt; &gt; +                else if (kevent-&gt;shiftKey())
&gt; &gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveLeftAndModifySelection&quot;).execute();
&gt; &gt; +                else if (kevent-&gt;ctrlKey())
&gt; &gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveWordBackward&quot;).execute();
&gt; &gt; +                else
&gt; &gt; +                    frame-&gt;editor()-&gt;command(&quot;MoveLeft&quot;).execute();
&gt; 
&gt; Isn&apos;t better to directly call selection controller&apos;s modify?

In fact, it could be better. However, since the whole method is already full on frame-&gt;editor-&gt;command calls, I left these like that too.

I actually also plan to fix it to work like Gtk and EFL ports: a map table of actions and commands. I will be a follow up.

ps: please comment #8 should make it an easy review :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321690</commentid>
    <comment_count>11</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-13 22:48:05 -0800</bug_when>
    <thetext>@Ryosuke / Yael: any other issues, you guys see here?

I would really like to move one here, since it bo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321691</commentid>
    <comment_count>12</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-13 22:48:58 -0800</bug_when>
    <thetext>[Hit ENTER by accident]

&gt; I would really like to move one here, since it bo

... blocks some other bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323545</commentid>
    <comment_count>13</comment_count>
      <attachid>75677</attachid>
    <who name="Ariya Hidayat">ariya.hidayat</who>
    <bug_when>2010-12-16 17:49:37 -0800</bug_when>
    <thetext>Comment on attachment 75677
(committed r74229, r=ariya) patch v2 - it builds and has no style issues.

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

LGTM.

&gt; LayoutTests/editing/selection/caret-mode-paragraph-keys-navigation-expected.txt:1
&gt; +This tests that arrow keys navigatie through a paragraph as expected when in caret browsing mode, also with shift and ctrl modifiers.

&quot;navigate&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323581</commentid>
    <comment_count>14</comment_count>
      <attachid>75677</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-16 19:45:51 -0800</bug_when>
    <thetext>Comment on attachment 75677
(committed r74229, r=ariya) patch v2 - it builds and has no style issues.

Clearing flags on attachment: 75677

Committed r74229: &lt;http://trac.webkit.org/changeset/74229&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323628</commentid>
    <comment_count>15</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-17 00:24:08 -0800</bug_when>
    <thetext>Reverted r74229 for reason:

Broken on Snow Leopard and possibly other platforms

Committed r74235: &lt;http://trac.webkit.org/changeset/74235&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323762</commentid>
    <comment_count>16</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-17 07:31:41 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; Reverted r74229 for reason:
&gt; 
&gt; Broken on Snow Leopard and possibly other platforms
&gt; 
&gt; Committed r74235: &lt;http://trac.webkit.org/changeset/74235&gt;

Eric, thanks for taking care of it. Actually I realized my mistake seconds after the initial checkin, and created a patch to fix it. See bug 51232 ... Since it was &gt; 1:00am I CQ+&apos;ed it, but it seems the CQ got stuck and your rollout came first.

I am re land it with the proper fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323810</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-17 08:55:50 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/74270 might have broken GTK Linux 64-bit Debug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323818</commentid>
    <comment_count>18</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-12-17 09:15:04 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; http://trac.webkit.org/changeset/74270 might have broken GTK Linux 64-bit Debug

Fake alarm.

&gt; I am re land it with the proper fix.

http://trac.webkit.org/changeset/74270</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75629</attachid>
            <date>2010-12-05 07:43:27 -0800</date>
            <delta_ts>2010-12-06 05:06:59 -0800</delta_ts>
            <desc>patch v1</desc>
            <filename>0001-2010-12-05-Antonio-Gomes-agomes-rim.com.patch</filename>
            <type>text/plain</type>
            <size>18249</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSAyNWU5ZTMxMjVhNDczYTY2Y2FhMmY5MmY1NTEzMWQ1NTliNWM0MTMwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
U3VuLCA1IERlYyAyMDEwIDEwOjM1OjIxIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gMjAxMC0xMi0w
NSAgQW50b25pbyBHb21lcyAgPGFnb21lc0ByaW0uY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW1F0XSBGaXggY2FyZXQgYnJvd3NpbmcgbmF2aWdhdGlv
biBtb2RlCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUw
NTM2CgogICAgICAgIFdlYktpdC9xdDoKCiAgICAgICAgQ2FyZXQgYnJvd3NpbmcgY2FuIGNvbnN1
bWUgZWRpdGluZyBjb21tYW5kcyBldmVuIHdoZW4gdGhlIHN0YXJ0CiAgICAgICAgb2YgY3VycmVu
dCBzZWxlY3Rpb24gaXMgbm90IGEgZWRpdGFibGUgY29udGVudC4gcjY5NTgyIG1pc3NlZCB0aGlz
CiAgICAgICAgY2FzZSBiZWNhdXNlIGNhcmV0IGJyb3dzaW5nIGZlYXR1cmUgdGVzdGluZyBpcyB2
ZXJ5IHBvb3IgdG9kYXkuCgogICAgICAgIFRoaXMgY29tbWl0IHJlaW50cm9kdWNlcyBwYXJ0IG9m
IHRoZSByZW1vdmVkIGNvZGUgaW4gcjY5NTgyIGJ1dAogICAgICAgIGd1YXJkZWQgYnkgYSBpc0Nh
cmV0QnJvd3NpbmdFbmFibGVkKCkgY2hlY2suIE5vIHJlZ3Jlc3Npb24gZm91bmQuCgogICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50UXQuY3BwOgogICAgICAgIChXZWJDb3JlOjpF
ZGl0b3JDbGllbnRRdDo6aGFuZGxlS2V5Ym9hcmRFdmVudCk6CgogICAgICAgIExheW91dFRlc3Rz
OgoKICAgICAgICAvcGxhdGZvcm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFy
YWdyYXBoLWtleXMtbmF2aWdhdGlvbi5odG1sCiAgICAgICAgaXMgb25lIG9mIHRoZSBmZXcgdGVz
dHMgYWN0dWFsbHkgdGVzdHMgdGhlIGNhcmV0IGJyb3dzaW5nIGZlYXR1cmUuCiAgICAgICAgUGF0
Y2ggbWFrZXMgdGhlIHRlc3Qgbm90IEd0aysgc3BlY2lmaWMsIGFuZCBRdCBub3cgcGFzc2VzIG9u
IGl0LgoKICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtl
eXMtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZp
Z2F0aW9uLWV4cGVjdGVkLnR4ICAgICAgIHQuCiAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9j
YXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFn
cmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbC4KICAgICAgICAqIGZhc3QvZXZlbnRzL211bHRpbGlu
ZS1saW5rLWFycm93LW5hdmlnYXRpb24uaHRtbDoKLS0tCiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKysrKwogLi4ucmV0LW1vZGUtcGFy
YWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQgfCAgIDIzICsrKysrKwogLi4uL2Nh
cmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi5odG1sICAgICAgfCAgIDYxICsrKysr
KysrKysrKysrKysrCiAuLi5yZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLWV4cGVj
dGVkLnR4dCB8ICAgMjkgLS0tLS0tLS0KIC4uLi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5h
dmlnYXRpb24uaHRtbCAgICAgIHwgICA3MiAtLS0tLS0tLS0tLS0tLS0tLS0tLQogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQgICAgICAgICAgICAgICAgICAgfCAgICAzICsKIExheW91
dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBX
ZWJLaXQvcXQvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTcg
KysrKysKIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRRdC5jcHAgICAgICAg
IHwgICA1OSArKysrKysrKysrKysrKysrLQogOSBmaWxlcyBjaGFuZ2VkLCAxODAgaW5zZXJ0aW9u
cygrKSwgMTAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Vk
aXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlv
bi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbAogZGVsZXRlIG1vZGUg
MTAwNjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1t
b2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0CiBkZWxldGUgbW9kZSAx
MDA2NDQgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1v
ZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi5odG1sCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDg0NTJkZGQuLjY2OTc4
MDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0xMi0wNSAgQW50b25pbyBHb21lcyAgPGFn
b21lc0ByaW0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gRml4IGNhcmV0IGJyb3dzaW5nIG5hdmlnYXRpb24gbW9kZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTA1MzYKKworICAgICAgICAv
cGxhdGZvcm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMt
bmF2aWdhdGlvbi5odG1sCisgICAgICAgIGlzIG9uZSBvZiB0aGUgZmV3IHRlc3RzIGFjdHVhbGx5
IHRlc3RzIHRoZSBjYXJldCBicm93c2luZyBmZWF0dXJlLgorICAgICAgICBQYXRjaCBtYWtlcyB0
aGUgdGVzdCBub3QgR3RrKyBzcGVjaWZpYywgYW5kIFF0IG5vdyBwYXNzZXMgb24gaXQuCisKKyAg
ICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmln
YXRpb24tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJh
Z3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZp
Z2F0aW9uLmh0bWwuCisgICAgICAgICogZmFzdC9ldmVudHMvbXVsdGlsaW5lLWxpbmstYXJyb3ct
bmF2aWdhdGlvbi5odG1sOgorCiAyMDEwLTEyLTA1ICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbmRyZWFzIEtsaW5nLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5
cy1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTI3YTEzMwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMt
bmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMyBAQAorVGhpcyB0ZXN0cyB0aGF0
IGFycm93IGtleXMgbmF2aWdhdGllIHRocm91Z2ggYSBwYXJhZ3JhcGggYXMgZXhwZWN0ZWQgd2hl
biBpbiBjYXJldCBicm93c2luZyBtb2RlLCBhbHNvIHdpdGggc2hpZnQgYW5kIGN0cmwgbW9kaWZp
ZXJzLgorCitUaGlzIHRlc3RzIHRoYXQga2V5cyBuYXZpZ2F0aW9uIHRocm91Z2ggYSBwYXJhZ3Jh
cGggd29yayBhcyBleHBlY3RlZCB3aGVuIGluIGNhcmV0IG1vZGUsIGFsc28gd2l0aCBzaGlmdCBh
bmQgY3RybCBtb2RpZmllcnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNT
IGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTUKK1BBU1MgZ2V0U2VsZWN0aW9uKCkuYmFz
ZU9mZnNldCBpcyAxNgorUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE1CitQQVNT
IGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTUKK1BBU1MgZ2V0U2VsZWN0aW9uKCkuZXh0
ZW50T2Zmc2V0IGlzIDE4CitQQVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTUKK1BB
U1MgZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0IGlzIDE3CitQQVNTIGdldFNlbGVjdGlvbigp
LmJhc2VPZmZzZXQgaXMgMjEKK1BBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNgor
UEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE2CitQQVNTIGdldFNlbGVjdGlvbigp
LmV4dGVudE9mZnNldCBpcyAyNgorUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDIy
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3Jh
cGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9j
YXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5kZjhiMzJmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9u
Lmh0bWwKQEAgLTAsMCArMSw2MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9E
VEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdD4KK3Zh
ciBzdWNjZXNzZnVsbHlQYXJzZWQgPSBmYWxzZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHAgaWQ9InRhcmdldCI+VGhpcyB0ZXN0cyB0aGF0IGFycm93IGtleXMgbmF2aWdh
dGllIHRocm91Z2ggYSBwYXJhZ3JhcGggYXMgZXhwZWN0ZWQgd2hlbiBpbiBjYXJldCBicm93c2lu
ZyBtb2RlLCBhbHNvIHdpdGggc2hpZnQgYW5kIGN0cmwgbW9kaWZpZXJzLjwvcD4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorZGVz
Y3JpcHRpb24oIlRoaXMgdGVzdHMgdGhhdCBrZXlzIG5hdmlnYXRpb24gdGhyb3VnaCBhIHBhcmFn
cmFwaCB3b3JrIGFzIGV4cGVjdGVkIHdoZW4gaW4gY2FyZXQgbW9kZSwgYWxzbyB3aXRoIHNoaWZ0
IGFuZCBjdHJsIG1vZGlmaWVycy4iKTsKKworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikgeworICBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdEVu
YWJsZUNhcmV0QnJvd3NpbmciLCB0cnVlKTsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOworCisgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0
Iik7CisgIHRhcmdldC5mb2N1cygpOworICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRp
b24odGFyZ2V0LmNoaWxkTm9kZXMuaXRlbSgwKSwgMTUpOworCisgIC8vIGNoZWNrIGxlZnQvcmln
aHQgYXJyb3dzCisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE1Iik7
CisgIGV2ZW50U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsKKyAgc2hvdWxkQmUoImdldFNl
bGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTYiKTsKKyAgZXZlbnRTZW5kZXIua2V5RG93bigibGVm
dEFycm93Iik7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE1Iik7
CisKKyAgLy8gY2hlY2sgbGVmdC9yaWdodCBhcnJvd3MgKyBTaGlmdAorICBldmVudFNlbmRlci5r
ZXlEb3duKCJyaWdodEFycm93IiwgWyJzaGlmdEtleSJdKTsKKyAgZXZlbnRTZW5kZXIua2V5RG93
bigicmlnaHRBcnJvdyIsIFsic2hpZnRLZXkiXSk7CisgIGV2ZW50U2VuZGVyLmtleURvd24oInJp
Z2h0QXJyb3ciLCBbInNoaWZ0S2V5Il0pOworICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFz
ZU9mZnNldCIsICIxNSIpOworICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0
IiwgIjE4Iik7CisgIGV2ZW50U2VuZGVyLmtleURvd24oImxlZnRBcnJvdyIsIFsic2hpZnRLZXki
XSk7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE1Iik7CisgIHNo
b3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQiLCAiMTciKTsKKworICAvLyBjaGVj
ayBsZWZ0L3JpZ2h0IGFycm93cyArIEN0cmwKKyAgZXZlbnRTZW5kZXIua2V5RG93bigicmlnaHRB
cnJvdyIsIFsiY3RybEtleSJdKTsKKyAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZz
ZXQiLCAiMjEiKTsKKyAgZXZlbnRTZW5kZXIua2V5RG93bigibGVmdEFycm93IiwgWyJjdHJsS2V5
Il0pOworICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIsICIxNiIpOworCisg
IC8vIGNoZWNrIGxlZnQvcmlnaHQgYXJyb3dzICsgQ3RybCArIFNoaWZ0CisgIGV2ZW50U2VuZGVy
LmtleURvd24oInJpZ2h0QXJyb3ciLCBbImN0cmxLZXkiLCAic2hpZnRLZXkiXSk7CisgIGV2ZW50
U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciLCBbImN0cmxLZXkiLCAic2hpZnRLZXkiXSk7Cisg
IHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE2Iik7CisgIHNob3VsZEJl
KCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQiLCAiMjYiKTsKKyAgZXZlbnRTZW5kZXIua2V5
RG93bigibGVmdEFycm93IiwgWyJjdHJsS2V5Il0pOworICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9u
KCkuYmFzZU9mZnNldCIsICIyMiIpOworfQorCitzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1r
ZXlzLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Vk
aXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBmNzUxNjIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1v
ZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSwyOSArMCwwIEBACi1UaGlzIHRlc3RzIHRoYXQga2V5cyBuYXZpZ2F0aW9uIHRocm91Z2gg
YSBwYXJhZ3JhcGggd29yayBhcyBleHBlY3RlZCB3aGVuIGluIGNhcmV0IG1vZGUsIGFsc28gd2l0
aCBzaGlmdCBhbmQgY3RybCBtb2RpZmllcnMuCi0KLVRoaXMgdGVzdHMgdGhhdCBrZXlzIG5hdmln
YXRpb24gdGhyb3VnaCBhIHBhcmFncmFwaCB3b3JrIGFzIGV4cGVjdGVkIHdoZW4gaW4gY2FyZXQg
bW9kZSwgYWxzbyB3aXRoIHNoaWZ0IGFuZCBjdHJsIG1vZGlmaWVycy4KLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi0KLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNQot
UEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE2Ci1QQVNTIGdldFNlbGVjdGlvbigp
LmJhc2VPZmZzZXQgaXMgMTUKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNQot
UEFTUyBnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQgaXMgMTgKLVBBU1MgZ2V0U2VsZWN0aW9u
KCkuYmFzZU9mZnNldCBpcyAxNQotUEFTUyBnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQgaXMg
MTcKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAyMAotUEFTUyBnZXRTZWxlY3Rp
b24oKS5iYXNlT2Zmc2V0IGlzIDE2Ci1QQVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMg
MTYKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0IGlzIDMxCi1QQVNTIGdldFNlbGVj
dGlvbigpLmJhc2VPZmZzZXQgaXMgMjEKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBp
cyAwCi1QQVNTIGdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCBpcyAwCi1QQVNTIGdldFNlbGVj
dGlvbigpLmJhc2VPZmZzZXQgaXMgMTI0Ci1QQVNTIGdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNl
dCBpcyAxMjQKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxMjQKLVBBU1MgZ2V0
U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0IGlzIDAKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0
aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2Fy
ZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDlmNTg0YzEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlv
bi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgotPHNjcmlwdD4KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSBmYWxzZTsKLTwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9InRhcmdldCI+VGhpcyB0ZXN0cyB0
aGF0IGtleXMgbmF2aWdhdGlvbiB0aHJvdWdoIGEgcGFyYWdyYXBoIHdvcmsgYXMgZXhwZWN0ZWQg
d2hlbiBpbiBjYXJldCBtb2RlLCBhbHNvIHdpdGggc2hpZnQgYW5kIGN0cmwgbW9kaWZpZXJzLjwv
cD4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08
c2NyaXB0PgotZGVzY3JpcHRpb24oIlRoaXMgdGVzdHMgdGhhdCBrZXlzIG5hdmlnYXRpb24gdGhy
b3VnaCBhIHBhcmFncmFwaCB3b3JrIGFzIGV4cGVjdGVkIHdoZW4gaW4gY2FyZXQgbW9kZSwgYWxz
byB3aXRoIHNoaWZ0IGFuZCBjdHJsIG1vZGlmaWVycy4iKTsKLQotaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikgewotICBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVu
Y2UoIldlYktpdEVuYWJsZUNhcmV0QnJvd3NpbmciLCB0cnVlKTsKLSAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGFyZ2V0Iik7Ci0gIHRhcmdldC5mb2N1cygpOwotICB3aW5kb3cuZ2V0U2VsZWN0aW9u
KCkuc2V0UG9zaXRpb24odGFyZ2V0LmNoaWxkTm9kZXMuaXRlbSgwKSwgMTUpOwotCi0gIC8vIGNo
ZWNrIGxlZnQvcmlnaHQgYXJyb3dzCi0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zm
c2V0IiwgIjE1Iik7Ci0gIGV2ZW50U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciKTsKLSAgc2hv
dWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTYiKTsKLSAgZXZlbnRTZW5kZXIu
a2V5RG93bigibGVmdEFycm93Iik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zm
c2V0IiwgIjE1Iik7Ci0KLSAgLy8gY2hlY2sgbGVmdC9yaWdodCBhcnJvd3MgKyBTaGlmdAotICBl
dmVudFNlbmRlci5rZXlEb3duKCJyaWdodEFycm93IiwgWyJzaGlmdEtleSJdKTsKLSAgZXZlbnRT
ZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIsIFsic2hpZnRLZXkiXSk7Ci0gIGV2ZW50U2VuZGVy
LmtleURvd24oInJpZ2h0QXJyb3ciLCBbInNoaWZ0S2V5Il0pOwotICBzaG91bGRCZSgiZ2V0U2Vs
ZWN0aW9uKCkuYmFzZU9mZnNldCIsICIxNSIpOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCku
ZXh0ZW50T2Zmc2V0IiwgIjE4Iik7Ci0gIGV2ZW50U2VuZGVyLmtleURvd24oImxlZnRBcnJvdyIs
IFsic2hpZnRLZXkiXSk7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0Iiwg
IjE1Iik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQiLCAiMTciKTsK
LQotICAvLyBjaGVjayBsZWZ0L3JpZ2h0IGFycm93cyArIEN0cmwKLSAgZXZlbnRTZW5kZXIua2V5
RG93bigicmlnaHRBcnJvdyIsIFsiY3RybEtleSJdKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlv
bigpLmJhc2VPZmZzZXQiLCAiMjAiKTsKLSAgZXZlbnRTZW5kZXIua2V5RG93bigibGVmdEFycm93
IiwgWyJjdHJsS2V5Il0pOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIs
ICIxNiIpOwotCi0gIC8vIGNoZWNrIGxlZnQvcmlnaHQgYXJyb3dzICsgQ3RybCArIFNoaWZ0Ci0g
IGV2ZW50U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciLCBbImN0cmxLZXkiLCAic2hpZnRLZXki
XSk7Ci0gIGV2ZW50U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciLCBbImN0cmxLZXkiLCAic2hp
ZnRLZXkiXSk7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE2Iik7
Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQiLCAiMzEiKTsKLSAgZXZl
bnRTZW5kZXIua2V5RG93bigibGVmdEFycm93IiwgWyJjdHJsS2V5Il0pOwotICBzaG91bGRCZSgi
Z2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIsICIyMSIpOwotCi0gIC8vIGNoZWNrIGhvbWUvZW5k
IGtleXMgYm90aCBmb3IgY2FyZXQgYW5kIHJhbmdlIHNlbGVjdGlvbnMKLSAgZXZlbnRTZW5kZXIu
a2V5RG93bigiaG9tZSIpOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIs
ICIwIik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQiLCAiMCIpOwot
ICBldmVudFNlbmRlci5rZXlEb3duKCJlbmQiKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigp
LmJhc2VPZmZzZXQiLCAiMTI0Iik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRP
ZmZzZXQiLCAiMTI0Iik7Ci0gIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUiLCBbInNoaWZ0S2V5
Il0pOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIsICIxMjQiKTsKLSAg
c2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIwIik7Ci19Ci0KLXN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAppbmRleCAyZjg4OTljLi5mZGY3ODJhIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZApAQCAtMjc0LDMgKzI3NCw2IEBAIHBsdWdpbnMvZXZh
bHVhdGUtanMtYWZ0ZXItcmVtb3ZpbmctcGx1Z2luLWVsZW1lbnQuaHRtbAogCiAjIFZlcnkgZmxh
a3k6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00OTE4MgogYW5pbWF0
aW9ucy9zdG9wLWFuaW1hdGlvbi1vbi1zdXNwZW5kLmh0bWwKKworIyBEUlQgZG9lcyBub3Qgc3Vw
cG9ydCB0b2dnbGluZyBjYXJldCBicm93c2luZyBvbiAvIG9mZgorTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd2luL1NraXBwZWQKaW5kZXggMzExNmZhMy4uMmQwMTkyYSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luL1NraXBwZWQKQEAgLTEwODIsMyArMTA4Miw2IEBAIGVkaXRpbmcvdGV4dC1pdGVyYXRv
ci9maW5kU3RyaW5nLmh0bWwKICMgVGhlIHJlbGV2YW50IGJ1Z3MgYXJlIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00Nzg0OS80NzgxNy4KIGZhc3QvZnJhbWVzL2xvY2F0
aW9uLXJlZGlyZWN0LXVzZXItZ2VzdHVyZS5odG1sCiBmYXN0L2ZyYW1lcy9tZXRhLXJlZnJlc2gt
dXNlci1nZXN0dXJlLmh0bWwKKworIyBEUlQgZG9lcyBub3Qgc3VwcG9ydCB0b2dnbGluZyBjYXJl
dCBicm93c2luZyBvbiAvIG9mZgorTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQt
bW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwKZGlmZiAtLWdpdCBhL1dlYktpdC9x
dC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGQzNjE2MjQuLjIyNjZjMzQg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDIwIEBACisyMDEwLTEyLTA1ICBBbnRvbmlvIEdvbWVzICA8YWdvbWVzQHJp
bS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
W1F0XSBGaXggY2FyZXQgYnJvd3NpbmcgbmF2aWdhdGlvbiBtb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDUzNgorCisgICAgICAgIENhcmV0IGJy
b3dzaW5nIGNhbiBjb25zdW1lIGVkaXRpbmcgY29tbWFuZHMgZXZlbiB3aGVuIHRoZSBzdGFydAor
ICAgICAgICBvZiBjdXJyZW50IHNlbGVjdGlvbiBpcyBub3QgYSBlZGl0YWJsZSBjb250ZW50LiBy
Njk1ODIgbWlzc2VkIHRoaXMKKyAgICAgICAgY2FzZSBiZWNhdXNlIGNhcmV0IGJyb3dzaW5nIGZl
YXR1cmUgdGVzdGluZyBpcyB2ZXJ5IHBvb3IgdG9kYXkuCisKKyAgICAgICAgVGhpcyBjb21taXQg
cmVpbnRyb2R1Y2VzIHBhcnQgb2YgdGhlIHJlbW92ZWQgY29kZSBpbiByNjk1ODIgYnV0CisgICAg
ICAgIGd1YXJkZWQgYnkgYSBpc0NhcmV0QnJvd3NpbmdFbmFibGVkKCkgY2hlY2suIE5vIHJlZ3Jl
c3Npb24gZm91bmQuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRRdC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRRdDo6aGFuZGxlS2V5Ym9hcmRFdmVu
dCk6CisKIDIwMTAtMTItMDEgIEppYSBQdSAgPGpwdUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBv
cnQvRWRpdG9yQ2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0VkaXRvckNs
aWVudFF0LmNwcAppbmRleCA0NmVlZWIwLi41NTlmMTNiIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50UXQuY3BwCisrKyBiL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9FZGl0b3JDbGllbnRRdC5jcHAKQEAgLTM0OCw3ICszNDgsNyBAQCB2b2lkIEVkaXRv
ckNsaWVudFF0Ojp0b2dnbGVHcmFtbWFyQ2hlY2tpbmcoKQogdm9pZCBFZGl0b3JDbGllbnRRdDo6
aGFuZGxlS2V5Ym9hcmRFdmVudChLZXlib2FyZEV2ZW50KiBldmVudCkKIHsKICAgICBGcmFtZSog
ZnJhbWUgPSBtX3BhZ2UtPmQtPnBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLT5mb2N1c2VkT3JNYWlu
RnJhbWUoKTsKLSAgICBpZiAoIWZyYW1lIHx8ICFmcmFtZS0+ZG9jdW1lbnQoKS0+Zm9jdXNlZE5v
ZGUoKSkKKyAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm47CiAKICAgICBjb25zdCBQbGF0
Zm9ybUtleWJvYXJkRXZlbnQqIGtldmVudCA9IGV2ZW50LT5rZXlFdmVudCgpOwpAQCAtMzczLDYg
KzM3Myw3IEBAIHZvaWQgRWRpdG9yQ2xpZW50UXQ6OmhhbmRsZUtleWJvYXJkRXZlbnQoS2V5Ym9h
cmRFdmVudCogZXZlbnQpCiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAg
ICB9CisKICNpZm5kZWYgUVRfTk9fU0hPUlRDVVQKICAgICAgICAgUVdlYlBhZ2U6OldlYkFjdGlv
biBhY3Rpb24gPSBRV2ViUGFnZVByaXZhdGU6OmVkaXRvckFjdGlvbkZvcktleUV2ZW50KGtldmVu
dC0+cXRFdmVudCgpKTsKICAgICAgICAgaWYgKGFjdGlvbiAhPSBRV2ViUGFnZTo6Tm9XZWJBY3Rp
b24gJiYgIWRvU3BhdGlhbE5hdmlnYXRpb24pIHsKQEAgLTQ2NSw2ICs0NjYsNjIgQEAgdm9pZCBF
ZGl0b3JDbGllbnRRdDo6aGFuZGxlS2V5Ym9hcmRFdmVudChLZXlib2FyZEV2ZW50KiBldmVudCkK
ICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICB9IGVsc2UgeworICAgICAg
ICBpZiAobV9wYWdlLT5oYW5kbGUoKS0+cGFnZS0+c2V0dGluZ3MoKS0+aXNDYXJldEJyb3dzaW5n
RW5hYmxlZCgpKSB7CisgICAgICAgICAgICBzd2l0Y2ggKGtldmVudC0+d2luZG93c1ZpcnR1YWxL
ZXlDb2RlKCkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIFZLX0xFRlQ6CisgICAgICAgICAgICAg
ICAgICAgIGlmIChrZXZlbnQtPnNoaWZ0S2V5KCkgJiYga2V2ZW50LT5jdHJsS2V5KCkpCisgICAg
ICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVXb3JkQmFj
a3dhcmRBbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRlKCk7CisgICAgICAgICAgICAgICAgICAg
IGVsc2UgaWYgKGtldmVudC0+c2hpZnRLZXkoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZy
YW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZUxlZnRBbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVj
dXRlKCk7CisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVudC0+Y3RybEtleSgpKQor
ICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlV29y
ZEJhY2t3YXJkIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVMZWZ0IikuZXhl
Y3V0ZSgpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IFZLX1JJR0hUOgorICAgICAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5zaGlmdEtleSgpICYm
IGtldmVudC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRv
cigpLT5jb21tYW5kKCJNb3ZlV29yZEZvcndhcmRBbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRl
KCk7CisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVudC0+c2hpZnRLZXkoKSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVJpZ2h0
QW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgICAgICBlbHNl
IGlmIChrZXZlbnQtPmN0cmxLZXkoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5l
ZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVdvcmRGb3J3YXJkIikuZXhlY3V0ZSgpOworICAgICAgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCkt
PmNvbW1hbmQoIk1vdmVSaWdodCIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICAgICAgY2FzZSBWS19VUDoKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGtldmVudC0+c2hpZnRLZXkoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0
b3IoKS0+Y29tbWFuZCgiTW92ZVVwQW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAg
ICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRp
dG9yKCktPmNvbW1hbmQoIk1vdmVVcCIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBWS19ET1dOOgorICAgICAgICAgICAgICAgICAg
ICBpZiAoa2V2ZW50LT5zaGlmdEtleSgpKQorICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUt
PmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlRG93bkFuZE1vZGlmeVNlbGVjdGlvbiIpLmV4ZWN1dGUo
KTsKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgZnJh
bWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlRG93biIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBWS19QUklPUjogLy8gUGFnZVVw
CisgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVBhZ2VV
cCIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAg
ICAgY2FzZSBWS19ORVhUOiAvLyBQYWdlRG93bgorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+
ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVQYWdlRG93biIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBWS19IT01FOgorICAgICAgICAg
ICAgICAgICAgICBpZiAoa2V2ZW50LT5zaGlmdEtleSgpKQorICAgICAgICAgICAgICAgICAgICAg
ICAgZnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlVG9CZWdpbm5pbmdPZkxpbmVBbmRNb2Rp
ZnlTZWxlY3Rpb24iKS5leGVjdXRlKCk7CisgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVRvQmVnaW5u
aW5nT2ZMaW5lIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgICAgICBjYXNlIFZLX0VORDoKKyAgICAgICAgICAgICAgICAgICAgaWYgKGtldmVudC0+
c2hpZnRLZXkoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29t
bWFuZCgiTW92ZVRvRW5kT2ZMaW5lQW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAg
ICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRp
dG9yKCktPmNvbW1hbmQoIk1vdmVUb0VuZE9mTGluZSIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAgIH0KICNpZm5kZWYgUVRfTk9fU0hP
UlRDVVQKICAgICAgICAgaWYgKGtldmVudC0+cXRFdmVudCgpID09IFFLZXlTZXF1ZW5jZTo6Q29w
eSkKICAgICAgICAgICAgIG1fcGFnZS0+dHJpZ2dlckFjdGlvbihRV2ViUGFnZTo6Q29weSk7Ci0t
IAoxLjcuMQoK
</data>
<flag name="review"
          id="66460"
          type_id="1"
          status="-"
          setter="ossy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75677</attachid>
            <date>2010-12-06 05:06:59 -0800</date>
            <delta_ts>2010-12-16 19:45:51 -0800</delta_ts>
            <desc>(committed r74229, r=ariya) patch v2 - it builds and has no style issues.</desc>
            <filename>0001-2010-12-05-Antonio-Gomes-agomes-rim.com.patch</filename>
            <type>text/plain</type>
            <size>18038</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSBiMDQ2ODQ5OGQ0YWZhZDgxNTE1YWNkYjE2Y2U4MDA2ZTBiNTNkZDY5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
U3VuLCA1IERlYyAyMDEwIDEwOjM1OjIxIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gMjAxMC0xMi0w
NSBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCgogICAgICAgIFtRdF0gRml4IGNhcmV0IGJyb3dzaW5nIG5hdmlnYXRpb24g
bW9kZQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDUz
NgoKICAgICAgICBXZWJLaXQvcXQ6CgogICAgICAgIENhcmV0IGJyb3dzaW5nIGNhbiBjb25zdW1l
IGVkaXRpbmcgY29tbWFuZHMgZXZlbiB3aGVuIHRoZSBzdGFydAogICAgICAgIG9mIGN1cnJlbnQg
c2VsZWN0aW9uIGlzIG5vdCBhIGVkaXRhYmxlIGNvbnRlbnQuIHI2OTU4MiBtaXNzZWQgdGhpcwog
ICAgICAgIGNhc2UgYmVjYXVzZSBjYXJldCBicm93c2luZyBmZWF0dXJlIHRlc3RpbmcgaXMgdmVy
eSBwb29yIHRvZGF5LgoKICAgICAgICBUaGlzIGNvbW1pdCByZWludHJvZHVjZXMgcGFydCBvZiB0
aGUgcmVtb3ZlZCBjb2RlIGluIHI2OTU4MiBidXQKICAgICAgICBndWFyZGVkIGJ5IGEgaXNDYXJl
dEJyb3dzaW5nRW5hYmxlZCgpIGNoZWNrLiBObyByZWdyZXNzaW9uIGZvdW5kLgoKICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudFF0LmNwcDoKICAgICAgICAoV2ViQ29yZTo6RWRp
dG9yQ2xpZW50UXQ6OmhhbmRsZUtleWJvYXJkRXZlbnQpOgoKICAgICAgICBMYXlvdXRUZXN0czoK
CiAgICAgICAgL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFn
cmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbAogICAgICAgIGlzIG9uZSBvZiB0aGUgZmV3IHRlc3Rz
IGFjdHVhbGx5IHRlc3RzIHRoZSBjYXJldCBicm93c2luZyBmZWF0dXJlLgogICAgICAgIFBhdGNo
IG1ha2VzIHRoZSB0ZXN0IG5vdCBHdGsrIHNwZWNpZmljLCBhbmQgUXQgbm93IHBhc3NlcyBvbiBp
dC4KCiAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlz
LW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdh
dGlvbi1leHBlY3RlZC50eCAgICAgICB0LgogICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vY2Fy
ZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3Jh
cGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwuCiAgICAgICAgKiBmYXN0L2V2ZW50cy9tdWx0aWxpbmUt
bGluay1hcnJvdy1uYXZpZ2F0aW9uLmh0bWw6Ci0tLQogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICsrKysKIC4uLnJldC1tb2RlLXBhcmFn
cmFwaC1rZXlzLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0IHwgICAyMyArKysrKysKIC4uLi9jYXJl
dC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbCAgICAgIHwgICA2MSArKysrKysr
KysrKysrKysrKwogLi4ucmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi1leHBlY3Rl
ZC50eHQgfCAgIDI5IC0tLS0tLS0tCiAuLi4vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZp
Z2F0aW9uLmh0bWwgICAgICB8ICAgNzIgLS0tLS0tLS0tLS0tLS0tLS0tLS0KIExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9Ta2lwcGVkICAgICAgICAgICAgICAgICAgIHwgICAgMyArCiBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZCAgICAgICAgICAgICAgICAgICB8ICAgIDMgKwogV2Vi
S2l0L3F0L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICsr
KysrCiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50UXQuY3BwICAgICAgICB8
ICAgNTkgKysrKysrKysrKysrKysrKy0KIDkgZmlsZXMgY2hhbmdlZCwgMTgwIGluc2VydGlvbnMo
KyksIDEwMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9lZGl0
aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24tZXhwZWN0
ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
Y2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLmh0bWwKIGRlbGV0ZSBtb2RlIDEw
MDY0NCBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9k
ZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dAogZGVsZXRlIG1vZGUgMTAw
NjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2Rl
LXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5ZGNjOGM2Li5mMTk3MmIx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAtMTItMDUgIEFudG9uaW8gR29tZXMgIDxhZ29t
ZXNAcmltLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBbUXRdIEZpeCBjYXJldCBicm93c2luZyBuYXZpZ2F0aW9uIG1vZGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNTM2CisKKyAgICAgICAgL3Bs
YXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5h
dmlnYXRpb24uaHRtbAorICAgICAgICBpcyBvbmUgb2YgdGhlIGZldyB0ZXN0cyBhY3R1YWxseSB0
ZXN0cyB0aGUgY2FyZXQgYnJvd3NpbmcgZmVhdHVyZS4KKyAgICAgICAgUGF0Y2ggbWFrZXMgdGhl
IHRlc3Qgbm90IEd0aysgc3BlY2lmaWMsIGFuZCBRdCBub3cgcGFzc2VzIG9uIGl0LgorCisgICAg
ICAgICogZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0
aW9uLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9l
ZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24tZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdy
YXBoLWtleXMtbmF2aWdhdGlvbi5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdh
dGlvbi5odG1sLgorICAgICAgICAqIGZhc3QvZXZlbnRzL211bHRpbGluZS1saW5rLWFycm93LW5h
dmlnYXRpb24uaHRtbDoKKwogMjAxMC0xMi0wNSAgUm9iIEJ1aXMgIDxyd2xidWlzQGdtYWlsLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOaWtvbGFzIFppbW1lcm1hbm4uCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlz
LW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
Y2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMjdhMTMzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1u
YXZpZ2F0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitUaGlzIHRlc3RzIHRoYXQg
YXJyb3cga2V5cyBuYXZpZ2F0aWUgdGhyb3VnaCBhIHBhcmFncmFwaCBhcyBleHBlY3RlZCB3aGVu
IGluIGNhcmV0IGJyb3dzaW5nIG1vZGUsIGFsc28gd2l0aCBzaGlmdCBhbmQgY3RybCBtb2RpZmll
cnMuCisKK1RoaXMgdGVzdHMgdGhhdCBrZXlzIG5hdmlnYXRpb24gdGhyb3VnaCBhIHBhcmFncmFw
aCB3b3JrIGFzIGV4cGVjdGVkIHdoZW4gaW4gY2FyZXQgbW9kZSwgYWxzbyB3aXRoIHNoaWZ0IGFu
ZCBjdHJsIG1vZGlmaWVycy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
Z2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNQorUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNl
T2Zmc2V0IGlzIDE2CitQQVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTUKK1BBU1Mg
Z2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNQorUEFTUyBnZXRTZWxlY3Rpb24oKS5leHRl
bnRPZmZzZXQgaXMgMTgKK1BBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAxNQorUEFT
UyBnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQgaXMgMTcKK1BBU1MgZ2V0U2VsZWN0aW9uKCku
YmFzZU9mZnNldCBpcyAyMQorUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE2CitQ
QVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTYKK1BBU1MgZ2V0U2VsZWN0aW9uKCku
ZXh0ZW50T2Zmc2V0IGlzIDI2CitQQVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMjIK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFw
aC1rZXlzLW5hdmlnYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2Nh
cmV0LW1vZGUtcGFyYWdyYXBoLWtleXMtbmF2aWdhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmRmOGIzMmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24u
aHRtbApAQCAtMCwwICsxLDYxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PgordmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IGZhbHNlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8cCBpZD0idGFyZ2V0Ij5UaGlzIHRlc3RzIHRoYXQgYXJyb3cga2V5cyBuYXZpZ2F0
aWUgdGhyb3VnaCBhIHBhcmFncmFwaCBhcyBleHBlY3RlZCB3aGVuIGluIGNhcmV0IGJyb3dzaW5n
IG1vZGUsIGFsc28gd2l0aCBzaGlmdCBhbmQgY3RybCBtb2RpZmllcnMuPC9wPgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IGtleXMgbmF2aWdhdGlvbiB0aHJvdWdoIGEgcGFyYWdy
YXBoIHdvcmsgYXMgZXhwZWN0ZWQgd2hlbiBpbiBjYXJldCBtb2RlLCBhbHNvIHdpdGggc2hpZnQg
YW5kIGN0cmwgbW9kaWZpZXJzLiIpOworCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7CisgIGxheW91dFRlc3RDb250cm9sbGVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0RW5h
YmxlQ2FyZXRCcm93c2luZyIsIHRydWUpOworICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisKKyAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQi
KTsKKyAgdGFyZ2V0LmZvY3VzKCk7CisgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5zZXRQb3NpdGlv
bih0YXJnZXQuY2hpbGROb2Rlcy5pdGVtKDApLCAxNSk7CisKKyAgLy8gY2hlY2sgbGVmdC9yaWdo
dCBhcnJvd3MKKyAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTUiKTsK
KyAgZXZlbnRTZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIpOworICBzaG91bGRCZSgiZ2V0U2Vs
ZWN0aW9uKCkuYmFzZU9mZnNldCIsICIxNiIpOworICBldmVudFNlbmRlci5rZXlEb3duKCJsZWZ0
QXJyb3ciKTsKKyAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTUiKTsK
KworICAvLyBjaGVjayBsZWZ0L3JpZ2h0IGFycm93cyArIFNoaWZ0CisgIGV2ZW50U2VuZGVyLmtl
eURvd24oInJpZ2h0QXJyb3ciLCBbInNoaWZ0S2V5Il0pOworICBldmVudFNlbmRlci5rZXlEb3du
KCJyaWdodEFycm93IiwgWyJzaGlmdEtleSJdKTsKKyAgZXZlbnRTZW5kZXIua2V5RG93bigicmln
aHRBcnJvdyIsIFsic2hpZnRLZXkiXSk7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNl
T2Zmc2V0IiwgIjE1Iik7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQi
LCAiMTgiKTsKKyAgZXZlbnRTZW5kZXIua2V5RG93bigibGVmdEFycm93IiwgWyJzaGlmdEtleSJd
KTsKKyAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTUiKTsKKyAgc2hv
dWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIxNyIpOworCisgIC8vIGNoZWNr
IGxlZnQvcmlnaHQgYXJyb3dzICsgQ3RybAorICBldmVudFNlbmRlci5rZXlEb3duKCJyaWdodEFy
cm93IiwgWyJjdHJsS2V5Il0pOworICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNl
dCIsICIyMSIpOworICBldmVudFNlbmRlci5rZXlEb3duKCJsZWZ0QXJyb3ciLCBbImN0cmxLZXki
XSk7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE2Iik7CisKKyAg
Ly8gY2hlY2sgbGVmdC9yaWdodCBhcnJvd3MgKyBDdHJsICsgU2hpZnQKKyAgZXZlbnRTZW5kZXIu
a2V5RG93bigicmlnaHRBcnJvdyIsIFsiY3RybEtleSIsICJzaGlmdEtleSJdKTsKKyAgZXZlbnRT
ZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIsIFsiY3RybEtleSIsICJzaGlmdEtleSJdKTsKKyAg
c2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTYiKTsKKyAgc2hvdWxkQmUo
ImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIyNiIpOworICBldmVudFNlbmRlci5rZXlE
b3duKCJsZWZ0QXJyb3ciLCBbImN0cmxLZXkiXSk7CisgIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24o
KS5iYXNlT2Zmc2V0IiwgIjIyIik7Cit9CisKK3N1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2VkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LW1vZGUtcGFyYWdyYXBoLWtl
eXMtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZWRp
dGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGY3NTE2Mi4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9k
ZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDI5ICswLDAgQEAKLVRoaXMgdGVzdHMgdGhhdCBrZXlzIG5hdmlnYXRpb24gdGhyb3VnaCBh
IHBhcmFncmFwaCB3b3JrIGFzIGV4cGVjdGVkIHdoZW4gaW4gY2FyZXQgbW9kZSwgYWxzbyB3aXRo
IHNoaWZ0IGFuZCBjdHJsIG1vZGlmaWVycy4KLQotVGhpcyB0ZXN0cyB0aGF0IGtleXMgbmF2aWdh
dGlvbiB0aHJvdWdoIGEgcGFyYWdyYXBoIHdvcmsgYXMgZXhwZWN0ZWQgd2hlbiBpbiBjYXJldCBt
b2RlLCBhbHNvIHdpdGggc2hpZnQgYW5kIGN0cmwgbW9kaWZpZXJzLgotCi1PbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCi0KLQotUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE1Ci1Q
QVNTIGdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQgaXMgMTYKLVBBU1MgZ2V0U2VsZWN0aW9uKCku
YmFzZU9mZnNldCBpcyAxNQotUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDE1Ci1Q
QVNTIGdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCBpcyAxOAotUEFTUyBnZXRTZWxlY3Rpb24o
KS5iYXNlT2Zmc2V0IGlzIDE1Ci1QQVNTIGdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCBpcyAx
NwotUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDIwCi1QQVNTIGdldFNlbGVjdGlv
bigpLmJhc2VPZmZzZXQgaXMgMTYKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCBpcyAx
NgotUEFTUyBnZXRTZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQgaXMgMzEKLVBBU1MgZ2V0U2VsZWN0
aW9uKCkuYmFzZU9mZnNldCBpcyAyMQotUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlz
IDAKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0IGlzIDAKLVBBU1MgZ2V0U2VsZWN0
aW9uKCkuYmFzZU9mZnNldCBpcyAxMjQKLVBBU1MgZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0
IGlzIDEyNAotUEFTUyBnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IGlzIDEyNAotUEFTUyBnZXRT
ZWxlY3Rpb24oKS5leHRlbnRPZmZzZXQgaXMgMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRp
b24uaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9lZGl0aW5nL3NlbGVjdGlvbi9jYXJl
dC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggOWY1ODRjMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
dGsvZWRpdGluZy9zZWxlY3Rpb24vY2FyZXQtbW9kZS1wYXJhZ3JhcGgta2V5cy1uYXZpZ2F0aW9u
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+
Ci08c2NyaXB0PgotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IGZhbHNlOwotPC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0idGFyZ2V0Ij5UaGlzIHRlc3RzIHRo
YXQga2V5cyBuYXZpZ2F0aW9uIHRocm91Z2ggYSBwYXJhZ3JhcGggd29yayBhcyBleHBlY3RlZCB3
aGVuIGluIGNhcmV0IG1vZGUsIGFsc28gd2l0aCBzaGlmdCBhbmQgY3RybCBtb2RpZmllcnMuPC9w
PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxz
Y3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IGtleXMgbmF2aWdhdGlvbiB0aHJv
dWdoIGEgcGFyYWdyYXBoIHdvcmsgYXMgZXhwZWN0ZWQgd2hlbiBpbiBjYXJldCBtb2RlLCBhbHNv
IHdpdGggc2hpZnQgYW5kIGN0cmwgbW9kaWZpZXJzLiIpOwotCi1pZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKSB7Ci0gIGxheW91dFRlc3RDb250cm9sbGVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0RW5hYmxlQ2FyZXRCcm93c2luZyIsIHRydWUpOwotICBsYXlvdXRUZXN0Q29udHJv
bGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0YXJnZXQiKTsKLSAgdGFyZ2V0LmZvY3VzKCk7Ci0gIHdpbmRvdy5nZXRTZWxlY3Rpb24o
KS5zZXRQb3NpdGlvbih0YXJnZXQuY2hpbGROb2Rlcy5pdGVtKDApLCAxNSk7Ci0KLSAgLy8gY2hl
Y2sgbGVmdC9yaWdodCBhcnJvd3MKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZz
ZXQiLCAiMTUiKTsKLSAgZXZlbnRTZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIpOwotICBzaG91
bGRCZSgiZ2V0U2VsZWN0aW9uKCkuYmFzZU9mZnNldCIsICIxNiIpOwotICBldmVudFNlbmRlci5r
ZXlEb3duKCJsZWZ0QXJyb3ciKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZz
ZXQiLCAiMTUiKTsKLQotICAvLyBjaGVjayBsZWZ0L3JpZ2h0IGFycm93cyArIFNoaWZ0Ci0gIGV2
ZW50U2VuZGVyLmtleURvd24oInJpZ2h0QXJyb3ciLCBbInNoaWZ0S2V5Il0pOwotICBldmVudFNl
bmRlci5rZXlEb3duKCJyaWdodEFycm93IiwgWyJzaGlmdEtleSJdKTsKLSAgZXZlbnRTZW5kZXIu
a2V5RG93bigicmlnaHRBcnJvdyIsIFsic2hpZnRLZXkiXSk7Ci0gIHNob3VsZEJlKCJnZXRTZWxl
Y3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjE1Iik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5l
eHRlbnRPZmZzZXQiLCAiMTgiKTsKLSAgZXZlbnRTZW5kZXIua2V5RG93bigibGVmdEFycm93Iiwg
WyJzaGlmdEtleSJdKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAi
MTUiKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIxNyIpOwot
Ci0gIC8vIGNoZWNrIGxlZnQvcmlnaHQgYXJyb3dzICsgQ3RybAotICBldmVudFNlbmRlci5rZXlE
b3duKCJyaWdodEFycm93IiwgWyJjdHJsS2V5Il0pOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9u
KCkuYmFzZU9mZnNldCIsICIyMCIpOwotICBldmVudFNlbmRlci5rZXlEb3duKCJsZWZ0QXJyb3ci
LCBbImN0cmxLZXkiXSk7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0Iiwg
IjE2Iik7Ci0KLSAgLy8gY2hlY2sgbGVmdC9yaWdodCBhcnJvd3MgKyBDdHJsICsgU2hpZnQKLSAg
ZXZlbnRTZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIsIFsiY3RybEtleSIsICJzaGlmdEtleSJd
KTsKLSAgZXZlbnRTZW5kZXIua2V5RG93bigicmlnaHRBcnJvdyIsIFsiY3RybEtleSIsICJzaGlm
dEtleSJdKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmJhc2VPZmZzZXQiLCAiMTYiKTsK
LSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIzMSIpOwotICBldmVu
dFNlbmRlci5rZXlEb3duKCJsZWZ0QXJyb3ciLCBbImN0cmxLZXkiXSk7Ci0gIHNob3VsZEJlKCJn
ZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjIxIik7Ci0KLSAgLy8gY2hlY2sgaG9tZS9lbmQg
a2V5cyBib3RoIGZvciBjYXJldCBhbmQgcmFuZ2Ugc2VsZWN0aW9ucwotICBldmVudFNlbmRlci5r
ZXlEb3duKCJob21lIik7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0Iiwg
IjAiKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9mZnNldCIsICIwIik7Ci0g
IGV2ZW50U2VuZGVyLmtleURvd24oImVuZCIpOwotICBzaG91bGRCZSgiZ2V0U2VsZWN0aW9uKCku
YmFzZU9mZnNldCIsICIxMjQiKTsKLSAgc2hvdWxkQmUoImdldFNlbGVjdGlvbigpLmV4dGVudE9m
ZnNldCIsICIxMjQiKTsKLSAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFsic2hpZnRLZXki
XSk7Ci0gIHNob3VsZEJlKCJnZXRTZWxlY3Rpb24oKS5iYXNlT2Zmc2V0IiwgIjEyNCIpOwotICBz
aG91bGRCZSgiZ2V0U2VsZWN0aW9uKCkuZXh0ZW50T2Zmc2V0IiwgIjAiKTsKLX0KLQotc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCmluZGV4IDJmODg5OWMuLmZkZjc4MmEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCkBAIC0yNzQsMyArMjc0LDYgQEAgcGx1Z2lucy9ldmFs
dWF0ZS1qcy1hZnRlci1yZW1vdmluZy1wbHVnaW4tZWxlbWVudC5odG1sCiAKICMgVmVyeSBmbGFr
eTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MTgyCiBhbmltYXRp
b25zL3N0b3AtYW5pbWF0aW9uLW9uLXN1c3BlbmQuaHRtbAorCisjIERSVCBkb2VzIG5vdCBzdXBw
b3J0IHRvZ2dsaW5nIGNhcmV0IGJyb3dzaW5nIG9uIC8gb2ZmCitMYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9jYXJldC1tb2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCAzMTE2ZmEzLi4yZDAxOTJhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vU2tpcHBlZApAQCAtMTA4MiwzICsxMDgyLDYgQEAgZWRpdGluZy90ZXh0LWl0ZXJhdG9y
L2ZpbmRTdHJpbmcuaHRtbAogIyBUaGUgcmVsZXZhbnQgYnVncyBhcmUgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3ODQ5LzQ3ODE3LgogZmFzdC9mcmFtZXMvbG9jYXRp
b24tcmVkaXJlY3QtdXNlci1nZXN0dXJlLmh0bWwKIGZhc3QvZnJhbWVzL21ldGEtcmVmcmVzaC11
c2VyLWdlc3R1cmUuaHRtbAorCisjIERSVCBkb2VzIG5vdCBzdXBwb3J0IHRvZ2dsaW5nIGNhcmV0
IGJyb3dzaW5nIG9uIC8gb2ZmCitMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9jYXJldC1t
b2RlLXBhcmFncmFwaC1rZXlzLW5hdmlnYXRpb24uaHRtbApkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0
L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggZDM2MTYyNC4uMjI2NmMzNCAx
MDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMTItMDUgIEFudG9uaW8gR29tZXMgIDxhZ29tZXNAcmlt
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBb
UXRdIEZpeCBjYXJldCBicm93c2luZyBuYXZpZ2F0aW9uIG1vZGUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNTM2CisKKyAgICAgICAgQ2FyZXQgYnJv
d3NpbmcgY2FuIGNvbnN1bWUgZWRpdGluZyBjb21tYW5kcyBldmVuIHdoZW4gdGhlIHN0YXJ0Cisg
ICAgICAgIG9mIGN1cnJlbnQgc2VsZWN0aW9uIGlzIG5vdCBhIGVkaXRhYmxlIGNvbnRlbnQuIHI2
OTU4MiBtaXNzZWQgdGhpcworICAgICAgICBjYXNlIGJlY2F1c2UgY2FyZXQgYnJvd3NpbmcgZmVh
dHVyZSB0ZXN0aW5nIGlzIHZlcnkgcG9vciB0b2RheS4KKworICAgICAgICBUaGlzIGNvbW1pdCBy
ZWludHJvZHVjZXMgcGFydCBvZiB0aGUgcmVtb3ZlZCBjb2RlIGluIHI2OTU4MiBidXQKKyAgICAg
ICAgZ3VhcmRlZCBieSBhIGlzQ2FyZXRCcm93c2luZ0VuYWJsZWQoKSBjaGVjay4gTm8gcmVncmVz
c2lvbiBmb3VuZC4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudFF0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudFF0OjpoYW5kbGVLZXlib2FyZEV2ZW50
KToKKwogMjAxMC0xMi0wMSAgSmlhIFB1ICA8anB1QGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9FZGl0b3JDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xp
ZW50UXQuY3BwCmluZGV4IDQ2ZWVlYjAuLjU2NmZhZDQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L0VkaXRvckNsaWVudFF0LmNwcApAQCAtMzQ4LDcgKzM0OCw3IEBAIHZvaWQgRWRpdG9y
Q2xpZW50UXQ6OnRvZ2dsZUdyYW1tYXJDaGVja2luZygpCiB2b2lkIEVkaXRvckNsaWVudFF0Ojpo
YW5kbGVLZXlib2FyZEV2ZW50KEtleWJvYXJkRXZlbnQqIGV2ZW50KQogewogICAgIEZyYW1lKiBm
cmFtZSA9IG1fcGFnZS0+ZC0+cGFnZS0+Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRPck1haW5G
cmFtZSgpOwotICAgIGlmICghZnJhbWUgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5mb2N1c2VkTm9k
ZSgpKQorICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIGNvbnN0IFBsYXRm
b3JtS2V5Ym9hcmRFdmVudCoga2V2ZW50ID0gZXZlbnQtPmtleUV2ZW50KCk7CkBAIC0zNzMsNiAr
MzczLDcgQEAgdm9pZCBFZGl0b3JDbGllbnRRdDo6aGFuZGxlS2V5Ym9hcmRFdmVudChLZXlib2Fy
ZEV2ZW50KiBldmVudCkKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAg
IH0KKwogI2lmbmRlZiBRVF9OT19TSE9SVENVVAogICAgICAgICBRV2ViUGFnZTo6V2ViQWN0aW9u
IGFjdGlvbiA9IFFXZWJQYWdlUHJpdmF0ZTo6ZWRpdG9yQWN0aW9uRm9yS2V5RXZlbnQoa2V2ZW50
LT5xdEV2ZW50KCkpOwogICAgICAgICBpZiAoYWN0aW9uICE9IFFXZWJQYWdlOjpOb1dlYkFjdGlv
biAmJiAhZG9TcGF0aWFsTmF2aWdhdGlvbikgewpAQCAtNDY1LDYgKzQ2Niw2MiBAQCB2b2lkIEVk
aXRvckNsaWVudFF0OjpoYW5kbGVLZXlib2FyZEV2ZW50KEtleWJvYXJkRXZlbnQqIGV2ZW50KQog
ICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CisgICAgICAg
IGlmIChtX3BhZ2UtPmhhbmRsZSgpLT5wYWdlLT5zZXR0aW5ncygpLT5jYXJldEJyb3dzaW5nRW5h
YmxlZCgpKSB7CisgICAgICAgICAgICBzd2l0Y2ggKGtldmVudC0+d2luZG93c1ZpcnR1YWxLZXlD
b2RlKCkpIHsKKyAgICAgICAgICAgIGNhc2UgVktfTEVGVDoKKyAgICAgICAgICAgICAgICBpZiAo
a2V2ZW50LT5zaGlmdEtleSgpICYmIGtldmVudC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAg
ICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVXb3JkQmFja3dhcmRBbmRNb2RpZnlT
ZWxlY3Rpb24iKS5leGVjdXRlKCk7CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoa2V2ZW50LT5z
aGlmdEtleSgpKQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQo
Ik1vdmVMZWZ0QW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAg
IGVsc2UgaWYgKGtldmVudC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+
ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVXb3JkQmFja3dhcmQiKS5leGVjdXRlKCk7CisgICAgICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1h
bmQoIk1vdmVMZWZ0IikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgICAgY2FzZSBWS19SSUdIVDoKKyAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5zaGlmdEtl
eSgpICYmIGtldmVudC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRp
dG9yKCktPmNvbW1hbmQoIk1vdmVXb3JkRm9yd2FyZEFuZE1vZGlmeVNlbGVjdGlvbiIpLmV4ZWN1
dGUoKTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChrZXZlbnQtPnNoaWZ0S2V5KCkpCisgICAg
ICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVJpZ2h0QW5kTW9k
aWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVu
dC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1h
bmQoIk1vdmVXb3JkRm9yd2FyZCIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVJpZ2h0Iiku
ZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBWS19V
UDoKKyAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5zaGlmdEtleSgpKQorICAgICAgICAgICAg
ICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVVcEFuZE1vZGlmeVNlbGVjdGlv
biIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAg
IGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVVwIikuZXhlY3V0ZSgpOworICAgICAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBWS19ET1dOOgorICAgICAgICAgICAgICAg
IGlmIChrZXZlbnQtPnNoaWZ0S2V5KCkpCisgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0
b3IoKS0+Y29tbWFuZCgiTW92ZURvd25BbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRlKCk7Cisg
ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCkt
PmNvbW1hbmQoIk1vdmVEb3duIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgY2FzZSBWS19QUklPUjogLy8gUGFnZVVwCisgICAgICAgICAgICAgICAgZnJh
bWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlUGFnZVVwIikuZXhlY3V0ZSgpOworICAgICAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBWS19ORVhUOiAvLyBQYWdlRG93bgorICAg
ICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVBhZ2VEb3duIikuZXhl
Y3V0ZSgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBWS19IT01F
OgorICAgICAgICAgICAgICAgIGlmIChrZXZlbnQtPnNoaWZ0S2V5KCkpCisgICAgICAgICAgICAg
ICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVRvQmVnaW5uaW5nT2ZMaW5lQW5k
TW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlVG9CZWdpbm5pbmdP
ZkxpbmUiKS5leGVjdXRlKCk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBj
YXNlIFZLX0VORDoKKyAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5zaGlmdEtleSgpKQorICAg
ICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVUb0VuZE9mTGlu
ZUFuZE1vZGlmeVNlbGVjdGlvbiIpLmV4ZWN1dGUoKTsKKyAgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVRvRW5kT2ZM
aW5lIikuZXhlY3V0ZSgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQog
I2lmbmRlZiBRVF9OT19TSE9SVENVVAogICAgICAgICBpZiAoa2V2ZW50LT5xdEV2ZW50KCkgPT0g
UUtleVNlcXVlbmNlOjpDb3B5KQogICAgICAgICAgICAgbV9wYWdlLT50cmlnZ2VyQWN0aW9uKFFX
ZWJQYWdlOjpDb3B5KTsKLS0gCjEuNy4xCgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>