<?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>143674</bug_id>
          
          <creation_ts>2015-04-13 12:32:01 -0700</creation_ts>
          <short_desc>[Fullscreen] ChromeClient::exitVideoFullscreen() should take a pointer to a HTMLVideoElement.</short_desc>
          <delta_ts>2015-04-15 14:00:48 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>143680</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>eric.carlson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1084906</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-13 12:32:01 -0700</bug_when>
    <thetext>[Fullscreen] ChromeClient::exitVideoFullscreen() should take a pointer to a HTMLVideoElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084914</commentid>
    <comment_count>1</comment_count>
      <attachid>250665</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-13 12:39:28 -0700</bug_when>
    <thetext>Created attachment 250665
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085144</commentid>
    <comment_count>2</comment_count>
      <attachid>250665</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-04-14 08:51:38 -0700</bug_when>
    <thetext>Comment on attachment 250665
Patch

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

&gt; Source/WebCore/page/ChromeClient.h:336
&gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*) { }

Is it ever null? If not, can we pass it by reference?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085145</commentid>
    <comment_count>3</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-14 08:57:03 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 250665 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=250665&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/ChromeClient.h:336
&gt; &gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*) { }
&gt; 
&gt; Is it ever null? If not, can we pass it by reference?


Sure can!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085166</commentid>
    <comment_count>4</comment_count>
      <attachid>250665</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-04-14 09:58:03 -0700</bug_when>
    <thetext>Comment on attachment 250665
Patch

iOS error: WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm:222:9: error: use of undeclared identifier &apos;exitVideoFullscreen&apos;
Windows error: win\WebCoreSupport\WebChromeClient.cpp(776): error C2275: &apos;WebCore::HTMLVideoElement&apos; : illegal use of this type as an expression

Regressions: Unexpected crashes (1)
  compositing/video/video-clip-change-src.html [ Crash ]

Regressions: Unexpected missing results (1)
  compositing/geometry/fixed-transformed.html [ Missing ]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085267</commentid>
    <comment_count>5</comment_count>
      <attachid>250740</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-14 14:26:50 -0700</bug_when>
    <thetext>Created attachment 250740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085321</commentid>
    <comment_count>6</comment_count>
      <attachid>250740</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-04-14 16:39:27 -0700</bug_when>
    <thetext>Comment on attachment 250740
Patch

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

&gt; Source/WebCore/page/ChromeClient.h:336
&gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*) { }

Should be a reference, not a pointer. Didn’t you and Sam already agree to that?

&gt; Source/WebKit/mac/WebCoreSupport/WebChromeClient.h:183
&gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*) override;

Ditto.

&gt; Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp:774
&gt; +void WebChromeClient::exitVideoFullscreenForVideoElement(HTMLVideoElement* videoElement)

Ditto.

&gt; Source/WebKit/win/WebCoreSupport/WebChromeClient.h:150
&gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*);

Ditto.

&gt; Source/WebKit/win/WebView.h:948
&gt; +    void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*);

Ditto.

&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:920
&gt; +void WebChromeClient::exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement* videoElement)

Ditto.

&gt; Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h:64
&gt; +    void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*);

Ditto.

&gt; Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm:110
&gt; +void WebVideoFullscreenManager::exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*)

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085324</commentid>
    <comment_count>7</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-14 16:46:33 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Comment on attachment 250740 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=250740&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/ChromeClient.h:336
&gt; &gt; +    virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement*) { }
&gt; 
&gt; Should be a reference, not a pointer. Didn’t you and Sam already agree to
&gt; that?

I did! I was midway through updating all the various ports, but my machine panic&apos;d. I&apos;ll definitely do that before ii land.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085621</commentid>
    <comment_count>8</comment_count>
      <attachid>250830</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-15 12:09:34 -0700</bug_when>
    <thetext>Created attachment 250830
Patch for landing

Made the matching change (* -&gt; &amp;) to enterVideoFullscreenForElement()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085677</commentid>
    <comment_count>9</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-04-15 14:00:48 -0700</bug_when>
    <thetext>Committed r182860: &lt;http://trac.webkit.org/changeset/182860&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250665</attachid>
            <date>2015-04-13 12:39:28 -0700</date>
            <delta_ts>2015-04-14 14:26:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143674-20150413123833.patch</filename>
            <type>text/plain</type>
            <size>12830</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyNjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODhkMjExZGFlOTk5ZDg3
