<?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>64742</bug_id>
          
          <creation_ts>2011-07-18 12:11:37 -0700</creation_ts>
          <short_desc>Expose WebPreferences for media playback requiring user gestures and inline playback</short_desc>
          <delta_ts>2011-07-18 19:22:36 -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>WebKit Misc.</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>438623</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 12:11:37 -0700</bug_when>
    <thetext>Expose a WebPreference and Setting for two media playback cases:

- media needing a user gesture for playback (this is already tested in HTMLMediaElement, but there is no way to set it)
- media allowing inline playback (some ports restrict playback to full screen only)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438638</commentid>
    <comment_count>1</comment_count>
      <attachid>101190</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 12:34:19 -0700</bug_when>
    <thetext>Created attachment 101190
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438640</commentid>
    <comment_count>2</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 12:37:25 -0700</bug_when>
    <thetext>Typo in ChangeLog already fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438644</commentid>
    <comment_count>3</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 12:43:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/9794233&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438659</commentid>
    <comment_count>4</comment_count>
      <attachid>101190</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-18 13:19:53 -0700</bug_when>
    <thetext>Comment on attachment 101190
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Media playback already tested for if it should require user gestures, but

&quot; for if it should require&quot; is awkward.

&gt; Source/WebCore/html/HTMLMediaElement.cpp:189
&gt; +        m_restrictions |= RequireUserGestureForRateChangeRestriction;

The &quot;Restriction&quot; suffix makes RequireUserGestureForRateChangeRestriction confusing to read. It could be removed.

&gt; Source/WebKit/win/WebPreferences.h:445
&gt; +    virtual HRESULT STDMETHODCALLTYPE mediaPlaybackRequiresUserGesture(BOOL*);
&gt; +    virtual HRESULT STDMETHODCALLTYPE setMediaPlaybackRequiresUserGesture(BOOL);
&gt; +
&gt; +    virtual HRESULT STDMETHODCALLTYPE mediaPlaybackAllowsInline(BOOL*);
&gt; +    virtual HRESULT STDMETHODCALLTYPE setMediaPlaybackAllowsInline(BOOL);

Please check to see whether these should be at the end to avoid changing the ABI

&gt; Source/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h:142
&gt; +// Defaults to false.
&gt; +WK_EXPORT void WKPreferencesSetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef, bool flag);
&gt; +WK_EXPORT bool WKPreferencesGetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef);
&gt; +
&gt; +// Defaults to true.
&gt; +WK_EXPORT void WKPreferencesSetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef, bool flag);
&gt; +WK_EXPORT bool WKPreferencesGetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef);
&gt; +

The parameter names seem redundant.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438770</commentid>
    <comment_count>5</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 15:29:06 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 101190 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=101190&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Media playback already tested for if it should require user gestures, but
&gt; 
&gt; &quot; for if it should require&quot; is awkward.

Yeah, it was a typo.

&gt; 
&gt; &gt; Source/WebCore/html/HTMLMediaElement.cpp:189
&gt; &gt; +        m_restrictions |= RequireUserGestureForRateChangeRestriction;
&gt; 
&gt; The &quot;Restriction&quot; suffix makes RequireUserGestureForRateChangeRestriction confusing to read. It could be removed.

OK. It&apos;s an enum with a few values. I&apos;ll change them all.

&gt; 
&gt; &gt; Source/WebKit/win/WebPreferences.h:445
&gt; &gt; +    virtual HRESULT STDMETHODCALLTYPE mediaPlaybackRequiresUserGesture(BOOL*);
&gt; &gt; +    virtual HRESULT STDMETHODCALLTYPE setMediaPlaybackRequiresUserGesture(BOOL);
&gt; &gt; +
&gt; &gt; +    virtual HRESULT STDMETHODCALLTYPE mediaPlaybackAllowsInline(BOOL*);
&gt; &gt; +    virtual HRESULT STDMETHODCALLTYPE setMediaPlaybackAllowsInline(BOOL);
&gt; 
&gt; Please check to see whether these should be at the end to avoid changing the ABI

I&apos;m told they should go at the bottom, so cool.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h:142
&gt; &gt; +// Defaults to false.
&gt; &gt; +WK_EXPORT void WKPreferencesSetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef, bool flag);
&gt; &gt; +WK_EXPORT bool WKPreferencesGetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef);
&gt; &gt; +
&gt; &gt; +// Defaults to true.
&gt; &gt; +WK_EXPORT void WKPreferencesSetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef, bool flag);
&gt; &gt; +WK_EXPORT bool WKPreferencesGetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef);
&gt; &gt; +
&gt; 
&gt; The parameter names seem redundant.

I was copying existing style, but I agree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438784</commentid>
    <comment_count>6</comment_count>
      <attachid>101227</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 15:45:33 -0700</bug_when>
    <thetext>Created attachment 101227
Patch

Testing windows compilation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438852</commentid>
    <comment_count>7</comment_count>
      <attachid>101241</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 17:24:59 -0700</bug_when>
    <thetext>Created attachment 101241
Patch

Testing windows compilation again</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438866</commentid>
    <comment_count>8</comment_count>
      <attachid>101244</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 17:46:06 -0700</bug_when>
    <thetext>Created attachment 101244
Patch

Worked out where the typo was. Sad face.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438921</commentid>
    <comment_count>9</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 19:22:09 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	Source/WebCore/ChangeLog
	M	Source/WebCore/html/HTMLMediaElement.cpp
	M	Source/WebCore/page/Settings.cpp
	M	Source/WebCore/page/Settings.h
	M	Source/WebKit/mac/ChangeLog
	M	Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h
	M	Source/WebKit/mac/WebView/WebPreferences.mm
	M	Source/WebKit/mac/WebView/WebPreferencesPrivate.h
	M	Source/WebKit/mac/WebView/WebView.mm
	M	Source/WebKit/win/ChangeLog
	M	Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl
	M	Source/WebKit/win/WebPreferenceKeysPrivate.h
	M	Source/WebKit/win/WebPreferences.cpp
	M	Source/WebKit/win/WebPreferences.h
	M	Source/WebKit/win/WebView.cpp
	M	Source/WebKit2/ChangeLog
	M	Source/WebKit2/Shared/WebPreferencesStore.h
	M	Source/WebKit2/UIProcess/API/C/WKPreferences.cpp
	M	Source/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h
	M	Source/WebKit2/WebProcess/WebPage/WebPage.cpp
Committed r91232</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438923</commentid>
    <comment_count>10</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2011-07-18 19:22:36 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/91232</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101190</attachid>
            <date>2011-07-18 12:34:19 -0700</date>
            <delta_ts>2011-07-18 15:46:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64742-20110719053415.patch</filename>
            <type>text/plain</type>
            <size>20495</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTExNjgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNzEwMDllOTE1MzdmYmNl
