<?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>216402</bug_id>
          
          <creation_ts>2020-09-11 04:26:01 -0700</creation_ts>
          <short_desc>[webkitscmpy] Add Contributor object</short_desc>
          <delta_ts>2020-09-15 13:04:05 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=215862</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=216404</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zhifei_fang</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1687694</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-11 04:26:01 -0700</bug_when>
    <thetext>Create a class which stores information about contributors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687695</commentid>
    <comment_count>1</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-11 04:27:52 -0700</bug_when>
    <thetext>At some point in the future, this class will be populated by contributors.json, but at the moment, this class is just used to parse out a contributor from changelogs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687696</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-11 04:28:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/68702680&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687701</commentid>
    <comment_count>3</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-11 04:37:26 -0700</bug_when>
    <thetext>This change is being used to support https://bugs.webkit.org/show_bug.cgi?id=216404</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687727</commentid>
    <comment_count>4</comment_count>
      <attachid>408535</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-11 08:41:43 -0700</bug_when>
    <thetext>Created attachment 408535
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688789</commentid>
    <comment_count>5</comment_count>
      <attachid>408535</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2020-09-15 11:55:47 -0700</bug_when>
    <thetext>Comment on attachment 408535
Patch

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

&gt; Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py:49
&gt; +version = Version(0, 0, 5)