NDY2YWE3OTc4ZDcxMjMyNDBiMzc2YjE2OS4uMWQ1NzIxNTlhMmZkOGYxMjBmOTY4OTZlYzA2ZDgy
ZGY0NmI3NGIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE2IEBACiAyMDE1LTA0LTEzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4oKSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8g
YSBIVE1MVmlkZW9FbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQzNjc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6ZXhpdEZ1bGxzY3JlZW4pOiBleGl0VmlkZW9GdWxsc2NyZWVu
KCkgLT4gZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCguLi4pLgorICAgICAgICAq
IHBhZ2UvQ2hyb21lQ2xpZW50Lmg6CisKKzIwMTUtMDQtMTMgIEplciBOb2JsZSAgPGplci5ub2Js
ZUBhcHBsZS5jb20+CisKICAgICAgICAgW2lPU10gVHJlYXQgYSAnbm90IGZvdW5kJyBtZWRpYSBv
cHRpb24gaW5kZXggYXMgdGhlICdvZmYnIHRyYWNrLgogICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjcyCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA2NmNm
NzIzM2UxMzVkOGYzMDgwNWEyNzQyNGZjNThlYWQxYWMxMmUyLi5jNDk3ZTFkYzQ4NTE4ZmI1YmE1
ZmQyYTQ0MDkzNTJlZDAzY2M3NTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTUtMDQtMTMgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAg
W0Z1bGxzY3JlZW5dIENocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpIHNob3VsZCB0
YWtlIGEgcG9pbnRlciB0byBhIEhUTUxWaWRlb0VsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDM2NzQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbToKKyAg
ICAgICAgKFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVu
dCk6IFJlbmFtZWQgZnJvbSBleGl0VmlkZW9GdWxsc2NyZWVuKCkuCisgICAgICAgIChXZWJDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4pOiBEZWxldGVkLgorCiAyMDE1LTA0LTA4ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFdlYktp
dCBpcyBub3QgaG9ub3JpbmcgT1MgcHJlZmVyZW5jZXMgZm9yIHNlY29uZGFyeSBjbGljayBiZWhh
dmlvcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvd2luL0NoYW5nZUxvZwppbmRleCAyYjExODQ5MWU5YzQzZmY3YjZlNmFjNDliMjIwOWVk
MmY4OTgxMWNkLi4yN2Y5Mzk3NTViN2NlMTVjNzA1YWI1YzQ3NjdiZTk0Mjk0MDAxNDI3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93
aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDQtMTMgIEplciBOb2JsZSAgPGpl
ci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAgW0Z1bGxzY3JlZW5dIENocm9tZUNsaWVudDo6
ZXhpdFZpZGVvRnVsbHNjcmVlbigpIHNob3VsZCB0YWtlIGEgcG9pbnRlciB0byBhIEhUTUxWaWRl
b0VsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDM2NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZy
b20gZXhpdFZpZGVvRnVsbHNjcmVlbigpLgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50OjpleGl0
VmlkZW9GdWxsc2NyZWVuKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBXZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYlZpZXc6
OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20gZXhpdFZp
ZGVvRnVsbHNjcmVlbigpLgorICAgICAgICAoV2ViVmlldzo6ZXhpdFZpZGVvRnVsbHNjcmVlbik6
IERlbGV0ZWQuCisgICAgICAgICogV2ViVmlldy5oOgorCiAyMDE1LTA0LTA4ICBCcmFkeSBFaWRz
b24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBFeHBvc2UgdGhlICJTaGFyZSIgbWVu
dSBmb3IgbGlua3MsIGltYWdlcywgYW5kIG1lZGlhLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDRhZTdlZjM3NDky
MzUzZmQwYmExZTI3OGFiMzE2OTM2YjIzMTg5NGIuLmE5MmM3MGExNDAyYWY2ZDU4NzQyMDRkYTFh
MjgzMjRhNTc1MDhlNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNS0wNC0xMyAg
SmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKworICAgICAgICBbRnVsbHNjcmVlbl0g
Q2hyb21lQ2xpZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuKCkgc2hvdWxkIHRha2UgYSBwb2ludGVy
IHRvIGEgSFRNTFZpZGVvRWxlbWVudC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0MzY3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20gZXhpdFZpZGVvRnVsbHNjcmVlbigp
LgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4p
OiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFu
YWdlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIubW06CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20gZXhpdFZpZGVvRnVs
bHNjcmVlbigpLgorICAgICAgICAoV2ViS2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpl
eGl0VmlkZW9GdWxsc2NyZWVuKTogRGVsZXRlZC4KKwogMjAxNS0wNC0wOSAgQW50dGkgS29pdmlz
dG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgTmV0d29yayBDYWNoZTogQ3Jhc2ggaW4g
V2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OnRyeVJlcGxhY2VFbmNvZGVkRGF0YQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggMTVlNGI4MzgzMzc4MjRlZTI4MzZm
MGNkOWQ1MWJhNTE2MjdhM2YxOC4uM2M3ZDZkZWZjOWY5MDE5ZDdhYzMxMjI3ODJlODk0NDA0YzY5
NTQxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC01MDA5
LDcgKzUwMDksNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmV4aXRGdWxsc2NyZWVuKCkKICAg
ICAgICAgICAgIHBhdXNlSW50ZXJuYWwoKTsKIAogICAgICAgICBpZiAoZG9jdW1lbnQoKS5wYWdl
KCktPmNocm9tZSgpLmNsaWVudCgpLnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkpIHsKLSAgICAg
ICAgICAgIGRvY3VtZW50KCkucGFnZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5leGl0VmlkZW9GdWxs
c2NyZWVuKCk7CisgICAgICAgICAgICBkb2N1bWVudCgpLnBhZ2UoKS0+Y2hyb21lKCkuY2xpZW50
KCkuZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChkb3duY2FzdDxIVE1MVmlkZW9F
bGVtZW50Pih0aGlzKSk7CiAgICAgICAgICAgICBzY2hlZHVsZUV2ZW50KGV2ZW50TmFtZXMoKS53
ZWJraXRlbmRmdWxsc2NyZWVuRXZlbnQpOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Q2hyb21lQ2xpZW50LmgKaW5kZXggMDUxNmRlYTMyZDY3NDYxZDIzNTEzZjhhZjNmOWI2ODEwOGE1
NzZmNS4uYThkMjk2NGE3MDZkM2RiZTYzYThhMDZmNDI1MWZjNTJjMGRhMWMzMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0Nocm9tZUNsaWVudC5oCkBAIC0zMzMsNyArMzMzLDcgQEAgcHVibGljOgogI2lmIEVO
QUJMRShWSURFTykKICAgICB2aXJ0dWFsIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCosIEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNj
cmVlbk1vZGUpIHsgfQogI2VuZGlmCi0gICAgdmlydHVhbCB2b2lkIGV4aXRWaWRlb0Z1bGxzY3Jl
ZW4oKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxl
bWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KikgeyB9CiAgICAgdmlydHVhbCBib29sIHJl
cXVpcmVzRnVsbHNjcmVlbkZvclZpZGVvUGxheWJhY2soKSB7IHJldHVybiBmYWxzZTsgfSAKIAog
I2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggYTFlNGI4OGIzMDJhMGFlNTBjMzUw
N2M2YTNkZTU4NjU2NTc2MDQ0NC4uYzM5YWZmOTA0N2MwYWNiMTAyNTFhMzE4ZWE2NDQ4NWU2N2Yw
Y2MzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmgKQEAgLTE4MCw3ICsxODAsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKFZJREVP
KQogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbigpIG92ZXJyaWRlOwog
ICAgIHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50KiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6VmlkZW9G
dWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGV4aXRWaWRlb0Z1bGxz
Y3JlZW4oKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZv
clZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Kikgb3ZlcnJpZGU7CiAjZW5k
aWYKICAgICAKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0gYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXggNjBlN2ZjM2Zi
NzY1NWZhYWQyM2YxMjM3MTJlYTQxNzYyOGRkNjNjZS4uYzExYTY1NjBjMjBkZmMyNzQ5N2UxMWUw
ZDc0MjBiYTgwZTczYWQ4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQpAQCAtOTQxLDcgKzk0MSw3IEBAIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9F
bGVtZW50KiB2aWRlCiAgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKIH0KIAotdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4oKQordm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudCopCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogICAgIFttX3dl
YlZpZXcgX2V4aXRWaWRlb0Z1bGxzY3JlZW5dOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXggNDc3ODg3YTBlODE1OTEz
NTg2MDg0ZjIxMmM3YzdmNzJhOGY2YWE1Ni4uZjk4Y2VlYjZmYTFkOTYyODU0MzI1YzE1N2Q2Zjg4
ODMwMzA4Y2JiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC03NzEsOSArNzcxLDkgQEAgdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1l
bnQqIHZpZGUKICAgICBtX3dlYlZpZXctPmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVt
ZW50KHZpZGVvRWxlbWVudCk7CiB9CiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGl0VmlkZW9G
dWxsc2NyZWVuKCkKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbnQqIHZpZGVvRWxlbWVudCkKIHsKLSAgICBtX3dl
YlZpZXctPmV4aXRWaWRlb0Z1bGxzY3JlZW4oKTsKKyAgICBtX3dlYlZpZXctPmV4aXRWaWRlb0Z1
bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCogdmlkZW9FbGVtZW50KTsK
IH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5oCmluZGV4IDg2ODIxNDM4OGNlNjdhMDQ1MjQyMTIxNTA0MWM1NDg3NjE0
YjQyNzYuLjU1NjZlOGMwNGU3NmExOTYyY2M1NTM5YTM0MWM4NGZiNmE3YmNkYWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBA
IC0xNDcsNyArMTQ3LDcgQEAgcHVibGljOgogI2lmIEVOQUJMRShWSURFTykKICAgICB2aXJ0dWFs
IGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oKTsKICAgICB2aXJ0dWFsIHZvaWQgZW50ZXJW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCop
OwotICAgIHZpcnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgdmlydHVhbCB2
b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudCopOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxF
KExFR0FDWV9OT1RJRklDQVRJT05TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2Vi
Vmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAppbmRleCA2NjQxNTg1NzNk
NWVhMzNjYjA3MmU3MTUwYTE3ZjNkMzRiNDM2ODFhLi44ZjI0Yjk1Nzk1MjcyNzAwMzU5NWE0NmYx
MDY2MDJjYjc1MmNiNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcApAQCAtNjM4MCw3ICs2MzgwLDcg
QEAgdm9pZCBXZWJWaWV3OjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1M
VmlkZW9FbGVtZW50KiB2aWRlb0VsZW1lbnQKICNlbmRpZgogfQogCi12b2lkIFdlYlZpZXc6OmV4
aXRWaWRlb0Z1bGxzY3JlZW4oKQordm9pZCBXZWJWaWV3OjpleGl0VmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqKQogewogI2lmIEVOQUJMRShW
SURFTykgJiYgIVVTRShHU1RSRUFNRVIpICYmICFVU0UoTUVESUFfRk9VTkRBVElPTikKICAgICBp
ZiAoIW1fZnVsbFNjcmVlblZpZGVvQ29udHJvbGxlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvd2luL1dlYlZpZXcuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuaAppbmRleCBiNGY4
YjY3ZTJmZGE0MGQ4MGQ3N2JiYTNjYjY0N2IyMTg4ODZjOTllLi5hNmQ4YmY5NDVlNTcxNDBmZWY3
YjVjN2JjMmM0OGY0ZjZjMTY5NTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJW
aWV3LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5oCkBAIC05NDUsNyArOTQ1LDcg
QEAgcHVibGljOgogI2VuZGlmCiAKICAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqKTsKLSAgICB2b2lkIGV4aXRWaWRl
b0Z1bGxzY3JlZW4oKTsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCopOwogCiAgICAgdm9pZCBzZXRMYXN0Q3Vyc29y
KEhDVVJTT1IgY3Vyc29yKSB7IG1fbGFzdFNldEN1cnNvciA9IGN1cnNvcjsgfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKaW5kZXggYzdkMmQwOWY0YTQxNzM3OGRiMTQ2MjFlYWUwMjQ0OGFlNTc0
Nzc1ZS4uZjcwNTZjNWI2MTk2ZTAyNDJlNGUxZDRmMDQ5ZTI0MDJjOTMwNjMwYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcApAQCAtOTE3LDkgKzkxNyw5IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9F
bGVtCiAgICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCktPmVudGVyVmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCwgbW9kZSk7CiB9CiAKLXZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuKCkKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQqIHZpZGVvRWxlbWVudCkKIHsKLSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoKS0+ZXhpdFZpZGVvRnVsbHNjcmVlbigpOworICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVu
TWFuYWdlcigpLT5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVu
dCk7CiB9CiAjZW5kaWYKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCmluZGV4IGNlZjJjZWNjM2Y1
MGI0MDk0NzgwMWJlZWNmMTE3ODIzMWJhNzM2MDQuLjFiYmRiZmU0NDQ1ZTQ5N2JhOTE2MDBmOGE2
OGQ0OWUwNDE0YTkwMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMjUxLDcgKzI1MSw3IEBA
IHByaXZhdGU6CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1Zp
ZGVvRnVsbHNjcmVlbigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVs
bHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KiwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAg
dmlydHVhbCB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW4oKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFs
IHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlk
ZW9FbGVtZW50Kikgb3ZlcnJpZGU7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQ
SSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuaAppbmRleCBiMzM4Mjc2MWI5ZTc3ZWJhNDdkYzY2Yjk5MTE1YWFh
NmVhYzAyYWQ1Li5kMTI4ODZiZmI0OWJiMDY4Yzg2N2U3M2FiODUyZjBhM2Q3NWJhODYyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxs
c2NyZWVuTWFuYWdlci5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICAKICAgICBib29s
IHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkgY29uc3Q7CiAgICAgdm9pZCBlbnRlclZpZGVvRnVs
bHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KiwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZSk7Ci0gICAgdm9pZCBleGl0
VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqKTsKICAgICAKIHByb3RlY3RlZDoKICAg
ICBleHBsaWNpdCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKFBhc3NSZWZQdHI8V2ViUGFnZT4p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxs
c2NyZWVuTWFuYWdlci5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIubW0KaW5kZXggNWZhNzk4MjJkM2I1YzAzYjgyMWI4NWI1MDlkOTVk
MzI5NmQ0ZjYzOS4uOTFlNjU0NjJjYWU3NDRmZWMzMTQ3ZWJmZWMzMzQ5OTViOTk4NjEyMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
TWFuYWdlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1tCkBAIC0xMDcsNyArMTA3LDcgQEAgdm9pZCBXZWJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlk
ZW9FbGUKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXJQcm94eTo6U2V0dXBGdWxsc2NyZWVuV2l0aElEKG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+Y29u
dGV4dElEKCksIGNsaWVudFJlY3RGb3JFbGVtZW50KHZpZGVvRWxlbWVudCksIG1fcGFnZS0+ZGV2
aWNlU2NhbGVGYWN0b3IoKSwgbV9mdWxsc2NyZWVuTW9kZSwgYWxsb3dPcHRpbWl6ZWRGdWxsc2Ny
ZWVuKSwgbV9wYWdlLT5wYWdlSUQoKSk7CiB9CiAKLXZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFu
YWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudCopCiB7CiAgICAgUmVmUHRyPEhUTUxWaWRlb0VsZW1lbnQ+IHZpZGVvRWxlbWVudCA9
IG1fdmlkZW9FbGVtZW50LnJlbGVhc2UoKTsKICAgICBtX3RhcmdldElzRnVsbHNjcmVlbiA9IGZh
bHNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250740</attachid>
            <date>2015-04-14 14:26:50 -0700</date>
            <delta_ts>2015-04-14 16:39:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143674-20150414142554.patch</filename>
            <type>text/plain</type>
            <size>13180</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyNzk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmRjYTM3ZGU4ZmY3MDZk
