<?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>94801</bug_id>
          
          <creation_ts>2012-08-23 05:36:20 -0700</creation_ts>
          <short_desc>MediaStream API: Add toString to RTCIceCandidate and RTCSessionDescription</short_desc>
          <delta_ts>2012-08-27 01:37:40 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>80589</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tommy Widenflycht">tommyw</reporter>
          <assigned_to name="Tommy Widenflycht">tommyw</assigned_to>
          <cc>abarth</cc>
    
    <cc>ekr</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>702898</commentid>
    <comment_count>0</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-23 05:36:20 -0700</bug_when>
    <thetext>Also fix a few review comments from an earlier patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702904</commentid>
    <comment_count>1</comment_count>
      <attachid>160139</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-23 05:43:55 -0700</bug_when>
    <thetext>Created attachment 160139
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703113</commentid>
    <comment_count>2</comment_count>
      <attachid>160139</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-23 10:19:12 -0700</bug_when>
    <thetext>Comment on attachment 160139
Patch

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

&gt; Source/WebCore/Modules/mediastream/RTCIceCandidate.cpp:93
&gt; +    String result = &quot;({candidate:\&quot;&quot; + candidate() + &quot;\&quot;,sdpMid:\&quot;&quot; + sdpMid() + &quot;\&quot;,sdpMLineIndex:&quot; + String::number(sdpMLineIndex()) + &quot;})&quot;;

Is this meant to be JSON?  (This isn&apos;t valid JSON.)  Also sdpMid() can be an arbitrary string, right?  That means it might include a &quot; and break the format of the string.

Perhaps we should use InspectorValue to create valid JSON?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703880</commentid>
    <comment_count>3</comment_count>
      <attachid>160139</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-24 01:38:58 -0700</bug_when>
    <thetext>Comment on attachment 160139
Patch

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

&gt;&gt; Source/WebCore/Modules/mediastream/RTCIceCandidate.cpp:93
&gt;&gt; +    String result = &quot;({candidate:\&quot;&quot; + candidate() + &quot;\&quot;,sdpMid:\&quot;&quot; + sdpMid() + &quot;\&quot;,sdpMLineIndex:&quot; + String::number(sdpMLineIndex()) + &quot;})&quot;;
&gt; 
&gt; Is this meant to be JSON?  (This isn&apos;t valid JSON.)  Also sdpMid() can be an arbitrary string, right?  That means it might include a &quot; and break the format of the string.
&gt; 
&gt; Perhaps we should use InspectorValue to create valid JSON?

No
Yes I know
Yes

For some reason this is exactly what the standardization committee wants.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704050</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Rescorla">ekr</who>
    <bug_when>2012-08-24 06:25:54 -0700</bug_when>
    <thetext>Tommy, I suspect this is simply an error on the part of the specification writers, who for some reason seem to think it&apos;s a great idea to specify this stuff in terms of U+ code points rather than in terms of &quot;JSON&quot;. Note that they also require &quot;U+007D RIGTH CURLY BRACKET&quot;

It&apos;s probably worth raising this on the mailing list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704062</commentid>
    <comment_count>5</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-24 06:40:15 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Tommy, I suspect this is simply an error on the part of the specification writers, who for some reason seem to think it&apos;s a great idea to specify this stuff in terms of U+ code points rather than in terms of &quot;JSON&quot;. Note that they also require &quot;U+007D RIGTH CURLY BRACKET&quot;
&gt; 
&gt; It&apos;s probably worth raising this on the mailing list.

As far as I know this is not supposed to be JSON but I will raise this again.
And btw the code adds the right curly bracket.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704068</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Rescorla">ekr</who>
    <bug_when>2012-08-24 06:45:53 -0700</bug_when>
    <thetext>Yes, my point was that you don&apos;t add a &quot;rihgt curly bracket&quot; which suggests that perhaps the spec may not be being as carefully edited as one might like.

At a higher level, I don&apos;t recall the WG deciding explicitly that the inner string was not supposed to be JSON, and if it did, IMO that decision was wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704099</commentid>
    <comment_count>7</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-24 07:44:26 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Yes, my point was that you don&apos;t add a &quot;rihgt curly bracket&quot; which suggests that perhaps the spec may not be being as carefully edited as one might like.

Ahh :) 

&gt; At a higher level, I don&apos;t recall the WG deciding explicitly that the inner string was not supposed to be JSON, and if it did, IMO that decision was wrong.

