<?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>208940</bug_id>
          
          <creation_ts>2020-03-11 12:51:23 -0700</creation_ts>
          <short_desc>Add API endpoint in EWS django app to provide patch status in json format</short_desc>
          <delta_ts>2020-03-20 09:15:07 -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>Other</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=209342</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>
          
          <blocked>208938</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jbedard</cc>
    
    <cc>kocsen_chung</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1628803</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-11 12:51:23 -0700</bug_when>
    <thetext>Add API endpoint in EWS django app to provide patch status in json format. This data can be used by other tools.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628805</commentid>
    <comment_count>1</comment_count>
      <attachid>393279</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-11 12:56:32 -0700</bug_when>
    <thetext>Created attachment 393279
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628808</commentid>
    <comment_count>2</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-11 13:00:19 -0700</bug_when>
    <thetext>e.g.: https://ews.webkit-uat.org/status/390184/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628870</commentid>
    <comment_count>3</comment_count>
      <attachid>393279</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-03-11 15:14:49 -0700</bug_when>
    <thetext>Comment on attachment 393279
Patch

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

&gt; Tools/ChangeLog:3
&gt; +        Add API endpoint in EWS django app to provide patch status in json format

Good idea, curious if there is a specific use case you had in mind for this

&gt; Tools/BuildSlaveSupport/ews-app/ews/views/status.py:43
&gt; +        if build.result is None:

I wonder if something like this would be more elegant:

bubble[&apos;state&apos;] = {
    None: &apos;started&apos;,
    Buildbot.SUCCESS: &apos;pass&apos;,
    Buildbot.WARNINGS: &apos;pass&apos;,
    ...
}.get(build.result, &apos;error&apos;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629382</commentid>
    <comment_count>4</comment_count>
      <attachid>393419</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-12 15:12:16 -0700</bug_when>
    <thetext>Created attachment 393419
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629384</commentid>
    <comment_count>5</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-12 15:16:00 -0700</bug_when>
    <thetext>(In reply to Jonathan Bedard from comment #3)
&gt; Good idea, curious if there is a specific use case you had in mind for this
For https://bugs.webkit.org/show_bug.cgi?id=208938

&gt; I wonder if something like this would be more elegant:
I simplified it further, simply used build.result for &apos;state&apos;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629412</commentid>
    <comment_count>6</comment_count>
      <attachid>393419</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-03-12 16:23:01 -0700</bug_when>
    <thetext>Comment on attachment 393419
Patch

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

&gt; Tools/BuildSlaveSupport/ews-app/ews/views/status.py:67
&gt; +        response_data = {&apos;status&apos;: self._build_statuses_for_patch(patch)}

I think we should return the list directly instead of packaging it in a dictionary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629730</commentid>
    <comment_count>7</comment_count>
      <attachid>393511</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-13 11:31:35 -0700</bug_when>
    <thetext>Created attachment 393511
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629733</commentid>
    <comment_count>8</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-03-13 11:35:05 -0700</bug_when>
    <thetext>(In reply to Jonathan Bedard from comment #6)
&gt; I think we should return the list directly instead of packaging it in a dictionary.
Done in updated patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629742</commentid>
    <comment_count>9</comment_count>
      <attachid>393511</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-13 11:52:05 -0700</bug_when>
    <thetext>Comment on attachment 393511
Patch for landing

Clearing flags on attachment: 393511

Committed r258415: &lt;https://trac.webkit.org/changeset/258415&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629743</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-13 11:52:07 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629744</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-13 11:53:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/60427130&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393279</attachid>
            <date>2020-03-11 12:56:32 -0700</date>
            <delta_ts>2020-03-12 15:12:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208940-20200311155631.patch</filename>
            <type>text/plain</type>
            <size>5696</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1ODI3MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE3IEBACisyMDIwLTAzLTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBBZGQgQVBJIGVuZHBvaW50IGluIEVXUyBkamFuZ28gYXBwIHRvIHByb3Zp
ZGUgcGF0Y2ggc3RhdHVzIGluIGpzb24gZm9ybWF0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg5NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3Vy
bHMucHk6IEFkZGVkIHVybCBmb3IgbmV3IGFwaSBlbmRwb2ludC4KKyAgICAgICAgKiBCdWlsZFNs
YXZlU3VwcG9ydC9ld3MtYXBwL2V3cy92aWV3cy9zdGF0dXMucHk6IEFkZGVkLgorICAgICAgICAo
U3RhdHVzKToKKyAgICAgICAgKFN0YXR1cy5fYnVpbGRfYnViYmxlKToKKyAgICAgICAgKFN0YXR1
cy5fYnVpbGRfYnViYmxlc19mb3JfcGF0Y2gpOgorICAgICAgICAoU3RhdHVzLmdldCk6CisKIDIw
MjAtMDMtMTEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBc3Nl
cnRpb24gaGl0IHVuZGVyIFdlYlBhZ2VQcm94eTo6c3VzcGVuZEN1cnJlbnRQYWdlSWZQb3NzaWJs
ZSgpIHdoZW4gYnlwYXNzaW5nIGNlcnRpZmljYXRlIHdhcm5pbmcgcGFnZQpJbmRleDogVG9vbHMv
QnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3MvdXJscy5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy91cmxzLnB5CShyZXZpc2lvbiAyNTgyNzIp
CisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy91cmxzLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw2ICsyNCw3IEBAIGZyb20gZGphbmdvLmNvbmYudXJscyBpbXBvcnQgdXJs
CiAKIGZyb20gZXdzLnZpZXdzLmluZGV4IGltcG9ydCBJbmRleAogZnJvbSBld3Mudmlld3MucmVz
dWx0cyBpbXBvcnQgUmVzdWx0cworZnJvbSBld3Mudmlld3Muc3RhdHVzIGltcG9ydCBTdGF0dXMK
IGZyb20gZXdzLnZpZXdzLnN0YXR1c2J1YmJsZSBpbXBvcnQgU3RhdHVzQnViYmxlCiBmcm9tIGV3
cy52aWV3cy5yZXRyeXBhdGNoIGltcG9ydCBSZXRyeVBhdGNoCiBmcm9tIGV3cy52aWV3cy5zdWJt
aXR0b2V3cyBpbXBvcnQgU3VibWl0VG9FV1MKQEAgLTM2LDYgKzM3LDggQEAgdXJscGF0dGVybnMg
PSBbCiAgICAgdXJsKHInXnJlc3VsdHMvJCcsIFJlc3VsdHMuYXNfdmlldygpLCBuYW1lPSdyZXN1
bHRzJyksCiAgICAgIyBleDogL3JldHJ5LwogICAgIHVybChyJ15yZXRyeS8kJywgUmV0cnlQYXRj
aC5hc192aWV3KCksIG5hbWU9J3JldHJ5cGF0Y2gnKSwKKyAgICAjIGV4OiAvc3RhdHVzLzUKKyAg
ICB1cmwocidec3RhdHVzLyg/UDxwYXRjaF9pZD5bMC05XSspLyQnLCBTdGF0dXMuYXNfdmlldygp
LCBuYW1lPSdzdGF0dXMnKSwKICAgICAjIGV4OiAvc3RhdHVzLWJ1YmJsZS81CiAgICAgdXJsKHIn
XnN0YXR1cy1idWJibGUvKD9QPHBhdGNoX2lkPlswLTldKykvJCcsIFN0YXR1c0J1YmJsZS5hc192
aWV3KCksIG5hbWU9J3N0YXR1c2J1YmJsZScpLAogICAgICMgZXg6IC9zdWJtaXQtdG8tZXdzLwpJ
bmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3Mvdmlld3Mvc3RhdHVzLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3ZpZXdz
L3N0YXR1cy5weQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3Mt
YXBwL2V3cy92aWV3cy9zdGF0dXMucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw4NiBAQAor
IyBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIwor
IyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAor
IyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitmcm9tIF9fZnV0dXJlX18g
aW1wb3J0IHVuaWNvZGVfbGl0ZXJhbHMKKworZnJvbSBkamFuZ28uaHR0cCBpbXBvcnQgSnNvblJl
c3BvbnNlCitmcm9tIGRqYW5nby52aWV3cyBpbXBvcnQgVmlldworZnJvbSBld3MuY29tbW9uLmJ1
aWxkYm90IGltcG9ydCBCdWlsZGJvdAorZnJvbSBld3MubW9kZWxzLnBhdGNoIGltcG9ydCBQYXRj
aAorZnJvbSBld3Mudmlld3Muc3RhdHVzYnViYmxlIGltcG9ydCBTdGF0dXNCdWJibGUKK2ltcG9y
dCBld3MuY29uZmlnIGFzIGNvbmZpZworCisKK2NsYXNzIFN0YXR1cyhWaWV3KToKKyAgICBkZWYg
X2J1aWxkX2J1YmJsZShzZWxmLCBwYXRjaCwgcXVldWUpOgorICAgICAgICBidWJibGUgPSB7Cisg
ICAgICAgICAgICAnbmFtZSc6IHF1ZXVlLAorICAgICAgICB9CisgICAgICAgIGJ1aWxkLCBfID0g
U3RhdHVzQnViYmxlKCkuZ2V0X2xhdGVzdF9idWlsZF9mb3JfcXVldWUocGF0Y2gsIHF1ZXVlKQor
ICAgICAgICBpZiBub3QgYnVpbGQ6CisgICAgICAgICAgICBidWJibGVbJ3N0YXRlJ10gPSAnbm9u
ZScKKyAgICAgICAgICAgIHJldHVybiBidWJibGUKKworICAgICAgICBpZiBidWlsZC5yZXN1bHQg
aXMgTm9uZToKKyAgICAgICAgICAgIGJ1YmJsZVsnc3RhdGUnXSA9ICdzdGFydGVkJworICAgICAg
ICBlbGlmIGJ1aWxkLnJlc3VsdCBpbiBbQnVpbGRib3QuU1VDQ0VTUywgQnVpbGRib3QuV0FSTklO
R1NdOgorICAgICAgICAgICAgYnViYmxlWydzdGF0ZSddID0gJ3Bhc3MnCisgICAgICAgIGVsaWYg
YnVpbGQucmVzdWx0ID09IEJ1aWxkYm90LkZBSUxVUkU6CisgICAgICAgICAgICBidWJibGVbJ3N0
YXRlJ10gPSAnZmFpbCcKKyAgICAgICAgZWxpZiBidWlsZC5yZXN1bHQgPT0gQnVpbGRib3QuU0tJ
UFBFRDoKKyAgICAgICAgICAgIGJ1YmJsZVsnc3RhdGUnXSA9ICdza2lwcGVkJworICAgICAgICBl
bGlmIGJ1aWxkLnJlc3VsdCA9PSBCdWlsZGJvdC5FWENFUFRJT046CisgICAgICAgICAgICBidWJi
bGVbJ3N0YXRlJ10gPSAnZXJyb3InCisgICAgICAgIGVsaWYgYnVpbGQucmVzdWx0ID09IEJ1aWxk
Ym90LlJFVFJZOgorICAgICAgICAgICAgYnViYmxlWydzdGF0ZSddID0gJ3Byb3Zpc2lvbmFsLWZh
aWwnCisgICAgICAgIGVsaWYgYnVpbGQucmVzdWx0ID09IEJ1aWxkYm90LkNBTkNFTExFRDoKKyAg
ICAgICAgICAgIGJ1YmJsZVsnc3RhdGUnXSA9ICdjYW5jZWxsZWQnCisgICAgICAgIGVsc2U6Cisg
ICAgICAgICAgICBidWJibGVbJ3N0YXRlJ10gPSAnZXJyb3InCisKKyAgICAgICAgYnViYmxlWyd1
cmwnXSA9ICdodHRwczovL3t9LyMvYnVpbGRlcnMve30vYnVpbGRzL3t9Jy5mb3JtYXQoY29uZmln
LkJVSUxEQk9UX1NFUlZFUl9IT1NULCBidWlsZC5idWlsZGVyX2lkLCBidWlsZC5udW1iZXIpCisg
ICAgICAgIGJ1YmJsZVsndGltZXN0YW1wJ10gPSBidWlsZC5jb21wbGV0ZV9hdAorICAgICAgICBy
ZXR1cm4gYnViYmxlCisKKyAgICBkZWYgX2J1aWxkX2J1YmJsZXNfZm9yX3BhdGNoKHNlbGYsIHBh
dGNoKToKKyAgICAgICAgYnViYmxlcyA9IFtdCisgICAgICAgIGlmIG5vdCBwYXRjaDoKKyAgICAg
ICAgICAgIHJldHVybiBidWJibGVzCisKKyAgICAgICAgaWYgcGF0Y2guc2VudF90b19idWlsZGJv
dDoKKyAgICAgICAgICAgIGZvciBxdWV1ZSBpbiBTdGF0dXNCdWJibGUuQUxMX1FVRVVFUzoKKyAg
ICAgICAgICAgICAgICBidWJibGUgPSBzZWxmLl9idWlsZF9idWJibGUocGF0Y2gsIHF1ZXVlKQor
ICAgICAgICAgICAgICAgIGlmIGJ1YmJsZToKKyAgICAgICAgICAgICAgICAgICAgYnViYmxlcy5h
cHBlbmQoYnViYmxlKQorCisgICAgICAgIGlmIHBhdGNoLnNlbnRfdG9fY29tbWl0X3F1ZXVlOgor
ICAgICAgICAgICAgY3FfYnViYmxlID0gc2VsZi5fYnVpbGRfYnViYmxlKHBhdGNoLCAnY29tbWl0
JykKKyAgICAgICAgICAgIGlmIGNxX2J1YmJsZToKKyAgICAgICAgICAgICAgICBidWJibGVzLmlu
c2VydCgwLCBjcV9idWJibGUpCisKKyAgICAgICAgcmV0dXJuIGJ1YmJsZXMKKworICAgIGRlZiBn
ZXQoc2VsZiwgcmVxdWVzdCwgcGF0Y2hfaWQpOgorICAgICAgICBwYXRjaF9pZCA9IGludChwYXRj
aF9pZCkKKyAgICAgICAgcGF0Y2ggPSBQYXRjaC5nZXRfcGF0Y2gocGF0Y2hfaWQpCisgICAgICAg
IHJlc3BvbnNlX2RhdGEgPSB7J3N0YXR1cyc6IHNlbGYuX2J1aWxkX2J1YmJsZXNfZm9yX3BhdGNo
KHBhdGNoKX0KKyAgICAgICAgcmV0dXJuIEpzb25SZXNwb25zZShyZXNwb25zZV9kYXRhKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393419</attachid>
            <date>2020-03-12 15:12:16 -0700</date>
            <delta_ts>2020-03-13 11:31:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208940-20200312181215.patch</filename>
            <type>text/plain</type>
            <size>4854</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1ODI3MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDEzIEBACisyMDIwLTAzLTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBBZGQgQVBJIGVuZHBvaW50IGluIEVXUyBkamFuZ28gYXBwIHRvIHByb3Zp
ZGUgcGF0Y2ggc3RhdHVzIGluIGpzb24gZm9ybWF0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg5NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3Vy
bHMucHk6IEFkZGVkIHVybCBmb3IgbmV3IGFwaSBlbmRwb2ludC4KKyAgICAgICAgKiBCdWlsZFNs
YXZlU3VwcG9ydC9ld3MtYXBwL2V3cy92aWV3cy9zdGF0dXMucHk6IEFkZGVkLgorCiAyMDIwLTAz
LTExICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgQXNzZXJ0aW9u
IGhpdCB1bmRlciBXZWJQYWdlUHJveHk6OnN1c3BlbmRDdXJyZW50UGFnZUlmUG9zc2libGUoKSB3
aGVuIGJ5cGFzc2luZyBjZXJ0aWZpY2F0ZSB3YXJuaW5nIHBhZ2UKSW5kZXg6IFRvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3VybHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3MvdXJscy5weQkocmV2aXNpb24gMjU4MjcyKQorKysg
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3MvdXJscy5weQkod29ya2luZyBjb3B5
KQpAQCAtMjQsNiArMjQsNyBAQCBmcm9tIGRqYW5nby5jb25mLnVybHMgaW1wb3J0IHVybAogCiBm
cm9tIGV3cy52aWV3cy5pbmRleCBpbXBvcnQgSW5kZXgKIGZyb20gZXdzLnZpZXdzLnJlc3VsdHMg
aW1wb3J0IFJlc3VsdHMKK2Zyb20gZXdzLnZpZXdzLnN0YXR1cyBpbXBvcnQgU3RhdHVzCiBmcm9t
IGV3cy52aWV3cy5zdGF0dXNidWJibGUgaW1wb3J0IFN0YXR1c0J1YmJsZQogZnJvbSBld3Mudmll
d3MucmV0cnlwYXRjaCBpbXBvcnQgUmV0cnlQYXRjaAogZnJvbSBld3Mudmlld3Muc3VibWl0dG9l
d3MgaW1wb3J0IFN1Ym1pdFRvRVdTCkBAIC0zNiw2ICszNyw4IEBAIHVybHBhdHRlcm5zID0gWwog
ICAgIHVybChyJ15yZXN1bHRzLyQnLCBSZXN1bHRzLmFzX3ZpZXcoKSwgbmFtZT0ncmVzdWx0cycp
LAogICAgICMgZXg6IC9yZXRyeS8KICAgICB1cmwocidecmV0cnkvJCcsIFJldHJ5UGF0Y2guYXNf
dmlldygpLCBuYW1lPSdyZXRyeXBhdGNoJyksCisgICAgIyBleDogL3N0YXR1cy81CisgICAgdXJs
KHInXnN0YXR1cy8oP1A8cGF0Y2hfaWQ+WzAtOV0rKS8kJywgU3RhdHVzLmFzX3ZpZXcoKSwgbmFt
ZT0nc3RhdHVzJyksCiAgICAgIyBleDogL3N0YXR1cy1idWJibGUvNQogICAgIHVybChyJ15zdGF0
dXMtYnViYmxlLyg/UDxwYXRjaF9pZD5bMC05XSspLyQnLCBTdGF0dXNCdWJibGUuYXNfdmlldygp
LCBuYW1lPSdzdGF0dXNidWJibGUnKSwKICAgICAjIGV4OiAvc3VibWl0LXRvLWV3cy8KSW5kZXg6
IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3ZpZXdzL3N0YXR1cy5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy92aWV3cy9zdGF0
dXMucHkJKG5vbmV4aXN0ZW50KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9l
d3Mvdmlld3Mvc3RhdHVzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjggQEAKKyMgQ29w
eXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIwor
IyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORAorIyBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisjIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyMgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IKKyMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyMgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyMgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworZnJvbSBfX2Z1dHVyZV9fIGltcG9y
dCB1bmljb2RlX2xpdGVyYWxzCisKK2Zyb20gZGphbmdvLmh0dHAgaW1wb3J0IEpzb25SZXNwb25z
ZQorZnJvbSBkamFuZ28udmlld3MgaW1wb3J0IFZpZXcKK2Zyb20gZXdzLmNvbW1vbi5idWlsZGJv
dCBpbXBvcnQgQnVpbGRib3QKK2Zyb20gZXdzLm1vZGVscy5wYXRjaCBpbXBvcnQgUGF0Y2gKK2Zy
b20gZXdzLnZpZXdzLnN0YXR1c2J1YmJsZSBpbXBvcnQgU3RhdHVzQnViYmxlCitpbXBvcnQgZXdz
LmNvbmZpZyBhcyBjb25maWcKKworCitjbGFzcyBTdGF0dXMoVmlldyk6CisgICAgZGVmIF9idWls
ZF9zdGF0dXMoc2VsZiwgcGF0Y2gsIHF1ZXVlKToKKyAgICAgICAgYnVpbGQsIF8gPSBTdGF0dXNC
dWJibGUoKS5nZXRfbGF0ZXN0X2J1aWxkX2Zvcl9xdWV1ZShwYXRjaCwgcXVldWUpCisgICAgICAg
IGlmIG5vdCBidWlsZDoKKyAgICAgICAgICAgIHJldHVybiB7fQorCisgICAgICAgIHJldHVybiB7
CisgICAgICAgICAgICAnbmFtZSc6IHF1ZXVlLAorICAgICAgICAgICAgJ3N0YXRlJzogYnVpbGQu
cmVzdWx0LAorICAgICAgICAgICAgJ3VybCc6ICdodHRwczovL3t9LyMvYnVpbGRlcnMve30vYnVp
bGRzL3t9Jy5mb3JtYXQoY29uZmlnLkJVSUxEQk9UX1NFUlZFUl9IT1NULCBidWlsZC5idWlsZGVy
X2lkLCBidWlsZC5udW1iZXIpLAorICAgICAgICAgICAgJ3RpbWVzdGFtcCc6IGJ1aWxkLmNvbXBs
ZXRlX2F0LAorICAgICAgICB9CisKKyAgICBkZWYgX2J1aWxkX3N0YXR1c2VzX2Zvcl9wYXRjaChz
ZWxmLCBwYXRjaCk6CisgICAgICAgIHN0YXR1c2VzID0gW10KKyAgICAgICAgaWYgbm90IHBhdGNo
OgorICAgICAgICAgICAgcmV0dXJuIHN0YXR1c2VzCisKKyAgICAgICAgaWYgcGF0Y2guc2VudF90
b19idWlsZGJvdDoKKyAgICAgICAgICAgIGZvciBxdWV1ZSBpbiBTdGF0dXNCdWJibGUuQUxMX1FV
RVVFUzoKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBzZWxmLl9idWlsZF9zdGF0dXMocGF0Y2gs
IHF1ZXVlKQorICAgICAgICAgICAgICAgIGlmIHN0YXR1czoKKyAgICAgICAgICAgICAgICAgICAg
c3RhdHVzZXMuYXBwZW5kKHN0YXR1cykKKworICAgICAgICBpZiBwYXRjaC5zZW50X3RvX2NvbW1p
dF9xdWV1ZToKKyAgICAgICAgICAgIGNxX3N0YXR1cyA9IHNlbGYuX2J1aWxkX3N0YXR1cyhwYXRj
aCwgJ2NvbW1pdCcpCisgICAgICAgICAgICBpZiBjcV9zdGF0dXM6CisgICAgICAgICAgICAgICAg
c3RhdHVzZXMuaW5zZXJ0KDAsIGNxX3N0YXR1cykKKworICAgICAgICByZXR1cm4gc3RhdHVzZXMK
KworICAgIGRlZiBnZXQoc2VsZiwgcmVxdWVzdCwgcGF0Y2hfaWQpOgorICAgICAgICBwYXRjaF9p
ZCA9IGludChwYXRjaF9pZCkKKyAgICAgICAgcGF0Y2ggPSBQYXRjaC5nZXRfcGF0Y2gocGF0Y2hf
aWQpCisgICAgICAgIHJlc3BvbnNlX2RhdGEgPSB7J3N0YXR1cyc6IHNlbGYuX2J1aWxkX3N0YXR1
c2VzX2Zvcl9wYXRjaChwYXRjaCl9CisgICAgICAgIHJldHVybiBKc29uUmVzcG9uc2UocmVzcG9u
c2VfZGF0YSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393511</attachid>
            <date>2020-03-13 11:31:35 -0700</date>
            <delta_ts>2020-03-13 11:52:05 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-208940-20200313143133.patch</filename>
            <type>text/plain</type>
            <size>4849</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1ODI3MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDEzIEBACisyMDIwLTAzLTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBBZGQgQVBJIGVuZHBvaW50IGluIEVXUyBkamFuZ28gYXBwIHRvIHByb3Zp
ZGUgcGF0Y2ggc3RhdHVzIGluIGpzb24gZm9ybWF0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg5NDAKKworICAgICAgICBSZXZpZXdlZCBieSBKb25h
dGhhbiBCZWRhcmQuCisKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy91
cmxzLnB5OiBBZGRlZCB1cmwgZm9yIG5ldyBhcGkgZW5kcG9pbnQuCisgICAgICAgICogQnVpbGRT
bGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3Mvdmlld3Mvc3RhdHVzLnB5OiBBZGRlZC4KKwogMjAyMC0w
My0xMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEFzc2VydGlv
biBoaXQgdW5kZXIgV2ViUGFnZVByb3h5OjpzdXNwZW5kQ3VycmVudFBhZ2VJZlBvc3NpYmxlKCkg
d2hlbiBieXBhc3NpbmcgY2VydGlmaWNhdGUgd2FybmluZyBwYWdlCkluZGV4OiBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy91cmxzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1
aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3VybHMucHkJKHJldmlzaW9uIDI1ODI3MikKKysr
IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL3VybHMucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDYgKzI0LDcgQEAgZnJvbSBkamFuZ28uY29uZi51cmxzIGltcG9ydCB1cmwKIAog
ZnJvbSBld3Mudmlld3MuaW5kZXggaW1wb3J0IEluZGV4CiBmcm9tIGV3cy52aWV3cy5yZXN1bHRz
IGltcG9ydCBSZXN1bHRzCitmcm9tIGV3cy52aWV3cy5zdGF0dXMgaW1wb3J0IFN0YXR1cwogZnJv
bSBld3Mudmlld3Muc3RhdHVzYnViYmxlIGltcG9ydCBTdGF0dXNCdWJibGUKIGZyb20gZXdzLnZp
ZXdzLnJldHJ5cGF0Y2ggaW1wb3J0IFJldHJ5UGF0Y2gKIGZyb20gZXdzLnZpZXdzLnN1Ym1pdHRv
ZXdzIGltcG9ydCBTdWJtaXRUb0VXUwpAQCAtMzYsNiArMzcsOCBAQCB1cmxwYXR0ZXJucyA9IFsK
ICAgICB1cmwocidecmVzdWx0cy8kJywgUmVzdWx0cy5hc192aWV3KCksIG5hbWU9J3Jlc3VsdHMn
KSwKICAgICAjIGV4OiAvcmV0cnkvCiAgICAgdXJsKHInXnJldHJ5LyQnLCBSZXRyeVBhdGNoLmFz
X3ZpZXcoKSwgbmFtZT0ncmV0cnlwYXRjaCcpLAorICAgICMgZXg6IC9zdGF0dXMvNQorICAgIHVy
bChyJ15zdGF0dXMvKD9QPHBhdGNoX2lkPlswLTldKykvJCcsIFN0YXR1cy5hc192aWV3KCksIG5h
bWU9J3N0YXR1cycpLAogICAgICMgZXg6IC9zdGF0dXMtYnViYmxlLzUKICAgICB1cmwocidec3Rh
dHVzLWJ1YmJsZS8oP1A8cGF0Y2hfaWQ+WzAtOV0rKS8kJywgU3RhdHVzQnViYmxlLmFzX3ZpZXco
KSwgbmFtZT0nc3RhdHVzYnViYmxlJyksCiAgICAgIyBleDogL3N1Ym1pdC10by1ld3MvCkluZGV4
OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy92aWV3cy9zdGF0dXMucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3Mvdmlld3Mvc3Rh
dHVzLnB5CShub25leGlzdGVudCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAv
ZXdzL3ZpZXdzL3N0YXR1cy5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDY4IEBACisjIENv
cHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMgMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMK
KyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQKKyMgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyMgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQorIyBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorIyBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisjIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SCisjIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisjIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisjIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK2Zyb20gX19mdXR1cmVfXyBpbXBv
cnQgdW5pY29kZV9saXRlcmFscworCitmcm9tIGRqYW5nby5odHRwIGltcG9ydCBKc29uUmVzcG9u
c2UKK2Zyb20gZGphbmdvLnZpZXdzIGltcG9ydCBWaWV3Citmcm9tIGV3cy5jb21tb24uYnVpbGRi
b3QgaW1wb3J0IEJ1aWxkYm90Citmcm9tIGV3cy5tb2RlbHMucGF0Y2ggaW1wb3J0IFBhdGNoCitm
cm9tIGV3cy52aWV3cy5zdGF0dXNidWJibGUgaW1wb3J0IFN0YXR1c0J1YmJsZQoraW1wb3J0IGV3
cy5jb25maWcgYXMgY29uZmlnCisKKworY2xhc3MgU3RhdHVzKFZpZXcpOgorICAgIGRlZiBfYnVp
bGRfc3RhdHVzKHNlbGYsIHBhdGNoLCBxdWV1ZSk6CisgICAgICAgIGJ1aWxkLCBfID0gU3RhdHVz
QnViYmxlKCkuZ2V0X2xhdGVzdF9idWlsZF9mb3JfcXVldWUocGF0Y2gsIHF1ZXVlKQorICAgICAg
ICBpZiBub3QgYnVpbGQ6CisgICAgICAgICAgICByZXR1cm4ge30KKworICAgICAgICByZXR1cm4g
eworICAgICAgICAgICAgJ25hbWUnOiBxdWV1ZSwKKyAgICAgICAgICAgICdzdGF0ZSc6IGJ1aWxk
LnJlc3VsdCwKKyAgICAgICAgICAgICd1cmwnOiAnaHR0cHM6Ly97fS8jL2J1aWxkZXJzL3t9L2J1
aWxkcy97fScuZm9ybWF0KGNvbmZpZy5CVUlMREJPVF9TRVJWRVJfSE9TVCwgYnVpbGQuYnVpbGRl
cl9pZCwgYnVpbGQubnVtYmVyKSwKKyAgICAgICAgICAgICd0aW1lc3RhbXAnOiBidWlsZC5jb21w
bGV0ZV9hdCwKKyAgICAgICAgfQorCisgICAgZGVmIF9idWlsZF9zdGF0dXNlc19mb3JfcGF0Y2go
c2VsZiwgcGF0Y2gpOgorICAgICAgICBpZiBub3QgcGF0Y2g6CisgICAgICAgICAgICByZXR1cm4g
W10KKworICAgICAgICBzdGF0dXNlcyA9IFtdCisgICAgICAgIGlmIHBhdGNoLnNlbnRfdG9fYnVp
bGRib3Q6CisgICAgICAgICAgICBmb3IgcXVldWUgaW4gU3RhdHVzQnViYmxlLkFMTF9RVUVVRVM6
CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc2VsZi5fYnVpbGRfc3RhdHVzKHBhdGNoLCBxdWV1
ZSkKKyAgICAgICAgICAgICAgICBpZiBzdGF0dXM6CisgICAgICAgICAgICAgICAgICAgIHN0YXR1
c2VzLmFwcGVuZChzdGF0dXMpCisKKyAgICAgICAgaWYgcGF0Y2guc2VudF90b19jb21taXRfcXVl
dWU6CisgICAgICAgICAgICBjcV9zdGF0dXMgPSBzZWxmLl9idWlsZF9zdGF0dXMocGF0Y2gsICdj
b21taXQnKQorICAgICAgICAgICAgaWYgY3Ffc3RhdHVzOgorICAgICAgICAgICAgICAgIHN0YXR1
c2VzLmluc2VydCgwLCBjcV9zdGF0dXMpCisKKyAgICAgICAgcmV0dXJuIHN0YXR1c2VzCisKKyAg
ICBkZWYgZ2V0KHNlbGYsIHJlcXVlc3QsIHBhdGNoX2lkKToKKyAgICAgICAgcGF0Y2hfaWQgPSBp
bnQocGF0Y2hfaWQpCisgICAgICAgIHBhdGNoID0gUGF0Y2guZ2V0X3BhdGNoKHBhdGNoX2lkKQor
ICAgICAgICByZXNwb25zZV9kYXRhID0gc2VsZi5fYnVpbGRfc3RhdHVzZXNfZm9yX3BhdGNoKHBh
dGNoKQorICAgICAgICByZXR1cm4gSnNvblJlc3BvbnNlKHJlc3BvbnNlX2RhdGEsIHNhZmU9RmFs
c2UpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>