ZGUxYjZmZGRmYTk5MjFiYzk3ZDhmOGRlYS4uYmIwYzhkMjg1MTIxNTNmMDY5OWUwMGUwYWY2MGI5
NjFiMjUyMGU3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE2IEBACiAyMDE1LTA0LTEzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4oKSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8g
YSBIVE1MVmlkZW9FbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQzNjc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6ZXhpdEZ1bGxzY3JlZW4pOiBleGl0VmlkZW9GdWxsc2NyZWVu
KCkgLT4gZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCguLi4pLgorICAgICAgICAq
IHBhZ2UvQ2hyb21lQ2xpZW50Lmg6CisKKzIwMTUtMDQtMTMgIEplciBOb2JsZSAgPGplci5ub2Js
ZUBhcHBsZS5jb20+CisKICAgICAgICAgW2lPU10gVHJlYXQgYSAnbm90IGZvdW5kJyBtZWRpYSBv
cHRpb24gaW5kZXggYXMgdGhlICdvZmYnIHRyYWNrLgogICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjcyCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCBmZTU1
MTQ1N2U2MTgyOGMyNGRkYzViMjEzYWNmYTdmYzljNjQwM2I1Li40OGE1MThhZmExM2UzOGJjMjY1
ZWM5NjhjN2YxZjAwZjU3NmRhZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTUtMDQtMTMgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAg
W0Z1bGxzY3JlZW5dIENocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpIHNob3VsZCB0
YWtlIGEgcG9pbnRlciB0byBhIEhUTUxWaWRlb0VsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDM2NzQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbToKKyAg
ICAgICAgKFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVu
dCk6IFJlbmFtZWQgZnJvbSBleGl0VmlkZW9GdWxsc2NyZWVuKCkuCisgICAgICAgIChXZWJDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4pOiBEZWxldGVkLgorCiAyMDE1LTA0LTEzICBC
cmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBTaGFyZSBzaGVldHMg
ZnJvbSBTaGFyZSBtZW51cyBhcHBlYXIgb3V0c2lkZSB0aGUgYnJvd3NlciB3aW5kb3cuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9D
aGFuZ2VMb2cKaW5kZXggOWJlNjhlYWEyNmU1OTk4NTI5MjY0MWE0OTc1NzExNDUxMzIzY2E2Yy4u
NGM3MjA0NmY2NGUzNzRiNTVhMGEzYmE5NWRiMTRmNzRiNjZjNWRkNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTA0LTEzICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBw
bGUuY29tPgorCisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1
bGxzY3JlZW4oKSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8gYSBIVE1MVmlkZW9FbGVtZW50Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjc0CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50Ojpl
eGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KTogUmVuYW1lZCBmcm9tIGV4aXRWaWRl
b0Z1bGxzY3JlZW4oKS4KKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNj
cmVlbik6IERlbGV0ZWQuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
Lmg6CisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3OjpleGl0VmlkZW9G
dWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KTogUmVuYW1lZCBmcm9tIGV4aXRWaWRlb0Z1bGxzY3Jl
ZW4oKS4KKyAgICAgICAgKFdlYlZpZXc6OmV4aXRWaWRlb0Z1bGxzY3JlZW4pOiBEZWxldGVkLgor
ICAgICAgICAqIFdlYlZpZXcuaDoKKwogMjAxNS0wNC0xMyAgQmV0aCBEYWtpbiAgPGJkYWtpbkBh
cHBsZS5jb20+CiAKICAgICAgICAgQWRkIGZvcmNlIHByb3BlcnR5IHRvIE1vdXNlRXZlbnRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKaW5kZXggZjA0NDkyYzUwNTJhZDk2Y2I4MGQ3YjEyNTdiNjVhNzc2M2U5YTJlZi4uYjJl
NDc3MTJjYjEzNmZlZDUzNTU0YTU0YTkwY2JjNGQwOWFmOTk2NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE5IEBACisyMDE1LTA0LTEzICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgor
CisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4o
KSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8gYSBIVE1MVmlkZW9FbGVtZW50LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjc0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9t
ZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCk6IFJlbmFtZWQgZnJv
bSBleGl0VmlkZW9GdWxsc2NyZWVuKCkuCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVu
dDo6ZXhpdFZpZGVvRnVsbHNjcmVlbik6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9pb3Mv
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCk6IFJl
bmFtZWQgZnJvbSBleGl0VmlkZW9GdWxsc2NyZWVuKCkuCisgICAgICAgIChXZWJLaXQ6OldlYlZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW4pOiBEZWxldGVkLgorCiAy
MDE1LTA0LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVH
UkVTU0lPTihyMTgyNjAzKTogW0dUS10gTW9yZSB0aGFuIDUwMCBjcmFzaGVzIG9uIHRoZSBsYXlv
dXQgdGVzdHMgd2l0aCB0aGUgZGVidWcgYnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcAppbmRleCA3NWIxNzNkNjZjNzljM2U0N2ZlNzAyZGU5ZDkwN2IwOGRhNGJm
ZWNiLi40OTVkYWViMWZhZDY1YWRkMzNmYjgwM2NhNGI2NWFkZWY5YzNiZmJiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTUwMDksNyArNTAwOSw3IEBAIHZv
aWQgSFRNTE1lZGlhRWxlbWVudDo6ZXhpdEZ1bGxzY3JlZW4oKQogICAgICAgICAgICAgcGF1c2VJ
bnRlcm5hbCgpOwogCiAgICAgICAgIGlmIChkb2N1bWVudCgpLnBhZ2UoKS0+Y2hyb21lKCkuY2xp
ZW50KCkuc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oKSkgewotICAgICAgICAgICAgZG9jdW1lbnQo
KS5wYWdlKCktPmNocm9tZSgpLmNsaWVudCgpLmV4aXRWaWRlb0Z1bGxzY3JlZW4oKTsKKyAgICAg
ICAgICAgIGRvY3VtZW50KCkucGFnZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5leGl0VmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KGRvd25jYXN0PEhUTUxWaWRlb0VsZW1lbnQ+KHRoaXMpKTsK
ICAgICAgICAgICAgIHNjaGVkdWxlRXZlbnQoZXZlbnROYW1lcygpLndlYmtpdGVuZGZ1bGxzY3Jl
ZW5FdmVudCk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0Nocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaApp
bmRleCAwNTE2ZGVhMzJkNjc0NjFkMjM1MTNmOGFmM2Y5YjY4MTA4YTU3NmY1Li5hOGQyOTY0YTcw
NmQzZGJlNjNhOGEwNmY0MjUxZmM1MmMwZGExYzMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0Nocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xp
ZW50LmgKQEAgLTMzMyw3ICszMzMsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKFZJREVPKQogICAg
IHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlk
ZW9FbGVtZW50KiwgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgeyB9CiAj
ZW5kaWYKLSAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbigpIHsgfQorICAgIHZp
cnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhU
TUxWaWRlb0VsZW1lbnQqKSB7IH0KICAgICB2aXJ0dWFsIGJvb2wgcmVxdWlyZXNGdWxsc2NyZWVu
Rm9yVmlkZW9QbGF5YmFjaygpIHsgcmV0dXJuIGZhbHNlOyB9IAogCiAjaWYgRU5BQkxFKEZVTExT
Q1JFRU5fQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAppbmRleCBhMWU0Yjg4YjMwMmEwYWU1MGMzNTA3YzZhM2RlNTg2NTY1NzYw
NDQ0Li5jMzlhZmY5MDQ3YzBhY2IxMDI1MWEzMThlYTY0NDg1ZTY3ZjBjYzM0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAt
MTgwLDcgKzE4MCw3IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoVklERU8pCiAgICAgdmlydHVhbCBi
b29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lk
IGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQqLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBv
dmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbigpIG92ZXJyaWRl
OworICAgIHZpcnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdl
YkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqKSBvdmVycmlkZTsKICNlbmRpZgogICAgIAogI2lmIEVO
QUJMRShGVUxMU0NSRUVOX0FQSSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQppbmRleCA2MGU3ZmMzZmI3NjU1ZmFhZDIzZjEyMzcx
MmVhNDE3NjI4ZGQ2M2NlLi5jMTFhNjU2MGMyMGRmYzI3NDk3ZTExZTBkNzQyMGJhODBlNzNhZDhi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lm1tCkBAIC05NDEsNyArOTQxLDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVy
VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbnQqIHZpZGUKICAg
ICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6
ZXhpdFZpZGVvRnVsbHNjcmVlbigpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVs
bHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KikKIHsKICAg
ICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiAgICAgW21fd2ViVmlldyBfZXhpdFZpZGVv
RnVsbHNjcmVlbl07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmNwcAppbmRleCAzNGQ4NjE2YTliNTkyYjY4OTNhYTdlOGNhYzNhMzlm
NGNlYjk0ODczLi4zMTJlYWYyMmEyNmRkZjk4NGE4NDNlZTQ0OTk2MGUzZjkzYjYwODZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAKQEAgLTc3MSw5ICs3NzEsOSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCogdmlkZQogICAgIG1f
d2ViVmlldy0+ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
KTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4oKQordm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRN
TFZpZGVvRWxlbWVudCogdmlkZW9FbGVtZW50KQogewotICAgIG1fd2ViVmlldy0+ZXhpdFZpZGVv
RnVsbHNjcmVlbigpOworICAgIG1fd2ViVmlldy0+ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCh2aWRlb0VsZW1lbnQpOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktp
dC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggODY4MjE0Mzg4Y2U2
N2EwNDUyNDIxMjE1MDQxYzU0ODc2MTRiNDI3Ni4uNTU2NmU4YzA0ZTc2YTE5NjJjYzU1MzlhMzQx
Yzg0ZmI2YTdiY2RhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgKQEAgLTE0Nyw3ICsxNDcsNyBAQCBwdWJsaWM6CiAjaWYgRU5B
QkxFKFZJREVPKQogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbigpOwog
ICAgIHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGV4aXRWaWRlb0Z1bGxz
Y3JlZW4oKTsKKyAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxl
bWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Kik7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShO
T1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZp
ZXcuY3BwCmluZGV4IDY2NDE1ODU3M2Q1ZWEzM2NiMDcyZTcxNTBhMTdmM2QzNGI0MzY4MWEuLjhm
MjRiOTU3OTUyNzI3MDAzNTk1YTQ2ZjEwNjYwMmNiNzUyY2I2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcu
Y3BwCkBAIC02MzgwLDcgKzYzODAsNyBAQCB2b2lkIFdlYlZpZXc6OmVudGVyVmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbnQqIHZpZGVvRWxlbWVudAogI2VuZGlm
CiB9CiAKLXZvaWQgV2ViVmlldzo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpCit2b2lkIFdlYlZpZXc6
OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxl
bWVudCopCiB7CiAjaWYgRU5BQkxFKFZJREVPKSAmJiAhVVNFKEdTVFJFQU1FUikgJiYgIVVTRShN
RURJQV9GT1VOREFUSU9OKQogICAgIGlmICghbV9mdWxsU2NyZWVuVmlkZW9Db250cm9sbGVyKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5oIGIvU291cmNlL1dlYktpdC93
aW4vV2ViVmlldy5oCmluZGV4IGI0ZjhiNjdlMmZkYTQwZDgwZDc3YmJhM2NiNjQ3YjIxODg4NmM5
OWUuLmE2ZDhiZjk0NWU1NzE0MGZlZjdiNWM3YmMyYzQ4ZjRmNmMxNjk1MDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJW
aWV3LmgKQEAgLTk0NSw3ICs5NDUsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIHZvaWQgZW50
ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVu
dCopOwotICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbigpOworICAgIHZvaWQgZXhpdFZpZGVv
RnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Kik7CiAK
ICAgICB2b2lkIHNldExhc3RDdXJzb3IoSENVUlNPUiBjdXJzb3IpIHsgbV9sYXN0U2V0Q3Vyc29y
ID0gY3Vyc29yOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAppbmRleCBjN2QyZDA5ZjRhNDE3
Mzc4ZGIxNDYyMWVhZTAyNDQ4YWU1NzQ3NzVlLi5mNzA1NmM1YjYxOTZlMDI0MmU0ZTFkNGYwNDll
MjQwMmM5MzA2MzBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC05MTcsOSArOTE3LDkg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVt
ZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW0KICAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIoKS0+ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
LCBtb2RlKTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4o
KQordm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCogdmlkZW9FbGVtZW50KQogewotICAgIG1fcGFn
ZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLT5leGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAg
bV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCktPmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKIH0KICNlbmRpZgogICAgIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmgKaW5kZXggY2VmMmNlY2MzZjUwYjQwOTQ3ODAxYmVlY2YxMTc4MjMxYmE3MzYwNC4uMWJi
ZGJmZTQ0NDVlNDk3YmE5MTYwMGY4YTY4ZDQ5ZTA0MTRhOTAyMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oCkBAIC0yNTEsNyArMjUxLDcgQEAgcHJpdmF0ZToKICNpZiBQTEFURk9STShJT1MpCiAgICAg
dmlydHVhbCBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkgb3ZlcnJpZGU7CiAgICAgdmly
dHVhbCB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhU
TUxWaWRlb0VsZW1lbnQqLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbigp
IG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqKSBvdmVycmlkZTsKICNlbmRpZgogCiAj
aWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCmluZGV4IGIzMzgyNzYx
YjllNzdlYmE0N2RjNjZiOTkxMTVhYWE2ZWFjMDJhZDUuLmQxMjg4NmJmYjQ5YmIwNjhjODY3ZTcz
YWI4NTJmMGEzZDc1YmE4NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
aW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKQEAgLTYxLDcgKzYxLDcgQEAg
cHVibGljOgogICAgIAogICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oKSBjb25zdDsK
ICAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhU
TUxWaWRlb0VsZW1lbnQqLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlKTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW4oKTsKKyAgICB2b2lkIGV4aXRW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCop
OwogICAgIAogcHJvdGVjdGVkOgogICAgIGV4cGxpY2l0IFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoUGFzc1JlZlB0cjxXZWJQYWdlPik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbQppbmRleCA1ZmE3OTgy
MmQzYjVjMDNiODIxYjg1YjUwOWQ5NWQzMjk2ZDRmNjM5Li40NzJmYmYxYmM4YTRiODg3MzNjMWUz
NzU2MDMzYWI3ZGNmZDg4ZTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTEwNyw3ICsxMDcs
NyBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVu
Rm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZQogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpTZXR1cEZ1bGxzY3JlZW5XaXRoSUQobV9s
YXllckhvc3RpbmdDb250ZXh0LT5jb250ZXh0SUQoKSwgY2xpZW50UmVjdEZvckVsZW1lbnQodmlk
ZW9FbGVtZW50KSwgbV9wYWdlLT5kZXZpY2VTY2FsZUZhY3RvcigpLCBtX2Z1bGxzY3JlZW5Nb2Rl
LCBhbGxvd09wdGltaXplZEZ1bGxzY3JlZW4pLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KIAotdm9p
ZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuKCkKK3ZvaWQg
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxl
bWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KikKIHsKICAgICBSZWZQdHI8SFRNTFZpZGVv
RWxlbWVudD4gdmlkZW9FbGVtZW50ID0gbV92aWRlb0VsZW1lbnQucmVsZWFzZSgpOwogICAgIG1f
dGFyZ2V0SXNGdWxsc2NyZWVuID0gZmFsc2U7CkBAIC0yMTksNyArMjE5LDcgQEAgdm9pZCBXZWJW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpkaWRFbnRlckZ1bGxzY3JlZW4oKQogICAgIC8vIGV4aXQg
ZnVsbHNjcmVlbiBub3cgaWYgaXQgd2FzIHByZXZpb3VzbHkgcmVxdWVzdGVkIGR1cmluZyBhbiBh
bmltYXRpb24uCiAgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRl
b0VsZW1lbnQ+IHByb3RlY3QodGhpcyk7CiAgICAgV2ViVGhyZWFkUnVuKF4gewotICAgICAgICBl
eGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgICAgIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQobV92aWRlb0VsZW1lbnQuZ2V0KCkpOwogICAgICAgICBwcm90ZWN0LmNsZWFyKCk7
CiAgICAgfSk7CiB9Cg==
</data>
<flag name="review"
          id="275536"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250830</attachid>
            <date>2015-04-15 12:09:34 -0700</date>
            <delta_ts>2015-04-15 12:09:34 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-143674-20150415120837.patch</filename>
            <type>text/plain</type>
            <size>19255</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyNzk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmRjYTM3ZGU4ZmY3MDZk
