<?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>215349</bug_id>
          
          <creation_ts>2020-08-10 16:54:17 -0700</creation_ts>
          <short_desc>Clean up DragApplicationFlags after switch to OptionSet&lt;&gt;</short_desc>
          <delta_ts>2020-08-17 09:34:26 -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>WebCore Misc.</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>215341</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>berto</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1679256</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-08-10 16:54:17 -0700</bug_when>
    <thetext>Bug 215341 fixed a WebContent crash, but there are a couple things to clean up:

1. DragApplicationFlags::DragApplicationNone can be removed.
2. DragApplicationFlags should be an enum class so DragApplicationFlags::DragApplicationIsModal becomes DragApplicationFlags::IsModal.
3. -[WebView applicationFlags:] should return an OptionSet&lt;WebCore::DragApplicationFlags&gt;.  (Fix call sites that use it.)
4. Source/WebKit/UIProcess/API/gtk/DropTargetGtk3.cpp should use OptionSet&lt;WebCore::DragApplicationFlags&gt; within the function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679258</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-08-10 16:56:41 -0700</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #0)
&gt; Bug 215341 fixed a WebContent crash, but there are a couple things to clean
&gt; up:
&gt; 
&gt; 1. DragApplicationFlags::DragApplicationNone can be removed.

Chris already fixed this in Bug 215341.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680559</commentid>
    <comment_count>2</comment_count>
      <attachid>406644</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-08-14 18:36:24 -0700</bug_when>
    <thetext>Created attachment 406644
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680562</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-08-14 18:37:18 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680616</commentid>
    <comment_count>4</comment_count>
      <attachid>406667</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-08-15 08:14:06 -0700</bug_when>
    <thetext>Created attachment 406667
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680641</commentid>
    <comment_count>5</comment_count>
      <attachid>406667</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-15 12:27:22 -0700</bug_when>
    <thetext>Comment on attachment 406667
Patch v2

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

Seems like a GTK test related to the patch failed. I pushed the retry button so it would try again.