I am against producing JSON (since the objects should be transparent to how they are sent/received) but happily!? I am not part of the standardization committee. I have sent an email to the list about this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704107</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-24 08:03:44 -0700</bug_when>
    <thetext>It seems really silly to have something that is almost-but-not-quite JSON in a way that will XSS you if you try to parse it with eval.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705048</commentid>
    <comment_count>9</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-08-27 01:37:40 -0700</bug_when>
    <thetext>Closing this bug since it is likely the stringifier will be removed from the spec, at least for now.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160139</attachid>
            <date>2012-08-23 05:43:55 -0700</date>
            <delta_ts>2012-08-24 07:39:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-94801-20120823144351.patch</filename>
            <type>text/plain</type>
            <size>15820</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2NDEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWU5YmQzNzJhOGQwN2Y1
NWIzZTIwYjJiZThhMTIyNWYwNDNiMGE1NC4uZDYyZWQ0Y2M1ZDQ2N2YzMjUwMWNkMTQxZWFkYmEz
ZDZkYmFiMzg0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA4LTIzICBUb21t
eSBXaWRlbmZseWNodCAgPHRvbW15d0Bnb29nbGUuY29tPgorCisgICAgICAgIE1lZGlhU3RyZWFt
IEFQSTogQWRkIHRvU3RyaW5nIHRvIFJUQ0ljZUNhbmRpZGF0ZSBhbmQgUlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
NDgwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZGVkIGEgc3RyaW5naWZpZXIgYWNjb3JkaW5nIHRvIHRoZSBkcmFmdCwgYW5kIGZpeGVkIGEgZmV3
IHJldmlldyBjb21tZW50cyBmcm9tIGFuIGVhcmxpZXIgcGF0Y2guCisKKyAgICAgICAgRXhpc3Rp
bmcgdGVzdHMgZXhwYW5kZWQgdG8gY292ZXIgdGhpcyBjaGFuZ2UuCisKKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpS
VENJY2VDYW5kaWRhdGU6OmNhbmRpZGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENJY2VDYW5k
aWRhdGU6OnNkcE1pZCk6CisgICAgICAgIChXZWJDb3JlOjpSVENJY2VDYW5kaWRhdGU6OnNkcE1M
aW5lSW5kZXgpOgorICAgICAgICAoV2ViQ29yZTo6UlRDSWNlQ2FuZGlkYXRlOjp0b1N0cmluZyk6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0lj
ZUNhbmRpZGF0ZS5oOgorICAgICAgICAoUlRDSWNlQ2FuZGlkYXRlKToKKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9t
ZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UlRDU2Vz
c2lvbkRlc2NyaXB0aW9uOjp0eXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNj
cmlwdGlvbjo6c2RwKToKKyAgICAgICAgKFdlYkNvcmU6OlJUQ1Nlc3Npb25EZXNjcmlwdGlvbjo6
dG9TdHJpbmcpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaDoKKyAgICAgICAgKFJUQ1Nlc3Npb25EZXNjcmlw
dGlvbik6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRp
b24uaWRsOgorCiAyMDEyLTA4LTIzICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBVbnJldmlld2VkLiBCdWlsZCBmaXggZm9yIHIxMjYzOTkuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5j
cHAKaW5kZXggMGY5ZDQxY2EyZThjMGRhYWQxN2ViZWJjMjc0ZDUyNzNjNjg3OTdjMS4uY2IxNmY5
ZTI0MDQ4Y2RkNzhlOGVhYWQ1YzMxM2YyMGRmYTRlY2NjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmNwcApAQCAtNzMs
MjEgKzczLDI3IEBAIFJUQ0ljZUNhbmRpZGF0ZTo6flJUQ0ljZUNhbmRpZGF0ZSgpCiB7CiB9CiAK
LWNvbnN0IFN0cmluZyYgUlRDSWNlQ2FuZGlkYXRlOjpjYW5kaWRhdGUoKQorY29uc3QgU3RyaW5n
JiBSVENJY2VDYW5kaWRhdGU6OmNhbmRpZGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fZGVz
Y3JpcHRvci0+Y2FuZGlkYXRlKCk7CiB9CiAKLWNvbnN0IFN0cmluZyYgUlRDSWNlQ2FuZGlkYXRl
OjpzZHBNaWQoKQorY29uc3QgU3RyaW5nJiBSVENJY2VDYW5kaWRhdGU6OnNkcE1pZCgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIG1fZGVzY3JpcHRvci0+c2RwTWlkKCk7CiB9CiAKLXVuc2lnbmVkIHNo
b3J0IFJUQ0ljZUNhbmRpZGF0ZTo6c2RwTUxpbmVJbmRleCgpCit1bnNpZ25lZCBzaG9ydCBSVENJ
Y2VDYW5kaWRhdGU6OnNkcE1MaW5lSW5kZXgoKSBjb25zdAogewogICAgIHJldHVybiBtX2Rlc2Ny
aXB0b3ItPnNkcE1MaW5lSW5kZXgoKTsKIH0KIAorU3RyaW5nIFJUQ0ljZUNhbmRpZGF0ZTo6dG9T
dHJpbmcoKSBjb25zdAoreworICAgIFN0cmluZyByZXN1bHQgPSAiKHtjYW5kaWRhdGU6XCIiICsg
Y2FuZGlkYXRlKCkgKyAiXCIsc2RwTWlkOlwiIiArIHNkcE1pZCgpICsgIlwiLHNkcE1MaW5lSW5k
ZXg6IiArIFN0cmluZzo6bnVtYmVyKHNkcE1MaW5lSW5kZXgoKSkgKyAifSkiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CisKIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IqIFJUQ0ljZUNhbmRpZGF0
ZTo6ZGVzY3JpcHRvcigpCiB7CiAgICAgcmV0dXJuIG1fZGVzY3JpcHRvci5nZXQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRl
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5o
CmluZGV4IDRhMjA0MTQ1YTFiMjc4MDBkYjkwYWUzZTllMzc1NTVhYjA2MzhmZWQuLmRjZjgzZDBl
MzNkYTRmZTliNDY1ZjAwMTBjZTgwNTY4MjU0NTgwZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaApAQCAtNTAsOSArNTAs
MTEgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ0ljZUNhbmRpZGF0ZT4gY3Jl
YXRlKFBhc3NSZWZQdHI8UlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvcj4pOwogICAgIHZpcnR1YWwg
flJUQ0ljZUNhbmRpZGF0ZSgpOwogCi0gICAgY29uc3QgU3RyaW5nJiBjYW5kaWRhdGUoKTsKLSAg
ICBjb25zdCBTdHJpbmcmIHNkcE1pZCgpOwotICAgIHVuc2lnbmVkIHNob3J0IHNkcE1MaW5lSW5k
ZXgoKTsKKyAgICBjb25zdCBTdHJpbmcmIGNhbmRpZGF0ZSgpIGNvbnN0OworICAgIGNvbnN0IFN0
cmluZyYgc2RwTWlkKCkgY29uc3Q7CisgICAgdW5zaWduZWQgc2hvcnQgc2RwTUxpbmVJbmRleCgp
IGNvbnN0OworCisgICAgU3RyaW5nIHRvU3RyaW5nKCkgY29uc3Q7CiAKICAgICBSVENJY2VDYW5k
aWRhdGVEZXNjcmlwdG9yKiBkZXNjcmlwdG9yKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmlkbAppbmRleCA0NjBkYjAz
ZjRjNWZjNzk0NzdkNTk1NzU1Y2Q4NWQwYmI0MWQ4YjlhLi43NjczYzZhNzM3Y2IwZmFmNGI3Yjc0
MzExZmJjNTM4YjkyNTYyMWYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaWRsCkBAIC0zOCw2ICszOCw4IEBAIG1vZHVs
ZSBtZWRpYXN0cmVhbSB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgY2Fu
ZGlkYXRlOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNkcE1pZDsKICAg
ICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IHNkcE1MaW5lSW5kZXg7CisK
KyAgICAgICAgW05vdEVudW1lcmFibGVdIERPTVN0cmluZyB0b1N0cmluZygpOwogICAgIH07CiAK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vz
c2lvbkRlc2NyaXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmNwcAppbmRleCA2Nzc5NDkxMjRiYzM1YWZlZDkyZTU4YTg2
ZjE2NzE5MmFkYmJlN2VkLi40YzQzZjFlYTc3MzUxOTlmYzYwMjAxNzIxNDIwOThjNTFmOTIwZTdk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Np
b25EZXNjcmlwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENTZXNzaW9uRGVzY3JpcHRpb24uY3BwCkBAIC01Niw3ICs1Niw3IEBAIFBhc3NSZWZQdHI8
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uPiBSVENTZXNzaW9uRGVzY3JpcHRpb246OmNyZWF0ZShjb25z
dCBEaWN0aW9uYXJ5CiAKICAgICBTdHJpbmcgc2RwOwogICAgIG9rID0gZGljdGlvbmFyeS5nZXQo
InNkcCIsIHNkcCk7Ci0gICAgaWYgKCFvayB8fCAhc2RwLmxlbmd0aCgpKSB7CisgICAgaWYgKCFv
ayB8fCBzZHAuaXNFbXB0eSgpKSB7CiAgICAgICAgIGVjID0gVFlQRV9NSVNNQVRDSF9FUlI7CiAg
ICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTc5LDcgKzc5LDcgQEAgUlRDU2Vzc2lvbkRlc2Ny
aXB0aW9uOjp+UlRDU2Vzc2lvbkRlc2NyaXB0aW9uKCkKIHsKIH0KIAotY29uc3QgU3RyaW5nJiBS
VENTZXNzaW9uRGVzY3JpcHRpb246OnR5cGUoKQorY29uc3QgU3RyaW5nJiBSVENTZXNzaW9uRGVz
Y3JpcHRpb246OnR5cGUoKSBjb25zdAogewogICAgIHJldHVybiBtX2Rlc2NyaXB0b3ItPnR5cGUo
KTsKIH0KQEAgLTkyLDcgKzkyLDcgQEAgdm9pZCBSVENTZXNzaW9uRGVzY3JpcHRpb246OnNldFR5
cGUoY29uc3QgU3RyaW5nJiB0eXBlLCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgZWMgPSBU
WVBFX01JU01BVENIX0VSUjsKIH0KIAotY29uc3QgU3RyaW5nJiBSVENTZXNzaW9uRGVzY3JpcHRp
b246OnNkcCgpCitjb25zdCBTdHJpbmcmIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbjo6c2RwKCkgY29u
c3QKIHsKICAgICByZXR1cm4gbV9kZXNjcmlwdG9yLT5zZHAoKTsKIH0KQEAgLTEwMiw2ICsxMDIs
MTIgQEAgdm9pZCBSVENTZXNzaW9uRGVzY3JpcHRpb246OnNldFNkcChjb25zdCBTdHJpbmcmIHNk
cCwgRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAgbV9kZXNjcmlwdG9yLT5zZXRTZHAoc2RwKTsKIH0K
IAorU3RyaW5nIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbjo6dG9TdHJpbmcoKSBjb25zdAoreworICAg
IFN0cmluZyByZXN1bHQgPSAiKHt0eXBlOlwiIiArIHR5cGUoKSArICJcIixzZHA6XCIiICsgc2Rw
KCkgKyAiXCJ9KSI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogUlRDU2Vzc2lvbkRlc2NyaXB0
aW9uRGVzY3JpcHRvciogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uOjpkZXNjcmlwdG9yKCkKIHsKICAg
ICByZXR1cm4gbV9kZXNjcmlwdG9yLmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmgKaW5kZXggNDU5
NzA2OWNlODk4YzBiNTQyYzEzMDBiNjU1NWRiMzI3NjA1ZmYzZC4uZTIzMDcxMTZhZWU5NDk4MzEx
ZGFlMDQxNmMxY2U2MmQzOTdjMjI5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oCkBAIC00OSwxMiAr
NDksMTQgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFJUQ1Nlc3Npb25EZXNjcmlw
dGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8UlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvcj4p
OwogICAgIHZpcnR1YWwgflJUQ1Nlc3Npb25EZXNjcmlwdGlvbigpOwogCi0gICAgY29uc3QgU3Ry
aW5nJiB0eXBlKCk7CisgICAgY29uc3QgU3RyaW5nJiB0eXBlKCkgY29uc3Q7CiAgICAgdm9pZCBz
ZXRUeXBlKGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKIAotICAgIGNvbnN0IFN0cmlu
ZyYgc2RwKCk7CisgICAgY29uc3QgU3RyaW5nJiBzZHAoKSBjb25zdDsKICAgICB2b2lkIHNldFNk
cChjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAKKyAgICBTdHJpbmcgdG9TdHJpbmco
KSBjb25zdDsKKwogICAgIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IqIGRlc2NyaXB0
b3IoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmlkbAppbmRleCBlODRkZWEyZWJk
YWQ3MmM3NjJjYzRmMGEzODY0ODMwMDJlZTdlMGU1Li5mMGUyMmY4ZmU1ZDZjNmEyYmIxMzVkMWNi
Nzg4NzU4NGMzYzg3MDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaWRsCkBAIC0zOSw2ICszOSw4
IEBAIG1vZHVsZSBtZWRpYXN0cmVhbSB7CiAgICAgICAgICAgICBzZXR0ZXIgcmFpc2VzKERPTUV4
Y2VwdGlvbik7CiAgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgc2RwCiAgICAgICAgICAgICBz
ZXR0ZXIgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisKKyAgICAgICAgW05vdEVudW1lcmFibGVdIERP
TVN0cmluZyB0b1N0cmluZygpOwogICAgIH07CiAKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxYzkxOTU5YTQ5NjUwYzJi
MWQ0ZmE3NWExMTcyYjdhMDJjZTM5OTMwLi5mOWUwM2E4ODk5YTVjYjUyM2JlNGRmMjBlMzliOTlm
MTFkYmE3MjRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDgtMjMgIFRvbW15IFdpZGVu
Zmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CisKKyAgICAgICAgTWVkaWFTdHJlYW0gQVBJOiBB
ZGQgdG9TdHJpbmcgdG8gUlRDSWNlQ2FuZGlkYXRlIGFuZCBSVENTZXNzaW9uRGVzY3JpcHRpb24K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk0ODAxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L21l
ZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9t
ZWRpYXN0cmVhbS9SVENJY2VDYW5kaWRhdGUuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhc3Ry
ZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9t
ZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaHRtbDoKKyAgICAgICAgKiBmYXN0L21l
ZGlhc3RyZWFtL2NvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9tZWRp
YXN0cmVhbS9jb25zdHJ1Y3RvcnMuaHRtbDoKKwogMjAxMi0wOC0yMyAgRG9taW5pYyBDb29uZXkg
IDxkb21pbmljY0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBVbnJldmlld2Vk
IGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRD
SWNlQ2FuZGlkYXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
UlRDSWNlQ2FuZGlkYXRlLWV4cGVjdGVkLnR4dAppbmRleCBjMTVjNjU3N2YwZjU4YWZmMzUzMjQz
M2JkYWE5NmI3MjJiZDhjMDdlLi40NmY4YTU3Y2Y4ZmE3ZTQ3ODg0ZWYwMjYyMDU1YTE3MTBlMTEz
YzAzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRp
ZGF0ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENJ
Y2VDYW5kaWRhdGUtZXhwZWN0ZWQudHh0CkBAIC03LDYgKzcsNyBAQCBQQVNTIGNhbmRpZGF0ZSA9
IG5ldyBSVENJY2VDYW5kaWRhdGUoaW5pdGlhbGl6ZXIpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KIFBBU1MgY2FuZGlkYXRlLmNhbmRpZGF0ZSBpcyAiZm9vIgogUEFTUyBjYW5kaWRhdGUuc2Rw
TWlkIGlzICJiYXIiCiBQQVNTIGNhbmRpZGF0ZS5zZHBNTGluZUluZGV4IGlzIDYKK1BBU1MgY2Fu
ZGlkYXRlLnRvU3RyaW5nKCkgaXMgJyh7Y2FuZGlkYXRlOiJmb28iLHNkcE1pZDoiYmFyIixzZHBN
TGluZUluZGV4OjZ9KScKIFBBU1MgY2FuZGlkYXRlID0gbmV3IFJUQ0ljZUNhbmRpZGF0ZShpbml0
aWFsaXplcik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBjYW5kaWRhdGUuY2FuZGlk
YXRlIGlzICJmb28iCiBQQVNTIGNhbmRpZGF0ZS5zZHBNaWQgaXMgImJhciIKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0ZS5odG1sCmluZGV4IGZhMmEx
NjQ3ZmQwMjYwNDEzZjQ1Njc0YzkyM2VkZTI4NGVjZGYwNzIuLmZmNGViZjljYzYxZmFkOTdlMzk4
MWNkMTgwN2NiZTQyOGUwNzM2ZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0
cmVhbS9SVENJY2VDYW5kaWRhdGUuaHRtbApAQCAtMTAsMTIgKzEwLDEzIEBACiA8c2NyaXB0Pgog
ZGVzY3JpcHRpb24oIlRlc3RzIFJUQ0ljZUNhbmRpZGF0ZS4iKTsKIAotdmFyIGluaXRpYWxpemVy
ID0ge2NhbmRpZGF0ZToiZm9vIiwgc2RwTWlkOiJiYXIiLCBzZHBNTGluZUluZGV4OjZ9OwordmFy
IGluaXRpYWxpemVyID0ge2NhbmRpZGF0ZToiZm9vIixzZHBNaWQ6ImJhciIsc2RwTUxpbmVJbmRl
eDo2fTsKIHZhciBjYW5kaWRhdGU7CiBzaG91bGROb3RUaHJvdygnY2FuZGlkYXRlID0gbmV3IFJU
Q0ljZUNhbmRpZGF0ZShpbml0aWFsaXplcik7Jyk7CiBzaG91bGRCZSgnY2FuZGlkYXRlLmNhbmRp
ZGF0ZScsICciZm9vIicpOwogc2hvdWxkQmUoJ2NhbmRpZGF0ZS5zZHBNaWQnLCAnImJhciInKTsK
IHNob3VsZEJlKCdjYW5kaWRhdGUuc2RwTUxpbmVJbmRleCcsICc2Jyk7CitzaG91bGRCZSgnY2Fu
ZGlkYXRlLnRvU3RyaW5nKCknLCAnXCcoe2NhbmRpZGF0ZToiZm9vIixzZHBNaWQ6ImJhciIsc2Rw
TUxpbmVJbmRleDo2fSlcJycpOwogCiBpbml0aWFsaXplciA9IEpTT04ucGFyc2UoSlNPTi5zdHJp
bmdpZnkoY2FuZGlkYXRlKSk7CiBzaG91bGROb3RUaHJvdygnY2FuZGlkYXRlID0gbmV3IFJUQ0lj
ZUNhbmRpZGF0ZShpbml0aWFsaXplcik7Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi1leHBlY3RlZC50eHQK
aW5kZXggMTQ4NjRlZGIxYWQxYjgyNDU3YjI5N2MyY2M5ZjU1YWJjYzA5ZTg5Ny4uNWJkNWM2NmM1
YTNhZGYxYzIwMGJiOTY5MGVlYWU1MzliMTI0MjkzMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24tZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLWV4cGVj
dGVkLnR4dApAQCAtNiw2ICs2LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIFBBU1Mgc2Vz
c2lvbkRlc2NyaXB0aW9uID0gbmV3IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbihpbml0aWFsaXplcik7
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24udHlwZSBp
cyAib2ZmZXIiCiBQQVNTIHNlc3Npb25EZXNjcmlwdGlvbi5zZHAgaXMgImZvb2JhciIKK1BBU1Mg
c2Vzc2lvbkRlc2NyaXB0aW9uLnRvU3RyaW5nKCkgaXMgJyh7dHlwZToib2ZmZXIiLHNkcDoiZm9v
YmFyIn0pJwogUEFTUyBzZXNzaW9uRGVzY3JpcHRpb24gPSBuZXcgUlRDU2Vzc2lvbkRlc2NyaXB0
aW9uKGluaXRpYWxpemVyKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIHNlc3Npb25E
ZXNjcmlwdGlvbi50eXBlIGlzICJvZmZlciIKIFBBU1Mgc2Vzc2lvbkRlc2NyaXB0aW9uLnNkcCBp
cyAiZm9vYmFyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENT
ZXNzaW9uRGVzY3JpcHRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vUlRD
U2Vzc2lvbkRlc2NyaXB0aW9uLmh0bWwKaW5kZXggNDQyOGIwZGVjZjQyYTU4NDVkOWYwOTE3NDJl
ZjMxMTVmZDFmNWM0Mi4uNzZjMmRkMDU5NWViNDM3MTc4Zjc0OGEyNWVkMWJkZWM0N2ViNzE3YSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3Jp
cHRpb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25E
ZXNjcmlwdGlvbi5odG1sCkBAIC0xMCwxMSArMTAsMTIgQEAKIDxzY3JpcHQ+CiBkZXNjcmlwdGlv
bigiVGVzdHMgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLiIpOwogCi12YXIgaW5pdGlhbGl6ZXIgPSB7
dHlwZToib2ZmZXIiLCBzZHA6ImZvb2JhciJ9OwordmFyIGluaXRpYWxpemVyID0ge3R5cGU6Im9m
ZmVyIixzZHA6ImZvb2JhciJ9OwogdmFyIHNlc3Npb25EZXNjcmlwdGlvbjsKIHNob3VsZE5vdFRo
cm93KCJzZXNzaW9uRGVzY3JpcHRpb24gPSBuZXcgUlRDU2Vzc2lvbkRlc2NyaXB0aW9uKGluaXRp
YWxpemVyKTsiKTsKIHNob3VsZEJlKCdzZXNzaW9uRGVzY3JpcHRpb24udHlwZScsICcib2ZmZXIi
Jyk7CiBzaG91bGRCZSgnc2Vzc2lvbkRlc2NyaXB0aW9uLnNkcCcsICciZm9vYmFyIicpOworc2hv
dWxkQmUoJ3Nlc3Npb25EZXNjcmlwdGlvbi50b1N0cmluZygpJywgJ1wnKHt0eXBlOiJvZmZlciIs
c2RwOiJmb29iYXIifSlcJycpOwogCiBpbml0aWFsaXplciA9IEpTT04ucGFyc2UoSlNPTi5zdHJp
bmdpZnkoc2Vzc2lvbkRlc2NyaXB0aW9uKSk7CiBzaG91bGROb3RUaHJvdygic2Vzc2lvbkRlc2Ny
aXB0aW9uID0gbmV3IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbihpbml0aWFsaXplcik7Iik7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2NvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL2NvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQKaW5kZXggNmQ0ZDZhZThkYmUwNmZmY2U5ZjlkYTk4Y2Y4MDkxYWFiMGYwNWRmZC4uYmEw
ZGE4ZjVmZWY3ODdlMTMxMTUxMTQzYjZkMDc0M2RmMzJmZjVkZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dApAQCAt
NiwxMyArNiwyMSBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogUEFTUyB0eXBlb2Ygd2Via2l0
UGVlckNvbm5lY3Rpb24wMCA9PT0gJ2Z1bmN0aW9uJyBpcyB0cnVlCiBQQVNTIHR5cGVvZiBTZXNz
aW9uRGVzY3JpcHRpb24gPT09ICdmdW5jdGlvbicgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgSWNlQ2Fu
ZGlkYXRlID09PSAnZnVuY3Rpb24nIGlzIHRydWUKK1BBU1MgdHlwZW9mIHdlYmtpdFJUQ1BlZXJD
b25uZWN0aW9uID09PSAnZnVuY3Rpb24nIGlzIHRydWUKK1BBU1MgdHlwZW9mIFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbiA9PT0gJ2Z1bmN0aW9uJyBpcyB0cnVlCitQQVNTIHR5cGVvZiBSVENJY2VDYW5k
aWRhdGUgPT09ICdmdW5jdGlvbicgaXMgdHJ1ZQorUEFTUyB3ZWJraXRQZWVyQ29ubmVjdGlvbjAw
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5u
b3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uLgorUEFTUyBTZXNzaW9uRGVzY3JpcHRpb24oKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBi
ZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4uCitQQVNTIEljZUNhbmRpZGF0ZSgpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IERPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBh
cyBhIGZ1bmN0aW9uLi4KK1BBU1Mgd2Via2l0UlRDUGVlckNvbm5lY3Rpb24oKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQg
YXMgYSBmdW5jdGlvbi4uCitQQVNTIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbigpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IERPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBh
cyBhIGZ1bmN0aW9uLi4KK1BBU1MgUlRDSWNlQ2FuZGlkYXRlKCkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVu
Y3Rpb24uLgogUEFTUyBuZXcgd2Via2l0UGVlckNvbm5lY3Rpb24wMCgnU1RVTiBmb29iYXIuY29t
OjEyMzQ1JywgZnVuY3Rpb24oKXt9KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIG5l
dyB3ZWJraXRQZWVyQ29ubmVjdGlvbjAwKCdTVFVOIGZvb2Jhci5jb206MTIzNDUnKTsgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIG5ldyB3ZWJr
aXRQZWVyQ29ubmVjdGlvbjAwKCdTVFVOIGZvb2Jhci5jb206MTIzNDUnLCBudWxsKTsgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBB
U1MgbmV3IHdlYmtpdFBlZXJDb25uZWN0aW9uMDAoJ1NUVU4gZm9vYmFyLmNvbToxMjM0NScsIHVu
ZGVmaW5lZCk7IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBF
eGNlcHRpb24gMTcuCi1QQVNTIG5ldyB3ZWJraXRQZWVyQ29ubmVjdGlvbjAwKCdTVFVOIGZvb2Jh
ci5jb206MTIzNDUnLCAnU1RVTicpOyB0aHJldyBleGNlcHRpb24gRXJyb3I6IFRZUEVfTUlTTUFU
Q0hfRVJSOiBET00gRXhjZXB0aW9uIDE3LgogUEFTUyBuZXcgU2Vzc2lvbkRlc2NyaXB0aW9uKCcn
KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIG5ldyBJY2VDYW5kaWRhdGUoJycsICcn
KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIG5ldyB3ZWJraXRSVENQZWVyQ29ubmVj
dGlvbih7aWNlU2VydmVyczpbe3VyaTonc3R1bjovL2Zvb2Jhci5jb206MTIzNDUnfV19LCBudWxs
KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIG5ldyBSVENTZXNzaW9uRGVzY3JpcHRp
b24oe3R5cGU6J29mZmVyJyxzZHA6J2Zvb2Jhcid9KTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIG5ldyBSVENJY2VDYW5kaWRhdGUoe2NhbmRpZGF0ZTonZm9vJ30pOyBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBD
T01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9jb25zdHJ1
Y3RvcnMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vY29uc3RydWN0b3JzLmh0
bWwKaW5kZXggYzQ1MzAzOTZmYjdhZTRjZWY0YmIyYjU0ZDE3MDhkNDczMTMxNWVjYi4uZTgyOTkz
YTY1OGU0NTJjMTY3YjFhYjhiNDdiMjRhZWE0MmY2MWJkYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYXN0cmVhbS9jb25zdHJ1Y3RvcnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL2NvbnN0cnVjdG9ycy5odG1sCkBAIC0xMywxNSArMTMsMjMgQEAgZGVz
Y3JpcHRpb24oIlRlc3RzIHRoZSBKU0VQIFBlZXJDb25uZWN0aW9uIHJlbGF0ZWQgY29uc3RydWN0
b3JzLiIpOwogc2hvdWxkQmVUcnVlKCJ0eXBlb2Ygd2Via2l0UGVlckNvbm5lY3Rpb24wMCA9PT0g
J2Z1bmN0aW9uJyIpOwogc2hvdWxkQmVUcnVlKCJ0eXBlb2YgU2Vzc2lvbkRlc2NyaXB0aW9uID09
PSAnZnVuY3Rpb24nIik7CiBzaG91bGRCZVRydWUoInR5cGVvZiBJY2VDYW5kaWRhdGUgPT09ICdm
dW5jdGlvbiciKTsKK3Nob3VsZEJlVHJ1ZSgidHlwZW9mIHdlYmtpdFJUQ1BlZXJDb25uZWN0aW9u
ID09PSAnZnVuY3Rpb24nIik7CitzaG91bGRCZVRydWUoInR5cGVvZiBSVENTZXNzaW9uRGVzY3Jp
cHRpb24gPT09ICdmdW5jdGlvbiciKTsKK3Nob3VsZEJlVHJ1ZSgidHlwZW9mIFJUQ0ljZUNhbmRp
ZGF0ZSA9PT0gJ2Z1bmN0aW9uJyIpOwogCi1zaG91bGROb3RUaHJvdygibmV3IHdlYmtpdFBlZXJD
b25uZWN0aW9uMDAoJ1NUVU4gZm9vYmFyLmNvbToxMjM0NScsIGZ1bmN0aW9uKCl7fSk7Iik7Ci1z
aG91bGRUaHJvdygibmV3IHdlYmtpdFBlZXJDb25uZWN0aW9uMDAoJ1NUVU4gZm9vYmFyLmNvbTox
MjM0NScpOyIpOwotc2hvdWxkVGhyb3coIm5ldyB3ZWJraXRQZWVyQ29ubmVjdGlvbjAwKCdTVFVO
IGZvb2Jhci5jb206MTIzNDUnLCBudWxsKTsiKTsKLXNob3VsZFRocm93KCJuZXcgd2Via2l0UGVl
ckNvbm5lY3Rpb24wMCgnU1RVTiBmb29iYXIuY29tOjEyMzQ1JywgdW5kZWZpbmVkKTsiKTsKLXNo
b3VsZFRocm93KCJuZXcgd2Via2l0UGVlckNvbm5lY3Rpb24wMCgnU1RVTiBmb29iYXIuY29tOjEy
MzQ1JywgJ1NUVU4nKTsiKTsKK3Nob3VsZFRocm93KCJ3ZWJraXRQZWVyQ29ubmVjdGlvbjAwKCki
KTsKK3Nob3VsZFRocm93KCJTZXNzaW9uRGVzY3JpcHRpb24oKSIpOworc2hvdWxkVGhyb3coIklj
ZUNhbmRpZGF0ZSgpIik7CitzaG91bGRUaHJvdygid2Via2l0UlRDUGVlckNvbm5lY3Rpb24oKSIp
Oworc2hvdWxkVGhyb3coIlJUQ1Nlc3Npb25EZXNjcmlwdGlvbigpIik7CitzaG91bGRUaHJvdygi
UlRDSWNlQ2FuZGlkYXRlKCkiKTsKIAorc2hvdWxkTm90VGhyb3coIm5ldyB3ZWJraXRQZWVyQ29u
bmVjdGlvbjAwKCdTVFVOIGZvb2Jhci5jb206MTIzNDUnLCBmdW5jdGlvbigpe30pOyIpOwogc2hv
dWxkTm90VGhyb3coIm5ldyBTZXNzaW9uRGVzY3JpcHRpb24oJycpOyIpOwogc2hvdWxkTm90VGhy
b3coIm5ldyBJY2VDYW5kaWRhdGUoJycsICcnKTsiKTsKK3Nob3VsZE5vdFRocm93KCJuZXcgd2Vi
a2l0UlRDUGVlckNvbm5lY3Rpb24oe2ljZVNlcnZlcnM6W3t1cmk6J3N0dW46Ly9mb29iYXIuY29t
OjEyMzQ1J31dfSwgbnVsbCk7Iik7CitzaG91bGROb3RUaHJvdygibmV3IFJUQ1Nlc3Npb25EZXNj
cmlwdGlvbih7dHlwZTonb2ZmZXInLHNkcDonZm9vYmFyJ30pOyIpOworc2hvdWxkTm90VGhyb3co
Im5ldyBSVENJY2VDYW5kaWRhdGUoe2NhbmRpZGF0ZTonZm9vJ30pOyIpOwogCiB3aW5kb3cuanNU
ZXN0SXNBc3luYyA9IGZhbHNlOwogPC9zY3JpcHQ+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>