<?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>223001</bug_id>
          
          <creation_ts>2021-03-09 15:20:31 -0800</creation_ts>
          <short_desc>[resultsdbpy] Make client aware of hashes and revisions</short_desc>
          <delta_ts>2021-03-10 16:01:19 -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>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=221860</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>1737794</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-09 15:20:31 -0800</bug_when>
    <thetext>As part of supporting identifiers in the results database, client-side code needs to distinguish between revisions, hashes and identifiers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737795</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-09 15:21:05 -0800</bug_when>
    <thetext>&lt;rdar://problem/75237812&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737804</commentid>
    <comment_count>2</comment_count>
      <attachid>422767</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-09 15:27:57 -0800</bug_when>
    <thetext>Created attachment 422767
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737843</commentid>
    <comment_count>3</comment_count>
      <attachid>422767</attachid>
    <who name="Zhifei Fang">zhifei_fang</who>
    <bug_when>2021-03-09 16:28:12 -0800</bug_when>
    <thetext>Comment on attachment 422767
Patch

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

&gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:132
&gt; +        this.identifier = json.identifier ? json.identifier : json.id;

We have a similar issue in the perf db, it will be very easy to get confused about id and identifier, since id is short for identity... 

From the name, id is the Cassandra id and identifier is &quot;commit identifier&quot; right ?

&gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:149
&gt; +    repr() {

Maybe &quot;Label&quot; is a better name ?

&gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:151
&gt; +        return this.identifier.substring(0,12);

So the identifier is the svn number and git hash, not commit identifier ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737872</commentid>
    <comment_count>4</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-09 17:20:14 -0800</bug_when>
    <thetext>(In reply to Zhifei Fang from comment #3)
&gt; Comment on attachment 422767 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=422767&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:132
&gt; &gt; +        this.identifier = json.identifier ? json.identifier : json.id;
&gt; 
&gt; We have a similar issue in the perf db, it will be very easy to get confused
&gt; about id and identifier, since id is short for identity... 

This bit is temporary. By the end of next week, there will be no more &quot;id&quot;, everything will be identifier, revision or hash.

&gt; 
&gt; From the name, id is the Cassandra id and identifier is &quot;commit identifier&quot;
&gt; right ?
&gt; 
&gt; &gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:149
&gt; &gt; +    repr() {
&gt; 
&gt; Maybe &quot;Label&quot; is a better name ?
&gt; 
&gt; &gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:151
&gt; &gt; +        return this.identifier.substring(0,12);
&gt; 
&gt; So the identifier is the svn number and git hash, not commit identifier ?

It&apos;s the SVN revision or the git hash. But that&apos;s temporary. Basically what&apos;s going to happen is I&apos;ll be adding a UI allowing the user to control which representation, revision, identifier or hash, they prefer for each repo. In parallel, I will be populating a new commit table that allows one to request commits by revision, hash and identifier. Finally, I will switch the existing APIs to vend commits from the new table, and identifier will be the commit identifier. Things are going to be a bit weird for the next 2 weeks, my goal is to keep the UI and API functional, at the cost of some temporarily misleading code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737881</commentid>
    <comment_count>5</comment_count>
      <attachid>422767</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-03-09 18:13:55 -0800</bug_when>
    <thetext>Comment on attachment 422767
Patch

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

&gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/commits.html:74
&gt; +                    this.ref.setState(json.map(datum=&gt;new Commit(datum)));

Nit: space before and after &apos;=&gt;&apos; ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738066</commentid>
    <comment_count>6</comment_count>
      <attachid>422835</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-10 08:05:10 -0800</bug_when>
    <thetext>Created attachment 422835
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738227</commentid>
    <comment_count>7</comment_count>
      <attachid>422869</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-10 14:10:04 -0800</bug_when>
    <thetext>Created attachment 422869
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738232</commentid>
    <comment_count>8</comment_count>
      <attachid>422869</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-03-10 14:17:20 -0800</bug_when>
    <thetext>Comment on attachment 422869
Patch

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

&gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:150
&gt; +        // Per the birthday paradox, 10% change of collision with 7.7 million commits with 12 character commits

You mean `chance`?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738240</commentid>
    <comment_count>9</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-10 14:36:28 -0800</bug_when>
    <thetext>(In reply to dewei_zhu from comment #8)
&gt; Comment on attachment 422869 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=422869&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:150
&gt; &gt; +        // Per the birthday paradox, 10% change of collision with 7.7 million commits with 12 character commits
&gt; 
&gt; You mean `chance`?

Yes, moving this comment around, not sure how we didn&apos;t notice it the first time around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738264</commentid>
    <comment_count>10</comment_count>
      <attachid>422877</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-10 15:10:49 -0800</bug_when>
    <thetext>Created attachment 422877
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738292</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-10 16:01:18 -0800</bug_when>
    <thetext>Committed r274248: &lt;https://commits.webkit.org/r274248&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422877.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422767</attachid>
            <date>2021-03-09 15:27:57 -0800</date>
            <delta_ts>2021-03-10 08:05:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223001-20210309152756.patch</filename>
            <type>text/plain</type>
            <size>9865</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDE3OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIzIEBACisyMDIxLTAzLTA5ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIE1ha2UgY2xpZW50IGF3YXJlIG9mIGhhc2hlcyBh
bmQgcmV2aXNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjMwMDEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1MjM3ODEyPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9saWJyYXJp
ZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvY29tbWl0LmpzOgorICAg
ICAgICAoQ29tbWl0KTogU3VwcG9ydCBib3RoICJpZCIgYW5kICJpZGVudGlmaWVyIiBpbiBjb25z
dHJ1Y3Rvci4KKyAgICAgICAgKENvbW1pdC5wcm90b3R5cGUucmVwcik6IENlbnRyYWxpemUgc3Ry
aW5nIHJlcHJlc2VudGF0aW9uIG9mIGNvbW1pdC4KKyAgICAgICAgKF9Db21taXRCYW5rLnByb3Rv
dHlwZS5fbG9hZFNpYmxpbmdzKToKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRz
ZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3RpZ2F0ZS5qczoKKyAgICAgICAg
KGNvbW1pdHNGb3JVdWlkKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmll
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qczoKKyAg
ICAgICAgKHhBeGlzRnJvbVNjYWxlKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKFRpbWVsaW5lRnJv
bUVuZHBvaW50LnByb3RvdHlwZS5yZW5kZXIub25Eb3RFbnRlckZhY3RvcnkpOiBEaXR0by4KKyAg
ICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3Rl
bXBsYXRlcy9jb21taXRzLmh0bWw6IENvbnZlcnQgSlNPTiB0byBDb21taXQgb2JqZWN0LgorICAg
ICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2ludmVzdGlnYXRlLmh0bWw6IFVzZSByZXByKCkuCisKIDIwMjEtMDMtMDkgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBTdG9wIHVzaW5nIGNhbGxPbk1h
aW5UaHJlYWQoKSAvIGlzTWFpblRocmVhZCgpIGluIFdlYktpdDIKSW5kZXg6IFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2NvbW1p
dC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9y
ZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9jb21taXQuanMJKHJldmlzaW9uIDI3NDE3MykKKysr
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3Rh
dGljL2pzL2NvbW1pdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTAxLDE0ICsxMDEsMTQgQEAgZnVu
Y3Rpb24gQ29tbWl0VGFibGUoY29tbWl0cywgcmVwb3NpdG9yeQogICAgICAgICAgICAgICAgICAg
ICBsZXQgY29tbWl0QXJncyA9IHBhcmFtc1RvUXVlcnkoewogICAgICAgICAgICAgICAgICAgICAg
ICAgcmVwb3NpdG9yeV9pZDogW2NlbGwuY29tbWl0LnJlcG9zaXRvcnlfaWRdLAogICAgICAgICAg
ICAgICAgICAgICAgICAgYnJhbmNoOiBbY2VsbC5jb21taXQuYnJhbmNoXSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGlkOiBbY2VsbC5jb21taXQuaWRdLAorICAgICAgICAgICAgICAgICAgICAg
ICAgaWQ6IFtjZWxsLmNvbW1pdC5pZGVudGlmaWVyXSwKICAgICAgICAgICAgICAgICAgICAgfSk7
Ci0gICAgICAgICAgICAgICAgICAgIGxldCBpbnZlc3RpZ2F0ZUFyZ3MgPSB7aWQ6IFtjZWxsLmNv
bW1pdC5pZF19OwotICAgICAgICAgICAgICAgICAgICBpZiAoIVsnbWFzdGVyJywgJ3RydW5rJ10u
aW5jbHVkZXMoY2VsbC5jb21taXQuYnJhbmNoKSkKKyAgICAgICAgICAgICAgICAgICAgbGV0IGlu
dmVzdGlnYXRlQXJncyA9IHtpZDogW2NlbGwuY29tbWl0LmlkZW50aWZpZXJdfTsKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKCFbJ21hc3RlcicsICdtYWluJywgJ3RydW5rJ10uaW5jbHVkZXMoY2Vs
bC5jb21taXQuYnJhbmNoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGludmVzdGlnYXRlQXJn
cy5icmFuY2ggPSBbY2VsbC5jb21taXQuYnJhbmNoXTsKIAogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gYDx0ZCByb3dzcGFuPSIke2NlbGwucm93c3Bhbn0iPgotICAgICAgICAgICAgICAgICAg
ICAgICAgPGEgaHJlZj0iL2NvbW1pdD8ke2NvbW1pdEFyZ3N9Ij4ke2NlbGwuY29tbWl0LmlkfTwv
YT4gPGJyPgorICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2NvbW1pdD8ke2NvbW1p
dEFyZ3N9Ij4ke2NlbGwuY29tbWl0LnJlcHIoKX08L2E+IDxicj4KICAgICAgICAgICAgICAgICAg
ICAgICAgIEJyYW5jaDogJHtjZWxsLmNvbW1pdC5icmFuY2h9IDxicj4KICAgICAgICAgICAgICAg
ICAgICAgICAgIENvbW1pdHRlcjogJHtlc2NhcGVIVE1MKGNlbGwuY29tbWl0LmNvbW1pdHRlcil9
IDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9jb21taXQvaW5mbz8ke2Nv
bW1pdEFyZ3N9Ij5Nb3JlIEluZm88L2E+PGJyPgpAQCAtMTI5LDE4ICsxMjksMjcgQEAgZnVuY3Rp
b24gQ29tbWl0VGFibGUoY29tbWl0cywgcmVwb3NpdG9yeQogCiBjbGFzcyBDb21taXQgewogICAg
IGNvbnN0cnVjdG9yKGpzb24pIHsKLSAgICAgICAgdGhpcy5icmFuY2ggPSBqc29uLmJyYW5jaDsK
KyAgICAgICAgdGhpcy5pZGVudGlmaWVyID0ganNvbi5pZGVudGlmaWVyID8ganNvbi5pZGVudGlm
aWVyIDoganNvbi5pZDsKKyAgICAgICAgdGhpcy5yZXZpc2lvbiA9IGpzb24ucmV2aXNpb247Cisg
ICAgICAgIHRoaXMuaGFzaCA9IGpzb24uaGFzaDsKKwogICAgICAgICB0aGlzLmNvbW1pdHRlciA9
IGpzb24uY29tbWl0dGVyOwotICAgICAgICB0aGlzLmlkID0ganNvbi5pZDsKLSAgICAgICAgdGhp
cy5tZXNzYWdlID0ganNvbi5tZXNzYWdlOwotICAgICAgICB0aGlzLm9yZGVyID0ganNvbi5vcmRl
cjsKKwogICAgICAgICB0aGlzLnJlcG9zaXRvcnlfaWQgPSBqc29uLnJlcG9zaXRvcnlfaWQ7Cisg
ICAgICAgIHRoaXMuYnJhbmNoID0ganNvbi5icmFuY2g7CisgICAgICAgIHRoaXMubWVzc2FnZSA9
IGpzb24ubWVzc2FnZTsKKwogICAgICAgICB0aGlzLnRpbWVzdGFtcCA9IGpzb24udGltZXN0YW1w
OworICAgICAgICB0aGlzLm9yZGVyID0ganNvbi5vcmRlcjsKICAgICAgICAgdGhpcy51dWlkID0g
dGhpcy50aW1lc3RhbXAgKiBUSU1FU1RBTVBfVE9fVVVJRF9NVUxUSVBMSUVSICsgdGhpcy5vcmRl
cjsKICAgICB9CiAgICAgY29tcGFyZShjb21taXQpIHsKICAgICAgICAgcmV0dXJuIHRoaXMudXVp
ZCAtIGNvbW1pdC51dWlkOwogICAgIH0KKyAgICByZXByKCkgeworICAgICAgICAvLyBQZXIgdGhl
IGJpcnRoZGF5IHBhcmFkb3gsIDEwJSBjaGFuZ2Ugb2YgY29sbGlzaW9uIHdpdGggNy43IG1pbGxp
b24gY29tbWl0cyB3aXRoIDEyIGNoYXJhY3RlciBjb21taXRzCisgICAgICAgIHJldHVybiB0aGlz
LmlkZW50aWZpZXIuc3Vic3RyaW5nKDAsMTIpOworICAgIH0KIH07CiAKIGNsYXNzIF9Db21taXRC
YW5rIHsKQEAgLTI4Niw3ICsyOTUsNyBAQCBjbGFzcyBfQ29tbWl0QmFuayB7CiAgICAgICAgIGNv
bnN0IHF1ZXJ5ID0gcGFyYW1zVG9RdWVyeSh7CiAgICAgICAgICAgICBicmFuY2g6IFtjb21taXQu
YnJhbmNoXSwKICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ6IFtjb21taXQucmVwb3NpdG9yeV9p
ZF0sCi0gICAgICAgICAgICBpZDogW2NvbW1pdC5pZF0sCisgICAgICAgICAgICBpZDogW2NvbW1p
dC5pZGVudGlmaWVyXSwKICAgICAgICAgfSk7CiAgICAgICAgIHJldHVybiBmZXRjaCgnYXBpL2Nv
bW1pdHMvc2libGluZ3M/JyArIHF1ZXJ5KS50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICAgICAg
IGxldCBzZWxmID0gdGhpczsKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNk
YnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2ludmVzdGlnYXRlLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcv
c3RhdGljL2pzL2ludmVzdGlnYXRlLmpzCShyZXZpc2lvbiAyNzQxNzMpCisrKyBUb29scy9TY3Jp
cHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZl
c3RpZ2F0ZS5qcwkod29ya2luZyBjb3B5KQpAQCAtMzgsNyArMzgsNyBAQCBmdW5jdGlvbiBjb21t
aXRzRm9yVXVpZCh1dWlkKSB7CiAgICAgICAgICAgICBpZiAoIXBhcmFtcy5icmFuY2gpCiAgICAg
ICAgICAgICAgICAgZGVsZXRlIHBhcmFtcy5icmFuY2g7CiAgICAgICAgICAgICBjb25zdCBxdWVy
eSA9IHBhcmFtc1RvUXVlcnkocGFyYW1zKTsKLSAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0i
L2NvbW1pdC9pbmZvPyR7cXVlcnl9IiB0YXJnZXQ9Il9ibGFuayI+JHtjb21taXQuaWQuc3Vic3Ry
aW5nKDAsMTIpfTwvYT5gOworICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPSIvY29tbWl0L2lu
Zm8/JHtxdWVyeX0iIHRhcmdldD0iX2JsYW5rIj4ke2NvbW1pdC5yZXByKCl9PC9hPmA7CiAgICAg
ICAgIH0pLmpvaW4oJywgJyl9YAogfQogCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9y
ZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92
aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qcwkocmV2aXNpb24gMjc0MTczKQorKysgVG9vbHMvU2Ny
aXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvdGlt
ZWxpbmUuanMJKHdvcmtpbmcgY29weSkKQEAgLTE3MCw3ICsxNzAsNyBAQCBmdW5jdGlvbiB4QXhp
c0Zyb21TY2FsZShzY2FsZSwgcmVwb3NpdG9yCiAgICAgfQogCiAgICAgZnVuY3Rpb24gb25TY2Fs
ZUNsaWNrKG5vZGUpIHsKLSAgICAgICAgaWYgKCFub2RlLmxhYmVsLmlkKQorICAgICAgICBpZiAo
IW5vZGUubGFiZWwucmVwcigpKQogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICBsZXQgcGFy
YW1zID0gewogICAgICAgICAgICAgYnJhbmNoOiBub2RlLmxhYmVsLmJyYW5jaCA/IFtub2RlLmxh
YmVsLmJyYW5jaF0gOiBxdWVyeVRvUGFyYW1zKGRvY3VtZW50LlVSTC5zcGxpdCgnPycpWzFdKS5i
cmFuY2gsCkBAIC0yMDYsOCArMjA2LDcgQEAgZnVuY3Rpb24geEF4aXNGcm9tU2NhbGUoc2NhbGUs
IHJlcG9zaXRvcgogICAgICAgICAgICAgaWYgKCFUb29sVGlwLmlzSW4oe3g6IGV2ZW50LngsIHk6
IGV2ZW50LnkgLSBzY3JvbGxEZWx0YX0pKQogICAgICAgICAgICAgICAgIFRvb2xUaXAudW5zZXQo
KTsKICAgICAgICAgfSwKLSAgICAgICAgLy8gUGVyIHRoZSBiaXJ0aGRheSBwYXJhZG94LCAxMCUg
Y2hhbmdlIG9mIGNvbGxpc2lvbiB3aXRoIDcuNyBtaWxsaW9uIGNvbW1pdHMgd2l0aCAxMiBjaGFy
YWN0ZXIgY29tbWl0cwotICAgICAgICBnZXRMYWJlbEZ1bmM6IChjb21taXQpID0+IHtyZXR1cm4g
Y29tbWl0ID8gY29tbWl0LmlkLnN1YnN0cmluZygwLDEyKSA6ICc/Jzt9LAorICAgICAgICBnZXRM
YWJlbEZ1bmM6IChjb21taXQpID0+IHtyZXR1cm4gY29tbWl0ID8gY29tbWl0LnJlcHIoKSA6ICc/
Jzt9LAogICAgICAgICBnZXRTY2FsZUZ1bmM6IChjb21taXQpID0+IGNvbW1pdC51dWlkLAogICAg
ICAgICBleHBvcnRlcjogKHVwZGF0ZUZ1bmN0aW9uKSA9PiB7CiAgICAgICAgICAgICB1cGRhdGVz
QXJyYXkucHVzaCgoc2NhbGUpID0+IHt1cGRhdGVGdW5jdGlvbihzY2FsZUZvclJlcG9zaXRvcnko
c2NhbGUpKTt9KTsKQEAgLTY1Myw3ICs2NTIsNyBAQCBjbGFzcyBUaW1lbGluZUZyb21FbmRwb2lu
dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFwYXJhbXMuYnJhbmNoKQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgcGFyYW1zLmJyYW5jaDsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBxdWVyeSA9IHBhcmFtc1RvUXVlcnkocGFyYW1z
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYDxhIGhyZWY9Ii9jb21taXQv
aW5mbz8ke3F1ZXJ5fSIgdGFyZ2V0PSJfYmxhbmsiPiR7Y29tbWl0LmlkLnN1YnN0cmluZygwLDEy
KX08L2E+YDsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYDxhIGhyZWY9Ii9j
b21taXQvaW5mbz8ke3F1ZXJ5fSIgdGFyZ2V0PSJfYmxhbmsiPiR7Y29tbWl0LnJlcHIoKX08L2E+
YDsKICAgICAgICAgICAgICAgICAgICAgICAgIH0pLmpvaW4oJywgJyl9CiAgICAgICAgICAgICAg
ICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAke3BhcnRpYWxDb25maWd1
cmF0aW9ufQpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Nj
cmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2Nv
bW1pdHMuaHRtbAkocmV2aXNpb24gMjc0MTczKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMv
cmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMCw3ICszMCw3IEBACiA8c2NyaXB0IHR5cGU9Im1vZHVsZSI+CiBpbXBv
cnQge1JFRiwgRE9NfSBmcm9tICcvbGlicmFyeS9qcy9SZWYuanMnOwogaW1wb3J0IHtFcnJvckRp
c3BsYXl9IGZyb20gJy9hc3NldHMvanMvY29tbW9uLmpzJzsKLWltcG9ydCB7Q29tbWl0VGFibGV9
IGZyb20gJy9hc3NldHMvanMvY29tbWl0LmpzJzsKK2ltcG9ydCB7Q29tbWl0LCBDb21taXRUYWJs
ZX0gZnJvbSAnL2Fzc2V0cy9qcy9jb21taXQuanMnOwogaW1wb3J0IHtEcmF3ZXIsIEJyYW5jaFNl
bGVjdG9yLCBMaW1pdFNsaWRlcn0gZnJvbSAnL2Fzc2V0cy9qcy9kcmF3ZXIuanMnOwogCiB2YXIg
b25lTGluZSA9IHRydWU7CkBAIC03MSw3ICs3MSw3IEBAIGNsYXNzIFRhYmxlIHsKICAgICAgICAg
ZmV0Y2gocXVlcnkgPyAnYXBpL2NvbW1pdHM/JyArIHF1ZXJ5IDogJ2FwaS9jb21taXRzJykudGhl
bihyZXNwb25zZSA9PiB7CiAgICAgICAgICAgICByZXNwb25zZS5qc29uKCkudGhlbihqc29uID0+
IHsKICAgICAgICAgICAgICAgICBpZiAobXlEaXNwYXRjaCA9PSB0aGlzLmxhdGVzdERpc3BhdGNo
KQotICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZi5zZXRTdGF0ZShqc29uKTsKKyAgICAgICAg
ICAgICAgICAgICAgdGhpcy5yZWYuc2V0U3RhdGUoanNvbi5tYXAoZGF0dW09Pm5ldyBDb21taXQo
ZGF0dW0pKSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfSkuY2F0Y2goZXJyb3IgPT4gewog
ICAgICAgICAgICAgaWYgKG15RGlzcGF0Y2ggPT0gdGhpcy5sYXRlc3REaXNwYXRjaCkKSW5kZXg6
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2ludmVzdGlnYXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUu
aHRtbAkocmV2aXNpb24gMjc0MTczKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMTU5LDcgKzE1OSw3IEBAIGNsYXNzIFN1aXRlRmFpbHVyZXNWaWV3IHsKIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0i
L2NvbW1pdHM/JHtwYXJhbXNUb1F1ZXJ5KGNvbW1pdFBhcmFtcyl9Ij4kewogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21taXRzLmxlbmd0aCA9PSByZXBvc2l0
b3JpZXMuc2l6ZSA/Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb21taXRzLnJldmVyc2UoKS5tYXAoY29tbWl0ID0+IGNvbW1pdC5pZC5zdWJzdHJpbmco
MCwxMikpLmpvaW4oJywgJykgOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29tbWl0cy5yZXZlcnNlKCkubWFwKGNvbW1pdCA9PiBjb21taXQucmVwcigp
KS5qb2luKCcsICcpIDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGAke2NvbW1pdHMubGVuZ3RofSBjb21taXRzYAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH08L2E+YDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0pKCl9CkBAIC0yMjEsNyArMjIxLDcgQEAgY2xhc3MgU3VpdGVGYWlsdXJlc1ZpZXcg
ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9InRleHQg
YmxvY2siIHN0eWxlPSJ3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWVkaXVtU2l6ZSkgLSAxNnB4
KTsgb3ZlcmZsb3c6IGhpZGRlbjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgdGV4dC1vdmVyZmxvdzog
ZWxsaXBzaXM7ICJocmVmPSIvaW52ZXN0aWdhdGU/JHtwYXJhbXNUb1F1ZXJ5KGZhaWx1cmUudG9Q
YXJhbXMoKSl9Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICR7Y29tbWl0cy5sZW5ndGggPwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGAke2NvbW1pdHNbMF0uaWQuc3Vic3RyaW5nKDAsMTIpfSAke2Nv
bW1pdHMubGVuZ3RoID4gMSA/IGNvbW1pdHNbY29tbWl0cy5sZW5ndGggLSAxXS5pZC5zdWJzdHJp
bmcoMCwxMikgOiAnJ31gIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBgJHtjb21taXRzWzBdLnJlcHIoKX0gJHtjb21taXRzLmxlbmd0aCA+IDEg
PyBjb21taXRzW2NvbW1pdHMubGVuZ3RoIC0gMV0ucmVwcigpIDogJyd9YCA6CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJz8nfSBvbiAke2ZhaWx1
cmUuY29uZmlndXJhdGlvbn0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2
PmA7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422835</attachid>
            <date>2021-03-10 08:05:10 -0800</date>
            <delta_ts>2021-03-10 14:10:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223001-20210310080509.patch</filename>
            <type>text/plain</type>
            <size>9864</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDIxNCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIzIEBACisyMDIxLTAzLTEwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIE1ha2UgY2xpZW50IGF3YXJlIG9mIGhhc2hlcyBh
bmQgcmV2aXNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjMwMDEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1MjM3ODEyPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9saWJyYXJp
ZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvY29tbWl0LmpzOgorICAg
ICAgICAoQ29tbWl0KTogU3VwcG9ydCBib3RoICJpZCIgYW5kICJpZGVudGlmaWVyIiBpbiBjb25z
dHJ1Y3Rvci4KKyAgICAgICAgKENvbW1pdC5wcm90b3R5cGUucmVwcik6IENlbnRyYWxpemUgc3Ry
aW5nIHJlcHJlc2VudGF0aW9uIG9mIGNvbW1pdC4KKyAgICAgICAgKF9Db21taXRCYW5rLnByb3Rv
dHlwZS5fbG9hZFNpYmxpbmdzKToKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRz
ZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3RpZ2F0ZS5qczoKKyAgICAgICAg
KGNvbW1pdHNGb3JVdWlkKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmll
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qczoKKyAg
ICAgICAgKHhBeGlzRnJvbVNjYWxlKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKFRpbWVsaW5lRnJv
bUVuZHBvaW50LnByb3RvdHlwZS5yZW5kZXIub25Eb3RFbnRlckZhY3RvcnkpOiBEaXR0by4KKyAg
ICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3Rl
bXBsYXRlcy9jb21taXRzLmh0bWw6IENvbnZlcnQgSlNPTiB0byBDb21taXQgb2JqZWN0LgorICAg
ICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2ludmVzdGlnYXRlLmh0bWw6IFVzZSByZXByKCkuCisKIDIwMjEtMDMtMTAgIEpvbmF0
aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIGdpdC13ZWJraXQgc2hv
dWxkIGhhdmUgYW4gImluZm8iIGNvbW1hbmQKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVz
L3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2NvbW1pdC5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92
aWV3L3N0YXRpYy9qcy9jb21taXQuanMJKHJldmlzaW9uIDI3NDIxNCkKKysrIFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2NvbW1p
dC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTAxLDE0ICsxMDEsMTQgQEAgZnVuY3Rpb24gQ29tbWl0
VGFibGUoY29tbWl0cywgcmVwb3NpdG9yeQogICAgICAgICAgICAgICAgICAgICBsZXQgY29tbWl0
QXJncyA9IHBhcmFtc1RvUXVlcnkoewogICAgICAgICAgICAgICAgICAgICAgICAgcmVwb3NpdG9y
eV9pZDogW2NlbGwuY29tbWl0LnJlcG9zaXRvcnlfaWRdLAogICAgICAgICAgICAgICAgICAgICAg
ICAgYnJhbmNoOiBbY2VsbC5jb21taXQuYnJhbmNoXSwKLSAgICAgICAgICAgICAgICAgICAgICAg
IGlkOiBbY2VsbC5jb21taXQuaWRdLAorICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFtjZWxs
LmNvbW1pdC5pZGVudGlmaWVyXSwKICAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAg
ICAgICAgICAgIGxldCBpbnZlc3RpZ2F0ZUFyZ3MgPSB7aWQ6IFtjZWxsLmNvbW1pdC5pZF19Owot
ICAgICAgICAgICAgICAgICAgICBpZiAoIVsnbWFzdGVyJywgJ3RydW5rJ10uaW5jbHVkZXMoY2Vs
bC5jb21taXQuYnJhbmNoKSkKKyAgICAgICAgICAgICAgICAgICAgbGV0IGludmVzdGlnYXRlQXJn
cyA9IHtpZDogW2NlbGwuY29tbWl0LmlkZW50aWZpZXJdfTsKKyAgICAgICAgICAgICAgICAgICAg
aWYgKCFbJ21hc3RlcicsICdtYWluJywgJ3RydW5rJ10uaW5jbHVkZXMoY2VsbC5jb21taXQuYnJh
bmNoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGludmVzdGlnYXRlQXJncy5icmFuY2ggPSBb
Y2VsbC5jb21taXQuYnJhbmNoXTsKIAogICAgICAgICAgICAgICAgICAgICByZXR1cm4gYDx0ZCBy
b3dzcGFuPSIke2NlbGwucm93c3Bhbn0iPgotICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJl
Zj0iL2NvbW1pdD8ke2NvbW1pdEFyZ3N9Ij4ke2NlbGwuY29tbWl0LmlkfTwvYT4gPGJyPgorICAg
ICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2NvbW1pdD8ke2NvbW1pdEFyZ3N9Ij4ke2Nl
bGwuY29tbWl0LmxhYmVsKCl9PC9hPiA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICBCcmFu
Y2g6ICR7Y2VsbC5jb21taXQuYnJhbmNofSA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICBD
b21taXR0ZXI6ICR7ZXNjYXBlSFRNTChjZWxsLmNvbW1pdC5jb21taXR0ZXIpfSA8YnI+CiAgICAg
ICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29tbWl0L2luZm8/JHtjb21taXRBcmdzfSI+
TW9yZSBJbmZvPC9hPjxicj4KQEAgLTEyOSwxOCArMTI5LDI3IEBAIGZ1bmN0aW9uIENvbW1pdFRh
YmxlKGNvbW1pdHMsIHJlcG9zaXRvcnkKIAogY2xhc3MgQ29tbWl0IHsKICAgICBjb25zdHJ1Y3Rv
cihqc29uKSB7Ci0gICAgICAgIHRoaXMuYnJhbmNoID0ganNvbi5icmFuY2g7CisgICAgICAgIHRo
aXMuaWRlbnRpZmllciA9IGpzb24uaWRlbnRpZmllciA/IGpzb24uaWRlbnRpZmllciA6IGpzb24u
aWQ7CisgICAgICAgIHRoaXMucmV2aXNpb24gPSBqc29uLnJldmlzaW9uOworICAgICAgICB0aGlz
Lmhhc2ggPSBqc29uLmhhc2g7CisKICAgICAgICAgdGhpcy5jb21taXR0ZXIgPSBqc29uLmNvbW1p
dHRlcjsKLSAgICAgICAgdGhpcy5pZCA9IGpzb24uaWQ7Ci0gICAgICAgIHRoaXMubWVzc2FnZSA9
IGpzb24ubWVzc2FnZTsKLSAgICAgICAgdGhpcy5vcmRlciA9IGpzb24ub3JkZXI7CisKICAgICAg
ICAgdGhpcy5yZXBvc2l0b3J5X2lkID0ganNvbi5yZXBvc2l0b3J5X2lkOworICAgICAgICB0aGlz
LmJyYW5jaCA9IGpzb24uYnJhbmNoOworICAgICAgICB0aGlzLm1lc3NhZ2UgPSBqc29uLm1lc3Nh
Z2U7CisKICAgICAgICAgdGhpcy50aW1lc3RhbXAgPSBqc29uLnRpbWVzdGFtcDsKKyAgICAgICAg
dGhpcy5vcmRlciA9IGpzb24ub3JkZXI7CiAgICAgICAgIHRoaXMudXVpZCA9IHRoaXMudGltZXN0
YW1wICogVElNRVNUQU1QX1RPX1VVSURfTVVMVElQTElFUiArIHRoaXMub3JkZXI7CiAgICAgfQog
ICAgIGNvbXBhcmUoY29tbWl0KSB7CiAgICAgICAgIHJldHVybiB0aGlzLnV1aWQgLSBjb21taXQu
dXVpZDsKICAgICB9CisgICAgbGFiZWwoKSB7CisgICAgICAgIC8vIFBlciB0aGUgYmlydGhkYXkg
cGFyYWRveCwgMTAlIGNoYW5nZSBvZiBjb2xsaXNpb24gd2l0aCA3LjcgbWlsbGlvbiBjb21taXRz
IHdpdGggMTIgY2hhcmFjdGVyIGNvbW1pdHMKKyAgICAgICAgcmV0dXJuIHRoaXMuaWRlbnRpZmll
ci5zdWJzdHJpbmcoMCwxMik7CisgICAgfQogfTsKIAogY2xhc3MgX0NvbW1pdEJhbmsgewpAQCAt
Mjg2LDcgKzI5NSw3IEBAIGNsYXNzIF9Db21taXRCYW5rIHsKICAgICAgICAgY29uc3QgcXVlcnkg
PSBwYXJhbXNUb1F1ZXJ5KHsKICAgICAgICAgICAgIGJyYW5jaDogW2NvbW1pdC5icmFuY2hdLAog
ICAgICAgICAgICAgcmVwb3NpdG9yeV9pZDogW2NvbW1pdC5yZXBvc2l0b3J5X2lkXSwKLSAgICAg
ICAgICAgIGlkOiBbY29tbWl0LmlkXSwKKyAgICAgICAgICAgIGlkOiBbY29tbWl0LmlkZW50aWZp
ZXJdLAogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuIGZldGNoKCdhcGkvY29tbWl0cy9zaWJs
aW5ncz8nICsgcXVlcnkpLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgICAgICAgbGV0IHNlbGYg
PSB0aGlzOwpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy9zdGF0aWMvanMvaW52ZXN0aWdhdGUuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMv
aW52ZXN0aWdhdGUuanMJKHJldmlzaW9uIDI3NDIxNCkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFy
aWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2ludmVzdGlnYXRlLmpz
CSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw3IEBAIGZ1bmN0aW9uIGNvbW1pdHNGb3JVdWlk
KHV1aWQpIHsKICAgICAgICAgICAgIGlmICghcGFyYW1zLmJyYW5jaCkKICAgICAgICAgICAgICAg
ICBkZWxldGUgcGFyYW1zLmJyYW5jaDsKICAgICAgICAgICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1z
VG9RdWVyeShwYXJhbXMpOwotICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPSIvY29tbWl0L2lu
Zm8/JHtxdWVyeX0iIHRhcmdldD0iX2JsYW5rIj4ke2NvbW1pdC5pZC5zdWJzdHJpbmcoMCwxMil9
PC9hPmA7CisgICAgICAgICAgICByZXR1cm4gYDxhIGhyZWY9Ii9jb21taXQvaW5mbz8ke3F1ZXJ5
fSIgdGFyZ2V0PSJfYmxhbmsiPiR7Y29tbWl0LmxhYmVsKCl9PC9hPmA7CiAgICAgICAgIH0pLmpv
aW4oJywgJyl9YAogfQogCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJw
eS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRp
Yy9qcy90aW1lbGluZS5qcwkocmV2aXNpb24gMjc0MjE0KQorKysgVG9vbHMvU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvdGltZWxpbmUuanMJ
KHdvcmtpbmcgY29weSkKQEAgLTE3MCw3ICsxNzAsNyBAQCBmdW5jdGlvbiB4QXhpc0Zyb21TY2Fs
ZShzY2FsZSwgcmVwb3NpdG9yCiAgICAgfQogCiAgICAgZnVuY3Rpb24gb25TY2FsZUNsaWNrKG5v
ZGUpIHsKLSAgICAgICAgaWYgKCFub2RlLmxhYmVsLmlkKQorICAgICAgICBpZiAoIW5vZGUubGFi
ZWwubGFiZWwoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgbGV0IHBhcmFtcyA9IHsK
ICAgICAgICAgICAgIGJyYW5jaDogbm9kZS5sYWJlbC5icmFuY2ggPyBbbm9kZS5sYWJlbC5icmFu
Y2hdIDogcXVlcnlUb1BhcmFtcyhkb2N1bWVudC5VUkwuc3BsaXQoJz8nKVsxXSkuYnJhbmNoLApA
QCAtMjA2LDggKzIwNiw3IEBAIGZ1bmN0aW9uIHhBeGlzRnJvbVNjYWxlKHNjYWxlLCByZXBvc2l0
b3IKICAgICAgICAgICAgIGlmICghVG9vbFRpcC5pc0luKHt4OiBldmVudC54LCB5OiBldmVudC55
IC0gc2Nyb2xsRGVsdGF9KSkKICAgICAgICAgICAgICAgICBUb29sVGlwLnVuc2V0KCk7CiAgICAg
ICAgIH0sCi0gICAgICAgIC8vIFBlciB0aGUgYmlydGhkYXkgcGFyYWRveCwgMTAlIGNoYW5nZSBv
ZiBjb2xsaXNpb24gd2l0aCA3LjcgbWlsbGlvbiBjb21taXRzIHdpdGggMTIgY2hhcmFjdGVyIGNv
bW1pdHMKLSAgICAgICAgZ2V0TGFiZWxGdW5jOiAoY29tbWl0KSA9PiB7cmV0dXJuIGNvbW1pdCA/
IGNvbW1pdC5pZC5zdWJzdHJpbmcoMCwxMikgOiAnPyc7fSwKKyAgICAgICAgZ2V0TGFiZWxGdW5j
OiAoY29tbWl0KSA9PiB7cmV0dXJuIGNvbW1pdCA/IGNvbW1pdC5sYWJlbCgpIDogJz8nO30sCiAg
ICAgICAgIGdldFNjYWxlRnVuYzogKGNvbW1pdCkgPT4gY29tbWl0LnV1aWQsCiAgICAgICAgIGV4
cG9ydGVyOiAodXBkYXRlRnVuY3Rpb24pID0+IHsKICAgICAgICAgICAgIHVwZGF0ZXNBcnJheS5w
dXNoKChzY2FsZSkgPT4ge3VwZGF0ZUZ1bmN0aW9uKHNjYWxlRm9yUmVwb3NpdG9yeShzY2FsZSkp
O30pOwpAQCAtNjUzLDcgKzY1Miw3IEBAIGNsYXNzIFRpbWVsaW5lRnJvbUVuZHBvaW50IHsKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXBhcmFtcy5icmFuY2gpCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBwYXJhbXMuYnJhbmNoOwogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zVG9RdWVyeShwYXJhbXMpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0iL2NvbW1pdC9pbmZvPyR7
cXVlcnl9IiB0YXJnZXQ9Il9ibGFuayI+JHtjb21taXQuaWQuc3Vic3RyaW5nKDAsMTIpfTwvYT5g
OworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0iL2NvbW1pdC9p
bmZvPyR7cXVlcnl9IiB0YXJnZXQ9Il9ibGFuayI+JHtjb21taXQubGFiZWwoKX08L2E+YDsKICAg
ICAgICAgICAgICAgICAgICAgICAgIH0pLmpvaW4oJywgJyl9CiAgICAgICAgICAgICAgICAgICAg
ICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAke3BhcnRpYWxDb25maWd1cmF0aW9u
fQpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkv
dmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
bGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2NvbW1pdHMu
aHRtbAkocmV2aXNpb24gMjc0MjE0KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0zMCw3ICszMCw3IEBACiA8c2NyaXB0IHR5cGU9Im1vZHVsZSI+CiBpbXBvcnQge1JF
RiwgRE9NfSBmcm9tICcvbGlicmFyeS9qcy9SZWYuanMnOwogaW1wb3J0IHtFcnJvckRpc3BsYXl9
IGZyb20gJy9hc3NldHMvanMvY29tbW9uLmpzJzsKLWltcG9ydCB7Q29tbWl0VGFibGV9IGZyb20g
Jy9hc3NldHMvanMvY29tbWl0LmpzJzsKK2ltcG9ydCB7Q29tbWl0LCBDb21taXRUYWJsZX0gZnJv
bSAnL2Fzc2V0cy9qcy9jb21taXQuanMnOwogaW1wb3J0IHtEcmF3ZXIsIEJyYW5jaFNlbGVjdG9y
LCBMaW1pdFNsaWRlcn0gZnJvbSAnL2Fzc2V0cy9qcy9kcmF3ZXIuanMnOwogCiB2YXIgb25lTGlu
ZSA9IHRydWU7CkBAIC03MSw3ICs3MSw3IEBAIGNsYXNzIFRhYmxlIHsKICAgICAgICAgZmV0Y2go
cXVlcnkgPyAnYXBpL2NvbW1pdHM/JyArIHF1ZXJ5IDogJ2FwaS9jb21taXRzJykudGhlbihyZXNw
b25zZSA9PiB7CiAgICAgICAgICAgICByZXNwb25zZS5qc29uKCkudGhlbihqc29uID0+IHsKICAg
ICAgICAgICAgICAgICBpZiAobXlEaXNwYXRjaCA9PSB0aGlzLmxhdGVzdERpc3BhdGNoKQotICAg
ICAgICAgICAgICAgICAgICB0aGlzLnJlZi5zZXRTdGF0ZShqc29uKTsKKyAgICAgICAgICAgICAg
ICAgICAgdGhpcy5yZWYuc2V0U3RhdGUoanNvbi5tYXAoZGF0dW0gPT4gbmV3IENvbW1pdChkYXR1
bSkpKTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9KS5jYXRjaChlcnJvciA9PiB7CiAgICAg
ICAgICAgICBpZiAobXlEaXNwYXRjaCA9PSB0aGlzLmxhdGVzdERpc3BhdGNoKQpJbmRleDogVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0
ZXMvaW52ZXN0aWdhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmll
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1s
CShyZXZpc2lvbiAyNzQyMTQpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJw
eS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xNTksNyArMTU5LDcgQEAgY2xhc3MgU3VpdGVGYWlsdXJlc1ZpZXcgewogCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPSIvY29t
bWl0cz8ke3BhcmFtc1RvUXVlcnkoY29tbWl0UGFyYW1zKX0iPiR7CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbW1pdHMubGVuZ3RoID09IHJlcG9zaXRvcmll
cy5zaXplID8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbW1pdHMucmV2ZXJzZSgpLm1hcChjb21taXQgPT4gY29tbWl0LmlkLnN1YnN0cmluZygwLDEy
KSkuam9pbignLCAnKSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb21taXRzLnJldmVyc2UoKS5tYXAoY29tbWl0ID0+IGNvbW1pdC5sYWJlbCgpKS5q
b2luKCcsICcpIDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGAke2NvbW1pdHMubGVuZ3RofSBjb21taXRzYAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH08L2E+YDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0pKCl9CkBAIC0yMjEsNyArMjIxLDcgQEAgY2xhc3MgU3VpdGVGYWlsdXJlc1ZpZXcgewog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9InRleHQgYmxv
Y2siIHN0eWxlPSJ3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWVkaXVtU2l6ZSkgLSAxNnB4KTsg
b3ZlcmZsb3c6IGhpZGRlbjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgdGV4dC1vdmVyZmxvdzogZWxs
aXBzaXM7ICJocmVmPSIvaW52ZXN0aWdhdGU/JHtwYXJhbXNUb1F1ZXJ5KGZhaWx1cmUudG9QYXJh
bXMoKSl9Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICR7Y29tbWl0cy5sZW5ndGggPwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGAke2NvbW1pdHNbMF0uaWQuc3Vic3RyaW5nKDAsMTIpfSAke2NvbW1p
dHMubGVuZ3RoID4gMSA/IGNvbW1pdHNbY29tbWl0cy5sZW5ndGggLSAxXS5pZC5zdWJzdHJpbmco
MCwxMikgOiAnJ31gIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBgJHtjb21taXRzWzBdLmxhYmVsKCl9ICR7Y29tbWl0cy5sZW5ndGggPiAxID8g
Y29tbWl0c1tjb21taXRzLmxlbmd0aCAtIDFdLmxhYmVsKCkgOiAnJ31gIDoKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPyd9IG9uICR7ZmFpbHVy
ZS5jb25maWd1cmF0aW9ufQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+
YDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422869</attachid>
            <date>2021-03-10 14:10:04 -0800</date>
            <delta_ts>2021-03-10 15:10:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223001-20210310141003.patch</filename>
            <type>text/plain</type>
            <size>10707</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDIzNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIzIEBACisyMDIxLTAzLTEwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIE1ha2UgY2xpZW50IGF3YXJlIG9mIGhhc2hlcyBh
bmQgcmV2aXNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjMwMDEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1MjM3ODEyPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9saWJyYXJp
ZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvY29tbWl0LmpzOgorICAg
ICAgICAoQ29tbWl0KTogU3VwcG9ydCBib3RoICJpZCIgYW5kICJpZGVudGlmaWVyIiBpbiBjb25z
dHJ1Y3Rvci4KKyAgICAgICAgKENvbW1pdC5wcm90b3R5cGUucmVwcik6IENlbnRyYWxpemUgc3Ry
aW5nIHJlcHJlc2VudGF0aW9uIG9mIGNvbW1pdC4KKyAgICAgICAgKF9Db21taXRCYW5rLnByb3Rv
dHlwZS5fbG9hZFNpYmxpbmdzKToKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRz
ZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3RpZ2F0ZS5qczoKKyAgICAgICAg
KGNvbW1pdHNGb3JVdWlkKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmll
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qczoKKyAg
ICAgICAgKHhBeGlzRnJvbVNjYWxlKTogVXNlIHJlcHIoKS4KKyAgICAgICAgKFRpbWVsaW5lRnJv
bUVuZHBvaW50LnByb3RvdHlwZS5yZW5kZXIub25Eb3RFbnRlckZhY3RvcnkpOiBEaXR0by4KKyAg
ICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3Rl
bXBsYXRlcy9jb21taXRzLmh0bWw6IENvbnZlcnQgSlNPTiB0byBDb21taXQgb2JqZWN0LgorICAg
ICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2ludmVzdGlnYXRlLmh0bWw6IFVzZSByZXByKCkuCisKIDIwMjEtMDMtMTAgIEFkcmlh
biBQZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbV1BFXVtH
VEtdIFJ1bm5pbmcgVG9vbHMvZ3RrL2luc3RhbGwtZGVwZW5kZW5jaWVzIGluc3RhbGxzIHRvbyBt
YW55IHBhY2thZ2VzIG9uIERlYmlhbi9VYnVudHUKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFy
aWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2NvbW1pdC5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJw
eS92aWV3L3N0YXRpYy9qcy9jb21taXQuanMJKHJldmlzaW9uIDI3NDIzNSkKKysrIFRvb2xzL1Nj
cmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2Nv
bW1pdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTAxLDE2ICsxMDEsMTYgQEAgZnVuY3Rpb24gQ29t
bWl0VGFibGUoY29tbWl0cywgcmVwb3NpdG9yeQogICAgICAgICAgICAgICAgICAgICBsZXQgY29t
bWl0QXJncyA9IHBhcmFtc1RvUXVlcnkoewogICAgICAgICAgICAgICAgICAgICAgICAgcmVwb3Np
dG9yeV9pZDogW2NlbGwuY29tbWl0LnJlcG9zaXRvcnlfaWRdLAogICAgICAgICAgICAgICAgICAg
ICAgICAgYnJhbmNoOiBbY2VsbC5jb21taXQuYnJhbmNoXSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGlkOiBbY2VsbC5jb21taXQuaWRdLAorICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFtj
ZWxsLmNvbW1pdC5pZGVudGlmaWVyXSwKICAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAg
ICAgICAgICAgICAgIGxldCBpbnZlc3RpZ2F0ZUFyZ3MgPSB7aWQ6IFtjZWxsLmNvbW1pdC5pZF19
OwotICAgICAgICAgICAgICAgICAgICBpZiAoIVsnbWFzdGVyJywgJ3RydW5rJ10uaW5jbHVkZXMo
Y2VsbC5jb21taXQuYnJhbmNoKSkKKyAgICAgICAgICAgICAgICAgICAgbGV0IGludmVzdGlnYXRl
QXJncyA9IHtpZDogW2NlbGwuY29tbWl0LmlkZW50aWZpZXJdfTsKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKCFbJ21hc3RlcicsICdtYWluJywgJ3RydW5rJ10uaW5jbHVkZXMoY2VsbC5jb21taXQu
YnJhbmNoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGludmVzdGlnYXRlQXJncy5icmFuY2gg
PSBbY2VsbC5jb21taXQuYnJhbmNoXTsKIAogICAgICAgICAgICAgICAgICAgICByZXR1cm4gYDx0
ZCByb3dzcGFuPSIke2NlbGwucm93c3Bhbn0iPgotICAgICAgICAgICAgICAgICAgICAgICAgPGEg
aHJlZj0iL2NvbW1pdD8ke2NvbW1pdEFyZ3N9Ij4ke2NlbGwuY29tbWl0LmlkfTwvYT4gPGJyPgor
ICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2NvbW1pdD8ke2NvbW1pdEFyZ3N9Ij4k
e2NlbGwuY29tbWl0LmxhYmVsKCl9PC9hPiA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICBC
cmFuY2g6ICR7Y2VsbC5jb21taXQuYnJhbmNofSA8YnI+Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBDb21taXR0ZXI6ICR7ZXNjYXBlSFRNTChjZWxsLmNvbW1pdC5jb21taXR0ZXIpfSA8YnI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICBBdXRob3I6ICR7ZXNjYXBlSFRNTChjZWxsLmNvbW1pdC5h
dXRob3IpfSA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29tbWl0L2lu
Zm8/JHtjb21taXRBcmdzfSI+TW9yZSBJbmZvPC9hPjxicj4KICAgICAgICAgICAgICAgICAgICAg
ICAgIDxhIGhyZWY9Ii9pbnZlc3RpZ2F0ZT8ke3BhcmFtc1RvUXVlcnkoaW52ZXN0aWdhdGVBcmdz
KX0iPlRlc3QgcmVzdWx0cyBmb3IgY29tbWl0PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAg
JHtmdW5jdGlvbigpIHsKQEAgLTEyOSwxOCArMTI5LDI3IEBAIGZ1bmN0aW9uIENvbW1pdFRhYmxl
KGNvbW1pdHMsIHJlcG9zaXRvcnkKIAogY2xhc3MgQ29tbWl0IHsKICAgICBjb25zdHJ1Y3Rvcihq
c29uKSB7CisgICAgICAgIHRoaXMuaWRlbnRpZmllciA9IGpzb24uaWRlbnRpZmllciA/IGpzb24u
aWRlbnRpZmllciA6IGpzb24uaWQ7CisgICAgICAgIHRoaXMucmV2aXNpb24gPSBqc29uLnJldmlz
aW9uOworICAgICAgICB0aGlzLmhhc2ggPSBqc29uLmhhc2g7CisKKyAgICAgICAgdGhpcy5hdXRo
b3IgPSBqc29uLmF1dGhvciA/IGpzb24uYXV0aG9yLm5hbWUgOiBqc29uLmNvbW1pdHRlcjsKKwor
ICAgICAgICB0aGlzLnJlcG9zaXRvcnlfaWQgPSBqc29uLnJlcG9zaXRvcnlfaWQ7CiAgICAgICAg
IHRoaXMuYnJhbmNoID0ganNvbi5icmFuY2g7Ci0gICAgICAgIHRoaXMuY29tbWl0dGVyID0ganNv
bi5jb21taXR0ZXI7Ci0gICAgICAgIHRoaXMuaWQgPSBqc29uLmlkOwogICAgICAgICB0aGlzLm1l
c3NhZ2UgPSBqc29uLm1lc3NhZ2U7Ci0gICAgICAgIHRoaXMub3JkZXIgPSBqc29uLm9yZGVyOwot
ICAgICAgICB0aGlzLnJlcG9zaXRvcnlfaWQgPSBqc29uLnJlcG9zaXRvcnlfaWQ7CisKICAgICAg
ICAgdGhpcy50aW1lc3RhbXAgPSBqc29uLnRpbWVzdGFtcDsKKyAgICAgICAgdGhpcy5vcmRlciA9
IGpzb24ub3JkZXI7CiAgICAgICAgIHRoaXMudXVpZCA9IHRoaXMudGltZXN0YW1wICogVElNRVNU
QU1QX1RPX1VVSURfTVVMVElQTElFUiArIHRoaXMub3JkZXI7CiAgICAgfQogICAgIGNvbXBhcmUo
Y29tbWl0KSB7CiAgICAgICAgIHJldHVybiB0aGlzLnV1aWQgLSBjb21taXQudXVpZDsKICAgICB9
CisgICAgbGFiZWwoKSB7CisgICAgICAgIC8vIFBlciB0aGUgYmlydGhkYXkgcGFyYWRveCwgMTAl
IGNoYW5nZSBvZiBjb2xsaXNpb24gd2l0aCA3LjcgbWlsbGlvbiBjb21taXRzIHdpdGggMTIgY2hh
cmFjdGVyIGNvbW1pdHMKKyAgICAgICAgcmV0dXJuIHRoaXMuaWRlbnRpZmllci5zdWJzdHJpbmco
MCwxMik7CisgICAgfQogfTsKIAogY2xhc3MgX0NvbW1pdEJhbmsgewpAQCAtMjg2LDcgKzI5NSw3
IEBAIGNsYXNzIF9Db21taXRCYW5rIHsKICAgICAgICAgY29uc3QgcXVlcnkgPSBwYXJhbXNUb1F1
ZXJ5KHsKICAgICAgICAgICAgIGJyYW5jaDogW2NvbW1pdC5icmFuY2hdLAogICAgICAgICAgICAg
cmVwb3NpdG9yeV9pZDogW2NvbW1pdC5yZXBvc2l0b3J5X2lkXSwKLSAgICAgICAgICAgIGlkOiBb
Y29tbWl0LmlkXSwKKyAgICAgICAgICAgIGlkOiBbY29tbWl0LmlkZW50aWZpZXJdLAogICAgICAg
ICB9KTsKICAgICAgICAgcmV0dXJuIGZldGNoKCdhcGkvY29tbWl0cy9zaWJsaW5ncz8nICsgcXVl
cnkpLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgICAgICAgbGV0IHNlbGYgPSB0aGlzOwpJbmRl
eDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9z
dGF0aWMvanMvaW52ZXN0aWdhdGUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvaW52ZXN0aWdhdGUu
anMJKHJldmlzaW9uIDI3NDIzNSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNk
YnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2ludmVzdGlnYXRlLmpzCSh3b3JraW5nIGNv
cHkpCkBAIC0zOCw3ICszOCw3IEBAIGZ1bmN0aW9uIGNvbW1pdHNGb3JVdWlkKHV1aWQpIHsKICAg
ICAgICAgICAgIGlmICghcGFyYW1zLmJyYW5jaCkKICAgICAgICAgICAgICAgICBkZWxldGUgcGFy
YW1zLmJyYW5jaDsKICAgICAgICAgICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zVG9RdWVyeShwYXJh
bXMpOwotICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPSIvY29tbWl0L2luZm8/JHtxdWVyeX0i
IHRhcmdldD0iX2JsYW5rIj4ke2NvbW1pdC5pZC5zdWJzdHJpbmcoMCwxMil9PC9hPmA7CisgICAg
ICAgICAgICByZXR1cm4gYDxhIGhyZWY9Ii9jb21taXQvaW5mbz8ke3F1ZXJ5fSIgdGFyZ2V0PSJf
YmxhbmsiPiR7Y29tbWl0LmxhYmVsKCl9PC9hPmA7CiAgICAgICAgIH0pLmpvaW4oJywgJyl9YAog
fQogCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJw
eS92aWV3L3N0YXRpYy9qcy90aW1lbGluZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy90aW1lbGlu
ZS5qcwkocmV2aXNpb24gMjc0MjM1KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvdGltZWxpbmUuanMJKHdvcmtpbmcgY29w
eSkKQEAgLTE3MCw3ICsxNzAsNyBAQCBmdW5jdGlvbiB4QXhpc0Zyb21TY2FsZShzY2FsZSwgcmVw
b3NpdG9yCiAgICAgfQogCiAgICAgZnVuY3Rpb24gb25TY2FsZUNsaWNrKG5vZGUpIHsKLSAgICAg
ICAgaWYgKCFub2RlLmxhYmVsLmlkKQorICAgICAgICBpZiAoIW5vZGUubGFiZWwubGFiZWwoKSkK
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgbGV0IHBhcmFtcyA9IHsKICAgICAgICAgICAg
IGJyYW5jaDogbm9kZS5sYWJlbC5icmFuY2ggPyBbbm9kZS5sYWJlbC5icmFuY2hdIDogcXVlcnlU
b1BhcmFtcyhkb2N1bWVudC5VUkwuc3BsaXQoJz8nKVsxXSkuYnJhbmNoLApAQCAtMTkxLDcgKzE5
MSw3IEBAIGZ1bmN0aW9uIHhBeGlzRnJvbVNjYWxlKHNjYWxlLCByZXBvc2l0b3IKICAgICAgICAg
ICAgIFRvb2xUaXAuc2V0KAogICAgICAgICAgICAgICAgIGA8ZGl2IGNsYXNzPSJjb250ZW50Ij4K
ICAgICAgICAgICAgICAgICAgICAgVGltZTogJHtuZXcgRGF0ZShub2RlLmxhYmVsLnRpbWVzdGFt
cCAqIDEwMDApLnRvTG9jYWxlU3RyaW5nKCl9PGJyPgotICAgICAgICAgICAgICAgICAgICBDb21t
aXR0ZXI6ICR7bm9kZS5sYWJlbC5jb21taXR0ZXJ9CisgICAgICAgICAgICAgICAgICAgIEF1dGhv
cjogJHtub2RlLmxhYmVsLmF1dGhvcn0KICAgICAgICAgICAgICAgICAgICAgJHtub2RlLmxhYmVs
Lm1lc3NhZ2UgPyBgPGJyPjxkaXY+JHtlc2NhcGVIVE1MKG5vZGUubGFiZWwubWVzc2FnZS5zcGxp
dCgnXG4nKVswXSl9PC9kaXY+YCA6ICcnfQogICAgICAgICAgICAgICAgIDwvZGl2PmAsCiAgICAg
ICAgICAgICAgICAgbm9kZS50aXBQb2ludHMubWFwKChwb2ludCkgPT4gewpAQCAtMjA2LDggKzIw
Niw3IEBAIGZ1bmN0aW9uIHhBeGlzRnJvbVNjYWxlKHNjYWxlLCByZXBvc2l0b3IKICAgICAgICAg
ICAgIGlmICghVG9vbFRpcC5pc0luKHt4OiBldmVudC54LCB5OiBldmVudC55IC0gc2Nyb2xsRGVs
dGF9KSkKICAgICAgICAgICAgICAgICBUb29sVGlwLnVuc2V0KCk7CiAgICAgICAgIH0sCi0gICAg
ICAgIC8vIFBlciB0aGUgYmlydGhkYXkgcGFyYWRveCwgMTAlIGNoYW5nZSBvZiBjb2xsaXNpb24g
d2l0aCA3LjcgbWlsbGlvbiBjb21taXRzIHdpdGggMTIgY2hhcmFjdGVyIGNvbW1pdHMKLSAgICAg
ICAgZ2V0TGFiZWxGdW5jOiAoY29tbWl0KSA9PiB7cmV0dXJuIGNvbW1pdCA/IGNvbW1pdC5pZC5z
dWJzdHJpbmcoMCwxMikgOiAnPyc7fSwKKyAgICAgICAgZ2V0TGFiZWxGdW5jOiAoY29tbWl0KSA9
PiB7cmV0dXJuIGNvbW1pdCA/IGNvbW1pdC5sYWJlbCgpIDogJz8nO30sCiAgICAgICAgIGdldFNj
YWxlRnVuYzogKGNvbW1pdCkgPT4gY29tbWl0LnV1aWQsCiAgICAgICAgIGV4cG9ydGVyOiAodXBk
YXRlRnVuY3Rpb24pID0+IHsKICAgICAgICAgICAgIHVwZGF0ZXNBcnJheS5wdXNoKChzY2FsZSkg
PT4ge3VwZGF0ZUZ1bmN0aW9uKHNjYWxlRm9yUmVwb3NpdG9yeShzY2FsZSkpO30pOwpAQCAtNjUz
LDcgKzY1Miw3IEBAIGNsYXNzIFRpbWVsaW5lRnJvbUVuZHBvaW50IHsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoIXBhcmFtcy5icmFuY2gpCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRlbGV0ZSBwYXJhbXMuYnJhbmNoOwogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zVG9RdWVyeShwYXJhbXMpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0iL2NvbW1pdC9pbmZvPyR7cXVlcnl9IiB0YXJn
ZXQ9Il9ibGFuayI+JHtjb21taXQuaWQuc3Vic3RyaW5nKDAsMTIpfTwvYT5gOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj0iL2NvbW1pdC9pbmZvPyR7cXVlcnl9
IiB0YXJnZXQ9Il9ibGFuayI+JHtjb21taXQubGFiZWwoKX08L2E+YDsKICAgICAgICAgICAgICAg
ICAgICAgICAgIH0pLmpvaW4oJywgJyl9CiAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+CiAg
ICAgICAgICAgICAgICAgICAgICAgICAke3BhcnRpYWxDb25maWd1cmF0aW9ufQpJbmRleDogVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0
ZXMvY29tbWl0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2NvbW1pdHMuaHRtbAkocmV2aXNp
b24gMjc0MjM1KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3
ICszMCw3IEBACiA8c2NyaXB0IHR5cGU9Im1vZHVsZSI+CiBpbXBvcnQge1JFRiwgRE9NfSBmcm9t
ICcvbGlicmFyeS9qcy9SZWYuanMnOwogaW1wb3J0IHtFcnJvckRpc3BsYXl9IGZyb20gJy9hc3Nl
dHMvanMvY29tbW9uLmpzJzsKLWltcG9ydCB7Q29tbWl0VGFibGV9IGZyb20gJy9hc3NldHMvanMv
Y29tbWl0LmpzJzsKK2ltcG9ydCB7Q29tbWl0LCBDb21taXRUYWJsZX0gZnJvbSAnL2Fzc2V0cy9q
cy9jb21taXQuanMnOwogaW1wb3J0IHtEcmF3ZXIsIEJyYW5jaFNlbGVjdG9yLCBMaW1pdFNsaWRl
cn0gZnJvbSAnL2Fzc2V0cy9qcy9kcmF3ZXIuanMnOwogCiB2YXIgb25lTGluZSA9IHRydWU7CkBA
IC03MSw3ICs3MSw3IEBAIGNsYXNzIFRhYmxlIHsKICAgICAgICAgZmV0Y2gocXVlcnkgPyAnYXBp
L2NvbW1pdHM/JyArIHF1ZXJ5IDogJ2FwaS9jb21taXRzJykudGhlbihyZXNwb25zZSA9PiB7CiAg
ICAgICAgICAgICByZXNwb25zZS5qc29uKCkudGhlbihqc29uID0+IHsKICAgICAgICAgICAgICAg
ICBpZiAobXlEaXNwYXRjaCA9PSB0aGlzLmxhdGVzdERpc3BhdGNoKQotICAgICAgICAgICAgICAg
ICAgICB0aGlzLnJlZi5zZXRTdGF0ZShqc29uKTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5y
ZWYuc2V0U3RhdGUoanNvbi5tYXAoZGF0dW0gPT4gbmV3IENvbW1pdChkYXR1bSkpKTsKICAgICAg
ICAgICAgIH0pOwogICAgICAgICB9KS5jYXRjaChlcnJvciA9PiB7CiAgICAgICAgICAgICBpZiAo
bXlEaXNwYXRjaCA9PSB0aGlzLmxhdGVzdERpc3BhdGNoKQpJbmRleDogVG9vbHMvU2NyaXB0cy9s
aWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdh
dGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJw
eS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1sCShyZXZpc2lvbiAy
NzQyMzUpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJw
eS92aWV3L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNTks
NyArMTU5LDcgQEAgY2xhc3MgU3VpdGVGYWlsdXJlc1ZpZXcgewogCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPSIvY29tbWl0cz8ke3BhcmFt
c1RvUXVlcnkoY29tbWl0UGFyYW1zKX0iPiR7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbW1pdHMubGVuZ3RoID09IHJlcG9zaXRvcmllcy5zaXplID8KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbW1pdHMucmV2
ZXJzZSgpLm1hcChjb21taXQgPT4gY29tbWl0LmlkLnN1YnN0cmluZygwLDEyKSkuam9pbignLCAn
KSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21t
aXRzLnJldmVyc2UoKS5tYXAoY29tbWl0ID0+IGNvbW1pdC5sYWJlbCgpKS5qb2luKCcsICcpIDoK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NvbW1p
dHMubGVuZ3RofSBjb21taXRzYAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH08L2E+YDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCl9CkBA
IC0yMjEsNyArMjIxLDcgQEAgY2xhc3MgU3VpdGVGYWlsdXJlc1ZpZXcgewogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9InRleHQgYmxvY2siIHN0eWxlPSJ3
aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWVkaXVtU2l6ZSkgLSAxNnB4KTsgb3ZlcmZsb3c6IGhp
ZGRlbjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7ICJocmVm
PSIvaW52ZXN0aWdhdGU/JHtwYXJhbXNUb1F1ZXJ5KGZhaWx1cmUudG9QYXJhbXMoKSl9Ij4KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7Y29tbWl0cy5s
ZW5ndGggPwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGAke2NvbW1pdHNbMF0uaWQuc3Vic3RyaW5nKDAsMTIpfSAke2NvbW1pdHMubGVuZ3RoID4g
MSA/IGNvbW1pdHNbY29tbWl0cy5sZW5ndGggLSAxXS5pZC5zdWJzdHJpbmcoMCwxMikgOiAnJ31g
IDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBg
JHtjb21taXRzWzBdLmxhYmVsKCl9ICR7Y29tbWl0cy5sZW5ndGggPiAxID8gY29tbWl0c1tjb21t
aXRzLmxlbmd0aCAtIDFdLmxhYmVsKCkgOiAnJ31gIDoKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPyd9IG9uICR7ZmFpbHVyZS5jb25maWd1cmF0
aW9ufQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+YDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422877</attachid>
            <date>2021-03-10 15:10:49 -0800</date>
            <delta_ts>2021-03-10 16:01:19 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-223001-20210310151048.patch</filename>
            <type>text/plain</type>
            <size>11825</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDI0MSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI1IEBACisyMDIxLTAzLTEwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIE1ha2UgY2xpZW50IGF3YXJlIG9mIGhhc2hlcyBh
bmQgcmV2aXNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjMwMDEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1MjM3ODEyPgorCisgICAgICAg
IFJldmlld2VkIGJ5IERld2VpIFpodS4KKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L19faW5pdF9fLnB5OiBCdW1wIHZlcnNpb24uCisgICAgICAg
ICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMv
anMvY29tbWl0LmpzOgorICAgICAgICAoQ29tbWl0KTogU3VwcG9ydCBib3RoICJpZCIgYW5kICJp
ZGVudGlmaWVyIiBpbiBjb25zdHJ1Y3Rvci4KKyAgICAgICAgKENvbW1pdC5wcm90b3R5cGUucmVw
cik6IENlbnRyYWxpemUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGNvbW1pdC4KKyAgICAgICAg
KF9Db21taXRCYW5rLnByb3RvdHlwZS5fbG9hZFNpYmxpbmdzKToKKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3Rp
Z2F0ZS5qczoKKyAgICAgICAgKGNvbW1pdHNGb3JVdWlkKTogVXNlIHJlcHIoKS4KKyAgICAgICAg
KiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9q
cy90aW1lbGluZS5qczoKKyAgICAgICAgKHhBeGlzRnJvbVNjYWxlKTogVXNlIHJlcHIoKS4KKyAg
ICAgICAgKFRpbWVsaW5lRnJvbUVuZHBvaW50LnByb3RvdHlwZS5yZW5kZXIub25Eb3RFbnRlckZh
Y3RvcnkpOiBEaXR0by4KKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9y
ZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9jb21taXRzLmh0bWw6IENvbnZlcnQgSlNPTiB0byBD
b21taXQgb2JqZWN0LgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jl
c3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2ludmVzdGlnYXRlLmh0bWw6IFVzZSByZXByKCkuCisg
ICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvc2V0dXAucHk6IEJ1bXAgdmVy
c2lvbi4KKwogMjAyMS0wMy0xMCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEltcHJvdmUgQXBwbGVMYW5ndWFnZXNUZXN0LlVwZGF0ZUFwcGxlTGFuZ3VhZ2VzIEFQ
SSB0ZXN0CkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1cC5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1
cC5weQkocmV2aXNpb24gMjc0MjM1KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0
c2RicHkvc2V0dXAucHkJKHdvcmtpbmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAgZGVmIHJlYWRt
ZSgpOgogCiBzZXR1cCgKICAgICBuYW1lPSdyZXN1bHRzZGJweScsCi0gICAgdmVyc2lvbj0nMS4x
LjMnLAorICAgIHZlcnNpb249JzIuMC4xJywKICAgICBkZXNjcmlwdGlvbj0nTGlicmFyeSBmb3Ig
dmlzdWFsaXppbmcsIHByb2Nlc3NpbmcgYW5kIHN0b3JpbmcgdGVzdCByZXN1bHRzLicsCiAgICAg
bG9uZ19kZXNjcmlwdGlvbj1yZWFkbWUoKSwKICAgICBjbGFzc2lmaWVycz1bCkluZGV4OiBUb29s
cy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9fX2luaXRfXy5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRz
ZGJweS9fX2luaXRfXy5weQkocmV2aXNpb24gMjc0MjM1KQorKysgVG9vbHMvU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvX19pbml0X18ucHkJKHdvcmtpbmcgY29weSkK
QEAgLTQ0LDYgKzQ0LDYgQEAgZXhjZXB0IEltcG9ydEVycm9yOgogICAgICAgICAiUGxlYXNlIGlu
c3RhbGwgd2Via2l0Y29yZXB5IHdpdGggYHBpcCBpbnN0YWxsIHdlYmtpdGNvcmVweSAtLWV4dHJh
LWluZGV4LXVybCA8cGFja2FnZSBpbmRleCBVUkw+YCIKICAgICApCiAKLXZlcnNpb24gPSBWZXJz
aW9uKDIsIDAsIDApCit2ZXJzaW9uID0gVmVyc2lvbigyLCAwLCAxKQogCiBuYW1lID0gJ3Jlc3Vs
dHNkYnB5JwpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy9zdGF0aWMvanMvY29tbWl0LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2NvbW1p
dC5qcwkocmV2aXNpb24gMjc0MjM1KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvY29tbWl0LmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0xMDEsMTYgKzEwMSwxNiBAQCBmdW5jdGlvbiBDb21taXRUYWJsZShjb21taXRzLCByZXBv
c2l0b3J5CiAgICAgICAgICAgICAgICAgICAgIGxldCBjb21taXRBcmdzID0gcGFyYW1zVG9RdWVy
eSh7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXBvc2l0b3J5X2lkOiBbY2VsbC5jb21taXQu
cmVwb3NpdG9yeV9pZF0sCiAgICAgICAgICAgICAgICAgICAgICAgICBicmFuY2g6IFtjZWxsLmNv
bW1pdC5icmFuY2hdLAotICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFtjZWxsLmNvbW1pdC5p
ZF0sCisgICAgICAgICAgICAgICAgICAgICAgICBpZDogW2NlbGwuY29tbWl0LmlkZW50aWZpZXJd
LAogICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgbGV0IGludmVz
dGlnYXRlQXJncyA9IHtpZDogW2NlbGwuY29tbWl0LmlkXX07Ci0gICAgICAgICAgICAgICAgICAg
IGlmICghWydtYXN0ZXInLCAndHJ1bmsnXS5pbmNsdWRlcyhjZWxsLmNvbW1pdC5icmFuY2gpKQor
ICAgICAgICAgICAgICAgICAgICBsZXQgaW52ZXN0aWdhdGVBcmdzID0ge2lkOiBbY2VsbC5jb21t
aXQuaWRlbnRpZmllcl19OworICAgICAgICAgICAgICAgICAgICBpZiAoIVsnbWFzdGVyJywgJ21h
aW4nLCAndHJ1bmsnXS5pbmNsdWRlcyhjZWxsLmNvbW1pdC5icmFuY2gpKQogICAgICAgICAgICAg
ICAgICAgICAgICAgaW52ZXN0aWdhdGVBcmdzLmJyYW5jaCA9IFtjZWxsLmNvbW1pdC5icmFuY2hd
OwogCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgPHRkIHJvd3NwYW49IiR7Y2VsbC5yb3dz
cGFufSI+Ci0gICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvY29tbWl0PyR7Y29tbWl0
QXJnc30iPiR7Y2VsbC5jb21taXQuaWR9PC9hPiA8YnI+CisgICAgICAgICAgICAgICAgICAgICAg
ICA8YSBocmVmPSIvY29tbWl0PyR7Y29tbWl0QXJnc30iPiR7Y2VsbC5jb21taXQubGFiZWwoKX08
L2E+IDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgIEJyYW5jaDogJHtjZWxsLmNvbW1pdC5i
cmFuY2h9IDxicj4KLSAgICAgICAgICAgICAgICAgICAgICAgIENvbW1pdHRlcjogJHtlc2NhcGVI
VE1MKGNlbGwuY29tbWl0LmNvbW1pdHRlcil9IDxicj4KKyAgICAgICAgICAgICAgICAgICAgICAg
IEF1dGhvcjogJHtlc2NhcGVIVE1MKGNlbGwuY29tbWl0LmF1dGhvcil9IDxicj4KICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9jb21taXQvaW5mbz8ke2NvbW1pdEFyZ3N9Ij5Nb3Jl
IEluZm88L2E+PGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2ludmVzdGln
YXRlPyR7cGFyYW1zVG9RdWVyeShpbnZlc3RpZ2F0ZUFyZ3MpfSI+VGVzdCByZXN1bHRzIGZvciBj
b21taXQ8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAke2Z1bmN0aW9uKCkgewpAQCAtMTI5
LDE4ICsxMjksMjcgQEAgZnVuY3Rpb24gQ29tbWl0VGFibGUoY29tbWl0cywgcmVwb3NpdG9yeQog
CiBjbGFzcyBDb21taXQgewogICAgIGNvbnN0cnVjdG9yKGpzb24pIHsKKyAgICAgICAgdGhpcy5p
ZGVudGlmaWVyID0ganNvbi5pZGVudGlmaWVyID8ganNvbi5pZGVudGlmaWVyIDoganNvbi5pZDsK
KyAgICAgICAgdGhpcy5yZXZpc2lvbiA9IGpzb24ucmV2aXNpb247CisgICAgICAgIHRoaXMuaGFz
aCA9IGpzb24uaGFzaDsKKworICAgICAgICB0aGlzLmF1dGhvciA9IGpzb24uYXV0aG9yID8ganNv
bi5hdXRob3IubmFtZSA6IGpzb24uY29tbWl0dGVyOworCisgICAgICAgIHRoaXMucmVwb3NpdG9y
eV9pZCA9IGpzb24ucmVwb3NpdG9yeV9pZDsKICAgICAgICAgdGhpcy5icmFuY2ggPSBqc29uLmJy
YW5jaDsKLSAgICAgICAgdGhpcy5jb21taXR0ZXIgPSBqc29uLmNvbW1pdHRlcjsKLSAgICAgICAg
dGhpcy5pZCA9IGpzb24uaWQ7CiAgICAgICAgIHRoaXMubWVzc2FnZSA9IGpzb24ubWVzc2FnZTsK
LSAgICAgICAgdGhpcy5vcmRlciA9IGpzb24ub3JkZXI7Ci0gICAgICAgIHRoaXMucmVwb3NpdG9y
eV9pZCA9IGpzb24ucmVwb3NpdG9yeV9pZDsKKwogICAgICAgICB0aGlzLnRpbWVzdGFtcCA9IGpz
b24udGltZXN0YW1wOworICAgICAgICB0aGlzLm9yZGVyID0ganNvbi5vcmRlcjsKICAgICAgICAg
dGhpcy51dWlkID0gdGhpcy50aW1lc3RhbXAgKiBUSU1FU1RBTVBfVE9fVVVJRF9NVUxUSVBMSUVS
ICsgdGhpcy5vcmRlcjsKICAgICB9CiAgICAgY29tcGFyZShjb21taXQpIHsKICAgICAgICAgcmV0
dXJuIHRoaXMudXVpZCAtIGNvbW1pdC51dWlkOwogICAgIH0KKyAgICBsYWJlbCgpIHsKKyAgICAg
ICAgLy8gUGVyIHRoZSBiaXJ0aGRheSBwYXJhZG94LCAxMCUgY2hhbmNlIG9mIGNvbGxpc2lvbiB3
aXRoIDcuNyBtaWxsaW9uIGNvbW1pdHMgd2l0aCAxMiBjaGFyYWN0ZXIgY29tbWl0cworICAgICAg
ICByZXR1cm4gdGhpcy5pZGVudGlmaWVyLnN1YnN0cmluZygwLDEyKTsKKyAgICB9CiB9OwogCiBj
bGFzcyBfQ29tbWl0QmFuayB7CkBAIC0yODYsNyArMjk1LDcgQEAgY2xhc3MgX0NvbW1pdEJhbmsg
ewogICAgICAgICBjb25zdCBxdWVyeSA9IHBhcmFtc1RvUXVlcnkoewogICAgICAgICAgICAgYnJh
bmNoOiBbY29tbWl0LmJyYW5jaF0sCiAgICAgICAgICAgICByZXBvc2l0b3J5X2lkOiBbY29tbWl0
LnJlcG9zaXRvcnlfaWRdLAotICAgICAgICAgICAgaWQ6IFtjb21taXQuaWRdLAorICAgICAgICAg
ICAgaWQ6IFtjb21taXQuaWRlbnRpZmllcl0sCiAgICAgICAgIH0pOwogICAgICAgICByZXR1cm4g
ZmV0Y2goJ2FwaS9jb21taXRzL3NpYmxpbmdzPycgKyBxdWVyeSkudGhlbihyZXNwb25zZSA9PiB7
CiAgICAgICAgICAgICBsZXQgc2VsZiA9IHRoaXM7CkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJh
cmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3RpZ2F0ZS5q
cwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1
bHRzZGJweS92aWV3L3N0YXRpYy9qcy9pbnZlc3RpZ2F0ZS5qcwkocmV2aXNpb24gMjc0MjM1KQor
KysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9z
dGF0aWMvanMvaW52ZXN0aWdhdGUuanMJKHdvcmtpbmcgY29weSkKQEAgLTM4LDcgKzM4LDcgQEAg
ZnVuY3Rpb24gY29tbWl0c0ZvclV1aWQodXVpZCkgewogICAgICAgICAgICAgaWYgKCFwYXJhbXMu
YnJhbmNoKQogICAgICAgICAgICAgICAgIGRlbGV0ZSBwYXJhbXMuYnJhbmNoOwogICAgICAgICAg
ICAgY29uc3QgcXVlcnkgPSBwYXJhbXNUb1F1ZXJ5KHBhcmFtcyk7Ci0gICAgICAgICAgICByZXR1
cm4gYDxhIGhyZWY9Ii9jb21taXQvaW5mbz8ke3F1ZXJ5fSIgdGFyZ2V0PSJfYmxhbmsiPiR7Y29t
bWl0LmlkLnN1YnN0cmluZygwLDEyKX08L2E+YDsKKyAgICAgICAgICAgIHJldHVybiBgPGEgaHJl
Zj0iL2NvbW1pdC9pbmZvPyR7cXVlcnl9IiB0YXJnZXQ9Il9ibGFuayI+JHtjb21taXQubGFiZWwo
KX08L2E+YDsKICAgICAgICAgfSkuam9pbignLCAnKX1gCiB9CiAKSW5kZXg6IFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL3RpbWVs
aW5lLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5
L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL3RpbWVsaW5lLmpzCShyZXZpc2lvbiAyNzQyMzUp
CisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3
L3N0YXRpYy9qcy90aW1lbGluZS5qcwkod29ya2luZyBjb3B5KQpAQCAtMTcwLDcgKzE3MCw3IEBA
IGZ1bmN0aW9uIHhBeGlzRnJvbVNjYWxlKHNjYWxlLCByZXBvc2l0b3IKICAgICB9CiAKICAgICBm
dW5jdGlvbiBvblNjYWxlQ2xpY2sobm9kZSkgewotICAgICAgICBpZiAoIW5vZGUubGFiZWwuaWQp
CisgICAgICAgIGlmICghbm9kZS5sYWJlbC5sYWJlbCgpKQogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICBsZXQgcGFyYW1zID0gewogICAgICAgICAgICAgYnJhbmNoOiBub2RlLmxhYmVsLmJy
YW5jaCA/IFtub2RlLmxhYmVsLmJyYW5jaF0gOiBxdWVyeVRvUGFyYW1zKGRvY3VtZW50LlVSTC5z
cGxpdCgnPycpWzFdKS5icmFuY2gsCkBAIC0xOTEsNyArMTkxLDcgQEAgZnVuY3Rpb24geEF4aXNG
cm9tU2NhbGUoc2NhbGUsIHJlcG9zaXRvcgogICAgICAgICAgICAgVG9vbFRpcC5zZXQoCiAgICAg
ICAgICAgICAgICAgYDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICBU
aW1lOiAke25ldyBEYXRlKG5vZGUubGFiZWwudGltZXN0YW1wICogMTAwMCkudG9Mb2NhbGVTdHJp
bmcoKX08YnI+Ci0gICAgICAgICAgICAgICAgICAgIENvbW1pdHRlcjogJHtub2RlLmxhYmVsLmNv
bW1pdHRlcn0KKyAgICAgICAgICAgICAgICAgICAgQXV0aG9yOiAke25vZGUubGFiZWwuYXV0aG9y
fQogICAgICAgICAgICAgICAgICAgICAke25vZGUubGFiZWwubWVzc2FnZSA/IGA8YnI+PGRpdj4k
e2VzY2FwZUhUTUwobm9kZS5sYWJlbC5tZXNzYWdlLnNwbGl0KCdcbicpWzBdKX08L2Rpdj5gIDog
Jyd9CiAgICAgICAgICAgICAgICAgPC9kaXY+YCwKICAgICAgICAgICAgICAgICBub2RlLnRpcFBv
aW50cy5tYXAoKHBvaW50KSA9PiB7CkBAIC0yMDYsOCArMjA2LDcgQEAgZnVuY3Rpb24geEF4aXNG
cm9tU2NhbGUoc2NhbGUsIHJlcG9zaXRvcgogICAgICAgICAgICAgaWYgKCFUb29sVGlwLmlzSW4o
e3g6IGV2ZW50LngsIHk6IGV2ZW50LnkgLSBzY3JvbGxEZWx0YX0pKQogICAgICAgICAgICAgICAg
IFRvb2xUaXAudW5zZXQoKTsKICAgICAgICAgfSwKLSAgICAgICAgLy8gUGVyIHRoZSBiaXJ0aGRh
eSBwYXJhZG94LCAxMCUgY2hhbmdlIG9mIGNvbGxpc2lvbiB3aXRoIDcuNyBtaWxsaW9uIGNvbW1p
dHMgd2l0aCAxMiBjaGFyYWN0ZXIgY29tbWl0cwotICAgICAgICBnZXRMYWJlbEZ1bmM6IChjb21t
aXQpID0+IHtyZXR1cm4gY29tbWl0ID8gY29tbWl0LmlkLnN1YnN0cmluZygwLDEyKSA6ICc/Jzt9
LAorICAgICAgICBnZXRMYWJlbEZ1bmM6IChjb21taXQpID0+IHtyZXR1cm4gY29tbWl0ID8gY29t
bWl0LmxhYmVsKCkgOiAnPyc7fSwKICAgICAgICAgZ2V0U2NhbGVGdW5jOiAoY29tbWl0KSA9PiBj
b21taXQudXVpZCwKICAgICAgICAgZXhwb3J0ZXI6ICh1cGRhdGVGdW5jdGlvbikgPT4gewogICAg
ICAgICAgICAgdXBkYXRlc0FycmF5LnB1c2goKHNjYWxlKSA9PiB7dXBkYXRlRnVuY3Rpb24oc2Nh
bGVGb3JSZXBvc2l0b3J5KHNjYWxlKSk7fSk7CkBAIC02NTMsNyArNjUyLDcgQEAgY2xhc3MgVGlt
ZWxpbmVGcm9tRW5kcG9pbnQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcGFy
YW1zLmJyYW5jaCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHBhcmFt
cy5icmFuY2g7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcXVlcnkgPSBwYXJh
bXNUb1F1ZXJ5KHBhcmFtcyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGA8
YSBocmVmPSIvY29tbWl0L2luZm8/JHtxdWVyeX0iIHRhcmdldD0iX2JsYW5rIj4ke2NvbW1pdC5p
ZC5zdWJzdHJpbmcoMCwxMil9PC9hPmA7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIGA8YSBocmVmPSIvY29tbWl0L2luZm8/JHtxdWVyeX0iIHRhcmdldD0iX2JsYW5rIj4ke2Nv
bW1pdC5sYWJlbCgpfTwvYT5gOwogICAgICAgICAgICAgICAgICAgICAgICAgfSkuam9pbignLCAn
KX0KICAgICAgICAgICAgICAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAg
ICR7cGFydGlhbENvbmZpZ3VyYXRpb259CkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9y
ZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9jb21taXRzLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkv
dmlldy90ZW1wbGF0ZXMvY29tbWl0cy5odG1sCShyZXZpc2lvbiAyNzQyMzUpCisrKyBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9j
b21taXRzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAKIDxzY3JpcHQgdHlw
ZT0ibW9kdWxlIj4KIGltcG9ydCB7UkVGLCBET019IGZyb20gJy9saWJyYXJ5L2pzL1JlZi5qcyc7
CiBpbXBvcnQge0Vycm9yRGlzcGxheX0gZnJvbSAnL2Fzc2V0cy9qcy9jb21tb24uanMnOwotaW1w
b3J0IHtDb21taXRUYWJsZX0gZnJvbSAnL2Fzc2V0cy9qcy9jb21taXQuanMnOworaW1wb3J0IHtD
b21taXQsIENvbW1pdFRhYmxlfSBmcm9tICcvYXNzZXRzL2pzL2NvbW1pdC5qcyc7CiBpbXBvcnQg
e0RyYXdlciwgQnJhbmNoU2VsZWN0b3IsIExpbWl0U2xpZGVyfSBmcm9tICcvYXNzZXRzL2pzL2Ry
YXdlci5qcyc7CiAKIHZhciBvbmVMaW5lID0gdHJ1ZTsKQEAgLTcxLDcgKzcxLDcgQEAgY2xhc3Mg
VGFibGUgewogICAgICAgICBmZXRjaChxdWVyeSA/ICdhcGkvY29tbWl0cz8nICsgcXVlcnkgOiAn
YXBpL2NvbW1pdHMnKS50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICAgICAgIHJlc3BvbnNlLmpz
b24oKS50aGVuKGpzb24gPT4gewogICAgICAgICAgICAgICAgIGlmIChteURpc3BhdGNoID09IHRo
aXMubGF0ZXN0RGlzcGF0Y2gpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMucmVmLnNldFN0YXRl
KGpzb24pOworICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZi5zZXRTdGF0ZShqc29uLm1hcChk
YXR1bSA9PiBuZXcgQ29tbWl0KGRhdHVtKSkpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0p
LmNhdGNoKGVycm9yID0+IHsKICAgICAgICAgICAgIGlmIChteURpc3BhdGNoID09IHRoaXMubGF0
ZXN0RGlzcGF0Y2gpCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9y
ZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2ludmVzdGlnYXRlLmh0bWwJKHJldmlzaW9uIDI3NDIzNSkKKysrIFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2ludmVz
dGlnYXRlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1OSw3ICsxNTksNyBAQCBjbGFzcyBTdWl0
ZUZhaWx1cmVzVmlldyB7CiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gYDxhIGhyZWY9Ii9jb21taXRzPyR7cGFyYW1zVG9RdWVyeShjb21taXRQYXJhbXMp
fSI+JHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWl0
cy5sZW5ndGggPT0gcmVwb3NpdG9yaWVzLnNpemUgPwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29tbWl0cy5yZXZlcnNlKCkubWFwKGNvbW1pdCA9PiBj
b21taXQuaWQuc3Vic3RyaW5nKDAsMTIpKS5qb2luKCcsICcpIDoKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbW1pdHMucmV2ZXJzZSgpLm1hcChjb21t
aXQgPT4gY29tbWl0LmxhYmVsKCkpLmpvaW4oJywgJykgOgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7Y29tbWl0cy5sZW5ndGh9IGNvbW1pdHNgCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTwvYT5gOwogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKX0KQEAgLTIyMSw3ICsyMjEsNyBAQCBjbGFz
cyBTdWl0ZUZhaWx1cmVzVmlldyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8YSBjbGFzcz0idGV4dCBibG9jayIgc3R5bGU9IndpZHRoOiBjYWxjKDEwMCUgLSB2YXIo
LS1tZWRpdW1TaXplKSAtIDE2cHgpOyBvdmVyZmxvdzogaGlkZGVuOyB3aGl0ZS1zcGFjZTogbm93
cmFwOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgImhyZWY9Ii9pbnZlc3RpZ2F0ZT8ke3BhcmFt
c1RvUXVlcnkoZmFpbHVyZS50b1BhcmFtcygpKX0iPgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJHtjb21taXRzLmxlbmd0aCA/Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7Y29tbWl0c1swXS5pZC5z
dWJzdHJpbmcoMCwxMil9ICR7Y29tbWl0cy5sZW5ndGggPiAxID8gY29tbWl0c1tjb21taXRzLmxl
bmd0aCAtIDFdLmlkLnN1YnN0cmluZygwLDEyKSA6ICcnfWAgOgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2NvbW1pdHNbMF0ubGFiZWwoKX0g
JHtjb21taXRzLmxlbmd0aCA+IDEgPyBjb21taXRzW2NvbW1pdHMubGVuZ3RoIC0gMV0ubGFiZWwo
KSA6ICcnfWAgOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICc/J30gb24gJHtmYWlsdXJlLmNvbmZpZ3VyYXRpb259CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L2Rpdj5gOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>