<?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>116291</bug_id>
          
          <creation_ts>2013-05-16 22:42:31 -0700</creation_ts>
          <short_desc>Minor String fixes in CSS</short_desc>
          <delta_ts>2013-05-20 22:57:24 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-ews</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>890212</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-16 22:42:31 -0700</bug_when>
    <thetext>Minor String fixes in CSS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890214</commentid>
    <comment_count>1</comment_count>
      <attachid>202046</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-16 22:48:27 -0700</bug_when>
    <thetext>Created attachment 202046
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890216</commentid>
    <comment_count>2</comment_count>
      <attachid>202046</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-05-16 22:54:05 -0700</bug_when>
    <thetext>Comment on attachment 202046
Patch

Attachment 202046 did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/481795</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890219</commentid>
    <comment_count>3</comment_count>
      <attachid>202046</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-05-16 23:13:33 -0700</bug_when>
    <thetext>Comment on attachment 202046
Patch

Attachment 202046 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/494163</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890277</commentid>
    <comment_count>4</comment_count>
      <attachid>202046</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-05-17 04:01:59 -0700</bug_when>
    <thetext>Comment on attachment 202046
Patch

Attachment 202046 did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/483672</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890415</commentid>
    <comment_count>5</comment_count>
      <attachid>202046</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-05-17 08:59:00 -0700</bug_when>
    <thetext>Comment on attachment 202046
Patch

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

r=me if you fix the thing I noticed, and get Qt and Windows building

&gt; Source/WebCore/css/CSSPropertySourceData.cpp:92
&gt; -    DEFINE_STATIC_LOCAL(String, emptyValue, (ASCIILiteral(&quot;e&quot;)));
&gt; -    DEFINE_STATIC_LOCAL(String, importantSuffix, (ASCIILiteral(&quot; !important&quot;)));
&gt; -    if (!name &amp;&amp; value == emptyValue)
&gt; +    if (!name &amp;&amp; value[0] == &apos;e&apos;)

This changes behavior. It now only checks that the first letter is e, rather than checking that the entire string is &quot;e&quot;. Is that OK? Is there test coverage?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891326</commentid>
    <comment_count>6</comment_count>
      <attachid>202314</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-20 13:27:30 -0700</bug_when>
    <thetext>Created attachment 202314
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891572</commentid>
    <comment_count>7</comment_count>
      <attachid>202314</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-20 22:57:20 -0700</bug_when>
    <thetext>Comment on attachment 202314
Patch

Clearing flags on attachment: 202314

Committed r150417: &lt;http://trac.webkit.org/changeset/150417&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891573</commentid>
    <comment_count>8</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-20 22:57:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202046</attachid>
            <date>2013-05-16 22:48:27 -0700</date>
            <delta_ts>2013-05-20 13:27:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116291-20130516224721.patch</filename>
            <type>text/plain</type>
            <size>21624</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTAyZjAyMWY3YThiYTM5
