<?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>107903</bug_id>
          
          <creation_ts>2013-01-24 20:29:22 -0800</creation_ts>
          <short_desc>Refactor ChangeLog and PrepareChangeLog to use FileSystem objects</short_desc>
          <delta_ts>2013-01-28 15:55:29 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>0</everconfirmed>
          <reporter name="Timothy Loh">timloh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>816124</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Loh">timloh</who>
    <bug_when>2013-01-24 20:29:22 -0800</bug_when>
    <thetext>Refactor ChangeLog and PrepareChangeLog to use FileSystem objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816127</commentid>
    <comment_count>1</comment_count>
      <attachid>184644</attachid>
    <who name="Timothy Loh">timloh</who>
    <bug_when>2013-01-24 20:31:23 -0800</bug_when>
    <thetext>Created attachment 184644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816143</commentid>
    <comment_count>2</comment_count>
      <attachid>184644</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-24 20:48:59 -0800</bug_when>
    <thetext>Comment on attachment 184644
Patch

Looks fantastic!  Note, the EWS does nto run test-webkitpy, so I&apos;m assuming you did. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816180</commentid>
    <comment_count>3</comment_count>
      <attachid>184644</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-24 21:28:21 -0800</bug_when>
    <thetext>Comment on attachment 184644
Patch

Rejecting attachment 184644 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=gce-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 184644, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
Can&apos;t create file /tmp/pp7Hl2iF : No space left on device
patch: **** Can&apos;t create file /tmp/pp6JRyxF : No space left on device
patch: **** Can&apos;t create file /tmp/pp9Yj0hG : No space left on device
patch: **** Can&apos;t create file /tmp/pppcWMuG : No space left on device
patch: **** Can&apos;t create file /tmp/ppHc7Y8F : No space left on device

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, &apos;Eric Seidel&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Full output: http://queues.webkit.org/results/16114156</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818210</commentid>
    <comment_count>4</comment_count>
      <attachid>184644</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-28 15:55:26 -0800</bug_when>
    <thetext>Comment on attachment 184644
Patch

Clearing flags on attachment: 184644

Committed r141022: &lt;http://trac.webkit.org/changeset/141022&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818211</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-28 15:55:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184644</attachid>
            <date>2013-01-24 20:31:23 -0800</date>
            <delta_ts>2013-01-28 15:55:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107903-20130125152814.patch</filename>
            <type>text/plain</type>
            <size>30297</size>
            <attacher name="Timothy Loh">timloh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNzY3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWQwYWRjOGY2MWQwNTk5M2Q5ZjA4NWVkZTdlNjdiNmNi
