<?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>38319</bug_id>
          
          <creation_ts>2010-04-29 04:37:57 -0700</creation_ts>
          <short_desc>svn-apply: Add a &quot;format&quot; property to the hashes returned by parseDiff() and parseDiffHeader()</short_desc>
          <delta_ts>2010-05-02 22:43:04 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>38320</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Jerdonek">cjerdonek</reporter>
          <assigned_to name="Chris Jerdonek">cjerdonek</assigned_to>
          <cc>cjerdonek</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>218957</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Jerdonek">cjerdonek</who>
    <bug_when>2010-04-29 04:37:57 -0700</bug_when>
    <thetext>The &quot;format&quot; key can initially have values &quot;svn&quot; and &quot;git&quot;.

It can be set to &quot;git&quot; from within parseDiffHeader() if the first line matches--

&gt; $line =~ m#^diff --git #</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219856</commentid>
    <comment_count>1</comment_count>
      <attachid>54882</attachid>
    <who name="Chris Jerdonek">cjerdonek</who>
    <bug_when>2010-05-02 08:07:29 -0700</bug_when>
    <thetext>Created attachment 54882
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219944</commentid>
    <comment_count>2</comment_count>
      <attachid>54882</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-02 18:33:26 -0700</bug_when>
    <thetext>Comment on attachment 54882
Proposed patch

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219949</commentid>
    <comment_count>3</comment_count>
      <attachid>54882</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-02 18:49:37 -0700</bug_when>
    <thetext>Comment on attachment 54882
Proposed patch

Clearing flags on attachment: 54882

Committed r58663: &lt;http://trac.webkit.org/changeset/58663&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219950</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-02 18:49:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220001</commentid>
    <comment_count>5</comment_count>
      <attachid>54882</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2010-05-02 20:17:35 -0700</bug_when>
    <thetext>Comment on attachment 54882
Proposed patch

&gt; diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
&gt; index e76aa08..b09d704 100644
&gt; --- a/WebKitTools/ChangeLog
&gt; +++ b/WebKitTools/ChangeLog
&gt; @@ -1,3 +1,24 @@
&gt; +2010-05-02  Chris Jerdonek  &lt;cjerdonek@webkit.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=38319
&gt; +
&gt; +        * Scripts/VCSUtils.pm:
&gt; +          - In parseDiffHeader()--
&gt; +            - Added an &quot;scmFormat&quot; hash key to the return value to represent
&gt; +              whether the diff is Git or SVN formatted.
&gt; +            - Adjusted the code so the value of &quot;copiedFromPath&quot; will
&gt; +              be undef rather than &quot;does not exist&quot; if the file was not
&gt; +              copied.
&gt; +
&gt; +        * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
&gt; +          - Added a FIXME to refactor these unit tests to use is_deeply().
&gt; +

You added the FIXME comment to Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl. Not Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220002</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2010-05-02 20:21:03 -0700</bug_when>
    <thetext>Not a big issue, just thought to point it out.

