<?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>198210</bug_id>
          
          <creation_ts>2019-05-23 21:12:26 -0700</creation_ts>
          <short_desc>Web Inspector: Network:  provide a way to accept alternate types of certificate data</short_desc>
          <delta_ts>2019-08-29 00:34:45 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>bburg</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1538926</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-23 21:12:26 -0700</bug_when>
    <thetext>Both the Network agent and `InspectorFrontendHost` use a `CertificateInfo` for encoding/decoding, but other devices/frameworks may not have included the entirety of WebKit (including WebCore), and therefore may only have a smaller subset of the data.  There should be a way to send back other types of certificate data from `Network.getSerializedCertificate` that `InspectorFrontendHost::showCertificate` can then handle.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538927</commentid>
    <comment_count>1</comment_count>
      <attachid>370557</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-23 21:17:00 -0700</bug_when>
    <thetext>Created attachment 370557
Patch

Rather than create an API for it, this may be a simpler solution for clients using the Security framework.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538930</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-05-23 21:18:51 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol. Please ensure that any frontend changes appropriately use feature checks for new protocol features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539030</commentid>
    <comment_count>3</comment_count>
      <attachid>370557</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-24 12:30:17 -0700</bug_when>
    <thetext>Comment on attachment 370557
Patch

cq-, while we discuss if this is the right way forward</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540902</commentid>
    <comment_count>4</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-31 17:01:31 -0700</bug_when>
    <thetext>&lt;rdar://problem/51076339&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1547706</commentid>
    <comment_count>5</comment_count>
      <attachid>370557</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-06-25 09:37:19 -0700</bug_when>
    <thetext>Comment on attachment 370557