NTZjYTNiYzUyY2FjNDY1YTI3YWNhM2UxLi4xYWUzNmY3OWE2YmI5MmUzYWZhNGU5MTg0MjRkMTI2
YTM5ODdlM2I2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDctMTcgIERlYW4g
SmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMg
Zm9yIG1lZGlhIHBsYXliYWNrIHJlcXVpcmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxh
eWJhY2sKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBN
ZWRpYSBwbGF5YmFjayBhbHJlYWR5IHRlc3RlZCBmb3IgaWYgaXQgc2hvdWxkIHJlcXVpcmUgdXNl
ciBnZXN0dXJlcywgYnV0CisgICAgICAgIG5vIHNldHRpbmcgd2FzIGV2ZXIgZXhwb3NlZCB0byBj
bGllbnRzLiBBbHNvLCBzb21lIHBvcnRzIG9ubHkgYWxsb3cgbWVkaWEKKyAgICAgICAgcGxheWJh
Y2sgdG8gYmUgZnVsbHNjcmVlbiwgc28gZXhwb3NpbmcgYSBuZXcgc2V0dGluZyBmb3IgdGhlbS4K
KworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogRXhhbWluZSB0aGUgbmV3IFNl
dHRpbmcKKyAgICAgICAgZm9yIHVzZXIgZ2VzdHVyZXMuCisgICAgICAgICogcGFnZS9TZXR0aW5n
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAq
IHBhZ2UvU2V0dGluZ3MuaDogVHdvIG5ldyBzZXR0aW5ncy4KKyAgICAgICAgKFdlYkNvcmU6OlNl
dHRpbmdzOjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAgIChX
ZWJDb3JlOjpTZXR0aW5nczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgor
ICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6Om1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgor
CiAyMDExLTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBjb2RlIHRvIGF0dGVtcHQgdG8gYWxpZ24gY29tcG9zaXRpbmcgbGF5ZXJzIHRv
IHBpeGVsIGJvdW5kYXJpZXMgd2hlbiBwYWdlIHNjYWxlIGNoYW5nZXMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDkxNTE2ZDkxMTc2MGQ1MmJiN2IxZDFlZjMz
OTc3NjA5YWRlNjAwMTIuLjA0YzYwODk1NWMxZmZmZjJmZGJmZmU2MjBjYjJhMWFlZGFiMGU5MTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTg0LDYgKzE4
NCw5IEBAIEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QgUXVhbGlmaWVk
TmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtCiAgICAgZG9jdW1lbnQtPnJlZ2lzdGVyRm9y
RG9jdW1lbnRBY3RpdmF0aW9uQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3Rl
ckZvck1lZGlhVm9sdW1lQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZv
clByaXZhdGVCcm93c2luZ1N0YXRlQ2hhbmdlZENhbGxiYWNrcyh0aGlzKTsKKyAgICAKKyAgICBp
ZiAoZG9jdW1lbnQtPnNldHRpbmdzKCkgJiYgZG9jdW1lbnQtPnNldHRpbmdzKCktPm1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKCkpCisgICAgICAgIG1fcmVzdHJpY3Rpb25zIHw9IFJl
cXVpcmVVc2VyR2VzdHVyZUZvclJhdGVDaGFuZ2VSZXN0cmljdGlvbjsKIH0KIAogSFRNTE1lZGlh
RWxlbWVudDo6fkhUTUxNZWRpYUVsZW1lbnQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9TZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAppbmRl
eCBhYzAwMTU2OTliMjNhMmJiMWM3ZDBkZWEyNzBmNTUzYWQxZmRiNDRjLi5iMGUxYzk3MDQxY2Yy
ODQ5YWUyODQzOWRhYjM4ZDRiZjYwOTgwYTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcApA
QCAtMjA1LDYgKzIwNSw4IEBAIFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdlKQogI2lmIEVO
QUJMRShXRUJfU09DS0VUUykKICAgICAsIG1fdXNlSGl4aWU3NldlYlNvY2tldFByb3RvY29sKHRy
dWUpCiAjZW5kaWYKKyAgICAsIG1fbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZmFs
c2UpCisgICAgLCBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUodHJ1ZSkKICAgICAsIG1fbG9h
ZHNJbWFnZXNBdXRvbWF0aWNhbGx5VGltZXIodGhpcywgJlNldHRpbmdzOjpsb2Fkc0ltYWdlc0F1
dG9tYXRpY2FsbHlUaW1lckZpcmVkKQogewogICAgIC8vIEEgRnJhbWUgbWF5IG5vdCBoYXZlIGJl
ZW4gY3JlYXRlZCB5ZXQsIHNvIHdlIGluaXRpYWxpemUgdGhlIEF0b21pY1N0cmluZyAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvU2V0dGluZ3MuaAppbmRleCAzZGMyN2Y0ZGM5MGE5MTg4YWJiNWE2YmQ0NjNkOGMyNTZhYTU5
N2JjLi5mMDkyZDczMDkwZGNmZTYwY2M5ZWQzNWM0NTk0ODBmYWNkNGRhZjUxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9TZXR0aW5ncy5oCkBAIC00MzIsNiArNDMyLDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICAgICAgYm9vbCB1c2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woKSB7IHJldHVybiBtX3VzZUhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbDsgfQogI2VuZGlmCiAKKyAgICAgICAgdm9pZCBzZXRNZWRp
YVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sIGZsYWcpIHsgbV9tZWRpYVBsYXliYWNr
UmVxdWlyZXNVc2VyR2VzdHVyZSA9IGZsYWc7IH07CisgICAgICAgIGJvb2wgbWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUoKSBjb25zdCB7IHJldHVybiBtX21lZGlhUGxheWJhY2tSZXF1
aXJlc1VzZXJHZXN0dXJlOyB9CisKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lKGJvb2wgZmxhZykgeyBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUgPSBmbGFnOyB9
OworICAgICAgICBib29sIG1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoKSBjb25zdCB7IHJldHVy
biBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAg
IFBhZ2UqIG1fcGFnZTsKIApAQCAtNTQ0LDYgKzU1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCiAgICAgICAgIGJvb2wgbV91c2VIaXhpZTc2V2ViU29j
a2V0UHJvdG9jb2wgOiAxOwogI2VuZGlmCisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrUmVx
dWlyZXNVc2VyR2VzdHVyZSA6IDE7CisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lIDogMTsKIAogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9t
YXRpY2FsbHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1l
ckZpcmVkKFRpbWVyPFNldHRpbmdzPiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDE5ZGM3OWU3Mjky
ZTNlYzRjZGZlMDIyYjg5YjdlZjBjZWU3NjRjMjEuLjVlNjE0YThmNmI1ODljNzY2NDEyZDYzMzZi
ZjUyZWRlNTAzMjMwOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0w
Ny0xNyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0NzQyCisgICAgICAgIEV4cG9zZSBXZWJQ
cmVmZXJlbmNlcyBmb3IgbWVkaWEgcGxheWJhY2sgcmVxdWlyaW5nIHVzZXIgZ2VzdHVyZXMgYW5k
IGlubGluZSBwbGF5YmFjaworCisgICAgICAgIFR3byBuZXcgV2ViUHJlZmVyZW5jZXM6IE1lZGlh
UGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIGFuZAorICAgICAgICBNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJW
aWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFs
aXplXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIG1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIHNldE1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlOl0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBtZWRpYVBs
YXliYWNrQWxsb3dzSW5saW5lXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIHNldE1lZGlh
UGxheWJhY2tBbGxvd3NJbmxpbmU6XSk6CisgICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNl
c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAgICAgICgtW1dl
YlZpZXcgX3ByZWZlcmVuY2VzQ2hhbmdlZDpdKToKKwogMjAxMS0wNy0xNSAgUHJhdGlrIFNvbGFu
a2kgIDxwc29sYW5raUBhcHBsZS5jb20+CiAKICAgICAgICAgUGFydCBvZiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjM2NzQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCmluZGV4IDAwNjc2YTM2YjYy
MGM3YzFiYzdlYmQzNzY2Y2I5MDNhMGZmY2I4NGQuLmY4YTQyNmNmM2YwYWVlYTNiNDdkMDUwZDEz
NWUyZjkzNjY0NDNhMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
UHJlZmVyZW5jZUtleXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaApAQCAtMTA4LDYgKzEwOCw4IEBACiAjZGVmaW5lIFdl
YktpdEh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRIeXBlcmxp
bmtBdWRpdGluZ0VuYWJsZWQiCiAjZGVmaW5lIFdlYktpdEFWRm91bmRhdGlvbkVuYWJsZWRLZXkg
QCJXZWJLaXRBVkZvdW5kYXRpb25FbmFibGVkIgogI2RlZmluZSBXZWJLaXRIaXhpZTc2V2ViU29j
a2V0UHJvdG9jb2xFbmFibGVkS2V5IEAiV2ViS2l0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5h
YmxlZCIKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVm
ZXJlbmNlS2V5IEAiV2ViS2l0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUiCisjZGVm
aW5lIFdlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5IEAiV2ViS2l0
TWVkaWFQbGF5YmFja0FsbG93c0lubGluZSIKIAogLy8gVGhlc2UgYXJlIHByaXZhdGUgYm90aCBi
ZWNhdXNlIGNhbGxlcnMgc2hvdWxkIGJlIHVzaW5nIHRoZSBjb3ZlciBtZXRob2RzIGFuZCBiZWNh
dXNlIHRoZQogLy8gY292ZXIgbWV0aG9kcyB0aGVtc2VsdmVzIGFyZSBwcml2YXRlLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggYTZmMWU0YjhkZjQw
Y2U5YzUzNzZmZjA1ODg2ODRmOWE4YmQ2OGQ3MC4uYjVlNTE3YWM0YTdmZTE1ZTRiNmQ3OGFmMzgw
MGU2NDY4MGFjMTQxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VzLm1tCkBAIC0zNzcsNiArMzc3LDkgQEAgc3RhdGljIFdlYkNhY2hlTW9kZWwgY2FjaGVNb2Rl
bEZvck1haW5CdW5kbGUodm9pZCkKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOk5P
XSwgICBXZWJLaXRVc2VQcmVIVE1MNVBhcnNlclF1aXJrc0tleSwKICAgICAgICAgW05TTnVtYmVy
IG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRBVkZvdW5kYXRpb25FbmFibGVkS2V5LAogICAg
ICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdEhpeGllNzZXZWJTb2Nr
ZXRQcm90b2NvbEVuYWJsZWRLZXksCisgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpO
T10sICAgV2ViS2l0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5
LAorICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdE1lZGlhUGxh
eWJhY2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5LAorCiAgICAgICAgIFtOU051bWJlciBudW1i
ZXJXaXRoTG9uZ0xvbmc6V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6Om5vUXVvdGEo
KV0sIFdlYktpdEFwcGxpY2F0aW9uQ2FjaGVUb3RhbFF1b3RhLAogICAgICAgICBbTlNOdW1iZXIg
bnVtYmVyV2l0aExvbmdMb25nOldlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpub1F1
b3RhKCldLCBXZWJLaXRBcHBsaWNhdGlvbkNhY2hlRGVmYXVsdE9yaWdpblF1b3RhLAogICAgICAg
ICBuaWxdOwpAQCAtMTQ4Myw2ICsxNDg2LDI2IEBAIHN0YXRpYyBOU1N0cmluZyAqY2xhc3NJQkNy
ZWF0b3JJRCA9IG5pbDsKIHsKICAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJL
aXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkS2V5XTsKIH0KKworLSAoQk9PTCltZWRp
YVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZQoreworICAgIHJldHVybiBbc2VsZiBfYm9vbFZh
bHVlRm9yS2V5OldlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5j
ZUtleV07Cit9CisKKy0gKHZvaWQpc2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmU6
KEJPT0wpZmxhZworeworICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0
TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5XTsKK30KKworLSAo
Qk9PTCltZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lCit7CisgICAgcmV0dXJuIFtzZWxmIF9ib29s
VmFsdWVGb3JLZXk6V2ViS2l0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZVByZWZlcmVuY2VLZXld
OworfQorCistICh2b2lkKXNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU6KEJPT0wpZmxhZwor
eworICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0TWVkaWFQbGF5YmFj
a0FsbG93c0lubGluZVByZWZlcmVuY2VLZXldOworfQogQGVuZAogCiBAaW1wbGVtZW50YXRpb24g
V2ViUHJlZmVyZW5jZXMgKFdlYkludGVybmFsKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9t
YWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKaW5kZXggZTViNmVjNTY4ZWU1OGQyZDVhNTY2
ZDc1YjM5OTU4NjYzNDgzN2Q0NC4uOWYwZGVlNjQ0Njk3YmJmNGY5YThhMWY2MWMyMzFjODdkYjYx
YTc4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNl
c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2Vz
UHJpdmF0ZS5oCkBAIC0yMTAsNiArMjEwLDEyIEBAIGV4dGVybiBOU1N0cmluZyAqV2ViUHJlZmVy
ZW5jZXNDaGFuZ2VkSW50ZXJuYWxOb3RpZmljYXRpb247CiAtIChCT09MKWh5cGVybGlua0F1ZGl0
aW5nRW5hYmxlZDsKIC0gKHZvaWQpc2V0SHlwZXJsaW5rQXVkaXRpbmdFbmFibGVkOihCT09MKWVu
YWJsZWQ7CiAKKy0gKHZvaWQpc2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmU6KEJP
T0wpZmxhZzsKKy0gKEJPT0wpbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmU7CisKKy0g
KHZvaWQpc2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZTooQk9PTClmbGFnOworLSAoQk9PTClt
ZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOworCiAvLyBPdGhlciBwcml2YXRlIG1ldGhvZHMKIC0g
KHZvaWQpX3Bvc3RQcmVmZXJlbmNlc0NoYW5nZWROb3RpZmljYXRpb247CiAtICh2b2lkKV9wb3N0
UHJlZmVyZW5jZXNDaGFuZ2VkQVBJTm90aWZpY2F0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tCmluZGV4IGIwOWU1MzRjMWExYjE3YzhjMjE1MDk0YjRhM2Q2ZDk1NWY5M2Y1NTgu
LmE1OGZkN2E1OTk0MDdiNDkwMTI4MTg1NmZmMDhkMjNmMWEwNWQzN2EgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTE1OTMsNiArMTU5Myw4IEBAIHN0YXRpYyBib29sIG5l
ZWRzU2VsZlJldGFpbldoaWxlTG9hZGluZ1F1aXJrKCkKICNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMp
CiAgICAgc2V0dGluZ3MtPnNldFVzZUhpeGllNzZXZWJTb2NrZXRQcm90b2NvbChbcHJlZmVyZW5j
ZXMgaXNIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkXSk7CiAjZW5kaWYKKyAgICBzZXR0
aW5ncy0+c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoW3ByZWZlcmVuY2VzIG1l
ZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7CisgICAgc2V0dGluZ3MtPnNldE1lZGlh
UGxheWJhY2tBbGxvd3NJbmxpbmUoW3ByZWZlcmVuY2VzIG1lZGlhUGxheWJhY2tBbGxvd3NJbmxp
bmVdKTsKIAogICAgIC8vIEFwcGxpY2F0aW9uIENhY2hlIFByZWZlcmVuY2VzIGFyZSBzdG9yZWQg
b24gdGhlIGdsb2JhbCBjYWNoZSBzdG9yYWdlIG1hbmFnZXIsIG5vdCBpbiBTZXR0aW5ncy4KICAg
ICBbV2ViQXBwbGljYXRpb25DYWNoZSBzZXREZWZhdWx0T3JpZ2luUXVvdGE6W3ByZWZlcmVuY2Vz
IGFwcGxpY2F0aW9uQ2FjaGVEZWZhdWx0T3JpZ2luUXVvdGFdXTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRl
eCBiNmVmY2JiYTFiODVlNGI1Njc4NWM5MWRkNDk0Mjg5MmY2ODM5YTUxLi5lNzZhMDA0MTYzNDhl
ZWE5ODZlMWQwMzU4YTgzNDI1YjBjYzc1N2JhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjQgQEAKKzIwMTEtMDctMTcgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0MgorICAgICAg
ICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMgZm9yIG1lZGlhIHBsYXliYWNrIHJlcXVpcmluZyB1c2Vy
IGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxheWJhY2sKKworICAgICAgICBUd28gbmV3IFdlYlByZWZl
cmVuY2VzOiBNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSBhbmQKKyAgICAgICAgTWVk
aWFQbGF5YmFja0FsbG93c0lubGluZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFdlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oOgorICAgICAgICAq
IFdlYlByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjppbml0aWFsaXpl
RGVmYXVsdFNldHRpbmdzKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6bWVkaWFQ
bGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXM6OnNl
dE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXM6Om1l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAgICAqIFdlYlByZWZlcmVuY2VzLmg6Cisg
ICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3Ojpub3RpZnlQcmVmZXJlbmNl
c0NoYW5nZWQpOgorCiAyMDExLTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIEFkZCBjb2RlIHRvIGF0dGVtcHQgdG8gYWxpZ24gY29tcG9zaXRp
bmcgbGF5ZXJzIHRvIHBpeGVsIGJvdW5kYXJpZXMgd2hlbiBwYWdlIHNjYWxlIGNoYW5nZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIv
U291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXggNzIyYzMz
ZmNmZGQwNjgzMmU3MGQwMjE5ZGQ1ZTIxNDVmZDk4Y2FiMC4uODcyMDI4YjZiOTAwNmZjZjEwNjhi
NDcyNWQzZjIzNGUzMGI1YzRhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJl
ZmVyZW5jZUtleXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5j
ZUtleXNQcml2YXRlLmgKQEAgLTE1NCwzICsxNTQsOCBAQAogI2RlZmluZSBXZWJLaXRGdWxsU2Ny
ZWVuRW5hYmxlZFByZWZlcmVuY2VLZXkgIldlYktpdEZ1bGxTY3JlZW5FbmFibGVkIgogCiAjZGVm
aW5lIFdlYktpdEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWRQcmVmZXJlbmNlS2V5ICJX
ZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkIgorCisjZGVmaW5lIFdlYktpdE1l
ZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleSBAIldlYktpdE1lZGlh
UGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIgorCisjZGVmaW5lIFdlYktpdE1lZGlhUGxheWJh
Y2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5IEAiV2ViS2l0TWVkaWFQbGF5YmFja0FsbG93c0lu
bGluZSIKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3Bw
IGIvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCmluZGV4IGYyYTJmZWFhYThk
YjQ3MjY3N2NlODQ5YTc1YzIxNjNiY2NkNWU0NWUuLmQwYWU2Nzk0NmVkNDQwNWE4NTE2OWMwNzI3
ZjIyYmQ4NWI0ODI2MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVu
Y2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKQEAgLTI2
OCw2ICsyNjgsOSBAQCB2b2lkIFdlYlByZWZlcmVuY2VzOjppbml0aWFsaXplRGVmYXVsdFNldHRp
bmdzKCkKICAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SHlw
ZXJsaW5rQXVkaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKICAg
ICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SGl4aWU3NldlYlNv
Y2tldFByb3RvY29sRW5hYmxlZFByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuVHJ1ZSk7CiAKKyAg
ICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhbkZhbHNlKTsKKyAg
ICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0TWVkaWFQbGF5YmFj
a0FsbG93c0lubGluZVByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuVHJ1ZSk7CisKICAgICBkZWZh
dWx0U2V0dGluZ3MgPSBkZWZhdWx0czsKIH0KIApAQCAtOTU3LDYgKzk2MCwzNCBAQCBIUkVTVUxU
IFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpoaXhpZTc2V2ViU29ja2V0UHJvdG9j
b2xFbmFibGVkKAogICAgIHJldHVybiBTX09LOwogfQogCitIUkVTVUxUIFNURE1FVEhPRENBTExU
WVBFIFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSgK
KyAgICAvKiBbaW5dICovIEJPT0wgZmxhZykKK3sKKyAgICBzZXRCb29sVmFsdWUoQ0ZTVFIoV2Vi
S2l0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5KSwgZW5hYmxl
ZCk7CisgICAgcmV0dXJuIFNfT0s7Cit9CisKK0hSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2Vi
UHJlZmVyZW5jZXM6Om1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKAorICAgIC8qIFty
ZXR2YWxdW291dF0gKi8gQk9PTCogZmxhZykKK3sKKyAgICAqZW5hYmxlZCA9IGJvb2xWYWx1ZUZv
cktleShDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVu
Y2VLZXkpKTsKKyAgICByZXR1cm4gU19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSBXZWJQcmVmZXJlbmNlczo6c2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgKKyAgICAvKiBb
aW5dICovIEJPT0wgZmxhZykKK3sKKyAgICBzZXRCb29sVmFsdWUoQ0ZTVFIoV2ViS2l0TWVkaWFQ
bGF5YmFja0FsbG93c0lubGluZVByZWZlcmVuY2VLZXkpLCBlbmFibGVkKTsKKyAgICByZXR1cm4g
U19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6bWVk
aWFQbGF5YmFja0FsbG93c0lubGluZSgKKyAgICAvKiBbcmV0dmFsXVtvdXRdICovIEJPT0wqIGZs
YWcpCit7CisgICAgKmVuYWJsZWQgPSBib29sVmFsdWVGb3JLZXkoQ0ZTVFIoV2ViS2l0TWVkaWFQ
bGF5YmFja0FsbG93c0lubGluZVByZWZlcmVuY2VLZXkpKTsKKyAgICByZXR1cm4gU19PSzsKK30K
KwogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6c2V0QXV0b3NhdmVz
KCAKICAgICAvKiBbaW5dICovIEJPT0wgZW5hYmxlZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJl
bmNlcy5oCmluZGV4IGZhMTUwMTQ2NmIxNWRlMTg3NDY0MjA4NmU0Y2YyZDk1MDVhZjg4MDguLjlj
YmMyMzA5NjU0NjM1ZGFjODA5NDhkYzAxOWU4N2MzMGVjZmZhMWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2Vi
UHJlZmVyZW5jZXMuaApAQCAtNDM4LDYgKzQzOCwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBI
UkVTVUxUIFNURE1FVEhPRENBTExUWVBFIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQo
Qk9PTCopOwogICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBzZXRIaXhpZTc2
V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKEJPT0wpOwogCisgICAgdmlydHVhbCBIUkVTVUxUIFNU
RE1FVEhPRENBTExUWVBFIG1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKEJPT0wqKTsK
KyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgc2V0TWVkaWFQbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUoQk9PTCk7CisKKyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9E
Q0FMTFRZUEUgbWVkaWFQbGF5YmFja0FsbG93c0lubGluZShCT09MKik7CisgICAgdmlydHVhbCBI
UkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoQk9P
TCk7CisKICAgICAvLyBXZWJQcmVmZXJlbmNlcwogCiAgICAgLy8gVGhpcyBtZXRob2QgYWNjZXNz
ZXMgYSBkaWZmZXJlbnQgcHJlZmVyZW5jZSBrZXkgdGhhbiBkZXZlbG9wZXJFeHRyYXNFbmFibGVk
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJWaWV3LmNwcAppbmRleCBjYjUxYTVhYTcwNTRhY2RmZGI3MjFmN2I5MTY5MGJm
ODNkYjUzYTk2Li5mYTc1ODc0YmRjNDM2OGUwN2VkZGRkN2Y1ZjRiZmQ3YTk1ZjYzZGRmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJWaWV3LmNwcApAQCAtNDg3MCw2ICs0ODcwLDE2IEBAIEhSRVNVTFQgV2ViVmlldzo6
bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikK
ICAgICBzZXR0aW5ncy0+c2V0RnVsbFNjcmVlbkVuYWJsZWQoZW5hYmxlZCk7CiAjZW5kaWYKIAor
ICAgIGhyID0gcHJlZnNQcml2YXRlLT5tZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSgm
ZW5hYmxlZCk7CisgICAgaWYgKEZBSUxFRChocikpCisgICAgICAgIHJldHVybiBocjsKKyAgICBz
ZXR0aW5ncy0+c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZW5hYmxlZCk7CisK
KyAgICBociA9IHByZWZzUHJpdmF0ZS0+bWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgmZW5hYmxl
ZCk7CisgICAgaWYgKEZBSUxFRChocikpCisgICAgICAgIHJldHVybiBocjsKKyAgICBzZXR0aW5n
cy0+c2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShlbmFibGVkKTsKKwogICAgIHJldHVybiBT
X09LOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTllYTJiMmJlNmY1YjQ3ZmQ3MjhmMzAyNjE3ZmU0Zjhl
MGJhNjY3ZS4uMTdkOGMxMzNkNGUxZjRkYTFhNDExYTY0NmZmYzlkZGRhNjY1NTY2NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDExLTA3LTE3ICBEZWFuIEphY2tzb24gIDxkaW5vQGFw
cGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NjQ3NDIKKyAgICAgICAgRXhwb3NlIFdlYlByZWZlcmVuY2VzIGZvciBtZWRpYSBwbGF5YmFj
ayByZXF1aXJpbmcgdXNlciBnZXN0dXJlcyBhbmQgaW5saW5lIHBsYXliYWNrCisKKyAgICAgICAg
VHdvIG5ldyBXZWJQcmVmZXJlbmNlczogTWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUg
YW5kCisgICAgICAgIE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUuCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNT
dG9yZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAg
ICAgICAgKFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6
CisgICAgICAgIChXS1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1
cmUpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUp
OgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCiAyMDExLTA3LTE2ICBEYW5pZWwgQmF0ZXMgIDxk
YmF0ZXNAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggV2luIENhaXJvIERlYnVnIGJ1aWxkIGFm
dGVyIDxodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85MTA4NT4uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCAwNWIxNDIwZjNiN2IwMWYw
ZTNiNmJmN2MzYTU0NDlmNjBhNjQ1YWVmLi5mOTZkYmM5MDAwN2E1MTBhZWQ5MDAyMGUyNjY3OThl
ZWVhZWM0Mzk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3Jl
LmgKQEAgLTc2LDYgKzc2LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgbWFjcm8oQWxsb3dG
aWxlQWNjZXNzRnJvbUZpbGVVUkxzLCBhbGxvd0ZpbGVBY2Nlc3NGcm9tRmlsZVVSTHMsIEJvb2ws
IGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oQVZGb3VuZGF0aW9uRW5hYmxlZCwgaXNBVkZvdW5k
YXRpb25FbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8oSGl4aWU3NldlYlNv
Y2tldFByb3RvY29sRW5hYmxlZCwgaGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZCwgQm9v
bCwgYm9vbCwgdHJ1ZSkgXAorICAgIG1hY3JvKE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0
dXJlLCBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSwgQm9vbCwgYm9vbCwgZmFsc2Up
IFwKKyAgICBtYWNybyhNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLCBtZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNI
X1dFQktJVF9ET1VCTEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGIwODc2NDAwYTE5OWQ1OTEx
OTBiYjhlYWY2Mzc1Y2RiOWJlMjZmNTMuLjQ4MTA0MDRkNzkxZTU1MDY1YjkxNjc5NGEwODQyNWFh
ZGJhMzVhODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1By
ZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlcy5jcHAKQEAgLTU3MSwzICs1NzEsMjMgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0SGl4
aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2UK
IHsKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+aGl4aWU3NldlYlNvY2tldFBy
b3RvY29sRW5hYmxlZCgpOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNr
UmVxdWlyZXNVc2VyR2VzdHVyZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29s
IGZsYWcpCit7CisgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0TWVkaWFQbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUoZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlh
UGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNS
ZWYpCit7CisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPm1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKCk7Cit9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxh
eWJhY2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBm
bGFnKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldE1lZGlhUGxheWJhY2tBbGxv
d3NJbmxpbmUoZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tB
bGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1
cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+bWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgpOwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
c1ByaXZhdGUuaAppbmRleCBmOGU3ZmYzNDVjMmQ2M2ViNzkwNjE1MGZhOWM5NDVhZTBjY2NmMmU1
Li43ZTRiNmVmNDY4MWE2ZGE5NGM0NjU1YjQwNmQ0NDNlY2MyOWRjYmVhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaApA
QCAtMTMyLDYgKzEzMiwxNCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0RmlsZUFj
Y2Vzc0Zyb21GaWxlVVJMc0FsbG93ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcgogV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoV0tQcmVm
ZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKTsKIFdLX0VYUE9SVCBib29s
IFdLUHJlZmVyZW5jZXNHZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwogCisvLyBEZWZhdWx0cyB0byBmYWxzZS4KK1dLX0VY
UE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOworV0tfRVhQT1JU
IGJvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOworCisvLyBEZWZhdWx0cyB0byB0cnVlLgor
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUo
V0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKTsKK1dLX0VYUE9SVCBi
b29sIFdLUHJlZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFdLUHJlZmVyZW5j
ZXNSZWYgcHJlZmVyZW5jZXNSZWYpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGRh
YjA5OTM2NzNhY2VhNjM4ZjQzZTIyOTdiMTIxYjUxMzJkNzY0YTAuLmYxNGI5OTAzMGE3OTE4Yjhh
NGM0N2YxYmVlMDY3MzMzNmFjYTk4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTE2MDIsNiArMTYwMiw4IEBAIHZvaWQgV2ViUGFnZTo6
dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAg
c2V0dGluZ3MtPnNldFNob3dEZWJ1Z0JvcmRlcnMoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdl
YlByZWZlcmVuY2VzS2V5Ojpjb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlS2V5KCkpKTsKICAgICBz
ZXR0aW5ncy0+c2V0U2hvd1JlcGFpbnRDb3VudGVyKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5KCkp
KTsKICAgICBzZXR0aW5ncy0+c2V0V2ViR0xFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktl
eShXZWJQcmVmZXJlbmNlc0tleTo6d2ViR0xFbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5ncy0+
c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9y
S2V5KFdlYlByZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZUtl
eSgpKSk7CisgICAgc2V0dGluZ3MtPnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoc3RvcmUu
Z2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lS2V5KCkpKTsKIAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBBYnN0cmFjdERhdGFi
YXNlOjpzZXRJc0F2YWlsYWJsZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5j
ZXNLZXk6OmRhdGFiYXNlc0VuYWJsZWRLZXkoKSkpOwo=
</data>
<flag name="review"
          id="96072"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101227</attachid>
            <date>2011-07-18 15:45:33 -0700</date>
            <delta_ts>2011-07-18 15:45:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64742-20110719084523.patch</filename>
            <type>text/plain</type>
            <size>21341</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTExNjgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNzEwMDllOTE1MzdmYmNl