ODRlODUyMjk4OTI1NjM0NDRiZjM0NmRiMy4uNDQ3MDJkNWEwMjIxYzg1MjU4OTU4ZTFkNmU2NWI2
MWYwNTY1ZWNjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEzLTA1LTE2ICBCZW5q
YW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorCisgICAgICAgIE1pbm9yIFN0cmlu
ZyBmaXhlcyBpbiBDU1MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNjI5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFNvbWUgdHJpdmFsIGNoYW5nZXMgdG8gbWFrZSB1cCBmb3IgYSBiYWQgZGF5IDopCisK
KyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NJbWFnZVNldFZhbHVlOjpjdXN0b21Dc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VW
YWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZVZhbHVlOjpjdXN0b21Dc3NUZXh0
KToKKyAgICAgICAgKiBjc3MvQ1NTSW1wb3J0UnVsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NJbXBvcnRSdWxlOjpjc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTSW5oZXJpdGVkVmFsdWUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTSW5oZXJpdGVkVmFsdWU6OmN1c3RvbUNzc1RleHQp
OgorICAgICAgICAqIGNzcy9DU1NJbml0aWFsVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTSW5pdGlhbFZhbHVlOjpjdXN0b21Dc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0
aXZlVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmN1c3Rv
bUNzc1RleHQpOgorICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlTb3VyY2VEYXRhOjp0b1N0cmluZyk6CisgICAgICAg
ICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpz
ZWxlY3RvclRleHQpOgorICAgICAgICAqIGNzcy9DU1NTdHlsZVJ1bGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTU3R5bGVSdWxlOjpnZW5lcmF0ZVNlbGVjdG9yVGV4dCk6CisgICAgICAgICog
Y3NzL0NTU1N0eWxlU2hlZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2hlZXQ6OnR5
cGUpOgorICAgICAgICAqIGNzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWU6OmN1c3RvbUNzc1RleHQpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlOjpjdXN0
b21Dc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVMaXN0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ZhbHVlTGlzdDo6Y3VzdG9tQ3NzVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NWYWx1ZUxpc3Q6OmN1c3RvbVNlcmlhbGl6ZVJlc29sdmluZ1ZhcmlhYmxlcyk6CisgICAgICAg
ICogY3NzL01lZGlhUXVlcnlFeHAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeUV4
cDo6c2VyaWFsaXplKToKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmN1c3RvbUNzc1RleHQpOgor
ICAgICAgICAqIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUnVsZUtleWZyYW1lczo6ZmluZEtleWZyYW1lSW5kZXgpOgorICAgICAgICAoV2Vi
Q29yZTo6V2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZTo6Y3NzVGV4dCk6CisgICAgICAgICogY3NzL1dl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCk6CisgICAgICAgICogY3NzL1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCk6CisKIDIwMTMtMDUtMTYgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUERGUGx1Z2lucyBkb24ndCBsb2Fk
IHdoZW4gcGx1Z2lucyBhcmUgZGlzYWJsZWQsIGJ1dCB0aGV5IHNob3VsZApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwCmluZGV4IDg3OWYyOWE3MzIxNzU1YjU1ZTJlZWE4NmY0
OGVkOTBiODhmYjlmOGYuLmNiZDhhNDMzMzMzOTE2MGMxMDg0N2E0NTA1NjU5MWVjNWRhM2NjMDMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTE0NCwxMyArMTQ0LDEz
IEBAIFN0eWxlSW1hZ2UqIENTU0ltYWdlU2V0VmFsdWU6OmNhY2hlZE9yUGVuZGluZ0ltYWdlU2V0
KERvY3VtZW50KiBkb2N1bWVudCkKIFN0cmluZyBDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21Dc3NU
ZXh0KCkgY29uc3QKIHsKICAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsKLSAgICByZXN1bHQuYXBw
ZW5kKCItd2Via2l0LWltYWdlLXNldCgiKTsKKyAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLXdl
YmtpdC1pbWFnZS1zZXQoIik7CiAKICAgICBzaXplX3QgbGVuZ3RoID0gdGhpcy0+bGVuZ3RoKCk7
CiAgICAgc2l6ZV90IGkgPSAwOwogICAgIHdoaWxlIChpIDwgbGVuZ3RoKSB7CiAgICAgICAgIGlm
IChpID4gMCkKLSAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoIiwgIik7CisgICAgICAgICAgICBy
ZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKIAogICAgICAgICBjb25zdCBDU1NWYWx1ZSogaW1h
Z2VWYWx1ZSA9IGl0ZW0oaSk7CiAgICAgICAgIHJlc3VsdC5hcHBlbmQoaW1hZ2VWYWx1ZS0+Y3Nz
VGV4dCgpKTsKQEAgLTE2Nyw3ICsxNjcsNyBAQCBTdHJpbmcgQ1NTSW1hZ2VTZXRWYWx1ZTo6Y3Vz
dG9tQ3NzVGV4dCgpIGNvbnN0CiAgICAgICAgICsraTsKICAgICB9CiAKLSAgICByZXN1bHQuYXBw
ZW5kKCIpIik7CisgICAgcmVzdWx0LmFwcGVuZCgnKScpOwogICAgIHJldHVybiByZXN1bHQudG9T
dHJpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFs
dWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuY3BwCmluZGV4IGEyNDAx
MWFjZTBhNWZmMzEyNTk4YTMyNGIxYzM3MGU2ZGE2ZjMyOGIuLmQ2Y2E4MzRhZDNlMDc0NDM4M2Mw
NDU4YTg4ZmFiZmM0NGQ3MWUzZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJ
bWFnZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5jcHAK
QEAgLTEsNiArMSw2IEBACiAvKgogICogKEMpIDE5OTktMjAwMyBMYXJzIEtub2xsIChrbm9sbEBr
ZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAw
NiwgMjAwOCwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMKQEAgLTk5LDcgKzk5LDcgQEAgYm9vbCBDU1NJbWFnZVZhbHVlOjplcXVhbHMoY29u
c3QgQ1NTSW1hZ2VWYWx1ZSYgb3RoZXIpIGNvbnN0CiAKIFN0cmluZyBDU1NJbWFnZVZhbHVlOjpj
dXN0b21Dc3NUZXh0KCkgY29uc3QKIHsKLSAgICByZXR1cm4gInVybCgiICsgcXVvdGVDU1NVUkxJ
Zk5lZWRlZChtX3VybCkgKyAiKSI7CisgICAgcmV0dXJuICJ1cmwoIiArIHF1b3RlQ1NTVVJMSWZO
ZWVkZWQobV91cmwpICsgJyknOwogfQogCiBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NJbWFnZVZh
bHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NJbXBvcnRSdWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbXBvcnRSdWxlLmNw
cAppbmRleCAyNWQ5ZTM0NjVkNjFkYmJiNWE2OGMxNTc4ZGJjZThmOTA0YmQ5MmNlLi4wM2NiYTQ0
ZjE2ODg5OWFlZWE4YmY5MTJiNTkzODQwM2M3ZjIwNTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTSW1wb3J0UnVsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lt
cG9ydFJ1bGUuY3BwCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIChDKSAxOTk5LTIwMDMgTGFycyBL
bm9sbCAoa25vbGxAa2RlLm9yZykKICAqIChDKSAyMDAyLTIwMDMgRGlyayBNdWVsbGVyIChtdWVs
bGVyQGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDUsIDIwMDYsIDIwMDgsIDIw
MDksIDIwMTAsIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDAyLCAyMDA1LCAyMDA2LCAyMDA4LCAyMDA5LCAyMDEwLCAyMDEyLCAyMDEzIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtNjMs
OSArNjMsOSBAQCBNZWRpYUxpc3QqIENTU0ltcG9ydFJ1bGU6Om1lZGlhKCkgY29uc3QKIFN0cmlu
ZyBDU1NJbXBvcnRSdWxlOjpjc3NUZXh0KCkgY29uc3QKIHsKICAgICBTdHJpbmdCdWlsZGVyIHJl
c3VsdDsKLSAgICByZXN1bHQuYXBwZW5kKCJAaW1wb3J0IHVybChcIiIpOworICAgIHJlc3VsdC5h
cHBlbmRMaXRlcmFsKCJAaW1wb3J0IHVybChcIiIpOwogICAgIHJlc3VsdC5hcHBlbmQobV9pbXBv
cnRSdWxlLT5ocmVmKCkpOwotICAgIHJlc3VsdC5hcHBlbmQoIlwiKSIpOworICAgIHJlc3VsdC5h
cHBlbmRMaXRlcmFsKCJcIikiKTsKIAogICAgIGlmIChtX2ltcG9ydFJ1bGUtPm1lZGlhUXVlcmll
cygpKSB7CiAgICAgICAgIFN0cmluZyBtZWRpYVRleHQgPSBtX2ltcG9ydFJ1bGUtPm1lZGlhUXVl
cmllcygpLT5tZWRpYVRleHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJ
bmhlcml0ZWRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5oZXJpdGVkVmFsdWUu
Y3BwCmluZGV4IGU3NjUzZjk2MGQ1YTY4NDQxY2Y5MzkxYjUxNGU3ZGMzOGVlN2NjNzMuLjc2YTU4
YzNhYmMzZmZiY2QzOTRhZTFjYTE3M2ExZjg5MWIyOTMzNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NJbmhlcml0ZWRWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0luaGVyaXRlZFZhbHVlLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qKgogICogKEMpIDE5OTkt
MjAwMyBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDA0LCAy
MDA1LCAyMDA2IEFwcGxlIENvbXB1dGVyLCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIw
MDUsIDIwMDYsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogU3RyaW5n
IENTU0luaGVyaXRlZFZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29uc3QKIHsKLSAgICByZXR1cm4g
ImluaGVyaXQiOworICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImluaGVyaXQiKTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lu
aXRpYWxWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5pdGlhbFZhbHVlLmNwcApp
bmRleCBhZmM3YmJiOTNmZGQwMjJlOTk3ZTczYjkzZDkzMTY1ZGMwYmU4ODllLi44MTczNTY3YjAy
ZGNmOTliYzYyYjBlNGMyNTA4ODVkYTcwNDc4OWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW5pdGlhbFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5p
dGlhbFZhbHVlLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qKgogICogKEMpIDE5OTktMjAwMyBMYXJz
IEtub2xsIChrbm9sbEBrZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2
IEFwcGxlIENvbXB1dGVyLCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYs
IDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1v
ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
CkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogU3RyaW5nIENTU0luaXRp
YWxWYWx1ZTo6Y3VzdG9tQ3NzVGV4dCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuICJpbml0aWFsIjsK
KyAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpbml0aWFsIik7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCmluZGV4IDhh
MTYzZmEzOWIwODI4NzVhZTQ1ZDFmMzkzNTZhNTg1MjRiNjFmNzAuLjJkNDAyNzk5ODEwZTU5OGQy
NDQ5OTAwMjg1ZGQ4ZTVkYmFiY2UyNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2
ZVZhbHVlLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiAoQykgMTk5OS0yMDAzIExhcnMgS25v
bGwgKGtub2xsQGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIw
MDcsIDIwMDgsIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDEyLCAyMDEzIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTExNyw3ICsx
MTE3LDcgQEAgU3RyaW5nIENTU1ByaW1pdGl2ZVZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29uc3QK
ICAgICAgICAgICAgIGJyZWFrOwogI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQogICAgICAgICBj
YXNlIENTU19WQVJJQUJMRV9OQU1FOgotICAgICAgICAgICAgdGV4dCA9ICItd2Via2l0LXZhcigi
ICsgU3RyaW5nKG1fdmFsdWUuc3RyaW5nKSArICIpIjsKKyAgICAgICAgICAgIHRleHQgPSAiLXdl
YmtpdC12YXIoIiArIFN0cmluZyhtX3ZhbHVlLnN0cmluZykgKyAnKSc7CiAgICAgICAgICAgICBi
cmVhazsKICNlbmRpZgogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cm9wZXJ0eVNvdXJjZURhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291
cmNlRGF0YS5jcHAKaW5kZXggMWM1ZGM5YjdlMTJlYjU5ZjY1NWY5Yzk0MDdiZTU3YThkZmExODZk
MS4uNjM0ZTY2YzRiMjA1ZjU2OTE0ODA0YzdlNzJkMzc0YzUwNTI2M2M2MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5jcHAKQEAgLTEsNSArMSw2IEBACiAv
KgogICogQ29weXJpZ2h0IChjKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtODgsOSArODksNyBAQCBDU1NQ
cm9wZXJ0eVNvdXJjZURhdGE6OkNTU1Byb3BlcnR5U291cmNlRGF0YSgpCiAKIFN0cmluZyBDU1NQ
cm9wZXJ0eVNvdXJjZURhdGE6OnRvU3RyaW5nKCkgY29uc3QKIHsKLSAgICBERUZJTkVfU1RBVElD
X0xPQ0FMKFN0cmluZywgZW1wdHlWYWx1ZSwgKEFTQ0lJTGl0ZXJhbCgiZSIpKSk7Ci0gICAgREVG
SU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGltcG9ydGFudFN1ZmZpeCwgKEFTQ0lJTGl0ZXJhbCgi
ICFpbXBvcnRhbnQiKSkpOwotICAgIGlmICghbmFtZSAmJiB2YWx1ZSA9PSBlbXB0eVZhbHVlKQor
ICAgIGlmICghbmFtZSAmJiB2YWx1ZVswXSA9PSAnZScpCiAgICAgICAgIHJldHVybiBTdHJpbmco
KTsKIAogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwpAQCAtOTgsNyArOTcsNyBAQCBTdHJpbmcg
Q1NTUHJvcGVydHlTb3VyY2VEYXRhOjp0b1N0cmluZygpIGNvbnN0CiAgICAgcmVzdWx0LmFwcGVu
ZExpdGVyYWwoIjogIik7CiAgICAgcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CiAgICAgaWYgKGltcG9y
dGFudCkKLSAgICAgICAgcmVzdWx0LmFwcGVuZChpbXBvcnRhbnRTdWZmaXgpOworICAgICAgICBy
ZXN1bHQuYXBwZW5kTGl0ZXJhbCgiICFpbXBvcnRhbnQiKTsKICAgICByZXN1bHQuYXBwZW5kKCc7
Jyk7CiAgICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxl
Y3Rvci5jcHAKaW5kZXggOTYxMDJmMTYwMGQ1MThhZDM1ZTMzOGYxMGFkMWYxZGJjN2Q1YTVjOS4u
MWQ5NjNmZWZiNmQ4MjlhM2RjNTUwOWJjZDVkZWMwOTMxZjc2NTljYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU2VsZWN0b3IuY3BwCkBAIC0zLDcgKzMsNyBAQAogICogICAgICAgICAgICAgICAxOTk5IFdh
bGRvIEJhc3RpYW4gKGJhc3RpYW5Aa2RlLm9yZykKICAqICAgICAgICAgICAgICAgMjAwMSBBbmRy
ZWFzIFNjaGxhcGJhY2ggKHNjaGxwYmNoQGlhbS51bmliZS5jaCkKICAqICAgICAgICAgICAgICAg
MjAwMS0yMDAzIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3JnKQotICogQ29weXJpZ2h0IChD
KSAyMDAyLCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwMiwgMjAwNiwgMjAwNywgMjAwOCwgMjAw
OSwgMjAxMCwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDggRGF2aWQgU21pdGggKGNhdGZpc2gubWFuQGdtYWlsLmNvbSkKICAqIENvcHly
aWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTY1
NCw3ICs2NTQsNyBAQCBTdHJpbmcgQ1NTU2VsZWN0b3I6OnNlbGVjdG9yVGV4dChjb25zdCBTdHJp
bmcmIHJpZ2h0U2lkZSkgY29uc3QKICAgICAgICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgcHJl
Zml4ID0gY3MtPmF0dHJpYnV0ZSgpLnByZWZpeCgpOwogICAgICAgICAgICAgaWYgKCFwcmVmaXgu
aXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBzdHIuYXBwZW5kKHByZWZpeCk7Ci0gICAgICAg
ICAgICAgICAgc3RyLmFwcGVuZCgifCIpOworICAgICAgICAgICAgICAgIHN0ci5hcHBlbmQoJ3wn
KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHN0ci5hcHBlbmQoY3MtPmF0dHJpYnV0ZSgp
LmxvY2FsTmFtZSgpKTsKICAgICAgICAgICAgIHN3aXRjaCAoY3MtPm1fbWF0Y2gpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVJ1bGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1N0eWxlUnVsZS5jcHAKaW5kZXggNTBmYzkwNWU4ODhhMzQyODU5NTQ1ZmMyNmU3
NzQ0NWYyN2NkNzA3Yi4uMDhlZDRkNGZlNDNiNjFkMDEwYmU5ZWQ2ZDgyYmY1NjE2YzU1YWU0MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlUnVsZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlUnVsZS5jcHAKQEAgLTEsNyArMSw3IEBACiAvKgogICog
KEMpIDE5OTktMjAwMyBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQogICogKEMpIDIwMDItMjAw
MyBEaXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKLSAqIENvcHlyaWdodCAoQykgMjAwMiwg
MjAwNSwgMjAwNiwgMjAwOCwgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDUsIDIwMDYsIDIwMDgsIDIwMTIsIDIwMTMgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRl
ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC03MCw3ICs3
MCw3IEBAIFN0cmluZyBDU1NTdHlsZVJ1bGU6OmdlbmVyYXRlU2VsZWN0b3JUZXh0KCkgY29uc3QK
ICAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7CiAgICAgZm9yIChjb25zdCBDU1NTZWxlY3Rvciog
c2VsZWN0b3IgPSBtX3N0eWxlUnVsZS0+c2VsZWN0b3JMaXN0KCkuZmlyc3QoKTsgc2VsZWN0b3I7
IHNlbGVjdG9yID0gQ1NTU2VsZWN0b3JMaXN0OjpuZXh0KHNlbGVjdG9yKSkgewogICAgICAgICBp
ZiAoc2VsZWN0b3IgIT0gbV9zdHlsZVJ1bGUtPnNlbGVjdG9yTGlzdCgpLmZpcnN0KCkpCi0gICAg
ICAgICAgICBidWlsZGVyLmFwcGVuZCgiLCAiKTsKKyAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgiLCAiKTsKICAgICAgICAgYnVpbGRlci5hcHBlbmQoc2VsZWN0b3ItPnNlbGVjdG9y
VGV4dCgpKTsKICAgICB9CiAgICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNoZWV0LmggYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTU3R5bGVTaGVldC5oCmluZGV4IDVlMzk3ZDE3MzJlOGE0OWE0YmM0Yjg5MTE5YWZhMWQ1
MDA5M2JmOWUuLjk1M2MzMDI1ZTU1Y2YxMDMwYWM1Mjg0YzI2MmI1MTA5ZWE0ZGZjZjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNoZWV0LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1N0eWxlU2hlZXQuaApAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiAoQykgMTk5
OS0yMDAzIExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDQs
IDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5
LCAyMDEwLCAyMDEyLCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAg
KiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg
YW5kL29yCiAgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYwpAQCAtMTEwLDcgKzExMCw3IEBAIHByaXZhdGU6CiAgICAgQ1NTU3R5bGVT
aGVldChQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4sIE5vZGUqIG93bmVyTm9kZSwgYm9v
bCBpc0lubGluZVN0eWxlc2hlZXQpOwogCiAgICAgdmlydHVhbCBib29sIGlzQ1NTU3R5bGVTaGVl
dCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIFN0cmluZyB0eXBlKCkgY29u
c3QgeyByZXR1cm4gInRleHQvY3NzIjsgfQorICAgIHZpcnR1YWwgU3RyaW5nIHR5cGUoKSBjb25z
dCB7IHJldHVybiBBU0NJSUxpdGVyYWwoInRleHQvY3NzIik7IH0KIAogICAgIGJvb2wgY2FuQWNj
ZXNzUnVsZXMoKSBjb25zdDsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1pbmdG
dW5jdGlvblZhbHVlLmNwcAppbmRleCBhNGMyM2VlMzUzZGU2MjY5OTAzM2I0NzI2MTNmZjk5N2Q2
NzcyZWVlLi5hZWRlMmZmMTBmY2U2YjAyYmU0ZTg5Y2I1NDIyNTliNzY0ZTNlNTk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSBDb21wdXRlciwgSW5jLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNywgMjAxMyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBTdHJpbmcgQ1NTTGluZWFyVGlt
aW5nRnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuICJs
aW5lYXIiOworICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxpbmVhciIpOwogfQogCiAKQEAgLTQy
LDcgKzQyLDcgQEAgU3RyaW5nIENTU0N1YmljQmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZTo6Y3Vz
dG9tQ3NzVGV4dCgpIGNvbnN0CiAgICAgICAgICsgU3RyaW5nOjpudW1iZXIobV94MSkgKyAiLCAi
CiAgICAgICAgICsgU3RyaW5nOjpudW1iZXIobV95MSkgKyAiLCAiCiAgICAgICAgICsgU3RyaW5n
OjpudW1iZXIobV94MikgKyAiLCAiCi0gICAgICAgICsgU3RyaW5nOjpudW1iZXIobV95MikgKyAi
KSI7CisgICAgICAgICsgU3RyaW5nOjpudW1iZXIobV95MikgKyAnKSc7CiB9CiAKIGJvb2wgQ1NT
Q3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlOjplcXVhbHMoY29uc3QgQ1NTQ3ViaWNCZXpp
ZXJUaW1pbmdGdW5jdGlvblZhbHVlJiBvdGhlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
TGlzdC5jcHAKaW5kZXggOTMzNWNkMjMyMmI5Y2NmYTFhZjc0MWU3OWEzZmQxOWQ0MDA3YjMyNy4u
NDIzZTI2ZTdlNjU3MDlmZGQ1NDdmZTBlNzI0YTBmODdhYWVjM2UxZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlTGlzdC5jcHAKQEAgLTEsNiArMSw2IEBACiAvKgogICogKEMpIDE5OTktMjAwMyBM
YXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAy
MDA2LCAyMDA3LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAxMCwgMjAxMyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7
IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0
ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTEwMSwxMyArMTAxLDEz
IEBAIFN0cmluZyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogICAgIFN0cmlu
ZyBzZXBhcmF0b3I7CiAgICAgc3dpdGNoIChtX3ZhbHVlTGlzdFNlcGFyYXRvcikgewogICAgIGNh
c2UgU3BhY2VTZXBhcmF0b3I6Ci0gICAgICAgIHNlcGFyYXRvciA9ICIgIjsKKyAgICAgICAgc2Vw
YXJhdG9yID0gQVNDSUlMaXRlcmFsKCIgIik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ29t
bWFTZXBhcmF0b3I6Ci0gICAgICAgIHNlcGFyYXRvciA9ICIsICI7CisgICAgICAgIHNlcGFyYXRv
ciA9IEFTQ0lJTGl0ZXJhbCgiLCAiKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTbGFzaFNl
cGFyYXRvcjoKLSAgICAgICAgc2VwYXJhdG9yID0gIiAvICI7CisgICAgICAgIHNlcGFyYXRvciA9
IEFTQ0lJTGl0ZXJhbCgiIC8gIik7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMTQ0LDEzICsxNDQsMTMgQEAgU3RyaW5nIENT
U1ZhbHVlTGlzdDo6Y3VzdG9tU2VyaWFsaXplUmVzb2x2aW5nVmFyaWFibGVzKGNvbnN0IEhhc2hN
YXA8QXRvbWljU3RyaW4KICAgICBTdHJpbmcgc2VwYXJhdG9yOwogICAgIHN3aXRjaCAobV92YWx1
ZUxpc3RTZXBhcmF0b3IpIHsKICAgICBjYXNlIFNwYWNlU2VwYXJhdG9yOgotICAgICAgICBzZXBh
cmF0b3IgPSAiICI7CisgICAgICAgIHNlcGFyYXRvciA9IEFTQ0lJTGl0ZXJhbCgiICIpOwogICAg
ICAgICBicmVhazsKICAgICBjYXNlIENvbW1hU2VwYXJhdG9yOgotICAgICAgICBzZXBhcmF0b3Ig
PSAiLCAiOworICAgICAgICBzZXBhcmF0b3IgPSBBU0NJSUxpdGVyYWwoIiwgIik7CiAgICAgICAg
IGJyZWFrOwogICAgIGNhc2UgU2xhc2hTZXBhcmF0b3I6Ci0gICAgICAgIHNlcGFyYXRvciA9ICIg
LyAiOworICAgICAgICBzZXBhcmF0b3IgPSBBU0NJSUxpdGVyYWwoIiAvICIpOwogICAgICAgICBi
cmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXhwLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9NZWRpYVF1ZXJ5RXhwLmNwcAppbmRleCAyNjcwNGI0MmNjYjBhNWEzNzI2OTE3Yzg5
M2ExNDZkY2U1MmEwNDZiLi5lOWNmMWUwMDg2OTU3ZWEyMzgxNmNhZGE4ZWNlNzcyOWU1ZDJkM2Jh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV4cC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFeHAuY3BwCkBAIC0yMzcsMTMgKzIzNywxMyBA
QCBTdHJpbmcgTWVkaWFRdWVyeUV4cDo6c2VyaWFsaXplKCkgY29uc3QKICAgICAgICAgcmV0dXJu
IG1fc2VyaWFsaXphdGlvbkNhY2hlOwogCiAgICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7Ci0gICAg
cmVzdWx0LmFwcGVuZCgiKCIpOworICAgIHJlc3VsdC5hcHBlbmQoJygnKTsKICAgICByZXN1bHQu
YXBwZW5kKG1fbWVkaWFGZWF0dXJlLmxvd2VyKCkpOwogICAgIGlmIChtX3ZhbHVlKSB7Ci0gICAg
ICAgIHJlc3VsdC5hcHBlbmQoIjogIik7CisgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCI6
ICIpOwogICAgICAgICByZXN1bHQuYXBwZW5kKG1fdmFsdWUtPmNzc1RleHQoKSk7CiAgICAgfQot
ICAgIHJlc3VsdC5hcHBlbmQoIikiKTsKKyAgICByZXN1bHQuYXBwZW5kKCcpJyk7CiAKICAgICBj
b25zdF9jYXN0PE1lZGlhUXVlcnlFeHAqPih0aGlzKS0+bV9zZXJpYWxpemF0aW9uQ2FjaGUgPSBy
ZXN1bHQudG9TdHJpbmcoKTsKICAgICByZXR1cm4gbV9zZXJpYWxpemF0aW9uQ2FjaGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcAppbmRleCBjOGFmYzI1NGNk
M2ZhYzMwYmI0NThmYWExZmVlY2UyMTI4ZmFmYmI3Li4yNGQ1YWQ3ODdhZmM3MTFiZWQxZTg4OWI2
N2U0YTdlZTQyYjBhN2I2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxMyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTUyLDggKzUyLDExIEBAIGJvb2wgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OnR5cGVV
c2VzU3BhY2VTZXBhcmF0b3IoRmlsdGVyT3BlcmF0aW9uVHlwZSBvcGVyYXRpb25UCiAKIFN0cmlu
ZyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3VzdG9tQ3NzVGV4dCgpIGNvbnN0CiB7Ci0gICAgU3Ry
aW5nIHJlc3VsdDsKKyAgICBjb25zdCBjaGFyKiByZXN1bHQ7CiAgICAgc3dpdGNoIChtX3R5cGUp
IHsKKyAgICBjYXNlIFVua25vd25GaWx0ZXJPcGVyYXRpb246CisgICAgICAgIHJlc3VsdCA9ICIi
OworICAgICAgICBicmVhazsKICAgICBjYXNlIFJlZmVyZW5jZUZpbHRlck9wZXJhdGlvbjoKICAg
ICAgICAgcmVzdWx0ID0gInVybCgiOwogICAgICAgICBicmVhazsKQEAgLTkyLDExICs5NSw5IEBA
IFN0cmluZyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3VzdG9tQ3NzVGV4dCgpIGNvbnN0CiAgICAg
ICAgIHJlc3VsdCA9ICJjdXN0b20oIjsKICAgICAgICAgYnJlYWs7CiAjZW5kaWYKLSAgICBkZWZh
dWx0OgotICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICByZXR1cm4gcmVzdWx0ICsgQ1NTVmFs
dWVMaXN0OjpjdXN0b21Dc3NUZXh0KCkgKyAiKSI7CisgICAgcmV0dXJuIHJlc3VsdCArIENTU1Zh
bHVlTGlzdDo6Y3VzdG9tQ3NzVGV4dCgpICsgJyknOwogfQogCiBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWUoY29uc3QgV2ViS2l0Q1NTRmlsdGVyVmFsdWUmIGNsb25l
RnJvbSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNS
dWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcApp
bmRleCBlMzY0NTIxMzAwODkwZGRkZTMyNTU0Njk0ZDNlNjFkMzljMzBhZTllLi5mZDQ4ZmNiNjJj
Njg4MWI0YjZkZWIxOGY5Nzk4ZjBkNjI2ODc1ODVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1dlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAwNywgMjAwOCwgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMDcsIDIwMDgsIDIwMTIsIDIwMTMgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC03Myw5
ICs3Myw5IEBAIGludCBTdHlsZVJ1bGVLZXlmcmFtZXM6OmZpbmRLZXlmcmFtZUluZGV4KGNvbnN0
IFN0cmluZyYga2V5KSBjb25zdAogewogICAgIFN0cmluZyBwZXJjZW50YWdlU3RyaW5nOwogICAg
IGlmIChlcXVhbElnbm9yaW5nQ2FzZShrZXksICJmcm9tIikpCi0gICAgICAgIHBlcmNlbnRhZ2VT
dHJpbmcgPSAiMCUiOworICAgICAgICBwZXJjZW50YWdlU3RyaW5nID0gQVNDSUlMaXRlcmFsKCIw
JSIpOwogICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGtleSwgInRvIikpCi0gICAgICAg
IHBlcmNlbnRhZ2VTdHJpbmcgPSAiMTAwJSI7CisgICAgICAgIHBlcmNlbnRhZ2VTdHJpbmcgPSBB
U0NJSUxpdGVyYWwoIjEwMCUiKTsKICAgICBlbHNlCiAgICAgICAgIHBlcmNlbnRhZ2VTdHJpbmcg
PSBrZXk7CiAgICAgCkBAIC0xNTMsMTcgKzE1MywxNyBAQCBXZWJLaXRDU1NLZXlmcmFtZVJ1bGUq
IFdlYktpdENTU0tleWZyYW1lc1J1bGU6OmZpbmRSdWxlKGNvbnN0IFN0cmluZyYgcykKIFN0cmlu
ZyBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlOjpjc3NUZXh0KCkgY29uc3QKIHsKICAgICBTdHJpbmdC
dWlsZGVyIHJlc3VsdDsKLSAgICByZXN1bHQuYXBwZW5kKCJALXdlYmtpdC1rZXlmcmFtZXMgIik7
CisgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIkAtd2Via2l0LWtleWZyYW1lcyAiKTsKICAgICBy
ZXN1bHQuYXBwZW5kKG5hbWUoKSk7Ci0gICAgcmVzdWx0LmFwcGVuZCgiIHsgXG4iKTsKKyAgICBy
ZXN1bHQuYXBwZW5kTGl0ZXJhbCgiIHsgXG4iKTsKIAogICAgIHVuc2lnbmVkIHNpemUgPSBsZW5n
dGgoKTsKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7Ci0gICAgICAg
IHJlc3VsdC5hcHBlbmQoIiAgIik7CisgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgICIp
OwogICAgICAgICByZXN1bHQuYXBwZW5kKG1fa2V5ZnJhbWVzUnVsZS0+a2V5ZnJhbWVzKClbaV0t
PmNzc1RleHQoKSk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQoIlxuIik7CisgICAgICAgIHJlc3Vs
dC5hcHBlbmQoJ1xuJyk7CiAgICAgfQotICAgIHJlc3VsdC5hcHBlbmQoIn0iKTsKKyAgICByZXN1
bHQuYXBwZW5kKCd9Jyk7CiAgICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAKaW5kZXgg
YWYzOTQ3ZGM5M2YzYmJkZDJiYTMzODJmNWVhZjE5ZTVhOGIxOTU0Ny4uZTdiNWI4YjQ1N2JjNzE0
ZTA0Yzg2OTkyMDk3ZmM4ZDk5MDQxZDJlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5
cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01MCwxMSArNTEsMTEgQEAg
U3RyaW5nIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAog
ewogICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKICAgICBpZiAobGVuZ3RoKCkgPT0gNCkKLSAg
ICAgICAgYnVpbGRlci5hcHBlbmQoIm1hdDIoIik7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0
ZXJhbCgibWF0MigiKTsKICAgICBlbHNlIGlmIChsZW5ndGgoKSA9PSA5KQotICAgICAgICBidWls
ZGVyLmFwcGVuZCgibWF0MygiKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQz
KCIpOwogICAgIGVsc2UgaWYgKGxlbmd0aCgpID09IDE2KQotICAgICAgICBidWlsZGVyLmFwcGVu
ZCgibWF0NCgiKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQ0KCIpOwogICAg
IGVsc2UgewogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJuIFN0
cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuY3BwCmluZGV4IDNhMTNkZDdhZGQxNWMwODVhZDg3MzM5YmY4ODgyZjg1MjhkMWE3ZGMuLjBm
NTFmZmQ4MzAwZWYyNjc0MGNhMTA3YjRlNjVjNmVlMDA4MjIyZDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAKQEAgLTEsNSArMSw2IEBA
CiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDYs
NyArNDcsNyBAQCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlKGNvbnN0IFdlYktpdENTU01peEZ1bmN0aW9uVgogCiBTdHJpbmcgV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuICJtaXgo
IiArIENTU1ZhbHVlTGlzdDo6Y3VzdG9tQ3NzVGV4dCgpICsgIikiOworICAgIHJldHVybiAibWl4
KCIgKyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNzc1RleHQoKSArICcpJzsKIH0KIAogUGFzc1JlZlB0
cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpj
bG9uZUZvckNTU09NKCkgY29uc3QK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202314</attachid>
            <date>2013-05-20 13:27:30 -0700</date>
            <delta_ts>2013-05-20 22:57:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116291-20130520132619.patch</filename>
            <type>text/plain</type>
            <size>21655</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWM1NGU5NTE3ODQwOWNh