ZGUxYjZmZGRmYTk5MjFiYzk3ZDhmOGRlYS4uNDk1NWRlZDA0M2YyZGM5NGVmOWMwNDhiOTAyMTM0
M2U3MTJiMmU1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE3IEBACiAyMDE1LTA0LTEzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJv
bWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW4oKSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8g
YSBIVE1MVmlkZW9FbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQzNjc0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisK
KyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudDo6ZW50ZXJGdWxsc2NyZWVuKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmV4aXRGdWxsc2NyZWVuKTogZXhpdFZp
ZGVvRnVsbHNjcmVlbigpIC0+IGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoLi4u
KS4KKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOgorCisyMDE1LTA0LTEzICBKZXIgTm9i
bGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCiAgICAgICAgIFtpT1NdIFRyZWF0IGEgJ25vdCBm
b3VuZCcgbWVkaWEgb3B0aW9uIGluZGV4IGFzIHRoZSAnb2ZmJyB0cmFjay4KICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzY3MgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKaW5kZXggZmU1NTE0NTdlNjE4MjhjMjRkZGM1YjIxM2FjZmE3ZmM5YzY0MDNiNS4uZWZhNTlm
NmJkMTNlMTM2ZDcxMjU5MmE1YzkxMmU1MGExYTQ0OGYwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDE1LTA0LTEzICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgorCisgICAgICAgIFtGdWxsc2NyZWVuXSBDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3Jl
ZW4oKSBzaG91bGQgdGFrZSBhIHBvaW50ZXIgdG8gYSBIVE1MVmlkZW9FbGVtZW50LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjc0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQubW06CisgICAgICAgIChXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KTogVGFrZXMgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDaHJvbWVDbGll
bnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20gZXhp
dFZpZGVvRnVsbHNjcmVlbigpLgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50OjpleGl0VmlkZW9G
dWxsc2NyZWVuKTogRGVsZXRlZC4KKwogMjAxNS0wNC0xMyAgQnJhZHkgRWlkc29uICA8YmVpZHNv
bkBhcHBsZS5jb20+CiAKICAgICAgICAgU2hhcmUgc2hlZXRzIGZyb20gU2hhcmUgbWVudXMgYXBw
ZWFyIG91dHNpZGUgdGhlIGJyb3dzZXIgd2luZG93LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IDliZTY4
ZWFhMjZlNTk5ODUyOTI2NDFhNDk3NTcxMTQ1MTMyM2NhNmMuLjY4NWZmYmZkNzRkMDY1MGNmMmUz
MDgxODE1MTQ4YzgzZWQ2MTk2OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAor
MjAxNS0wNC0xMyAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKworICAgICAgICBb
RnVsbHNjcmVlbl0gQ2hyb21lQ2xpZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuKCkgc2hvdWxkIHRh
a2UgYSBwb2ludGVyIHRvIGEgSFRNTFZpZGVvRWxlbWVudC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzY3NAorCisgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmNwcDoKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQpOiBUYWtlcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNocm9tZUNsaWVu
dDo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCk6IFJlbmFtZWQgZnJvbSBleGl0
VmlkZW9GdWxsc2NyZWVuKCkuCisgICAgICAgIChXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1
bGxzY3JlZW4pOiBEZWxldGVkLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5oOgorICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmlldzo6ZW50ZXJW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBUYWtlcyBhIHJlZmVyZW5jZS4KKyAgICAg
ICAgKFdlYlZpZXc6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVk
IGZyb20gZXhpdFZpZGVvRnVsbHNjcmVlbigpLgorICAgICAgICAoV2ViVmlldzo6ZXhpdFZpZGVv
RnVsbHNjcmVlbik6IERlbGV0ZWQuCisgICAgICAgICogV2ViVmlldy5oOgorCiAyMDE1LTA0LTEz
ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgZm9yY2UgcHJv
cGVydHkgdG8gTW91c2VFdmVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBmMDQ0OTJjNTA1MmFkOTZjYjgwZDdi
MTI1N2I2NWE3NzYzZTlhMmVmLi5hNGFhNjc5MDYxYmE0OGJiY2NmNTA2N2NmMzkxNTg5NWUxYTFl
M2ZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTUtMDQtMTMgIEplciBOb2JsZSAg
PGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAgW0Z1bGxzY3JlZW5dIENocm9tZUNsaWVu
dDo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpIHNob3VsZCB0YWtlIGEgcG9pbnRlciB0byBhIEhUTUxW
aWRlb0VsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDM2NzQKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCk6IFRha2VzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVD
bGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20g
ZXhpdFZpZGVvRnVsbHNjcmVlbigpLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6
OmV4aXRWaWRlb0Z1bGxzY3JlZW4pOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9pb3Mv
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvaW9zL1dl
YlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW06CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KTogRGl0
dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOiBSZW5hbWVkIGZyb20gZXhpdFZpZGVvRnVsbHNj
cmVlbigpLgorICAgICAgICAoV2ViS2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpkaWRF
bnRlckZ1bGxzY3JlZW4pOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpkaWRDbGVhbnVwRnVsbHNjcmVlbik6IERpdHRvLgorICAg
ICAgICAoV2ViS2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2Ny
ZWVuKTogRGVsZXRlZC4KKwogMjAxNS0wNC0xNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjE4MjYwMyk6IFtHVEtdIE1vcmUgdGhhbiA1MDAg
Y3Jhc2hlcyBvbiB0aGUgbGF5b3V0IHRlc3RzIHdpdGggdGhlIGRlYnVnIGJ1aWxkLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggNzViMTczZDY2Yzc5YzNlNDdm
ZTcwMmRlOWQ5MDdiMDhkYTRiZmVjYi4uMjU0MmY1MTI5MjJjMWE0YjVjMjVhYTk0MDg0N2FhYWZh
OWEzODRlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC00
OTc4LDcgKzQ5NzgsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmVudGVyRnVsbHNjcmVlbihW
aWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiAgICAgaWYgKGRvY3VtZW50KCkucGFnZSgpICYmIGlz
PEhUTUxWaWRlb0VsZW1lbnQ+KCp0aGlzKSkgewogICAgICAgICBIVE1MVmlkZW9FbGVtZW50JiBh
c1ZpZGVvID0gZG93bmNhc3Q8SFRNTFZpZGVvRWxlbWVudD4oKnRoaXMpOwogICAgICAgICBpZiAo
ZG9jdW1lbnQoKS5wYWdlKCktPmNocm9tZSgpLmNsaWVudCgpLnN1cHBvcnRzVmlkZW9GdWxsc2Ny
ZWVuKCkpIHsKLSAgICAgICAgICAgIGRvY3VtZW50KCkucGFnZSgpLT5jaHJvbWUoKS5jbGllbnQo
KS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCgmYXNWaWRlbywgbV92aWRlb0Z1
bGxzY3JlZW5Nb2RlKTsKKyAgICAgICAgICAgIGRvY3VtZW50KCkucGFnZSgpLT5jaHJvbWUoKS5j
bGllbnQoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChhc1ZpZGVvLCBtX3Zp
ZGVvRnVsbHNjcmVlbk1vZGUpOwogICAgICAgICAgICAgc2NoZWR1bGVFdmVudChldmVudE5hbWVz
KCkud2Via2l0YmVnaW5mdWxsc2NyZWVuRXZlbnQpOwogICAgICAgICB9CiAgICAgfQpAQCAtNTAw
OSw3ICs1MDA5LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpleGl0RnVsbHNjcmVlbigpCiAg
ICAgICAgICAgICBwYXVzZUludGVybmFsKCk7CiAKICAgICAgICAgaWYgKGRvY3VtZW50KCkucGFn
ZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbigpKSB7Ci0gICAg
ICAgICAgICBkb2N1bWVudCgpLnBhZ2UoKS0+Y2hyb21lKCkuY2xpZW50KCkuZXhpdFZpZGVvRnVs
bHNjcmVlbigpOworICAgICAgICAgICAgZG9jdW1lbnQoKS5wYWdlKCktPmNocm9tZSgpLmNsaWVu
dCgpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoZG93bmNhc3Q8SFRNTFZpZGVv
RWxlbWVudD4oKnRoaXMpKTsKICAgICAgICAgICAgIHNjaGVkdWxlRXZlbnQoZXZlbnROYW1lcygp
LndlYmtpdGVuZGZ1bGxzY3JlZW5FdmVudCk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9DaHJvbWVDbGllbnQuaAppbmRleCAwNTE2ZGVhMzJkNjc0NjFkMjM1MTNmOGFmM2Y5YjY4MTA4
YTU3NmY1Li43Y2VlMzk3MDM0YWUyNzU0MjA2YzBkMzFkMzdkNTBhMDY0YzI3ZmY2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTMzMSw5ICszMzEsOSBAQCBwdWJsaWM6CiAKICAg
ICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oKSB7IHJldHVybiBmYWxzZTsg
fQogI2lmIEVOQUJMRShWSURFTykKLSAgICB2aXJ0dWFsIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCosIEhUTUxNZWRpYUVsZW1lbnQ6OlZp
ZGVvRnVsbHNjcmVlbk1vZGUpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW50JiwgSFRNTE1lZGlhRWxlbWVudDo6
VmlkZW9GdWxsc2NyZWVuTW9kZSkgeyB9CiAjZW5kaWYKLSAgICB2aXJ0dWFsIHZvaWQgZXhpdFZp
ZGVvRnVsbHNjcmVlbigpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVu
Rm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSB7IH0KICAgICB2aXJ0
dWFsIGJvb2wgcmVxdWlyZXNGdWxsc2NyZWVuRm9yVmlkZW9QbGF5YmFjaygpIHsgcmV0dXJuIGZh
bHNlOyB9IAogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCBhMWU0Yjg4YjMw
MmEwYWU1MGMzNTA3YzZhM2RlNTg2NTY1NzYwNDQ0Li4zYjkzMjZjNzhhNjkyMzJkNjRlYzYzYzk0
M2IzYzAxMjE1MmZhYzdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMTc5LDggKzE3OSw4IEBAIHB1YmxpYzoKIAogI2lm
IEVOQUJMRShWSURFTykKICAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4o
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCosIFdlYkNvcmU6OkhUTUxNZWRpYUVs
ZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBl
eGl0VmlkZW9GdWxsc2NyZWVuKCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsK
KyAgICB2aXJ0dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7CiAjZW5kaWYKICAgICAKICNpZiBFTkFC
TEUoRlVMTFNDUkVFTl9BUEkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXggNjBlN2ZjM2ZiNzY1NWZhYWQyM2YxMjM3MTJl
YTQxNzYyOGRkNjNjZS4uZTMxY2RhOWI4NjM0ODc2MDVkNDkzOWFiYWE0ZDcwMTdmYzRjY2M0YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5tbQpAQCAtOTMzLDE1ICs5MzMsMTUgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN1cHBv
cnRzVmlkZW9GdWxsc2NyZWVuKCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0Vs
ZW1lbnQqIHZpZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9k
ZSBtb2RlKQordm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVu
dDo6VmlkZW9GdWxsc2NyZWVuTW9kZSBtb2RlKQogewogICAgIEFTU0VSVChtb2RlICE9IEhUTUxN
ZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKICAgICBCRUdJTl9CTE9DS19P
QkpDX0VYQ0VQVElPTlM7Ci0gICAgW21fd2ViVmlldyBfZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQ6dmlkZW9FbGVtZW50IG1vZGU6bW9kZV07CisgICAgW21fd2ViVmlldyBfZW50
ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQ6JnZpZGVvRWxlbWVudCBtb2RlOm1vZGVd
OwogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiB9CiAKLXZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuKCkKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGl0Vmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKQog
ewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKICAgICBbbV93ZWJWaWV3IF9leGl0
VmlkZW9GdWxsc2NyZWVuXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDM0ZDg2MTZhOWI1OTJiNjg5M2FhN2U4Y2Fj
M2EzOWY0Y2ViOTQ4NzMuLmYwMTQ3NmU2OWRhYTBmNDVlODU0ZjhkZTkxODEyNjc4ZGIwMjNmMzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcApAQCAtNzY2LDE0ICs3NjYsMTQgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN1
cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRl
b0VsZW1lbnQqIHZpZGVvRWxlbWVudCkKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbnRlclZpZGVv
RnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQp
CiB7CiAgICAgbV93ZWJWaWV3LT5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCh2
aWRlb0VsZW1lbnQpOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNj
cmVlbigpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudChIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQpCiB7Ci0gICAgbV93ZWJWaWV3
LT5leGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgbV93ZWJWaWV3LT5leGl0VmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA4
NjgyMTQzODhjZTY3YTA0NTI0MjEyMTUwNDFjNTQ4NzYxNGI0Mjc2Li5hY2VmNTBkNDI5YjBlYmQz
NzgwMWU1ZGM5N2E2NDM5MDA3MTU5M2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMTQ2LDggKzE0Niw4IEBAIHB1Ymxp
YzoKIAogI2lmIEVOQUJMRShWSURFTykKICAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNWaWRlb0Z1
bGxzY3JlZW4oKTsKLSAgICB2aXJ0dWFsIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCopOwotICAgIHZpcnR1YWwgdm9pZCBl
eGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgdmlydHVhbCB2b2lkIGVudGVyVmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKTsKKyAgICB2aXJ0
dWFsIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50Jik7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBF
TkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCmluZGV4IDY2NDE1
ODU3M2Q1ZWEzM2NiMDcyZTcxNTBhMTdmM2QzNGI0MzY4MWEuLjdkYWNiNDcxYTgxNDdmMzI2Zjk0
ZTlhYjQyZmJkMmRkZjkyMTI4ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZp
ZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCkBAIC02MzU2LDE0ICs2
MzU2LDE0IEBAIEhSRVNVTFQgV2ViVmlldzo6c2V0Q2FuU3RhcnRQbHVnaW5zKEJPT0wgY2FuU3Rh
cnRQbHVnaW5zKQogICAgIHJldHVybiBTX09LOwogfQogCi12b2lkIFdlYlZpZXc6OmVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1lbnQqIHZpZGVvRWxlbWVu
dCkKK3ZvaWQgV2ViVmlldzo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRN
TFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQogewogI2lmIEVOQUJMRShWSURFTykgJiYgIVVT
RShHU1RSRUFNRVIpICYmICFVU0UoTUVESUFfRk9VTkRBVElPTikKICAgICBpZiAobV9mdWxsU2Ny
ZWVuVmlkZW9Db250cm9sbGVyKSB7Ci0gICAgICAgIGlmIChtX2Z1bGxTY3JlZW5WaWRlb0NvbnRy
b2xsZXItPnZpZGVvRWxlbWVudCgpID09IHZpZGVvRWxlbWVudCkgeworICAgICAgICBpZiAobV9m
dWxsU2NyZWVuVmlkZW9Db250cm9sbGVyLT52aWRlb0VsZW1lbnQoKSA9PSAmdmlkZW9FbGVtZW50
KSB7CiAgICAgICAgICAgICAvLyBUaGUgYmFja2VuZCBtYXkganVzdCB3YXJuIHVzIHRoYXQgdGhl
IHVuZGVybGF5aW5nIHBsYWZ0b3JtTW92aWUoKQogICAgICAgICAgICAgLy8gaGFzIGNoYW5nZWQu
IEp1c3QgZm9yY2UgYW4gdXBkYXRlLgotICAgICAgICAgICAgbV9mdWxsU2NyZWVuVmlkZW9Db250
cm9sbGVyLT5zZXRWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICAgICAgICAgIG1fZnVs
bFNjcmVlblZpZGVvQ29udHJvbGxlci0+c2V0VmlkZW9FbGVtZW50KCZ2aWRlb0VsZW1lbnQpOwog
ICAgICAgICAgICAgcmV0dXJuOyAvLyBObyBtb3JlIHRvIGRvLgogICAgICAgICB9CiAKQEAgLTYz
NzUsMTIgKzYzNzUsMTIgQEAgdm9pZCBXZWJWaWV3OjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZp
ZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW50KiB2aWRlb0VsZW1lbnQKICAgICB9CiAKICAgICBt
X2Z1bGxTY3JlZW5WaWRlb0NvbnRyb2xsZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPEZ1bGxzY3JlZW5W
aWRlb0NvbnRyb2xsZXI+KCk7Ci0gICAgbV9mdWxsU2NyZWVuVmlkZW9Db250cm9sbGVyLT5zZXRW
aWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX2Z1bGxTY3JlZW5WaWRlb0NvbnRyb2xs
ZXItPnNldFZpZGVvRWxlbWVudCgmdmlkZW9FbGVtZW50KTsKICAgICBtX2Z1bGxTY3JlZW5WaWRl
b0NvbnRyb2xsZXItPmVudGVyRnVsbHNjcmVlbigpOwogI2VuZGlmCiB9CiAKLXZvaWQgV2ViVmll
dzo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpCit2b2lkIFdlYlZpZXc6OmV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpCiB7CiAjaWYgRU5B
QkxFKFZJREVPKSAmJiAhVVNFKEdTVFJFQU1FUikgJiYgIVVTRShNRURJQV9GT1VOREFUSU9OKQog
ICAgIGlmICghbV9mdWxsU2NyZWVuVmlkZW9Db250cm9sbGVyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC93aW4vV2ViVmlldy5oIGIvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5oCmluZGV4
IGI0ZjhiNjdlMmZkYTQwZDgwZDc3YmJhM2NiNjQ3YjIxODg4NmM5OWUuLmU1Y2ViMmYyYmNjZjVk
MTliYmIyN2FjMWJjNGNjNDU1MWZkN2RmNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYlZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmgKQEAgLTk0NCw4ICs5
NDQsOCBAQCBwdWJsaWM6CiAgICAgV2ViQ29yZTo6R3JhcGhpY3NEZXZpY2VBZGFwdGVyKiBncmFw
aGljc0RldmljZUFkYXB0ZXIoKSBjb25zdDsKICNlbmRpZgogCi0gICAgdm9pZCBlbnRlclZpZGVv
RnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Kik7Ci0g
ICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuKCk7CisgICAgdm9pZCBlbnRlclZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Jik7CisgICAgdm9p
ZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQmKTsKIAogICAgIHZvaWQgc2V0TGFzdEN1cnNvcihIQ1VSU09SIGN1cnNvcikgeyBtX2xh
c3RTZXRDdXJzb3IgPSBjdXJzb3I7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGM3
ZDJkMDlmNGE0MTczNzhkYjE0NjIxZWFlMDI0NDhhZTU3NDc3NWUuLmNiMWUxNDhhN2M2ZDFjNjQ3
MTJiODFmYzA5MTMzYWE4NDMzODE2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTkx
MSwxNSArOTExLDE1IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c1ZpZGVvRnVsbHNj
cmVlbigpCiAgICAgcmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLT5zdXBw
b3J0c1ZpZGVvRnVsbHNjcmVlbigpOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCog
dmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5N
b2RlIG1vZGUpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7CiAgICAg
QVNTRVJUKG1vZGUgIT0gSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZU5vbmUp
OwogICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLT5lbnRlclZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOwogfQogCi12b2lkIFdlYkNo
cm9tZUNsaWVudDo6ZXhpdFZpZGVvRnVsbHNjcmVlbigpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6
ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50JiB2aWRlb0VsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
KCktPmV4aXRWaWRlb0Z1bGxzY3JlZW4oKTsKKyAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIoKS0+ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCh2aWRlb0VsZW1lbnQp
OwogfQogI2VuZGlmCiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCBjZWYyY2VjYzNmNTBi
NDA5NDc4MDFiZWVjZjExNzgyMzFiYTczNjA0Li4xOTJjZGZlMzFiYTc4NDIwMDNlMWYzMDdlYTIx
YWIwOGQ5YjM1MzI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKQEAgLTI1MCw4ICsyNTAsOCBAQCBw
cml2YXRlOgogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1Zp
ZGVvRnVsbHNjcmVlbigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBlbnRlclZpZGVvRnVs
bHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50KiwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAg
dmlydHVhbCB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW4oKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFs
IHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZp
ZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1v
ZGUpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBvdmVycmlkZTsKICNlbmRpZgog
CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCmluZGV4IGIzMzgy
NzYxYjllNzdlYmE0N2RjNjZiOTkxMTVhYWE2ZWFjMDJhZDUuLmQxM2U2MjJiYzI3YTQ5Mjc3YzY5
MTMzZDFmM2IwZDQzMTFiYmFkNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKQEAgLTYwLDggKzYwLDgg
QEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwg
SVBDOjpNZXNzYWdlRGVjb2RlciYpIG92ZXJyaWRlOwogICAgIAogICAgIGJvb2wgc3VwcG9ydHNW
aWRlb0Z1bGxzY3JlZW4oKSBjb25zdDsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqLCBXZWJDb3JlOjpIVE1MTWVk
aWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxz
Y3JlZW4oKTsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdl
YkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpWaWRl
b0Z1bGxzY3JlZW5Nb2RlKTsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpOwogICAgIAogcHJvdGVjdGVkOgogICAg
IGV4cGxpY2l0IFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoUGFzc1JlZlB0cjxXZWJQYWdlPik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlci5tbQppbmRleCA1ZmE3OTgyMmQzYjVjMDNiODIxYjg1YjUwOWQ5NWQz
Mjk2ZDRmNjM5Li40NWEzZTI5ODIwZWIyZmMyNzU1Mzc1ZDJmNDEwOTIwMjZiYmE4N2RhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXIubW0KQEAgLTg2LDExICs4NiwxMSBAQCBib29sIFdlYlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXI6OnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKCkgY29uc3QKICAgICByZXR1cm4g
U2V0dGluZ3M6OmF2S2l0RW5hYmxlZCgpOwogfQogCi12b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRlb0VsZW1l
bnQqIHZpZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZSBt
b2RlKQordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVl
bkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIEhUTUxNZWRp
YUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAh
PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlTm9uZSk7CiAKLSAgICBtX3Zp
ZGVvRWxlbWVudCA9IHZpZGVvRWxlbWVudDsKKyAgICBtX3ZpZGVvRWxlbWVudCA9ICZ2aWRlb0Vs
ZW1lbnQ7CiAKICAgICBtX3RhcmdldElzRnVsbHNjcmVlbiA9IHRydWU7CiAgICAgbV9mdWxsc2Ny
ZWVuTW9kZSA9IG1vZGU7CkBAIC05OSwxNSArOTksMTUgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9F
bGUKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9pc0FuaW1hdGluZyA9IHRydWU7Ci0gICAgc2V0
VmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CisgICAgc2V0VmlkZW9FbGVtZW50KCZ2aWRlb0Vs
ZW1lbnQpOwogCiAgICAgbV9sYXllckhvc3RpbmdDb250ZXh0ID0gTGF5ZXJIb3N0aW5nQ29udGV4
dDo6Y3JlYXRlRm9yRXh0ZXJuYWxIb3N0aW5nUHJvY2VzcygpOwogICAgIGJvb2wgYWxsb3dPcHRp
bWl6ZWRGdWxsc2NyZWVuID0gbV92aWRlb0VsZW1lbnQtPm1lZGlhU2Vzc2lvbigpLmFsbG93c0Fs
dGVybmF0ZUZ1bGxzY3JlZW4oKm1fdmlkZW9FbGVtZW50LmdldCgpKTsKICAgICAKLSAgICBtX3Bh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6U2V0dXBG
dWxsc2NyZWVuV2l0aElEKG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+Y29udGV4dElEKCksIGNsaWVu
dFJlY3RGb3JFbGVtZW50KHZpZGVvRWxlbWVudCksIG1fcGFnZS0+ZGV2aWNlU2NhbGVGYWN0b3Io
KSwgbV9mdWxsc2NyZWVuTW9kZSwgYWxsb3dPcHRpbWl6ZWRGdWxsc2NyZWVuKSwgbV9wYWdlLT5w
YWdlSUQoKSk7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHk6OlNldHVwRnVsbHNjcmVlbldpdGhJRChtX2xheWVySG9zdGluZ0NvbnRleHQt
PmNvbnRleHRJRCgpLCBjbGllbnRSZWN0Rm9yRWxlbWVudCgmdmlkZW9FbGVtZW50KSwgbV9wYWdl
LT5kZXZpY2VTY2FsZUZhY3RvcigpLCBtX2Z1bGxzY3JlZW5Nb2RlLCBhbGxvd09wdGltaXplZEZ1
bGxzY3JlZW4pLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KIAotdm9pZCBXZWJWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuKCkKK3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVu
TWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50JikKIHsKICAgICBSZWZQdHI8SFRNTFZpZGVvRWxlbWVudD4gdmlkZW9FbGVt
ZW50ID0gbV92aWRlb0VsZW1lbnQucmVsZWFzZSgpOwogICAgIG1fdGFyZ2V0SXNGdWxsc2NyZWVu
ID0gZmFsc2U7CkBAIC0yMTksNyArMjE5LDcgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyOjpkaWRFbnRlckZ1bGxzY3JlZW4oKQogICAgIC8vIGV4aXQgZnVsbHNjcmVlbiBub3cgaWYg
aXQgd2FzIHByZXZpb3VzbHkgcmVxdWVzdGVkIGR1cmluZyBhbiBhbmltYXRpb24uCiAgICAgX19i
bG9jayBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ+IHByb3RlY3Qo
dGhpcyk7CiAgICAgV2ViVGhyZWFkUnVuKF4gewotICAgICAgICBleGl0VmlkZW9GdWxsc2NyZWVu
KCk7CisgICAgICAgIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoKm1fdmlkZW9F
bGVtZW50KTsKICAgICAgICAgcHJvdGVjdC5jbGVhcigpOwogICAgIH0pOwogfQpAQCAtMjUzLDcg
KzI1Myw3IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZGlkQ2xlYW51cEZ1bGxz
Y3JlZW4oKQogICAgIC8vIGVudGVyIGZ1bGxzY3JlZW4gbm93IGlmIGl0IHdhcyBwcmV2aW91c2x5
IHJlcXVlc3RlZCBkdXJpbmcgYW4gYW5pbWF0aW9uLgogICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50PiBwcm90ZWN0KHRoaXMpOwogICAgIFdlYlRo
cmVhZFJ1biheIHsKLSAgICAgICAgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQo
bV92aWRlb0VsZW1lbnQuZ2V0KCksIG1fZnVsbHNjcmVlbk1vZGUpOworICAgICAgICBlbnRlclZp
ZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCgqbV92aWRlb0VsZW1lbnQsIG1fZnVsbHNjcmVl
bk1vZGUpOwogICAgICAgICBwcm90ZWN0LmNsZWFyKCk7CiAgICAgfSk7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>