NTZjYTNiYzUyY2FjNDY1YTI3YWNhM2UxLi5jNWFjNWI2ZDAzNDg2Njg2OTI2YWM3ZDY2NjdiMGZh
NDQ0M2I3OWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDctMTggIERlYW4g
SmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMg
Zm9yIG1lZGlhIHBsYXliYWNrIHJlcXVpcmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxh
eWJhY2sKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgTWVk
aWEgcGxheWJhY2sgYWxyZWFkeSB0ZXN0ZWQgaWYgaXQgc2hvdWxkIHJlcXVpcmUgdXNlciBnZXN0
dXJlcywgYnV0CisgICAgICAgIG5vIHNldHRpbmcgd2FzIGV2ZXIgZXhwb3NlZCB0byBjbGllbnRz
LiBBbHNvLCBzb21lIHBvcnRzIG9ubHkgYWxsb3cgbWVkaWEKKyAgICAgICAgcGxheWJhY2sgdG8g
YmUgZnVsbHNjcmVlbiwgc28gZXhwb3NpbmcgYSBuZXcgc2V0dGluZyBmb3IgdGhlbS4KKworICAg
ICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogRXhhbWluZSB0aGUgbmV3IFNldHRpbmcK
KyAgICAgICAgZm9yIHVzZXIgZ2VzdHVyZXMuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAqIHBhZ2Uv
U2V0dGluZ3MuaDogVHdvIG5ldyBzZXR0aW5ncy4KKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdz
OjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAgIChXZWJDb3Jl
OjpTZXR0aW5nczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAgICAgICAo
V2ViQ29yZTo6U2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAg
ICAoV2ViQ29yZTo6U2V0dGluZ3M6Om1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorCiAyMDEx
LTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCBjb2RlIHRvIGF0dGVtcHQgdG8gYWxpZ24gY29tcG9zaXRpbmcgbGF5ZXJzIHRvIHBpeGVs
IGJvdW5kYXJpZXMgd2hlbiBwYWdlIHNjYWxlIGNoYW5nZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDkxNTE2ZDkxMTc2MGQ1MmJiN2IxZDFlZjMzOTc3NjA5
YWRlNjAwMTIuLjA0YzYwODk1NWMxZmZmZjJmZGJmZmU2MjBjYjJhMWFlZGFiMGU5MTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTg0LDYgKzE4NCw5IEBA
IEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtCiAgICAgZG9jdW1lbnQtPnJlZ2lzdGVyRm9yRG9jdW1l
bnRBY3RpdmF0aW9uQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvck1l
ZGlhVm9sdW1lQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvclByaXZh
dGVCcm93c2luZ1N0YXRlQ2hhbmdlZENhbGxiYWNrcyh0aGlzKTsKKyAgICAKKyAgICBpZiAoZG9j
dW1lbnQtPnNldHRpbmdzKCkgJiYgZG9jdW1lbnQtPnNldHRpbmdzKCktPm1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKCkpCisgICAgICAgIG1fcmVzdHJpY3Rpb25zIHw9IFJlcXVpcmVV
c2VyR2VzdHVyZUZvclJhdGVDaGFuZ2VSZXN0cmljdGlvbjsKIH0KIAogSFRNTE1lZGlhRWxlbWVu
dDo6fkhUTUxNZWRpYUVsZW1lbnQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAppbmRleCBhYzAw
MTU2OTliMjNhMmJiMWM3ZDBkZWEyNzBmNTUzYWQxZmRiNDRjLi5iMGUxYzk3MDQxY2YyODQ5YWUy
ODQzOWRhYjM4ZDRiZjYwOTgwYTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcApAQCAtMjA1
LDYgKzIwNSw4IEBAIFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdlKQogI2lmIEVOQUJMRShX
RUJfU09DS0VUUykKICAgICAsIG1fdXNlSGl4aWU3NldlYlNvY2tldFByb3RvY29sKHRydWUpCiAj
ZW5kaWYKKyAgICAsIG1fbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZmFsc2UpCisg
ICAgLCBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUodHJ1ZSkKICAgICAsIG1fbG9hZHNJbWFn
ZXNBdXRvbWF0aWNhbGx5VGltZXIodGhpcywgJlNldHRpbmdzOjpsb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHlUaW1lckZpcmVkKQogewogICAgIC8vIEEgRnJhbWUgbWF5IG5vdCBoYXZlIGJlZW4gY3Jl
YXRlZCB5ZXQsIHNvIHdlIGluaXRpYWxpemUgdGhlIEF0b21pY1N0cmluZyAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAppbmRleCAzZGMyN2Y0ZGM5MGE5MTg4YWJiNWE2YmQ0NjNkOGMyNTZhYTU5N2JjLi5m
MDkyZDczMDkwZGNmZTYwY2M5ZWQzNWM0NTk0ODBmYWNkNGRhZjUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5oCkBAIC00MzIsNiArNDMyLDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
Ym9vbCB1c2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woKSB7IHJldHVybiBtX3VzZUhpeGllNzZX
ZWJTb2NrZXRQcm90b2NvbDsgfQogI2VuZGlmCiAKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sIGZsYWcpIHsgbV9tZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZSA9IGZsYWc7IH07CisgICAgICAgIGJvb2wgbWVkaWFQbGF5YmFja1JlcXVp
cmVzVXNlckdlc3R1cmUoKSBjb25zdCB7IHJldHVybiBtX21lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlOyB9CisKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
KGJvb2wgZmxhZykgeyBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUgPSBmbGFnOyB9OworICAg
ICAgICBib29sIG1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoKSBjb25zdCB7IHJldHVybiBtX21l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIFBhZ2Uq
IG1fcGFnZTsKIApAQCAtNTQ0LDYgKzU1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBF
TkFCTEUoV0VCX1NPQ0tFVFMpCiAgICAgICAgIGJvb2wgbV91c2VIaXhpZTc2V2ViU29ja2V0UHJv
dG9jb2wgOiAxOwogI2VuZGlmCisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZSA6IDE7CisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
IDogMTsKIAogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2Fs
bHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lckZpcmVk
KFRpbWVyPFNldHRpbmdzPiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDE5ZGM3OWU3MjkyZTNlYzRj
ZGZlMDIyYjg5YjdlZjBjZWU3NjRjMjEuLmY2MDI0ZjMzNTJiNTUxODZjNzUyYTE3YmY2YmU1YTM0
OWM0ZjkwYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0wNy0xOCAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0NzQyCisgICAgICAgIEV4cG9zZSBXZWJQcmVmZXJl
bmNlcyBmb3IgbWVkaWEgcGxheWJhY2sgcmVxdWlyaW5nIHVzZXIgZ2VzdHVyZXMgYW5kIGlubGlu
ZSBwbGF5YmFjaworCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAg
ICBUd28gbmV3IFdlYlByZWZlcmVuY2VzOiBNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZSBhbmQKKyAgICAgICAgTWVkaWFQbGF5YmFja0FsbG93c0lubGluZS4KKworICAgICAgICAqIFdl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmg6CisgICAgICAgICogV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbToKKyAgICAgICAgKCtbV2ViUHJlZmVyZW5jZXMgaW5pdGlhbGl6ZV0pOgor
ICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZTpdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgbWVkaWFQbGF5YmFja0Fs
bG93c0lubGluZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lOl0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
Lmg6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMTEtMDctMTUgIFByYXRpayBTb2xhbmtpICA8cHNv
bGFua2lAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnQgb2YgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTYzNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCAwMDY3NmEzNmI2MjBjN2MxYmM3
ZWJkMzc2NmNiOTAzYTBmZmNiODRkLi5mOGE0MjZjZjNmMGFlZWEzYjQ3ZDA1MGQxMzVlMmY5MzY2
NDQzYTI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VLZXlzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZUtleXNQcml2YXRlLmgKQEAgLTEwOCw2ICsxMDgsOCBAQAogI2RlZmluZSBXZWJLaXRIeXBl
cmxpbmtBdWRpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0SHlwZXJsaW5rQXVkaXRp
bmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRBVkZvdW5kYXRpb25FbmFibGVkS2V5IEAiV2ViS2l0
QVZGb3VuZGF0aW9uRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0SGl4aWU3NldlYlNvY2tldFByb3Rv
Y29sRW5hYmxlZEtleSBAIldlYktpdEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisj
ZGVmaW5lIFdlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtl
eSBAIldlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIgorI2RlZmluZSBXZWJL
aXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSBAIldlYktpdE1lZGlhUGxh
eWJhY2tBbGxvd3NJbmxpbmUiCiAKIC8vIFRoZXNlIGFyZSBwcml2YXRlIGJvdGggYmVjYXVzZSBj
YWxsZXJzIHNob3VsZCBiZSB1c2luZyB0aGUgY292ZXIgbWV0aG9kcyBhbmQgYmVjYXVzZSB0aGUK
IC8vIGNvdmVyIG1ldGhvZHMgdGhlbXNlbHZlcyBhcmUgcHJpdmF0ZS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IGE2ZjFlNGI4ZGY0MGNlOWM1Mzc2
ZmYwNTg4Njg0ZjlhOGJkNjhkNzAuLmI1ZTUxN2FjNGE3ZmUxNWU0YjZkNzhhZjM4MDBlNjQ2ODBh
YzE0MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5j
ZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpA
QCAtMzc3LDYgKzM3Nyw5IEBAIHN0YXRpYyBXZWJDYWNoZU1vZGVsIGNhY2hlTW9kZWxGb3JNYWlu
QnVuZGxlKHZvaWQpCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2Vi
S2l0VXNlUHJlSFRNTDVQYXJzZXJRdWlya3NLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCAgV2ViS2l0QVZGb3VuZGF0aW9uRW5hYmxlZEtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9j
b2xFbmFibGVkS2V5LAorICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdl
YktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleSwKKyAgICAg
ICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lUHJlZmVyZW5jZUtleSwKKwogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aExv
bmdMb25nOldlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpub1F1b3RhKCldLCBXZWJL
aXRBcHBsaWNhdGlvbkNhY2hlVG90YWxRdW90YSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldp
dGhMb25nTG9uZzpXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bm9RdW90YSgpXSwg
V2ViS2l0QXBwbGljYXRpb25DYWNoZURlZmF1bHRPcmlnaW5RdW90YSwKICAgICAgICAgbmlsXTsK
QEAgLTE0ODMsNiArMTQ4NiwyNiBAQCBzdGF0aWMgTlNTdHJpbmcgKmNsYXNzSUJDcmVhdG9ySUQg
PSBuaWw7CiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0SGl4aWU3
NldlYlNvY2tldFByb3RvY29sRW5hYmxlZEtleV07CiB9CisKKy0gKEJPT0wpbWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUKK3sKKyAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktl
eTpXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXldOwor
fQorCistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZs
YWcKK3sKKyAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleV07Cit9CisKKy0gKEJPT0wpbWVk
aWFQbGF5YmFja0FsbG93c0lubGluZQoreworICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9y
S2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KKwor
LSAodm9pZClzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOihCT09MKWZsYWcKK3sKKyAgICBb
c2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJ
bmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlByZWZl
cmVuY2VzIChXZWJJbnRlcm5hbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IGU1YjZlYzU2OGVlNThkMmQ1YTU2NmQ3NWIzOTk1
ODY2MzQ4MzdkNDQuLjlmMGRlZTY0NDY5N2JiZjRmOWE4YTFmNjFjMjMxYzg3ZGI2MWE3OGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUu
aApAQCAtMjEwLDYgKzIxMCwxMiBAQCBleHRlcm4gTlNTdHJpbmcgKldlYlByZWZlcmVuY2VzQ2hh
bmdlZEludGVybmFsTm90aWZpY2F0aW9uOwogLSAoQk9PTCloeXBlcmxpbmtBdWRpdGluZ0VuYWJs
ZWQ7CiAtICh2b2lkKXNldEh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZDooQk9PTCllbmFibGVkOwog
CistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZsYWc7
CistIChCT09MKW1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOworCistICh2b2lkKXNl
dE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU6KEJPT0wpZmxhZzsKKy0gKEJPT0wpbWVkaWFQbGF5
YmFja0FsbG93c0lubGluZTsKKwogLy8gT3RoZXIgcHJpdmF0ZSBtZXRob2RzCiAtICh2b2lkKV9w
b3N0UHJlZmVyZW5jZXNDaGFuZ2VkTm90aWZpY2F0aW9uOwogLSAodm9pZClfcG9zdFByZWZlcmVu
Y2VzQ2hhbmdlZEFQSU5vdGlmaWNhdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5t
bQppbmRleCBiMDllNTM0YzFhMWIxN2M4YzIxNTA5NGI0YTNkNmQ5NTVmOTNmNTU4Li5hNThmZDdh
NTk5NDA3YjQ5MDEyODE4NTZmZjA4ZDIzZjFhMDVkMzdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCkBAIC0xNTkzLDYgKzE1OTMsOCBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZS
ZXRhaW5XaGlsZUxvYWRpbmdRdWlyaygpCiAjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQogICAgIHNl
dHRpbmdzLT5zZXRVc2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woW3ByZWZlcmVuY2VzIGlzSGl4
aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZF0pOwogI2VuZGlmCisgICAgc2V0dGluZ3MtPnNl
dE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZV0pOworICAgIHNldHRpbmdzLT5zZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lXSk7CiAK
ICAgICAvLyBBcHBsaWNhdGlvbiBDYWNoZSBQcmVmZXJlbmNlcyBhcmUgc3RvcmVkIG9uIHRoZSBn
bG9iYWwgY2FjaGUgc3RvcmFnZSBtYW5hZ2VyLCBub3QgaW4gU2V0dGluZ3MuCiAgICAgW1dlYkFw
cGxpY2F0aW9uQ2FjaGUgc2V0RGVmYXVsdE9yaWdpblF1b3RhOltwcmVmZXJlbmNlcyBhcHBsaWNh
dGlvbkNhY2hlRGVmYXVsdE9yaWdpblF1b3RhXV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggYjZlZmNi
YmExYjg1ZTRiNTY3ODVjOTFkZDQ5NDI4OTJmNjgzOWE1MS4uNGYyNmFmZjZmMzZmZDNhZTA3NDgy
N2JhOGRhZDcxNjVjYzZiYTIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisy
MDExLTA3LTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ3NDIKKyAgICAgICAgRXhwb3Nl
IFdlYlByZWZlcmVuY2VzIGZvciBtZWRpYSBwbGF5YmFjayByZXF1aXJpbmcgdXNlciBnZXN0dXJl
cyBhbmQgaW5saW5lIHBsYXliYWNrCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2Vy
LgorCisgICAgICAgIFR3byBuZXcgV2ViUHJlZmVyZW5jZXM6IE1lZGlhUGxheWJhY2tSZXF1aXJl
c1VzZXJHZXN0dXJlIGFuZAorICAgICAgICBNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLgorCisg
ICAgICAgICogSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbDoKKyAgICAgICAg
KiBXZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0aW5ncyk6
CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUpOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXM6Om1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjptZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lKToKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5oOgorICAgICAgICAqIFdlYlZpZXcu
Y3BwOgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKToKKwogMjAx
MS0wNy0xNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBBZGQgY29kZSB0byBhdHRlbXB0IHRvIGFsaWduIGNvbXBvc2l0aW5nIGxheWVycyB0byBwaXhl
bCBib3VuZGFyaWVzIHdoZW4gcGFnZSBzY2FsZSBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsIGIvU291cmNl
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbAppbmRleCBj
ODM3OTcwZmE0YzMzNmQ5N2QxOTI3Y2Y5YWU1ZWE3MGNkMWVlZWMxLi5lOTVjMjNjNzQ5NGE0NTVh
MTNjM2Q4YTA3MGMyMzNmNjZlMzc1MDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9J
bnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0ludGVyZmFjZXMvSVdlYlByZWZlcmVuY2VzUHJpdmF0ZS5pZGwKQEAgLTEzMCw0ICsxMzAs
MTAgQEAgaW50ZXJmYWNlIElXZWJQcmVmZXJlbmNlc1ByaXZhdGUgOiBJVW5rbm93bgogCiAgICAg
SFJFU1VMVCBzZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFtpbl0gQk9PTCBlbmFi
bGVkKTsKICAgICBIUkVTVUxUIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoW291dCwg
cmV0dmFsXSBCT09MKiBlbmFibGVkKTsKKworICAgIEhSRVNVTFQgc2V0TWVkaWFQbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUoW2luXSBCT09MKTsKKyAgICBIUkVTVUxUIG1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKFtvdXQsIHJldHZhbF0gQk9PTCopOworCisgICAgSFJFU1VMVCBz
ZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFtpbl0gQk9PTCk7CisgICAgSFJFU1VMVCBtZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lKFtvdXQsIHJldHZhbF0gQk9PTCopOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCA3MjJjMzNmY2ZkZDA2
ODMyZTcwZDAyMTlkZDVlMjE0NWZkOThjYWIwLi44NzIwMjhiNmI5MDA2ZmNmMTA2OGI0NzI1ZDNm
MjM0ZTMwYjVjNGFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNl
S2V5c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1By
aXZhdGUuaApAQCAtMTU0LDMgKzE1NCw4IEBACiAjZGVmaW5lIFdlYktpdEZ1bGxTY3JlZW5FbmFi
bGVkUHJlZmVyZW5jZUtleSAiV2ViS2l0RnVsbFNjcmVlbkVuYWJsZWQiCiAKICNkZWZpbmUgV2Vi
S2l0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZFByZWZlcmVuY2VLZXkgIldlYktpdEhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5IEAiV2ViS2l0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUiCisKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5YmFja0FsbG93
c0lubGluZVByZWZlcmVuY2VLZXkgQCJXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lIgor
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKaW5kZXggZjJhMmZlYWFhOGRiNDcyNjc3
Y2U4NDlhNzVjMjE2M2JjY2Q1ZTQ1ZS4uZDBhZTY3OTQ2ZWQ0NDA1YTg1MTY5YzA3MjdmMjJiZDg1
YjQ4MjYyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcApAQCAtMjY4LDYgKzI2
OCw5IEBAIHZvaWQgV2ViUHJlZmVyZW5jZXM6OmluaXRpYWxpemVEZWZhdWx0U2V0dGluZ3MoKQog
ICAgIENGRGljdGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRIeXBlcmxpbmtB
dWRpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhblRydWUpOwogICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJv
dG9jb2xFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKIAorICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuRmFsc2UpOworICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKKwogICAgIGRlZmF1bHRTZXR0
aW5ncyA9IGRlZmF1bHRzOwogfQogCkBAIC05NTcsNiArOTYwLDM0IEBAIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgV2ViUHJlZmVyZW5jZXM6OmhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJs
ZWQoCiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKK0hSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2Vi
UHJlZmVyZW5jZXM6OnNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKAorICAgIC8q
IFtpbl0gKi8gQk9PTCBmbGFnKQoreworICAgIHNldEJvb2xWYWx1ZShDRlNUUihXZWJLaXRNZWRp
YVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXkpLCBlbmFibGVkKTsKKyAg
ICByZXR1cm4gU19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJl
bmNlczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoCisgICAgLyogW3JldHZhbF1b
b3V0XSAqLyBCT09MKiBmbGFnKQoreworICAgICplbmFibGVkID0gYm9vbFZhbHVlRm9yS2V5KENG
U1RSKFdlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleSkp
OworICAgIHJldHVybiBTX09LOworfQorCitIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlBy
ZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKAorICAgIC8qIFtpbl0gKi8g
Qk9PTCBmbGFnKQoreworICAgIHNldEJvb2xWYWx1ZShDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSksIGVuYWJsZWQpOworICAgIHJldHVybiBTX09LOwor
fQorCitIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjptZWRpYVBsYXli
YWNrQWxsb3dzSW5saW5lKAorICAgIC8qIFtyZXR2YWxdW291dF0gKi8gQk9PTCogZmxhZykKK3sK
KyAgICAqZW5hYmxlZCA9IGJvb2xWYWx1ZUZvcktleShDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSkpOworICAgIHJldHVybiBTX09LOworfQorCiBIUkVT
VUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpzZXRBdXRvc2F2ZXMoIAogICAg
IC8qIFtpbl0gKi8gQk9PTCBlbmFibGVkKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93
aW4vV2ViUHJlZmVyZW5jZXMuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmgK
aW5kZXggZmExNTAxNDY2YjE1ZGUxODc0NjQyMDg2ZTRjZjJkOTUwNWFmODgwOC4uOWNiYzIzMDk2
NTQ2MzVkYWM4MDk0OGRjMDE5ZTg3YzMwZWNmZmExYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC93aW4vV2ViUHJlZmVyZW5jZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJl
bmNlcy5oCkBAIC00MzgsNiArNDM4LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgaGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChCT09MKik7
CiAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNldEhpeGllNzZXZWJTb2Nr
ZXRQcm90b2NvbEVuYWJsZWQoQk9PTCk7CiAKKyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9E
Q0FMTFRZUEUgbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoQk9PTCopOworICAgIHZp
cnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZShCT09MKTsKKworICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKEJPT0wqKTsKKyAgICB2aXJ0dWFsIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgc2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShCT09MKTsKKwog
ICAgIC8vIFdlYlByZWZlcmVuY2VzCiAKICAgICAvLyBUaGlzIG1ldGhvZCBhY2Nlc3NlcyBhIGRp
ZmZlcmVudCBwcmVmZXJlbmNlIGtleSB0aGFuIGRldmVsb3BlckV4dHJhc0VuYWJsZWQuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYlZpZXcuY3BwCmluZGV4IGNiNTFhNWFhNzA1NGFjZGZkYjcyMWY3YjkxNjkwYmY4M2RiNTNh
OTYuLmZhNzU4NzRiZGM0MzY4ZTA3ZWRkZGQ3ZjVmNGJmZDdhOTVmNjNkZGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dl
YlZpZXcuY3BwCkBAIC00ODcwLDYgKzQ4NzAsMTYgQEAgSFJFU1VMVCBXZWJWaWV3Ojpub3RpZnlQ
cmVmZXJlbmNlc0NoYW5nZWQoSVdlYk5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogICAgIHNl
dHRpbmdzLT5zZXRGdWxsU2NyZWVuRW5hYmxlZChlbmFibGVkKTsKICNlbmRpZgogCisgICAgaHIg
PSBwcmVmc1ByaXZhdGUtPm1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKCZlbmFibGVk
KTsKKyAgICBpZiAoRkFJTEVEKGhyKSkKKyAgICAgICAgcmV0dXJuIGhyOworICAgIHNldHRpbmdz
LT5zZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShlbmFibGVkKTsKKworICAgIGhy
ID0gcHJlZnNQcml2YXRlLT5tZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKCZlbmFibGVkKTsKKyAg
ICBpZiAoRkFJTEVEKGhyKSkKKyAgICAgICAgcmV0dXJuIGhyOworICAgIHNldHRpbmdzLT5zZXRN
ZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKGVuYWJsZWQpOworCiAgICAgcmV0dXJuIFNfT0s7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwppbmRleCBhOWVhMmIyYmU2ZjViNDdmZDcyOGYzMDI2MTdmZTRmOGUwYmE2Njdl
Li5hMzI4NzczZDhkZjU1NjhjNmQwOGM4NTc4OTY5NzMwYTQ0MDZmMTczIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMTEtMDctMTggIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0
MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMgZm9yIG1lZGlhIHBsYXliYWNrIHJlcXVp
cmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxheWJhY2sKKworICAgICAgICBSZXZpZXdl
ZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgVHdvIG5ldyBXZWJQcmVmZXJlbmNlczogTWVk
aWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgYW5kCisgICAgICAgIE1lZGlhUGxheWJhY2tB
bGxvd3NJbmxpbmUuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdL
UHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAg
IChXS1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAg
ICAgICAoV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAg
ICAoV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBk
YXRlUHJlZmVyZW5jZXMpOgorCiAyMDExLTA3LTE2ICBEYW5pZWwgQmF0ZXMgIDxkYmF0ZXNAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBGaXggV2luIENhaXJvIERlYnVnIGJ1aWxkIGFmdGVyIDxodHRw
Oi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85MTA4NT4uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCAwNWIxNDIwZjNiN2IwMWYwZTNiNmJmN2Mz
YTU0NDlmNjBhNjQ1YWVmLi5mOTZkYmM5MDAwN2E1MTBhZWQ5MDAyMGUyNjY3OThlZWVhZWM0Mzk2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKQEAgLTc2
LDYgKzc2LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgbWFjcm8oQWxsb3dGaWxlQWNjZXNz
RnJvbUZpbGVVUkxzLCBhbGxvd0ZpbGVBY2Nlc3NGcm9tRmlsZVVSTHMsIEJvb2wsIGJvb2wsIGZh
bHNlKSBcCiAgICAgbWFjcm8oQVZGb3VuZGF0aW9uRW5hYmxlZCwgaXNBVkZvdW5kYXRpb25FbmFi
bGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8oSGl4aWU3NldlYlNvY2tldFByb3Rv
Y29sRW5hYmxlZCwgaGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZCwgQm9vbCwgYm9vbCwg
dHJ1ZSkgXAorICAgIG1hY3JvKE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlLCBtZWRp
YVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKKyAgICBt
YWNybyhNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLCBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
LCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJVF9E
T1VCTEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGIwODc2NDAwYTE5OWQ1OTExOTBiYjhlYWY2
Mzc1Y2RiOWJlMjZmNTMuLjQ4MTA0MDRkNzkxZTU1MDY1YjkxNjc5NGEwODQyNWFhZGJhMzVhODAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHAKQEAgLTU3MSwzICs1NzEsMjMgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0SGl4aWU3NldlYlNv
Y2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2UKIHsKICAgICBy
ZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+aGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5h
YmxlZCgpOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCit7
CisgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNl
ckdlc3R1cmUoZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7Cisg
ICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPm1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlKCk7Cit9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxv
d3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKQorewor
ICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUo
ZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxp
bmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdG9JbXBs
KHByZWZlcmVuY2VzUmVmKS0+bWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgpOworfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRl
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUu
aAppbmRleCBmOGU3ZmYzNDVjMmQ2M2ViNzkwNjE1MGZhOWM5NDVhZTBjY2NmMmU1Li43ZTRiNmVm
NDY4MWE2ZGE5NGM0NjU1YjQwNmQ0NDNlY2MyOWRjYmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtMTMyLDYg
KzEzMiwxNCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0RmlsZUFjY2Vzc0Zyb21G
aWxlVVJMc0FsbG93ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcgogV0tfRVhQT1JUIHZvaWQgV0tQcmVm
ZXJlbmNlc1NldEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVy
ZW5jZXNHZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYg
cHJlZmVyZW5jZXNSZWYpOwogCisvLyBEZWZhdWx0cyB0byBmYWxzZS4KK1dLX0VYUE9SVCB2b2lk
IFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOworV0tfRVhQT1JUIGJvb2wgV0tQ
cmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFdLUHJlZmVyZW5j
ZXNSZWYgcHJlZmVyZW5jZXNSZWYpOworCisvLyBEZWZhdWx0cyB0byB0cnVlLgorV0tfRVhQT1JU
IHZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJl
bmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKTsKK1dLX0VYUE9SVCBib29sIFdLUHJl
ZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGRhYjA5OTM2NzNh
Y2VhNjM4ZjQzZTIyOTdiMTIxYjUxMzJkNzY0YTAuLmYxNGI5OTAzMGE3OTE4YjhhNGM0N2YxYmVl
MDY3MzMzNmFjYTk4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAKQEAgLTE2MDIsNiArMTYwMiw4IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRlUHJl
ZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAgc2V0dGluZ3Mt
PnNldFNob3dEZWJ1Z0JvcmRlcnMoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVu
Y2VzS2V5Ojpjb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlS2V5KCkpKTsKICAgICBzZXR0aW5ncy0+
c2V0U2hvd1JlcGFpbnRDb3VudGVyKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5KCkpKTsKICAgICBz
ZXR0aW5ncy0+c2V0V2ViR0xFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVm
ZXJlbmNlc0tleTo6d2ViR0xFbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5ncy0+c2V0TWVkaWFQ
bGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlBy
ZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZUtleSgpKSk7Cisg
ICAgc2V0dGluZ3MtPnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoc3RvcmUuZ2V0Qm9vbFZh
bHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lS2V5
KCkpKTsKIAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBBYnN0cmFjdERhdGFiYXNlOjpzZXRJ
c0F2YWlsYWJsZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmRh
dGFiYXNlc0VuYWJsZWRLZXkoKSkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101241</attachid>
            <date>2011-07-18 17:24:59 -0700</date>
            <delta_ts>2011-07-18 18:58:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64742-20110719102448.patch</filename>
            <type>text/plain</type>
            <size>21353</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTExNjgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNzEwMDllOTE1MzdmYmNl