MThiYzM3MjlmMDVkZjJmNDliNjFiNmE3MC4uYWNkODE3ZmI3YjkxYzhjYmFjMTJmNDIyYWYzZjJl
YTQzYjc1M2YxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEzLTA1LTIwICBCZW5q
YW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorCisgICAgICAgIE1pbm9yIFN0cmlu
ZyBmaXhlcyBpbiBDU1MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNjI5MQorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAg
ICAgIFNvbWUgdHJpdmFsIGNoYW5nZXMgdG8gbWFrZSB1cCBmb3IgYSBiYWQgZGF5IDopCisKKyAg
ICAgICAgKiBjc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJ
bWFnZVNldFZhbHVlOjpjdXN0b21Dc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VWYWx1
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZVZhbHVlOjpjdXN0b21Dc3NUZXh0KToK
KyAgICAgICAgKiBjc3MvQ1NTSW1wb3J0UnVsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJ
bXBvcnRSdWxlOjpjc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTSW5oZXJpdGVkVmFsdWUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTSW5oZXJpdGVkVmFsdWU6OmN1c3RvbUNzc1RleHQpOgor
ICAgICAgICAqIGNzcy9DU1NJbml0aWFsVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
SW5pdGlhbFZhbHVlOjpjdXN0b21Dc3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZl
VmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmN1c3RvbUNz
c1RleHQpOgorICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlTb3VyY2VEYXRhOjp0b1N0cmluZyk6CisgICAgICAgICog
Y3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpzZWxl
Y3RvclRleHQpOgorICAgICAgICAqIGNzcy9DU1NTdHlsZVJ1bGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTU3R5bGVSdWxlOjpnZW5lcmF0ZVNlbGVjdG9yVGV4dCk6CisgICAgICAgICogY3Nz
L0NTU1N0eWxlU2hlZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2hlZXQ6OnR5cGUp
OgorICAgICAgICAqIGNzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWU6OmN1c3RvbUNzc1RleHQpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlOjpjdXN0b21D
c3NUZXh0KToKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVMaXN0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlTGlzdDo6Y3VzdG9tQ3NzVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NW
YWx1ZUxpc3Q6OmN1c3RvbVNlcmlhbGl6ZVJlc29sdmluZ1ZhcmlhYmxlcyk6CisgICAgICAgICog
Y3NzL01lZGlhUXVlcnlFeHAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeUV4cDo6
c2VyaWFsaXplKToKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmN1c3RvbUNzc1RleHQpOgorICAg
ICAgICAqIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlUnVsZUtleWZyYW1lczo6ZmluZEtleWZyYW1lSW5kZXgpOgorICAgICAgICAoV2ViQ29y
ZTo6V2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZTo6Y3NzVGV4dCk6CisgICAgICAgICogY3NzL1dlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTTWF0
RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCk6CisgICAgICAgICogY3NzL1dlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZTo6Y3VzdG9tQ3NzVGV4dCk6CisKIDIwMTMtMDUtMjAgIFpvbHRhbiBIb3J2YXRoICA8
em9sdGFuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0NTUyBSZWdpb25zXVtDU1MgRXhjbHVzaW9u
c10gc2hhcGUtaW5zaWRlIG9uIHJlZ2lvbnMgc2hvdWxkIHJlc3BlY3QgcG9zaXRpb25lZCBzaGFw
ZXMgYW5kIG92ZXJmbG93CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VT
ZXRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHAKaW5k
ZXggODc5ZjI5YTczMjE3NTViNTVlMmVlYTg2ZjQ4ZWQ5MGI4OGZiOWY4Zi4uY2JkOGE0MzMzMzM5
MTYwYzEwODQ3YTQ1MDU2NTkxZWM1ZGEzY2MwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ltYWdlU2V0VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFn
ZVNldFZhbHVlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEyLCAy
MDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtMTQ0LDEzICsxNDQsMTMgQEAgU3R5bGVJbWFnZSogQ1NTSW1hZ2VTZXRW
YWx1ZTo6Y2FjaGVkT3JQZW5kaW5nSW1hZ2VTZXQoRG9jdW1lbnQqIGRvY3VtZW50KQogU3RyaW5n
IENTU0ltYWdlU2V0VmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogewogICAgIFN0cmluZ0J1
aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBlbmQoIi13ZWJraXQtaW1hZ2Utc2V0KCIpOwor
ICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCItd2Via2l0LWltYWdlLXNldCgiKTsKIAogICAgIHNp
emVfdCBsZW5ndGggPSB0aGlzLT5sZW5ndGgoKTsKICAgICBzaXplX3QgaSA9IDA7CiAgICAgd2hp
bGUgKGkgPCBsZW5ndGgpIHsKICAgICAgICAgaWYgKGkgPiAwKQotICAgICAgICAgICAgcmVzdWx0
LmFwcGVuZCgiLCAiKTsKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIsICIpOwog
CiAgICAgICAgIGNvbnN0IENTU1ZhbHVlKiBpbWFnZVZhbHVlID0gaXRlbShpKTsKICAgICAgICAg
cmVzdWx0LmFwcGVuZChpbWFnZVZhbHVlLT5jc3NUZXh0KCkpOwpAQCAtMTY3LDcgKzE2Nyw3IEBA
IFN0cmluZyBDU1NJbWFnZVNldFZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29uc3QKICAgICAgICAg
KytpOwogICAgIH0KIAotICAgIHJlc3VsdC5hcHBlbmQoIikiKTsKKyAgICByZXN1bHQuYXBwZW5k
KCcpJyk7CiAgICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTSW1hZ2VWYWx1ZS5jcHAKaW5kZXggYTI0MDExYWNlMGE1ZmYzMTI1OThhMzI0YjFjMzcwZTZk
YTZmMzI4Yi4uZDZjYTgzNGFkM2UwNzQ0MzgzYzA0NThhODhmYWJmYzQ0ZDcxZTNkOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiAoQykg
MTk5OS0yMDAzIExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDQsIDIwMDUsIDIwMDYsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4LCAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtOTksNyArOTksNyBAQCBi
b29sIENTU0ltYWdlVmFsdWU6OmVxdWFscyhjb25zdCBDU1NJbWFnZVZhbHVlJiBvdGhlcikgY29u
c3QKIAogU3RyaW5nIENTU0ltYWdlVmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogewotICAg
IHJldHVybiAidXJsKCIgKyBxdW90ZUNTU1VSTElmTmVlZGVkKG1fdXJsKSArICIpIjsKKyAgICBy
ZXR1cm4gInVybCgiICsgcXVvdGVDU1NVUkxJZk5lZWRlZChtX3VybCkgKyAnKSc7CiB9CiAKIFBh
c3NSZWZQdHI8Q1NTVmFsdWU+IENTU0ltYWdlVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltcG9ydFJ1bGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ltcG9ydFJ1bGUuY3BwCmluZGV4IDI1ZDllMzQ2NWQ2MWRiYmI1YTY4
YzE1NzhkYmNlOGY5MDRiZDkyY2UuLjAzY2JhNDRmMTY4ODk5YWVlYThiZjkxMmI1OTM4NDAzYzdm
MjA1MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbXBvcnRSdWxlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1wb3J0UnVsZS5jcHAKQEAgLTEsNyArMSw3IEBA
CiAvKgogICogKEMpIDE5OTktMjAwMyBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQogICogKEMp
IDIwMDItMjAwMyBEaXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKLSAqIENvcHlyaWdodCAo
QykgMjAwMiwgMjAwNSwgMjAwNiwgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDUsIDIwMDYsIDIw
MDgsIDIwMDksIDIwMTAsIDIwMTIsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC02Myw5ICs2Myw5IEBAIE1lZGlhTGlzdCogQ1NTSW1w
b3J0UnVsZTo6bWVkaWEoKSBjb25zdAogU3RyaW5nIENTU0ltcG9ydFJ1bGU6OmNzc1RleHQoKSBj
b25zdAogewogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBlbmQoIkBp
bXBvcnQgdXJsKFwiIik7CisgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIkBpbXBvcnQgdXJsKFwi
Iik7CiAgICAgcmVzdWx0LmFwcGVuZChtX2ltcG9ydFJ1bGUtPmhyZWYoKSk7Ci0gICAgcmVzdWx0
LmFwcGVuZCgiXCIpIik7CisgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIlwiKSIpOwogCiAgICAg
aWYgKG1faW1wb3J0UnVsZS0+bWVkaWFRdWVyaWVzKCkpIHsKICAgICAgICAgU3RyaW5nIG1lZGlh
VGV4dCA9IG1faW1wb3J0UnVsZS0+bWVkaWFRdWVyaWVzKCktPm1lZGlhVGV4dCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0luaGVyaXRlZFZhbHVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NJbmhlcml0ZWRWYWx1ZS5jcHAKaW5kZXggZTc2NTNmOTYwZDVhNjg0NDFj
ZjkzOTFiNTE0ZTdkYzM4ZWU3Y2M3My4uNzZhNThjM2FiYzNmZmJjZDM5NGFlMWNhMTczYTFmODkx
YjI5MzM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0luaGVyaXRlZFZhbHVl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5oZXJpdGVkVmFsdWUuY3BwCkBAIC0x
LDYgKzEsNiBAQAogLyoqCiAgKiAoQykgMTk5OS0yMDAzIExhcnMgS25vbGwgKGtub2xsQGtkZS5v
cmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYgQXBwbGUgQ29tcHV0ZXIsIElu
Yy4KKyAqIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAxMyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7
IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0
ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTI3LDcgKzI3LDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBTdHJpbmcgQ1NTSW5oZXJpdGVkVmFsdWU6OmN1c3RvbUNz
c1RleHQoKSBjb25zdAogewotICAgIHJldHVybiAiaW5oZXJpdCI7CisgICAgcmV0dXJuIEFTQ0lJ
TGl0ZXJhbCgiaW5oZXJpdCIpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5pdGlhbFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NJbml0aWFsVmFsdWUuY3BwCmluZGV4IGFmYzdiYmI5M2ZkZDAyMmU5OTdlNzNi
OTNkOTMxNjVkYzBiZTg4OWUuLjgxNzM1NjdiMDJkY2Y5OWJjNjJiMGU0YzI1MDg4NWRhNzA0Nzg5
ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbml0aWFsVmFsdWUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbml0aWFsVmFsdWUuY3BwCkBAIC0xLDYgKzEsNiBA
QAogLyoqCiAgKiAoQykgMTk5OS0yMDAzIExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYgQXBwbGUgQ29tcHV0ZXIsIEluYy4KKyAqIENv
cHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g
cmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTI3LDcgKzI3LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBTdHJpbmcgQ1NTSW5pdGlhbFZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29u
c3QKIHsKLSAgICByZXR1cm4gImluaXRpYWwiOworICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImlu
aXRpYWwiKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZS5jcHAKaW5kZXggOGExNjNmYTM5YjA4Mjg3NWFlNDVkMWYzOTM1NmE1
ODUyNGI2MWY3MC4uMmQ0MDI3OTk4MTBlNTk4ZDI0NDk5MDAyODVkZDhlNWRiYWJjZTI2YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCkBAIC0xLDYgKzEsNiBAQAog
LyoKICAqIChDKSAxOTk5LTIwMDMgTGFycyBLbm9sbCAoa25vbGxAa2RlLm9yZykKLSAqIENvcHly
aWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAxMiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIw
MDcsIDIwMDgsIDIwMTIsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoK
ICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljCkBAIC0xMTE3LDcgKzExMTcsNyBAQCBTdHJpbmcgQ1NTUHJpbWl0aXZl
VmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogICAgICAgICAgICAgYnJlYWs7CiAjaWYgRU5B
QkxFKENTU19WQVJJQUJMRVMpCiAgICAgICAgIGNhc2UgQ1NTX1ZBUklBQkxFX05BTUU6Ci0gICAg
ICAgICAgICB0ZXh0ID0gIi13ZWJraXQtdmFyKCIgKyBTdHJpbmcobV92YWx1ZS5zdHJpbmcpICsg
IikiOworICAgICAgICAgICAgdGV4dCA9ICItd2Via2l0LXZhcigiICsgU3RyaW5nKG1fdmFsdWUu
c3RyaW5nKSArICcpJzsKICAgICAgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmNwcAppbmRleCAxYzVkYzliN2Ux
MmViNTlmNjU1ZjljOTQwN2JlNTdhOGRmYTE4NmQxLi5mNWU2MjE3MDIxYmNiMzE1N2Y4MWRmNWRi
NDg1ODJlY2U4NWZkNWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlTb3VyY2VEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3Vy
Y2VEYXRhLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKGMpIDIwMTAgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCkBAIC04OCw5ICs4OSw3IEBAIENTU1Byb3BlcnR5U291cmNlRGF0YTo6Q1NTUHJvcGVy
dHlTb3VyY2VEYXRhKCkKIAogU3RyaW5nIENTU1Byb3BlcnR5U291cmNlRGF0YTo6dG9TdHJpbmco
KSBjb25zdAogewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBlbXB0eVZhbHVlLCAo
QVNDSUlMaXRlcmFsKCJlIikpKTsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgaW1w
b3J0YW50U3VmZml4LCAoQVNDSUlMaXRlcmFsKCIgIWltcG9ydGFudCIpKSk7Ci0gICAgaWYgKCFu
YW1lICYmIHZhbHVlID09IGVtcHR5VmFsdWUpCisgICAgaWYgKCFuYW1lICYmIHZhbHVlID09ICJl
IikKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogCiAgICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7
CkBAIC05OCw3ICs5Nyw3IEBAIFN0cmluZyBDU1NQcm9wZXJ0eVNvdXJjZURhdGE6OnRvU3RyaW5n
KCkgY29uc3QKICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKICAgICByZXN1bHQuYXBw
ZW5kKHZhbHVlKTsKICAgICBpZiAoaW1wb3J0YW50KQotICAgICAgICByZXN1bHQuYXBwZW5kKGlt
cG9ydGFudFN1ZmZpeCk7CisgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgIWltcG9ydGFu
dCIpOwogICAgIHJlc3VsdC5hcHBlbmQoJzsnKTsKICAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5n
KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCA5NjEwMmYxNjAwZDUxOGFk
MzVlMzM4ZjEwYWQxZjFkYmM3ZDVhNWM5Li4xZDk2M2ZlZmI2ZDgyOWEzZGM1NTA5YmNkNWRlYzA5
MzFmNzY1OWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTMsNyArMyw3IEBA
CiAgKiAgICAgICAgICAgICAgIDE5OTkgV2FsZG8gQmFzdGlhbiAoYmFzdGlhbkBrZGUub3JnKQog
ICogICAgICAgICAgICAgICAyMDAxIEFuZHJlYXMgU2NobGFwYmFjaCAoc2NobHBiY2hAaWFtLnVu
aWJlLmNoKQogICogICAgICAgICAgICAgICAyMDAxLTIwMDMgRGlyayBNdWVsbGVyIChtdWVsbGVy
QGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDks
IDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDAyLCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwLCAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwOCBEYXZpZCBTbWl0aCAoY2F0Zmlz
aC5tYW5AZ21haWwuY29tKQogICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgpAQCAtNjU0LDcgKzY1NCw3IEBAIFN0cmluZyBDU1NTZWxlY3Rv
cjo6c2VsZWN0b3JUZXh0KGNvbnN0IFN0cmluZyYgcmlnaHRTaWRlKSBjb25zdAogICAgICAgICAg
ICAgY29uc3QgQXRvbWljU3RyaW5nJiBwcmVmaXggPSBjcy0+YXR0cmlidXRlKCkucHJlZml4KCk7
CiAgICAgICAgICAgICBpZiAoIXByZWZpeC5pc051bGwoKSkgewogICAgICAgICAgICAgICAgIHN0
ci5hcHBlbmQocHJlZml4KTsKLSAgICAgICAgICAgICAgICBzdHIuYXBwZW5kKCJ8Iik7CisgICAg
ICAgICAgICAgICAgc3RyLmFwcGVuZCgnfCcpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAg
c3RyLmFwcGVuZChjcy0+YXR0cmlidXRlKCkubG9jYWxOYW1lKCkpOwogICAgICAgICAgICAgc3dp
dGNoIChjcy0+bV9tYXRjaCkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0
eWxlUnVsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVSdWxlLmNwcAppbmRleCA1
MGZjOTA1ZTg4OGEzNDI4NTk1NDVmYzI2ZTc3NDQ1ZjI3Y2Q3MDdiLi4wOGVkNGQ0ZmU0M2I2MWQw
MTBiZTllZDZkODJiZjU2MTZjNTVhZTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU3R5bGVSdWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVSdWxlLmNw
cApAQCAtMSw3ICsxLDcgQEAKIC8qCiAgKiAoQykgMTk5OS0yMDAzIExhcnMgS25vbGwgKGtub2xs
QGtkZS5vcmcpCiAgKiAoQykgMjAwMi0yMDAzIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3Jn
KQotICogQ29weXJpZ2h0IChDKSAyMDAyLCAyMDA1LCAyMDA2LCAyMDA4LCAyMDEyIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwMiwgMjAwNSwgMjAw
NiwgMjAwOCwgMjAxMiwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMKQEAgLTcwLDcgKzcwLDcgQEAgU3RyaW5nIENTU1N0eWxlUnVsZTo6Z2Vu
ZXJhdGVTZWxlY3RvclRleHQoKSBjb25zdAogICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKICAg
ICBmb3IgKGNvbnN0IENTU1NlbGVjdG9yKiBzZWxlY3RvciA9IG1fc3R5bGVSdWxlLT5zZWxlY3Rv
ckxpc3QoKS5maXJzdCgpOyBzZWxlY3Rvcjsgc2VsZWN0b3IgPSBDU1NTZWxlY3Rvckxpc3Q6Om5l
eHQoc2VsZWN0b3IpKSB7CiAgICAgICAgIGlmIChzZWxlY3RvciAhPSBtX3N0eWxlUnVsZS0+c2Vs
ZWN0b3JMaXN0KCkuZmlyc3QoKSkKLSAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKCIsICIpOwor
ICAgICAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCIsICIpOwogICAgICAgICBidWlsZGVy
LmFwcGVuZChzZWxlY3Rvci0+c2VsZWN0b3JUZXh0KCkpOwogICAgIH0KICAgICByZXR1cm4gYnVp
bGRlci50b1N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2hlZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNoZWV0LmgKaW5kZXggNWUzOTdk
MTczMmU4YTQ5YTRiYzRiODkxMTlhZmExZDUwMDkzYmY5ZS4uOTUzYzMwMjVlNTVjZjEwMzBhYzUy
ODRjMjYyYjUxMDllYTRkZmNmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0
eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTaGVldC5oCkBAIC0x
LDYgKzEsNiBAQAogLyoKICAqIChDKSAxOTk5LTIwMDMgTGFycyBLbm9sbCAoa25vbGxAa2RlLm9y
ZykKLSAqIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwg
MjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDQsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTIsIDIwMTMgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUg
dGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0xMTAsNyArMTEwLDcg
QEAgcHJpdmF0ZToKICAgICBDU1NTdHlsZVNoZWV0KFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRl
bnRzPiwgTm9kZSogb3duZXJOb2RlLCBib29sIGlzSW5saW5lU3R5bGVzaGVldCk7CiAKICAgICB2
aXJ0dWFsIGJvb2wgaXNDU1NTdHlsZVNoZWV0KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAg
IHZpcnR1YWwgU3RyaW5nIHR5cGUoKSBjb25zdCB7IHJldHVybiAidGV4dC9jc3MiOyB9CisgICAg
dmlydHVhbCBTdHJpbmcgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgidGV4dC9j
c3MiKTsgfQogCiAgICAgYm9vbCBjYW5BY2Nlc3NSdWxlcygpIGNvbnN0OwogICAgIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwCmluZGV4IGE0YzIzZWUz
NTNkZTYyNjk5MDMzYjQ3MjYxM2ZmOTk3ZDY3NzJlZWUuLmFlZGUyZmYxMGZjZTZiMDJiZTRlODlj
YjU0MjI1OWI3NjRlM2U1OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1p
bmdGdW5jdGlvblZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVu
Y3Rpb25WYWx1ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA3
IEFwcGxlIENvbXB1dGVyLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA3LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIFN0cmluZyBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlOjpjdXN0b21Dc3NUZXh0
KCkgY29uc3QKIHsKLSAgICByZXR1cm4gImxpbmVhciI7CisgICAgcmV0dXJuIEFTQ0lJTGl0ZXJh
bCgibGluZWFyIik7CiB9CiAKIApAQCAtNDIsNyArNDIsNyBAQCBTdHJpbmcgQ1NTQ3ViaWNCZXpp
ZXJUaW1pbmdGdW5jdGlvblZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29uc3QKICAgICAgICAgKyBT
dHJpbmc6Om51bWJlcihtX3gxKSArICIsICIKICAgICAgICAgKyBTdHJpbmc6Om51bWJlcihtX3kx
KSArICIsICIKICAgICAgICAgKyBTdHJpbmc6Om51bWJlcihtX3gyKSArICIsICIKLSAgICAgICAg
KyBTdHJpbmc6Om51bWJlcihtX3kyKSArICIpIjsKKyAgICAgICAgKyBTdHJpbmc6Om51bWJlciht
X3kyKSArICcpJzsKIH0KIAogYm9vbCBDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWU6
OmVxdWFscyhjb25zdCBDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUmIG90aGVyKSBj
b25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNwcAppbmRleCA5MzM1Y2QyMzIyYjljY2Zh
MWFmNzQxZTc5YTNmZDE5ZDQwMDdiMzI3Li40MjNlMjZlN2U2NTcwOWZkZDU0N2ZlMGU3MjRhMGY4
N2FhZWMzZTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNwcApAQCAtMSw2ICsxLDYg
QEAKIC8qCiAgKiAoQykgMTk5OS0yMDAzIExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMTAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3
LCAyMDEwLCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CiAgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYwpAQCAtMTAxLDEzICsxMDEsMTMgQEAgU3RyaW5nIENTU1ZhbHVlTGlzdDo6Y3VzdG9t
Q3NzVGV4dCgpIGNvbnN0CiAgICAgU3RyaW5nIHNlcGFyYXRvcjsKICAgICBzd2l0Y2ggKG1fdmFs
dWVMaXN0U2VwYXJhdG9yKSB7CiAgICAgY2FzZSBTcGFjZVNlcGFyYXRvcjoKLSAgICAgICAgc2Vw
YXJhdG9yID0gIiAiOworICAgICAgICBzZXBhcmF0b3IgPSBBU0NJSUxpdGVyYWwoIiAiKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb21tYVNlcGFyYXRvcjoKLSAgICAgICAgc2VwYXJhdG9y
ID0gIiwgIjsKKyAgICAgICAgc2VwYXJhdG9yID0gQVNDSUlMaXRlcmFsKCIsICIpOwogICAgICAg
ICBicmVhazsKICAgICBjYXNlIFNsYXNoU2VwYXJhdG9yOgotICAgICAgICBzZXBhcmF0b3IgPSAi
IC8gIjsKKyAgICAgICAgc2VwYXJhdG9yID0gQVNDSUlMaXRlcmFsKCIgLyAiKTsKICAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0x
NDQsMTMgKzE0NCwxMyBAQCBTdHJpbmcgQ1NTVmFsdWVMaXN0OjpjdXN0b21TZXJpYWxpemVSZXNv
bHZpbmdWYXJpYWJsZXMoY29uc3QgSGFzaE1hcDxBdG9taWNTdHJpbgogICAgIFN0cmluZyBzZXBh
cmF0b3I7CiAgICAgc3dpdGNoIChtX3ZhbHVlTGlzdFNlcGFyYXRvcikgewogICAgIGNhc2UgU3Bh
Y2VTZXBhcmF0b3I6Ci0gICAgICAgIHNlcGFyYXRvciA9ICIgIjsKKyAgICAgICAgc2VwYXJhdG9y
ID0gQVNDSUlMaXRlcmFsKCIgIik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ29tbWFTZXBh
cmF0b3I6Ci0gICAgICAgIHNlcGFyYXRvciA9ICIsICI7CisgICAgICAgIHNlcGFyYXRvciA9IEFT
Q0lJTGl0ZXJhbCgiLCAiKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTbGFzaFNlcGFyYXRv
cjoKLSAgICAgICAgc2VwYXJhdG9yID0gIiAvICI7CisgICAgICAgIHNlcGFyYXRvciA9IEFTQ0lJ
TGl0ZXJhbCgiIC8gIik7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL01lZGlh
UXVlcnlFeHAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFeHAuY3BwCmluZGV4
IDI2NzA0YjQyY2NiMGE1YTM3MjY5MTdjODkzYTE0NmRjZTUyYTA0NmIuLmU5Y2YxZTAwODY5NTdl
YTIzODE2Y2FkYThlY2U3NzI5ZTVkMmQzYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9NZWRpYVF1ZXJ5RXhwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV4
cC5jcHAKQEAgLTIzNywxMyArMjM3LDEzIEBAIFN0cmluZyBNZWRpYVF1ZXJ5RXhwOjpzZXJpYWxp
emUoKSBjb25zdAogICAgICAgICByZXR1cm4gbV9zZXJpYWxpemF0aW9uQ2FjaGU7CiAKICAgICBT
dHJpbmdCdWlsZGVyIHJlc3VsdDsKLSAgICByZXN1bHQuYXBwZW5kKCIoIik7CisgICAgcmVzdWx0
LmFwcGVuZCgnKCcpOwogICAgIHJlc3VsdC5hcHBlbmQobV9tZWRpYUZlYXR1cmUubG93ZXIoKSk7
CiAgICAgaWYgKG1fdmFsdWUpIHsKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgiOiAiKTsKKyAgICAg
ICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIjogIik7CiAgICAgICAgIHJlc3VsdC5hcHBlbmQobV92
YWx1ZS0+Y3NzVGV4dCgpKTsKICAgICB9Ci0gICAgcmVzdWx0LmFwcGVuZCgiKSIpOworICAgIHJl
c3VsdC5hcHBlbmQoJyknKTsKIAogICAgIGNvbnN0X2Nhc3Q8TWVkaWFRdWVyeUV4cCo+KHRoaXMp
LT5tX3NlcmlhbGl6YXRpb25DYWNoZSA9IHJlc3VsdC50b1N0cmluZygpOwogICAgIHJldHVybiBt
X3NlcmlhbGl6YXRpb25DYWNoZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuY3BwCmluZGV4IGM4YWZjMjU0Y2QzZmFjMzBiYjQ1OGZhYTFmZWVjZTIxMjhmYWZiYjcu
LjhhNWM3MTkxMGQ1Yjg2NjI1ZWMzYmNjNWUxMzE0NTIyNjdmOWZlNGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDExLCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTIsOCArNTIsMTEgQEAgYm9vbCBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6dHlwZVVzZXNTcGFjZVNlcGFyYXRvcihGaWx0ZXJPcGVyYXRp
b25UeXBlIG9wZXJhdGlvblQKIAogU3RyaW5nIFdlYktpdENTU0ZpbHRlclZhbHVlOjpjdXN0b21D
c3NUZXh0KCkgY29uc3QKIHsKLSAgICBTdHJpbmcgcmVzdWx0OworICAgIGNvbnN0IGNoYXIqIHJl
c3VsdCA9ICIiOwogICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBVbmtub3duRmlsdGVy
T3BlcmF0aW9uOgorICAgICAgICByZXN1bHQgPSAiIjsKKyAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBSZWZlcmVuY2VGaWx0ZXJPcGVyYXRpb246CiAgICAgICAgIHJlc3VsdCA9ICJ1cmwoIjsKICAg
ICAgICAgYnJlYWs7CkBAIC05MiwxMSArOTUsOSBAQCBTdHJpbmcgV2ViS2l0Q1NTRmlsdGVyVmFs
dWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogICAgICAgICByZXN1bHQgPSAiY3VzdG9tKCI7CiAg
ICAgICAgIGJyZWFrOwogI2VuZGlmCi0gICAgZGVmYXVsdDoKLSAgICAgICAgYnJlYWs7CiAgICAg
fQogCi0gICAgcmV0dXJuIHJlc3VsdCArIENTU1ZhbHVlTGlzdDo6Y3VzdG9tQ3NzVGV4dCgpICsg
IikiOworICAgIHJldHVybiByZXN1bHQgKyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNzc1RleHQoKSAr
ICcpJzsKIH0KIAogV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OldlYktpdENTU0ZpbHRlclZhbHVlKGNv
bnN0IFdlYktpdENTU0ZpbHRlclZhbHVlJiBjbG9uZUZyb20pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAKaW5kZXggZTM2NDUyMTMwMDg5MGRkZGUzMjU1
NDY5NGQzZTYxZDM5YzMwYWU5ZS4uZmQ0OGZjYjYyYzY4ODFiNGI2ZGViMThmOTc5OGYwZDYyNjg3
NTg1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1
bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNw
cApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDcsIDIwMDgsIDIwMTIg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA3LCAy
MDA4LCAyMDEyLCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNzMsOSArNzMsOSBAQCBpbnQgU3R5bGVSdWxlS2V5
ZnJhbWVzOjpmaW5kS2V5ZnJhbWVJbmRleChjb25zdCBTdHJpbmcmIGtleSkgY29uc3QKIHsKICAg
ICBTdHJpbmcgcGVyY2VudGFnZVN0cmluZzsKICAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2Uoa2V5
LCAiZnJvbSIpKQotICAgICAgICBwZXJjZW50YWdlU3RyaW5nID0gIjAlIjsKKyAgICAgICAgcGVy
Y2VudGFnZVN0cmluZyA9IEFTQ0lJTGl0ZXJhbCgiMCUiKTsKICAgICBlbHNlIGlmIChlcXVhbEln
bm9yaW5nQ2FzZShrZXksICJ0byIpKQotICAgICAgICBwZXJjZW50YWdlU3RyaW5nID0gIjEwMCUi
OworICAgICAgICBwZXJjZW50YWdlU3RyaW5nID0gQVNDSUlMaXRlcmFsKCIxMDAlIik7CiAgICAg
ZWxzZQogICAgICAgICBwZXJjZW50YWdlU3RyaW5nID0ga2V5OwogICAgIApAQCAtMTUzLDE3ICsx
NTMsMTcgQEAgV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlKiBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlOjpm
aW5kUnVsZShjb25zdCBTdHJpbmcmIHMpCiBTdHJpbmcgV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZTo6
Y3NzVGV4dCgpIGNvbnN0CiB7CiAgICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7Ci0gICAgcmVzdWx0
LmFwcGVuZCgiQC13ZWJraXQta2V5ZnJhbWVzICIpOworICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFs
KCJALXdlYmtpdC1rZXlmcmFtZXMgIik7CiAgICAgcmVzdWx0LmFwcGVuZChuYW1lKCkpOwotICAg
IHJlc3VsdC5hcHBlbmQoIiB7IFxuIik7CisgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIiB7IFxu
Iik7CiAKICAgICB1bnNpZ25lZCBzaXplID0gbGVuZ3RoKCk7CiAgICAgZm9yICh1bnNpZ25lZCBp
ID0gMDsgaSA8IHNpemU7ICsraSkgewotICAgICAgICByZXN1bHQuYXBwZW5kKCIgICIpOworICAg
ICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiICAiKTsKICAgICAgICAgcmVzdWx0LmFwcGVuZCht
X2tleWZyYW1lc1J1bGUtPmtleWZyYW1lcygpW2ldLT5jc3NUZXh0KCkpOwotICAgICAgICByZXN1
bHQuYXBwZW5kKCJcbiIpOworICAgICAgICByZXN1bHQuYXBwZW5kKCdcbicpOwogICAgIH0KLSAg
ICByZXN1bHQuYXBwZW5kKCJ9Iik7CisgICAgcmVzdWx0LmFwcGVuZCgnfScpOwogICAgIHJldHVy
biByZXN1bHQudG9TdHJpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwCmluZGV4IGFmMzk0N2RjOTNmM2JiZGQyYmEzMzgyZjVl
YWYxOWU1YThiMTk1NDcuLmU3YjViOGI0NTdiYzcxNGUwNGM4Njk5MjA5N2ZjOGQ5OTA0MWQyZTgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5j
cHAKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3Rl
bXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtNTAsMTEgKzUxLDExIEBAIFN0cmluZyBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlOjpjdXN0b21Dc3NUZXh0KCkgY29uc3QKIHsKICAgICBTdHJpbmdCdWlsZGVyIGJ1aWxk
ZXI7CiAgICAgaWYgKGxlbmd0aCgpID09IDQpCi0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKCJtYXQy
KCIpOworICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDIoIik7CiAgICAgZWxzZSBp
ZiAobGVuZ3RoKCkgPT0gOSkKLSAgICAgICAgYnVpbGRlci5hcHBlbmQoIm1hdDMoIik7CisgICAg
ICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgibWF0MygiKTsKICAgICBlbHNlIGlmIChsZW5ndGgo
KSA9PSAxNikKLSAgICAgICAgYnVpbGRlci5hcHBlbmQoIm1hdDQoIik7CisgICAgICAgIGJ1aWxk
ZXIuYXBwZW5kTGl0ZXJhbCgibWF0NCgiKTsKICAgICBlbHNlIHsKICAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CiAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcAppbmRleCAzYTEzZGQ3YWRkMTVj
MDg1YWQ4NzMzOWJmODg4MmY4NTI4ZDFhN2RjLi4wZjUxZmZkODMwMGVmMjY3NDBjYTEwN2I0ZTY1
YzZlZTAwODIyMmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ2LDcgKzQ3LDcgQEAgV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZTo6V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NNaXhG
dW5jdGlvblYKIAogU3RyaW5nIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmN1c3RvbUNzc1Rl
eHQoKSBjb25zdAogewotICAgIHJldHVybiAibWl4KCIgKyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNz
c1RleHQoKSArICIpIjsKKyAgICByZXR1cm4gIm1peCgiICsgQ1NTVmFsdWVMaXN0OjpjdXN0b21D
c3NUZXh0KCkgKyAnKSc7CiB9CiAKIFBhc3NSZWZQdHI8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZT4gV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y2xvbmVGb3JDU1NPTSgpIGNvbnN0Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>