YzRmYTI5NC4uOWZjZGZhZTU3NmEwYjFjZjA5YjYxODAzMzA2NDEwOTRjMGYxZjI2OSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQy
IEBACisyMDEzLTAxLTI0ICBUaW1vdGh5IExvaCAgPHRpbWxvaEBjaHJvbWl1bS5jb20+CisKKyAg
ICAgICAgUmVmYWN0b3IgQ2hhbmdlTG9nIGFuZCBQcmVwYXJlQ2hhbmdlTG9nIHRvIHVzZSBGaWxl
U3lzdGVtIG9iamVjdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwNzkwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRvIG1ha2UgQ2hhbmdlTG9nIGFuZCBQcmVwYXJlQ2hhbmdlTG9nIGVhc2llciB0byB0
ZXN0LCB3ZSBjYW4gdXNlCisgICAgICAgIEZpbGVTeXN0ZW0gb2JqZWN0cyBpbnN0ZWFkIG9mIGp1
c3QgcGFzc2luZyBhcm91bmQgcGF0aHMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2Nv
bW1vbi9jaGVja291dC9jaGFuZ2Vsb2cucHk6CisgICAgICAgIChDaGFuZ2VMb2cuX19pbml0X18p
OgorICAgICAgICAoQ2hhbmdlTG9nLnBhcnNlX2xhdGVzdF9lbnRyeV9mcm9tX2ZpbGUpOgorICAg
ICAgICAoQ2hhbmdlTG9nLnBhcnNlX2VudHJpZXNfZnJvbV9maWxlKToKKyAgICAgICAgKENoYW5n
ZUxvZy5sYXRlc3RfZW50cnkpOgorICAgICAgICAoQ2hhbmdlTG9nLnVwZGF0ZV93aXRoX3VucmV2
aWV3ZWRfbWVzc2FnZSk6CisgICAgICAgIChDaGFuZ2VMb2cuc2V0X3Jldmlld2VyKToKKyAgICAg
ICAgKENoYW5nZUxvZy5zZXRfc2hvcnRfZGVzY3JpcHRpb25fYW5kX2J1Z191cmwpOgorICAgICAg
ICAoQ2hhbmdlTG9nLmRlbGV0ZV9lbnRyaWVzKToKKyAgICAgICAgKENoYW5nZUxvZy5wcmVwZW5k
X3RleHQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoYW5n
ZWxvZ191bml0dGVzdC5weToKKyAgICAgICAgKENoYW5nZUxvZ1Rlc3QpOgorICAgICAgICAodGVz
dF9wYXJzZV9sb2dfZW50cmllc19mcm9tX2NoYW5nZWxvZyk6CisgICAgICAgICh0ZXN0X2xhdGVz
dF9lbnRyeV9wYXJzZV9zaW5nbGVfZW50cnkpOgorICAgICAgICAodGVzdF9zZXRfcmV2aWV3ZXIp
OgorICAgICAgICAodGVzdF9zZXRfc2hvcnRfZGVzY3JpcHRpb25fYW5kX2J1Z191cmwpOgorICAg
ICAgICAodGVzdF9kZWxldGVfZW50cmllcyk6CisgICAgICAgICh0ZXN0X3ByZXBlbmRfdGV4dCk6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2ZpbGVzeXN0ZW1fbW9j
ay5weToKKyAgICAgICAgKFJlYWRhYmxlVGV4dEZpbGVPYmplY3QuX19pbml0X18pOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9wcmVwYXJlY2hhbmdlbG9nLnB5OgorICAg
ICAgICAoUHJlcGFyZUNoYW5nZUxvZy5fZW5zdXJlX2J1Z191cmwpOgorICAgICAgICAoUHJlcGFy
ZUNoYW5nZUxvZy5fcmVzb2x2ZV9leGlzdGluZ19lbnRyeSk6CisgICAgICAgIChQcmVwYXJlQ2hh
bmdlTG9nLnJ1bik6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBh
cmVjaGFuZ2Vsb2dfdW5pdHRlc3QucHk6CisgICAgICAgICh0ZXN0X2Vuc3VyZV9idWdfdXJsKToK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvcHJlcGFyZWNoYW5nZWxvZ2Zv
cnJldmVydF91bml0dGVzdC5weToKKyAgICAgICAgKF9hc3NlcnRfbWVzc2FnZV9mb3JfcmV2ZXJ0
X291dHB1dCk6CisKIDIwMTMtMDEtMjQgIEpvc2h1YSBCZWxsICA8anNiZWxsQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBBZGQgd2F0Y2hsaXN0IGZvciBJbmRleGVkREIgZGV2ZWxvcG1lbnQsIGFu
ZCBhZGQgbXlzZWxmIGFuZCBvdGhlcnMuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9jaGVja291dC9jaGFuZ2Vsb2cucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jaGVja291dC9jaGFuZ2Vsb2cucHkKaW5kZXggNzQ4MTgyZjQyZTMxZGVkOWMxYTQ5
ZGQ3NzI1NmU2MTZiMWM1NGYwYS4uODBiMjMzNTk5MmM3NGJmODA5M2NiMjk4MjExYTFmNTM1MzE1
MWUxNSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQv
Y2hhbmdlbG9nLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0
L2NoYW5nZWxvZy5weQpAQCAtMjgsMTQgKzI4LDE0IEBACiAjCiAjIFdlYktpdCdzIFB5dGhvbiBt
b2R1bGUgZm9yIHBhcnNpbmcgYW5kIG1vZGlmeWluZyBDaGFuZ2VMb2cgZmlsZXMKIAotaW1wb3J0
IGNvZGVjcwotaW1wb3J0IGZpbGVpbnB1dCAjIGlucGxhY2UgZmlsZSBlZGl0aW5nIGZvciBzZXRf
cmV2aWV3ZXJfaW5fY2hhbmdlbG9nCiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IHJlCitmcm9tIFN0
cmluZ0lPIGltcG9ydCBTdHJpbmdJTwogaW1wb3J0IHRleHR3cmFwCiAKIGZyb20gd2Via2l0cHku
Y29tbW9uLmNvbmZpZy5jb21taXR0ZXJzIGltcG9ydCBDb21taXR0ZXJMaXN0CiBmcm9tIHdlYmtp
dHB5LmNvbW1vbi5jb25maWcuY29tbWl0dGVycyBpbXBvcnQgQWNjb3VudAorZnJvbSB3ZWJraXRw
eS5jb21tb24uc3lzdGVtLmZpbGVzeXN0ZW0gaW1wb3J0IEZpbGVTeXN0ZW0KIGltcG9ydCB3ZWJr
aXRweS5jb21tb24uY29uZmlnLnVybHMgYXMgY29uZmlnX3VybHMKIAogX2xvZyA9IGxvZ2dpbmcu
Z2V0TG9nZ2VyKF9fbmFtZV9fKQpAQCAtMjgyLDMzICsyODIsMTggQEAgY2xhc3MgQ2hhbmdlTG9n
RW50cnkob2JqZWN0KToKICMgRklYTUU6IFZhcmlvdXMgbWV0aG9kcyBvbiBDaGFuZ2VMb2cgc2hv
dWxkIG1vdmUgaW50byBDaGFuZ2VMb2dFbnRyeSBpbnN0ZWFkLgogY2xhc3MgQ2hhbmdlTG9nKG9i
amVjdCk6CiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgcGF0aCk6CisgICAgZGVmIF9faW5pdF9f
KHNlbGYsIHBhdGgsIGZpbGVzeXN0ZW09Tm9uZSk6CiAgICAgICAgIHNlbGYucGF0aCA9IHBhdGgK
KyAgICAgICAgc2VsZi5fZmlsZXN5c3RlbSA9IGZpbGVzeXN0ZW0gb3IgRmlsZVN5c3RlbSgpCiAK
ICAgICBfY2hhbmdlbG9nX2luZGVudCA9ICIgIiAqIDgKIAogICAgIEBjbGFzc21ldGhvZAogICAg
IGRlZiBwYXJzZV9sYXRlc3RfZW50cnlfZnJvbV9maWxlKGNscywgY2hhbmdlbG9nX2ZpbGUpOgot
ICAgICAgICAiIiJjaGFuZ2Vsb2dfZmlsZSBtdXN0IGJlIGEgZmlsZS1saWtlIG9iamVjdCB3aGlj
aCByZXR1cm5zCi0gICAgICAgIHVuaWNvZGUgc3RyaW5ncy4gIFVzZSBjb2RlY3Mub3BlbiBvciBT
dHJpbmdJTyh1bmljb2RlKCkpCi0gICAgICAgIHRvIHBhc3MgZmlsZSBvYmplY3RzIHRvIHRoaXMg
Y2xhc3MuIiIiCi0gICAgICAgIGRhdGVfbGluZV9yZWdleHAgPSByZS5jb21waWxlKENoYW5nZUxv
Z0VudHJ5LmRhdGVfbGluZV9yZWdleHApCi0gICAgICAgIHJvbGxlZF9vdmVyX3JlZ2V4cCA9IHJl
LmNvbXBpbGUoQ2hhbmdlTG9nRW50cnkucm9sbGVkX292ZXJfcmVnZXhwKQotICAgICAgICBlbnRy
eV9saW5lcyA9IFtdCi0gICAgICAgICMgVGhlIGZpcnN0IGxpbmUgc2hvdWxkIGJlIGEgZGF0ZSBs
aW5lLgotICAgICAgICBmaXJzdF9saW5lID0gY2hhbmdlbG9nX2ZpbGUucmVhZGxpbmUoKQotICAg
ICAgICBhc3NlcnQoaXNpbnN0YW5jZShmaXJzdF9saW5lLCB1bmljb2RlKSkKLSAgICAgICAgaWYg
bm90IGRhdGVfbGluZV9yZWdleHAubWF0Y2goZmlyc3RfbGluZSk6CisgICAgICAgIHRyeToKKyAg
ICAgICAgICAgIHJldHVybiBuZXh0KGNscy5wYXJzZV9lbnRyaWVzX2Zyb21fZmlsZShjaGFuZ2Vs
b2dfZmlsZSkpCisgICAgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uLCBlOgogICAgICAgICAgICAg
cmV0dXJuIE5vbmUKLSAgICAgICAgZW50cnlfbGluZXMuYXBwZW5kKGZpcnN0X2xpbmUpCi0KLSAg
ICAgICAgZm9yIGxpbmUgaW4gY2hhbmdlbG9nX2ZpbGU6Ci0gICAgICAgICAgICAjIElmIHdlJ3Zl
IGhpdCB0aGUgbmV4dCBlbnRyeSwgcmV0dXJuLgotICAgICAgICAgICAgaWYgZGF0ZV9saW5lX3Jl
Z2V4cC5tYXRjaChsaW5lKSBvciByb2xsZWRfb3Zlcl9yZWdleHAubWF0Y2gobGluZSk6Ci0gICAg
ICAgICAgICAgICAgIyBSZW1vdmUgdGhlIGV4dHJhIG5ld2xpbmUgYXQgdGhlIGVuZAotICAgICAg
ICAgICAgICAgIHJldHVybiBDaGFuZ2VMb2dFbnRyeSgnJy5qb2luKGVudHJ5X2xpbmVzWzotMV0p
KQotICAgICAgICAgICAgZW50cnlfbGluZXMuYXBwZW5kKGxpbmUpCi0gICAgICAgIHJldHVybiBO
b25lICMgV2UgbmV2ZXIgZm91bmQgYSBkYXRlIGxpbmUhCiAKICAgICBzdm5fYmxhbWVfcmVnZXhw
ID0gcmUuY29tcGlsZShyJ14oXHMqKD9QPHJldmlzaW9uPlxkKykgW14gXSspXHMqKD9QPGxpbmU+
Lio/XG4pJykKIApAQCAtMzIyLDggKzMwNyw4IEBAIGNsYXNzIENoYW5nZUxvZyhvYmplY3QpOgog
ICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBwYXJzZV9lbnRyaWVzX2Zyb21fZmlsZShjbHMsIGNo
YW5nZWxvZ19maWxlKToKICAgICAgICAgIiIiY2hhbmdlbG9nX2ZpbGUgbXVzdCBiZSBhIGZpbGUt
bGlrZSBvYmplY3Qgd2hpY2ggcmV0dXJucwotICAgICAgICB1bmljb2RlIHN0cmluZ3MuICBVc2Ug
Y29kZWNzLm9wZW4gb3IgU3RyaW5nSU8odW5pY29kZSgpKQotICAgICAgICB0byBwYXNzIGZpbGUg
b2JqZWN0cyB0byB0aGlzIGNsYXNzLiIiIgorICAgICAgICB1bmljb2RlIHN0cmluZ3MsIGUuZy4g
ZnJvbSBTdHJpbmdJTyh1bmljb2RlKCkpIG9yCisgICAgICAgIGZzLm9wZW5fdGV4dF9maWxlX2Zv
cl9yZWFkaW5nKCkiIiIKICAgICAgICAgZGF0ZV9saW5lX3JlZ2V4cCA9IHJlLmNvbXBpbGUoQ2hh
bmdlTG9nRW50cnkuZGF0ZV9saW5lX3JlZ2V4cCkKICAgICAgICAgcm9sbGVkX292ZXJfcmVnZXhw
ID0gcmUuY29tcGlsZShDaGFuZ2VMb2dFbnRyeS5yb2xsZWRfb3Zlcl9yZWdleHApCiAKQEAgLTM1
OCw3ICszNDMsNyBAQCBjbGFzcyBDaGFuZ2VMb2cob2JqZWN0KToKIAogICAgIGRlZiBsYXRlc3Rf
ZW50cnkoc2VsZik6CiAgICAgICAgICMgQ2hhbmdlTG9nIGZpbGVzIGFyZSBhbHdheXMgVVRGLTgs
IHdlIHJlYWQgdGhlbSBpbiBhcyBzdWNoIHRvIHN1cHBvcnQgUmV2aWV3ZXJzIHdpdGggdW5pY29k
ZSBpbiB0aGVpciBuYW1lcy4KLSAgICAgICAgY2hhbmdlbG9nX2ZpbGUgPSBjb2RlY3Mub3Blbihz
ZWxmLnBhdGgsICJyIiwgInV0Zi04IikKKyAgICAgICAgY2hhbmdlbG9nX2ZpbGUgPSBzZWxmLl9m
aWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zvcl9yZWFkaW5nKHNlbGYucGF0aCkKICAgICAgICAg
dHJ5OgogICAgICAgICAgICAgcmV0dXJuIHNlbGYucGFyc2VfbGF0ZXN0X2VudHJ5X2Zyb21fZmls
ZShjaGFuZ2Vsb2dfZmlsZSkKICAgICAgICAgZmluYWxseToKQEAgLTM4NiwyMCArMzcxLDIyIEBA
IGNsYXNzIENoYW5nZUxvZyhvYmplY3QpOgogICAgICAgICBmaXJzdF9ib2lsZXJwbGF0ZV9saW5l
X3JlZ2V4cCA9IHJlLmNvbXBpbGUoCiAgICAgICAgICAgICAgICAgIiVzTmVlZCBhIHNob3J0IGRl
c2NyaXB0aW9uIFwoT09QUyFcKVwuIiAlIHNlbGYuX2NoYW5nZWxvZ19pbmRlbnQpCiAgICAgICAg
IHJlbW92aW5nX2JvaWxlcnBsYXRlID0gRmFsc2UKLSAgICAgICAgIyBpbnBsYWNlPTEgY3JlYXRl
cyBhIGJhY2t1cCBmaWxlIGFuZCByZS1kaXJlY3RzIHN0ZG91dCB0byB0aGUgZmlsZQotICAgICAg
ICBmb3IgbGluZSBpbiBmaWxlaW5wdXQuRmlsZUlucHV0KHNlbGYucGF0aCwgaW5wbGFjZT0xKToK
LSAgICAgICAgICAgIGlmIGZpcnN0X2JvaWxlcnBsYXRlX2xpbmVfcmVnZXhwLnNlYXJjaChsaW5l
KToKLSAgICAgICAgICAgICAgICBtZXNzYWdlX2xpbmVzID0gc2VsZi5fd3JhcF9saW5lcyhtZXNz
YWdlKQotICAgICAgICAgICAgICAgIHByaW50IGZpcnN0X2JvaWxlcnBsYXRlX2xpbmVfcmVnZXhw
LnN1YihtZXNzYWdlX2xpbmVzLCBsaW5lKSwKLSAgICAgICAgICAgICAgICAjIFJlbW92ZSBhbGwg
dGhlIENoYW5nZUxvZyBib2lsZXJwbGF0ZSBiZWZvcmUgdGhlIGZpcnN0IGNoYW5nZWQKLSAgICAg
ICAgICAgICAgICAjIGZpbGUuCi0gICAgICAgICAgICAgICAgcmVtb3ZpbmdfYm9pbGVycGxhdGUg
PSBUcnVlCi0gICAgICAgICAgICBlbGlmIHJlbW92aW5nX2JvaWxlcnBsYXRlOgotICAgICAgICAg
ICAgICAgIGlmIGxpbmUuZmluZCgnKicpID49IDA6ICMgZWFjaCBjaGFuZ2VkIGZpbGUgaXMgcHJl
Y2VkZWQgYnkgYSAqCi0gICAgICAgICAgICAgICAgICAgIHJlbW92aW5nX2JvaWxlcnBsYXRlID0g
RmFsc2UKLQotICAgICAgICAgICAgaWYgbm90IHJlbW92aW5nX2JvaWxlcnBsYXRlOgotICAgICAg
ICAgICAgICAgIHByaW50IGxpbmUsCisgICAgICAgIHJlc3VsdCA9IFN0cmluZ0lPKCkKKyAgICAg
ICAgd2l0aCBzZWxmLl9maWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zvcl9yZWFkaW5nKHNlbGYu
cGF0aCkgYXMgZmlsZToKKyAgICAgICAgICAgIGZvciBsaW5lIGluIGZpbGU6CisgICAgICAgICAg
ICAgICAgaWYgZmlyc3RfYm9pbGVycGxhdGVfbGluZV9yZWdleHAuc2VhcmNoKGxpbmUpOgorICAg
ICAgICAgICAgICAgICAgICBtZXNzYWdlX2xpbmVzID0gc2VsZi5fd3JhcF9saW5lcyhtZXNzYWdl
KQorICAgICAgICAgICAgICAgICAgICByZXN1bHQud3JpdGUoZmlyc3RfYm9pbGVycGxhdGVfbGlu
ZV9yZWdleHAuc3ViKG1lc3NhZ2VfbGluZXMsIGxpbmUpKQorICAgICAgICAgICAgICAgICAgICAj
IFJlbW92ZSBhbGwgdGhlIENoYW5nZUxvZyBib2lsZXJwbGF0ZSBiZWZvcmUgdGhlIGZpcnN0IGNo
YW5nZWQKKyAgICAgICAgICAgICAgICAgICAgIyBmaWxlLgorICAgICAgICAgICAgICAgICAgICBy
ZW1vdmluZ19ib2lsZXJwbGF0ZSA9IFRydWUKKyAgICAgICAgICAgICAgICBlbGlmIHJlbW92aW5n
X2JvaWxlcnBsYXRlOgorICAgICAgICAgICAgICAgICAgICBpZiBsaW5lLmZpbmQoJyonKSA+PSAw
OiAgIyBlYWNoIGNoYW5nZWQgZmlsZSBpcyBwcmVjZWRlZCBieSBhICoKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHJlbW92aW5nX2JvaWxlcnBsYXRlID0gRmFsc2UKKworICAgICAgICAgICAgICAg
IGlmIG5vdCByZW1vdmluZ19ib2lsZXJwbGF0ZToKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0
LndyaXRlKGxpbmUpCisgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKHNl
bGYucGF0aCwgcmVzdWx0LmdldHZhbHVlKCkpCiAKICAgICBkZWYgc2V0X3Jldmlld2VyKHNlbGYs
IHJldmlld2VyKToKICAgICAgICAgbGF0ZXN0X2VudHJ5ID0gc2VsZi5sYXRlc3RfZW50cnkoKQpA
QCAtNDEwLDQxICszOTcsNDkgQEAgY2xhc3MgQ2hhbmdlTG9nKG9iamVjdCk6CiAgICAgICAgIGlm
IG5vdCBmb3VuZF9ub2JvZHkgYW5kIG5vdCByZXZpZXdlcl90ZXh0OgogICAgICAgICAgICAgYnVn
X3VybF9udW1iZXJfb2ZfaXRlbXMgPSBsZW4ocmUuZmluZGFsbChjb25maWdfdXJscy5idWdfdXJs
X2xvbmcsIGxhdGVzdF9lbnRyeV9jb250ZW50cywgcmUuTVVMVElMSU5FKSkKICAgICAgICAgICAg
IGJ1Z191cmxfbnVtYmVyX29mX2l0ZW1zICs9IGxlbihyZS5maW5kYWxsKGNvbmZpZ191cmxzLmJ1
Z191cmxfc2hvcnQsIGxhdGVzdF9lbnRyeV9jb250ZW50cywgcmUuTVVMVElMSU5FKSkKLSAgICAg
ICAgICAgIGZvciBsaW5lIGluIGZpbGVpbnB1dC5GaWxlSW5wdXQoc2VsZi5wYXRoLCBpbnBsYWNl
PTEpOgotICAgICAgICAgICAgICAgIGZvdW5kX2J1Z191cmwgPSByZS5zZWFyY2goY29uZmlnX3Vy
bHMuYnVnX3VybF9sb25nLCBsaW5lKQotICAgICAgICAgICAgICAgIGlmIG5vdCBmb3VuZF9idWdf
dXJsOgotICAgICAgICAgICAgICAgICAgICBmb3VuZF9idWdfdXJsID0gcmUuc2VhcmNoKGNvbmZp
Z191cmxzLmJ1Z191cmxfc2hvcnQsIGxpbmUpCi0gICAgICAgICAgICAgICAgcHJpbnQgbGluZSwK
LSAgICAgICAgICAgICAgICBpZiBmb3VuZF9idWdfdXJsOgotICAgICAgICAgICAgICAgICAgICBp
ZiBidWdfdXJsX251bWJlcl9vZl9pdGVtcyA9PSAxOgotICAgICAgICAgICAgICAgICAgICAgICAg
cHJpbnQgIlxuICAgICAgICBSZXZpZXdlZCBieSAlcy4iICUgKHJldmlld2VyLmVuY29kZSgidXRm
LTgiKSkKLSAgICAgICAgICAgICAgICAgICAgYnVnX3VybF9udW1iZXJfb2ZfaXRlbXMgLT0gMQor
ICAgICAgICAgICAgcmVzdWx0ID0gU3RyaW5nSU8oKQorICAgICAgICAgICAgd2l0aCBzZWxmLl9m
aWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zvcl9yZWFkaW5nKHNlbGYucGF0aCkgYXMgZmlsZToK
KyAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiBmaWxlOgorICAgICAgICAgICAgICAgICAgICBm
b3VuZF9idWdfdXJsID0gcmUuc2VhcmNoKGNvbmZpZ191cmxzLmJ1Z191cmxfbG9uZywgbGluZSkK
KyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGZvdW5kX2J1Z191cmw6CisgICAgICAgICAgICAg
ICAgICAgICAgICBmb3VuZF9idWdfdXJsID0gcmUuc2VhcmNoKGNvbmZpZ191cmxzLmJ1Z191cmxf
c2hvcnQsIGxpbmUpCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdC53cml0ZShsaW5lKQorICAg
ICAgICAgICAgICAgICAgICBpZiBmb3VuZF9idWdfdXJsOgorICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgYnVnX3VybF9udW1iZXJfb2ZfaXRlbXMgPT0gMToKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXN1bHQud3JpdGUoIlxuICAgICAgICBSZXZpZXdlZCBieSAlcy5cbiIgJSByZXZp
ZXdlcikKKyAgICAgICAgICAgICAgICAgICAgICAgIGJ1Z191cmxfbnVtYmVyX29mX2l0ZW1zIC09
IDEKKyAgICAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKHNlbGYucGF0
aCwgcmVzdWx0LmdldHZhbHVlKCkpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAjIGlucGxh
Y2U9MSBjcmVhdGVzIGEgYmFja3VwIGZpbGUgYW5kIHJlLWRpcmVjdHMgc3Rkb3V0IHRvIHRoZSBm
aWxlCi0gICAgICAgICAgICBmb3IgbGluZSBpbiBmaWxlaW5wdXQuRmlsZUlucHV0KHNlbGYucGF0
aCwgaW5wbGFjZT0xKToKLSAgICAgICAgICAgICAgICAjIFRyYWlsaW5nIGNvbW1hIHN1cHByZXNz
ZXMgcHJpbnRpbmcgbmV3bGluZQotICAgICAgICAgICAgICAgIHByaW50IGxpbmUucmVwbGFjZSgi
Tk9CT0RZIChPT1BTISkiLCByZXZpZXdlci5lbmNvZGUoInV0Zi04IikpLAorICAgICAgICAgICAg
ZGF0YSA9IHNlbGYuX2ZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoc2VsZi5wYXRoKQorICAgICAg
ICAgICAgbmV3ZGF0YSA9IGRhdGEucmVwbGFjZSgiTk9CT0RZIChPT1BTISkiLCByZXZpZXdlcikK
KyAgICAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKHNlbGYucGF0aCwg
bmV3ZGF0YSkKIAogICAgIGRlZiBzZXRfc2hvcnRfZGVzY3JpcHRpb25fYW5kX2J1Z191cmwoc2Vs
Ziwgc2hvcnRfZGVzY3JpcHRpb24sIGJ1Z191cmwpOgogICAgICAgICBtZXNzYWdlID0gIiVzXG4l
cyVzIiAlIChzaG9ydF9kZXNjcmlwdGlvbiwgc2VsZi5fY2hhbmdlbG9nX2luZGVudCwgYnVnX3Vy
bCkKICAgICAgICAgYnVnX2JvaWxlcnBsYXRlID0gIiVzTmVlZCB0aGUgYnVnIFVSTCAoT09QUyEp
LlxuIiAlIHNlbGYuX2NoYW5nZWxvZ19pbmRlbnQKLSAgICAgICAgZm9yIGxpbmUgaW4gZmlsZWlu
cHV0LkZpbGVJbnB1dChzZWxmLnBhdGgsIGlucGxhY2U9MSk6Ci0gICAgICAgICAgICBsaW5lID0g
bGluZS5yZXBsYWNlKCJOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gKE9PUFMhKS4iLCBtZXNzYWdl
LmVuY29kZSgidXRmLTgiKSkKLSAgICAgICAgICAgIGlmIGxpbmUgIT0gYnVnX2JvaWxlcnBsYXRl
OgotICAgICAgICAgICAgICAgIHByaW50IGxpbmUsCisgICAgICAgIHJlc3VsdCA9IFN0cmluZ0lP
KCkKKyAgICAgICAgd2l0aCBzZWxmLl9maWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zvcl9yZWFk
aW5nKHNlbGYucGF0aCkgYXMgZmlsZToKKyAgICAgICAgICAgIGZvciBsaW5lIGluIGZpbGU6Cisg
ICAgICAgICAgICAgICAgbGluZSA9IGxpbmUucmVwbGFjZSgiTmVlZCBhIHNob3J0IGRlc2NyaXB0
aW9uIChPT1BTISkuIiwgbWVzc2FnZSkKKyAgICAgICAgICAgICAgICBpZiBsaW5lICE9IGJ1Z19i
b2lsZXJwbGF0ZToKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0LndyaXRlKGxpbmUpCisgICAg
ICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKHNlbGYucGF0aCwgcmVzdWx0Lmdl
dHZhbHVlKCkpCiAKICAgICBkZWYgZGVsZXRlX2VudHJpZXMoc2VsZiwgbnVtX2VudHJpZXMpOgog
ICAgICAgICBkYXRlX2xpbmVfcmVnZXhwID0gcmUuY29tcGlsZShDaGFuZ2VMb2dFbnRyeS5kYXRl
X2xpbmVfcmVnZXhwKQogICAgICAgICByb2xsZWRfb3Zlcl9yZWdleHAgPSByZS5jb21waWxlKENo
YW5nZUxvZ0VudHJ5LnJvbGxlZF9vdmVyX3JlZ2V4cCkKICAgICAgICAgZW50cmllcyA9IDAKLSAg
ICAgICAgZm9yIGxpbmUgaW4gZmlsZWlucHV0LkZpbGVJbnB1dChzZWxmLnBhdGgsIGlucGxhY2U9
MSk6Ci0gICAgICAgICAgICBpZiBkYXRlX2xpbmVfcmVnZXhwLm1hdGNoKGxpbmUpOgotICAgICAg
ICAgICAgICAgIGVudHJpZXMgKz0gMQotICAgICAgICAgICAgZWxpZiByb2xsZWRfb3Zlcl9yZWdl
eHAubWF0Y2gobGluZSk6Ci0gICAgICAgICAgICAgICAgZW50cmllcyA9IG51bV9lbnRyaWVzICsg
MQotICAgICAgICAgICAgaWYgZW50cmllcyA+IG51bV9lbnRyaWVzOgotICAgICAgICAgICAgICAg
IHByaW50IGxpbmUsCisgICAgICAgIHJlc3VsdCA9IFN0cmluZ0lPKCkKKyAgICAgICAgd2l0aCBz
ZWxmLl9maWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zvcl9yZWFkaW5nKHNlbGYucGF0aCkgYXMg
ZmlsZToKKyAgICAgICAgICAgIGZvciBsaW5lIGluIGZpbGU6CisgICAgICAgICAgICAgICAgaWYg
ZGF0ZV9saW5lX3JlZ2V4cC5tYXRjaChsaW5lKToKKyAgICAgICAgICAgICAgICAgICAgZW50cmll
cyArPSAxCisgICAgICAgICAgICAgICAgZWxpZiByb2xsZWRfb3Zlcl9yZWdleHAubWF0Y2gobGlu
ZSk6CisgICAgICAgICAgICAgICAgICAgIGVudHJpZXMgPSBudW1fZW50cmllcyArIDEKKyAgICAg
ICAgICAgICAgICBpZiBlbnRyaWVzID4gbnVtX2VudHJpZXM6CisgICAgICAgICAgICAgICAgICAg
IHJlc3VsdC53cml0ZShsaW5lKQorICAgICAgICBzZWxmLl9maWxlc3lzdGVtLndyaXRlX3RleHRf
ZmlsZShzZWxmLnBhdGgsIHJlc3VsdC5nZXR2YWx1ZSgpKQogCiAgICAgZGVmIHByZXBlbmRfdGV4
dChzZWxmLCB0ZXh0KToKLSAgICAgICAgZGF0YSA9IGNvZGVjcy5vcGVuKHNlbGYucGF0aCwgInIi
LCAidXRmLTgiKS5yZWFkKCkKLSAgICAgICAgY29kZWNzLm9wZW4oc2VsZi5wYXRoLCAidyIsICJ1
dGYtOCIpLndyaXRlKHRleHQgKyBkYXRhKQorICAgICAgICBkYXRhID0gc2VsZi5fZmlsZXN5c3Rl
bS5yZWFkX3RleHRfZmlsZShzZWxmLnBhdGgpCisgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3Jp
dGVfdGV4dF9maWxlKHNlbGYucGF0aCwgdGV4dCArIGRhdGEpCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9jaGFuZ2Vsb2dfdW5pdHRlc3QucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9jaGFuZ2Vsb2dfdW5pdHRlc3Qu
cHkKaW5kZXggZWM0MTRiY2FkNTE0MWNhY2VlY2UyNWY0YzhiYjU1NmJkYzViZTE1YS4uNTViOGI4
NmY3MTFmYzRiNmUxMmM2MzUyN2NkMmNlNjVmMjlhMDg2OSAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvY2hhbmdlbG9nX3VuaXR0ZXN0LnB5CisrKyBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoYW5nZWxvZ191bml0dGVz
dC5weQpAQCAtMjYsMTggKzI2LDE4IEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
Ci1pbXBvcnQgY29kZWNzCi1pbXBvcnQgb3MKLWltcG9ydCB0ZW1wZmlsZQogaW1wb3J0IHVuaXR0
ZXN0MiBhcyB1bml0dGVzdAogCiBmcm9tIFN0cmluZ0lPIGltcG9ydCBTdHJpbmdJTwogCitmcm9t
IHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZmlsZXN5c3RlbV9tb2NrIGltcG9ydCBNb2NrRmlsZVN5
c3RlbQogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuY2hhbmdlbG9nIGltcG9ydCAqCiAK
IAogY2xhc3MgQ2hhbmdlTG9nVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKKyAgICBfY2hhbmdl
bG9nX3BhdGggPSAnVG9vbHMvQ2hhbmdlTG9nJworCiAgICAgX2V4YW1wbGVfZW50cnkgPSB1Jycn
MjAwOS0wOC0xNyAgUGV0ZXIgS2FzdGluZyAgPHBrYXN0aW5nQGdvb2dsZS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGJceGY4LgpAQCAtMjU0LDcgKzI1NCw3IEBAIGNs
YXNzIENoYW5nZUxvZ1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICAgICAgIldlYkNv
cmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAiOiBbIldlYkNvcmU6OkNocm9tZUNsaWVudEVm
bDo6Y2xvc2VXaW5kb3dTb29uIl0sICJld2svZXdrX3ByaXZhdGUuaCI6IFtdLCAiZXdrL2V3a192
aWV3LmNwcCI6IFtdfSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXJzZWRfZW50cmllc1sz
XS5idWdfZGVzY3JpcHRpb24oKSwgIltNYWNdIFJlc291cmNlUmVxdWVzdCdzIG5zVVJMUmVxdWVz
dCgpIGRvZXMgbm90IGRpZmZlcmVudGlhdGUgbnVsbCBhbmQgZW1wdHkgVVJMcyB3aXRoIENGTmV0
d29yayIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGFyc2VkX2VudHJpZXNbNF0ucmV2aWV3
ZXJfdGV4dCgpLCAiRGF2aWQgSHlhdHQiKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBhcnNl
ZF9lbnRyaWVzWzRdLmJ1Z19kZXNjcmlwdGlvbigpLCBOb25lKQorICAgICAgICBzZWxmLmFzc2Vy
dElzTm9uZShwYXJzZWRfZW50cmllc1s0XS5idWdfZGVzY3JpcHRpb24oKSkKICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbChwYXJzZWRfZW50cmllc1s1XS5yZXZpZXdlcl90ZXh0KCksICJBZGFtIFJv
YmVuIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXJzZWRfZW50cmllc1s2XS5yZXZpZXdl
cl90ZXh0KCksICJUb255IENoYW5nIikKICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUocGFyc2Vk
X2VudHJpZXNbN10ucmV2aWV3ZXJfdGV4dCgpKQpAQCAtNDg2LDE5ICs0ODYsNiBAQCBjbGFzcyBD
aGFuZ2VMb2dUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bChsYXRlc3RfZW50cnkuY29udGVudHMoKSwgc2VsZi5fZXhhbXBsZV9lbnRyeSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChsYXRlc3RfZW50cnkuYXV0aG9yX25hbWUoKSwgIlBldGVyIEthc3Rp
bmciKQogCi0gICAgQHN0YXRpY21ldGhvZAotICAgIGRlZiBfd3JpdGVfdG1wX2ZpbGVfd2l0aF9j
b250ZW50cyhieXRlX2FycmF5KToKLSAgICAgICAgYXNzZXJ0KGlzaW5zdGFuY2UoYnl0ZV9hcnJh
eSwgc3RyKSkKLSAgICAgICAgKGZpbGVfZGVzY3JpcHRvciwgZmlsZV9wYXRoKSA9IHRlbXBmaWxl
Lm1rc3RlbXAoKSAjIE5hbWVkVGVtcG9yYXJ5RmlsZSBhbHdheXMgZGVsZXRlcyB0aGUgZmlsZSBv
biBjbG9zZSBpbiBweXRob24gPCAyLjYKLSAgICAgICAgd2l0aCBvcy5mZG9wZW4oZmlsZV9kZXNj
cmlwdG9yLCAidyIpIGFzIGZpbGU6Ci0gICAgICAgICAgICBmaWxlLndyaXRlKGJ5dGVfYXJyYXkp
Ci0gICAgICAgIHJldHVybiBmaWxlX3BhdGgKLQotICAgIEBzdGF0aWNtZXRob2QKLSAgICBkZWYg
X3JlYWRfZmlsZV9jb250ZW50cyhmaWxlX3BhdGgsIGVuY29kaW5nKToKLSAgICAgICAgd2l0aCBj
b2RlY3Mub3BlbihmaWxlX3BhdGgsICJyIiwgZW5jb2RpbmcpIGFzIGZpbGU6Ci0gICAgICAgICAg
ICByZXR1cm4gZmlsZS5yZWFkKCkKLQogICAgICMgRklYTUU6IFdlIHJlYWxseSBzaG91bGQgYmUg
Z2V0dGluZyB0aGlzIGZyb20gcHJlcGFyZS1DaGFuZ2VMb2cgaXRzZWxmLgogICAgIF9uZXdfZW50
cnlfYm9pbGVycGxhdGUgPSAnJycyMDA5LTA4LTE5ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0
Lm9yZz4KIApAQCAtNTQ5LDU4ICs1MzYsNTggQEAgY2xhc3MgQ2hhbmdlTG9nVGVzdCh1bml0dGVz
dC5UZXN0Q2FzZSk6CiAnJycKIAogICAgIGRlZiB0ZXN0X3NldF9yZXZpZXdlcihzZWxmKToKKyAg
ICAgICAgZnMgPSBNb2NrRmlsZVN5c3RlbSgpCisKICAgICAgICAgY2hhbmdlbG9nX2NvbnRlbnRz
ID0gdSIlc1xuJXMiICUgKHNlbGYuX25ld19lbnRyeV9ib2lsZXJwbGF0ZV93aXRoX2J1Z3VybCwg
c2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cpCi0gICAgICAgIGNoYW5nZWxvZ19wYXRoID0gc2VsZi5f
d3JpdGVfdG1wX2ZpbGVfd2l0aF9jb250ZW50cyhjaGFuZ2Vsb2dfY29udGVudHMuZW5jb2RlKCJ1
dGYtOCIpKQogICAgICAgICByZXZpZXdlcl9uYW1lID0gJ1Rlc3QgUmV2aWV3ZXInCi0gICAgICAg
IENoYW5nZUxvZyhjaGFuZ2Vsb2dfcGF0aCkuc2V0X3Jldmlld2VyKHJldmlld2VyX25hbWUpCi0g
ICAgICAgIGFjdHVhbF9jb250ZW50cyA9IHNlbGYuX3JlYWRfZmlsZV9jb250ZW50cyhjaGFuZ2Vs
b2dfcGF0aCwgInV0Zi04IikKKyAgICAgICAgZnMud3JpdGVfdGV4dF9maWxlKHNlbGYuX2NoYW5n
ZWxvZ19wYXRoLCBjaGFuZ2Vsb2dfY29udGVudHMpCisgICAgICAgIENoYW5nZUxvZyhzZWxmLl9j
aGFuZ2Vsb2dfcGF0aCwgZnMpLnNldF9yZXZpZXdlcihyZXZpZXdlcl9uYW1lKQorICAgICAgICBh
Y3R1YWxfY29udGVudHMgPSBmcy5yZWFkX3RleHRfZmlsZShzZWxmLl9jaGFuZ2Vsb2dfcGF0aCkK
ICAgICAgICAgZXhwZWN0ZWRfY29udGVudHMgPSBjaGFuZ2Vsb2dfY29udGVudHMucmVwbGFjZSgn
Tk9CT0RZIChPT1BTISknLCByZXZpZXdlcl9uYW1lKQotICAgICAgICBvcy5yZW1vdmUoY2hhbmdl
bG9nX3BhdGgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsX2NvbnRlbnRzLnNwbGl0
bGluZXMoKSwgZXhwZWN0ZWRfY29udGVudHMuc3BsaXRsaW5lcygpKQogCiAgICAgICAgIGNoYW5n
ZWxvZ19jb250ZW50c193aXRob3V0X3Jldmlld2VyX2xpbmUgPSB1IiVzXG4lcyIgJSAoc2VsZi5f
bmV3X2VudHJ5X2JvaWxlcnBsYXRlX3dpdGhvdXRfcmV2aWV3ZXJfbGluZSwgc2VsZi5fZXhhbXBs
ZV9jaGFuZ2Vsb2cpCi0gICAgICAgIGNoYW5nZWxvZ19wYXRoID0gc2VsZi5fd3JpdGVfdG1wX2Zp
bGVfd2l0aF9jb250ZW50cyhjaGFuZ2Vsb2dfY29udGVudHNfd2l0aG91dF9yZXZpZXdlcl9saW5l
LmVuY29kZSgidXRmLTgiKSkKLSAgICAgICAgQ2hhbmdlTG9nKGNoYW5nZWxvZ19wYXRoKS5zZXRf
cmV2aWV3ZXIocmV2aWV3ZXJfbmFtZSkKLSAgICAgICAgYWN0dWFsX2NvbnRlbnRzID0gc2VsZi5f
cmVhZF9maWxlX2NvbnRlbnRzKGNoYW5nZWxvZ19wYXRoLCAidXRmLTgiKQotICAgICAgICBvcy5y
ZW1vdmUoY2hhbmdlbG9nX3BhdGgpCisgICAgICAgIGZzLndyaXRlX3RleHRfZmlsZShzZWxmLl9j
aGFuZ2Vsb2dfcGF0aCwgY2hhbmdlbG9nX2NvbnRlbnRzX3dpdGhvdXRfcmV2aWV3ZXJfbGluZSkK
KyAgICAgICAgQ2hhbmdlTG9nKHNlbGYuX2NoYW5nZWxvZ19wYXRoLCBmcykuc2V0X3Jldmlld2Vy
KHJldmlld2VyX25hbWUpCisgICAgICAgIGFjdHVhbF9jb250ZW50cyA9IGZzLnJlYWRfdGV4dF9m
aWxlKHNlbGYuX2NoYW5nZWxvZ19wYXRoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVh
bF9jb250ZW50cy5zcGxpdGxpbmVzKCksIGV4cGVjdGVkX2NvbnRlbnRzLnNwbGl0bGluZXMoKSkK
IAogICAgICAgICBjaGFuZ2Vsb2dfY29udGVudHNfd2l0aG91dF9yZXZpZXdlcl9saW5lID0gdSIl
c1xuJXMiICUgKHNlbGYuX25ld19lbnRyeV9ib2lsZXJwbGF0ZV93aXRob3V0X3Jldmlld2VyX211
bHRpcGxlX2J1Z3VybCwgc2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cpCi0gICAgICAgIGNoYW5nZWxv
Z19wYXRoID0gc2VsZi5fd3JpdGVfdG1wX2ZpbGVfd2l0aF9jb250ZW50cyhjaGFuZ2Vsb2dfY29u
dGVudHNfd2l0aG91dF9yZXZpZXdlcl9saW5lLmVuY29kZSgidXRmLTgiKSkKLSAgICAgICAgQ2hh
bmdlTG9nKGNoYW5nZWxvZ19wYXRoKS5zZXRfcmV2aWV3ZXIocmV2aWV3ZXJfbmFtZSkKLSAgICAg
ICAgYWN0dWFsX2NvbnRlbnRzID0gc2VsZi5fcmVhZF9maWxlX2NvbnRlbnRzKGNoYW5nZWxvZ19w
YXRoLCAidXRmLTgiKQorICAgICAgICBmcy53cml0ZV90ZXh0X2ZpbGUoc2VsZi5fY2hhbmdlbG9n
X3BhdGgsIGNoYW5nZWxvZ19jb250ZW50c193aXRob3V0X3Jldmlld2VyX2xpbmUpCisgICAgICAg
IENoYW5nZUxvZyhzZWxmLl9jaGFuZ2Vsb2dfcGF0aCwgZnMpLnNldF9yZXZpZXdlcihyZXZpZXdl
cl9uYW1lKQorICAgICAgICBhY3R1YWxfY29udGVudHMgPSBmcy5yZWFkX3RleHRfZmlsZShzZWxm
Ll9jaGFuZ2Vsb2dfcGF0aCkKICAgICAgICAgY2hhbmdlbG9nX2NvbnRlbnRzID0gdSIlc1xuJXMi
ICUgKHNlbGYuX25ld19lbnRyeV9ib2lsZXJwbGF0ZV93aXRoX211bHRpcGxlX2J1Z3VybCwgc2Vs
Zi5fZXhhbXBsZV9jaGFuZ2Vsb2cpCiAgICAgICAgIGV4cGVjdGVkX2NvbnRlbnRzID0gY2hhbmdl
bG9nX2NvbnRlbnRzLnJlcGxhY2UoJ05PQk9EWSAoT09QUyEpJywgcmV2aWV3ZXJfbmFtZSkKLSAg
ICAgICAgb3MucmVtb3ZlKGNoYW5nZWxvZ19wYXRoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KGFjdHVhbF9jb250ZW50cy5zcGxpdGxpbmVzKCksIGV4cGVjdGVkX2NvbnRlbnRzLnNwbGl0bGlu
ZXMoKSkKIAogICAgIGRlZiB0ZXN0X3NldF9zaG9ydF9kZXNjcmlwdGlvbl9hbmRfYnVnX3VybChz
ZWxmKToKKyAgICAgICAgZnMgPSBNb2NrRmlsZVN5c3RlbSgpCisKICAgICAgICAgY2hhbmdlbG9n
X2NvbnRlbnRzID0gdSIlc1xuJXMiICUgKHNlbGYuX25ld19lbnRyeV9ib2lsZXJwbGF0ZV93aXRo
X2J1Z3VybCwgc2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cpCi0gICAgICAgIGNoYW5nZWxvZ19wYXRo
ID0gc2VsZi5fd3JpdGVfdG1wX2ZpbGVfd2l0aF9jb250ZW50cyhjaGFuZ2Vsb2dfY29udGVudHMu
ZW5jb2RlKCJ1dGYtOCIpKQorICAgICAgICBmcy53cml0ZV90ZXh0X2ZpbGUoc2VsZi5fY2hhbmdl
bG9nX3BhdGgsIGNoYW5nZWxvZ19jb250ZW50cykKICAgICAgICAgc2hvcnRfZGVzY3JpcHRpb24g
PSAiQSBzaG9ydCBkZXNjcmlwdGlvbiIKICAgICAgICAgYnVnX3VybCA9ICJodHRwOi8vZXhhbXBs
ZS5jb20vYi8yMzQ0IgotICAgICAgICBDaGFuZ2VMb2coY2hhbmdlbG9nX3BhdGgpLnNldF9zaG9y
dF9kZXNjcmlwdGlvbl9hbmRfYnVnX3VybChzaG9ydF9kZXNjcmlwdGlvbiwgYnVnX3VybCkKLSAg
ICAgICAgYWN0dWFsX2NvbnRlbnRzID0gc2VsZi5fcmVhZF9maWxlX2NvbnRlbnRzKGNoYW5nZWxv
Z19wYXRoLCAidXRmLTgiKQorICAgICAgICBDaGFuZ2VMb2coc2VsZi5fY2hhbmdlbG9nX3BhdGgs
IGZzKS5zZXRfc2hvcnRfZGVzY3JpcHRpb25fYW5kX2J1Z191cmwoc2hvcnRfZGVzY3JpcHRpb24s
IGJ1Z191cmwpCisgICAgICAgIGFjdHVhbF9jb250ZW50cyA9IGZzLnJlYWRfdGV4dF9maWxlKHNl
bGYuX2NoYW5nZWxvZ19wYXRoKQogICAgICAgICBleHBlY3RlZF9tZXNzYWdlID0gIiVzXG4gICAg
ICAgICVzIiAlIChzaG9ydF9kZXNjcmlwdGlvbiwgYnVnX3VybCkKICAgICAgICAgZXhwZWN0ZWRf
Y29udGVudHMgPSBjaGFuZ2Vsb2dfY29udGVudHMucmVwbGFjZSgiTmVlZCBhIHNob3J0IGRlc2Ny
aXB0aW9uIChPT1BTISkuIiwgZXhwZWN0ZWRfbWVzc2FnZSkKLSAgICAgICAgb3MucmVtb3ZlKGNo
YW5nZWxvZ19wYXRoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbF9jb250ZW50cy5z
cGxpdGxpbmVzKCksIGV4cGVjdGVkX2NvbnRlbnRzLnNwbGl0bGluZXMoKSkKIAogICAgICAgICBj
aGFuZ2Vsb2dfY29udGVudHMgPSB1IiVzXG4lcyIgJSAoc2VsZi5fbmV3X2VudHJ5X2JvaWxlcnBs
YXRlLCBzZWxmLl9leGFtcGxlX2NoYW5nZWxvZykKLSAgICAgICAgY2hhbmdlbG9nX3BhdGggPSBz
ZWxmLl93cml0ZV90bXBfZmlsZV93aXRoX2NvbnRlbnRzKGNoYW5nZWxvZ19jb250ZW50cy5lbmNv
ZGUoInV0Zi04IikpCisgICAgICAgIGZzLndyaXRlX3RleHRfZmlsZShzZWxmLl9jaGFuZ2Vsb2df
cGF0aCwgY2hhbmdlbG9nX2NvbnRlbnRzKQogICAgICAgICBzaG9ydF9kZXNjcmlwdGlvbiA9ICJB
IHNob3J0IGRlc2NyaXB0aW9uIDIiCiAgICAgICAgIGJ1Z191cmwgPSAiaHR0cDovL2V4YW1wbGUu
Y29tL2IvMjM0NSIKLSAgICAgICAgQ2hhbmdlTG9nKGNoYW5nZWxvZ19wYXRoKS5zZXRfc2hvcnRf
ZGVzY3JpcHRpb25fYW5kX2J1Z191cmwoc2hvcnRfZGVzY3JpcHRpb24sIGJ1Z191cmwpCi0gICAg
ICAgIGFjdHVhbF9jb250ZW50cyA9IHNlbGYuX3JlYWRfZmlsZV9jb250ZW50cyhjaGFuZ2Vsb2df
cGF0aCwgInV0Zi04IikKKyAgICAgICAgQ2hhbmdlTG9nKHNlbGYuX2NoYW5nZWxvZ19wYXRoLCBm
cykuc2V0X3Nob3J0X2Rlc2NyaXB0aW9uX2FuZF9idWdfdXJsKHNob3J0X2Rlc2NyaXB0aW9uLCBi
dWdfdXJsKQorICAgICAgICBhY3R1YWxfY29udGVudHMgPSBmcy5yZWFkX3RleHRfZmlsZShzZWxm
Ll9jaGFuZ2Vsb2dfcGF0aCkKICAgICAgICAgZXhwZWN0ZWRfbWVzc2FnZSA9ICIlc1xuICAgICAg
ICAlcyIgJSAoc2hvcnRfZGVzY3JpcHRpb24sIGJ1Z191cmwpCiAgICAgICAgIGV4cGVjdGVkX2Nv
bnRlbnRzID0gY2hhbmdlbG9nX2NvbnRlbnRzLnJlcGxhY2UoIk5lZWQgYSBzaG9ydCBkZXNjcmlw
dGlvbiAoT09QUyEpLlxuICAgICAgICBOZWVkIHRoZSBidWcgVVJMIChPT1BTISkuIiwgZXhwZWN0
ZWRfbWVzc2FnZSkKLSAgICAgICAgb3MucmVtb3ZlKGNoYW5nZWxvZ19wYXRoKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKGFjdHVhbF9jb250ZW50cy5zcGxpdGxpbmVzKCksIGV4cGVjdGVkX2Nv
bnRlbnRzLnNwbGl0bGluZXMoKSkKIAogICAgIGRlZiB0ZXN0X2RlbGV0ZV9lbnRyaWVzKHNlbGYp
OgotICAgICAgICBjaGFuZ2Vsb2dfcGF0aCA9IHNlbGYuX3dyaXRlX3RtcF9maWxlX3dpdGhfY29u
dGVudHMoc2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cuZW5jb2RlKCJ1dGYtOCIpKQotICAgICAgICBD
aGFuZ2VMb2coY2hhbmdlbG9nX3BhdGgpLmRlbGV0ZV9lbnRyaWVzKDgpCi0gICAgICAgIGFjdHVh
bF9jb250ZW50cyA9IHNlbGYuX3JlYWRfZmlsZV9jb250ZW50cyhjaGFuZ2Vsb2dfcGF0aCwgInV0
Zi04IikKKyAgICAgICAgZnMgPSBNb2NrRmlsZVN5c3RlbSgpCisgICAgICAgIGZzLndyaXRlX3Rl
eHRfZmlsZShzZWxmLl9jaGFuZ2Vsb2dfcGF0aCwgc2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cpCisg
ICAgICAgIENoYW5nZUxvZyhzZWxmLl9jaGFuZ2Vsb2dfcGF0aCwgZnMpLmRlbGV0ZV9lbnRyaWVz
KDgpCisgICAgICAgIGFjdHVhbF9jb250ZW50cyA9IGZzLnJlYWRfdGV4dF9maWxlKHNlbGYuX2No
YW5nZWxvZ19wYXRoKQogICAgICAgICBleHBlY3RlZF9jb250ZW50cyA9ICIiIjIwMTEtMTAtMTEg
IEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgUmVzb2x2ZSByZWd1
bGFyIGFuZCB2aXNpdGVkIGxpbmsgc3R5bGUgaW4gYSBzaW5nbGUgcGFzcwpAQCAtNjE2LDE3ICs2
MDMsMTYgQEAgY2xhc3MgQ2hhbmdlTG9nVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAiIiIKICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWxfY29udGVudHMuc3BsaXRsaW5lcygpLCBleHBl
Y3RlZF9jb250ZW50cy5zcGxpdGxpbmVzKCkpCiAKLSAgICAgICAgQ2hhbmdlTG9nKGNoYW5nZWxv
Z19wYXRoKS5kZWxldGVfZW50cmllcygyKQotICAgICAgICBhY3R1YWxfY29udGVudHMgPSBzZWxm
Ll9yZWFkX2ZpbGVfY29udGVudHMoY2hhbmdlbG9nX3BhdGgsICJ1dGYtOCIpCisgICAgICAgIENo
YW5nZUxvZyhzZWxmLl9jaGFuZ2Vsb2dfcGF0aCwgZnMpLmRlbGV0ZV9lbnRyaWVzKDIpCisgICAg
ICAgIGFjdHVhbF9jb250ZW50cyA9IGZzLnJlYWRfdGV4dF9maWxlKHNlbGYuX2NoYW5nZWxvZ19w
YXRoKQogICAgICAgICBleHBlY3RlZF9jb250ZW50cyA9ICI9PSBSb2xsZWQgb3ZlciB0byBDaGFu
Z2VMb2ctMjAwOS0wNi0xNiA9PVxuIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbF9j
b250ZW50cy5zcGxpdGxpbmVzKCksIGV4cGVjdGVkX2NvbnRlbnRzLnNwbGl0bGluZXMoKSkKIAot
ICAgICAgICBvcy5yZW1vdmUoY2hhbmdlbG9nX3BhdGgpCiAKICAgICBkZWYgdGVzdF9wcmVwZW5k
X3RleHQoc2VsZik6Ci0gICAgICAgIGNoYW5nZWxvZ19wYXRoID0gc2VsZi5fd3JpdGVfdG1wX2Zp
bGVfd2l0aF9jb250ZW50cyhzZWxmLl9leGFtcGxlX2NoYW5nZWxvZy5lbmNvZGUoInV0Zi04Iikp
Ci0gICAgICAgIENoYW5nZUxvZyhjaGFuZ2Vsb2dfcGF0aCkucHJlcGVuZF90ZXh0KHNlbGYuX2V4
YW1wbGVfZW50cnkgKyAiXG4iKQotICAgICAgICBhY3R1YWxfY29udGVudHMgPSBzZWxmLl9yZWFk
X2ZpbGVfY29udGVudHMoY2hhbmdlbG9nX3BhdGgsICJ1dGYtOCIpCisgICAgICAgIGZzID0gTW9j
a0ZpbGVTeXN0ZW0oKQorICAgICAgICBmcy53cml0ZV90ZXh0X2ZpbGUoc2VsZi5fY2hhbmdlbG9n
X3BhdGgsIHNlbGYuX2V4YW1wbGVfY2hhbmdlbG9nKQorICAgICAgICBDaGFuZ2VMb2coc2VsZi5f
Y2hhbmdlbG9nX3BhdGgsIGZzKS5wcmVwZW5kX3RleHQoc2VsZi5fZXhhbXBsZV9lbnRyeSArICJc
biIpCisgICAgICAgIGFjdHVhbF9jb250ZW50cyA9IGZzLnJlYWRfdGV4dF9maWxlKHNlbGYuX2No
YW5nZWxvZ19wYXRoKQogICAgICAgICBleHBlY3RlZF9jb250ZW50cyA9IHNlbGYuX2V4YW1wbGVf
ZW50cnkgKyAiXG4iICsgc2VsZi5fZXhhbXBsZV9jaGFuZ2Vsb2cKICAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbChhY3R1YWxfY29udGVudHMuc3BsaXRsaW5lcygpLCBleHBlY3RlZF9jb250ZW50cy5z
cGxpdGxpbmVzKCkpCi0gICAgICAgIG9zLnJlbW92ZShjaGFuZ2Vsb2dfcGF0aCkKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9maWxlc3lzdGVtX21vY2su
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZmlsZXN5c3RlbV9tb2Nr
LnB5CmluZGV4IDE2ZTlmYWRhYWZiZjE3ZTgxZjEwMmJjNGM5YmMxODYyYWI3MTNiNGYuLjRjNmJk
OTc1MjFlYTMzOWQ0NTBiNzVlZjkxMWU2MWE3YzhhODY5ZWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9maWxlc3lzdGVtX21vY2sucHkKKysrIGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2ZpbGVzeXN0ZW1fbW9jay5weQpAQCAt
NDUyLDcgKzQ1Miw3IEBAIGNsYXNzIFJlYWRhYmxlQmluYXJ5RmlsZU9iamVjdChvYmplY3QpOgog
CiBjbGFzcyBSZWFkYWJsZVRleHRGaWxlT2JqZWN0KFJlYWRhYmxlQmluYXJ5RmlsZU9iamVjdCk6
CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZzLCBwYXRoLCBkYXRhKToKLSAgICAgICAgc3VwZXIo
UmVhZGFibGVUZXh0RmlsZU9iamVjdCwgc2VsZikuX19pbml0X18oZnMsIHBhdGgsIFN0cmluZ0lP
LlN0cmluZ0lPKGRhdGEpKQorICAgICAgICBzdXBlcihSZWFkYWJsZVRleHRGaWxlT2JqZWN0LCBz
ZWxmKS5fX2luaXRfXyhmcywgcGF0aCwgU3RyaW5nSU8uU3RyaW5nSU8oZGF0YS5kZWNvZGUoInV0
Zi04IikpKQogCiAgICAgZGVmIGNsb3NlKHNlbGYpOgogICAgICAgICBzZWxmLmRhdGEuY2xvc2Uo
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBhcmVj
aGFuZ2Vsb2cucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvcHJlcGFyZWNo
YW5nZWxvZy5weQppbmRleCAzNmQyZWIyODliZDRmOGQ0MTJjMzhkNzE3OTNhZDVjOTc1ZTRmNDUx
Li41YTA1MmVlNmEyOTQwMTRiNmMyODgxYjFjNGZjOWY3ODIwYTQ0MDFkIDEwMDY0NAotLS0gYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvcHJlcGFyZWNoYW5nZWxvZy5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvcHJlcGFyZWNoYW5nZWxvZy5weQpA
QCAtMjYsOSArMjYsNyBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotaW1wb3J0
IGNvZGVjcwogaW1wb3J0IGxvZ2dpbmcKLWltcG9ydCBvcwogaW1wb3J0IHJlCiBpbXBvcnQgc3lz
CiAKQEAgLTU1LDcgKzUzLDcgQEAgY2xhc3MgUHJlcGFyZUNoYW5nZUxvZyhBYnN0cmFjdFN0ZXAp
OgogICAgICAgICBidWdfaWQgPSBzdGF0ZS5nZXQoImJ1Z19pZCIpCiAgICAgICAgIGNoYW5nZWxv
Z3MgPSBzZWxmLmNhY2hlZF9sb29rdXAoc3RhdGUsICJjaGFuZ2Vsb2dzIikKICAgICAgICAgZm9y
IGNoYW5nZWxvZ19wYXRoIGluIGNoYW5nZWxvZ3M6Ci0gICAgICAgICAgICBjaGFuZ2Vsb2cgPSBD
aGFuZ2VMb2coY2hhbmdlbG9nX3BhdGgpCisgICAgICAgICAgICBjaGFuZ2Vsb2cgPSBDaGFuZ2VM
b2coY2hhbmdlbG9nX3BhdGgsIHNlbGYuX3Rvb2wuZmlsZXN5c3RlbSkKICAgICAgICAgICAgIGlm
IG5vdCBjaGFuZ2Vsb2cubGF0ZXN0X2VudHJ5KCkuYnVnX2lkKCk6CiAgICAgICAgICAgICAgICAg
Y2hhbmdlbG9nLnNldF9zaG9ydF9kZXNjcmlwdGlvbl9hbmRfYnVnX3VybCgKICAgICAgICAgICAg
ICAgICAgICAgc2VsZi5jYWNoZWRfbG9va3VwKHN0YXRlLCAiYnVnX3RpdGxlIiksCkBAIC02NCw3
ICs2Miw3IEBAIGNsYXNzIFByZXBhcmVDaGFuZ2VMb2coQWJzdHJhY3RTdGVwKToKICAgICBkZWYg
X3Jlc29sdmVfZXhpc3RpbmdfZW50cnkoc2VsZiwgY2hhbmdlbG9nX3BhdGgpOgogICAgICAgICAj
IFdoZW4gdGhpcyBpcyBjYWxsZWQsIHRoZSB0b3AgZW50cnkgaW4gdGhlIENoYW5nZUxvZyB3YXMg
anVzdCBjcmVhdGVkCiAgICAgICAgICMgYnkgcHJlcGFyZS1DaGFuZ2VMb2csIGFzIGFuIGNsZWFu
IHVwZGF0ZWQgdmVyc2lvbiBvZiB0aGUgb25lIGJlbG93IGl0LgotICAgICAgICB3aXRoIGNvZGVj
cy5vcGVuKGNoYW5nZWxvZ19wYXRoLCAiciIsICJ1dGYtOCIpIGFzIGNoYW5nZWxvZ19maWxlOgor
ICAgICAgICB3aXRoIHNlbGYuX3Rvb2wuZmlsZXN5c3RlbS5vcGVuX3RleHRfZmlsZV9mb3JfcmVh
ZGluZyhjaGFuZ2Vsb2dfcGF0aCkgYXMgY2hhbmdlbG9nX2ZpbGU6CiAgICAgICAgICAgICBlbnRy
aWVzX2dlbiA9IENoYW5nZUxvZy5wYXJzZV9lbnRyaWVzX2Zyb21fZmlsZShjaGFuZ2Vsb2dfZmls
ZSkKICAgICAgICAgICAgIGVudHJpZXMgPSB6aXAoZW50cmllc19nZW4sIHJhbmdlKDIpKQogCkBA
IC03OCw3ICs3Niw3IEBAIGNsYXNzIFByZXBhcmVDaGFuZ2VMb2coQWJzdHJhY3RTdGVwKToKICAg
ICAgICAgKG5ld19lbnRyeSwgXyksIChvbGRfZW50cnksIF8pID0gZW50cmllcwogICAgICAgICBm
aW5hbF9lbnRyeSA9IHNlbGYuX21lcmdlX2VudHJpZXMob2xkX2VudHJ5LCBuZXdfZW50cnkpCiAK
LSAgICAgICAgY2hhbmdlbG9nID0gQ2hhbmdlTG9nKGNoYW5nZWxvZ19wYXRoKQorICAgICAgICBj
aGFuZ2Vsb2cgPSBDaGFuZ2VMb2coY2hhbmdlbG9nX3BhdGgsIHNlbGYuX3Rvb2wuZmlsZXN5c3Rl
bSkKICAgICAgICAgY2hhbmdlbG9nLmRlbGV0ZV9lbnRyaWVzKDIpCiAgICAgICAgIGNoYW5nZWxv
Zy5wcmVwZW5kX3RleHQoZmluYWxfZW50cnkpCiAKQEAgLTEyOSw3ICsxMjcsNyBAQCBjbGFzcyBQ
cmVwYXJlQ2hhbmdlTG9nKEFic3RyYWN0U3RlcCk6CiAKICAgICAgICAgIyBUaGVzZSBhcmUgdGhl
IENoYW5nZUxvZyBlbnRyaWVzIGFkZGVkIGJ5IHByZXBhcmUtQ2hhbmdlbG9nCiAgICAgICAgIGNo
YW5nZWxvZ3MgPSByZS5maW5kYWxsKHInRWRpdGluZyB0aGUgKFxTKi9DaGFuZ2VMb2cpIGZpbGUu
Jywgb3V0cHV0KQotICAgICAgICBjaGFuZ2Vsb2dzID0gc2V0KG9zLnBhdGguam9pbihzZWxmLl90
b29sLnNjbSgpLmNoZWNrb3V0X3Jvb3QsIGYpIGZvciBmIGluIGNoYW5nZWxvZ3MpCisgICAgICAg
IGNoYW5nZWxvZ3MgPSBzZXQoc2VsZi5fdG9vbC5maWxlc3lzdGVtLmpvaW4oc2VsZi5fdG9vbC5z
Y20oKS5jaGVja291dF9yb290LCBmKSBmb3IgZiBpbiBjaGFuZ2Vsb2dzKQogICAgICAgICBmb3Ig
Y2hhbmdlbG9nIGluIGNoYW5nZWxvZ3MgJiBzZXQoc2VsZi5jYWNoZWRfbG9va3VwKHN0YXRlLCAi
Y2hhbmdlbG9ncyIpKToKICAgICAgICAgICAgIHNlbGYuX3Jlc29sdmVfZXhpc3RpbmdfZW50cnko
Y2hhbmdlbG9nKQogCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3Rl
cHMvcHJlcGFyZWNoYW5nZWxvZ191bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9zdGVwcy9wcmVwYXJlY2hhbmdlbG9nX3VuaXR0ZXN0LnB5CmluZGV4IDY0NDMwNDkwYmY2
MmI3NmMzYTAwYzVhMWZhMDk5OTlhNjgwNTZjZTQuLmE3MDNjYTJlYzZlYWRhMWM1N2EwODYxOTg1
NzkwYjI3NDJhNjIzZGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9z
dGVwcy9wcmVwYXJlY2hhbmdlbG9nX3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zdGVwcy9wcmVwYXJlY2hhbmdlbG9nX3VuaXR0ZXN0LnB5CkBAIC0yNiwxOSAr
MjYsMTYgQEAKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLWltcG9ydCBvcwogaW1w
b3J0IHVuaXR0ZXN0MiBhcyB1bml0dGVzdAogCiAjIERvIG5vdCBpbXBvcnQgY2hhbmdlbG9nX3Vu
aXR0ZXN0LkNoYW5nZUxvZ1Rlc3QgZGlyZWN0bHkgYXMgdGhhdCB3aWxsIGNhdXNlIGl0IHRvIGJl
IHJ1biBhZ2Fpbi4KIGZyb20gd2Via2l0cHkuY29tbW9uLmNoZWNrb3V0IGltcG9ydCBjaGFuZ2Vs
b2dfdW5pdHRlc3QKIAorZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmZpbGVzeXN0ZW1fbW9j
ayBpbXBvcnQgTW9ja0ZpbGVTeXN0ZW0KIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5vdXRw
dXRjYXB0dXJlIGltcG9ydCBPdXRwdXRDYXB0dXJlCiBmcm9tIHdlYmtpdHB5LnRvb2wubW9ja3Rv
b2wgaW1wb3J0IE1vY2tPcHRpb25zLCBNb2NrVG9vbAogZnJvbSB3ZWJraXRweS50b29sLnN0ZXBz
LnByZXBhcmVjaGFuZ2Vsb2cgaW1wb3J0IFByZXBhcmVDaGFuZ2VMb2cKIAotIyBGSVhNRTogVGhl
c2UgdGVzdHMgc2hvdWxkIHVzZSBhIE1vY2tGaWxlU3lzdGVtIGluc3RlYWQgb2YgYSByZWFsIGZp
bGUgc3lzdGVtLAotIyBvbmNlIGNoYW5nZWxvZy5weSBhbmQgcHJlcGFyZWNoYW5nZWxvZy5weSBh
cmUgRmlsZVN5c3RlbSBjb21wYXRpYmxlLgotCiBjbGFzcyBQcmVwYXJlQ2hhbmdlTG9nVGVzdChj
aGFuZ2Vsb2dfdW5pdHRlc3QuQ2hhbmdlTG9nVGVzdCk6CiAgICAgZGVmIHRlc3RfcmVzb2x2ZV9l
eGlzdGluZ19lbnRyeShzZWxmKToKICAgICAgICAgc3RlcCA9IFByZXBhcmVDaGFuZ2VMb2coTW9j
a1Rvb2woKSwgTW9ja09wdGlvbnMoKSkKQEAgLTEwNiwyNCArMTAzLDI3IEBAIGNsYXNzIFByZXBh
cmVDaGFuZ2VMb2dUZXN0KGNoYW5nZWxvZ191bml0dGVzdC5DaGFuZ2VMb2dUZXN0KToKICAgICAg
ICAgICAgIGZpbmFsX2VudHJ5ID0gbWFrZV9lbnRyeShmaW5hbCkKICAgICAgICAgICAgIGVuZF9m
aWxlID0gZmluYWxfZW50cnkgKyByb2xsX292ZXIKIAotICAgICAgICAgICAgcGF0aCA9IHNlbGYu
X3dyaXRlX3RtcF9maWxlX3dpdGhfY29udGVudHMoc3RhcnRfZmlsZS5lbmNvZGUoInV0Zi04Iikp
CisgICAgICAgICAgICBwYXRoID0gIkNoYW5nZUxvZyIKKyAgICAgICAgICAgIHN0ZXAuX3Rvb2wu
ZmlsZXN5c3RlbSA9IE1vY2tGaWxlU3lzdGVtKCkKKyAgICAgICAgICAgIHN0ZXAuX3Rvb2wuZmls
ZXN5c3RlbS53cml0ZV90ZXh0X2ZpbGUocGF0aCwgc3RhcnRfZmlsZSkKICAgICAgICAgICAgIHN0
ZXAuX3Jlc29sdmVfZXhpc3RpbmdfZW50cnkocGF0aCkKLSAgICAgICAgICAgIGFjdHVhbF9vdXRw
dXQgPSBzZWxmLl9yZWFkX2ZpbGVfY29udGVudHMocGF0aCwgInV0Zi04IikKKyAgICAgICAgICAg
IGFjdHVhbF9vdXRwdXQgPSBzdGVwLl90b29sLmZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUocGF0
aCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKGFjdHVhbF9vdXRwdXQsIGVuZF9maWxl
KQogCiAgICAgZGVmIHRlc3RfZW5zdXJlX2J1Z191cmwoc2VsZik6CiAgICAgICAgIGNhcHR1cmUg
PSBPdXRwdXRDYXB0dXJlKCkKICAgICAgICAgc3RlcCA9IFByZXBhcmVDaGFuZ2VMb2coTW9ja1Rv
b2woKSwgTW9ja09wdGlvbnMoKSkKICAgICAgICAgY2hhbmdlbG9nX2NvbnRlbnRzID0gdSIlc1xu
JXMiICUgKHNlbGYuX25ld19lbnRyeV9ib2lsZXJwbGF0ZSwgc2VsZi5fZXhhbXBsZV9jaGFuZ2Vs
b2cpCi0gICAgICAgIGNoYW5nZWxvZ19wYXRoID0gc2VsZi5fd3JpdGVfdG1wX2ZpbGVfd2l0aF9j
b250ZW50cyhjaGFuZ2Vsb2dfY29udGVudHMuZW5jb2RlKCJ1dGYtOCIpKQorICAgICAgICBjaGFu
Z2Vsb2dfcGF0aCA9ICJDaGFuZ2VMb2ciCiAgICAgICAgIHN0YXRlID0gewogICAgICAgICAgICAg
ImJ1Z190aXRsZSI6ICJFeGFtcGxlIHRpdGxlIiwKICAgICAgICAgICAgICJidWdfaWQiOiAxMjM0
LAogICAgICAgICAgICAgImNoYW5nZWxvZ3MiOiBbY2hhbmdlbG9nX3BhdGhdLAogICAgICAgICB9
CisgICAgICAgIHN0ZXAuX3Rvb2wuZmlsZXN5c3RlbSA9IE1vY2tGaWxlU3lzdGVtKCkKKyAgICAg
ICAgc3RlcC5fdG9vbC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZShjaGFuZ2Vsb2dfcGF0aCwg
Y2hhbmdlbG9nX2NvbnRlbnRzKQogICAgICAgICBjYXB0dXJlLmFzc2VydF9vdXRwdXRzKHNlbGYs
IHN0ZXAuX2Vuc3VyZV9idWdfdXJsLCBbc3RhdGVdKQotICAgICAgICBhY3R1YWxfY29udGVudHMg
PSBzZWxmLl9yZWFkX2ZpbGVfY29udGVudHMoY2hhbmdlbG9nX3BhdGgsICJ1dGYtOCIpCisgICAg
ICAgIGFjdHVhbF9jb250ZW50cyA9IHN0ZXAuX3Rvb2wuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmls
ZShjaGFuZ2Vsb2dfcGF0aCkKICAgICAgICAgZXhwZWN0ZWRfbWVzc2FnZSA9ICJFeGFtcGxlIHRp
dGxlXG4gICAgICAgIGh0dHA6Ly9leGFtcGxlLmNvbS8xMjM0IgogICAgICAgICBleHBlY3RlZF9j
b250ZW50cyA9IGNoYW5nZWxvZ19jb250ZW50cy5yZXBsYWNlKCJOZWVkIGEgc2hvcnQgZGVzY3Jp
cHRpb24gKE9PUFMhKS5cbiAgICAgICAgTmVlZCB0aGUgYnVnIFVSTCAoT09QUyEpLiIsIGV4cGVj
dGVkX21lc3NhZ2UpCi0gICAgICAgIG9zLnJlbW92ZShjaGFuZ2Vsb2dfcGF0aCkKLSAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChhY3R1YWxfY29udGVudHMuc3BsaXRsaW5lcygpLCBleHBlY3RlZF9j
b250ZW50cy5zcGxpdGxpbmVzKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsX2Nv
bnRlbnRzLCBleHBlY3RlZF9jb250ZW50cykKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zdGVwcy9wcmVwYXJlY2hhbmdlbG9nZm9ycmV2ZXJ0X3VuaXR0ZXN0LnB5IGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBhcmVjaGFuZ2Vsb2dmb3JyZXZl
cnRfdW5pdHRlc3QucHkKaW5kZXggYTAxNzk4OGEyZGQxMzIwZDgwYjMzMTQ5Y2NlNzA2MmMxOWI2
Y2ZkNy4uM2VjNmU5YTYwYzJjMzAyNDYxZDc0MWFjMTJmOTljMjQwOWM3Mjk0ZCAxMDA2NDQKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBhcmVjaGFuZ2Vsb2dmb3Jy
ZXZlcnRfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBz
L3ByZXBhcmVjaGFuZ2Vsb2dmb3JyZXZlcnRfdW5pdHRlc3QucHkKQEAgLTI2LDI3ICsyNiwxNyBA
QAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotaW1wb3J0IGNvZGVjcwotaW1wb3J0
IG9zCi1pbXBvcnQgdGVtcGZpbGUKIGltcG9ydCB1bml0dGVzdDIgYXMgdW5pdHRlc3QKIAogIyBE
byBub3QgaW1wb3J0IGNoYW5nZWxvZ191bml0dGVzdC5DaGFuZ2VMb2dUZXN0IGRpcmVjdGx5IGFz
IHRoYXQgd2lsbCBjYXVzZSBpdCB0byBiZSBydW4gYWdhaW4uCiBmcm9tIHdlYmtpdHB5LmNvbW1v
bi5jaGVja291dCBpbXBvcnQgY2hhbmdlbG9nX3VuaXR0ZXN0CiAKIGZyb20gd2Via2l0cHkuY29t
bW9uLmNoZWNrb3V0LmNoYW5nZWxvZyBpbXBvcnQgQ2hhbmdlTG9nCitmcm9tIHdlYmtpdHB5LmNv
bW1vbi5zeXN0ZW0uZmlsZXN5c3RlbV9tb2NrIGltcG9ydCBNb2NrRmlsZVN5c3RlbQogZnJvbSB3
ZWJraXRweS50b29sLnN0ZXBzLnByZXBhcmVjaGFuZ2Vsb2dmb3JyZXZlcnQgaW1wb3J0ICoKIAog
CiBjbGFzcyBVcGRhdGVDaGFuZ2VMb2dzRm9yUmV2ZXJ0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6
Ci0gICAgQHN0YXRpY21ldGhvZAotICAgIGRlZiBfd3JpdGVfdG1wX2ZpbGVfd2l0aF9jb250ZW50
cyhieXRlX2FycmF5KToKLSAgICAgICAgYXNzZXJ0KGlzaW5zdGFuY2UoYnl0ZV9hcnJheSwgc3Ry
KSkKLSAgICAgICAgKGZpbGVfZGVzY3JpcHRvciwgZmlsZV9wYXRoKSA9IHRlbXBmaWxlLm1rc3Rl
bXAoKSAgIyBOYW1lZFRlbXBvcmFyeUZpbGUgYWx3YXlzIGRlbGV0ZXMgdGhlIGZpbGUgb24gY2xv
c2UgaW4gcHl0aG9uIDwgMi42Ci0gICAgICAgIHdpdGggb3MuZmRvcGVuKGZpbGVfZGVzY3JpcHRv
ciwgInciKSBhcyBmaWxlOgotICAgICAgICAgICAgZmlsZS53cml0ZShieXRlX2FycmF5KQotICAg
ICAgICByZXR1cm4gZmlsZV9wYXRoCi0KICAgICBfcmV2ZXJ0X2VudHJ5X3dpdGhfYnVnX3VybCA9
ICcnJzIwMDktMDgtMTkgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMjM0NS4KQEAgLTExMCwxMSArMTAwLDExIEBAIGNs
YXNzIFVwZGF0ZUNoYW5nZUxvZ3NGb3JSZXZlcnRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAog
ICAgIGRlZiBfYXNzZXJ0X21lc3NhZ2VfZm9yX3JldmVydF9vdXRwdXQoc2VsZiwgYXJncywgZXhw
ZWN0ZWRfZW50cnkpOgogICAgICAgICBjaGFuZ2Vsb2dfY29udGVudHMgPSB1IiVzXG4lcyIgJSAo
Y2hhbmdlbG9nX3VuaXR0ZXN0LkNoYW5nZUxvZ1Rlc3QuX25ld19lbnRyeV9ib2lsZXJwbGF0ZSwg
Y2hhbmdlbG9nX3VuaXR0ZXN0LkNoYW5nZUxvZ1Rlc3QuX2V4YW1wbGVfY2hhbmdlbG9nKQotICAg
ICAgICBjaGFuZ2Vsb2dfcGF0aCA9IHNlbGYuX3dyaXRlX3RtcF9maWxlX3dpdGhfY29udGVudHMo
Y2hhbmdlbG9nX2NvbnRlbnRzLmVuY29kZSgidXRmLTgiKSkKLSAgICAgICAgY2hhbmdlbG9nID0g
Q2hhbmdlTG9nKGNoYW5nZWxvZ19wYXRoKQorICAgICAgICBjaGFuZ2Vsb2dfcGF0aCA9ICJDaGFu
Z2VMb2ciCisgICAgICAgIGZzID0gTW9ja0ZpbGVTeXN0ZW0oe2NoYW5nZWxvZ19wYXRoOiBjaGFu
Z2Vsb2dfY29udGVudHMuZW5jb2RlKCJ1dGYtOCIpfSkKKyAgICAgICAgY2hhbmdlbG9nID0gQ2hh
bmdlTG9nKGNoYW5nZWxvZ19wYXRoLCBmcykKICAgICAgICAgY2hhbmdlbG9nLnVwZGF0ZV93aXRo
X3VucmV2aWV3ZWRfbWVzc2FnZShQcmVwYXJlQ2hhbmdlTG9nRm9yUmV2ZXJ0Ll9tZXNzYWdlX2Zv
cl9yZXZlcnQoKmFyZ3MpKQogICAgICAgICBhY3R1YWxfZW50cnkgPSBjaGFuZ2Vsb2cubGF0ZXN0
X2VudHJ5KCkKLSAgICAgICAgb3MucmVtb3ZlKGNoYW5nZWxvZ19wYXRoKQogICAgICAgICBzZWxm
LmFzc2VydE11bHRpTGluZUVxdWFsKGFjdHVhbF9lbnRyeS5jb250ZW50cygpLCBleHBlY3RlZF9l
bnRyeSkKICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoYWN0dWFsX2VudHJ5LnJldmlld2VyX3Rl
eHQoKSkKICAgICAgICAgIyBUaGVzZSBjaGVja3MgY291bGQgYmUgcmVtb3ZlZCB0byBhbGxvdyB0
aGlzIHRvIHdvcmsgb24gb3RoZXIgZW50cmllczoK
</data>

          </attachment>
      

    </bug>

</bugzilla>