NTZjYTNiYzUyY2FjNDY1YTI3YWNhM2UxLi5jNWFjNWI2ZDAzNDg2Njg2OTI2YWM3ZDY2NjdiMGZh
NDQ0M2I3OWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDctMTggIERlYW4g
SmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMg
Zm9yIG1lZGlhIHBsYXliYWNrIHJlcXVpcmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxh
eWJhY2sKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgTWVk
aWEgcGxheWJhY2sgYWxyZWFkeSB0ZXN0ZWQgaWYgaXQgc2hvdWxkIHJlcXVpcmUgdXNlciBnZXN0
dXJlcywgYnV0CisgICAgICAgIG5vIHNldHRpbmcgd2FzIGV2ZXIgZXhwb3NlZCB0byBjbGllbnRz
LiBBbHNvLCBzb21lIHBvcnRzIG9ubHkgYWxsb3cgbWVkaWEKKyAgICAgICAgcGxheWJhY2sgdG8g
YmUgZnVsbHNjcmVlbiwgc28gZXhwb3NpbmcgYSBuZXcgc2V0dGluZyBmb3IgdGhlbS4KKworICAg
ICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogRXhhbWluZSB0aGUgbmV3IFNldHRpbmcK
KyAgICAgICAgZm9yIHVzZXIgZ2VzdHVyZXMuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAqIHBhZ2Uv
U2V0dGluZ3MuaDogVHdvIG5ldyBzZXR0aW5ncy4KKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdz
OjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAgIChXZWJDb3Jl
OjpTZXR0aW5nczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAgICAgICAo
V2ViQ29yZTo6U2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAg
ICAoV2ViQ29yZTo6U2V0dGluZ3M6Om1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorCiAyMDEx
LTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCBjb2RlIHRvIGF0dGVtcHQgdG8gYWxpZ24gY29tcG9zaXRpbmcgbGF5ZXJzIHRvIHBpeGVs
IGJvdW5kYXJpZXMgd2hlbiBwYWdlIHNjYWxlIGNoYW5nZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDkxNTE2ZDkxMTc2MGQ1MmJiN2IxZDFlZjMzOTc3NjA5
YWRlNjAwMTIuLjA0YzYwODk1NWMxZmZmZjJmZGJmZmU2MjBjYjJhMWFlZGFiMGU5MTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTg0LDYgKzE4NCw5IEBA
IEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtCiAgICAgZG9jdW1lbnQtPnJlZ2lzdGVyRm9yRG9jdW1l
bnRBY3RpdmF0aW9uQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvck1l
ZGlhVm9sdW1lQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvclByaXZh
dGVCcm93c2luZ1N0YXRlQ2hhbmdlZENhbGxiYWNrcyh0aGlzKTsKKyAgICAKKyAgICBpZiAoZG9j
dW1lbnQtPnNldHRpbmdzKCkgJiYgZG9jdW1lbnQtPnNldHRpbmdzKCktPm1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKCkpCisgICAgICAgIG1fcmVzdHJpY3Rpb25zIHw9IFJlcXVpcmVV
c2VyR2VzdHVyZUZvclJhdGVDaGFuZ2VSZXN0cmljdGlvbjsKIH0KIAogSFRNTE1lZGlhRWxlbWVu
dDo6fkhUTUxNZWRpYUVsZW1lbnQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAppbmRleCBhYzAw
MTU2OTliMjNhMmJiMWM3ZDBkZWEyNzBmNTUzYWQxZmRiNDRjLi5iMGUxYzk3MDQxY2YyODQ5YWUy
ODQzOWRhYjM4ZDRiZjYwOTgwYTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcApAQCAtMjA1
LDYgKzIwNSw4IEBAIFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdlKQogI2lmIEVOQUJMRShX
RUJfU09DS0VUUykKICAgICAsIG1fdXNlSGl4aWU3NldlYlNvY2tldFByb3RvY29sKHRydWUpCiAj
ZW5kaWYKKyAgICAsIG1fbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZmFsc2UpCisg
ICAgLCBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUodHJ1ZSkKICAgICAsIG1fbG9hZHNJbWFn
ZXNBdXRvbWF0aWNhbGx5VGltZXIodGhpcywgJlNldHRpbmdzOjpsb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHlUaW1lckZpcmVkKQogewogICAgIC8vIEEgRnJhbWUgbWF5IG5vdCBoYXZlIGJlZW4gY3Jl
YXRlZCB5ZXQsIHNvIHdlIGluaXRpYWxpemUgdGhlIEF0b21pY1N0cmluZyAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAppbmRleCAzZGMyN2Y0ZGM5MGE5MTg4YWJiNWE2YmQ0NjNkOGMyNTZhYTU5N2JjLi5m
MDkyZDczMDkwZGNmZTYwY2M5ZWQzNWM0NTk0ODBmYWNkNGRhZjUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5oCkBAIC00MzIsNiArNDMyLDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
Ym9vbCB1c2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woKSB7IHJldHVybiBtX3VzZUhpeGllNzZX
ZWJTb2NrZXRQcm90b2NvbDsgfQogI2VuZGlmCiAKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sIGZsYWcpIHsgbV9tZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZSA9IGZsYWc7IH07CisgICAgICAgIGJvb2wgbWVkaWFQbGF5YmFja1JlcXVp
cmVzVXNlckdlc3R1cmUoKSBjb25zdCB7IHJldHVybiBtX21lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlOyB9CisKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
KGJvb2wgZmxhZykgeyBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUgPSBmbGFnOyB9OworICAg
ICAgICBib29sIG1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoKSBjb25zdCB7IHJldHVybiBtX21l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIFBhZ2Uq
IG1fcGFnZTsKIApAQCAtNTQ0LDYgKzU1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBF
TkFCTEUoV0VCX1NPQ0tFVFMpCiAgICAgICAgIGJvb2wgbV91c2VIaXhpZTc2V2ViU29ja2V0UHJv
dG9jb2wgOiAxOwogI2VuZGlmCisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZSA6IDE7CisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
IDogMTsKIAogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2Fs
bHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lckZpcmVk
KFRpbWVyPFNldHRpbmdzPiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDE5ZGM3OWU3MjkyZTNlYzRj
ZGZlMDIyYjg5YjdlZjBjZWU3NjRjMjEuLmY2MDI0ZjMzNTJiNTUxODZjNzUyYTE3YmY2YmU1YTM0
OWM0ZjkwYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0wNy0xOCAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0NzQyCisgICAgICAgIEV4cG9zZSBXZWJQcmVmZXJl
bmNlcyBmb3IgbWVkaWEgcGxheWJhY2sgcmVxdWlyaW5nIHVzZXIgZ2VzdHVyZXMgYW5kIGlubGlu
ZSBwbGF5YmFjaworCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAg
ICBUd28gbmV3IFdlYlByZWZlcmVuY2VzOiBNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZSBhbmQKKyAgICAgICAgTWVkaWFQbGF5YmFja0FsbG93c0lubGluZS4KKworICAgICAgICAqIFdl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmg6CisgICAgICAgICogV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbToKKyAgICAgICAgKCtbV2ViUHJlZmVyZW5jZXMgaW5pdGlhbGl6ZV0pOgor
ICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZTpdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgbWVkaWFQbGF5YmFja0Fs
bG93c0lubGluZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lOl0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
Lmg6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMTEtMDctMTUgIFByYXRpayBTb2xhbmtpICA8cHNv
bGFua2lAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnQgb2YgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTYzNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCAwMDY3NmEzNmI2MjBjN2MxYmM3
ZWJkMzc2NmNiOTAzYTBmZmNiODRkLi5mOGE0MjZjZjNmMGFlZWEzYjQ3ZDA1MGQxMzVlMmY5MzY2
NDQzYTI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VLZXlzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZUtleXNQcml2YXRlLmgKQEAgLTEwOCw2ICsxMDgsOCBAQAogI2RlZmluZSBXZWJLaXRIeXBl
cmxpbmtBdWRpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0SHlwZXJsaW5rQXVkaXRp
bmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRBVkZvdW5kYXRpb25FbmFibGVkS2V5IEAiV2ViS2l0
QVZGb3VuZGF0aW9uRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0SGl4aWU3NldlYlNvY2tldFByb3Rv
Y29sRW5hYmxlZEtleSBAIldlYktpdEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisj
ZGVmaW5lIFdlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtl
eSBAIldlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIgorI2RlZmluZSBXZWJL
aXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSBAIldlYktpdE1lZGlhUGxh
eWJhY2tBbGxvd3NJbmxpbmUiCiAKIC8vIFRoZXNlIGFyZSBwcml2YXRlIGJvdGggYmVjYXVzZSBj
YWxsZXJzIHNob3VsZCBiZSB1c2luZyB0aGUgY292ZXIgbWV0aG9kcyBhbmQgYmVjYXVzZSB0aGUK
IC8vIGNvdmVyIG1ldGhvZHMgdGhlbXNlbHZlcyBhcmUgcHJpdmF0ZS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IGE2ZjFlNGI4ZGY0MGNlOWM1Mzc2
ZmYwNTg4Njg0ZjlhOGJkNjhkNzAuLmI1ZTUxN2FjNGE3ZmUxNWU0YjZkNzhhZjM4MDBlNjQ2ODBh
YzE0MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5j
ZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpA
QCAtMzc3LDYgKzM3Nyw5IEBAIHN0YXRpYyBXZWJDYWNoZU1vZGVsIGNhY2hlTW9kZWxGb3JNYWlu
QnVuZGxlKHZvaWQpCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2Vi
S2l0VXNlUHJlSFRNTDVQYXJzZXJRdWlya3NLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCAgV2ViS2l0QVZGb3VuZGF0aW9uRW5hYmxlZEtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9j
b2xFbmFibGVkS2V5LAorICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdl
YktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleSwKKyAgICAg
ICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lUHJlZmVyZW5jZUtleSwKKwogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aExv
bmdMb25nOldlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpub1F1b3RhKCldLCBXZWJL
aXRBcHBsaWNhdGlvbkNhY2hlVG90YWxRdW90YSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldp
dGhMb25nTG9uZzpXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bm9RdW90YSgpXSwg
V2ViS2l0QXBwbGljYXRpb25DYWNoZURlZmF1bHRPcmlnaW5RdW90YSwKICAgICAgICAgbmlsXTsK
QEAgLTE0ODMsNiArMTQ4NiwyNiBAQCBzdGF0aWMgTlNTdHJpbmcgKmNsYXNzSUJDcmVhdG9ySUQg
PSBuaWw7CiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0SGl4aWU3
NldlYlNvY2tldFByb3RvY29sRW5hYmxlZEtleV07CiB9CisKKy0gKEJPT0wpbWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUKK3sKKyAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktl
eTpXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXldOwor
fQorCistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZs
YWcKK3sKKyAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleV07Cit9CisKKy0gKEJPT0wpbWVk
aWFQbGF5YmFja0FsbG93c0lubGluZQoreworICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9y
S2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KKwor
LSAodm9pZClzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOihCT09MKWZsYWcKK3sKKyAgICBb
c2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJ
bmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlByZWZl
cmVuY2VzIChXZWJJbnRlcm5hbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IGU1YjZlYzU2OGVlNThkMmQ1YTU2NmQ3NWIzOTk1
ODY2MzQ4MzdkNDQuLjlmMGRlZTY0NDY5N2JiZjRmOWE4YTFmNjFjMjMxYzg3ZGI2MWE3OGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUu
aApAQCAtMjEwLDYgKzIxMCwxMiBAQCBleHRlcm4gTlNTdHJpbmcgKldlYlByZWZlcmVuY2VzQ2hh
bmdlZEludGVybmFsTm90aWZpY2F0aW9uOwogLSAoQk9PTCloeXBlcmxpbmtBdWRpdGluZ0VuYWJs
ZWQ7CiAtICh2b2lkKXNldEh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZDooQk9PTCllbmFibGVkOwog
CistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZsYWc7
CistIChCT09MKW1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOworCistICh2b2lkKXNl
dE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU6KEJPT0wpZmxhZzsKKy0gKEJPT0wpbWVkaWFQbGF5
YmFja0FsbG93c0lubGluZTsKKwogLy8gT3RoZXIgcHJpdmF0ZSBtZXRob2RzCiAtICh2b2lkKV9w
b3N0UHJlZmVyZW5jZXNDaGFuZ2VkTm90aWZpY2F0aW9uOwogLSAodm9pZClfcG9zdFByZWZlcmVu
Y2VzQ2hhbmdlZEFQSU5vdGlmaWNhdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5t
bQppbmRleCBiMDllNTM0YzFhMWIxN2M4YzIxNTA5NGI0YTNkNmQ5NTVmOTNmNTU4Li5hNThmZDdh
NTk5NDA3YjQ5MDEyODE4NTZmZjA4ZDIzZjFhMDVkMzdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCkBAIC0xNTkzLDYgKzE1OTMsOCBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZS
ZXRhaW5XaGlsZUxvYWRpbmdRdWlyaygpCiAjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQogICAgIHNl
dHRpbmdzLT5zZXRVc2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woW3ByZWZlcmVuY2VzIGlzSGl4
aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZF0pOwogI2VuZGlmCisgICAgc2V0dGluZ3MtPnNl
dE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZV0pOworICAgIHNldHRpbmdzLT5zZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lXSk7CiAK
ICAgICAvLyBBcHBsaWNhdGlvbiBDYWNoZSBQcmVmZXJlbmNlcyBhcmUgc3RvcmVkIG9uIHRoZSBn
bG9iYWwgY2FjaGUgc3RvcmFnZSBtYW5hZ2VyLCBub3QgaW4gU2V0dGluZ3MuCiAgICAgW1dlYkFw
cGxpY2F0aW9uQ2FjaGUgc2V0RGVmYXVsdE9yaWdpblF1b3RhOltwcmVmZXJlbmNlcyBhcHBsaWNh
dGlvbkNhY2hlRGVmYXVsdE9yaWdpblF1b3RhXV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggYjZlZmNi
YmExYjg1ZTRiNTY3ODVjOTFkZDQ5NDI4OTJmNjgzOWE1MS4uNGYyNmFmZjZmMzZmZDNhZTA3NDgy
N2JhOGRhZDcxNjVjYzZiYTIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisy
MDExLTA3LTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ3NDIKKyAgICAgICAgRXhwb3Nl
IFdlYlByZWZlcmVuY2VzIGZvciBtZWRpYSBwbGF5YmFjayByZXF1aXJpbmcgdXNlciBnZXN0dXJl
cyBhbmQgaW5saW5lIHBsYXliYWNrCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2Vy
LgorCisgICAgICAgIFR3byBuZXcgV2ViUHJlZmVyZW5jZXM6IE1lZGlhUGxheWJhY2tSZXF1aXJl
c1VzZXJHZXN0dXJlIGFuZAorICAgICAgICBNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLgorCisg
ICAgICAgICogSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbDoKKyAgICAgICAg
KiBXZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0aW5ncyk6
CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUpOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXM6Om1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjptZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lKToKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5oOgorICAgICAgICAqIFdlYlZpZXcu
Y3BwOgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKToKKwogMjAx
MS0wNy0xNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBBZGQgY29kZSB0byBhdHRlbXB0IHRvIGFsaWduIGNvbXBvc2l0aW5nIGxheWVycyB0byBwaXhl
bCBib3VuZGFyaWVzIHdoZW4gcGFnZSBzY2FsZSBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsIGIvU291cmNl
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbAppbmRleCBj
ODM3OTcwZmE0YzMzNmQ5N2QxOTI3Y2Y5YWU1ZWE3MGNkMWVlZWMxLi5lOTVjMjNjNzQ5NGE0NTVh
MTNjM2Q4YTA3MGMyMzNmNjZlMzc1MDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9J
bnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0ludGVyZmFjZXMvSVdlYlByZWZlcmVuY2VzUHJpdmF0ZS5pZGwKQEAgLTEzMCw0ICsxMzAs
MTAgQEAgaW50ZXJmYWNlIElXZWJQcmVmZXJlbmNlc1ByaXZhdGUgOiBJVW5rbm93bgogCiAgICAg
SFJFU1VMVCBzZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFtpbl0gQk9PTCBlbmFi
bGVkKTsKICAgICBIUkVTVUxUIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoW291dCwg
cmV0dmFsXSBCT09MKiBlbmFibGVkKTsKKworICAgIEhSRVNVTFQgc2V0TWVkaWFQbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUoW2luXSBCT09MKTsKKyAgICBIUkVTVUxUIG1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKFtvdXQsIHJldHZhbF0gQk9PTCopOworCisgICAgSFJFU1VMVCBz
ZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFtpbl0gQk9PTCk7CisgICAgSFJFU1VMVCBtZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lKFtvdXQsIHJldHZhbF0gQk9PTCopOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCA3MjJjMzNmY2ZkZDA2
ODMyZTcwZDAyMTlkZDVlMjE0NWZkOThjYWIwLi44NzIwMjhiNmI5MDA2ZmNmMTA2OGI0NzI1ZDNm
MjM0ZTMwYjVjNGFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNl
S2V5c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1By
aXZhdGUuaApAQCAtMTU0LDMgKzE1NCw4IEBACiAjZGVmaW5lIFdlYktpdEZ1bGxTY3JlZW5FbmFi
bGVkUHJlZmVyZW5jZUtleSAiV2ViS2l0RnVsbFNjcmVlbkVuYWJsZWQiCiAKICNkZWZpbmUgV2Vi
S2l0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZFByZWZlcmVuY2VLZXkgIldlYktpdEhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5IEAiV2ViS2l0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUiCisKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5YmFja0FsbG93
c0lubGluZVByZWZlcmVuY2VLZXkgQCJXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lIgor
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKaW5kZXggZjJhMmZlYWFhOGRiNDcyNjc3
Y2U4NDlhNzVjMjE2M2JjY2Q1ZTQ1ZS4uNGZhNWYyZDY5NjNkYjE0YmVmMmE5ZGU3NjgwNDUwMDhm
ZTZlNWEzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcApAQCAtMjY4LDYgKzI2
OCw5IEBAIHZvaWQgV2ViUHJlZmVyZW5jZXM6OmluaXRpYWxpemVEZWZhdWx0U2V0dGluZ3MoKQog
ICAgIENGRGljdGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRIeXBlcmxpbmtB
dWRpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhblRydWUpOwogICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJv
dG9jb2xFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKIAorICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuRmFsc2UpOworICAgIENGRGlj
dGlvbmFyeUFkZFZhbHVlKGRlZmF1bHRzLCBDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKKwogICAgIGRlZmF1bHRTZXR0
aW5ncyA9IGRlZmF1bHRzOwogfQogCkBAIC05NTcsNiArOTYwLDM0IEBAIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgV2ViUHJlZmVyZW5jZXM6OmhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJs
ZWQoCiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKK0hSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2Vi
UHJlZmVyZW5jZXM6OnNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKAorICAgIC8q
IFtpbl0gKi8gQk9PTCBlbmFibGVkKQoreworICAgIHNldEJvb2xWYWx1ZShDRlNUUihXZWJLaXRN
ZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXkpLCBlbmFibGVkKTsK
KyAgICByZXR1cm4gU19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVm
ZXJlbmNlczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoCisgICAgLyogW3JldHZh
bF1bb3V0XSAqLyBCT09MKiBlbmFibGVkKQoreworICAgICplbmFibGVkID0gYm9vbFZhbHVlRm9y
S2V5KENGU1RSKFdlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5j
ZUtleSkpOworICAgIHJldHVybiBTX09LOworfQorCitIUkVTVUxUIFNURE1FVEhPRENBTExUWVBF
IFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKAorICAgIC8qIFtp
bl0gKi8gQk9PTCBlbmFibGVkKQoreworICAgIHNldEJvb2xWYWx1ZShDRlNUUihXZWJLaXRNZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSksIGVuYWJsZWQpOworICAgIHJldHVy
biBTX09LOworfQorCitIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpt
ZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKAorICAgIC8qIFtyZXR2YWxdW291dF0gKi8gQk9PTCog
ZW5hYmxlZCkKK3sKKyAgICAqZW5hYmxlZCA9IGJvb2xWYWx1ZUZvcktleShDRlNUUihXZWJLaXRN
ZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSkpOworICAgIHJldHVybiBTX09L
OworfQorCiBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpzZXRBdXRv
c2F2ZXMoIAogICAgIC8qIFtpbl0gKi8gQk9PTCBlbmFibGVkKQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYlBy
ZWZlcmVuY2VzLmgKaW5kZXggZmExNTAxNDY2YjE1ZGUxODc0NjQyMDg2ZTRjZjJkOTUwNWFmODgw
OC4uOWNiYzIzMDk2NTQ2MzVkYWM4MDk0OGRjMDE5ZTg3YzMwZWNmZmExYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJQcmVmZXJlbmNlcy5oCkBAIC00MzgsNiArNDM4LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgaGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5h
YmxlZChCT09MKik7CiAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNldEhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoQk9PTCk7CiAKKyAgICB2aXJ0dWFsIEhSRVNV
TFQgU1RETUVUSE9EQ0FMTFRZUEUgbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoQk9P
TCopOworICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBzZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZShCT09MKTsKKworICAgIHZpcnR1YWwgSFJFU1VMVCBTVERN
RVRIT0RDQUxMVFlQRSBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKEJPT0wqKTsKKyAgICB2aXJ0
dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgc2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGlu
ZShCT09MKTsKKwogICAgIC8vIFdlYlByZWZlcmVuY2VzCiAKICAgICAvLyBUaGlzIG1ldGhvZCBh
Y2Nlc3NlcyBhIGRpZmZlcmVudCBwcmVmZXJlbmNlIGtleSB0aGFuIGRldmVsb3BlckV4dHJhc0Vu
YWJsZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCmluZGV4IGNiNTFhNWFhNzA1NGFjZGZkYjcyMWY3Yjkx
NjkwYmY4M2RiNTNhOTYuLmZhNzU4NzRiZGM0MzY4ZTA3ZWRkZGQ3ZjVmNGJmZDdhOTVmNjNkZGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvd2luL1dlYlZpZXcuY3BwCkBAIC00ODcwLDYgKzQ4NzAsMTYgQEAgSFJFU1VMVCBXZWJW
aWV3Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQoSVdlYk5vdGlmaWNhdGlvbiogbm90aWZpY2F0
aW9uKQogICAgIHNldHRpbmdzLT5zZXRGdWxsU2NyZWVuRW5hYmxlZChlbmFibGVkKTsKICNlbmRp
ZgogCisgICAgaHIgPSBwcmVmc1ByaXZhdGUtPm1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0
dXJlKCZlbmFibGVkKTsKKyAgICBpZiAoRkFJTEVEKGhyKSkKKyAgICAgICAgcmV0dXJuIGhyOwor
ICAgIHNldHRpbmdzLT5zZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShlbmFibGVk
KTsKKworICAgIGhyID0gcHJlZnNQcml2YXRlLT5tZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKCZl
bmFibGVkKTsKKyAgICBpZiAoRkFJTEVEKGhyKSkKKyAgICAgICAgcmV0dXJuIGhyOworICAgIHNl
dHRpbmdzLT5zZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKGVuYWJsZWQpOworCiAgICAgcmV0
dXJuIFNfT0s7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBhOWVhMmIyYmU2ZjViNDdmZDcyOGYzMDI2MTdm
ZTRmOGUwYmE2NjdlLi5hMzI4NzczZDhkZjU1NjhjNmQwOGM4NTc4OTY5NzMwYTQ0MDZmMTczIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDctMTggIERlYW4gSmFja3NvbiAgPGRp
bm9AYXBwbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02NDc0MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMgZm9yIG1lZGlhIHBs
YXliYWNrIHJlcXVpcmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxheWJhY2sKKworICAg
ICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgVHdvIG5ldyBXZWJQcmVm
ZXJlbmNlczogTWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgYW5kCisgICAgICAgIE1l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoK
KyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZSk6CisgICAgICAgIChXS1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxp
bmUpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCiAyMDExLTA3LTE2ICBEYW5pZWwgQmF0ZXMg
IDxkYmF0ZXNAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggV2luIENhaXJvIERlYnVnIGJ1aWxk
IGFmdGVyIDxodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85MTA4NT4uCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCAwNWIxNDIwZjNiN2Iw
MWYwZTNiNmJmN2MzYTU0NDlmNjBhNjQ1YWVmLi5mOTZkYmM5MDAwN2E1MTBhZWQ5MDAyMGUyNjY3
OThlZWVhZWM0Mzk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVy
ZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0
b3JlLmgKQEAgLTc2LDYgKzc2LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgbWFjcm8oQWxs
b3dGaWxlQWNjZXNzRnJvbUZpbGVVUkxzLCBhbGxvd0ZpbGVBY2Nlc3NGcm9tRmlsZVVSTHMsIEJv
b2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oQVZGb3VuZGF0aW9uRW5hYmxlZCwgaXNBVkZv
dW5kYXRpb25FbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8oSGl4aWU3Nldl
YlNvY2tldFByb3RvY29sRW5hYmxlZCwgaGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZCwg
Qm9vbCwgYm9vbCwgdHJ1ZSkgXAorICAgIG1hY3JvKE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJH
ZXN0dXJlLCBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSwgQm9vbCwgYm9vbCwgZmFs
c2UpIFwKKyAgICBtYWNybyhNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLCBtZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9F
QUNIX1dFQktJVF9ET1VCTEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGIwODc2NDAwYTE5OWQ1
OTExOTBiYjhlYWY2Mzc1Y2RiOWJlMjZmNTMuLjQ4MTA0MDRkNzkxZTU1MDY1YjkxNjc5NGEwODQy
NWFhZGJhMzVhODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9X
S1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAKQEAgLTU3MSwzICs1NzEsMjMgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0
SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVu
Y2UKIHsKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+aGl4aWU3NldlYlNvY2tl
dFByb3RvY29sRW5hYmxlZCgpOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBi
b29sIGZsYWcpCit7CisgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUoZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1l
ZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5j
ZXNSZWYpCit7CisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPm1lZGlhUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlKCk7Cit9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlh
UGxheWJhY2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBmbGFnKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldE1lZGlhUGxheWJhY2tB
bGxvd3NJbmxpbmUoZmxhZyk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJh
Y2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICBy
ZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+bWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgp
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlc1ByaXZhdGUuaAppbmRleCBmOGU3ZmYzNDVjMmQ2M2ViNzkwNjE1MGZhOWM5NDVhZTBjY2Nm
MmU1Li43ZTRiNmVmNDY4MWE2ZGE5NGM0NjU1YjQwNmQ0NDNlY2MyOWRjYmVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUu
aApAQCAtMTMyLDYgKzEzMiwxNCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0Rmls
ZUFjY2Vzc0Zyb21GaWxlVVJMc0FsbG93ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcgogV0tfRVhQT1JU
IHZvaWQgV0tQcmVmZXJlbmNlc1NldEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKTsKIFdLX0VYUE9SVCBi
b29sIFdLUHJlZmVyZW5jZXNHZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwogCisvLyBEZWZhdWx0cyB0byBmYWxzZS4KK1dL
X0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2Vz
dHVyZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOworV0tfRVhQ
T1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJl
KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOworCisvLyBEZWZhdWx0cyB0byB0cnVl
LgorV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxp
bmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKTsKK1dLX0VYUE9S
VCBib29sIFdLUHJlZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4
IGRhYjA5OTM2NzNhY2VhNjM4ZjQzZTIyOTdiMTIxYjUxMzJkNzY0YTAuLmYxNGI5OTAzMGE3OTE4
YjhhNGM0N2YxYmVlMDY3MzMzNmFjYTk4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTE2MDIsNiArMTYwMiw4IEBAIHZvaWQgV2ViUGFn
ZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAg
ICAgc2V0dGluZ3MtPnNldFNob3dEZWJ1Z0JvcmRlcnMoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5
KFdlYlByZWZlcmVuY2VzS2V5Ojpjb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlS2V5KCkpKTsKICAg
ICBzZXR0aW5ncy0+c2V0U2hvd1JlcGFpbnRDb3VudGVyKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktl
eShXZWJQcmVmZXJlbmNlc0tleTo6Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5
KCkpKTsKICAgICBzZXR0aW5ncy0+c2V0V2ViR0xFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZv
cktleShXZWJQcmVmZXJlbmNlc0tleTo6d2ViR0xFbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5n
cy0+c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoc3RvcmUuZ2V0Qm9vbFZhbHVl
Rm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZUtleSgpKSk7CisgICAgc2V0dGluZ3MtPnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoc3Rv
cmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjptZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lS2V5KCkpKTsKIAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBBYnN0cmFjdERh
dGFiYXNlOjpzZXRJc0F2YWlsYWJsZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVy
ZW5jZXNLZXk6OmRhdGFiYXNlc0VuYWJsZWRLZXkoKSkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101244</attachid>
            <date>2011-07-18 17:46:06 -0700</date>
            <delta_ts>2011-07-18 17:46:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64742-20110719104554.patch</filename>
            <type>text/plain</type>
            <size>21351</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTExNjgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNzEwMDllOTE1MzdmYmNl