why do we bump version number by 2?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688798</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-15 12:26:59 -0700</bug_when>
    <thetext>(In reply to dewei_zhu from comment #5)
&gt; Comment on attachment 408535 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=408535&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py:49
&gt; &gt; +version = Version(0, 0, 5)
&gt; 
&gt; why do we bump version number by 2?

Because https://bugs.webkit.org/show_bug.cgi?id=216422 was also in-flight.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688799</commentid>
    <comment_count>7</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-15 12:31:00 -0700</bug_when>
    <thetext>(In reply to Jonathan Bedard from comment #6)
&gt; (In reply to dewei_zhu from comment #5)
&gt; &gt; Comment on attachment 408535 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=408535&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py:49
&gt; &gt; &gt; +version = Version(0, 0, 5)
&gt; &gt; 
&gt; &gt; why do we bump version number by 2?
&gt; 
&gt; Because https://bugs.webkit.org/show_bug.cgi?id=216422 was also in-flight.

Now, I forgot to bump the version in that patch, so it turns out that is mistake!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688803</commentid>
    <comment_count>8</comment_count>
      <attachid>408845</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-15 12:40:34 -0700</bug_when>
    <thetext>Created attachment 408845
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688816</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-15 13:04:04 -0700</bug_when>
    <thetext>Committed r267096: &lt;https://trac.webkit.org/changeset/267096&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 408845.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408535</attachid>
            <date>2020-09-11 08:41:43 -0700</date>
            <delta_ts>2020-09-15 12:40:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216402-20200911094141.patch</filename>
            <type>text/plain</type>
            <size>11899</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2NjkxOCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQxIEBACisyMDIwLTA5LTExICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbd2Via2l0c2NtcHldIEFkZCBDb250cmlidXRvciBvYmplY3QKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjQwMgorICAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzY4NzAyNjgwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Vi
a2l0c2NtcHkvX19pbml0X18ucHk6CisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0
c2NtcHkvd2Via2l0c2NtcHkvY29udHJpYnV0b3IucHk6IEFkZGVkLgorICAgICAgICAoQ29udHJp
YnV0b3IpOiBPYmplY3QgbWFwcGluZyBhIGNvbnRyaWJ1dG9yIGJ5IG5hbWUgdG8gdGhlaXIgYXNz
b2NpYXRlZCBlbWFpbCBhZGRyZXNzZXMuCisgICAgICAgIChDb250cmlidXRvci5jbGVhcik6IENs
ZWFyIHRoZSBpbi1tZW1vcnkgY2FjaGUgb2YgQ29udHJpYnV0b3Igb2JqZWN0cy4KKyAgICAgICAg
KENvbnRyaWJ1dG9yLmZyb21fc2NtX2xvZyk6IEZpbmQgb3IgZ2VuZXJhdGUgYSBDb250cmlidXRv
ciBvYmplY3QgZ2l2ZW4gYSBjb21taXQgbG9nIGxpbmUgZnJvbQorICAgICAgICBhbiBTQ00gdG9v
bC4KKyAgICAgICAgKENvbnRyaWJ1dG9yLl9faW5pdF9fKToKKyAgICAgICAgKENvbnRyaWJ1dG9y
LmVtYWlsKTogUmV0dXJuIGEgc2luZ2xlIGVtYWlsIGZvciBhIENvbnRyaWJ1dG9yLgorICAgICAg
ICAoQ29udHJpYnV0b3IuX19yZXByX18pOgorICAgICAgICAoQ29udHJpYnV0b3IuX19oYXNoX18p
OgorICAgICAgICAoQ29udHJpYnV0b3IuX19jbXBfXyk6CisgICAgICAgIChDb250cmlidXRvci5f
X2VxX18pOgorICAgICAgICAoQ29udHJpYnV0b3IuX19uZV9fKToKKyAgICAgICAgKENvbnRyaWJ1
dG9yLl9fbHRfXyk6CisgICAgICAgIChDb250cmlidXRvci5fX2xlX18pOgorICAgICAgICAoQ29u
dHJpYnV0b3IuX19ndF9fKToKKyAgICAgICAgKENvbnRyaWJ1dG9yLl9fZ2VfXyk6CisgICAgICAg
ICogU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvdGVzdC9jb250cmli
dXRvcl91bml0dGVzdC5weTogQWRkZWQuCisgICAgICAgIChUZXN0Q29udHJpYnV0b3IpOgorICAg
ICAgICAoVGVzdENvbnRyaWJ1dG9yLnRlc3RfZ2l0X2xvZyk6CisgICAgICAgIChUZXN0Q29udHJp
YnV0b3IudGVzdF9zdm5fbG9nKToKKyAgICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0X3N2bl9w
YXRjaF9ieV9sb2cpOgorICAgICAgICAoVGVzdENvbnRyaWJ1dG9yLnRlc3RfYXV0aG9yX21hcHBp
bmcpOgorICAgICAgICAoVGVzdENvbnRyaWJ1dG9yLnRlc3RfZW1haWxfbWFwcGluZyk6CisgICAg
ICAgIChUZXN0Q29udHJpYnV0b3IudGVzdF9pbnZhbGlkX2xvZyk6CisgICAgICAgIChUZXN0Q29u
dHJpYnV0b3IudGVzdF9jb21wYXJpc29uKToKKyAgICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0
X3N0cmluZ19jb21wYXJpc29uKToKKyAgICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0X2hhc2gp
OgorICAgICAgICAoVGVzdENvbnRyaWJ1dG9yLnRlc3Rfc29ydGluZyk6CisKIDIwMjAtMDktMTAg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBy
ZXZlcnRpbmcgcjI2Njg0MiBhbmQgcjI2Njg4My4KSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFy
aWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L19faW5pdF9fLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L19faW5pdF9fLnB5
CShyZXZpc2lvbiAyNjY5MTgpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21w
eS93ZWJraXRzY21weS9fX2luaXRfXy5weQkod29ya2luZyBjb3B5KQpAQCAtNDYsNyArNDYsOSBA
QCBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgICAgICJQbGVhc2UgaW5zdGFsbCB3ZWJraXRjb3Jl
cHkgd2l0aCBgcGlwIGluc3RhbGwgd2Via2l0Y29yZXB5IC0tZXh0cmEtaW5kZXgtdXJsIDxwYWNr
YWdlIGluZGV4IFVSTD5gIgogICAgICkKIAotdmVyc2lvbiA9IFZlcnNpb24oMCwgMCwgMykKK3Zl
cnNpb24gPSBWZXJzaW9uKDAsIDAsIDUpCisKK2Zyb20gd2Via2l0c2NtcHkuY29udHJpYnV0b3Ig
aW1wb3J0IENvbnRyaWJ1dG9yCiAKIGZyb20gd2Via2l0c2NtcHkgaW1wb3J0IGxvY2FsCiBmcm9t
IHdlYmtpdHNjbXB5IGltcG9ydCBtb2NrcwpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMv
d2Via2l0c2NtcHkvd2Via2l0c2NtcHkvY29udHJpYnV0b3IucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvY29udHJpYnV0b3Iu
cHkJKG5vbmV4aXN0ZW50KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkv
d2Via2l0c2NtcHkvY29udHJpYnV0b3IucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMDkg
QEAKKyMgQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiAgUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMg
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKKyMgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyMgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorIyBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorIyBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisjIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SCisjIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisjIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
CisjIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK2ltcG9ydCByZQorCisK
K2NsYXNzIENvbnRyaWJ1dG9yKG9iamVjdCk6CisgICAgR0lUX0FVVEhPUl9SRSA9IHJlLmNvbXBp
bGUocidBdXRob3I6ICg/UDxhdXRob3I+LiopIDwoP1A8ZW1haWw+LiopPicpCisgICAgU1ZOX0FV
VEhPUl9SRSA9IHJlLmNvbXBpbGUocidyXGQrIFx8ICg/UDxlbWFpbD4uKikgXHwgKD9QPGRhdGU+
LiopIFx8IFxkKyBsaW5lcycpCisgICAgU1ZOX1BBVENIX0ZST01fUkUgPSByZS5jb21waWxlKHIn
UGF0Y2ggYnkgKD9QPGF1dGhvcj4uKikgPCg/UDxlbWFpbD4uKik+IG9uIFxkKy1cZCstXGQrJykK
KworICAgIGJ5X2VtYWlsID0gZGljdCgpCisgICAgYnlfbmFtZSA9IGRpY3QoKQorCisgICAgQGNs
YXNzbWV0aG9kCisgICAgZGVmIGNsZWFyKGNscyk6CisgICAgICAgIGNscy5ieV9lbWFpbCA9IGRp
Y3QoKQorICAgICAgICBjbHMuYnlfbmFtZSA9IGRpY3QoKQorCisgICAgQGNsYXNzbWV0aG9kCisg
ICAgZGVmIGZyb21fc2NtX2xvZyhjbHMsIGxpbmUpOgorICAgICAgICBhdXRob3IgPSBOb25lCisK
KyAgICAgICAgZm9yIGV4cHJlc3Npb24gaW4gW2Nscy5HSVRfQVVUSE9SX1JFLCBjbHMuU1ZOX0FV
VEhPUl9SRSwgY2xzLlNWTl9QQVRDSF9GUk9NX1JFXToKKyAgICAgICAgICAgIG1hdGNoID0gZXhw
cmVzc2lvbi5tYXRjaChsaW5lKQorICAgICAgICAgICAgaWYgbWF0Y2g6CisgICAgICAgICAgICAg
ICAgaWYgJ2F1dGhvcicgaW4gZXhwcmVzc2lvbi5ncm91cGluZGV4OgorICAgICAgICAgICAgICAg
ICAgICBhdXRob3IgPSBtYXRjaC5ncm91cCgnYXV0aG9yJykKKyAgICAgICAgICAgICAgICBlbWFp
bCA9IG1hdGNoLmdyb3VwKCdlbWFpbCcpCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAg
ZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIid7fScgZG9lcyBub3QgbWF0Y2gg
YSBrbm93biBTQ00gbG9nIikKKworICAgICAgICBjb250cmlidXRvciA9IGNscy5ieV9uYW1lLmdl
dChhdXRob3Igb3IgZW1haWwpCisgICAgICAgIGlmIG5vdCBjb250cmlidXRvcjoKKyAgICAgICAg
ICAgIGNvbnRyaWJ1dG9yID0gY2xzLmJ5X2VtYWlsLmdldChlbWFpbCkKKworICAgICAgICBpZiBu
b3QgY29udHJpYnV0b3I6CisgICAgICAgICAgICBjb250cmlidXRvciA9IGNscyhhdXRob3Igb3Ig
ZW1haWwsIGVtYWlscz1bZW1haWxdKQorICAgICAgICAgICAgY2xzLmJ5X25hbWVbY29udHJpYnV0
b3IubmFtZV0gPSBjb250cmlidXRvcgorICAgICAgICBlbGlmIGVtYWlsIG5vdCBpbiBjb250cmli
dXRvci5lbWFpbHM6CisgICAgICAgICAgICBjb250cmlidXRvci5lbWFpbHMuYXBwZW5kKGVtYWls
KQorCisgICAgICAgIGNscy5ieV9uYW1lW2VtYWlsXSA9IGNvbnRyaWJ1dG9yCisgICAgICAgIHJl
dHVybiBjb250cmlidXRvcgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIGVtYWlscz1O
b25lKToKKyAgICAgICAgc2VsZi5uYW1lID0gbmFtZQorICAgICAgICBzZWxmLmVtYWlscyA9IGVt
YWlscyBvciBbXQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGVtYWlsKHNlbGYpOgorICAgICAg
ICBpZiBub3Qgc2VsZi5lbWFpbHM6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBy
ZXR1cm4gc2VsZi5lbWFpbHNbMF0KKworICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKKyAgICAgICAg
cmV0dXJuICd7fSA8e30+Jy5mb3JtYXQoc2VsZi5uYW1lLCBzZWxmLmVtYWlsKQorCisgICAgZGVm
IF9faGFzaF9fKHNlbGYpOgorICAgICAgICByZXR1cm4gaGFzaChzZWxmLm5hbWUpCisKKyAgICBk
ZWYgX19jbXBfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIGlmIGlzaW5zdGFuY2Uob3RoZXIsIHN0
cik6CisgICAgICAgICAgICByZWZfdmFsdWUgPSBvdGhlcgorICAgICAgICBlbGlmIGlzaW5zdGFu
Y2Uob3RoZXIsIENvbnRyaWJ1dG9yKToKKyAgICAgICAgICAgIHJlZl92YWx1ZSA9IG90aGVyLm5h
bWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0Nhbm5vdCBj
b21wYXJlIHt9IHdpdGgge30nLmZvcm1hdChDb250cmlidXRvciwgdHlwZShvdGhlcikpKQorICAg
ICAgICBpZiBzZWxmLm5hbWUgPT0gcmVmX3ZhbHVlOgorICAgICAgICAgICAgcmV0dXJuIDAKKyAg
ICAgICAgcmV0dXJuIDEgaWYgc2VsZi5uYW1lID4gcmVmX3ZhbHVlIGVsc2UgLTEKKworICAgIGRl
ZiBfX2VxX18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gc2VsZi5fX2NtcF9fKG90aGVy
KSA9PSAwCisKKyAgICBkZWYgX19uZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNl
bGYuX19jbXBfXyhvdGhlcikgIT0gMAorCisgICAgZGVmIF9fbHRfXyhzZWxmLCBvdGhlcik6Cisg
ICAgICAgIHJldHVybiBzZWxmLl9fY21wX18ob3RoZXIpIDwgMAorCisgICAgZGVmIF9fbGVfXyhz
ZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBzZWxmLl9fY21wX18ob3RoZXIpIDw9IDAKKwor
ICAgIGRlZiBfX2d0X18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gc2VsZi5fX2NtcF9f
KG90aGVyKSA+IDAKKworICAgIGRlZiBfX2dlX18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1
cm4gc2VsZi5fX2NtcF9fKG90aGVyKSA+PSAwCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmll
cy93ZWJraXRzY21weS93ZWJraXRzY21weS90ZXN0L2NvbnRyaWJ1dG9yX3VuaXR0ZXN0LnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNj
bXB5L3Rlc3QvY29udHJpYnV0b3JfdW5pdHRlc3QucHkJKG5vbmV4aXN0ZW50KQorKysgVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvdGVzdC9jb250cmlidXRv
cl91bml0dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEwOCBAQAorIyBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyAiQVMgSVMiIEFORAorIyBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisj
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SCisjIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IK
KyMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIKKyMgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyMgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IHVuaXR0ZXN0CisKK2Zyb20gd2Vi
a2l0c2NtcHkgaW1wb3J0IENvbnRyaWJ1dG9yCisKKworY2xhc3MgVGVzdENvbnRyaWJ1dG9yKHVu
aXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgdGVzdF9naXRfbG9nKHNlbGYpOgorICAgICAgICBD
b250cmlidXRvci5jbGVhcigpCisgICAgICAgIGNvbnRyaWJ1dG9yID0gQ29udHJpYnV0b3IuZnJv
bV9zY21fbG9nKCdBdXRob3I6IEpvbmF0aGFuIEJlZGFyZCA8amJlZGFyZEBhcHBsZS5jb20+JykK
KworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLm5hbWUsICdKb25hdGhhbiBC
ZWRhcmQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLmVtYWlscywgWydq
YmVkYXJkQGFwcGxlLmNvbSddKQorCisgICAgZGVmIHRlc3Rfc3ZuX2xvZyhzZWxmKToKKyAgICAg
ICAgQ29udHJpYnV0b3IuY2xlYXIoKQorICAgICAgICBjb250cmlidXRvciA9IENvbnRyaWJ1dG9y
LmZyb21fc2NtX2xvZygncjI2Njc1MSB8IGpiZWRhcmRAYXBwbGUuY29tIHwgMjAyMC0wOS0wOCAx
NDozMzo0MiAtMDcwMCAoVHVlLCAwOCBTZXAgMjAyMCkgfCAxMCBsaW5lcycpCisKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChjb250cmlidXRvci5uYW1lLCAnamJlZGFyZEBhcHBsZS5jb20nKQor
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLmVtYWlscywgWydqYmVkYXJkQGFw
cGxlLmNvbSddKQorCisgICAgZGVmIHRlc3Rfc3ZuX3BhdGNoX2J5X2xvZyhzZWxmKToKKyAgICAg
ICAgQ29udHJpYnV0b3IuY2xlYXIoKQorICAgICAgICBjb250cmlidXRvciA9IENvbnRyaWJ1dG9y
LmZyb21fc2NtX2xvZygnUGF0Y2ggYnkgSm9uYXRoYW4gQmVkYXJkIDxqYmVkYXJkQGFwcGxlLmNv
bT4gb24gMjAyMC0wOS0xMCcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250cmlidXRv
ci5uYW1lLCAnSm9uYXRoYW4gQmVkYXJkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250
cmlidXRvci5lbWFpbHMsIFsnamJlZGFyZEBhcHBsZS5jb20nXSkKKworICAgIGRlZiB0ZXN0X2F1
dGhvcl9tYXBwaW5nKHNlbGYpOgorICAgICAgICBDb250cmlidXRvci5jbGVhcigpCisgICAgICAg
IENvbnRyaWJ1dG9yLmZyb21fc2NtX2xvZygnQXV0aG9yOiBKb25hdGhhbiBCZWRhcmQgPGpiZWRh
cmRAYXBwbGUuY29tPicpCisgICAgICAgIGNvbnRyaWJ1dG9yID0gQ29udHJpYnV0b3IuZnJvbV9z
Y21fbG9nKCdBdXRob3I6IEpvbmF0aGFuIEJlZGFyZCA8amJlZGFyZEB3ZWJraXQub3JnPicpCisK
KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250cmlidXRvci5uYW1lLCAnSm9uYXRoYW4gQmVk
YXJkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250cmlidXRvci5lbWFpbHMsIFsnamJl
ZGFyZEBhcHBsZS5jb20nLCAnamJlZGFyZEB3ZWJraXQub3JnJ10pCisKKyAgICBkZWYgdGVzdF9l
bWFpbF9tYXBwaW5nKHNlbGYpOgorICAgICAgICBDb250cmlidXRvci5jbGVhcigpCisgICAgICAg
IENvbnRyaWJ1dG9yLmZyb21fc2NtX2xvZygnQXV0aG9yOiBKb25hdGhhbiBCZWRhcmQgPGpiZWRh
cmRAYXBwbGUuY29tPicpCisgICAgICAgIGNvbnRyaWJ1dG9yID0gQ29udHJpYnV0b3IuZnJvbV9z
Y21fbG9nKCdyMjY2NzUxIHwgamJlZGFyZEBhcHBsZS5jb20gfCAyMDIwLTA5LTA4IDE0OjMzOjQy
IC0wNzAwIChUdWUsIDA4IFNlcCAyMDIwKSB8IDEwIGxpbmVzJykKKworICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKGNvbnRyaWJ1dG9yLm5hbWUsICdKb25hdGhhbiBCZWRhcmQnKQorICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLmVtYWlscywgWydqYmVkYXJkQGFwcGxlLmNvbSdd
KQorCisgICAgZGVmIHRlc3RfaW52YWxpZF9sb2coc2VsZik6CisgICAgICAgIENvbnRyaWJ1dG9y
LmNsZWFyKCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAg
ICAgICAgICAgIENvbnRyaWJ1dG9yLmZyb21fc2NtX2xvZygnSm9uYXRoYW4gQmVkYXJkIDxqYmVk
YXJkQGFwcGxlLmNvbT4nKQorCisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKKyAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIENvbnRyaWJ1dG9yKCdKb25hdGhhbiBC
ZWRhcmQnLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pLAorICAgICAgICAgICAgQ29udHJpYnV0b3Io
J0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFyZEB3ZWJraXQub3JnJ10pLAorICAgICAgICApCisK
KyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCgKKyAgICAgICAgICAgIENvbnRyaWJ1dG9yKCdK
b25hdGhhbiBCZWRhcmQnLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pLAorICAgICAgICAgICAgQ29u
dHJpYnV0b3IoJ0Fha2FzaCBKYWluJywgWydhYWthc2hqYWluQGFwcGxlLmNvbSddKSwKKyAgICAg
ICAgKQorCisgICAgZGVmIHRlc3Rfc3RyaW5nX2NvbXBhcmlzb24oc2VsZik6CisgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBDb250cmlidXRvcignSm9uYXRoYW4gQmVkYXJk
JywgWydqYmVkYXJkQGFwcGxlLmNvbSddKSwKKyAgICAgICAgICAgICdKb25hdGhhbiBCZWRhcmQn
LAorICAgICAgICApCisKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCgKKyAgICAgICAgICAg
IENvbnRyaWJ1dG9yKCdKb25hdGhhbiBCZWRhcmQnLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pLAor
ICAgICAgICAgICAgJ0Fha2FzaCBKYWluJywKKyAgICAgICAgKQorCisgICAgZGVmIHRlc3RfaGFz
aChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIGhhc2goQ29u
dHJpYnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFyZEBhcHBsZS5jb20nXSkpLAorICAg
ICAgICAgICAgaGFzaChDb250cmlidXRvcignSm9uYXRoYW4gQmVkYXJkJywgWydqYmVkYXJkQHdl
YmtpdC5vcmcnXSkpLAorICAgICAgICApCisKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCgK
KyAgICAgICAgICAgIGhhc2goQ29udHJpYnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFy
ZEBhcHBsZS5jb20nXSkpLAorICAgICAgICAgICAgaGFzaChDb250cmlidXRvcignQWFrYXNoIEph
aW4nLCBbJ2Fha2FzaGphaW5AYXBwbGUuY29tJ10pKSwKKyAgICAgICAgKQorCisgICAgZGVmIHRl
c3Rfc29ydGluZyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAg
IHNvcnRlZChbQ29udHJpYnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcpLCBDb250cmlidXRvcignQWFr
YXNoIEphaW4nKV0pLAorICAgICAgICAgICAgW0NvbnRyaWJ1dG9yKCdBYWthc2ggSmFpbicpLCBD
b250cmlidXRvcignSm9uYXRoYW4gQmVkYXJkJyldLAorICAgICAgICApCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408845</attachid>
            <date>2020-09-15 12:40:34 -0700</date>
            <delta_ts>2020-09-15 13:04:04 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-216402-20200915124033.patch</filename>
            <type>text/plain</type>
            <size>11916</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2NzA5NCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQxIEBACisyMDIwLTA5LTE1ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbd2Via2l0c2NtcHldIEFkZCBDb250cmlidXRvciBvYmplY3QKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjQwMgorICAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzY4NzAyNjgwPgorCisgICAgICAgIFJldmlld2VkIGJ5IERld2Vp
IFpodS4KKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNj
bXB5L19faW5pdF9fLnB5OgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5
L3dlYmtpdHNjbXB5L2NvbnRyaWJ1dG9yLnB5OiBBZGRlZC4KKyAgICAgICAgKENvbnRyaWJ1dG9y
KTogT2JqZWN0IG1hcHBpbmcgYSBjb250cmlidXRvciBieSBuYW1lIHRvIHRoZWlyIGFzc29jaWF0
ZWQgZW1haWwgYWRkcmVzc2VzLgorICAgICAgICAoQ29udHJpYnV0b3IuY2xlYXIpOiBDbGVhciB0
aGUgaW4tbWVtb3J5IGNhY2hlIG9mIENvbnRyaWJ1dG9yIG9iamVjdHMuCisgICAgICAgIChDb250
cmlidXRvci5mcm9tX3NjbV9sb2cpOiBGaW5kIG9yIGdlbmVyYXRlIGEgQ29udHJpYnV0b3Igb2Jq
ZWN0IGdpdmVuIGEgY29tbWl0IGxvZyBsaW5lIGZyb20KKyAgICAgICAgYW4gU0NNIHRvb2wuCisg
ICAgICAgIChDb250cmlidXRvci5fX2luaXRfXyk6CisgICAgICAgIChDb250cmlidXRvci5lbWFp
bCk6IFJldHVybiBhIHNpbmdsZSBlbWFpbCBmb3IgYSBDb250cmlidXRvci4KKyAgICAgICAgKENv
bnRyaWJ1dG9yLl9fcmVwcl9fKToKKyAgICAgICAgKENvbnRyaWJ1dG9yLl9faGFzaF9fKToKKyAg
ICAgICAgKENvbnRyaWJ1dG9yLl9fY21wX18pOgorICAgICAgICAoQ29udHJpYnV0b3IuX19lcV9f
KToKKyAgICAgICAgKENvbnRyaWJ1dG9yLl9fbmVfXyk6CisgICAgICAgIChDb250cmlidXRvci5f
X2x0X18pOgorICAgICAgICAoQ29udHJpYnV0b3IuX19sZV9fKToKKyAgICAgICAgKENvbnRyaWJ1
dG9yLl9fZ3RfXyk6CisgICAgICAgIChDb250cmlidXRvci5fX2dlX18pOgorICAgICAgICAqIFNj
cmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L3Rlc3QvY29udHJpYnV0b3Jf
dW5pdHRlc3QucHk6IEFkZGVkLgorICAgICAgICAoVGVzdENvbnRyaWJ1dG9yKToKKyAgICAgICAg
KFRlc3RDb250cmlidXRvci50ZXN0X2dpdF9sb2cpOgorICAgICAgICAoVGVzdENvbnRyaWJ1dG9y
LnRlc3Rfc3ZuX2xvZyk6CisgICAgICAgIChUZXN0Q29udHJpYnV0b3IudGVzdF9zdm5fcGF0Y2hf
YnlfbG9nKToKKyAgICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0X2F1dGhvcl9tYXBwaW5nKToK
KyAgICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0X2VtYWlsX21hcHBpbmcpOgorICAgICAgICAo
VGVzdENvbnRyaWJ1dG9yLnRlc3RfaW52YWxpZF9sb2cpOgorICAgICAgICAoVGVzdENvbnRyaWJ1
dG9yLnRlc3RfY29tcGFyaXNvbik6CisgICAgICAgIChUZXN0Q29udHJpYnV0b3IudGVzdF9zdHJp
bmdfY29tcGFyaXNvbik6CisgICAgICAgIChUZXN0Q29udHJpYnV0b3IudGVzdF9oYXNoKToKKyAg
ICAgICAgKFRlc3RDb250cmlidXRvci50ZXN0X3NvcnRpbmcpOgorCiAyMDIwLTA5LTE1ICBKb25h
dGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAogICAgICAgICBbd2Via2l0c2NtcHld
IEFkZCBkZWZhdWx0X2JyYW5jaCBmb3IgbG9jYWwgU0NNIHJlcG9zaXRvcmllcwpJbmRleDogVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvX19pbml0X18ucHkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0
c2NtcHkvX19pbml0X18ucHkJKHJldmlzaW9uIDI2NzA5NCkKKysrIFRvb2xzL1NjcmlwdHMvbGli
cmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L19faW5pdF9fLnB5CSh3b3JraW5nIGNvcHkp
CkBAIC00Niw3ICs0Niw5IEBAIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICAgICAgIlBsZWFzZSBp
bnN0YWxsIHdlYmtpdGNvcmVweSB3aXRoIGBwaXAgaW5zdGFsbCB3ZWJraXRjb3JlcHkgLS1leHRy
YS1pbmRleC11cmwgPHBhY2thZ2UgaW5kZXggVVJMPmAiCiAgICAgKQogCi12ZXJzaW9uID0gVmVy
c2lvbigwLCAwLCAzKQordmVyc2lvbiA9IFZlcnNpb24oMCwgMCwgNCkKKworZnJvbSB3ZWJraXRz
Y21weS5jb250cmlidXRvciBpbXBvcnQgQ29udHJpYnV0b3IKIAogZnJvbSB3ZWJraXRzY21weSBp
bXBvcnQgbG9jYWwKIGZyb20gd2Via2l0c2NtcHkgaW1wb3J0IG1vY2tzCkluZGV4OiBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9jb250cmlidXRvci5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRz
Y21weS9jb250cmlidXRvci5weQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9TY3JpcHRzL2xpYnJh
cmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9jb250cmlidXRvci5weQkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDEwOSBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6
CisjIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyMgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorIyBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisjIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyMgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwKKyMgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KworaW1wb3J0IHJlCisKKworY2xhc3MgQ29udHJpYnV0b3Iob2JqZWN0KToKKyAgICBHSVRfQVVU
SE9SX1JFID0gcmUuY29tcGlsZShyJ0F1dGhvcjogKD9QPGF1dGhvcj4uKikgPCg/UDxlbWFpbD4u
Kik+JykKKyAgICBTVk5fQVVUSE9SX1JFID0gcmUuY29tcGlsZShyJ3JcZCsgXHwgKD9QPGVtYWls
Pi4qKSBcfCAoP1A8ZGF0ZT4uKikgXHwgXGQrIGxpbmVzJykKKyAgICBTVk5fUEFUQ0hfRlJPTV9S
RSA9IHJlLmNvbXBpbGUocidQYXRjaCBieSAoP1A8YXV0aG9yPi4qKSA8KD9QPGVtYWlsPi4qKT4g
b24gXGQrLVxkKy1cZCsnKQorCisgICAgYnlfZW1haWwgPSBkaWN0KCkKKyAgICBieV9uYW1lID0g
ZGljdCgpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgY2xlYXIoY2xzKToKKyAgICAgICAg
Y2xzLmJ5X2VtYWlsID0gZGljdCgpCisgICAgICAgIGNscy5ieV9uYW1lID0gZGljdCgpCisKKyAg
ICBAY2xhc3NtZXRob2QKKyAgICBkZWYgZnJvbV9zY21fbG9nKGNscywgbGluZSk6CisgICAgICAg
IGF1dGhvciA9IE5vbmUKKworICAgICAgICBmb3IgZXhwcmVzc2lvbiBpbiBbY2xzLkdJVF9BVVRI
T1JfUkUsIGNscy5TVk5fQVVUSE9SX1JFLCBjbHMuU1ZOX1BBVENIX0ZST01fUkVdOgorICAgICAg
ICAgICAgbWF0Y2ggPSBleHByZXNzaW9uLm1hdGNoKGxpbmUpCisgICAgICAgICAgICBpZiBtYXRj
aDoKKyAgICAgICAgICAgICAgICBpZiAnYXV0aG9yJyBpbiBleHByZXNzaW9uLmdyb3VwaW5kZXg6
CisgICAgICAgICAgICAgICAgICAgIGF1dGhvciA9IG1hdGNoLmdyb3VwKCdhdXRob3InKQorICAg
ICAgICAgICAgICAgIGVtYWlsID0gbWF0Y2guZ3JvdXAoJ2VtYWlsJykKKyAgICAgICAgICAgICAg
ICBicmVhaworICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiJ3t9
JyBkb2VzIG5vdCBtYXRjaCBhIGtub3duIFNDTSBsb2ciKQorCisgICAgICAgIGNvbnRyaWJ1dG9y
ID0gY2xzLmJ5X25hbWUuZ2V0KGF1dGhvciBvciBlbWFpbCkKKyAgICAgICAgaWYgbm90IGNvbnRy
aWJ1dG9yOgorICAgICAgICAgICAgY29udHJpYnV0b3IgPSBjbHMuYnlfZW1haWwuZ2V0KGVtYWls
KQorCisgICAgICAgIGlmIG5vdCBjb250cmlidXRvcjoKKyAgICAgICAgICAgIGNvbnRyaWJ1dG9y
ID0gY2xzKGF1dGhvciBvciBlbWFpbCwgZW1haWxzPVtlbWFpbF0pCisgICAgICAgICAgICBjbHMu
YnlfbmFtZVtjb250cmlidXRvci5uYW1lXSA9IGNvbnRyaWJ1dG9yCisgICAgICAgIGVsaWYgZW1h
aWwgbm90IGluIGNvbnRyaWJ1dG9yLmVtYWlsczoKKyAgICAgICAgICAgIGNvbnRyaWJ1dG9yLmVt
YWlscy5hcHBlbmQoZW1haWwpCisKKyAgICAgICAgY2xzLmJ5X25hbWVbZW1haWxdID0gY29udHJp
YnV0b3IKKyAgICAgICAgcmV0dXJuIGNvbnRyaWJ1dG9yCisKKyAgICBkZWYgX19pbml0X18oc2Vs
ZiwgbmFtZSwgZW1haWxzPU5vbmUpOgorICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCisgICAgICAg
IHNlbGYuZW1haWxzID0gZW1haWxzIG9yIFtdCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgZW1h
aWwoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLmVtYWlsczoKKyAgICAgICAgICAgIHJldHVy
biBOb25lCisgICAgICAgIHJldHVybiBzZWxmLmVtYWlsc1swXQorCisgICAgZGVmIF9fcmVwcl9f
KHNlbGYpOgorICAgICAgICByZXR1cm4gJ3t9IDx7fT4nLmZvcm1hdChzZWxmLm5hbWUsIHNlbGYu
ZW1haWwpCisKKyAgICBkZWYgX19oYXNoX18oc2VsZik6CisgICAgICAgIHJldHVybiBoYXNoKHNl
bGYubmFtZSkKKworICAgIGRlZiBfX2NtcF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgaWYgaXNp
bnN0YW5jZShvdGhlciwgc3RyKToKKyAgICAgICAgICAgIHJlZl92YWx1ZSA9IG90aGVyCisgICAg
ICAgIGVsaWYgaXNpbnN0YW5jZShvdGhlciwgQ29udHJpYnV0b3IpOgorICAgICAgICAgICAgcmVm
X3ZhbHVlID0gb3RoZXIubmFtZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFs
dWVFcnJvcignQ2Fubm90IGNvbXBhcmUge30gd2l0aCB7fScuZm9ybWF0KENvbnRyaWJ1dG9yLCB0
eXBlKG90aGVyKSkpCisgICAgICAgIGlmIHNlbGYubmFtZSA9PSByZWZfdmFsdWU6CisgICAgICAg
ICAgICByZXR1cm4gMAorICAgICAgICByZXR1cm4gMSBpZiBzZWxmLm5hbWUgPiByZWZfdmFsdWUg
ZWxzZSAtMQorCisgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBz
ZWxmLl9fY21wX18ob3RoZXIpID09IDAKKworICAgIGRlZiBfX25lX18oc2VsZiwgb3RoZXIpOgor
ICAgICAgICByZXR1cm4gc2VsZi5fX2NtcF9fKG90aGVyKSAhPSAwCisKKyAgICBkZWYgX19sdF9f
KHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX19jbXBfXyhvdGhlcikgPCAwCisK
KyAgICBkZWYgX19sZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX19jbXBf
XyhvdGhlcikgPD0gMAorCisgICAgZGVmIF9fZ3RfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJl
dHVybiBzZWxmLl9fY21wX18ob3RoZXIpID4gMAorCisgICAgZGVmIF9fZ2VfXyhzZWxmLCBvdGhl
cik6CisgICAgICAgIHJldHVybiBzZWxmLl9fY21wX18ob3RoZXIpID49IDAKSW5kZXg6IFRvb2xz
L1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L3Rlc3QvY29udHJpYnV0
b3JfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Vi
a2l0c2NtcHkvd2Via2l0c2NtcHkvdGVzdC9jb250cmlidXRvcl91bml0dGVzdC5weQkobm9uZXhp
c3RlbnQpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21w
eS90ZXN0L2NvbnRyaWJ1dG9yX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
MTA4IEBACisjIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMgMS4gIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisjIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisj
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIyBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLAorIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitpbXBvcnQgdW5p
dHRlc3QKKworZnJvbSB3ZWJraXRzY21weSBpbXBvcnQgQ29udHJpYnV0b3IKKworCitjbGFzcyBU
ZXN0Q29udHJpYnV0b3IodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiB0ZXN0X2dpdF9sb2co
c2VsZik6CisgICAgICAgIENvbnRyaWJ1dG9yLmNsZWFyKCkKKyAgICAgICAgY29udHJpYnV0b3Ig
PSBDb250cmlidXRvci5mcm9tX3NjbV9sb2coJ0F1dGhvcjogSm9uYXRoYW4gQmVkYXJkIDxqYmVk
YXJkQGFwcGxlLmNvbT4nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udHJpYnV0b3Iu
bmFtZSwgJ0pvbmF0aGFuIEJlZGFyZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udHJp
YnV0b3IuZW1haWxzLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pCisKKyAgICBkZWYgdGVzdF9zdm5f
bG9nKHNlbGYpOgorICAgICAgICBDb250cmlidXRvci5jbGVhcigpCisgICAgICAgIGNvbnRyaWJ1
dG9yID0gQ29udHJpYnV0b3IuZnJvbV9zY21fbG9nKCdyMjY2NzUxIHwgamJlZGFyZEBhcHBsZS5j
b20gfCAyMDIwLTA5LTA4IDE0OjMzOjQyIC0wNzAwIChUdWUsIDA4IFNlcCAyMDIwKSB8IDEwIGxp
bmVzJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLm5hbWUsICdqYmVk
YXJkQGFwcGxlLmNvbScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udHJpYnV0b3IuZW1h
aWxzLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pCisKKyAgICBkZWYgdGVzdF9zdm5fcGF0Y2hfYnlf
bG9nKHNlbGYpOgorICAgICAgICBDb250cmlidXRvci5jbGVhcigpCisgICAgICAgIGNvbnRyaWJ1
dG9yID0gQ29udHJpYnV0b3IuZnJvbV9zY21fbG9nKCdQYXRjaCBieSBKb25hdGhhbiBCZWRhcmQg
PGpiZWRhcmRAYXBwbGUuY29tPiBvbiAyMDIwLTA5LTEwJykKKworICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKGNvbnRyaWJ1dG9yLm5hbWUsICdKb25hdGhhbiBCZWRhcmQnKQorICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLmVtYWlscywgWydqYmVkYXJkQGFwcGxlLmNvbSddKQor
CisgICAgZGVmIHRlc3RfYXV0aG9yX21hcHBpbmcoc2VsZik6CisgICAgICAgIENvbnRyaWJ1dG9y
LmNsZWFyKCkKKyAgICAgICAgQ29udHJpYnV0b3IuZnJvbV9zY21fbG9nKCdBdXRob3I6IEpvbmF0
aGFuIEJlZGFyZCA8amJlZGFyZEBhcHBsZS5jb20+JykKKyAgICAgICAgY29udHJpYnV0b3IgPSBD
b250cmlidXRvci5mcm9tX3NjbV9sb2coJ0F1dGhvcjogSm9uYXRoYW4gQmVkYXJkIDxqYmVkYXJk
QHdlYmtpdC5vcmc+JykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1dG9yLm5h
bWUsICdKb25hdGhhbiBCZWRhcmQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRyaWJ1
dG9yLmVtYWlscywgWydqYmVkYXJkQGFwcGxlLmNvbScsICdqYmVkYXJkQHdlYmtpdC5vcmcnXSkK
KworICAgIGRlZiB0ZXN0X2VtYWlsX21hcHBpbmcoc2VsZik6CisgICAgICAgIENvbnRyaWJ1dG9y
LmNsZWFyKCkKKyAgICAgICAgQ29udHJpYnV0b3IuZnJvbV9zY21fbG9nKCdBdXRob3I6IEpvbmF0
aGFuIEJlZGFyZCA8amJlZGFyZEBhcHBsZS5jb20+JykKKyAgICAgICAgY29udHJpYnV0b3IgPSBD
b250cmlidXRvci5mcm9tX3NjbV9sb2coJ3IyNjY3NTEgfCBqYmVkYXJkQGFwcGxlLmNvbSB8IDIw
MjAtMDktMDggMTQ6MzM6NDIgLTA3MDAgKFR1ZSwgMDggU2VwIDIwMjApIHwgMTAgbGluZXMnKQor
CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udHJpYnV0b3IubmFtZSwgJ0pvbmF0aGFuIEJl
ZGFyZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udHJpYnV0b3IuZW1haWxzLCBbJ2pi
ZWRhcmRAYXBwbGUuY29tJ10pCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2xvZyhzZWxmKToKKyAg
ICAgICAgQ29udHJpYnV0b3IuY2xlYXIoKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2Vz
KFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgQ29udHJpYnV0b3IuZnJvbV9zY21fbG9nKCdKb25h
dGhhbiBCZWRhcmQgPGpiZWRhcmRAYXBwbGUuY29tPicpCisKKyAgICBkZWYgdGVzdF9jb21wYXJp
c29uKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgQ29udHJp
YnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFyZEBhcHBsZS5jb20nXSksCisgICAgICAg
ICAgICBDb250cmlidXRvcignSm9uYXRoYW4gQmVkYXJkJywgWydqYmVkYXJkQHdlYmtpdC5vcmcn
XSksCisgICAgICAgICkKKworICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKAorICAgICAgICAg
ICAgQ29udHJpYnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFyZEBhcHBsZS5jb20nXSks
CisgICAgICAgICAgICBDb250cmlidXRvcignQWFrYXNoIEphaW4nLCBbJ2Fha2FzaGphaW5AYXBw
bGUuY29tJ10pLAorICAgICAgICApCisKKyAgICBkZWYgdGVzdF9zdHJpbmdfY29tcGFyaXNvbihz
ZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIENvbnRyaWJ1dG9y
KCdKb25hdGhhbiBCZWRhcmQnLCBbJ2piZWRhcmRAYXBwbGUuY29tJ10pLAorICAgICAgICAgICAg
J0pvbmF0aGFuIEJlZGFyZCcsCisgICAgICAgICkKKworICAgICAgICBzZWxmLmFzc2VydE5vdEVx
dWFsKAorICAgICAgICAgICAgQ29udHJpYnV0b3IoJ0pvbmF0aGFuIEJlZGFyZCcsIFsnamJlZGFy
ZEBhcHBsZS5jb20nXSksCisgICAgICAgICAgICAnQWFrYXNoIEphaW4nLAorICAgICAgICApCisK
KyAgICBkZWYgdGVzdF9oYXNoKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAg
ICAgICAgICAgaGFzaChDb250cmlidXRvcignSm9uYXRoYW4gQmVkYXJkJywgWydqYmVkYXJkQGFw
cGxlLmNvbSddKSksCisgICAgICAgICAgICBoYXNoKENvbnRyaWJ1dG9yKCdKb25hdGhhbiBCZWRh
cmQnLCBbJ2piZWRhcmRAd2Via2l0Lm9yZyddKSksCisgICAgICAgICkKKworICAgICAgICBzZWxm
LmFzc2VydE5vdEVxdWFsKAorICAgICAgICAgICAgaGFzaChDb250cmlidXRvcignSm9uYXRoYW4g
QmVkYXJkJywgWydqYmVkYXJkQGFwcGxlLmNvbSddKSksCisgICAgICAgICAgICBoYXNoKENvbnRy
aWJ1dG9yKCdBYWthc2ggSmFpbicsIFsnYWFrYXNoamFpbkBhcHBsZS5jb20nXSkpLAorICAgICAg
ICApCisKKyAgICBkZWYgdGVzdF9zb3J0aW5nKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKAorICAgICAgICAgICAgc29ydGVkKFtDb250cmlidXRvcignSm9uYXRoYW4gQmVkYXJkJyks
IENvbnRyaWJ1dG9yKCdBYWthc2ggSmFpbicpXSksCisgICAgICAgICAgICBbQ29udHJpYnV0b3Io
J0Fha2FzaCBKYWluJyksIENvbnRyaWJ1dG9yKCdKb25hdGhhbiBCZWRhcmQnKV0sCisgICAgICAg
ICkK
</data>

          </attachment>
      

    </bug>

</bugzilla>