&gt; Source/WebCore/platform/DragData.h:61
&gt; +enum class DragApplicationFlags : uint8_t {

The enum represents a single flag. Doesn’t make sense to call it &quot;flags&quot;. An OptionSet, of course, contains multiple flags. So this should be renamed DragApplicationFlag, singular.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680828</commentid>
    <comment_count>6</comment_count>
      <attachid>406667</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-08-17 09:26:49 -0700</bug_when>
    <thetext>Comment on attachment 406667
Patch v2

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

&gt;&gt; Source/WebCore/platform/DragData.h:61
&gt;&gt; +enum class DragApplicationFlags : uint8_t {
&gt; 
&gt; The enum represents a single flag. Doesn’t make sense to call it &quot;flags&quot;. An OptionSet, of course, contains multiple flags. So this should be renamed DragApplicationFlag, singular.

I&apos;m assuming this can be done in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680831</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-17 09:33:59 -0700</bug_when>
    <thetext>Committed r265756: &lt;https://trac.webkit.org/changeset/265756&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 406667.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680832</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-17 09:34:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/67250771&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406644</attachid>
            <date>2020-08-14 18:36:24 -0700</date>
            <delta_ts>2020-08-15 08:14:04 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-215349-20200814183710.patch</filename>
            <type>text/plain</type>
            <size>13589</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjJjOWYyNDA1MmU4Mjdi
OTA1ZjMyNmUzNGJiZjE2MzU4YzNlNGVhNy4uMzgzZDUyZmQ1NDQ4MTRmMjZhNTc0NWViNzc5OTU2
Y2NhYWIzNTZmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA4LTE0ICBEYXZp
ZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW4gdXAgRHJhZ0Fw
cGxpY2F0aW9uRmxhZ3MgYWZ0ZXIgc3dpdGNoIHRvIE9wdGlvblNldDw+CisgICAgICAgIDxodHRw
czovL3dlYmtpdC5vcmcvYi8yMTUzNDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ2hhbmdlIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzIHRv
IGFuIGVudW0gY2xhc3MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIHNpbmNlIG5vIGNoYW5nZSBp
biBiZWhhdmlvci4KKworICAgICAgICAqIHBhZ2UvbWFjL0RyYWdDb250cm9sbGVyTWFjLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6RHJhZ0NvbnRyb2xsZXI6OmlzQ29weUtleURvd24pOgorICAgICAg
ICAoV2ViQ29yZTo6RHJhZ0NvbnRyb2xsZXI6OmRyYWdPcGVyYXRpb24pOgorICAgICAgICAqIHBs
YXRmb3JtL0RyYWdEYXRhLmg6CisKIDIwMjAtMDgtMTIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9o
c2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgQnJva2VuIGZvcm1hdHRpbmcgaW4gcHJpY2UgdGFi
bGUgb24geWFuZGV4LnJ1IGFmdGVyIHRyYW5zbGF0aW5nIHRvIEVuZ2xpc2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXgg
ZTEyMTkwOWIyNDE5YjZjYzgwN2RlMTgwMzE4MTYwYzNlZmJlZjgwZi4uODg3ODk5MGU2NTQ4YTM3
ZTU2ZjVlMzc1YzQ1NTQ1ZWVmNjAyZmEzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAy
MC0wOC0xNCAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgorCisgICAgICAgIENs
ZWFuIHVwIERyYWdBcHBsaWNhdGlvbkZsYWdzIGFmdGVyIHN3aXRjaCB0byBPcHRpb25TZXQ8Pgor
ICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjE1MzQ5PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoYW5nZSBXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFncyB0byBhbiBlbnVtIGNsYXNzLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
dGsvRHJvcFRhcmdldEd0azMuY3BwOgorICAgICAgICAoV2ViS2l0OjpEcm9wVGFyZ2V0Ojpkcm9w
KToKKyAgICAgICAgLSBTd2l0Y2ggdG8gdXNlIE9wdGlvblNldDxXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFncz4uCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tOgor
ICAgICAgICAoV2ViS2l0OjphcHBsaWNhdGlvbkZsYWdzRm9yRHJhZyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgLSBVcGRhdGUgZm9yd2FyZCBkZWNs
YXJhdGlvbi4KKwogMjAyMC0wOC0xMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KIAogICAgICAgICBXZWJQYWdlUHJveHk6OnJlZ2lzdGVyRWRpdENvbW1hbmQgc2hvdWxk
IGJlIHJvYnVzdCBhZ2FpbnN0IGludmFsaWQgdW5kbyBzdGVwIGlkZW50aWZpZXJzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggOWEzNjZiMGNhY2M3MWQxNTA1ZmEwNzBiYjgzODMxNGQ1
OWFhZWI1OS4uMGYzNDdjMTgxM2Y4OWQ1ZTIwNDllZGNjMWJjNDFiMDgwOTI5ZTI0OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA4LTE0ICBEYXZp
ZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW4gdXAgRHJhZ0Fw
cGxpY2F0aW9uRmxhZ3MgYWZ0ZXIgc3dpdGNoIHRvIE9wdGlvblNldDw+CisgICAgICAgIDxodHRw
czovL3dlYmtpdC5vcmcvYi8yMTUzNDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ2hhbmdlIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzIHRv
IGFuIGVudW0gY2xhc3MuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAgICAg
ICgtW1dlYlZpZXcgYXBwbGljYXRpb25GbGFnczpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2Vi
VmlldyBfYXBwbGljYXRpb25GbGFnc0ZvckRyYWc6XSk6CisgICAgICAgIC0gUmVuYW1lIC1hcHBs
aWNhdGlvbkZsYWdzOiB0byAtX2FwcGxpY2F0aW9uRmxhZ3NGb3JEcmFnOiBzaW5jZQorICAgICAg
ICAgIGl0J3Mgb25seSB1c2VkIGludGVybmFsbHkuCisgICAgICAgIC0gU3dpdGNoIHRvIHJldHVy
biBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+LgorICAgICAgICAoLVtX
ZWJWaWV3IGRyYWdnaW5nRW50ZXJlZDpdKToKKyAgICAgICAgKC1bV2ViVmlldyBkcmFnZ2luZ1Vw
ZGF0ZWQ6XSk6CisgICAgICAgICgtW1dlYlZpZXcgZHJhZ2dpbmdFeGl0ZWQ6XSk6CisgICAgICAg
ICgtW1dlYlZpZXcgcGVyZm9ybURyYWdPcGVyYXRpb246XSk6CisgICAgICAgIC0gU3dpdGNoIHRv
IGNhbGxpbmcgLV9hcHBsaWNhdGlvbkZsYWdzRm9yRHJhZzouCisKIDIwMjAtMDgtMDUgIFRpbSBI
b3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGFsbCBy
ZWZlcmVuY2VzIHRvIG5vbi1leGlzdGVudCAxMC4xNgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9tYWMvRHJhZ0NvbnRyb2xsZXJNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL21h
Yy9EcmFnQ29udHJvbGxlck1hYy5tbQppbmRleCA3ZTQ2YWM0ODk3NjZlMWI2Yzk3YWVjODI3NGQ2
NGNhNTBlODM1ZWVkLi44MGVjNjdkOTEzYjc3OGVmZDBiZmY2MTMxNzViMjk1NWExMThmZTYyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9EcmFnQ29udHJvbGxlck1hYy5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9EcmFnQ29udHJvbGxlck1hYy5tbQpAQCAtNjEs
MTIgKzYxLDEyIEBAIGNvbnN0IGZsb2F0IERyYWdDb250cm9sbGVyOjpEcmFnSW1hZ2VBbHBoYSA9
IDAuNzVmOwogCiBib29sIERyYWdDb250cm9sbGVyOjppc0NvcHlLZXlEb3duKGNvbnN0IERyYWdE
YXRhJiBkcmFnRGF0YSkKIHsKLSAgICByZXR1cm4gZHJhZ0RhdGEuZmxhZ3MoKS5jb250YWlucyhE
cmFnQXBwbGljYXRpb25Jc0NvcHlLZXlEb3duKTsKKyAgICByZXR1cm4gZHJhZ0RhdGEuZmxhZ3Mo
KS5jb250YWlucyhEcmFnQXBwbGljYXRpb25GbGFnczo6SXNDb3B5S2V5RG93bik7CiB9CiAgICAg
CiBPcHRpb25hbDxEcmFnT3BlcmF0aW9uPiBEcmFnQ29udHJvbGxlcjo6ZHJhZ09wZXJhdGlvbihj
b25zdCBEcmFnRGF0YSYgZHJhZ0RhdGEpCiB7Ci0gICAgaWYgKGRyYWdEYXRhLmZsYWdzKCkuY29u
dGFpbnMoRHJhZ0FwcGxpY2F0aW9uSXNNb2RhbCkpCisgICAgaWYgKGRyYWdEYXRhLmZsYWdzKCku
Y29udGFpbnMoRHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OklzTW9kYWwpKQogICAgICAgICByZXR1cm4g
V1RGOjpudWxsb3B0OwogCiAgICAgYm9vbCBtYXlDb250YWluVVJMOwpAQCAtNzgsNyArNzgsNyBA
QCBPcHRpb25hbDxEcmFnT3BlcmF0aW9uPiBEcmFnQ29udHJvbGxlcjo6ZHJhZ09wZXJhdGlvbihj
b25zdCBEcmFnRGF0YSYgZHJhZ0RhdGEpCiAgICAgaWYgKCFtYXlDb250YWluVVJMICYmICFkcmFn
RGF0YS5jb250YWluc1Byb21pc2UoKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAot
ICAgIGlmICghbV9kb2N1bWVudFVuZGVyTW91c2UgfHwgKCEoZHJhZ0RhdGEuZmxhZ3MoKS5jb250
YWluc0FsbCh7IERyYWdBcHBsaWNhdGlvbkhhc0F0dGFjaGVkU2hlZXQsIERyYWdBcHBsaWNhdGlv
bklzU291cmNlIH0pKSkpCisgICAgaWYgKCFtX2RvY3VtZW50VW5kZXJNb3VzZSB8fCAoIShkcmFn
RGF0YS5mbGFncygpLmNvbnRhaW5zQWxsKHsgRHJhZ0FwcGxpY2F0aW9uRmxhZ3M6Okhhc0F0dGFj
aGVkU2hlZXQsIERyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc1NvdXJjZSB9KSkpKQogICAgICAgICBy
ZXR1cm4gRHJhZ09wZXJhdGlvbjo6Q29weTsKIAogICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0YS5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vRHJhZ0RhdGEuaAppbmRleCBkMWUzYzEwNzFlNTIzZjE4ZjkyYmMyOTI0
YTUzODc3YTdhMjY1ZjFmLi5hY2MzZThlZDE2MTg5OGI4NjFjOWZmZDk2NjgyZWE0MjRhMmRiZWVm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0YS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdEYXRhLmgKQEAgLTU4LDExICs1OCwxMSBAQCB0eXBl
ZGVmIHZvaWQqIERyYWdEYXRhUmVmOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWVudW0gRHJh
Z0FwcGxpY2F0aW9uRmxhZ3MgOiB1aW50OF90IHsKLSAgICBEcmFnQXBwbGljYXRpb25Jc01vZGFs
ID0gMSwKLSAgICBEcmFnQXBwbGljYXRpb25Jc1NvdXJjZSA9IDIsCi0gICAgRHJhZ0FwcGxpY2F0
aW9uSGFzQXR0YWNoZWRTaGVldCA9IDQsCi0gICAgRHJhZ0FwcGxpY2F0aW9uSXNDb3B5S2V5RG93
biA9IDgKK2VudW0gY2xhc3MgRHJhZ0FwcGxpY2F0aW9uRmxhZ3MgOiB1aW50OF90IHsKKyAgICBJ
c01vZGFsID0gMSwKKyAgICBJc1NvdXJjZSA9IDIsCisgICAgSGFzQXR0YWNoZWRTaGVldCA9IDQs
CisgICAgSXNDb3B5S2V5RG93biA9IDgKIH07CiAKICNpZiBQTEFURk9STShXSU4pCkBAIC0xNDgs
MTAgKzE0OCwxMCBAQCBuYW1lc3BhY2UgV1RGIHsKIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFp
dHM8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+IHsKICAgICB1c2luZyB2YWx1ZXMgPSBF
bnVtVmFsdWVzPAogICAgICAgICBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFncywKLSAgICAg
ICAgV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OkRyYWdBcHBsaWNhdGlvbklzTW9kYWws
Ci0gICAgICAgIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpEcmFnQXBwbGljYXRpb25J
c1NvdXJjZSwKLSAgICAgICAgV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OkRyYWdBcHBs
aWNhdGlvbkhhc0F0dGFjaGVkU2hlZXQsCi0gICAgICAgIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlv
bkZsYWdzOjpEcmFnQXBwbGljYXRpb25Jc0NvcHlLZXlEb3duCisgICAgICAgIFdlYkNvcmU6OkRy
YWdBcHBsaWNhdGlvbkZsYWdzOjpJc01vZGFsLAorICAgICAgICBXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFnczo6SXNTb3VyY2UsCisgICAgICAgIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZs
YWdzOjpIYXNBdHRhY2hlZFNoZWV0LAorICAgICAgICBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25G
bGFnczo6SXNDb3B5S2V5RG93bgogICAgID47CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL0Ryb3BUYXJnZXRHdGszLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvRHJvcFRhcmdldEd0azMuY3BwCmluZGV4IDcyYmU1YmUwMjc4MWFh
MjE3Yzk3ZjQxZDg0ZTBmMjIxM2ZmMjcyM2QuLjA0YzQ1OTMwN2Q1Y2UwZDEwMTBhZDU2OTgxMzk2
YTc3MDZmY2E4Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsv
RHJvcFRhcmdldEd0azMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsv
RHJvcFRhcmdldEd0azMuY3BwCkBAIC0yNjMsMTAgKzI2MywxMCBAQCB2b2lkIERyb3BUYXJnZXQ6
OmRyb3AoSW50UG9pbnQmJiBwb3NpdGlvbiwgdW5zaWduZWQgdGltZSkKICAgICBhdXRvKiBwYWdl
ID0gd2Via2l0V2ViVmlld0Jhc2VHZXRQYWdlKFdFQktJVF9XRUJfVklFV19CQVNFKG1fd2ViVmll
dykpOwogICAgIEFTU0VSVChwYWdlKTsKIAotICAgIHVpbnQzMl90IGZsYWdzID0gMDsKKyAgICBP
cHRpb25TZXQ8RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+IGZsYWdzOwogICAgIGlmIChnZGtfZHJhZ19j
b250ZXh0X2dldF9zZWxlY3RlZF9hY3Rpb24obV9kcm9wLmdldCgpKSA9PSBHREtfQUNUSU9OX0NP
UFkpCi0gICAgICAgIGZsYWdzIHw9IERyYWdBcHBsaWNhdGlvbklzQ29weUtleURvd247Ci0gICAg
RHJhZ0RhdGEgZHJhZ0RhdGEoJm1fc2VsZWN0aW9uRGF0YS52YWx1ZSgpLCBwb3NpdGlvbiwgY29u
dmVydFdpZGdldFBvaW50VG9TY3JlZW5Qb2ludChtX3dlYlZpZXcsIHBvc2l0aW9uKSwgZ2RrRHJh
Z0FjdGlvblRvRHJhZ09wZXJhdGlvbihnZGtfZHJhZ19jb250ZXh0X2dldF9hY3Rpb25zKG1fZHJv
cC5nZXQoKSkpLCBzdGF0aWNfY2FzdDxEcmFnQXBwbGljYXRpb25GbGFncz4oZmxhZ3MpKTsKKyAg
ICAgICAgZmxhZ3MuYWRkKERyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc0NvcHlLZXlEb3duKTsKKyAg
ICBEcmFnRGF0YSBkcmFnRGF0YSgmbV9zZWxlY3Rpb25EYXRhLnZhbHVlKCksIHBvc2l0aW9uLCBj
b252ZXJ0V2lkZ2V0UG9pbnRUb1NjcmVlblBvaW50KG1fd2ViVmlldywgcG9zaXRpb24pLCBnZGtE
cmFnQWN0aW9uVG9EcmFnT3BlcmF0aW9uKGdka19kcmFnX2NvbnRleHRfZ2V0X2FjdGlvbnMobV9k
cm9wLmdldCgpKSksIGZsYWdzKTsKICAgICBwYWdlLT5wZXJmb3JtRHJhZ09wZXJhdGlvbihkcmFn
RGF0YSwgeyB9LCB7IH0sIHsgfSk7CiAgICAgZ3RrX2RyYWdfZmluaXNoKG1fZHJvcC5nZXQoKSwg
VFJVRSwgRkFMU0UsIHRpbWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9XZWJWaWV3SW1wbC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlZpZXdJbXBsLm1tCmluZGV4IGFiMWZjNjIyMWU4NjNlNDFmYTRiMTNjMzFjYWY2ZTg0YWZmZDlk
MDAuLjVjYTc3YWY4MjM0NDY0MWZmYTBmNzAxZDNlNjJjOWI1Y2Y3MTE5YTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCkBAIC0zOTM0LDEzICszOTM0
LDEzIEBAIHN0YXRpYyBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+IGFw
cGxpY2F0aW9uRmxhZ3NGb3JEcmFnKE5TVmlldyAqCiAgICAgQVNTRVJUKGhhc1Byb2Nlc3NQcml2
aWxlZ2UoUHJvY2Vzc1ByaXZpbGVnZTo6Q2FuQ29tbXVuaWNhdGVXaXRoV2luZG93U2VydmVyKSk7
CiAgICAgT3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzPiBmbGFnczsKICAg
ICBpZiAoW05TQXBwIG1vZGFsV2luZG93XSkKLSAgICAgICAgZmxhZ3MuYWRkKFdlYkNvcmU6OkRy
YWdBcHBsaWNhdGlvbklzTW9kYWwpOworICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0Fw
cGxpY2F0aW9uRmxhZ3M6OklzTW9kYWwpOwogICAgIGlmICh2aWV3LndpbmRvdy5hdHRhY2hlZFNo
ZWV0KQotICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSGFzQXR0YWNo
ZWRTaGVldCk7CisgICAgICAgIGZsYWdzLmFkZChXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFn
czo6SGFzQXR0YWNoZWRTaGVldCk7CiAgICAgaWYgKGRyYWdnaW5nSW5mby5kcmFnZ2luZ1NvdXJj
ZSA9PSB2aWV3KQotICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSXNT
b3VyY2UpOworICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6
OklzU291cmNlKTsKICAgICBpZiAoW05TQXBwIGN1cnJlbnRFdmVudF0ubW9kaWZpZXJGbGFncyAm
IE5TRXZlbnRNb2RpZmllckZsYWdPcHRpb24pCi0gICAgICAgIGZsYWdzLmFkZChXZWJDb3JlOjpE
cmFnQXBwbGljYXRpb25Jc0NvcHlLZXlEb3duKTsKKyAgICAgICAgZmxhZ3MuYWRkKFdlYkNvcmU6
OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc0NvcHlLZXlEb3duKTsKICAgICByZXR1cm4gZmxhZ3M7
CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCAy
NDc5ZjIyZWUxODgzNTg4OTkyNjM2YjVkZGE1NGFmNWY0MzQ3N2YxLi5iZTQ3M2Y2NGNmMTg2OWZi
YWNhZjViM2QzNDQ3MDc5ZTNiNzY4NWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCkBAIC0xOTMsOSArMTkzLDkgQEAgY2xhc3MgU3Vic3RpdHV0ZURhdGE7
CiBjbGFzcyBUZXh0Q2hlY2tpbmdSZXF1ZXN0OwogY2xhc3MgVmlzaWJsZVBvc2l0aW9uOwogCi1l
bnVtIERyYWdBcHBsaWNhdGlvbkZsYWdzIDogdWludDhfdDsKIGVudW0gU3ludGhldGljQ2xpY2tU
eXBlIDogaW50OF90OwogZW51bSBjbGFzcyBET01QYXN0ZUFjY2Vzc1Jlc3BvbnNlIDogdWludDhf
dDsKK2VudW0gY2xhc3MgRHJhZ0FwcGxpY2F0aW9uRmxhZ3MgOiB1aW50OF90OwogZW51bSBjbGFz
cyBEcmFnSGFuZGxpbmdNZXRob2QgOiB1aW50OF90OwogZW51bSBjbGFzcyBFdmVudE1ha2VzR2Ft
ZXBhZHNWaXNpYmxlIDogYm9vbDsKIGVudW0gY2xhc3MgU2VsZWN0aW9uRGlyZWN0aW9uIDogdWlu
dDhfdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA1
ZDQyNzE1ZWY0ZTFmMjMyZmMyMmI2NGRkZjM5MjQyMmVmNzcyMjRjLi43YTk2OTk1Y2YxMjk3OGZk
Nzg0YWQyN2ExZDg4ODYxZjE0MzY2NDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Vmlldy9XZWJWaWV3Lm1tCkBAIC02ODc2LDE4ICs2ODc2LDE4IEBAIC0gKEJPT0wpX3Nob3VsZEF1
dG9zY3JvbGxGb3JEcmFnZ2luZ0luZm86KGlkKWRyYWdnaW5nSW5mbwogICAgIHJldHVybiBbZG9j
dW1lbnRWaWV3IF9zaG91bGRBdXRvc2Nyb2xsRm9yRHJhZ2dpbmdJbmZvOmRyYWdnaW5nSW5mb107
CiB9CiAKLS0gKFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzKWFwcGxpY2F0aW9uRmxhZ3M6
KGlkIDxOU0RyYWdnaW5nSW5mbz4pZHJhZ2dpbmdJbmZvCistIChPcHRpb25TZXQ8V2ViQ29yZTo6
RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+KV9hcHBsaWNhdGlvbkZsYWdzRm9yRHJhZzooaWQgPE5TRHJh
Z2dpbmdJbmZvPilkcmFnZ2luZ0luZm8KIHsKLSAgICB1aW50MzJfdCBmbGFncyA9IDA7CisgICAg
T3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzPiBmbGFnczsKICAgICBpZiAo
W05TQXBwIG1vZGFsV2luZG93XSkKLSAgICAgICAgZmxhZ3MgPSBXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25Jc01vZGFsOworICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9u
RmxhZ3M6OklzTW9kYWwpOwogICAgIGlmIChbW3NlbGYgd2luZG93XSBhdHRhY2hlZFNoZWV0XSkK
LSAgICAgICAgZmxhZ3MgfD0gV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSGFzQXR0YWNoZWRTaGVl
dDsKKyAgICAgICAgZmxhZ3MuYWRkKFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpIYXNB
dHRhY2hlZFNoZWV0KTsKICAgICBpZiAoW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZV0gPT0g
c2VsZikKLSAgICAgICAgZmxhZ3MgfD0gV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSXNTb3VyY2U7
CisgICAgICAgIGZsYWdzLmFkZChXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFnczo6SXNTb3Vy
Y2UpOwogICAgIGlmIChbW05TQXBwIGN1cnJlbnRFdmVudF0gbW9kaWZpZXJGbGFnc10gJiBOU0V2
ZW50TW9kaWZpZXJGbGFnT3B0aW9uKQotICAgICAgICBmbGFncyB8PSBXZWJDb3JlOjpEcmFnQXBw
bGljYXRpb25Jc0NvcHlLZXlEb3duOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDb3JlOjpE
cmFnQXBwbGljYXRpb25GbGFncz4oZmxhZ3MpOworICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6
RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OklzQ29weUtleURvd24pOworICAgIHJldHVybiBmbGFnczsK
IH0KIAogLSAoT3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdEZXN0aW5hdGlvbkFjdGlvbj4pYWN0aW9u
TWFza0ZvckRyYWdnaW5nSW5mbzooaWQgPE5TRHJhZ2dpbmdJbmZvPilkcmFnZ2luZ0luZm8KQEAg
LTY5MDAsNyArNjkwMCw3IEBAIC0gKE5TRHJhZ09wZXJhdGlvbilkcmFnZ2luZ0VudGVyZWQ6KGlk
IDxOU0RyYWdnaW5nSW5mbz4pZHJhZ2dpbmdJbmZvCiAgICAgV2ViQ29yZTo6SW50UG9pbnQgY2xp
ZW50KFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdMb2NhdGlvbl0pOwogICAgIFdlYkNvcmU6OkludFBv
aW50IGdsb2JhbChXZWJDb3JlOjpnbG9iYWxQb2ludChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9j
YXRpb25dLCBbc2VsZiB3aW5kb3ddKSk7CiAKLSAgICBXZWJDb3JlOjpEcmFnRGF0YSBkcmFnRGF0
YShkcmFnZ2luZ0luZm8sIGNsaWVudCwgZ2xvYmFsLCBjb3JlRHJhZ09wZXJhdGlvbk1hc2soW2Ry
YWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tdKSwgW3NlbGYgYXBwbGljYXRp
b25GbGFnczpkcmFnZ2luZ0luZm9dLCBbc2VsZiBhY3Rpb25NYXNrRm9yRHJhZ2dpbmdJbmZvOmRy
YWdnaW5nSW5mb10pOworICAgIFdlYkNvcmU6OkRyYWdEYXRhIGRyYWdEYXRhKGRyYWdnaW5nSW5m
bywgY2xpZW50LCBnbG9iYWwsIGNvcmVEcmFnT3BlcmF0aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRy
YWdnaW5nU291cmNlT3BlcmF0aW9uTWFza10pLCBbc2VsZiBfYXBwbGljYXRpb25GbGFnc0ZvckRy
YWc6ZHJhZ2dpbmdJbmZvXSwgW3NlbGYgYWN0aW9uTWFza0ZvckRyYWdnaW5nSW5mbzpkcmFnZ2lu
Z0luZm9dKTsKICAgICByZXR1cm4ga2l0KGNvcmUoc2VsZiktPmRyYWdDb250cm9sbGVyKCkuZHJh
Z0VudGVyZWQoZHJhZ0RhdGEpKTsKIH0KIApAQCAtNjkxMyw3ICs2OTEzLDcgQEAgLSAoTlNEcmFn
T3BlcmF0aW9uKWRyYWdnaW5nVXBkYXRlZDooaWQgPE5TRHJhZ2dpbmdJbmZvPilkcmFnZ2luZ0lu
Zm8KICAgICBXZWJDb3JlOjpJbnRQb2ludCBjbGllbnQoW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ0xv
Y2F0aW9uXSk7CiAgICAgV2ViQ29yZTo6SW50UG9pbnQgZ2xvYmFsKFdlYkNvcmU6Omdsb2JhbFBv
aW50KFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdMb2NhdGlvbl0sIFtzZWxmIHdpbmRvd10pKTsKIAot
ICAgIFdlYkNvcmU6OkRyYWdEYXRhIGRyYWdEYXRhKGRyYWdnaW5nSW5mbywgY2xpZW50LCBnbG9i
YWwsIGNvcmVEcmFnT3BlcmF0aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlT3Bl
cmF0aW9uTWFza10pLCBbc2VsZiBhcHBsaWNhdGlvbkZsYWdzOmRyYWdnaW5nSW5mb10sIFtzZWxm
IGFjdGlvbk1hc2tGb3JEcmFnZ2luZ0luZm86ZHJhZ2dpbmdJbmZvXSk7CisgICAgV2ViQ29yZTo6
RHJhZ0RhdGEgZHJhZ0RhdGEoZHJhZ2dpbmdJbmZvLCBjbGllbnQsIGdsb2JhbCwgY29yZURyYWdP
cGVyYXRpb25NYXNrKFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdTb3VyY2VPcGVyYXRpb25NYXNrXSks
IFtzZWxmIF9hcHBsaWNhdGlvbkZsYWdzRm9yRHJhZzpkcmFnZ2luZ0luZm9dLCBbc2VsZiBhY3Rp
b25NYXNrRm9yRHJhZ2dpbmdJbmZvOmRyYWdnaW5nSW5mb10pOwogICAgIHJldHVybiBraXQocGFn
ZS0+ZHJhZ0NvbnRyb2xsZXIoKS5kcmFnVXBkYXRlZChkcmFnRGF0YSkpOwogfQogCkBAIC02OTI1
LDcgKzY5MjUsNyBAQCAtICh2b2lkKWRyYWdnaW5nRXhpdGVkOihpZCA8TlNEcmFnZ2luZ0luZm8+
KWRyYWdnaW5nSW5mbwogCiAgICAgV2ViQ29yZTo6SW50UG9pbnQgY2xpZW50KFtkcmFnZ2luZ0lu
Zm8gZHJhZ2dpbmdMb2NhdGlvbl0pOwogICAgIFdlYkNvcmU6OkludFBvaW50IGdsb2JhbChXZWJD
b3JlOjpnbG9iYWxQb2ludChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9jYXRpb25dLCBbc2VsZiB3
aW5kb3ddKSk7Ci0gICAgV2ViQ29yZTo6RHJhZ0RhdGEgZHJhZ0RhdGEoZHJhZ2dpbmdJbmZvLCBj
bGllbnQsIGdsb2JhbCwgY29yZURyYWdPcGVyYXRpb25NYXNrKFtkcmFnZ2luZ0luZm8gZHJhZ2dp
bmdTb3VyY2VPcGVyYXRpb25NYXNrXSksIFtzZWxmIGFwcGxpY2F0aW9uRmxhZ3M6ZHJhZ2dpbmdJ
bmZvXSk7CisgICAgV2ViQ29yZTo6RHJhZ0RhdGEgZHJhZ0RhdGEoZHJhZ2dpbmdJbmZvLCBjbGll
bnQsIGdsb2JhbCwgY29yZURyYWdPcGVyYXRpb25NYXNrKFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdT
b3VyY2VPcGVyYXRpb25NYXNrXSksIFtzZWxmIF9hcHBsaWNhdGlvbkZsYWdzRm9yRHJhZzpkcmFn
Z2luZ0luZm9dKTsKICAgICBwYWdlLT5kcmFnQ29udHJvbGxlcigpLmRyYWdFeGl0ZWQoZHJhZ0Rh
dGEpOwogfQogCkBAIC02OTM4LDcgKzY5MzgsNyBAQCAtIChCT09MKXBlcmZvcm1EcmFnT3BlcmF0
aW9uOihpZCA8TlNEcmFnZ2luZ0luZm8+KWRyYWdnaW5nSW5mbwogewogICAgIFdlYkNvcmU6Oklu
dFBvaW50IGNsaWVudChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9jYXRpb25dKTsKICAgICBXZWJD
b3JlOjpJbnRQb2ludCBnbG9iYWwoV2ViQ29yZTo6Z2xvYmFsUG9pbnQoW2RyYWdnaW5nSW5mbyBk
cmFnZ2luZ0xvY2F0aW9uXSwgW3NlbGYgd2luZG93XSkpOwotICAgIGF1dG8qIGRyYWdEYXRhID0g
bmV3IFdlYkNvcmU6OkRyYWdEYXRhKGRyYWdnaW5nSW5mbywgY2xpZW50LCBnbG9iYWwsIGNvcmVE
cmFnT3BlcmF0aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlT3BlcmF0aW9uTWFz
a10pLCBbc2VsZiBhcHBsaWNhdGlvbkZsYWdzOmRyYWdnaW5nSW5mb10pOworICAgIGF1dG8qIGRy
YWdEYXRhID0gbmV3IFdlYkNvcmU6OkRyYWdEYXRhKGRyYWdnaW5nSW5mbywgY2xpZW50LCBnbG9i
YWwsIGNvcmVEcmFnT3BlcmF0aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlT3Bl
cmF0aW9uTWFza10pLCBbc2VsZiBfYXBwbGljYXRpb25GbGFnc0ZvckRyYWc6ZHJhZ2dpbmdJbmZv
XSk7CiAKICAgICBOU0FycmF5KiB0eXBlcyA9IGRyYWdnaW5nSW5mby5kcmFnZ2luZ1Bhc3RlYm9h
cmQudHlwZXM7CiAgICAgaWYgKCFbdHlwZXMgY29udGFpbnNPYmplY3Q6V2ViQXJjaGl2ZVBib2Fy
ZFR5cGVdICYmIFt0eXBlcyBjb250YWluc09iamVjdDpXZWJDb3JlOjpsZWdhY3lGaWxlc1Byb21p
c2VQYXN0ZWJvYXJkVHlwZSgpXSkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406667</attachid>
            <date>2020-08-15 08:14:06 -0700</date>
            <delta_ts>2020-08-17 09:34:00 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-215349-20200815081454.patch</filename>
            <type>text/plain</type>
            <size>14358</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjJjOWYyNDA1MmU4Mjdi
OTA1ZjMyNmUzNGJiZjE2MzU4YzNlNGVhNy4uMmIyZWI2NzM1MzQ0ZGEyNjQzYzRmODE0ZjA1OTNh
YmMzNmVhNGM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA4LTE1ICBEYXZp
ZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW4gdXAgRHJhZ0Fw
cGxpY2F0aW9uRmxhZ3MgYWZ0ZXIgc3dpdGNoIHRvIE9wdGlvblNldDw+CisgICAgICAgIDxodHRw
czovL3dlYmtpdC5vcmcvYi8yMTUzNDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ2hhbmdlIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzIHRv
IGFuIGVudW0gY2xhc3MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIHNpbmNlIG5vIGNoYW5nZSBp
biBiZWhhdmlvci4KKworICAgICAgICAqIHBhZ2UvZ3RrL0RyYWdDb250cm9sbGVyR3RrLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjppc0NvcHlLZXlEb3duKToKKyAgICAg
ICAgKiBwYWdlL21hYy9EcmFnQ29udHJvbGxlck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkRy
YWdDb250cm9sbGVyOjppc0NvcHlLZXlEb3duKToKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250
cm9sbGVyOjpkcmFnT3BlcmF0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9EcmFnRGF0YS5oOgor
CiAyMDIwLTA4LTEyICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAg
ICAgICAgIEJyb2tlbiBmb3JtYXR0aW5nIGluIHByaWNlIHRhYmxlIG9uIHlhbmRleC5ydSBhZnRl
ciB0cmFuc2xhdGluZyB0byBFbmdsaXNoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGUxMjE5MDliMjQxOWI2Y2M4MDdk
ZTE4MDMxODE2MGMzZWZiZWY4MGYuLjY2ZWJmZGE0YTQwY2IzNTE3NWUwYTBiY2U2MjUyYWY3Yjg4
NTkwYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDgtMTUgIERhdmlkIEtpbHpl
ciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhbiB1cCBEcmFnQXBwbGljYXRp
b25GbGFncyBhZnRlciBzd2l0Y2ggdG8gT3B0aW9uU2V0PD4KKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzIxNTM0OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2UgV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3MgdG8gYW4gZW51
bSBjbGFzcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL0Ryb3BUYXJnZXRHdGszLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6RHJvcFRhcmdldDo6ZHJvcCk6CisgICAgICAgIC0gU3dpdGNo
IHRvIHVzZSBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+LgorICAgICAg
ICAqIFVJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbToKKyAgICAgICAgKFdlYktpdDo6YXBw
bGljYXRpb25GbGFnc0ZvckRyYWcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmg6CisgICAgICAgIC0gVXBkYXRlIGZvcndhcmQgZGVjbGFyYXRpb24uCisKIDIwMjAtMDgt
MTIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
UGFnZVByb3h5OjpyZWdpc3RlckVkaXRDb21tYW5kIHNob3VsZCBiZSByb2J1c3QgYWdhaW5zdCBp
bnZhbGlkIHVuZG8gc3RlcCBpZGVudGlmaWVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmlu
ZGV4IDlhMzY2YjBjYWNjNzFkMTUwNWZhMDcwYmI4MzgzMTRkNTlhYWViNTkuLjM0ZDc5MmZlNDRl
MDE1NjliMTliNGE2MDI0MDgyMWNiYjg4MDM3NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyNCBAQAorMjAyMC0wOC0xNSAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJA
YXBwbGUuY29tPgorCisgICAgICAgIENsZWFuIHVwIERyYWdBcHBsaWNhdGlvbkZsYWdzIGFmdGVy
IHN3aXRjaCB0byBPcHRpb25TZXQ8PgorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjE1
MzQ5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENo
YW5nZSBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFncyB0byBhbiBlbnVtIGNsYXNzLgorCisg
ICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IGFwcGxpY2F0
aW9uRmxhZ3M6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlZpZXcgX2FwcGxpY2F0aW9uRmxh
Z3NGb3JEcmFnOl0pOgorICAgICAgICAtIFJlbmFtZSAtYXBwbGljYXRpb25GbGFnczogdG8gLV9h
cHBsaWNhdGlvbkZsYWdzRm9yRHJhZzogc2luY2UKKyAgICAgICAgICBpdCdzIG9ubHkgdXNlZCBp
bnRlcm5hbGx5LgorICAgICAgICAtIFN3aXRjaCB0byByZXR1cm4gT3B0aW9uU2V0PFdlYkNvcmU6
OkRyYWdBcHBsaWNhdGlvbkZsYWdzPi4KKyAgICAgICAgKC1bV2ViVmlldyBkcmFnZ2luZ0VudGVy
ZWQ6XSk6CisgICAgICAgICgtW1dlYlZpZXcgZHJhZ2dpbmdVcGRhdGVkOl0pOgorICAgICAgICAo
LVtXZWJWaWV3IGRyYWdnaW5nRXhpdGVkOl0pOgorICAgICAgICAoLVtXZWJWaWV3IHBlcmZvcm1E
cmFnT3BlcmF0aW9uOl0pOgorICAgICAgICAtIFN3aXRjaCB0byBjYWxsaW5nIC1fYXBwbGljYXRp
b25GbGFnc0ZvckRyYWc6LgorCiAyMDIwLTA4LTA1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0
b25AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBhbGwgcmVmZXJlbmNlcyB0byBub24tZXhp
c3RlbnQgMTAuMTYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvZ3RrL0RyYWdDb250
cm9sbGVyR3RrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvZ3RrL0RyYWdDb250cm9sbGVyR3Rr
LmNwcAppbmRleCA0YjYxMjBkMzJiYzc4ZGM0NGJjM2E5ZmVkODdhMWIwMTBjMzc3OWE4Li5kNDkw
N2Y5MTQyYjNkMzMzNzBmNDcwNTdmMTBiNDljNTAzODE5M2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2d0ay9EcmFnQ29udHJvbGxlckd0ay5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9ndGsvRHJhZ0NvbnRyb2xsZXJHdGsuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIGNvbnN0
IGZsb2F0IERyYWdDb250cm9sbGVyOjpEcmFnSW1hZ2VBbHBoYSA9IDAuNzVmOwogCiBib29sIERy
YWdDb250cm9sbGVyOjppc0NvcHlLZXlEb3duKGNvbnN0IERyYWdEYXRhJiBkcmFnRGF0YSkKIHsK
LSAgICByZXR1cm4gZHJhZ0RhdGEuZmxhZ3MoKS5jb250YWlucyhEcmFnQXBwbGljYXRpb25Jc0Nv
cHlLZXlEb3duKTsKKyAgICByZXR1cm4gZHJhZ0RhdGEuZmxhZ3MoKS5jb250YWlucyhEcmFnQXBw
bGljYXRpb25GbGFnczo6SXNDb3B5S2V5RG93bik7CiB9CiAKIE9wdGlvbmFsPERyYWdPcGVyYXRp
b24+IERyYWdDb250cm9sbGVyOjpkcmFnT3BlcmF0aW9uKGNvbnN0IERyYWdEYXRhJiBkcmFnRGF0
YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0RyYWdDb250cm9sbGVyTWFj
Lm1tIGIvU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRHJhZ0NvbnRyb2xsZXJNYWMubW0KaW5kZXgg
N2U0NmFjNDg5NzY2ZTFiNmM5N2FlYzgyNzRkNjRjYTUwZTgzNWVlZC4uODBlYzY3ZDkxM2I3Nzhl
ZmQwYmZmNjEzMTc1YjI5NTVhMTE4ZmU2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9tYWMvRHJhZ0NvbnRyb2xsZXJNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9tYWMv
RHJhZ0NvbnRyb2xsZXJNYWMubW0KQEAgLTYxLDEyICs2MSwxMiBAQCBjb25zdCBmbG9hdCBEcmFn
Q29udHJvbGxlcjo6RHJhZ0ltYWdlQWxwaGEgPSAwLjc1ZjsKIAogYm9vbCBEcmFnQ29udHJvbGxl
cjo6aXNDb3B5S2V5RG93bihjb25zdCBEcmFnRGF0YSYgZHJhZ0RhdGEpCiB7Ci0gICAgcmV0dXJu
IGRyYWdEYXRhLmZsYWdzKCkuY29udGFpbnMoRHJhZ0FwcGxpY2F0aW9uSXNDb3B5S2V5RG93bik7
CisgICAgcmV0dXJuIGRyYWdEYXRhLmZsYWdzKCkuY29udGFpbnMoRHJhZ0FwcGxpY2F0aW9uRmxh
Z3M6OklzQ29weUtleURvd24pOwogfQogICAgIAogT3B0aW9uYWw8RHJhZ09wZXJhdGlvbj4gRHJh
Z0NvbnRyb2xsZXI6OmRyYWdPcGVyYXRpb24oY29uc3QgRHJhZ0RhdGEmIGRyYWdEYXRhKQogewot
ICAgIGlmIChkcmFnRGF0YS5mbGFncygpLmNvbnRhaW5zKERyYWdBcHBsaWNhdGlvbklzTW9kYWwp
KQorICAgIGlmIChkcmFnRGF0YS5mbGFncygpLmNvbnRhaW5zKERyYWdBcHBsaWNhdGlvbkZsYWdz
OjpJc01vZGFsKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAogICAgIGJvb2wgbWF5
Q29udGFpblVSTDsKQEAgLTc4LDcgKzc4LDcgQEAgT3B0aW9uYWw8RHJhZ09wZXJhdGlvbj4gRHJh
Z0NvbnRyb2xsZXI6OmRyYWdPcGVyYXRpb24oY29uc3QgRHJhZ0RhdGEmIGRyYWdEYXRhKQogICAg
IGlmICghbWF5Q29udGFpblVSTCAmJiAhZHJhZ0RhdGEuY29udGFpbnNQcm9taXNlKCkpCiAgICAg
ICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAKLSAgICBpZiAoIW1fZG9jdW1lbnRVbmRlck1vdXNl
IHx8ICghKGRyYWdEYXRhLmZsYWdzKCkuY29udGFpbnNBbGwoeyBEcmFnQXBwbGljYXRpb25IYXNB
dHRhY2hlZFNoZWV0LCBEcmFnQXBwbGljYXRpb25Jc1NvdXJjZSB9KSkpKQorICAgIGlmICghbV9k
b2N1bWVudFVuZGVyTW91c2UgfHwgKCEoZHJhZ0RhdGEuZmxhZ3MoKS5jb250YWluc0FsbCh7IERy
YWdBcHBsaWNhdGlvbkZsYWdzOjpIYXNBdHRhY2hlZFNoZWV0LCBEcmFnQXBwbGljYXRpb25GbGFn
czo6SXNTb3VyY2UgfSkpKSkKICAgICAgICAgcmV0dXJuIERyYWdPcGVyYXRpb246OkNvcHk7CiAK
ICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vRHJhZ0RhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdEYXRhLmgKaW5k
ZXggZDFlM2MxMDcxZTUyM2YxOGY5MmJjMjkyNGE1Mzg3N2E3YTI2NWYxZi4uYWNjM2U4ZWQxNjE4
OThiODYxYzlmZmQ5NjY4MmVhNDI0YTJkYmVlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vRHJhZ0RhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0
YS5oCkBAIC01OCwxMSArNTgsMTEgQEAgdHlwZWRlZiB2b2lkKiBEcmFnRGF0YVJlZjsKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1lbnVtIERyYWdBcHBsaWNhdGlvbkZsYWdzIDogdWludDhfdCB7
Ci0gICAgRHJhZ0FwcGxpY2F0aW9uSXNNb2RhbCA9IDEsCi0gICAgRHJhZ0FwcGxpY2F0aW9uSXNT
b3VyY2UgPSAyLAotICAgIERyYWdBcHBsaWNhdGlvbkhhc0F0dGFjaGVkU2hlZXQgPSA0LAotICAg
IERyYWdBcHBsaWNhdGlvbklzQ29weUtleURvd24gPSA4CitlbnVtIGNsYXNzIERyYWdBcHBsaWNh
dGlvbkZsYWdzIDogdWludDhfdCB7CisgICAgSXNNb2RhbCA9IDEsCisgICAgSXNTb3VyY2UgPSAy
LAorICAgIEhhc0F0dGFjaGVkU2hlZXQgPSA0LAorICAgIElzQ29weUtleURvd24gPSA4CiB9Owog
CiAjaWYgUExBVEZPUk0oV0lOKQpAQCAtMTQ4LDEwICsxNDgsMTAgQEAgbmFtZXNwYWNlIFdURiB7
CiB0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZs
YWdzPiB7CiAgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKICAgICAgICAgV2ViQ29yZTo6
RHJhZ0FwcGxpY2F0aW9uRmxhZ3MsCi0gICAgICAgIFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZs
YWdzOjpEcmFnQXBwbGljYXRpb25Jc01vZGFsLAotICAgICAgICBXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFnczo6RHJhZ0FwcGxpY2F0aW9uSXNTb3VyY2UsCi0gICAgICAgIFdlYkNvcmU6OkRy
YWdBcHBsaWNhdGlvbkZsYWdzOjpEcmFnQXBwbGljYXRpb25IYXNBdHRhY2hlZFNoZWV0LAotICAg
ICAgICBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFnczo6RHJhZ0FwcGxpY2F0aW9uSXNDb3B5
S2V5RG93bgorICAgICAgICBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFnczo6SXNNb2RhbCwK
KyAgICAgICAgV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OklzU291cmNlLAorICAgICAg
ICBXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFnczo6SGFzQXR0YWNoZWRTaGVldCwKKyAgICAg
ICAgV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OklzQ29weUtleURvd24KICAgICA+Owog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9Ecm9wVGFy
Z2V0R3RrMy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL0Ryb3BUYXJnZXRH
dGszLmNwcAppbmRleCA3MmJlNWJlMDI3ODFhYTIxN2M5N2Y0MWQ4NGUwZjIyMTNmZjI3MjNkLi4w
NGM0NTkzMDdkNWNlMGQxMDEwYWQ1Njk4MTM5NmE3NzA2ZmNhOGNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL0Ryb3BUYXJnZXRHdGszLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL0Ryb3BUYXJnZXRHdGszLmNwcApAQCAtMjYzLDEw
ICsyNjMsMTAgQEAgdm9pZCBEcm9wVGFyZ2V0Ojpkcm9wKEludFBvaW50JiYgcG9zaXRpb24sIHVu
c2lnbmVkIHRpbWUpCiAgICAgYXV0byogcGFnZSA9IHdlYmtpdFdlYlZpZXdCYXNlR2V0UGFnZShX
RUJLSVRfV0VCX1ZJRVdfQkFTRShtX3dlYlZpZXcpKTsKICAgICBBU1NFUlQocGFnZSk7CiAKLSAg
ICB1aW50MzJfdCBmbGFncyA9IDA7CisgICAgT3B0aW9uU2V0PERyYWdBcHBsaWNhdGlvbkZsYWdz
PiBmbGFnczsKICAgICBpZiAoZ2RrX2RyYWdfY29udGV4dF9nZXRfc2VsZWN0ZWRfYWN0aW9uKG1f
ZHJvcC5nZXQoKSkgPT0gR0RLX0FDVElPTl9DT1BZKQotICAgICAgICBmbGFncyB8PSBEcmFnQXBw
bGljYXRpb25Jc0NvcHlLZXlEb3duOwotICAgIERyYWdEYXRhIGRyYWdEYXRhKCZtX3NlbGVjdGlv
bkRhdGEudmFsdWUoKSwgcG9zaXRpb24sIGNvbnZlcnRXaWRnZXRQb2ludFRvU2NyZWVuUG9pbnQo
bV93ZWJWaWV3LCBwb3NpdGlvbiksIGdka0RyYWdBY3Rpb25Ub0RyYWdPcGVyYXRpb24oZ2RrX2Ry
YWdfY29udGV4dF9nZXRfYWN0aW9ucyhtX2Ryb3AuZ2V0KCkpKSwgc3RhdGljX2Nhc3Q8RHJhZ0Fw
cGxpY2F0aW9uRmxhZ3M+KGZsYWdzKSk7CisgICAgICAgIGZsYWdzLmFkZChEcmFnQXBwbGljYXRp
b25GbGFnczo6SXNDb3B5S2V5RG93bik7CisgICAgRHJhZ0RhdGEgZHJhZ0RhdGEoJm1fc2VsZWN0
aW9uRGF0YS52YWx1ZSgpLCBwb3NpdGlvbiwgY29udmVydFdpZGdldFBvaW50VG9TY3JlZW5Qb2lu
dChtX3dlYlZpZXcsIHBvc2l0aW9uKSwgZ2RrRHJhZ0FjdGlvblRvRHJhZ09wZXJhdGlvbihnZGtf
ZHJhZ19jb250ZXh0X2dldF9hY3Rpb25zKG1fZHJvcC5nZXQoKSkpLCBmbGFncyk7CiAgICAgcGFn
ZS0+cGVyZm9ybURyYWdPcGVyYXRpb24oZHJhZ0RhdGEsIHsgfSwgeyB9LCB7IH0pOwogICAgIGd0
a19kcmFnX2ZpbmlzaChtX2Ryb3AuZ2V0KCksIFRSVUUsIEZBTFNFLCB0aW1lKTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW0gYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbQppbmRleCBhYjFmYzYyMjFl
ODYzZTQxZmE0YjEzYzMxY2FmNmU4NGFmZmQ5ZDAwLi41Y2E3N2FmODIzNDQ2NDFmZmEwZjcwMWQz
ZTYyYzliNWNmNzExOWE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJWaWV3SW1wbC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJW
aWV3SW1wbC5tbQpAQCAtMzkzNCwxMyArMzkzNCwxMyBAQCBzdGF0aWMgT3B0aW9uU2V0PFdlYkNv
cmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzPiBhcHBsaWNhdGlvbkZsYWdzRm9yRHJhZyhOU1ZpZXcg
KgogICAgIEFTU0VSVChoYXNQcm9jZXNzUHJpdmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkNv
bW11bmljYXRlV2l0aFdpbmRvd1NlcnZlcikpOwogICAgIE9wdGlvblNldDxXZWJDb3JlOjpEcmFn
QXBwbGljYXRpb25GbGFncz4gZmxhZ3M7CiAgICAgaWYgKFtOU0FwcCBtb2RhbFdpbmRvd10pCi0g
ICAgICAgIGZsYWdzLmFkZChXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25Jc01vZGFsKTsKKyAgICAg
ICAgZmxhZ3MuYWRkKFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc01vZGFsKTsKICAg
ICBpZiAodmlldy53aW5kb3cuYXR0YWNoZWRTaGVldCkKLSAgICAgICAgZmxhZ3MuYWRkKFdlYkNv
cmU6OkRyYWdBcHBsaWNhdGlvbkhhc0F0dGFjaGVkU2hlZXQpOworICAgICAgICBmbGFncy5hZGQo
V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6Okhhc0F0dGFjaGVkU2hlZXQpOwogICAgIGlm
IChkcmFnZ2luZ0luZm8uZHJhZ2dpbmdTb3VyY2UgPT0gdmlldykKLSAgICAgICAgZmxhZ3MuYWRk
KFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbklzU291cmNlKTsKKyAgICAgICAgZmxhZ3MuYWRkKFdl
YkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc1NvdXJjZSk7CiAgICAgaWYgKFtOU0FwcCBj
dXJyZW50RXZlbnRdLm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9kaWZpZXJGbGFnT3B0aW9uKQot
ICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSXNDb3B5S2V5RG93bik7
CisgICAgICAgIGZsYWdzLmFkZChXZWJDb3JlOjpEcmFnQXBwbGljYXRpb25GbGFnczo6SXNDb3B5
S2V5RG93bik7CiAgICAgcmV0dXJuIGZsYWdzOwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggMjQ3OWYyMmVlMTg4MzU4ODk5MjYzNmI1ZGRhNTRh
ZjVmNDM0NzdmMS4uYmU0NzNmNjRjZjE4NjlmYmFjYWY1YjNkMzQ0NzA3OWUzYjc2ODVlZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMTkzLDkgKzE5
Myw5IEBAIGNsYXNzIFN1YnN0aXR1dGVEYXRhOwogY2xhc3MgVGV4dENoZWNraW5nUmVxdWVzdDsK
IGNsYXNzIFZpc2libGVQb3NpdGlvbjsKIAotZW51bSBEcmFnQXBwbGljYXRpb25GbGFncyA6IHVp
bnQ4X3Q7CiBlbnVtIFN5bnRoZXRpY0NsaWNrVHlwZSA6IGludDhfdDsKIGVudW0gY2xhc3MgRE9N
UGFzdGVBY2Nlc3NSZXNwb25zZSA6IHVpbnQ4X3Q7CitlbnVtIGNsYXNzIERyYWdBcHBsaWNhdGlv
bkZsYWdzIDogdWludDhfdDsKIGVudW0gY2xhc3MgRHJhZ0hhbmRsaW5nTWV0aG9kIDogdWludDhf
dDsKIGVudW0gY2xhc3MgRXZlbnRNYWtlc0dhbWVwYWRzVmlzaWJsZSA6IGJvb2w7CiBlbnVtIGNs
YXNzIFNlbGVjdGlvbkRpcmVjdGlvbiA6IHVpbnQ4X3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggNWQ0MjcxNWVmNGUxZjIzMmZjMjJiNjRkZGYzOTI0
MjJlZjc3MjI0Yy4uN2E5Njk5NWNmMTI5NzhmZDc4NGFkMjdhMWQ4ODg2MWYxNDM2NjQzNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtNjg3NiwxOCAr
Njg3NiwxOCBAQCAtIChCT09MKV9zaG91bGRBdXRvc2Nyb2xsRm9yRHJhZ2dpbmdJbmZvOihpZClk
cmFnZ2luZ0luZm8KICAgICByZXR1cm4gW2RvY3VtZW50VmlldyBfc2hvdWxkQXV0b3Njcm9sbEZv
ckRyYWdnaW5nSW5mbzpkcmFnZ2luZ0luZm9dOwogfQogCi0tIChXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFncylhcHBsaWNhdGlvbkZsYWdzOihpZCA8TlNEcmFnZ2luZ0luZm8+KWRyYWdnaW5n
SW5mbworLSAoT3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzPilfYXBwbGlj
YXRpb25GbGFnc0ZvckRyYWc6KGlkIDxOU0RyYWdnaW5nSW5mbz4pZHJhZ2dpbmdJbmZvCiB7Ci0g
ICAgdWludDMyX3QgZmxhZ3MgPSAwOworICAgIE9wdGlvblNldDxXZWJDb3JlOjpEcmFnQXBwbGlj
YXRpb25GbGFncz4gZmxhZ3M7CiAgICAgaWYgKFtOU0FwcCBtb2RhbFdpbmRvd10pCi0gICAgICAg
IGZsYWdzID0gV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSXNNb2RhbDsKKyAgICAgICAgZmxhZ3Mu
YWRkKFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc01vZGFsKTsKICAgICBpZiAoW1tz
ZWxmIHdpbmRvd10gYXR0YWNoZWRTaGVldF0pCi0gICAgICAgIGZsYWdzIHw9IFdlYkNvcmU6OkRy
YWdBcHBsaWNhdGlvbkhhc0F0dGFjaGVkU2hlZXQ7CisgICAgICAgIGZsYWdzLmFkZChXZWJDb3Jl
OjpEcmFnQXBwbGljYXRpb25GbGFnczo6SGFzQXR0YWNoZWRTaGVldCk7CiAgICAgaWYgKFtkcmFn
Z2luZ0luZm8gZHJhZ2dpbmdTb3VyY2VdID09IHNlbGYpCi0gICAgICAgIGZsYWdzIHw9IFdlYkNv
cmU6OkRyYWdBcHBsaWNhdGlvbklzU291cmNlOworICAgICAgICBmbGFncy5hZGQoV2ViQ29yZTo6
RHJhZ0FwcGxpY2F0aW9uRmxhZ3M6OklzU291cmNlKTsKICAgICBpZiAoW1tOU0FwcCBjdXJyZW50
RXZlbnRdIG1vZGlmaWVyRmxhZ3NdICYgTlNFdmVudE1vZGlmaWVyRmxhZ09wdGlvbikKLSAgICAg
ICAgZmxhZ3MgfD0gV2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uSXNDb3B5S2V5RG93bjsKLSAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxhZ3M+KGZsYWdzKTsK
KyAgICAgICAgZmxhZ3MuYWRkKFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzOjpJc0NvcHlL
ZXlEb3duKTsKKyAgICByZXR1cm4gZmxhZ3M7CiB9CiAKIC0gKE9wdGlvblNldDxXZWJDb3JlOjpE
cmFnRGVzdGluYXRpb25BY3Rpb24+KWFjdGlvbk1hc2tGb3JEcmFnZ2luZ0luZm86KGlkIDxOU0Ry
YWdnaW5nSW5mbz4pZHJhZ2dpbmdJbmZvCkBAIC02OTAwLDcgKzY5MDAsNyBAQCAtIChOU0RyYWdP
cGVyYXRpb24pZHJhZ2dpbmdFbnRlcmVkOihpZCA8TlNEcmFnZ2luZ0luZm8+KWRyYWdnaW5nSW5m
bwogICAgIFdlYkNvcmU6OkludFBvaW50IGNsaWVudChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9j
YXRpb25dKTsKICAgICBXZWJDb3JlOjpJbnRQb2ludCBnbG9iYWwoV2ViQ29yZTo6Z2xvYmFsUG9p
bnQoW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ0xvY2F0aW9uXSwgW3NlbGYgd2luZG93XSkpOwogCi0g
ICAgV2ViQ29yZTo6RHJhZ0RhdGEgZHJhZ0RhdGEoZHJhZ2dpbmdJbmZvLCBjbGllbnQsIGdsb2Jh
bCwgY29yZURyYWdPcGVyYXRpb25NYXNrKFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdTb3VyY2VPcGVy
YXRpb25NYXNrXSksIFtzZWxmIGFwcGxpY2F0aW9uRmxhZ3M6ZHJhZ2dpbmdJbmZvXSwgW3NlbGYg
YWN0aW9uTWFza0ZvckRyYWdnaW5nSW5mbzpkcmFnZ2luZ0luZm9dKTsKKyAgICBXZWJDb3JlOjpE
cmFnRGF0YSBkcmFnRGF0YShkcmFnZ2luZ0luZm8sIGNsaWVudCwgZ2xvYmFsLCBjb3JlRHJhZ09w
ZXJhdGlvbk1hc2soW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tdKSwg
W3NlbGYgX2FwcGxpY2F0aW9uRmxhZ3NGb3JEcmFnOmRyYWdnaW5nSW5mb10sIFtzZWxmIGFjdGlv
bk1hc2tGb3JEcmFnZ2luZ0luZm86ZHJhZ2dpbmdJbmZvXSk7CiAgICAgcmV0dXJuIGtpdChjb3Jl
KHNlbGYpLT5kcmFnQ29udHJvbGxlcigpLmRyYWdFbnRlcmVkKGRyYWdEYXRhKSk7CiB9CiAKQEAg
LTY5MTMsNyArNjkxMyw3IEBAIC0gKE5TRHJhZ09wZXJhdGlvbilkcmFnZ2luZ1VwZGF0ZWQ6KGlk
IDxOU0RyYWdnaW5nSW5mbz4pZHJhZ2dpbmdJbmZvCiAgICAgV2ViQ29yZTo6SW50UG9pbnQgY2xp
ZW50KFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdMb2NhdGlvbl0pOwogICAgIFdlYkNvcmU6OkludFBv
aW50IGdsb2JhbChXZWJDb3JlOjpnbG9iYWxQb2ludChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9j
YXRpb25dLCBbc2VsZiB3aW5kb3ddKSk7CiAKLSAgICBXZWJDb3JlOjpEcmFnRGF0YSBkcmFnRGF0
YShkcmFnZ2luZ0luZm8sIGNsaWVudCwgZ2xvYmFsLCBjb3JlRHJhZ09wZXJhdGlvbk1hc2soW2Ry
YWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tdKSwgW3NlbGYgYXBwbGljYXRp
b25GbGFnczpkcmFnZ2luZ0luZm9dLCBbc2VsZiBhY3Rpb25NYXNrRm9yRHJhZ2dpbmdJbmZvOmRy
YWdnaW5nSW5mb10pOworICAgIFdlYkNvcmU6OkRyYWdEYXRhIGRyYWdEYXRhKGRyYWdnaW5nSW5m
bywgY2xpZW50LCBnbG9iYWwsIGNvcmVEcmFnT3BlcmF0aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRy
YWdnaW5nU291cmNlT3BlcmF0aW9uTWFza10pLCBbc2VsZiBfYXBwbGljYXRpb25GbGFnc0ZvckRy
YWc6ZHJhZ2dpbmdJbmZvXSwgW3NlbGYgYWN0aW9uTWFza0ZvckRyYWdnaW5nSW5mbzpkcmFnZ2lu
Z0luZm9dKTsKICAgICByZXR1cm4ga2l0KHBhZ2UtPmRyYWdDb250cm9sbGVyKCkuZHJhZ1VwZGF0
ZWQoZHJhZ0RhdGEpKTsKIH0KIApAQCAtNjkyNSw3ICs2OTI1LDcgQEAgLSAodm9pZClkcmFnZ2lu
Z0V4aXRlZDooaWQgPE5TRHJhZ2dpbmdJbmZvPilkcmFnZ2luZ0luZm8KIAogICAgIFdlYkNvcmU6
OkludFBvaW50IGNsaWVudChbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nTG9jYXRpb25dKTsKICAgICBX
ZWJDb3JlOjpJbnRQb2ludCBnbG9iYWwoV2ViQ29yZTo6Z2xvYmFsUG9pbnQoW2RyYWdnaW5nSW5m
byBkcmFnZ2luZ0xvY2F0aW9uXSwgW3NlbGYgd2luZG93XSkpOwotICAgIFdlYkNvcmU6OkRyYWdE
YXRhIGRyYWdEYXRhKGRyYWdnaW5nSW5mbywgY2xpZW50LCBnbG9iYWwsIGNvcmVEcmFnT3BlcmF0
aW9uTWFzayhbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlT3BlcmF0aW9uTWFza10pLCBbc2Vs
ZiBhcHBsaWNhdGlvbkZsYWdzOmRyYWdnaW5nSW5mb10pOworICAgIFdlYkNvcmU6OkRyYWdEYXRh
IGRyYWdEYXRhKGRyYWdnaW5nSW5mbywgY2xpZW50LCBnbG9iYWwsIGNvcmVEcmFnT3BlcmF0aW9u
TWFzayhbZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlT3BlcmF0aW9uTWFza10pLCBbc2VsZiBf
YXBwbGljYXRpb25GbGFnc0ZvckRyYWc6ZHJhZ2dpbmdJbmZvXSk7CiAgICAgcGFnZS0+ZHJhZ0Nv
bnRyb2xsZXIoKS5kcmFnRXhpdGVkKGRyYWdEYXRhKTsKIH0KIApAQCAtNjkzOCw3ICs2OTM4LDcg
QEAgLSAoQk9PTClwZXJmb3JtRHJhZ09wZXJhdGlvbjooaWQgPE5TRHJhZ2dpbmdJbmZvPilkcmFn
Z2luZ0luZm8KIHsKICAgICBXZWJDb3JlOjpJbnRQb2ludCBjbGllbnQoW2RyYWdnaW5nSW5mbyBk
cmFnZ2luZ0xvY2F0aW9uXSk7CiAgICAgV2ViQ29yZTo6SW50UG9pbnQgZ2xvYmFsKFdlYkNvcmU6
Omdsb2JhbFBvaW50KFtkcmFnZ2luZ0luZm8gZHJhZ2dpbmdMb2NhdGlvbl0sIFtzZWxmIHdpbmRv
d10pKTsKLSAgICBhdXRvKiBkcmFnRGF0YSA9IG5ldyBXZWJDb3JlOjpEcmFnRGF0YShkcmFnZ2lu
Z0luZm8sIGNsaWVudCwgZ2xvYmFsLCBjb3JlRHJhZ09wZXJhdGlvbk1hc2soW2RyYWdnaW5nSW5m
byBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tdKSwgW3NlbGYgYXBwbGljYXRpb25GbGFnczpk
cmFnZ2luZ0luZm9dKTsKKyAgICBhdXRvKiBkcmFnRGF0YSA9IG5ldyBXZWJDb3JlOjpEcmFnRGF0
YShkcmFnZ2luZ0luZm8sIGNsaWVudCwgZ2xvYmFsLCBjb3JlRHJhZ09wZXJhdGlvbk1hc2soW2Ry
YWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tdKSwgW3NlbGYgX2FwcGxpY2F0
aW9uRmxhZ3NGb3JEcmFnOmRyYWdnaW5nSW5mb10pOwogCiAgICAgTlNBcnJheSogdHlwZXMgPSBk
cmFnZ2luZ0luZm8uZHJhZ2dpbmdQYXN0ZWJvYXJkLnR5cGVzOwogICAgIGlmICghW3R5cGVzIGNv
bnRhaW5zT2JqZWN0OldlYkFyY2hpdmVQYm9hcmRUeXBlXSAmJiBbdHlwZXMgY29udGFpbnNPYmpl
Y3Q6V2ViQ29yZTo6bGVnYWN5RmlsZXNQcm9taXNlUGFzdGVib2FyZFR5cGUoKV0pIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>