Patch

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

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:490
&gt; +    if (type.isEmpty() || type == &quot;WebCore&quot;) {

This could use `Inspector::Protocol::InspectorHelpers::getEnumConstantValue(Inspector::Protocol::Security::SerializedCertificateType::WebCore)` instead.

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:495
&gt; +    else if (type == &quot;SecTrustRef&quot;) {

Ditto (&gt;490).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1558916</commentid>
    <comment_count>6</comment_count>
      <attachid>370557</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2019-08-06 13:41:11 -0700</bug_when>
    <thetext>Comment on attachment 370557
Patch

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

I am worried about this breaking. How can we test this?

&gt; Source/JavaScriptCore/inspector/protocol/Network.json:209
&gt; +                { &quot;name&quot;: &quot;serializedCertificate&quot;, &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Represents a base64 encoded certificat object.&quot; },

Nit: certificate

&gt; Source/WebCore/platform/network/cf/CertificateInfo.h:153
&gt; +static bool decodeSecTrustRefIfAble(Decoder&amp; decoder, RetainPtr&lt;SecTrustRef&gt;&amp; result)

I don&apos;t understand the need to shell this out. What&apos;s wrong with the existing decodeSecTrustRef?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1566141</commentid>
    <comment_count>7</comment_count>
      <attachid>370557</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-08-29 00:34:45 -0700</bug_when>
    <thetext>Comment on attachment 370557
Patch

Clearing flags to remove from review queue while we discuss the necessity of this approach.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370557</attachid>
            <date>2019-05-23 21:17:00 -0700</date>
            <delta_ts>2019-08-29 00:34:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198210-20190523211659.patch</filename>
            <type>text/plain</type>
            <size>14036</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGU5ZDM0YjhiYWZkMTRjMWE2NmFhYjZjNjZmOGQ2
MDNmZTE3YzEyOGQuLmE4NWUwMTQyOTQxZDE3Y2IzMThlMmJlMGJmYjYyMWU4MzFjMjIwMzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE5LTA1LTIzICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBO
ZXR3b3JrOiAgcHJvdmlkZSBhIHdheSB0byBhY2NlcHQgYWx0ZXJuYXRlIHR5cGVzIG9mIGNlcnRp
ZmljYXRlIGRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5ODIxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEJvdGggdGhlIE5ldHdvcmsgYWdlbnQgYW5kIGBJbnNwZWN0b3JGcm9udGVuZEhvc3RgIHVz
ZSBhIGBDZXJ0aWZpY2F0ZUluZm9gIGZvciBlbmNvZGluZyBhbmQKKyAgICAgICAgZGVjb2Rpbmcs
IGJ1dCBvdGhlciBkZXZpY2VzIG9yIGZyYW1ld29ya3MgbWF5IG5vdCBoYXZlIGluY2x1ZGVkIHRo
ZSBlbnRpcmV0eSBvZiBXZWJLaXQsIGFuZAorICAgICAgICB0aGVyZWZvcmUgbWF5IG9ubHkgaGF2
ZSBhIHNtYWxsZXIgc3Vic2V0IG9mIHRoZSBkYXRhIGV4cGVjdGVkIGJ5IGBDZXJ0aWZpY2F0ZUlu
Zm9gLgorCisgICAgICAgIFRoZXJlIHNob3VsZCBiZSBhIHdheSB0byBzZW5kIGJhY2sgb3RoZXIg
dHlwZXMgb2YgY2VydGlmaWNhdGUgZGF0YSBmcm9tCisgICAgICAgIGBOZXR3b3JrLmdldFNlcmlh
bGl6ZWRDZXJ0aWZpY2F0ZWAgdGhhdCBgSW5zcGVjdG9yRnJvbnRlbmRIb3N0OjpzaG93Q2VydGlm
aWNhdGVgIGNhbiB0aGVuCisgICAgICAgIGhhbmRsZS4KKworICAgICAgICAqIGluc3BlY3Rvci9w
cm90b2NvbC9OZXR3b3JrLmpzb246CisgICAgICAgICogaW5zcGVjdG9yL3Byb3RvY29sL1NlY3Vy
aXR5Lmpzb246CisKIDIwMTktMDUtMjMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IE92ZXJsYXk6IHJ1bGVycy9ndWlkZXMgc2hvdWxk
IGJlIHNob3duIHdoZW5ldmVyIGVsZW1lbnQgc2VsZWN0aW9uIGlzIGVuYWJsZWQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCAxYmFlMWVlNWZiNmUxZDBjYTNiNmZiNTczM2ZjYmJiNGQyMjhmMTBjLi4wMWZhYmE0Zjcx
N2JhZmE2YTFlMThjZTg1MjZmY2Y1ZWM2MjBiMzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIg
QEAKKzIwMTktMDUtMjMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgorCisgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IE5ldHdvcms6ICBwcm92aWRlIGEgd2F5IHRvIGFjY2VwdCBhbHRl
cm5hdGUgdHlwZXMgb2YgY2VydGlmaWNhdGUgZGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4MjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQm90aCB0aGUgTmV0d29yayBhZ2VudCBhbmQgYEluc3Bl
Y3RvckZyb250ZW5kSG9zdGAgdXNlIGEgYENlcnRpZmljYXRlSW5mb2AgZm9yIGVuY29kaW5nIGFu
ZAorICAgICAgICBkZWNvZGluZywgYnV0IG90aGVyIGRldmljZXMgb3IgZnJhbWV3b3JrcyBtYXkg
bm90IGhhdmUgaW5jbHVkZWQgdGhlIGVudGlyZXR5IG9mIFdlYktpdCwgYW5kCisgICAgICAgIHRo
ZXJlZm9yZSBtYXkgb25seSBoYXZlIGEgc21hbGxlciBzdWJzZXQgb2YgdGhlIGRhdGEgZXhwZWN0
ZWQgYnkgYENlcnRpZmljYXRlSW5mb2AuCisKKyAgICAgICAgVGhlcmUgc2hvdWxkIGJlIGEgd2F5
IHRvIHNlbmQgYmFjayBvdGhlciB0eXBlcyBvZiBjZXJ0aWZpY2F0ZSBkYXRhIGZyb20KKyAgICAg
ICAgYE5ldHdvcmsuZ2V0U2VyaWFsaXplZENlcnRpZmljYXRlYCB0aGF0IGBJbnNwZWN0b3JGcm9u
dGVuZEhvc3Q6OnNob3dDZXJ0aWZpY2F0ZWAgY2FuIHRoZW4KKyAgICAgICAgaGFuZGxlLgorCisg
ICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGw6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oOgorICAgICAgICAqIGluc3BlY3Rvci9J
bnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRnJv
bnRlbmRIb3N0OjpzaG93Q2VydGlmaWNhdGUpOgorCisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3Rvck5ldHdvcmtBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmdldFNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZSk6CisKKyAgICAgICAgKiBwbGF0Zm9y
bS9uZXR3b3JrL2NmL0NlcnRpZmljYXRlSW5mby5oOgorICAgICAgICAoV1RGOjpQZXJzaXN0ZW5j
ZTo6ZGVjb2RlU2VjVHJ1c3RSZWYpOgorICAgICAgICAoV1RGOjpQZXJzaXN0ZW5jZTo6ZGVjb2Rl
U2VjVHJ1c3RSZWZJZkFibGUpOiBBZGRlZC4KKyAgICAgICAgKFdURjo6UGVyc2lzdGVuY2U6OkNv
ZGVyPFdlYkNvcmU6OkNlcnRpZmljYXRlSW5mbz46OmRlY29kZSk6CisKIDIwMTktMDUtMjMgIERl
dmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6
IE92ZXJsYXk6IHJ1bGVycy9ndWlkZXMgc2hvdWxkIGJlIHNob3duIHdoZW5ldmVyIGVsZW1lbnQg
c2VsZWN0aW9uIGlzIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGUzYWE4NWIw
MjIyYzY5NWE4N2ExYzQ4ZmM4YzU2NTNkODE1OTA2YTYuLjFjOTFkMDA5MTgzNTZjMWU1YmNkNjY5
ZjIwMTljZTYxYTZjYzI3MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIx
IEBACisyMDE5LTA1LTIzICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAg
ICAgICBXZWIgSW5zcGVjdG9yOiBOZXR3b3JrOiAgcHJvdmlkZSBhIHdheSB0byBhY2NlcHQgYWx0
ZXJuYXRlIHR5cGVzIG9mIGNlcnRpZmljYXRlIGRhdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODIxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEJvdGggdGhlIE5ldHdvcmsgYWdlbnQgYW5kIGBJbnNw
ZWN0b3JGcm9udGVuZEhvc3RgIHVzZSBhIGBDZXJ0aWZpY2F0ZUluZm9gIGZvciBlbmNvZGluZyBh
bmQKKyAgICAgICAgZGVjb2RpbmcsIGJ1dCBvdGhlciBkZXZpY2VzIG9yIGZyYW1ld29ya3MgbWF5
IG5vdCBoYXZlIGluY2x1ZGVkIHRoZSBlbnRpcmV0eSBvZiBXZWJLaXQsIGFuZAorICAgICAgICB0
aGVyZWZvcmUgbWF5IG9ubHkgaGF2ZSBhIHNtYWxsZXIgc3Vic2V0IG9mIHRoZSBkYXRhIGV4cGVj
dGVkIGJ5IGBDZXJ0aWZpY2F0ZUluZm9gLgorCisgICAgICAgIFRoZXJlIHNob3VsZCBiZSBhIHdh
eSB0byBzZW5kIGJhY2sgb3RoZXIgdHlwZXMgb2YgY2VydGlmaWNhdGUgZGF0YSBmcm9tCisgICAg
ICAgIGBOZXR3b3JrLmdldFNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZWAgdGhhdCBgSW5zcGVjdG9yRnJv
bnRlbmRIb3N0OjpzaG93Q2VydGlmaWNhdGVgIGNhbiB0aGVuCisgICAgICAgIGhhbmRsZS4KKwor
ICAgICAgICAqIFVzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzOgorICAgICAgICAoV0ku
UmVzb3VyY2UucHJvdG90eXBlLmFzeW5jIHNob3dDZXJ0aWZpY2F0ZSk6CisKIDIwMTktMDUtMjMg
IERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0
b3I6IE92ZXJsYXk6IHJ1bGVycy9ndWlkZXMgc2hvdWxkIGJlIHNob3duIHdoZW5ldmVyIGVsZW1l
bnQgc2VsZWN0aW9uIGlzIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvcHJvdG9jb2wvTmV0d29yay5qc29uIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9wcm90b2NvbC9OZXR3b3JrLmpzb24KaW5kZXggMWVkNDQ3MTNmNjE1YmEwNzM3
Yzk5NTRhZjY3MTc0NDMxNjNkZGFkYi4uZDAyMDU0ZGFlZGRiMjYzZjU3MDA1YzA4YjJhYmUzNmI1
NDFhODE2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90
b2NvbC9OZXR3b3JrLmpzb24KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9w
cm90b2NvbC9OZXR3b3JrLmpzb24KQEAgLTIwNiw3ICsyMDYsOCBAQAogICAgICAgICAgICAgICAg
IHsgIm5hbWUiOiAicmVxdWVzdElkIiwgIiRyZWYiOiAiUmVxdWVzdElkIiB9CiAgICAgICAgICAg
ICBdLAogICAgICAgICAgICAgInJldHVybnMiOiBbCi0gICAgICAgICAgICAgICAgeyAibmFtZSI6
ICJzZXJpYWxpemVkQ2VydGlmaWNhdGUiLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRpb24i
OiAiUmVwcmVzZW50cyBhIGJhc2U2NCBlbmNvZGVkIFdlYkNvcmU6OkNlcnRpZmljYXRlSW5mbyBv
YmplY3QuIiB9CisgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJzZXJpYWxpemVkQ2VydGlmaWNh
dGUiLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRpb24iOiAiUmVwcmVzZW50cyBhIGJhc2U2
NCBlbmNvZGVkIGNlcnRpZmljYXQgb2JqZWN0LiIgfSwKKyAgICAgICAgICAgICAgICB7ICJuYW1l
IjogInR5cGUiLCAiJHJlZiI6ICJTZWN1cml0eS5TZXJpYWxpemVkQ2VydGlmaWNhdGVUeXBlIiwg
ImRlc2NyaXB0aW9uIjogIkluZGljYXRlcyB3aGF0IHR5cGUgb2YgY2VydGlmaWNhdGUgaXMgZW5j
b2RlZCBpbiA8Y29kZT5zZXJpYWxpemVkQ2VydGlmaWNhdGU8L2NvZGUuIiB9CiAgICAgICAgICAg
ICBdCiAgICAgICAgIH0sCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvU2VjdXJpdHkuanNvbiBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvU2VjdXJpdHkuanNvbgppbmRleCA0YzE2MTM1ZmMxNzg0
N2IxZTQ5YWYyYzFjOGNjMDBiN2I4NTA1NTU0Li5lNmYxOWYzY2ZhYzQ5ZTQ5N2Q4N2YyMzI0ZmFi
N2E2YmRkY2IzMjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3Byb3RvY29sL1NlY3VyaXR5Lmpzb24KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9wcm90b2NvbC9TZWN1cml0eS5qc29uCkBAIC0yMyw2ICsyMywxMiBAQAogICAgICAgICAg
ICAgICAgIHsgIm5hbWUiOiAiaXBBZGRyZXNzZXMiLCAidHlwZSI6ICJhcnJheSIsICJpdGVtcyI6
IHsgInR5cGUiOiAic3RyaW5nIiB9LCAib3B0aW9uYWwiOiB0cnVlLCAiZGVzY3JpcHRpb24iOiAi
SVAgYWRkcmVzc2VzIGxpc3RlZCBvbiB0aGUgY2VydGlmaWNhdGUuIn0KICAgICAgICAgICAgIF0K
ICAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgImlkIjogIlNlcmlhbGl6ZWRDZXJ0
aWZpY2F0ZVR5cGUiLAorICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKKyAgICAgICAgICAg
ICJlbnVtIjogWyJXZWJDb3JlIiwgIlNlY1RydXN0UmVmIl0sCisgICAgICAgICAgICAiZGVzY3Jp
cHRpb24iOiAiSWRlbnRpZmllcyB3aGF0IHR5cGUgb2YgY2VydGlmaWNhdGUgaXMgcmVwcmVzZW50
ZWQgaW4gdGhlIHNlcmlhbGl6ZWQgc3RyaW5nLiIKKyAgICAgICAgfSwKICAgICAgICAgewogICAg
ICAgICAgICAgImlkIjogIlNlY3VyaXR5IiwKICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRI
b3N0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3Qu
Y3BwCmluZGV4IDY0ZDFhYmFlYzI3OGIxZmUxNDJlMjE2MTJiMTY1OTliODk0OWNiMjAuLjFhOTRh
YjkxMTk4MTdmNjM0YjRiY2I0YmRlMzgzZDI0NmEzZGFlYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCkBAIC00NzUsNyArNDc1
LDcgQEAgYm9vbCBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6OnN1cHBvcnRzU2hvd0NlcnRpZmljYXRl
KCkgY29uc3QKICNlbmRpZgogfQogCi1ib29sIEluc3BlY3RvckZyb250ZW5kSG9zdDo6c2hvd0Nl
cnRpZmljYXRlKGNvbnN0IFN0cmluZyYgc2VyaWFsaXplZENlcnRpZmljYXRlKQorYm9vbCBJbnNw
ZWN0b3JGcm9udGVuZEhvc3Q6OnNob3dDZXJ0aWZpY2F0ZShjb25zdCBTdHJpbmcmIHNlcmlhbGl6
ZWRDZXJ0aWZpY2F0ZSwgY29uc3QgU3RyaW5nJiB0eXBlKQogewogICAgIGlmICghbV9jbGllbnQp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTQ4Niw4ICs0ODYsMjQgQEAgYm9vbCBJbnNwZWN0
b3JGcm9udGVuZEhvc3Q6OnNob3dDZXJ0aWZpY2F0ZShjb25zdCBTdHJpbmcmIHNlcmlhbGl6ZWRD
ZXJ0aWZpY2F0ZSkKIAogICAgIENlcnRpZmljYXRlSW5mbyBjZXJ0aWZpY2F0ZUluZm87CiAgICAg
V1RGOjpQZXJzaXN0ZW5jZTo6RGVjb2RlciBkZWNvZGVyKGRhdGEuZGF0YSgpLCBkYXRhLnNpemUo
KSk7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShjZXJ0aWZpY2F0ZUluZm8pKQorCisgICAgaWYg
KHR5cGUuaXNFbXB0eSgpIHx8IHR5cGUgPT0gIldlYkNvcmUiKSB7CisgICAgICAgIGlmICghZGVj
b2Rlci5kZWNvZGUoY2VydGlmaWNhdGVJbmZvKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
KyAgICB9CisjaWYgSEFWRShTRUNfVFJVU1RfU0VSSUFMSVpBVElPTikKKyAgICBlbHNlIGlmICh0
eXBlID09ICJTZWNUcnVzdFJlZiIpIHsKKyAgICAgICAgUmV0YWluUHRyPFNlY1RydXN0UmVmPiB0
cnVzdDsKKyAgICAgICAgaWYgKCFXVEY6OlBlcnNpc3RlbmNlOjpkZWNvZGVTZWNUcnVzdFJlZihk
ZWNvZGVyLCB0cnVzdCkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgY2Vy
dGlmaWNhdGVJbmZvID0gQ2VydGlmaWNhdGVJbmZvKFdURk1vdmUodHJ1c3QpKTsKKyAgICB9Cisj
ZW5kaWYKKyAgICBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CiAKICAgICBpZiAoY2VydGlmaWNhdGVJbmZvLmlzRW1wdHko
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5oCmluZGV4IDMwMTdjYjc2YzA5ZTVkMjdlZTQxNmVkNWM5
YmM0N2QzYjBlY2RjYWIuLjkwOGUxNDI5YzU4NjAwOTBjNDc5ZDYxOGI0N2JmZTE3MmMxM2RhNzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0
LmgKQEAgLTYyLDcgKzYyLDcgQEAgcHVibGljOgogICAgIHZvaWQgaW5zcGVjdGVkVVJMQ2hhbmdl
ZChjb25zdCBTdHJpbmcmKTsKIAogICAgIGJvb2wgc3VwcG9ydHNTaG93Q2VydGlmaWNhdGUoKSBj
b25zdDsKLSAgICBib29sIHNob3dDZXJ0aWZpY2F0ZShjb25zdCBTdHJpbmcmIHNlcmlhbGl6ZWRD
ZXJ0aWZpY2F0ZSk7CisgICAgYm9vbCBzaG93Q2VydGlmaWNhdGUoY29uc3QgU3RyaW5nJiBzZXJp
YWxpemVkQ2VydGlmaWNhdGUsIGNvbnN0IFN0cmluZyYgdHlwZSk7CiAKICAgICB2b2lkIHNldFpv
b21GYWN0b3IoZmxvYXQpOwogICAgIGZsb2F0IHpvb21GYWN0b3IoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaWRsIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwKaW5kZXggMDIzYTM5
Y2JjOGYwODg0ZTM5MGIyOTgyMmQxOWJkYWZmYTkxMjk5Mi4uNDk0Y2ExOGIwMDg5MDg1MTQ2YTM0
N2NjMzVhY2ExZDhhMTIzMTQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwKQEAgLTQxLDcgKzQxLDcgQEAKICAgICB2b2lkIGlu
c3BlY3RlZFVSTENoYW5nZWQoRE9NU3RyaW5nIG5ld1VSTCk7CiAKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgYm9vbGVhbiBzdXBwb3J0c1Nob3dDZXJ0aWZpY2F0ZTsKLSAgICBib29sZWFuIHNob3dD
ZXJ0aWZpY2F0ZShET01TdHJpbmcgc2VyaWFsaXplZENlcnRpZmljYXRlKTsKKyAgICBib29sZWFu
IHNob3dDZXJ0aWZpY2F0ZShET01TdHJpbmcgc2VyaWFsaXplZENlcnRpZmljYXRlLCBET01TdHJp
bmcgdHlwZSk7CiAKICAgICB2b2lkIHNldFpvb21GYWN0b3IodW5yZXN0cmljdGVkIGZsb2F0IHpv
b20pOwogICAgIGZsb2F0IHpvb21GYWN0b3IoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmNwcAppbmRleCA5N2I4
NmZjMGZkZGYwNTNlMjczMWNhNjMxZmRlNmM5MWI5NTAyZGYxLi5hOWQyMTUzNjE5Mjg3NjA4N2Y4
ZDIwODc5MjNlNzZjZTBjNGM0YzczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwCkBAIC05MjQsNyArOTI0
LDcgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmxvYWRSZXNvdXJjZShjb25zdCBTdHJp
bmcmIGZyYW1lSWQsIGNvbnN0IFN0cmluZyYgdXIKICAgICBpbnNwZWN0b3JUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50LT5zZXRMb2FkZXIoV1RGTW92ZShsb2FkZXIpKTsKIH0KIAotdm9pZCBJbnNwZWN0
b3JOZXR3b3JrQWdlbnQ6OmdldFNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZShFcnJvclN0cmluZyYgZXJy
b3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVxdWVzdElkLCBTdHJpbmcqIHNlcmlhbGl6ZWRDZXJ0
aWZpY2F0ZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpnZXRTZXJpYWxpemVkQ2VydGlm
aWNhdGUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIHJlcXVlc3RJZCwg
U3RyaW5nKiBzZXJpYWxpemVkQ2VydGlmaWNhdGUsIEluc3BlY3Rvcjo6UHJvdG9jb2w6OlNlY3Vy
aXR5OjpTZXJpYWxpemVkQ2VydGlmaWNhdGVUeXBlKiB0eXBlKQogewogICAgIGF1dG8qIHJlc291
cmNlRGF0YSA9IG1fcmVzb3VyY2VzRGF0YS0+ZGF0YShyZXF1ZXN0SWQpOwogICAgIGlmICghcmVz
b3VyY2VEYXRhKSB7CkBAIC05NDEsNiArOTQxLDggQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdl
bnQ6OmdldFNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGMK
ICAgICBXVEY6OlBlcnNpc3RlbmNlOjpFbmNvZGVyIGVuY29kZXI7CiAgICAgZW5jb2RlciA8PCBj
ZXJ0aWZpY2F0ZS52YWx1ZSgpOwogICAgICpzZXJpYWxpemVkQ2VydGlmaWNhdGUgPSBiYXNlNjRF
bmNvZGUoZW5jb2Rlci5idWZmZXIoKSwgZW5jb2Rlci5idWZmZXJTaXplKCkpOworCisgICAgKnR5
cGUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpTZWN1cml0eTo6U2VyaWFsaXplZENlcnRpZmljYXRl
VHlwZTo6V2ViQ29yZTsKIH0KIAogV2ViU29ja2V0KiBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6Ondl
YlNvY2tldEZvclJlcXVlc3RJZChjb25zdCBTdHJpbmcmIHJlcXVlc3RJZCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5o
CmluZGV4IDU4ZDhjZGVmMWI4ZGYzNTY0ODllZWM3ZjNmNjFiNDg0NzhlYmQ1YTcuLjEwYjQ4MGRk
MWRiOGMwNDRmOGE2NDc4OGU3MWNmZjI3MDNkZjYwNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaApAQCAtMTE1
LDcgKzExNSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGdldFJlc3BvbnNlQm9keShFcnJvclN0cmlu
ZyYsIGNvbnN0IFN0cmluZyYgcmVxdWVzdElkLCBTdHJpbmcqIGNvbnRlbnQsIGJvb2wqIGJhc2U2
NEVuY29kZWQpIGZpbmFsOwogICAgIHZvaWQgc2V0UmVzb3VyY2VDYWNoaW5nRGlzYWJsZWQoRXJy
b3JTdHJpbmcmLCBib29sIGRpc2FibGVkKSBmaW5hbDsKICAgICB2b2lkIGxvYWRSZXNvdXJjZShj
b25zdCBTdHJpbmcmIGZyYW1lSWQsIGNvbnN0IFN0cmluZyYgdXJsLCBSZWY8TG9hZFJlc291cmNl
Q2FsbGJhY2s+JiYpIGZpbmFsOwotICAgIHZvaWQgZ2V0U2VyaWFsaXplZENlcnRpZmljYXRlKEVy
cm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiByZXF1ZXN0SWQsIFN0cmluZyogc2VyaWFsaXplZENl
cnRpZmljYXRlKSBmaW5hbDsKKyAgICB2b2lkIGdldFNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZShFcnJv
clN0cmluZyYsIGNvbnN0IFN0cmluZyYgcmVxdWVzdElkLCBTdHJpbmcqIHNlcmlhbGl6ZWRDZXJ0
aWZpY2F0ZSwgSW5zcGVjdG9yOjpQcm90b2NvbDo6U2VjdXJpdHk6OlNlcmlhbGl6ZWRDZXJ0aWZp
Y2F0ZVR5cGUqKSBmaW5hbDsKICAgICB2b2lkIHJlc29sdmVXZWJTb2NrZXQoRXJyb3JTdHJpbmcm
LCBjb25zdCBTdHJpbmcmIHJlcXVlc3RJZCwgY29uc3QgU3RyaW5nKiBvYmplY3RHcm91cCwgUmVm
UHRyPEluc3BlY3Rvcjo6UHJvdG9jb2w6OlJ1bnRpbWU6OlJlbW90ZU9iamVjdD4mKSBmaW5hbDsK
IAogICAgIHZpcnR1YWwgU3RyaW5nIGxvYWRlcklkZW50aWZpZXIoRG9jdW1lbnRMb2FkZXIqKSA9
IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0NlcnRp
ZmljYXRlSW5mby5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9DZXJ0aWZp
Y2F0ZUluZm8uaAppbmRleCBmOTMxMTEzMDc5M2MxMzQ4NWFjYzY1N2M0MGQ2YWY1MTk5YjA0OWY4
Li5mOGYwNjczYmU4NzRkZDExM2ExNmQ2ZGI0YTRiZGI4OTBhNDRmMzc1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0NlcnRpZmljYXRlSW5mby5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQ2VydGlmaWNhdGVJbmZvLmgKQEAg
LTEzOCwxMyArMTM4LDYgQEAgc3RhdGljIHZvaWQgZW5jb2RlU2VjVHJ1c3RSZWYoRW5jb2RlciYg
ZW5jb2RlciwgU2VjVHJ1c3RSZWYgdHJ1c3QpCiAKIHN0YXRpYyBib29sIGRlY29kZVNlY1RydXN0
UmVmKERlY29kZXImIGRlY29kZXIsIFJldGFpblB0cjxTZWNUcnVzdFJlZj4mIHJlc3VsdCkKIHsK
LSAgICBib29sIGhhc1RydXN0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoaGFzVHJ1c3QpKQot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBpZiAoIWhhc1RydXN0KQotICAgICAgICByZXR1
cm4gdHJ1ZTsKLQogICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHRydXN0RGF0YTsKICAgICBpZiAo
IWRlY29kZUNGRGF0YShkZWNvZGVyLCB0cnVzdERhdGEpKQogICAgICAgICByZXR1cm4gZmFsc2U7
CkBAIC0xNTYsNiArMTQ5LDE4IEBAIHN0YXRpYyBib29sIGRlY29kZVNlY1RydXN0UmVmKERlY29k
ZXImIGRlY29kZXIsIFJldGFpblB0cjxTZWNUcnVzdFJlZj4mIHJlc3VsdCkKICAgICByZXN1bHQg
PSBXVEZNb3ZlKHRydXN0KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KKworc3RhdGljIGJvb2wgZGVj
b2RlU2VjVHJ1c3RSZWZJZkFibGUoRGVjb2RlciYgZGVjb2RlciwgUmV0YWluUHRyPFNlY1RydXN0
UmVmPiYgcmVzdWx0KQoreworICAgIGJvb2wgaGFzVHJ1c3Q7CisgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShoYXNUcnVzdCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICghaGFzVHJ1
c3QpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGRlY29kZVNlY1RydXN0UmVm
KGRlY29kZXIsIHJlc3VsdCk7Cit9CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQpAQCAt
MjMwLDcgKzIzNSw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IENvZGVyPFdlYkNvcmU6OkNlcnRpZmlj
YXRlSW5mbz4gewogI2lmIEhBVkUoU0VDX1RSVVNUX1NFUklBTElaQVRJT04pCiAgICAgICAgIGNh
c2UgV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjpUeXBlOjpUcnVzdDogewogICAgICAgICAgICAg
UmV0YWluUHRyPFNlY1RydXN0UmVmPiB0cnVzdDsKLSAgICAgICAgICAgIGlmICghZGVjb2RlU2Vj
VHJ1c3RSZWYoZGVjb2RlciwgdHJ1c3QpKQorICAgICAgICAgICAgaWYgKCFkZWNvZGVTZWNUcnVz
dFJlZklmQWJsZShkZWNvZGVyLCB0cnVzdCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgICAgICAgICBjZXJ0aWZpY2F0ZUluZm8gPSBXZWJDb3JlOjpDZXJ0aWZpY2F0ZUlu
Zm8oV1RGTW92ZSh0cnVzdCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCmluZGV4IGRjNzUyMDg2ZDYxMWMzZjg5ZTY3
N2M5YWRkMTIxNzQ5NDM5Njg0NmIuLmQ0MTRhNWVkM2Q3ZDU1MGFiNWQ5MmFjYmQ1Y2I3N2Y3NjBi
ZmVjMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01v
ZGVscy9SZXNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Nb2RlbHMvUmVzb3VyY2UuanMKQEAgLTExMjEsOCArMTEyMSw4IEBAIFdJLlJlc291cmNlID0g
Y2xhc3MgUmVzb3VyY2UgZXh0ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAgIGxldCBlcnJvclN0
cmluZyA9IFdJLlVJU3RyaW5nKCJVbmFibGUgdG8gc2hvdyBjZXJ0aWZpY2F0ZSBmb3IgXHUyMDFD
JXNcdTIwMUQiKS5mb3JtYXQodGhpcy51cmwpOwogCiAgICAgICAgIHRyeSB7Ci0gICAgICAgICAg
ICBsZXQge3NlcmlhbGl6ZWRDZXJ0aWZpY2F0ZX0gPSBhd2FpdCBOZXR3b3JrQWdlbnQuZ2V0U2Vy
aWFsaXplZENlcnRpZmljYXRlKHRoaXMuX3JlcXVlc3RJZGVudGlmaWVyKTsKLSAgICAgICAgICAg
IGlmIChJbnNwZWN0b3JGcm9udGVuZEhvc3Quc2hvd0NlcnRpZmljYXRlKHNlcmlhbGl6ZWRDZXJ0
aWZpY2F0ZSkpCisgICAgICAgICAgICBsZXQge3NlcmlhbGl6ZWRDZXJ0aWZpY2F0ZSwgdHlwZX0g
PSBhd2FpdCBOZXR3b3JrQWdlbnQuZ2V0U2VyaWFsaXplZENlcnRpZmljYXRlKHRoaXMuX3JlcXVl
c3RJZGVudGlmaWVyKTsKKyAgICAgICAgICAgIGlmIChJbnNwZWN0b3JGcm9udGVuZEhvc3Quc2hv
d0NlcnRpZmljYXRlKHNlcmlhbGl6ZWRDZXJ0aWZpY2F0ZSwgdHlwZSB8fCAiIikpCiAgICAgICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICBjb25z
b2xlLmVycm9yKGUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>