(In reply to comment #5)
&gt; You added the FIXME comment to
&gt; Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl. Not
&gt; Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220022</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Jerdonek">cjerdonek</who>
    <bug_when>2010-05-02 22:43:04 -0700</bug_when>
    <thetext>Thanks for the review, Eric!

And thanks for pointing out the ChangeLog typo, Daniel.  I fixed it here:

http://trac.webkit.org/changeset/58666</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54882</attachid>
            <date>2010-05-02 08:07:29 -0700</date>
            <delta_ts>2010-05-02 20:17:35 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>_patch-38319-1.diff</filename>
            <type>text/plain</type>
            <size>15511</size>
            <attacher name="Chris Jerdonek">cjerdonek</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBlNzZhYTA4Li5iMDlkNzA0IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTAtMDUt
MDIgIENocmlzIEplcmRvbmVrICA8Y2plcmRvbmVrQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM4MzE5CisKKyAgICAgICAgKiBTY3JpcHRzL1ZDU1V0aWxzLnBt
OgorICAgICAgICAgIC0gSW4gcGFyc2VEaWZmSGVhZGVyKCktLQorICAgICAgICAgICAgLSBBZGRl
ZCBhbiAic2NtRm9ybWF0IiBoYXNoIGtleSB0byB0aGUgcmV0dXJuIHZhbHVlIHRvIHJlcHJlc2Vu
dAorICAgICAgICAgICAgICB3aGV0aGVyIHRoZSBkaWZmIGlzIEdpdCBvciBTVk4gZm9ybWF0dGVk
LgorICAgICAgICAgICAgLSBBZGp1c3RlZCB0aGUgY29kZSBzbyB0aGUgdmFsdWUgb2YgImNvcGll
ZEZyb21QYXRoIiB3aWxsCisgICAgICAgICAgICAgIGJlIHVuZGVmIHJhdGhlciB0aGFuICJkb2Vz
IG5vdCBleGlzdCIgaWYgdGhlIGZpbGUgd2FzIG5vdAorICAgICAgICAgICAgICBjb3BpZWQuCisK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHBlcmwvVkNTVXRpbHNfdW5pdHRlc3QvcGFyc2VEaWZm
SGVhZGVyLnBsOgorICAgICAgICAgIC0gQWRkZWQgYSBGSVhNRSB0byByZWZhY3RvciB0aGVzZSB1
bml0IHRlc3RzIHRvIHVzZSBpc19kZWVwbHkoKS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cGVybC9WQ1NVdGlsc191bml0dGVzdC9wYXJzZURpZmZIZWFkZXIucGw6CisgICAgICAgICAgLSBV
cGRhdGVkIHRoZSB1bml0IHRlc3RzIHRvIHRlc3QgdGhlICJzY21Gb3JtYXQiIHZhbHVlLgorICAg
ICAgICAgIC0gU2ltcGxpZmllZCB0aGUgdW5pdCB0ZXN0cyBieSByZWZhY3RvcmluZyB0aGVtIHRv
IHVzZSBpc19kZWVwbHkoKS4KKwogMjAxMC0wNS0wMSAgRGFuaWVsIEJhdGVzICA8ZGJhdGVzQHJp
bS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgSmVyZG9uZWsuCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9TY3JpcHRzL1ZDU1V0aWxzLnBtIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9W
Q1NVdGlscy5wbQppbmRleCBkZmYxYzRkLi5lZDgxMDUyIDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9TY3JpcHRzL1ZDU1V0aWxzLnBtCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvVkNTVXRpbHMu
cG0KQEAgLTQzOSw2ICs0MzksNyBAQCBzdWIgZ2l0ZGlmZjJzdm5kaWZmKCQpCiAjICAgICBjb3Bp
ZWRGcm9tUGF0aDogaWYgYSBmaWxlIGNvcHksIHRoZSBwYXRoIGZyb20gd2hpY2ggdGhlIGZpbGUg
d2FzCiAjICAgICAgICAgICAgICAgICAgICAgY29waWVkLiBPdGhlcndpc2UsIHVuZGVmaW5lZC4K
ICMgICAgIGluZGV4UGF0aDogdGhlIHBhdGggaW4gdGhlICJJbmRleDoiIGxpbmUuCisjICAgICBz
Y21Gb3JtYXQ6IFRoZSBzdHJpbmcgImdpdCIgb3IgInN2biIgZGVwZW5kaW5nIG9uIHRoZSBmb3Jt
YXQuCiAjICAgICBzb3VyY2VSZXZpc2lvbjogdGhlIHJldmlzaW9uIG51bWJlciBvZiB0aGUgc291
cmNlLiBUaGlzIGlzIHRoZSBzYW1lCiAjICAgICAgICAgICAgICAgICAgICAgYXMgdGhlIHJldmlz
aW9uIG51bWJlciB0aGUgZmlsZSB3YXMgY29waWVkIGZyb20sIGluCiAjICAgICAgICAgICAgICAg
ICAgICAgdGhlIGNhc2Ugb2YgYSBmaWxlIGNvcHkuCkBAIC00NjUsNiArNDY2LDcgQEAgc3ViIHBh
cnNlRGlmZkhlYWRlcigkJCkKIAogICAgIG15ICVoZWFkZXI7CiAKKyAgICBteSAkY29waWVkRnJv
bVBhdGg7CiAgICAgbXkgJGZvdW5kSGVhZGVyRW5kaW5nOwogICAgIG15ICRsYXN0UmVhZExpbmU7
IAogICAgIG15ICRzb3VyY2VSZXZpc2lvbjsKQEAgLTQ4Niw3ICs0ODgsNyBAQCBzdWIgcGFyc2VE
aWZmSGVhZGVyKCQkKQogICAgICAgICAgICAgICAgIGlmICgvXChmcm9tIChcUyspOihcZCspXCkk
LykgewogICAgICAgICAgICAgICAgICAgICAjIFRoZSAiZnJvbSIgY2xhdXNlIGlzIGNyZWF0ZWQg
Ynkgc3ZuLWNyZWF0ZS1wYXRjaCwgaW4KICAgICAgICAgICAgICAgICAgICAgIyB3aGljaCBjYXNl
IHRoZXJlIGlzIGFsd2F5cyBhbHNvIGEgInJldmlzaW9uIiBjbGF1c2UuCi0gICAgICAgICAgICAg
ICAgICAgICRoZWFkZXJ7Y29waWVkRnJvbVBhdGh9ID0gJDE7CisgICAgICAgICAgICAgICAgICAg
ICRjb3BpZWRGcm9tUGF0aCA9ICQxOwogICAgICAgICAgICAgICAgICAgICBkaWUoIlJldmlzaW9u
IG51bWJlciBcIiQyXCIgaW4gXCJmcm9tXCIgY2xhdXNlIGRvZXMgbm90IG1hdGNoICIgLgogICAg
ICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSByZXZpc2lvbiBudW1iZXIgXCIkc291cmNlUmV2
aXNpb25cIi4iKSBpZiAoJDIgIT0gJHNvdXJjZVJldmlzaW9uKTsKICAgICAgICAgICAgICAgICB9
CkBAIC01MDksNyArNTExLDkgQEAgc3ViIHBhcnNlRGlmZkhlYWRlcigkJCkKICAgICAgICAgZGll
KCJEaWQgbm90IGZpbmQgZW5kIG9mIGhlYWRlciBibG9jayBjb3JyZXNwb25kaW5nIHRvIGluZGV4
IHBhdGggXCIkaW5kZXhQYXRoXCIuIik7CiAgICAgfQogCisgICAgJGhlYWRlcntjb3BpZWRGcm9t
UGF0aH0gPSAkY29waWVkRnJvbVBhdGg7CiAgICAgJGhlYWRlcntpbmRleFBhdGh9ID0gJGluZGV4
UGF0aDsKKyAgICAkaGVhZGVye3NjbUZvcm1hdH0gPSAkZmlsdGVyID8gImdpdCIgOiAic3ZuIjsK
ICAgICAkaGVhZGVye3NvdXJjZVJldmlzaW9ufSA9ICRzb3VyY2VSZXZpc2lvbjsKICAgICAkaGVh
ZGVye3N2bkNvbnZlcnRlZFRleHR9ID0gJHN2bkNvbnZlcnRlZFRleHQ7CiAKQEAgLTU4Niw2ICs1
OTAsNyBAQCBzdWIgcGFyc2VEaWZmKCQkKQogICAgIG15ICVkaWZmSGFzaFJlZjsKICAgICAkZGlm
Zkhhc2hSZWZ7Y29waWVkRnJvbVBhdGh9ID0gJGhlYWRlckhhc2hSZWYtPntjb3BpZWRGcm9tUGF0
aH07CiAgICAgJGRpZmZIYXNoUmVme2luZGV4UGF0aH0gPSAkaGVhZGVySGFzaFJlZi0+e2luZGV4
UGF0aH07CisgICAgIyBGSVhNRTogQWxzbyBhZGQgc2NtRm9ybWF0IGZyb20gdGhlICRoZWFkZXJI
YXNoUmVmLgogICAgICRkaWZmSGFzaFJlZntzb3VyY2VSZXZpc2lvbn0gPSAkaGVhZGVySGFzaFJl
Zi0+e3NvdXJjZVJldmlzaW9ufTsKICAgICAkZGlmZkhhc2hSZWZ7c3ZuQ29udmVydGVkVGV4dH0g
PSAkc3ZuVGV4dDsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRwZXJs
L1ZDU1V0aWxzX3VuaXR0ZXN0L3BhcnNlRGlmZi5wbCBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cGVybC9WQ1NVdGlsc191bml0dGVzdC9wYXJzZURpZmYucGwKaW5kZXggZTU1M2Q5Ni4uZWU2
OGI1ZSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL1ZDU1V0aWxz
X3VuaXR0ZXN0L3BhcnNlRGlmZi5wbAorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHBl
cmwvVkNTVXRpbHNfdW5pdHRlc3QvcGFyc2VEaWZmLnBsCkBAIC0zMCw2ICszMCw5IEBAIHVzZSB3
YXJuaW5nczsKIHVzZSBUZXN0OjpNb3JlOwogdXNlIFZDU1V0aWxzOwogCisjIEZJWE1FOiBSZWZh
Y3RvciB0aGUgdW5pdCB0ZXN0cyBpbiB0aGlzIGZpbGUgdG8gdXNlIGlzX2RlZXBseSgpLgorIyAg
ICAgICAgU2VlIHRoZSB1bml0IHRlc3RzIGZvciBwYXJzZURpZmZIZWFkZXIoKSBhcyBhbiBleGFt
cGxlLgorCiBteSBAZGlmZkhhc2hSZWZLZXlzID0gKCAjIFRoZSAkZGlmZkhhc2hSZWYga2V5cyB0
byBjaGVjay4KICAgICAiY29waWVkRnJvbVBhdGgiLAogICAgICJpbmRleFBhdGgiLApkaWZmIC0t
Z2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL1ZDU1V0aWxzX3VuaXR0ZXN0L3Bh
cnNlRGlmZkhlYWRlci5wbCBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9WQ1NVdGls
c191bml0dGVzdC9wYXJzZURpZmZIZWFkZXIucGwKaW5kZXggNjFjYTczZC4uZDJiOGM5ZSAxMDA2
NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL1ZDU1V0aWxzX3VuaXR0ZXN0
L3BhcnNlRGlmZkhlYWRlci5wbAorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHBlcmwv
VkNTVXRpbHNfdW5pdHRlc3QvcGFyc2VEaWZmSGVhZGVyLnBsCkBAIC0zNiwxMyArMzYsNiBAQCB1
c2Ugd2FybmluZ3M7CiB1c2UgVGVzdDo6TW9yZTsKIHVzZSBWQ1NVdGlsczsKIAotbXkgQGRpZmZI
ZWFkZXJIYXNoUmVmS2V5cyA9ICggIyBUaGUgJGRpZmZIZWFkZXJIYXNoUmVmIGtleXMgdG8gY2hl
Y2suCi0gICAgImNvcGllZEZyb21QYXRoIiwKLSAgICAiaW5kZXhQYXRoIiwKLSAgICAic291cmNl
UmV2aXNpb24iLAotICAgICJzdm5Db252ZXJ0ZWRUZXh0IiwKLSk7Ci0KICMgVGhlIGFycmF5IG9m
IHRlc3QgY2FzZXMuCiBteSBAdGVzdENhc2VIYXNoUmVmcyA9ICgKIHsKQEAgLTU2LDcgKzQ5LDgg
QEAgSW5kZXg6IFdlYktpdFRvb2xzL1NjcmlwdHMvVkNTVXRpbHMucG0KIEBAIC0zMiw2ICszMiw3
IEBAIHVzZSBzdHJpY3Q7CiAgdXNlIHdhcm5pbmdzOwogRU5ECi0gICAgIyBIZWFkZXIga2V5cyB0
byBjaGVjaworICAgIGV4cGVjdGVkUmV0dXJuID0+IFsKK3sKICAgICBzdm5Db252ZXJ0ZWRUZXh0
ID0+IDw8J0VORCcsCiBJbmRleDogV2ViS2l0VG9vbHMvU2NyaXB0cy9WQ1NVdGlscy5wbQogPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQpAQCAtNjUsMTAgKzU5LDExIEBAIEluZGV4OiBXZWJLaXRUb29scy9TY3JpcHRzL1ZD
U1V0aWxzLnBtCiBFTkQKICAgICBjb3BpZWRGcm9tUGF0aCA9PiB1bmRlZiwKICAgICBpbmRleFBh
dGggPT4gIldlYktpdFRvb2xzL1NjcmlwdHMvVkNTVXRpbHMucG0iLAorICAgIHNjbUZvcm1hdCA9
PiAic3ZuIiwKICAgICBzb3VyY2VSZXZpc2lvbiA9PiAiNTMwMDQiLAotICAgICMgT3RoZXIgdmFs
dWVzIHRvIGNoZWNrCi0gICAgbGFzdFJlYWRMaW5lID0+ICJAQCAtMzIsNiArMzIsNyBAQCB1c2Ug
c3RyaWN0O1xuIiwKLSAgICBuZXh0TGluZSA9PiAiIHVzZSB3YXJuaW5ncztcbiIsCit9LAorIkBA
IC0zMiw2ICszMiw3IEBAIHVzZSBzdHJpY3Q7XG4iXSwKKyAgICBleHBlY3RlZE5leHRMaW5lID0+
ICIgdXNlIHdhcm5pbmdzO1xuIiwKIH0sCiB7CiAgICAgIyBOZXcgdGVzdApAQCAtODEsNyArNzYs
OCBAQCBJbmRleDogV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL1ZDU1V0aWxzX3VuaXR0
ZXN0L3BhcnNlRGlmZkhlYWRlci5wbAogQEAgLTAsMCArMSwyNjIgQEAKICsjIS91c3IvYmluL3Bl
cmwgLXcKIEVORAotICAgICMgSGVhZGVyIGtleXMgdG8gY2hlY2sKKyAgICBleHBlY3RlZFJldHVy
biA9PiBbCit7CiAgICAgc3ZuQ29udmVydGVkVGV4dCA9PiA8PCdFTkQnLAogSW5kZXg6IFdlYktp
dFRvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9WQ1NVdGlsc191bml0dGVzdC9wYXJzZURpZmZIZWFk
ZXIucGwKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KQEAgLTkwLDEwICs4NiwxMSBAQCBJbmRleDogV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRwZXJsL1ZDU1V0aWxzX3VuaXR0ZXN0L3BhcnNlRGlmZkhlYWRlci5wbAog
RU5ECiAgICAgY29waWVkRnJvbVBhdGggPT4gdW5kZWYsCiAgICAgaW5kZXhQYXRoID0+ICJXZWJL
aXRUb29scy9TY3JpcHRzL3dlYmtpdHBlcmwvVkNTVXRpbHNfdW5pdHRlc3QvcGFyc2VEaWZmSGVh
ZGVyLnBsIiwKKyAgICBzY21Gb3JtYXQgPT4gInN2biIsCiAgICAgc291cmNlUmV2aXNpb24gPT4g
dW5kZWYsCi0gICAgIyBPdGhlciB2YWx1ZXMgdG8gY2hlY2sKLSAgICBsYXN0UmVhZExpbmUgPT4g
IkBAIC0wLDAgKzEsMjYyIEBAXG4iLAotICAgIG5leHRMaW5lID0+ICIrIyEvdXNyL2Jpbi9wZXJs
IC13XG4iLAorfSwKKyJAQCAtMCwwICsxLDI2MiBAQFxuIl0sCisgICAgZXhwZWN0ZWROZXh0TGlu
ZSA9PiAiKyMhL3Vzci9iaW4vcGVybCAtd1xuIiwKIH0sCiB7CiAgICAgIyBOZXcgdGVzdApAQCAt
MTA2LDcgKzEwMyw4IEBAIEluZGV4OiBpbmRleF9wYXRoLnB5CiBAQCAtMCwwICsxLDcgQEAKICsj
IFB5dGhvbiBmaWxlLi4uCiBFTkQKLSAgICAjIEhlYWRlciBrZXlzIHRvIGNoZWNrCisgICAgZXhw
ZWN0ZWRSZXR1cm4gPT4gWworewogICAgIHN2bkNvbnZlcnRlZFRleHQgPT4gPDwnRU5EJywKIElu
ZGV4OiBpbmRleF9wYXRoLnB5CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC0xMTUsMTAgKzExMywxMSBAQCBJbmRl
eDogaW5kZXhfcGF0aC5weQogRU5ECiAgICAgY29waWVkRnJvbVBhdGggPT4gImNvcGllZF9mcm9t
X3BhdGgucHkiLAogICAgIGluZGV4UGF0aCA9PiAiaW5kZXhfcGF0aC5weSIsCisgICAgc2NtRm9y
bWF0ID0+ICJzdm4iLAogICAgIHNvdXJjZVJldmlzaW9uID0+IDUzMDQ4LAotICAgICMgT3RoZXIg
dmFsdWVzIHRvIGNoZWNrCi0gICAgbGFzdFJlYWRMaW5lID0+ICJAQCAtMCwwICsxLDcgQEBcbiIs
Ci0gICAgbmV4dExpbmUgPT4gIisjIFB5dGhvbiBmaWxlLi4uXG4iLAorfSwKKyJAQCAtMCwwICsx
LDcgQEBcbiJdLAorICAgIGV4cGVjdGVkTmV4dExpbmUgPT4gIisjIFB5dGhvbiBmaWxlLi4uXG4i
LAogfSwKIHsKICAgICAjIE5ldyB0ZXN0CkBAIC0xMzEsNyArMTMwLDggQEAgSW5kZXg6IGluZGV4
X3BhdGgucHlccgogQEAgLTAsMCArMSw3IEBAXHIKICsjIFB5dGhvbiBmaWxlLi4uXHIKIEVORAot
ICAgICMgSGVhZGVyIGtleXMgdG8gY2hlY2sKKyAgICBleHBlY3RlZFJldHVybiA9PiBbCit7CiAg
ICAgc3ZuQ29udmVydGVkVGV4dCA9PiA8PEVORCwgIyBObyBzaW5nbGUgcXVvdGVzIHRvIGFsbG93
IGludGVycG9sYXRpb24gb2YgIlxyIgogSW5kZXg6IGluZGV4X3BhdGgucHlccgogPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PVxyCkBAIC0xNDAsMTAgKzE0MCwxMSBAQCBJbmRleDogaW5kZXhfcGF0aC5weVxyCiBFTkQKICAg
ICBjb3BpZWRGcm9tUGF0aCA9PiAiY29waWVkX2Zyb21fcGF0aC5weSIsCiAgICAgaW5kZXhQYXRo
ID0+ICJpbmRleF9wYXRoLnB5IiwKKyAgICBzY21Gb3JtYXQgPT4gInN2biIsCiAgICAgc291cmNl
UmV2aXNpb24gPT4gNTMwNDgsCi0gICAgIyBPdGhlciB2YWx1ZXMgdG8gY2hlY2sKLSAgICBsYXN0
UmVhZExpbmUgPT4gIkBAIC0wLDAgKzEsNyBAQFxyXG4iLAotICAgIG5leHRMaW5lID0+ICIrIyBQ
eXRob24gZmlsZS4uLlxyXG4iLAorfSwKKyJAQCAtMCwwICsxLDcgQEBcclxuIl0sCisgICAgZXhw
ZWN0ZWROZXh0TGluZSA9PiAiKyMgUHl0aG9uIGZpbGUuLi5cclxuIiwKIH0sCiB7CiAgICAgIyBO
ZXcgdGVzdApAQCAtMTU2LDcgKzE1Nyw4IEBAIEluZGV4OiBpbmRleF9wYXRoLnB5CiBAQCAtMCww
ICsxLDcgQEAKICsjIFB5dGhvbiBmaWxlLi4uCiBFTkQKLSAgICAjIEhlYWRlciBrZXlzIHRvIGNo
ZWNrCisgICAgZXhwZWN0ZWRSZXR1cm4gPT4gWworewogICAgIHN2bkNvbnZlcnRlZFRleHQgPT4g
PDwnRU5EJywKIEluZGV4OiBpbmRleF9wYXRoLnB5CiA9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC0xNjUsMTEgKzE2
NywxNSBAQCBJbmRleDogaW5kZXhfcGF0aC5weQogRU5ECiAgICAgY29waWVkRnJvbVBhdGggPT4g
ImNvcGllZF9mcm9tX3BhdGgucHkiLAogICAgIGluZGV4UGF0aCA9PiAiaW5kZXhfcGF0aC5weSIs
CisgICAgc2NtRm9ybWF0ID0+ICJzdm4iLAogICAgIHNvdXJjZVJldmlzaW9uID0+IDUzMDQ4LAot
ICAgICMgT3RoZXIgdmFsdWVzIHRvIGNoZWNrCi0gICAgbGFzdFJlYWRMaW5lID0+ICJAQCAtMCww
ICsxLDcgQEBcbiIsCi0gICAgbmV4dExpbmUgPT4gIisjIFB5dGhvbiBmaWxlLi4uXG4iLAogfSwK
KyJAQCAtMCwwICsxLDcgQEBcbiJdLAorICAgIGV4cGVjdGVkTmV4dExpbmUgPT4gIisjIFB5dGhv
biBmaWxlLi4uXG4iLAorfSwKKyMjIyMKKyMgICAgR2l0IHRlc3QgY2FzZXMKKyMjCiB7CiAgICAg
IyBOZXcgdGVzdAogICAgIGRpZmZOYW1lID0+ICJHaXQ6IHNpbXBsZSIsCkBAIC0xODAsNyArMTg2
LDggQEAgaW5kZXggZjVkNWU3NC4uM2I2YWE5MiAxMDA2NDQKICsrKyBiL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlRmxleGlibGVCb3hEYXRhLmgKIEBAIC00Nyw3ICs0Nyw2IEBAIHB1Ymxp
YzoKIEVORAotICAgICMgSGVhZGVyIGtleXMgdG8gY2hlY2sKKyAgICBleHBlY3RlZFJldHVybiA9
PiBbCit7CiAgICAgc3ZuQ29udmVydGVkVGV4dCA9PiA8PCdFTkQnLAogSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlRmxleGlibGVCb3hEYXRhLmgKIGluZGV4IGY1ZDVlNzQuLjNi
NmFhOTIgMTAwNjQ0CkBAIC0xODksMTAgKzE5NiwxMSBAQCBpbmRleCBmNWQ1ZTc0Li4zYjZhYTky
IDEwMDY0NAogRU5ECiAgICAgY29waWVkRnJvbVBhdGggPT4gdW5kZWYsCiAgICAgaW5kZXhQYXRo
ID0+ICJXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0YS5oIiwKKyAg
ICBzY21Gb3JtYXQgPT4gImdpdCIsCiAgICAgc291cmNlUmV2aXNpb24gPT4gdW5kZWYsCi0gICAg
IyBPdGhlciB2YWx1ZXMgdG8gY2hlY2sKLSAgICBsYXN0UmVhZExpbmUgPT4gIkBAIC00Nyw3ICs0
Nyw2IEBAIHB1YmxpYzpcbiIsCi0gICAgbmV4dExpbmUgPT4gdW5kZWYsCit9LAorIkBAIC00Nyw3
ICs0Nyw2IEBAIHB1YmxpYzpcbiJdLAorICAgIGV4cGVjdGVkTmV4dExpbmUgPT4gdW5kZWYsCiB9
LAogewogICAgICMgTmV3IHRlc3QKQEAgLTIwNiw3ICsyMTQsOCBAQCBpbmRleCAwMDAwMDAwLi4z
YzlmMTE0CiBAQCAtMCwwICsxLDM0IEBACiArPGh0bWw+CiBFTkQKLSAgICAjIEhlYWRlciBrZXlz
IHRvIGNoZWNrCisgICAgZXhwZWN0ZWRSZXR1cm4gPT4gWworewogICAgIHN2bkNvbnZlcnRlZFRl
eHQgPT4gPDwnRU5EJywKIEluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2xp
c3RlbmVyL3hzcy1pbmFjdGl2ZS1jbG9zdXJlLmh0bWwKIG5ldyBmaWxlIG1vZGUgMTAwNjQ0CkBA
IC0yMTYsMTEgKzIyNSwxNSBAQCBpbmRleCAwMDAwMDAwLi4zYzlmMTE0CiBFTkQKICAgICBjb3Bp
ZWRGcm9tUGF0aCA9PiB1bmRlZiwKICAgICBpbmRleFBhdGggPT4gIkxheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvbGlzdGVuZXIveHNzLWluYWN0aXZlLWNsb3N1cmUuaHRtbCIsCisgICAg
c2NtRm9ybWF0ID0+ICJnaXQiLAogICAgIHNvdXJjZVJldmlzaW9uID0+IHVuZGVmLAotICAgICMg
T3RoZXIgdmFsdWVzIHRvIGNoZWNrCi0gICAgbGFzdFJlYWRMaW5lID0+ICJAQCAtMCwwICsxLDM0
IEBAXG4iLAotICAgIG5leHRMaW5lID0+ICIrPGh0bWw+XG4iLAogfSwKKyJAQCAtMCwwICsxLDM0
IEBAXG4iXSwKKyAgICBleHBlY3RlZE5leHRMaW5lID0+ICIrPGh0bWw+XG4iLAorfSwKKyMjIyMK
KyMgICAgQmluYXJ5IHRlc3QgY2FzZXMKKyMjCiB7CiAgICAgIyBOZXcgdGVzdAogICAgIGRpZmZO
YW1lID0+ICJTVk46IGJpbmFyeSBmaWxlIiwKQEAgLTIzOCw3ICsyNTEsOCBAQCBOYW1lOiBzdm46
bWltZS10eXBlCiAKIFExZFRCeDBBQUFCNDJpdGc0R2xnWUpqR3dNRER5T0RNeE1EdzM0R0JnUUVB
SlBRREpBPT0KIEVORAotICAgICMgSGVhZGVyIGtleXMgdG8gY2hlY2sKKyAgICBleHBlY3RlZFJl
dHVybiA9PiBbCit7CiAgICAgc3ZuQ29udmVydGVkVGV4dCA9PiA8PCdFTkQnLAogSW5kZXg6IHRl
c3RfZmlsZS5zd2YKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTI0NiwxMCArMjYwLDExIEBAIENhbm5vdCBkaXNw
bGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgogRU5ECiAgICAgY29waWVkRnJvbVBh
dGggPT4gdW5kZWYsCiAgICAgaW5kZXhQYXRoID0+ICJ0ZXN0X2ZpbGUuc3dmIiwKKyAgICBzY21G
b3JtYXQgPT4gInN2biIsCiAgICAgc291cmNlUmV2aXNpb24gPT4gdW5kZWYsCi0gICAgIyBPdGhl
ciB2YWx1ZXMgdG8gY2hlY2sKLSAgICBsYXN0UmVhZExpbmUgPT4gInN2bjptaW1lLXR5cGUgPSBh
cHBsaWNhdGlvbi9vY3RldC1zdHJlYW1cbiIsCi0gICAgbmV4dExpbmUgPT4gIlxuIiwKK30sCisi
c3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbVxuIl0sCisgICAgZXhwZWN0
ZWROZXh0TGluZSA9PiAiXG4iLAogfSwKIHsKICAgICAjIE5ldyB0ZXN0CkBAIC0yNTksMjMgKzI3
NCwxNSBAQCBkaWZmIC0tZ2l0IGEvZm9vLmdpZiBiL2Zvby5naWYKIG5ldyBmaWxlIG1vZGUgMTAw
NjQ0CiBpbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NGE5
NTMyZTc3OTRmY2Q3OTFmNmYxMjE1NzQwNmQ5MDYwMTUxNjkwCiBHSVQgYmluYXJ5IHBhdGNoCi1s
aXRlcmFsIDUxMgotemNtWj93YmhFSGJSQXh8TVV8P2lXe0t4Y34/S29mRDtja1k7SCsmNUhuSGwh
IUdRTUQ3aCtzVXtfKWU5Zl5WM2M/Ci16aEpQIyNIZFpDIzRLfTdGNjhAITFqZldRZzJkYUNtLWdz
IzN8SlJFRFQ+YytwRzRMPF8yO3cjI1dNTyN5c1BQYXAKLXpMcXBBZjFPRTkzOHhBc1NwNCE1Zi1v
Pjw/VktlKCMwakVjd2ZIR0Y0JU0xXmtSczE0b1ZCcDJaRUx7RTFOPC16SgotenNmTG1PdEt0YTsy
XzsyYyNeUzEtOGNmPG5iIVFuR2w+YyFYZTZSWHZyRXRBV0J2U0RUZ1RPMWozdkEzMVB1dyFBCi16
cyg4N3Epal9tVkRUcUJvLVArMDMtUDVtSENFbkoreH1ZZEN1UzcjYkNDeWVQVWUoeW5LK3w0Yi0z
cUspVD9aJikKLXpZRytgdGw0aD9HWnZfJHQ4Mn1YNCpEVEV8JDt7REVpUHlGQClVLTErRmFYKytU
OUh7JiVjYWdgVzF8elZQQGAlYgotenFpU2twNntCVHBXVGtDciE9PEM2UT0/I35SOF5KZnJsaUFG
NlFeZ1Y5SXVwOFJxQ1hxcWhxQ2Bxc3loazwtbmxCCi16MDBme1FadmZLJnxObSNvWjBUUWxgWXIk
QklhNkFAMTZPMjZ1ZDdIPFFNPXhsYHRvTEtuei0zaEA5YzlxJndtfFgKLXp7ODlJfFdQeUQhKk0/
Z3Y/cWA7TD0yWUZlWHJKUU50aTQ/fXMhekZvPTVDemVCeEM2OXhBPHpyalA8d1VjQ1JoNAotcHRV
bC1aRzwlYX4jTHdrSVd2JnEhS1NDSDd0UThjSkRpdyt8R1Y/TU4pUmpZNTBSVGIteHZUJkgKK2xp
dGVyYWwgNworT2NtWWV4JnJlRGE7c084KkY5TClCCiAKIGxpdGVyYWwgMAogSGNtVj9kMDAwMDEK
IAogRU5ECi0gICAgIyBIZWFkZXIga2V5cyB0byBjaGVjaworICAgIGV4cGVjdGVkUmV0dXJuID0+
IFsKK3sKICAgICBzdm5Db252ZXJ0ZWRUZXh0ID0+IDw8J0VORCcsCiBJbmRleDogZm9vLmdpZgog
bmV3IGZpbGUgbW9kZSAxMDA2NDQKQEAgLTI4NCwxMCArMjkxLDExIEBAIEdJVCBiaW5hcnkgcGF0
Y2gKIEVORAogICAgIGNvcGllZEZyb21QYXRoID0+IHVuZGVmLAogICAgIGluZGV4UGF0aCA9PiAi
Zm9vLmdpZiIsCisgICAgc2NtRm9ybWF0ID0+ICJnaXQiLAogICAgIHNvdXJjZVJldmlzaW9uID0+
IHVuZGVmLAotICAgICMgT3RoZXIgdmFsdWVzIHRvIGNoZWNrCi0gICAgbGFzdFJlYWRMaW5lID0+
ICJsaXRlcmFsIDUxMlxuIiwKLSAgICBuZXh0TGluZSA9PiAiemNtWj93YmhFSGJSQXh8TVV8P2lX
e0t4Y34/S29mRDtja1k7SCsmNUhuSGwhIUdRTUQ3aCtzVXtfKWU5Zl5WM2M/XG4iLAorfSwKKyJs
aXRlcmFsIDdcbiJdLAorICAgIGV4cGVjdGVkTmV4dExpbmUgPT4gIk9jbVlleCZyZURhO3NPOCpG
OUwpQlxuIiwKIH0sCiB7CiAgICAgIyBOZXcgdGVzdApAQCAtMzA0LDcgKzMxMiw4IEBAIGxpdGVy
YWwgNwogT2NtWWV4JnJlRCQ7c084KkY5TClCCiAKIEVORAotICAgICMgSGVhZGVyIGtleXMgdG8g
Y2hlY2sKKyAgICBleHBlY3RlZFJldHVybiA9PiBbCit7CiAgICAgc3ZuQ29udmVydGVkVGV4dCA9
PiA8PCdFTkQnLAogSW5kZXg6IGZvby5naWYKIGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApAQCAt
MzEzLDc1ICszMjIsMjkgQEAgR0lUIGJpbmFyeSBwYXRjaAogRU5ECiAgICAgY29waWVkRnJvbVBh
dGggPT4gdW5kZWYsCiAgICAgaW5kZXhQYXRoID0+ICJmb28uZ2lmIiwKKyAgICBzY21Gb3JtYXQg
PT4gImdpdCIsCiAgICAgc291cmNlUmV2aXNpb24gPT4gdW5kZWYsCi0gICAgIyBPdGhlciB2YWx1
ZXMgdG8gY2hlY2sKLSAgICBsYXN0UmVhZExpbmUgPT4gImxpdGVyYWwgMFxuIiwKLSAgICBuZXh0
TGluZSA9PiAiSGNtVj9kMDAwMDFcbiIsCit9LAorImxpdGVyYWwgMFxuIl0sCisgICAgZXhwZWN0
ZWROZXh0TGluZSA9PiAiSGNtVj9kMDAwMDFcbiIsCiB9LAogKTsKIAotIyBSZXR1cm4gdGhlIGFy
Z3VtZW50cyBmb3IgZWFjaCBhc3NlcnRpb24gcGVyIHRlc3QgY2FzZS4KLSMKLSMgSW4gcGFydGlj
dWxhciwgdGhlIG51bWJlciBvZiBhc3NlcnRpb25zIHBlciB0ZXN0IGNhc2UgaXMgdGhlIGxlbmd0
aAotIyBvZiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoaXMgc3Vicm91dGluZSBvbiBhIHNhbXBsZSBp
bnB1dC4KLSMKLSMgUmV0dXJucyBAYXNzZXJ0aW9uQXJnc0FycmF5UmVmczoKLSMgICAkYXNzZXJ0
aW9uQXJnc0FycmF5UmVmOiBBIHJlZmVyZW5jZSB0byBhbiBhcnJheSBvZiBwYXJhbWV0ZXJzIHRv
IHBhc3MKLSMgICAgICAgICAgICAgICAgICAgICAgICAgICB0byBlYWNoIGNhbGwgdG8gaXMoKS4g
VGhlIHBhcmFtZXRlcnMgYXJlLS0KLSMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnb3Q6
IFRoZSB2YWx1ZSBvYnRhaW5lZAotIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV4cGVj
dGVkOiBUaGUgZXhwZWN0ZWQgdmFsdWUKLSMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0
ZXN0TmFtZTogVGhlIG5hbWUgb2YgdGhlIHRlc3QKLXN1YiB0ZXN0UGFyc2VEaWZmSGVhZGVyQXNz
ZXJ0aW9uQXJncygkKQotewotICAgIG15ICgkdGVzdENhc2VIYXNoUmVmKSA9IEBfOworbXkgJHRl
c3RDYXNlc0NvdW50ID0gQHRlc3RDYXNlSGFzaFJlZnM7CitwbGFuKHRlc3RzID0+IDIgKiAkdGVz
dENhc2VzQ291bnQpOyAjIFRvdGFsIG51bWJlciBvZiBhc3NlcnRpb25zLgogCi0gICAgbXkgJGZp
bGVIYW5kbGU7Ci0gICAgb3BlbigkZmlsZUhhbmRsZSwgIjwiLCBcJHRlc3RDYXNlSGFzaFJlZi0+
e2lucHV0VGV4dH0pOworZm9yZWFjaCBteSAkdGVzdENhc2UgKEB0ZXN0Q2FzZUhhc2hSZWZzKSB7
CisgICAgbXkgJHRlc3ROYW1lU3RhcnQgPSAicGFyc2VEaWZmSGVhZGVyKCk6ICR0ZXN0Q2FzZS0+
e2RpZmZOYW1lfTogY29tcGFyaW5nIjsKIAorICAgIG15ICRmaWxlSGFuZGxlOworICAgIG9wZW4o
JGZpbGVIYW5kbGUsICI8IiwgXCR0ZXN0Q2FzZS0+e2lucHV0VGV4dH0pOwogICAgIG15ICRsaW5l
ID0gPCRmaWxlSGFuZGxlPjsKIAotICAgIG15ICgkaGVhZGVySGFzaFJlZiwgJGxhc3RSZWFkTGlu
ZSkgPSBWQ1NVdGlsczo6cGFyc2VEaWZmSGVhZGVyKCRmaWxlSGFuZGxlLCAkbGluZSk7Ci0KLSAg
ICBteSAkdGVzdE5hbWVTdGFydCA9ICJwYXJzZURpZmZIZWFkZXIoKTogWyR0ZXN0Q2FzZUhhc2hS
ZWYtPntkaWZmTmFtZX1dICI7Ci0KLSAgICBteSBAYXNzZXJ0aW9uQXJnc0FycmF5UmVmczsgIyBS
ZXR1cm4gdmFsdWUKLSAgICBteSAkYXNzZXJ0aW9uQXJnc1JlZjsKLQotICAgIGZvcmVhY2ggbXkg
JGRpZmZIZWFkZXJIYXNoUmVmS2V5IChAZGlmZkhlYWRlckhhc2hSZWZLZXlzKSB7Ci0gICAgICAg
IG15ICR0ZXN0TmFtZSA9ICIke3Rlc3ROYW1lU3RhcnR9a2V5PVwiJGRpZmZIZWFkZXJIYXNoUmVm
S2V5XCIiOwotICAgICAgICAkYXNzZXJ0aW9uQXJnc1JlZiA9IFskaGVhZGVySGFzaFJlZi0+eyRk
aWZmSGVhZGVySGFzaFJlZktleX0sICR0ZXN0Q2FzZUhhc2hSZWYtPnskZGlmZkhlYWRlckhhc2hS
ZWZLZXl9LCAkdGVzdE5hbWVdOwotICAgICAgICBwdXNoKEBhc3NlcnRpb25BcmdzQXJyYXlSZWZz
LCAkYXNzZXJ0aW9uQXJnc1JlZik7Ci0gICAgfQotCi0gICAgJGFzc2VydGlvbkFyZ3NSZWYgPSBb
JGxhc3RSZWFkTGluZSwgJHRlc3RDYXNlSGFzaFJlZi0+e2xhc3RSZWFkTGluZX0sICIke3Rlc3RO
YW1lU3RhcnR9bGFzdFJlYWRMaW5lIl07Ci0gICAgcHVzaChAYXNzZXJ0aW9uQXJnc0FycmF5UmVm
cywgJGFzc2VydGlvbkFyZ3NSZWYpOwotCi0gICAgbXkgJG5leHRMaW5lID0gPCRmaWxlSGFuZGxl
PjsKLSAgICAkYXNzZXJ0aW9uQXJnc1JlZiA9IFskbmV4dExpbmUsICR0ZXN0Q2FzZUhhc2hSZWYt
PntuZXh0TGluZX0sICIke3Rlc3ROYW1lU3RhcnR9bmV4dExpbmUiXTsKLSAgICBwdXNoKEBhc3Nl
cnRpb25BcmdzQXJyYXlSZWZzLCAkYXNzZXJ0aW9uQXJnc1JlZik7Ci0KLSAgICByZXR1cm4gQGFz
c2VydGlvbkFyZ3NBcnJheVJlZnM7Ci19Ci0KLSMgVGVzdCBwYXJzZURpZmZIZWFkZXIoKSBmb3Ig
dGhlIGdpdmVuIHRlc3QgY2FzZS4KLXN1YiB0ZXN0UGFyc2VEaWZmSGVhZGVyKCQpCi17Ci0gICAg
bXkgKCR0ZXN0Q2FzZUhhc2hSZWYpID0gQF87Ci0KLSAgICBteSBAYXNzZXJ0aW9uQXJnc0FycmF5
UmVmcyA9IHRlc3RQYXJzZURpZmZIZWFkZXJBc3NlcnRpb25BcmdzKCR0ZXN0Q2FzZUhhc2hSZWYp
OwotCi0gICAgZm9yZWFjaCBteSAkYXJyYXlSZWYgKEBhc3NlcnRpb25BcmdzQXJyYXlSZWZzKSB7
Ci0gICAgICAgICMgVGhlIHBhcmFtZXRlcnMgYXJlIC0tIGlzKCRnb3QsICRleHBlY3RlZCwgJHRl
c3ROYW1lKS4KLSAgICAgICAgaXMoJGFycmF5UmVmLT5bMF0sICRhcnJheVJlZi0+WzFdLCAkYXJy
YXlSZWYtPlsyXSk7Ci0gICAgfQotfQotCi0jIENvdW50IHRoZSBudW1iZXIgb2YgYXNzZXJ0aW9u
cyBwZXIgdGVzdCBjYXNlIHRvIGNhbGN1bGF0ZSB0aGUgdG90YWwgbnVtYmVyCi0jIG9mIFRlc3Q6
Ok1vcmUgdGVzdHMuIFdlIGNvdWxkIGhhdmUgdXNlZCBhbnkgdGVzdCBjYXNlIGZvciB0aGUgY291
bnQuCi1teSAkYXNzZXJ0aW9uQ291bnQgPSB0ZXN0UGFyc2VEaWZmSGVhZGVyQXNzZXJ0aW9uQXJn
cygkdGVzdENhc2VIYXNoUmVmc1swXSk7CisgICAgbXkgQGdvdCA9IFZDU1V0aWxzOjpwYXJzZURp
ZmZIZWFkZXIoJGZpbGVIYW5kbGUsICRsaW5lKTsKKyAgICBteSAkZXhwZWN0ZWRSZXR1cm4gPSAk
dGVzdENhc2UtPntleHBlY3RlZFJldHVybn07CiAKLXBsYW4odGVzdHMgPT4gQHRlc3RDYXNlSGFz
aFJlZnMgKiAkYXNzZXJ0aW9uQ291bnQpOyAjIFRvdGFsIG51bWJlciBvZiB0ZXN0cworICAgIGlz
X2RlZXBseShcQGdvdCwgJGV4cGVjdGVkUmV0dXJuLCAiJHRlc3ROYW1lU3RhcnQgcmV0dXJuIHZh
bHVlLiIpOwogCi1mb3JlYWNoIG15ICR0ZXN0Q2FzZUhhc2hSZWYgKEB0ZXN0Q2FzZUhhc2hSZWZz
KSB7Ci0gICAgdGVzdFBhcnNlRGlmZkhlYWRlcigkdGVzdENhc2VIYXNoUmVmKTsKKyAgICBteSAk
Z290TmV4dExpbmUgPSA8JGZpbGVIYW5kbGU+OworICAgIGlzKCRnb3ROZXh0TGluZSwgJHRlc3RD
YXNlLT57ZXhwZWN0ZWROZXh0TGluZX0sICAiJHRlc3ROYW1lU3RhcnQgbmV4dCByZWFkIGxpbmUu
Iik7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>