NTZjYTNiYzUyY2FjNDY1YTI3YWNhM2UxLi5jNWFjNWI2ZDAzNDg2Njg2OTI2YWM3ZDY2NjdiMGZh
NDQ0M2I3OWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDctMTggIERlYW4g
SmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02NDc0MgorICAgICAgICBFeHBvc2UgV2ViUHJlZmVyZW5jZXMg
Zm9yIG1lZGlhIHBsYXliYWNrIHJlcXVpcmluZyB1c2VyIGdlc3R1cmVzIGFuZCBpbmxpbmUgcGxh
eWJhY2sKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgTWVk
aWEgcGxheWJhY2sgYWxyZWFkeSB0ZXN0ZWQgaWYgaXQgc2hvdWxkIHJlcXVpcmUgdXNlciBnZXN0
dXJlcywgYnV0CisgICAgICAgIG5vIHNldHRpbmcgd2FzIGV2ZXIgZXhwb3NlZCB0byBjbGllbnRz
LiBBbHNvLCBzb21lIHBvcnRzIG9ubHkgYWxsb3cgbWVkaWEKKyAgICAgICAgcGxheWJhY2sgdG8g
YmUgZnVsbHNjcmVlbiwgc28gZXhwb3NpbmcgYSBuZXcgc2V0dGluZyBmb3IgdGhlbS4KKworICAg
ICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogRXhhbWluZSB0aGUgbmV3IFNldHRpbmcK
KyAgICAgICAgZm9yIHVzZXIgZ2VzdHVyZXMuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAqIHBhZ2Uv
U2V0dGluZ3MuaDogVHdvIG5ldyBzZXR0aW5ncy4KKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdz
OjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSk6CisgICAgICAgIChXZWJDb3Jl
OjpTZXR0aW5nczo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOgorICAgICAgICAo
V2ViQ29yZTo6U2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorICAgICAg
ICAoV2ViQ29yZTo6U2V0dGluZ3M6Om1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUpOgorCiAyMDEx
LTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCBjb2RlIHRvIGF0dGVtcHQgdG8gYWxpZ24gY29tcG9zaXRpbmcgbGF5ZXJzIHRvIHBpeGVs
IGJvdW5kYXJpZXMgd2hlbiBwYWdlIHNjYWxlIGNoYW5nZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDkxNTE2ZDkxMTc2MGQ1MmJiN2IxZDFlZjMzOTc3NjA5
YWRlNjAwMTIuLjA0YzYwODk1NWMxZmZmZjJmZGJmZmU2MjBjYjJhMWFlZGFiMGU5MTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTg0LDYgKzE4NCw5IEBA
IEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtCiAgICAgZG9jdW1lbnQtPnJlZ2lzdGVyRm9yRG9jdW1l
bnRBY3RpdmF0aW9uQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvck1l
ZGlhVm9sdW1lQ2FsbGJhY2tzKHRoaXMpOwogICAgIGRvY3VtZW50LT5yZWdpc3RlckZvclByaXZh
dGVCcm93c2luZ1N0YXRlQ2hhbmdlZENhbGxiYWNrcyh0aGlzKTsKKyAgICAKKyAgICBpZiAoZG9j
dW1lbnQtPnNldHRpbmdzKCkgJiYgZG9jdW1lbnQtPnNldHRpbmdzKCktPm1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKCkpCisgICAgICAgIG1fcmVzdHJpY3Rpb25zIHw9IFJlcXVpcmVV
c2VyR2VzdHVyZUZvclJhdGVDaGFuZ2VSZXN0cmljdGlvbjsKIH0KIAogSFRNTE1lZGlhRWxlbWVu
dDo6fkhUTUxNZWRpYUVsZW1lbnQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAppbmRleCBhYzAw
MTU2OTliMjNhMmJiMWM3ZDBkZWEyNzBmNTUzYWQxZmRiNDRjLi5iMGUxYzk3MDQxY2YyODQ5YWUy
ODQzOWRhYjM4ZDRiZjYwOTgwYTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcApAQCAtMjA1
LDYgKzIwNSw4IEBAIFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdlKQogI2lmIEVOQUJMRShX
RUJfU09DS0VUUykKICAgICAsIG1fdXNlSGl4aWU3NldlYlNvY2tldFByb3RvY29sKHRydWUpCiAj
ZW5kaWYKKyAgICAsIG1fbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZmFsc2UpCisg
ICAgLCBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUodHJ1ZSkKICAgICAsIG1fbG9hZHNJbWFn
ZXNBdXRvbWF0aWNhbGx5VGltZXIodGhpcywgJlNldHRpbmdzOjpsb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHlUaW1lckZpcmVkKQogewogICAgIC8vIEEgRnJhbWUgbWF5IG5vdCBoYXZlIGJlZW4gY3Jl
YXRlZCB5ZXQsIHNvIHdlIGluaXRpYWxpemUgdGhlIEF0b21pY1N0cmluZyAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAppbmRleCAzZGMyN2Y0ZGM5MGE5MTg4YWJiNWE2YmQ0NjNkOGMyNTZhYTU5N2JjLi5m
MDkyZDczMDkwZGNmZTYwY2M5ZWQzNWM0NTk0ODBmYWNkNGRhZjUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5oCkBAIC00MzIsNiArNDMyLDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
Ym9vbCB1c2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woKSB7IHJldHVybiBtX3VzZUhpeGllNzZX
ZWJTb2NrZXRQcm90b2NvbDsgfQogI2VuZGlmCiAKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sIGZsYWcpIHsgbV9tZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZSA9IGZsYWc7IH07CisgICAgICAgIGJvb2wgbWVkaWFQbGF5YmFja1JlcXVp
cmVzVXNlckdlc3R1cmUoKSBjb25zdCB7IHJldHVybiBtX21lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlOyB9CisKKyAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
KGJvb2wgZmxhZykgeyBtX21lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUgPSBmbGFnOyB9OworICAg
ICAgICBib29sIG1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoKSBjb25zdCB7IHJldHVybiBtX21l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIFBhZ2Uq
IG1fcGFnZTsKIApAQCAtNTQ0LDYgKzU1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBF
TkFCTEUoV0VCX1NPQ0tFVFMpCiAgICAgICAgIGJvb2wgbV91c2VIaXhpZTc2V2ViU29ja2V0UHJv
dG9jb2wgOiAxOwogI2VuZGlmCisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZSA6IDE7CisgICAgICAgIGJvb2wgbV9tZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
IDogMTsKIAogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2Fs
bHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lckZpcmVk
KFRpbWVyPFNldHRpbmdzPiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDE5ZGM3OWU3MjkyZTNlYzRj
ZGZlMDIyYjg5YjdlZjBjZWU3NjRjMjEuLmY2MDI0ZjMzNTJiNTUxODZjNzUyYTE3YmY2YmU1YTM0
OWM0ZjkwYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0wNy0xOCAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0NzQyCisgICAgICAgIEV4cG9zZSBXZWJQcmVmZXJl
bmNlcyBmb3IgbWVkaWEgcGxheWJhY2sgcmVxdWlyaW5nIHVzZXIgZ2VzdHVyZXMgYW5kIGlubGlu
ZSBwbGF5YmFjaworCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAg
ICBUd28gbmV3IFdlYlByZWZlcmVuY2VzOiBNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZSBhbmQKKyAgICAgICAgTWVkaWFQbGF5YmFja0FsbG93c0lubGluZS4KKworICAgICAgICAqIFdl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmg6CisgICAgICAgICogV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbToKKyAgICAgICAgKCtbV2ViUHJlZmVyZW5jZXMgaW5pdGlhbGl6ZV0pOgor
ICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNV
c2VyR2VzdHVyZTpdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgbWVkaWFQbGF5YmFja0Fs
bG93c0lubGluZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lOl0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
Lmg6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMTEtMDctMTUgIFByYXRpayBTb2xhbmtpICA8cHNv
bGFua2lAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnQgb2YgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTYzNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCAwMDY3NmEzNmI2MjBjN2MxYmM3
ZWJkMzc2NmNiOTAzYTBmZmNiODRkLi5mOGE0MjZjZjNmMGFlZWEzYjQ3ZDA1MGQxMzVlMmY5MzY2
NDQzYTI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VLZXlzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZUtleXNQcml2YXRlLmgKQEAgLTEwOCw2ICsxMDgsOCBAQAogI2RlZmluZSBXZWJLaXRIeXBl
cmxpbmtBdWRpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0SHlwZXJsaW5rQXVkaXRp
bmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRBVkZvdW5kYXRpb25FbmFibGVkS2V5IEAiV2ViS2l0
QVZGb3VuZGF0aW9uRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0SGl4aWU3NldlYlNvY2tldFByb3Rv
Y29sRW5hYmxlZEtleSBAIldlYktpdEhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisj
ZGVmaW5lIFdlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtl
eSBAIldlYktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIgorI2RlZmluZSBXZWJL
aXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lUHJlZmVyZW5jZUtleSBAIldlYktpdE1lZGlhUGxh
eWJhY2tBbGxvd3NJbmxpbmUiCiAKIC8vIFRoZXNlIGFyZSBwcml2YXRlIGJvdGggYmVjYXVzZSBj
YWxsZXJzIHNob3VsZCBiZSB1c2luZyB0aGUgY292ZXIgbWV0aG9kcyBhbmQgYmVjYXVzZSB0aGUK
IC8vIGNvdmVyIG1ldGhvZHMgdGhlbXNlbHZlcyBhcmUgcHJpdmF0ZS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IGE2ZjFlNGI4ZGY0MGNlOWM1Mzc2
ZmYwNTg4Njg0ZjlhOGJkNjhkNzAuLmI1ZTUxN2FjNGE3ZmUxNWU0YjZkNzhhZjM4MDBlNjQ2ODBh
YzE0MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5j
ZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpA
QCAtMzc3LDYgKzM3Nyw5IEBAIHN0YXRpYyBXZWJDYWNoZU1vZGVsIGNhY2hlTW9kZWxGb3JNYWlu
QnVuZGxlKHZvaWQpCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2Vi
S2l0VXNlUHJlSFRNTDVQYXJzZXJRdWlya3NLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCAgV2ViS2l0QVZGb3VuZGF0aW9uRW5hYmxlZEtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRIaXhpZTc2V2ViU29ja2V0UHJvdG9j
b2xFbmFibGVkS2V5LAorICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdl
YktpdE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleSwKKyAgICAg
ICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lUHJlZmVyZW5jZUtleSwKKwogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aExv
bmdMb25nOldlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpub1F1b3RhKCldLCBXZWJL
aXRBcHBsaWNhdGlvbkNhY2hlVG90YWxRdW90YSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldp
dGhMb25nTG9uZzpXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bm9RdW90YSgpXSwg
V2ViS2l0QXBwbGljYXRpb25DYWNoZURlZmF1bHRPcmlnaW5RdW90YSwKICAgICAgICAgbmlsXTsK
QEAgLTE0ODMsNiArMTQ4NiwyNiBAQCBzdGF0aWMgTlNTdHJpbmcgKmNsYXNzSUJDcmVhdG9ySUQg
PSBuaWw7CiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0SGl4aWU3
NldlYlNvY2tldFByb3RvY29sRW5hYmxlZEtleV07CiB9CisKKy0gKEJPT0wpbWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUKK3sKKyAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktl
eTpXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VLZXldOwor
fQorCistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZs
YWcKK3sKKyAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlUHJlZmVyZW5jZUtleV07Cit9CisKKy0gKEJPT0wpbWVk
aWFQbGF5YmFja0FsbG93c0lubGluZQoreworICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9y
S2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KKwor
LSAodm9pZClzZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOihCT09MKWZsYWcKK3sKKyAgICBb
c2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJ
bmxpbmVQcmVmZXJlbmNlS2V5XTsKK30KIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlByZWZl
cmVuY2VzIChXZWJJbnRlcm5hbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IGU1YjZlYzU2OGVlNThkMmQ1YTU2NmQ3NWIzOTk1
ODY2MzQ4MzdkNDQuLjlmMGRlZTY0NDY5N2JiZjRmOWE4YTFmNjFjMjMxYzg3ZGI2MWE3OGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUu
aApAQCAtMjEwLDYgKzIxMCwxMiBAQCBleHRlcm4gTlNTdHJpbmcgKldlYlByZWZlcmVuY2VzQ2hh
bmdlZEludGVybmFsTm90aWZpY2F0aW9uOwogLSAoQk9PTCloeXBlcmxpbmtBdWRpdGluZ0VuYWJs
ZWQ7CiAtICh2b2lkKXNldEh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZDooQk9PTCllbmFibGVkOwog
CistICh2b2lkKXNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOihCT09MKWZsYWc7
CistIChCT09MKW1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOworCistICh2b2lkKXNl
dE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU6KEJPT0wpZmxhZzsKKy0gKEJPT0wpbWVkaWFQbGF5
YmFja0FsbG93c0lubGluZTsKKwogLy8gT3RoZXIgcHJpdmF0ZSBtZXRob2RzCiAtICh2b2lkKV9w
b3N0UHJlZmVyZW5jZXNDaGFuZ2VkTm90aWZpY2F0aW9uOwogLSAodm9pZClfcG9zdFByZWZlcmVu
Y2VzQ2hhbmdlZEFQSU5vdGlmaWNhdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5t
bQppbmRleCBiMDllNTM0YzFhMWIxN2M4YzIxNTA5NGI0YTNkNmQ5NTVmOTNmNTU4Li5hNThmZDdh
NTk5NDA3YjQ5MDEyODE4NTZmZjA4ZDIzZjFhMDVkMzdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCkBAIC0xNTkzLDYgKzE1OTMsOCBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZS
ZXRhaW5XaGlsZUxvYWRpbmdRdWlyaygpCiAjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQogICAgIHNl
dHRpbmdzLT5zZXRVc2VIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2woW3ByZWZlcmVuY2VzIGlzSGl4
aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZF0pOwogI2VuZGlmCisgICAgc2V0dGluZ3MtPnNl
dE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZV0pOworICAgIHNldHRpbmdzLT5zZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lKFtwcmVmZXJlbmNlcyBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lXSk7CiAK
ICAgICAvLyBBcHBsaWNhdGlvbiBDYWNoZSBQcmVmZXJlbmNlcyBhcmUgc3RvcmVkIG9uIHRoZSBn
bG9iYWwgY2FjaGUgc3RvcmFnZSBtYW5hZ2VyLCBub3QgaW4gU2V0dGluZ3MuCiAgICAgW1dlYkFw
cGxpY2F0aW9uQ2FjaGUgc2V0RGVmYXVsdE9yaWdpblF1b3RhOltwcmVmZXJlbmNlcyBhcHBsaWNh
dGlvbkNhY2hlRGVmYXVsdE9yaWdpblF1b3RhXV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggYjZlZmNi
YmExYjg1ZTRiNTY3ODVjOTFkZDQ5NDI4OTJmNjgzOWE1MS4uNGYyNmFmZjZmMzZmZDNhZTA3NDgy
N2JhOGRhZDcxNjVjYzZiYTIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisy
MDExLTA3LTE4ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ3NDIKKyAgICAgICAgRXhwb3Nl
IFdlYlByZWZlcmVuY2VzIGZvciBtZWRpYSBwbGF5YmFjayByZXF1aXJpbmcgdXNlciBnZXN0dXJl
cyBhbmQgaW5saW5lIHBsYXliYWNrCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2Vy
LgorCisgICAgICAgIFR3byBuZXcgV2ViUHJlZmVyZW5jZXM6IE1lZGlhUGxheWJhY2tSZXF1aXJl
c1VzZXJHZXN0dXJlIGFuZAorICAgICAgICBNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lLgorCisg
ICAgICAgICogSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbDoKKyAgICAgICAg
KiBXZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6aW5pdGlhbGl6ZURlZmF1bHRTZXR0aW5ncyk6
CisgICAgICAgIChXZWJQcmVmZXJlbmNlczo6c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUpOgorICAgICAgICAoV2ViUHJlZmVyZW5jZXM6Om1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lKToKKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjptZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lKToKKyAgICAgICAgKiBXZWJQcmVmZXJlbmNlcy5oOgorICAgICAgICAqIFdlYlZpZXcu
Y3BwOgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKToKKwogMjAx
MS0wNy0xNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBBZGQgY29kZSB0byBhdHRlbXB0IHRvIGFsaWduIGNvbXBvc2l0aW5nIGxheWVycyB0byBwaXhl
bCBib3VuZGFyaWVzIHdoZW4gcGFnZSBzY2FsZSBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsIGIvU291cmNl
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9JV2ViUHJlZmVyZW5jZXNQcml2YXRlLmlkbAppbmRleCBj
ODM3OTcwZmE0YzMzNmQ5N2QxOTI3Y2Y5YWU1ZWE3MGNkMWVlZWMxLi5lOTVjMjNjNzQ5NGE0NTVh
MTNjM2Q4YTA3MGMyMzNmNjZlMzc1MDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9J
bnRlcmZhY2VzL0lXZWJQcmVmZXJlbmNlc1ByaXZhdGUuaWRsCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0ludGVyZmFjZXMvSVdlYlByZWZlcmVuY2VzUHJpdmF0ZS5pZGwKQEAgLTEzMCw0ICsxMzAs
MTAgQEAgaW50ZXJmYWNlIElXZWJQcmVmZXJlbmNlc1ByaXZhdGUgOiBJVW5rbm93bgogCiAgICAg
SFJFU1VMVCBzZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFtpbl0gQk9PTCBlbmFi
bGVkKTsKICAgICBIUkVTVUxUIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoW291dCwg
cmV0dmFsXSBCT09MKiBlbmFibGVkKTsKKworICAgIEhSRVNVTFQgc2V0TWVkaWFQbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUoW2luXSBCT09MKTsKKyAgICBIUkVTVUxUIG1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKFtvdXQsIHJldHZhbF0gQk9PTCopOworCisgICAgSFJFU1VMVCBz
ZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKFtpbl0gQk9PTCk7CisgICAgSFJFU1VMVCBtZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lKFtvdXQsIHJldHZhbF0gQk9PTCopOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCA3MjJjMzNmY2ZkZDA2
ODMyZTcwZDAyMTlkZDVlMjE0NWZkOThjYWIwLi42MzljMThmNTY1YzM2OTJhZTcxZmQxZjZlMDA4
NWI0YWJhMjZlZjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNl
S2V5c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlS2V5c1By
aXZhdGUuaApAQCAtMTU0LDMgKzE1NCw4IEBACiAjZGVmaW5lIFdlYktpdEZ1bGxTY3JlZW5FbmFi
bGVkUHJlZmVyZW5jZUtleSAiV2ViS2l0RnVsbFNjcmVlbkVuYWJsZWQiCiAKICNkZWZpbmUgV2Vi
S2l0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZFByZWZlcmVuY2VLZXkgIldlYktpdEhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQiCisKKyNkZWZpbmUgV2ViS2l0TWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5ICJXZWJLaXRNZWRpYVBsYXliYWNr
UmVxdWlyZXNVc2VyR2VzdHVyZSIKKworI2RlZmluZSBXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dz
SW5saW5lUHJlZmVyZW5jZUtleSAiV2ViS2l0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZSIKKwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3BwIGIvU291cmNl
L1dlYktpdC93aW4vV2ViUHJlZmVyZW5jZXMuY3BwCmluZGV4IGYyYTJmZWFhYThkYjQ3MjY3N2Nl
ODQ5YTc1YzIxNjNiY2NkNWU0NWUuLjRmYTVmMmQ2OTYzZGIxNGJlZjJhOWRlNzY4MDQ1MDA4ZmU2
ZTVhMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAKQEAgLTI2OCw2ICsyNjgs
OSBAQCB2b2lkIFdlYlByZWZlcmVuY2VzOjppbml0aWFsaXplRGVmYXVsdFNldHRpbmdzKCkKICAg
ICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SHlwZXJsaW5rQXVk
aXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSksIGtDRkJvb2xlYW5UcnVlKTsKICAgICBDRkRpY3Rp
b25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0SGl4aWU3NldlYlNvY2tldFByb3Rv
Y29sRW5hYmxlZFByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuVHJ1ZSk7CiAKKyAgICBDRkRpY3Rp
b25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0TWVkaWFQbGF5YmFja1JlcXVpcmVz
VXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5KSwga0NGQm9vbGVhbkZhbHNlKTsKKyAgICBDRkRpY3Rp
b25hcnlBZGRWYWx1ZShkZWZhdWx0cywgQ0ZTVFIoV2ViS2l0TWVkaWFQbGF5YmFja0FsbG93c0lu
bGluZVByZWZlcmVuY2VLZXkpLCBrQ0ZCb29sZWFuVHJ1ZSk7CisKICAgICBkZWZhdWx0U2V0dGlu
Z3MgPSBkZWZhdWx0czsKIH0KIApAQCAtOTU3LDYgKzk2MCwzNCBAQCBIUkVTVUxUIFNURE1FVEhP
RENBTExUWVBFIFdlYlByZWZlcmVuY2VzOjpoaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVk
KAogICAgIHJldHVybiBTX09LOwogfQogCitIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlBy
ZWZlcmVuY2VzOjpzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSgKKyAgICAvKiBb
aW5dICovIEJPT0wgZW5hYmxlZCkKK3sKKyAgICBzZXRCb29sVmFsdWUoQ0ZTVFIoV2ViS2l0TWVk
aWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVQcmVmZXJlbmNlS2V5KSwgZW5hYmxlZCk7Cisg
ICAgcmV0dXJuIFNfT0s7Cit9CisKK0hSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViUHJlZmVy
ZW5jZXM6Om1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKAorICAgIC8qIFtyZXR2YWxd
W291dF0gKi8gQk9PTCogZW5hYmxlZCkKK3sKKyAgICAqZW5hYmxlZCA9IGJvb2xWYWx1ZUZvcktl
eShDRlNUUihXZWJLaXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZVByZWZlcmVuY2VL
ZXkpKTsKKyAgICByZXR1cm4gU19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBX
ZWJQcmVmZXJlbmNlczo6c2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgKKyAgICAvKiBbaW5d
ICovIEJPT0wgZW5hYmxlZCkKK3sKKyAgICBzZXRCb29sVmFsdWUoQ0ZTVFIoV2ViS2l0TWVkaWFQ
bGF5YmFja0FsbG93c0lubGluZVByZWZlcmVuY2VLZXkpLCBlbmFibGVkKTsKKyAgICByZXR1cm4g
U19PSzsKK30KKworSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6bWVk
aWFQbGF5YmFja0FsbG93c0lubGluZSgKKyAgICAvKiBbcmV0dmFsXVtvdXRdICovIEJPT0wqIGVu
YWJsZWQpCit7CisgICAgKmVuYWJsZWQgPSBib29sVmFsdWVGb3JLZXkoQ0ZTVFIoV2ViS2l0TWVk
aWFQbGF5YmFja0FsbG93c0lubGluZVByZWZlcmVuY2VLZXkpKTsKKyAgICByZXR1cm4gU19PSzsK
K30KKwogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJQcmVmZXJlbmNlczo6c2V0QXV0b3Nh
dmVzKCAKICAgICAvKiBbaW5dICovIEJPT0wgZW5hYmxlZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVm
ZXJlbmNlcy5oCmluZGV4IGZhMTUwMTQ2NmIxNWRlMTg3NDY0MjA4NmU0Y2YyZDk1MDVhZjg4MDgu
LjljYmMyMzA5NjU0NjM1ZGFjODA5NDhkYzAxOWU4N2MzMGVjZmZhMWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4v
V2ViUHJlZmVyZW5jZXMuaApAQCAtNDM4LDYgKzQzOCwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJs
ZWQoQk9PTCopOwogICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBzZXRIaXhp
ZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKEJPT0wpOwogCisgICAgdmlydHVhbCBIUkVTVUxU
IFNURE1FVEhPRENBTExUWVBFIG1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKEJPT0wq
KTsKKyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgc2V0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUoQk9PTCk7CisKKyAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgbWVkaWFQbGF5YmFja0FsbG93c0lubGluZShCT09MKik7CisgICAgdmlydHVh
bCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUo
Qk9PTCk7CisKICAgICAvLyBXZWJQcmVmZXJlbmNlcwogCiAgICAgLy8gVGhpcyBtZXRob2QgYWNj
ZXNzZXMgYSBkaWZmZXJlbnQgcHJlZmVyZW5jZSBrZXkgdGhhbiBkZXZlbG9wZXJFeHRyYXNFbmFi
bGVkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJWaWV3LmNwcAppbmRleCBjYjUxYTVhYTcwNTRhY2RmZGI3MjFmN2I5MTY5
MGJmODNkYjUzYTk2Li5mYTc1ODc0YmRjNDM2OGUwN2VkZGRkN2Y1ZjRiZmQ3YTk1ZjYzZGRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJWaWV3LmNwcApAQCAtNDg3MCw2ICs0ODcwLDE2IEBAIEhSRVNVTFQgV2ViVmll
dzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlv
bikKICAgICBzZXR0aW5ncy0+c2V0RnVsbFNjcmVlbkVuYWJsZWQoZW5hYmxlZCk7CiAjZW5kaWYK
IAorICAgIGhyID0gcHJlZnNQcml2YXRlLT5tZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZSgmZW5hYmxlZCk7CisgICAgaWYgKEZBSUxFRChocikpCisgICAgICAgIHJldHVybiBocjsKKyAg
ICBzZXR0aW5ncy0+c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoZW5hYmxlZCk7
CisKKyAgICBociA9IHByZWZzUHJpdmF0ZS0+bWVkaWFQbGF5YmFja0FsbG93c0lubGluZSgmZW5h
YmxlZCk7CisgICAgaWYgKEZBSUxFRChocikpCisgICAgICAgIHJldHVybiBocjsKKyAgICBzZXR0
aW5ncy0+c2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShlbmFibGVkKTsKKwogICAgIHJldHVy
biBTX09LOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTllYTJiMmJlNmY1YjQ3ZmQ3MjhmMzAyNjE3ZmU0
ZjhlMGJhNjY3ZS4uYTMyODc3M2Q4ZGY1NTY4YzZkMDhjODU3ODk2OTczMGE0NDA2ZjE3MyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDExLTA3LTE4ICBEZWFuIEphY2tzb24gIDxkaW5v
QGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjQ3NDIKKyAgICAgICAgRXhwb3NlIFdlYlByZWZlcmVuY2VzIGZvciBtZWRpYSBwbGF5
YmFjayByZXF1aXJpbmcgdXNlciBnZXN0dXJlcyBhbmQgaW5saW5lIHBsYXliYWNrCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIFR3byBuZXcgV2ViUHJlZmVy
ZW5jZXM6IE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIGFuZAorICAgICAgICBNZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lLgorCisgICAgICAgICogU2hhcmVkL1dlYlByZWZlcmVuY2Vz
U3RvcmUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6Cisg
ICAgICAgIChXS1ByZWZlcmVuY2VzU2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUp
OgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0
dXJlKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
KToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKToKKwogMjAxMS0wNy0xNiAgRGFuaWVsIEJhdGVzICA8
ZGJhdGVzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRml4IFdpbiBDYWlybyBEZWJ1ZyBidWlsZCBh
ZnRlciA8aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTEwODU+LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaCBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKaW5kZXggMDViMTQyMGYzYjdiMDFm
MGUzYjZiZjdjM2E1NDQ5ZjYwYTY0NWFlZi4uZjk2ZGJjOTAwMDdhNTEwYWVkOTAwMjBlMjY2Nzk4
ZWVlYWVjNDM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVu
Y2VzU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9y
ZS5oCkBAIC03Niw2ICs3Niw4IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAgIG1hY3JvKEFsbG93
RmlsZUFjY2Vzc0Zyb21GaWxlVVJMcywgYWxsb3dGaWxlQWNjZXNzRnJvbUZpbGVVUkxzLCBCb29s
LCBib29sLCBmYWxzZSkgXAogICAgIG1hY3JvKEFWRm91bmRhdGlvbkVuYWJsZWQsIGlzQVZGb3Vu
ZGF0aW9uRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1hY3JvKEhpeGllNzZXZWJT
b2NrZXRQcm90b2NvbEVuYWJsZWQsIGhpeGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQsIEJv
b2wsIGJvb2wsIHRydWUpIFwKKyAgICBtYWNybyhNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2Vz
dHVyZSwgbWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUsIEJvb2wsIGJvb2wsIGZhbHNl
KSBcCisgICAgbWFjcm8oTWVkaWFQbGF5YmFja0FsbG93c0lubGluZSwgbWVkaWFQbGF5YmFja0Fs
bG93c0lubGluZSwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIFwKIAogI2RlZmluZSBGT1JfRUFD
SF9XRUJLSVRfRE9VQkxFX1BSRUZFUkVOQ0UobWFjcm8pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCBiMDg3NjQwMGExOTlkNTkx
MTkwYmI4ZWFmNjM3NWNkYjliZTI2ZjUzLi40ODEwNDA0ZDc5MWU1NTA2NWI5MTY3OTRhMDg0MjVh
YWRiYTM1YTgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXMuY3BwCkBAIC01NzEsMyArNTcxLDIzIEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldEhp
eGllNzZXZWJTb2NrZXRQcm90b2NvbEVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
CiB7CiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPmhpeGllNzZXZWJTb2NrZXRQ
cm90b2NvbEVuYWJsZWQoKTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBmbGFnKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldE1lZGlhUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlKGZsYWcpOworfQorCitib29sIFdLUHJlZmVyZW5jZXNHZXRNZWRp
YVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmKQoreworICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5tZWRpYVBsYXliYWNr
UmVxdWlyZXNVc2VyR2VzdHVyZSgpOworfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBs
YXliYWNrQWxsb3dzSW5saW5lKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wg
ZmxhZykKK3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRNZWRpYVBsYXliYWNrQWxs
b3dzSW5saW5lKGZsYWcpOworfQorCitib29sIFdLUHJlZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNr
QWxsb3dzSW5saW5lKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7CisgICAgcmV0
dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPm1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoKTsK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVu
Y2VzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXNQcml2YXRlLmgKaW5kZXggZjhlN2ZmMzQ1YzJkNjNlYjc5MDYxNTBmYTljOTQ1YWUwY2NjZjJl
NS4uN2U0YjZlZjQ2ODFhNmRhOTRjNDY1NWI0MDZkNDQzZWNjMjlkY2JlYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgK
QEAgLTEzMiw2ICsxMzIsMTQgQEAgV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEZpbGVB
Y2Nlc3NGcm9tRmlsZVVSTHNBbGxvd2VkKFdLUHJlZmVyZW5jZXNSZWYgcHIKIFdLX0VYUE9SVCB2
b2lkIFdLUHJlZmVyZW5jZXNTZXRIaXhpZTc2V2ViU29ja2V0UHJvdG9jb2xFbmFibGVkKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19FWFBPUlQgYm9v
bCBXS1ByZWZlcmVuY2VzR2V0SGl4aWU3NldlYlNvY2tldFByb3RvY29sRW5hYmxlZChXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gZmFsc2UuCitXS19F
WFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1
cmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKTsKK1dLX0VYUE9S
VCBib29sIFdLUHJlZmVyZW5jZXNHZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKKworLy8gRGVmYXVsdHMgdG8gdHJ1ZS4K
K1dLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5l
KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7CitXS19FWFBPUlQg
Ym9vbCBXS1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBk
YWIwOTkzNjczYWNlYTYzOGY0M2UyMjk3YjEyMWI1MTMyZDc2NGEwLi5mMTRiOTkwMzBhNzkxOGI4
YTRjNDdmMWJlZTA2NzMzMzZhY2E5ODFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xNjAyLDYgKzE2MDIsOCBAQCB2b2lkIFdlYlBhZ2U6
OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogICAg
IHNldHRpbmdzLT5zZXRTaG93RGVidWdCb3JkZXJzKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6Y29tcG9zaXRpbmdCb3JkZXJzVmlzaWJsZUtleSgpKSk7CiAgICAg
c2V0dGluZ3MtPnNldFNob3dSZXBhaW50Q291bnRlcihzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXko
V2ViUHJlZmVyZW5jZXNLZXk6OmNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZUtleSgp
KSk7CiAgICAgc2V0dGluZ3MtPnNldFdlYkdMRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JL
ZXkoV2ViUHJlZmVyZW5jZXNLZXk6OndlYkdMRW5hYmxlZEtleSgpKSk7CisgICAgc2V0dGluZ3Mt
PnNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKHN0b3JlLmdldEJvb2xWYWx1ZUZv
cktleShXZWJQcmVmZXJlbmNlc0tleTo6bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmVL
ZXkoKSkpOworICAgIHNldHRpbmdzLT5zZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKHN0b3Jl
LmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6bWVkaWFQbGF5YmFja0FsbG93
c0lubGluZUtleSgpKSk7CiAKICNpZiBFTkFCTEUoREFUQUJBU0UpCiAgICAgQWJzdHJhY3REYXRh
YmFzZTo6c2V0SXNBdmFpbGFibGUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVu
Y2VzS2V5OjpkYXRhYmFzZXNFbmFibGVkS2V5KCkpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>