<?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>139219</bug_id>
          
          <creation_ts>2014-12-03 01:55:37 -0800</creation_ts>
          <short_desc>Keyboard input should be disabled in the preview popover</short_desc>
          <delta_ts>2014-12-05 23:42:57 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>bdakin</cc>
    
    <cc>conrad_shultz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1052088</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-03 01:55:37 -0800</bug_when>
    <thetext>Keyboard input should be disabled in the preview popover</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052089</commentid>
    <comment_count>1</comment_count>
      <attachid>242481</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-03 01:56:15 -0800</bug_when>
    <thetext>Created attachment 242481
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052090</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-03 01:56:49 -0800</bug_when>
    <thetext>&lt;rdar://problem/19052381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052256</commentid>
    <comment_count>3</comment_count>
      <attachid>242513</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-03 12:39:34 -0800</bug_when>
    <thetext>Created attachment 242513
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052291</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-03 13:54:24 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/176753</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052826</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-05 13:26:37 -0800</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052827</commentid>
    <comment_count>6</comment_count>
      <attachid>242656</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-05 13:26:38 -0800</bug_when>
    <thetext>Created attachment 242656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052828</commentid>
    <comment_count>7</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-05 13:28:54 -0800</bug_when>
    <thetext>Follow up in http://trac.webkit.org/changeset/176870</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242481</attachid>
            <date>2014-12-03 01:56:15 -0800</date>
            <delta_ts>2014-12-03 12:39:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139219-20141203015646.patch</filename>
            <type>text/plain</type>
            <size>25399</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NzAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODBhMzE3ZjQ4OWEzN2Q2
NjNhNDk1NjU2MTc2YzViN2I0NjgzMzk0NS4uYjRlNWQ3MWVkMjI0YzBiOGVkODI4YmRmMmZlNGEy
NTAxM2FhNTRmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE0LTEyLTAzICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkIGlu
cHV0IHNob3VsZCBiZSBkaXNhYmxlZCBpbiB0aGUgcHJldmlldyBwb3BvdmVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzkyMTkKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzE5MDUyMzgxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNocm9tZUNsaWVudDo6c2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKToKKyAgICAg
ICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRs
ZXI6OmRpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50U29vbik6CisgICAgICAgIEFsbG93IENocm9t
ZUNsaWVudCB0byBkaXNhYmxlIHRoZSBkaXNwYXRjaCBvZiAiZmFrZSIgbW91c2VNb3ZlIGV2ZW50
cworICAgICAgICB0aGF0IGhhcHBlbnMgZHVyaW5nIHNjcm9sbGluZy4KKwogMjAxNC0xMi0wMiAg
QWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBodHRwL3Rlc3Rz
L2FwcGNhY2hlL21haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gu
aHRtbCBjYW4gYnJlYWsgc3Vic2VxdWVudCB0ZXN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGZkMzg0YzkwMTU4
ZDc5NjA1OGYxY2EwMDBhZmVjNzEyZWI0ZjdmYjguLmUwNWNhZGU3MTAxYTY2NTE0YWM0ZTczMTBi
MzM4MDMyOGE3NjJiMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw4NyBAQAorMjAxNC0xMi0wMyAg
VGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBLZXlib2Fy
ZCBpbnB1dCBzaG91bGQgYmUgZGlzYWJsZWQgaW4gdGhlIHByZXZpZXcgcG9wb3ZlcgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5MjE5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8xOTA1MjM4MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNYWtlIHN1cmUgdGhhdCBrZXlib2FyZCBpbnB1dCwgUXVpY2sg
TG9vaywgZXRjLiBhcmUgYmxvY2tlZCBpbiBwcmV2aWV3IHBvcG92ZXJzCisgICAgICAgIGFuZCBX
S1RodW1ibmFpbFZpZXdzLiBBbHNvIGJsb2NrIHRoZSBmYWtlIG1vdXNlTW92ZSBldmVudHMgdGhh
dCBvcmlnaW5hdGUgaW4KKyAgICAgICAgdGhlIFdlYiBwcm9jZXNzIHVwb24gc2Nyb2xsaW5nLCBi
ZWNhdXNlIHdlIHdlcmUgbWlzc2luZyB0aG9zZSBkZXNwaXRlIGJsb2NraW5nCisgICAgICAgIG9y
ZGluYXJ5IG1vdXNlTW92ZSBldmVudHMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29h
L1dLVmlld1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW06
CisgICAgICAgIFJlbmFtZSBfaWdub3Jlc05vbldoZWVsTW91c2VFdmVudHMgdG8gX2lnbm9yZXNO
b25XaGVlbEV2ZW50cywgYmVjYXVzZSBpdCB3aWxsCisgICAgICAgIGFwcGx5IG5vdCBvbmx5IHRv
IG1vdXNlIGV2ZW50cyBidXQgYWxzbyBrZXkgZXZlbnRzLCBRdWljayBMb29rIGV2ZW50cywgbWVu
dQorICAgICAgICBwcmVwYXJhdGlvbiBldmVudHMsIHN3aXBlIGV2ZW50cywgZXRjLgorCisgICAg
ICAgIEFkZCBfaWdub3Jlc0FsbEV2ZW50cywgd2hpY2ggbWVhbnMgdGhlIHNhbWUgdGhpbmcgYXMg
X2lnbm9yZXNOb25XaGVlbEV2ZW50cworICAgICAgICB3aXRoIHRoZSBhZGRpdGlvbiBvZiBpZ25v
cmluZyBzY3JvbGxXaGVlbCBldmVudHMuCisKKyAgICAgICAgKC1bV0tWaWV3IHNjcm9sbFdoZWVs
Ol0pOgorICAgICAgICAoLVtXS1ZpZXcgc3dpcGVXaXRoRXZlbnQ6XSk6CisgICAgICAgICgtW1dL
VmlldyBtb3VzZU1vdmVkOl0pOgorICAgICAgICAoLVtXS1ZpZXcgbW91c2VEb3duOl0pOgorICAg
ICAgICAoLVtXS1ZpZXcgbW91c2VVcDpdKToKKyAgICAgICAgKC1bV0tWaWV3IG1vdXNlRHJhZ2dl
ZDpdKToKKyAgICAgICAgQWRqdXN0IHRvIHRoZSBuZXcgbmFtZS4KKworICAgICAgICAoLVtXS1Zp
ZXcgcGVyZm9ybUtleUVxdWl2YWxlbnQ6XSk6CisgICAgICAgICgtW1dLVmlldyBrZXlVcDpdKToK
KyAgICAgICAgKC1bV0tWaWV3IGtleURvd246XSk6CisgICAgICAgICgtW1dLVmlldyBmbGFnc0No
YW5nZWQ6XSk6CisgICAgICAgICgtW1dLVmlldyBxdWlja0xvb2tXaXRoRXZlbnQ6XSk6CisgICAg
ICAgICgtW1dLVmlldyBwcmVwYXJlRm9yTWVudTp3aXRoRXZlbnQ6XSk6CisgICAgICAgICgtW1dL
VmlldyB3aWxsT3Blbk1lbnU6d2l0aEV2ZW50Ol0pOgorICAgICAgICAoLVtXS1ZpZXcgZGlkQ2xv
c2VNZW51OndpdGhFdmVudDpdKToKKyAgICAgICAgQmxvY2sgYWxsIG9mIHRoZXNlIGV2ZW50cyBh
cyB3ZWxsIGFzIHRob3NlIHdlIHdlcmUgcHJldmlvdXNseSBibG9ja2luZy4KKworICAgICAgICAo
LVtXS1ZpZXcgX3NldElnbm9yZXNBbGxFdmVudHM6XSk6CisgICAgICAgICgtW1dLVmlldyBfc2V0
SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6XSk6CisgICAgICAgICgtW1dLVmlldyBfc2V0SWdu
b3Jlc05vbldoZWVsRXZlbnRzOl0pOgorICAgICAgICAoLVtXS1ZpZXcgX2lnbm9yZXNOb25XaGVl
bEV2ZW50c10pOgorICAgICAgICAoLVtXS1ZpZXcgX2lnbm9yZXNBbGxFdmVudHNdKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXdJbnRlcm5hbC5oOgorICAgICAgICBBZGp1c3Qg
dG8gdGhlIG5ldyBuYW1lcyBhbmQgdGhlIGFkZGl0aW9uIG9mIGlnbm9yZXNBbGxFdmVudHMuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLQWN0aW9uTWVudUNvbnRyb2xsZXIubW06CisgICAg
ICAgICgtW1dLUGFnZVByZXZpZXdWaWV3Q29udHJvbGxlciBsb2FkVmlld10pOgorICAgICAgICBB
ZGp1c3QgdG8gdGhlIG5ldyBuYW1lLgorCisgICAgICAgICgtW1dLQWN0aW9uTWVudUNvbnRyb2xs
ZXIgcHJlcGFyZUZvck1lbnU6d2l0aEV2ZW50Ol0pOgorICAgICAgICBNb3ZlIGJhaWxpbmcgZnJv
bSBwcmVwYXJlRm9yTWVudTogdXAgdG8gV0tWaWV3LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBfaWdub3Jlc05vbldo
ZWVsRXZlbnRzXSk6CisgICAgICAgICgtW1dLV2ViVmlldyBfc2V0SWdub3Jlc05vbldoZWVsRXZl
bnRzOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgX2lnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRz
XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLV2ViVmlldyBfc2V0SWdub3Jlc05vbldoZWVsTW91
c2VFdmVudHM6XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdJbnRlcm5hbC5oOgorICAgICAgICBBZGp1c3QgdG8gdGhlIG5ldyBuYW1lICh3aXRob3V0
ICJtb3VzZSIgaW4gaXQpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tUaHVt
Ym5haWxWaWV3Lm1tOgorICAgICAgICAoLVtfV0tUaHVtYm5haWxWaWV3IF92aWV3V2FzVW5wYXJl
bnRlZF0pOgorICAgICAgICAoLVtfV0tUaHVtYm5haWxWaWV3IF92aWV3V2FzUGFyZW50ZWRdKToK
KyAgICAgICAgRXhwbGljaXRseSB0ZWxsIFdLVmlldyB0byBkaXNhYmxlIGV2ZW50IGhhbmRsaW5n
IHdoaWxlIHRodW1ibmFpbGVkLAorICAgICAgICBpbnN0ZWFkIG9mIGhhdmluZyBXS1ZpZXcgc3Bl
Y2lhbC1jYXNlIHRodW1ibmFpbCB2aWV3cyBpbnRlcm5hbGx5LgorCisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6c2V0
U2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnNob3Vs
ZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyk6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OnNldFNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW46CisgICAgICAgIFBs
dW1iIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyBmcm9tIHRoZSBVSSBwcm9jZXNz
IHRvIHRoZSBXZWIgcHJvY2VzcworICAgICAgICBhbmQgdGhyb3VnaCB0byBXZWJLaXQyJ3MgQ2hy
b21lQ2xpZW50IGltcGxlbWVudGF0aW9uLgorCiAyMDE0LTEyLTAyICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE4NDQxMTM4PiBbaU9T
XSBUZXh0IHNlbGVjdGlvbiBpbiBXS1dlYlZpZXcgd2l0aCBXS1NlbGVjdGlvbkdyYW51bGFyaXR5
Q2hhcmFjdGVyIG9ubHkgd29ya3MgaW4gdGhlIG1vc3QgcmVjZW50IFdLV2ViVmlldyB0byBsb2Fk
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAppbmRleCAyY2RkYTQ5ZWIzNDE4OTZkZGU0NzAy
YTViMzY1MDE2NTE4N2M2YzkxLi41ZDlmZTYxN2FlODNhNjQ1NTZlMzk1MmMwYmFlMDYxZWM3ODY5
NzIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTQ0Niw2ICs0NDYsOCBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2VydmljZXMoYm9v
bCAvKiBpc1RleHRPbmx5ICovKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogI2VuZGlmCiAKKyAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qg
eyByZXR1cm4gdHJ1ZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+Q2hyb21lQ2xpZW50
KCkgeyB9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGNmOTQzZGEx
MzNmMjcwZDY2YjgyYzIzMjhiMmYzNWM3MTBkZjExZWIuLjQ1YWE4Y2QxYzc5OWIyM2I1YTE0ZTdl
MGZmYWE4YmU1YWUzYmVkZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAg
LTI5MDQsNiArMjkwNCwxMSBAQCB2b2lkIEV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hGYWtlTW91c2VN
b3ZlRXZlbnRTb29uKCkKICAgICBpZiAoIW1fZnJhbWUuc2V0dGluZ3MoKS5kZXZpY2VTdXBwb3J0
c01vdXNlKCkpCiAgICAgICAgIHJldHVybjsKIAorICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFt
ZS5wYWdlKCkpIHsKKyAgICAgICAgaWYgKCFwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5zaG91bGRE
aXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9
CisKICAgICAvLyBJZiB0aGUgY29udGVudCBoYXMgZXZlciB0YWtlbiBsb25nZXIgdGhhbiBmYWtl
TW91c2VNb3ZlU2hvcnRJbnRlcnZhbCB3ZQogICAgIC8vIHJlc2NoZWR1bGUgdGhlIHRpbWVyIGFu
ZCB1c2UgYSBsb25nZXIgdGltZS4gVGhpcyB3aWxsIGNhdXNlIHRoZSBjb250ZW50CiAgICAgLy8g
dG8gcmVjZWl2ZSB0aGVzZSBtb3ZlcyBvbmx5IGFmdGVyIHRoZSB1c2VyIGlzIGRvbmUgc2Nyb2xs
aW5nLCByZWR1Y2luZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1ZpZXdQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLVmlld1ByaXZhdGUuaAppbmRleCA5MmJhMGZiNDU1ZTQzN2M1YzIwZjIxZDQ3MDdhMDJiMWNh
OWUxZGI5Li5lNWU0OWUxZTg4MDI4MzE0MDc0NTg1MWVmZDY1Nzg5NGYzZmFkMzdlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaApA
QCAtODEsNyArODEsOCBAQAogQHByb3BlcnR5IChyZWFkb25seSwgZ2V0dGVyPWlzVXNpbmdVSVNp
ZGVDb21wb3NpdGluZykgQk9PTCB1c2luZ1VJU2lkZUNvbXBvc2l0aW5nOwogQHByb3BlcnR5IChy
ZWFkd3JpdGUpIEJPT0wgYWxsb3dzTWFnbmlmaWNhdGlvbjsKIEBwcm9wZXJ0eSAocmVhZHdyaXRl
KSBkb3VibGUgbWFnbmlmaWNhdGlvbjsKLUBwcm9wZXJ0eSAocmVhZHdyaXRlLCBzZXR0ZXI9X3Nl
dElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOikgQk9PTCBfaWdub3Jlc05vbldoZWVsTW91c2VF
dmVudHM7CitAcHJvcGVydHkgKHJlYWR3cml0ZSwgc2V0dGVyPV9zZXRJZ25vcmVzTm9uV2hlZWxF
dmVudHM6KSBCT09MIF9pZ25vcmVzTm9uV2hlZWxFdmVudHM7CitAcHJvcGVydHkgKHJlYWR3cml0
ZSwgc2V0dGVyPV9zZXRJZ25vcmVzQWxsRXZlbnRzOikgQk9PTCBfaWdub3Jlc0FsbEV2ZW50czsK
IEBwcm9wZXJ0eSAocmVhZHdyaXRlKSBCT09MIGFsbG93c0JhY2tGb3J3YXJkTmF2aWdhdGlvbkdl
c3R1cmVzOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0VG9wQ29udGVudEluc2V0
OikgQ0dGbG9hdCBfdG9wQ29udGVudEluc2V0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDdkMzFiMzg4OGMzMGE4MjhiYWRiNjE5
NjAxNGM5NTM2OGExZjhhMTIuLmFiNGM1NTA4ODVkODA4YmEwMzc4NDE3MDhmOWM4NzExYTYzN2Fm
Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Lm1tCkBAIC0xNTgzLDE0ICsxNTgzLDE0IEBAIHN0YXRpYyBXZWJDb3JlOjpGbG9hdFBvaW50IGNv
bnN0cmFpbkNvbnRlbnRPZmZzZXQoV2ViQ29yZTo6RmxvYXRQb2ludCBjb250ZW50T2ZmCiAgICAg
W193a1ZpZXcgc2V0TWFnbmlmaWNhdGlvbjptYWduaWZpY2F0aW9uIGNlbnRlcmVkQXRQb2ludDpO
U1BvaW50RnJvbUNHUG9pbnQocG9pbnQpXTsKIH0KIAotLSAoQk9PTClfaWdub3Jlc05vbldoZWVs
TW91c2VFdmVudHMKKy0gKEJPT0wpX2lnbm9yZXNOb25XaGVlbEV2ZW50cwogewotICAgIHJldHVy
biBbX3drVmlldyBfaWdub3Jlc05vbldoZWVsTW91c2VFdmVudHNdOworICAgIHJldHVybiBbX3dr
VmlldyBfaWdub3Jlc05vbldoZWVsRXZlbnRzXTsKIH0KIAotLSAodm9pZClfc2V0SWdub3Jlc05v
bldoZWVsTW91c2VFdmVudHM6KEJPT0wpaWdub3Jlc05vbldoZWVsTW91c2VFdmVudHMKKy0gKHZv
aWQpX3NldElnbm9yZXNOb25XaGVlbEV2ZW50czooQk9PTClpZ25vcmVzTm9uV2hlZWxFdmVudHMK
IHsKLSAgICBbX3drVmlldyBfc2V0SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6aWdub3Jlc05v
bldoZWVsTW91c2VFdmVudHNdOworICAgIFtfd2tWaWV3IF9zZXRJZ25vcmVzTm9uV2hlZWxFdmVu
dHM6aWdub3Jlc05vbldoZWVsRXZlbnRzXTsKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVybmFsLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVybmFsLmgKaW5kZXgg
ZWNmYTg5NjY2ZjdlYWQzZTdkMGUyMWRjYzNjZTVhMTkzNWU5MjQzOC4uZmQzNGVkMWY1MDlhNTUx
ODk5Mjk1ODdhYjZlNzkyMTc5ODQ5OTkyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3SW50ZXJuYWwuaApAQCAtOTksNyArOTksNyBA
QCBzdHJ1Y3QgUHJpbnRJbmZvOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIFVJ
RWRnZUluc2V0cyBfY29tcHV0ZWRDb250ZW50SW5zZXQ7CiAjZWxzZQotQHByb3BlcnR5IChub25h
dG9taWMsIHNldHRlcj1fc2V0SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6KSBCT09MIF9pZ25v
cmVzTm9uV2hlZWxNb3VzZUV2ZW50czsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dElnbm9yZXNOb25XaGVlbEV2ZW50czopIEJPT0wgX2lnbm9yZXNOb25XaGVlbEV2ZW50czsKICNl
bmRpZgogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1RodW1ibmFpbFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1RodW1ibmFpbFZpZXcubW0KaW5kZXggNDcwOGQ2NWRkOTFmZGZiNmRmOTliNjcyNWIx
NTU2OGQyZmNkYzQxNi4uZGY5MzIzZjEyYTIwNmQ5YWVmNjE1M2FkZTRjNzE3ZDIxYjI3MGU2NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tUaHVtYm5h
aWxWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVGh1
bWJuYWlsVmlldy5tbQpAQCAtODAsNiArODAsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViS2l0Owog
LSAodm9pZClfdmlld1dhc1VucGFyZW50ZWQKIHsKICAgICBbX3drVmlldyBfc2V0VGh1bWJuYWls
VmlldzpuaWxdOworICAgIFtfd2tWaWV3IF9zZXRJZ25vcmVzQWxsRXZlbnRzOk5PXTsKIAogICAg
IHNlbGYubGF5ZXIuY29udGVudHMgPSBuaWw7CiAgICAgX2xhc3RTbmFwc2hvdFNjYWxlID0gTkFO
OwpAQCAtOTcsNiArOTgsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogCiAgICAgW3NlbGYg
X3JlcXVlc3RTbmFwc2hvdElmTmVlZGVkXTsKICAgICBbX3drVmlldyBfc2V0VGh1bWJuYWlsVmll
dzpzZWxmXTsKKyAgICBbX3drVmlldyBfc2V0SWdub3Jlc0FsbEV2ZW50czpZRVNdOwogfQogCiAt
ICh2b2lkKV9yZXF1ZXN0U25hcHNob3RJZk5lZWRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9tYWMvV0tWaWV3Lm1tCmluZGV4IDRlNDFjYWIzNzRmZWY3YTE0Y2NiMjI4NTZhY2FjYjcz
ZDVmY2Q5YjYuLjZhMzQzZjIzYTQ5MzgwOWU4N2YyYjZiMDg5YzYxYmEyYmYxNDY3MGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KQEAgLTI0Nyw3ICsyNDcs
OCBAQCBzdHJ1Y3QgV0tWaWV3SW50ZXJwcmV0S2V5RXZlbnRzUGFyYW1ldGVycyB7CiAKICAgICBz
dGQ6OnVuaXF1ZV9wdHI8Vmlld0dlc3R1cmVDb250cm9sbGVyPiBfZ2VzdHVyZUNvbnRyb2xsZXI7
CiAgICAgQk9PTCBfYWxsb3dzTWFnbmlmaWNhdGlvbjsKLSAgICBCT09MIF9pZ25vcmVzTm9uV2hl
ZWxNb3VzZUV2ZW50czsKKyAgICBCT09MIF9pZ25vcmVzTm9uV2hlZWxFdmVudHM7CisgICAgQk9P
TCBfaWdub3Jlc0FsbEV2ZW50czsKICAgICBCT09MIF9hbGxvd3NCYWNrRm9yd2FyZE5hdmlnYXRp
b25HZXN0dXJlczsKIAogICAgIFJldGFpblB0cjxDQUxheWVyPiBfcm9vdExheWVyOwpAQCAtMTEw
NCwyOSArMTEwNSw2IEBAIHN0YXRpYyBOU1Rvb2xiYXJJdGVtICp0b29sYmFySXRlbShpZCA8TlNW
YWxpZGF0ZWRVc2VySW50ZXJmYWNlSXRlbT4gaXRlbSkKIAogLy8gRXZlbnRzCiAKLS0gKEJPT0wp
X3Nob3VsZElnbm9yZU1vdXNlRXZlbnRzCi17Ci0gICAgLy8gRklYTUU6IFRoaXMgY2hlY2sgaXMg
c3VycHJpc2luZ2x5IHNwZWNpZmljLiBBcmUgdGhlcmUgYW55IG90aGVyIGNhc2VzIHdoZXJlIHdl
IG5lZWQgdG8gYmxvY2sgbW91c2UgZXZlbnRzPwotICAgIC8vIERvIHdlIGFjdHVhbGx5IG5lZWQg
dG8gaW4gdGh1bWJuYWlsIHZpZXc/IEFuZCBpZiB3ZSBkbywgd2hhdCBhYm91dCBub24tbW91c2Ug
ZXZlbnRzPwotI2lmIFdLX0FQSV9FTkFCTEVECi0gICAgaWYgKF9kYXRhLT5fdGh1bWJuYWlsVmll
dykKLSAgICAgICAgcmV0dXJuIFlFUzsKLSNlbmRpZgotCi0gICAgLy8gLXNjcm9sbFdoZWVsOiB1
c2VzIC1fc2hvdWxkSWdub3JlV2hlZWxFdmVudHMsIHNvIGZvciBhbGwgb3RoZXIgZXZlbnQgdHlw
ZXMgaXQgaXMgY29ycmVjdCB0byB1c2UgdGhpcy4KLSAgICByZXR1cm4gX2RhdGEtPl9pZ25vcmVz
Tm9uV2hlZWxNb3VzZUV2ZW50czsKLX0KLQotLSAoQk9PTClfc2hvdWxkSWdub3JlV2hlZWxFdmVu
dHMKLXsKLSNpZiBXS19BUElfRU5BQkxFRAotICAgIGlmIChfZGF0YS0+X3RodW1ibmFpbFZpZXcp
Ci0gICAgICAgIHJldHVybiBZRVM7Ci0jZW5kaWYKLQotICAgIHJldHVybiBOTzsKLX0KLQogLy8g
T3ZlcnJpZGUgdGhpcyBzbyB0aGF0IEFwcEtpdCB3aWxsIHNlbmQgdXMgYXJyb3cga2V5cyBhcyBr
ZXkgZG93biBldmVudHMgc28gd2UgY2FuCiAvLyBzdXBwb3J0IHRoZW0gdmlhIHRoZSBrZXkgYmlu
ZGluZ3MgbWVjaGFuaXNtLgogLSAoQk9PTClfd2FudHNLZXlEb3duRm9yRXZlbnQ6KE5TRXZlbnQg
KilldmVudApAQCAtMTE0OSw3ICsxMTI3LDcgQEAgc3RhdGljIE5TVG9vbGJhckl0ZW0gKnRvb2xi
YXJJdGVtKGlkIDxOU1ZhbGlkYXRlZFVzZXJJbnRlcmZhY2VJdGVtPiBpdGVtKQogI2RlZmluZSBO
QVRJVkVfTU9VU0VfRVZFTlRfSEFORExFUihTZWxlY3RvcikgXAogICAgIC0gKHZvaWQpU2VsZWN0
b3I6KE5TRXZlbnQgKil0aGVFdmVudCBcCiAgICAgeyBcCi0gICAgICAgIGlmIChzZWxmLl9zaG91
bGRJZ25vcmVNb3VzZUV2ZW50cykgXAorICAgICAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hl
ZWxFdmVudHMpIFwKICAgICAgICAgICAgIHJldHVybjsgXAogICAgICAgICBpZiAoTlNUZXh0SW5w
dXRDb250ZXh0ICpjb250ZXh0ID0gW3NlbGYgaW5wdXRDb250ZXh0XSkgeyBcCiAgICAgICAgICAg
ICBbY29udGV4dCBoYW5kbGVFdmVudDp0aGVFdmVudCBjb21wbGV0aW9uSGFuZGxlcjpeKEJPT0wg
aGFuZGxlZCkgeyBcCkBAIC0xMTY5LDcgKzExNDcsNyBAQCBzdGF0aWMgTlNUb29sYmFySXRlbSAq
dG9vbGJhckl0ZW0oaWQgPE5TVmFsaWRhdGVkVXNlckludGVyZmFjZUl0ZW0+IGl0ZW0pCiAjZGVm
aW5lIE5BVElWRV9NT1VTRV9FVkVOVF9IQU5ETEVSKFNlbGVjdG9yKSBcCiAgICAgLSAodm9pZClT
ZWxlY3RvcjooTlNFdmVudCAqKXRoZUV2ZW50IFwKICAgICB7IFwKLSAgICAgICAgaWYgKHNlbGYu
X3Nob3VsZElnbm9yZU1vdXNlRXZlbnRzKSBcCisgICAgICAgIGlmIChfZGF0YS0+X2lnbm9yZXNO
b25XaGVlbEV2ZW50cykgXAogICAgICAgICAgICAgcmV0dXJuOyBcCiAgICAgICAgIGlmIChbW3Nl
bGYgaW5wdXRDb250ZXh0XSBoYW5kbGVFdmVudDp0aGVFdmVudF0pIHsgXAogICAgICAgICAgICAg
TE9HKFRleHRJbnB1dCwgIiVzIHdhcyBoYW5kbGVkIGJ5IHRleHQgaW5wdXQgY29udGV4dCIsIFN0
cmluZygjU2VsZWN0b3IpLnN1YnN0cmluZygwLCBTdHJpbmcoI1NlbGVjdG9yKS5maW5kKCJJbnRl
cm5hbCIpKS5hc2NpaSgpLmRhdGEoKSk7IFwKQEAgLTEyMDYsNyArMTE4NCw3IEBAIE5BVElWRV9N
T1VTRV9FVkVOVF9IQU5ETEVSKHJpZ2h0TW91c2VVcCkKIAogLSAodm9pZClzY3JvbGxXaGVlbDoo
TlNFdmVudCAqKWV2ZW50CiB7Ci0gICAgaWYgKFtzZWxmIF9zaG91bGRJZ25vcmVXaGVlbEV2ZW50
c10pCisgICAgaWYgKF9kYXRhLT5faWdub3Jlc0FsbEV2ZW50cykKICAgICAgICAgcmV0dXJuOwog
CiAgICAgLy8gV29yayBhcm91bmQgPHJkYXI6Ly9wcm9ibGVtLzE5MDg2OTkzPiBieSBhbHdheXMg
Y2xlYXJpbmcgdGhlIGFjdGl2ZSB0ZXh0IGluZGljYXRvciBvbiBzY3JvbGwuCkBAIC0xMjI0LDcg
KzEyMDIsNyBAQCBOQVRJVkVfTU9VU0VfRVZFTlRfSEFORExFUihyaWdodE1vdXNlVXApCiAKIC0g
KHZvaWQpc3dpcGVXaXRoRXZlbnQ6KE5TRXZlbnQgKilldmVudAogewotICAgIGlmIChzZWxmLl9z
aG91bGRJZ25vcmVNb3VzZUV2ZW50cykKKyAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxF
dmVudHMpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghX2RhdGEtPl9hbGxvd3NCYWNrRm9y
d2FyZE5hdmlnYXRpb25HZXN0dXJlcykgewpAQCAtMTI0Miw3ICsxMjIwLDcgQEAgTkFUSVZFX01P
VVNFX0VWRU5UX0hBTkRMRVIocmlnaHRNb3VzZVVwKQogCiAtICh2b2lkKW1vdXNlTW92ZWQ6KE5T
RXZlbnQgKilldmVudAogewotICAgIGlmIChzZWxmLl9zaG91bGRJZ25vcmVNb3VzZUV2ZW50cykK
KyAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCiAgICAgICAgIHJldHVybjsK
IAogICAgIC8vIFdoZW4gYSB2aWV3IGlzIGZpcnN0IHJlc3BvbmRlciwgaXQgZ2V0cyBtb3VzZSBt
b3ZlZCBldmVudHMgZXZlbiB3aGVuIHRoZSBtb3VzZSBpcyBvdXRzaWRlIGl0cyB2aXNpYmxlIHJl
Y3QuCkBAIC0xMjU0LDcgKzEyMzIsNyBAQCBOQVRJVkVfTU9VU0VfRVZFTlRfSEFORExFUihyaWdo
dE1vdXNlVXApCiAKIC0gKHZvaWQpbW91c2VEb3duOihOU0V2ZW50ICopZXZlbnQKIHsKLSAgICBp
ZiAoc2VsZi5fc2hvdWxkSWdub3JlTW91c2VFdmVudHMpCisgICAgaWYgKF9kYXRhLT5faWdub3Jl
c05vbldoZWVsRXZlbnRzKQogICAgICAgICByZXR1cm47CiAKICAgICBbc2VsZiBfc2V0TW91c2VE
b3duRXZlbnQ6ZXZlbnRdOwpAQCAtMTI3MCw3ICsxMjQ4LDcgQEAgTkFUSVZFX01PVVNFX0VWRU5U
X0hBTkRMRVIocmlnaHRNb3VzZVVwKQogCiAtICh2b2lkKW1vdXNlVXA6KE5TRXZlbnQgKilldmVu
dAogewotICAgIGlmIChzZWxmLl9zaG91bGRJZ25vcmVNb3VzZUV2ZW50cykKKyAgICBpZiAoX2Rh
dGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCiAgICAgICAgIHJldHVybjsKIAogICAgIFtzZWxm
IF9zZXRNb3VzZURvd25FdmVudDpuaWxdOwpAQCAtMTI3OSw3ICsxMjU3LDcgQEAgTkFUSVZFX01P
VVNFX0VWRU5UX0hBTkRMRVIocmlnaHRNb3VzZVVwKQogCiAtICh2b2lkKW1vdXNlRHJhZ2dlZDoo
TlNFdmVudCAqKWV2ZW50CiB7Ci0gICAgaWYgKHNlbGYuX3Nob3VsZElnbm9yZU1vdXNlRXZlbnRz
KQorICAgIGlmIChfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykKICAgICAgICAgcmV0dXJu
OwogCiAgICAgaWYgKF9kYXRhLT5faWdub3JpbmdNb3VzZURyYWdnZWRFdmVudHMpCkBAIC0yMTgy
LDYgKzIxNjAsOSBAQCBzdGF0aWMgdm9pZCBleHRyYWN0VW5kZXJsaW5lcyhOU0F0dHJpYnV0ZWRT
dHJpbmcgKnN0cmluZywgVmVjdG9yPENvbXBvc2l0aW9uVW5kZQogCiAtIChCT09MKXBlcmZvcm1L
ZXlFcXVpdmFsZW50OihOU0V2ZW50ICopZXZlbnQKIHsKKyAgICBpZiAoX2RhdGEtPl9pZ25vcmVz
Tm9uV2hlZWxFdmVudHMpCisgICAgICAgIHJldHVybjsKKwogICAgIC8vIFRoZXJlJ3MgYSBjaGFu
Y2UgdGhhdCByZXNwb25kaW5nIHRvIHRoaXMgZXZlbnQgd2lsbCBydW4gYSBuZXN0ZWQgZXZlbnQg
bG9vcCwgYW5kCiAgICAgLy8gZmV0Y2hpbmcgYSBuZXcgZXZlbnQgbWlnaHQgcmVsZWFzZSB0aGUg
b2xkIG9uZS4gUmV0YWluaW5nIGFuZCB0aGVuIGF1dG9yZWxlYXNpbmcKICAgICAvLyB0aGUgY3Vy
cmVudCBldmVudCBwcmV2ZW50cyB0aGF0IGZyb20gY2F1c2luZyBhIHByb2JsZW0gaW5zaWRlIFdl
YktpdCBvciBBcHBLaXQgY29kZS4KQEAgLTIyMTksNiArMjIwMCw5IEBAIHN0YXRpYyB2b2lkIGV4
dHJhY3RVbmRlcmxpbmVzKE5TQXR0cmlidXRlZFN0cmluZyAqc3RyaW5nLCBWZWN0b3I8Q29tcG9z
aXRpb25VbmRlCiAKIC0gKHZvaWQpa2V5VXA6KE5TRXZlbnQgKil0aGVFdmVudAogeworICAgIGlm
IChfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykKKyAgICAgICAgcmV0dXJuOworCiAgICAg
TE9HKFRleHRJbnB1dCwgImtleVVwOiVwICVAIiwgdGhlRXZlbnQsIHRoZUV2ZW50KTsKICAgICAv
LyBXZSBkb24ndCBpbnRlcnByZXQgdGhlIGtleVVwIGV2ZW50LCBhcyB0aGlzIGJyZWFrcyBrZXkg
YmluZGluZ3MgKHNlZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
MDEwMD4pLgogICAgIF9kYXRhLT5fcGFnZS0+aGFuZGxlS2V5Ym9hcmRFdmVudChOYXRpdmVXZWJL
ZXlib2FyZEV2ZW50KHRoZUV2ZW50LCBmYWxzZSwgVmVjdG9yPEtleXByZXNzQ29tbWFuZD4oKSkp
OwpAQCAtMjIyNiw2ICsyMjEwLDkgQEAgc3RhdGljIHZvaWQgZXh0cmFjdFVuZGVybGluZXMoTlNB
dHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcsIFZlY3RvcjxDb21wb3NpdGlvblVuZGUKIAogLSAodm9p
ZClrZXlEb3duOihOU0V2ZW50ICopdGhlRXZlbnQKIHsKKyAgICBpZiAoX2RhdGEtPl9pZ25vcmVz
Tm9uV2hlZWxFdmVudHMpCisgICAgICAgIHJldHVybjsKKwogICAgIExPRyhUZXh0SW5wdXQsICJr
ZXlEb3duOiVwICVAJXMiLCB0aGVFdmVudCwgdGhlRXZlbnQsICh0aGVFdmVudCA9PSBfZGF0YS0+
X2tleURvd25FdmVudEJlaW5nUmVzZW50KSA/ICIgKHJlLXNlbnQpIiA6ICIiKTsKIAogICAgIC8v
IFRoZXJlJ3MgYSBjaGFuY2UgdGhhdCByZXNwb25kaW5nIHRvIHRoaXMgZXZlbnQgd2lsbCBydW4g
YSBuZXN0ZWQgZXZlbnQgbG9vcCwgYW5kCkBAIC0yMjYxLDYgKzIyNDgsOSBAQCBzdGF0aWMgdm9p
ZCBleHRyYWN0VW5kZXJsaW5lcyhOU0F0dHJpYnV0ZWRTdHJpbmcgKnN0cmluZywgVmVjdG9yPENv
bXBvc2l0aW9uVW5kZQogCiAtICh2b2lkKWZsYWdzQ2hhbmdlZDooTlNFdmVudCAqKXRoZUV2ZW50
CiB7CisgICAgaWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRzKQorICAgICAgICByZXR1
cm47CisKICAgICBMT0coVGV4dElucHV0LCAiZmxhZ3NDaGFuZ2VkOiVwICVAIiwgdGhlRXZlbnQs
IHRoZUV2ZW50KTsKIAogICAgIC8vIFRoZXJlJ3MgYSBjaGFuY2UgdGhhdCByZXNwb25kaW5nIHRv
IHRoaXMgZXZlbnQgd2lsbCBydW4gYSBuZXN0ZWQgZXZlbnQgbG9vcCwgYW5kCkBAIC0yODMzLDYg
KzI4MjMsOSBAQCBzdGF0aWMgdm9pZCoga2V5VmFsdWVPYnNlcnZpbmdDb250ZXh0ID0gJmtleVZh
bHVlT2JzZXJ2aW5nQ29udGV4dDsKICNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwODAKIC0gKHZvaWQpcXVpY2tMb29rV2l0aEV2ZW50OihOU0V2ZW50ICopZXZlbnQKIHsK
KyAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCisgICAgICAgIHJldHVybjsK
KwogICAgIE5TUG9pbnQgbG9jYXRpb25JblZpZXdDb29yZGluYXRlcyA9IFtzZWxmIGNvbnZlcnRQ
b2ludDpbZXZlbnQgbG9jYXRpb25JbldpbmRvd10gZnJvbVZpZXc6bmlsXTsKICAgICBfZGF0YS0+
X3BhZ2UtPnBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihGbG9hdFBvaW50KGxvY2F0
aW9uSW5WaWV3Q29vcmRpbmF0ZXMueCwgbG9jYXRpb25JblZpZXdDb29yZGluYXRlcy55KSk7CiB9
CkBAIC0zNjk4LDE2ICszNjkxLDMxIEBAIHN0YXRpYyBOU1N0cmluZyAqcGF0aFdpdGhVbmlxdWVG
aWxlbmFtZUZvclBhdGgoTlNTdHJpbmcgKnBhdGgpCiAKIC0gKHZvaWQpcHJlcGFyZUZvck1lbnU6
KE5TTWVudSAqKW1lbnUgd2l0aEV2ZW50OihOU0V2ZW50ICopZXZlbnQKIHsKKyAgICBpZiAoX2Rh
dGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpIHsKKyAgICAgICAgW21lbnUgY2FuY2VsVHJhY2tp
bmddOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgW19kYXRhLT5fYWN0aW9uTWVudUNv
bnRyb2xsZXIgcHJlcGFyZUZvck1lbnU6bWVudSB3aXRoRXZlbnQ6ZXZlbnRdOwogfQogCiAtICh2
b2lkKXdpbGxPcGVuTWVudTooTlNNZW51ICopbWVudSB3aXRoRXZlbnQ6KE5TRXZlbnQgKilldmVu
dAogeworICAgIGlmIChfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykgeworICAgICAgICBb
bWVudSBjYW5jZWxUcmFja2luZ107CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBbX2Rh
dGEtPl9hY3Rpb25NZW51Q29udHJvbGxlciB3aWxsT3Blbk1lbnU6bWVudSB3aXRoRXZlbnQ6ZXZl
bnRdOwogfQogCiAtICh2b2lkKWRpZENsb3NlTWVudTooTlNNZW51ICopbWVudSB3aXRoRXZlbnQ6
KE5TRXZlbnQgKilldmVudAogeworICAgIGlmIChfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50
cykgeworICAgICAgICBbbWVudSBjYW5jZWxUcmFja2luZ107CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKICAgICBbX2RhdGEtPl9hY3Rpb25NZW51Q29udHJvbGxlciBkaWRDbG9zZU1lbnU6bWVu
dSB3aXRoRXZlbnQ6ZXZlbnRdOwogfQogCkBAIC00MDEwLDE0ICs0MDE4LDM1IEBAIHN0YXRpYyBO
U1N0cmluZyAqcGF0aFdpdGhVbmlxdWVGaWxlbmFtZUZvclBhdGgoTlNTdHJpbmcgKnBhdGgpCiAg
ICAgcmV0dXJuIF9kYXRhLT5fYWxsb3dzQmFja0ZvcndhcmROYXZpZ2F0aW9uR2VzdHVyZXM7CiB9
CiAKKy0gKHZvaWQpX3NldElnbm9yZXNBbGxFdmVudHM6KEJPT0wpaWdub3Jlc0FsbEV2ZW50cwor
eworICAgIF9kYXRhLT5faWdub3Jlc0FsbEV2ZW50cyA9IGlnbm9yZXNBbGxFdmVudHM7CisgICAg
W3NlbGYgX3NldElnbm9yZXNOb25XaGVlbEV2ZW50czppZ25vcmVzQWxsRXZlbnRzXTsKK30KKwor
Ly8gRm9yd2FyZCBfc2V0SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHMgdG8gX3NldElnbm9yZXNO
b25XaGVlbEV2ZW50cyB0byBhdm9pZCBicmVha2luZyBleGlzdGluZyBjbGllbnRzLgogLSAodm9p
ZClfc2V0SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6KEJPT0wpaWdub3Jlc05vbldoZWVsTW91
c2VFdmVudHMKIHsKLSAgICBfZGF0YS0+X2lnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzID0gaWdu
b3Jlc05vbldoZWVsTW91c2VFdmVudHM7CisgICAgW3NlbGYgX3NldElnbm9yZXNOb25XaGVlbEV2
ZW50czppZ25vcmVzTm9uV2hlZWxNb3VzZUV2ZW50c107Cit9CisKKy0gKHZvaWQpX3NldElnbm9y
ZXNOb25XaGVlbEV2ZW50czooQk9PTClpZ25vcmVzTm9uV2hlZWxFdmVudHMKK3sKKyAgICBpZiAo
X2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMgPT0gaWdub3Jlc05vbldoZWVsRXZlbnRzKQor
ICAgICAgICByZXR1cm47CisKKyAgICBfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cyA9IGln
bm9yZXNOb25XaGVlbEV2ZW50czsKKyAgICBfZGF0YS0+X3BhZ2UtPnNldFNob3VsZERpc3BhdGNo
RmFrZU1vdXNlTW92ZUV2ZW50cyghaWdub3Jlc05vbldoZWVsRXZlbnRzKTsKK30KKworLSAoQk9P
TClfaWdub3Jlc05vbldoZWVsRXZlbnRzCit7CisgICAgcmV0dXJuIF9kYXRhLT5faWdub3Jlc05v
bldoZWVsRXZlbnRzOwogfQogCi0tIChCT09MKV9pZ25vcmVzTm9uV2hlZWxNb3VzZUV2ZW50cwor
LSAoQk9PTClfaWdub3Jlc0FsbEV2ZW50cwogewotICAgIHJldHVybiBfZGF0YS0+X2lnbm9yZXNO
b25XaGVlbE1vdXNlRXZlbnRzOworICAgIHJldHVybiBfZGF0YS0+X2lnbm9yZXNBbGxFdmVudHM7
CiB9CiAKIC0gKHZvaWQpX2Rpc3BhdGNoU2V0VG9wQ29udGVudEluc2V0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXdJbnRlcm5hbC5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3SW50ZXJuYWwuaAppbmRleCA2NTRjZjk4
NWMwMmYyNzQzNzQzOTBjNThmYWRlYzYyZDY0Njg1NzNjLi43MTlhZDQwZWNlYzRiMWM5ZTQ4NWJj
NTZmZTI5ZGVkYjdiYzRhZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL21hYy9XS1ZpZXdJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvbWFjL1dLVmlld0ludGVybmFsLmgKQEAgLTExMCw4ICsxMTAsNiBAQCBzdHJ1Y3QgV2ViUGFn
ZUNvbmZpZ3VyYXRpb247CiAtICh2b2lkKV9zZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzOihC
T09MKXN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXM7CiAtIChCT09MKV9zdXBwcmVzc1Zpc2liaWxp
dHlVcGRhdGVzOwogCi0tIChCT09MKV9zaG91bGRJZ25vcmVNb3VzZUV2ZW50czsKLQogLSAodm9p
ZClfZGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0Rm9yTWFpbkZyYW1lOwogLSAodm9pZClf
ZGlkRmluaXNoTG9hZEZvck1haW5GcmFtZTsKIC0gKHZvaWQpX2RpZFNhbWVEb2N1bWVudE5hdmln
YXRpb25Gb3JNYWluRnJhbWU6KFdlYktpdDo6U2FtZURvY3VtZW50TmF2aWdhdGlvblR5cGUpdHlw
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggNTE2NzJj
YzY5NDk5M2JhODNmMjVmYjg4ZjE5OGI2NzQ1OTViNjkzYy4uMjAyOTYwYWRjYjNhZDIyZTI1MjVm
ZTlkOTBlZWFjMWFjZDM3ZjA3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKQEAgLTUzNDIsNCArNTM0Miw5IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRQZXJm
b3JtQWN0aW9uTWVudUhpdFRlc3QoY29uc3QgQWN0aW9uTWVudUhpdFRlc3RSZXN1bHQmIHJlCiB9
CiAjZW5kaWYKIAordm9pZCBXZWJQYWdlUHJveHk6OnNldFNob3VsZERpc3BhdGNoRmFrZU1vdXNl
TW92ZUV2ZW50cyhib29sIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cykKK3sKKyAg
ICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFNob3VsZERpc3BhdGNoRmFr
ZU1vdXNlTW92ZUV2ZW50cyhzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMpLCBtX3Bh
Z2VJRCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCmluZGV4IDZkZGI4NWIyNjFiMGYyODI0OTllYjI5ZjU5MWFkYTU0NjI3
NDAxMTEuLjNjOGRhMDJiMTI2MmNhMTM5NTJlYmNiNGE1MjNlODczOGExY2Y2ZmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTk0Nyw2ICs5NDcsOCBAQCBwdWJs
aWM6CiAjZW5kaWYKICAgICB2b2lkIGdldEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFN0cmluZyYgd29y
ZCwgY29uc3QgU3RyaW5nJiBjb250ZXh0LCBWZWN0b3I8U3RyaW5nPiYgZ3Vlc3Nlcyk7CiAKKyAg
ICB2b2lkIHNldFNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyhib29sKTsKKwogcHJp
dmF0ZToKICAgICBXZWJQYWdlUHJveHkoUGFnZUNsaWVudCYsIFdlYlByb2Nlc3NQcm94eSYsIHVp
bnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNvbmZpZ3VyYXRpb24mKTsKICAgICB2b2lkIHBs
YXRmb3JtSW5pdGlhbGl6ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L21hYy9XS0FjdGlvbk1lbnVDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L21hYy9XS0FjdGlvbk1lbnVDb250cm9sbGVyLm1tCmluZGV4IGUxMjc2NzVmNjI0M2Q1ZTMxOGZh
MGEzMGZkYWY0MzdhYjZiOTUyNWUuLjRkMWQ0OTU1OTBmMTQzOTZhMDFlZTAyNjJhZWE0M2NhYTM3
NDM0NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tBY3Rpb25N
ZW51Q29udHJvbGxlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLQWN0
aW9uTWVudUNvbnRyb2xsZXIubW0KQEAgLTE0Nyw3ICsxNDcsNyBAQCBzdGF0aWMgY29uc3QgQ0dG
bG9hdCBwcmV2aWV3Vmlld1RpdGxlSGVpZ2h0ID0gMzQ7CiAgICAgX3ByZXZpZXdWaWV3ID0gW19k
ZWxlZ2F0ZSBwYWdlUHJldmlld1ZpZXdDb250cm9sbGVyOnNlbGYgdmlld0ZvclByZXZpZXdpbmdV
Ukw6X3VybC5nZXQoKSBpbml0aWFsRnJhbWVTaXplOmRlZmF1bHRGcmFtZS5zaXplXTsKICAgICBp
ZiAoIV9wcmV2aWV3VmlldykgewogICAgICAgICBSZXRhaW5QdHI8V0tXZWJWaWV3PiB3ZWJWaWV3
ID0gYWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpkZWZhdWx0RnJhbWVd
KTsKLSAgICAgICAgW3dlYlZpZXcgX3NldElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOllFU107
CisgICAgICAgIFt3ZWJWaWV3IF9zZXRJZ25vcmVzTm9uV2hlZWxFdmVudHM6WUVTXTsKICAgICAg
ICAgaWYgKF91cmwpIHsKICAgICAgICAgICAgIE5TVVJMUmVxdWVzdCAqcmVxdWVzdCA9IFtOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6X3VybC5nZXQoKV07CiAgICAgICAgICAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKQEAgLTI1MywxMSArMjUzLDYgQEAgc3RhdGljIGNvbnN0
IENHRmxvYXQgcHJldmlld1ZpZXdUaXRsZUhlaWdodCA9IDM0OwogICAgIGlmIChtZW51ICE9IF93
a1ZpZXcuYWN0aW9uTWVudSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKF93a1ZpZXcuX3No
b3VsZElnbm9yZU1vdXNlRXZlbnRzKSB7Ci0gICAgICAgIFttZW51IGNhbmNlbFRyYWNraW5nXTsK
LSAgICAgICAgcmV0dXJuOwotICAgIH0KLQogICAgIFtzZWxmIGRpc21pc3NBY3Rpb25NZW51UG9w
b3ZlcnNdOwogCiAgICAgX2V2ZW50TG9jYXRpb25JblZpZXcgPSBbX3drVmlldyBjb252ZXJ0UG9p
bnQ6ZXZlbnQubG9jYXRpb25JbldpbmRvdyBmcm9tVmlldzpuaWxdOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwCmluZGV4IGJiM2M2ODFlNWQ0ZWUwNTg0MjUyNmEzNTFjMjE0YmUzZmI4N2IxNDkuLjdj
ZTI4MWQ4ZGI0ZjdkMWRiMzU0ZjhjNWVhNmEzNmUwNTYzZjQ0ODcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKQEAgLTEwODAsNyArMTA4MCwxMSBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6aGFz
UmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0CiB7CiAgICAg
cmV0dXJuIChpc1RleHRPbmx5ICYmIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmhhc1NlbGVjdGlvblNl
cnZpY2VzKCkpIHx8IFdlYlByb2Nlc3M6OnNoYXJlZCgpLmhhc1JpY2hDb250ZW50U2VydmljZXMo
KTsKIH0KLQogI2VuZGlmCiAKK2Jvb2wgV2ViQ2hyb21lQ2xpZW50OjpzaG91bGREaXNwYXRjaEZh
a2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdAoreworICAgIHJldHVybiBtX3BhZ2UtPnNob3VsZERp
c3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5oCmluZGV4IDc4MjM4ZDI4OWZmNTgwNDk0MTAyY2M1YjJmMTY2OGNm
ZDEyYmU5NzUuLjRmY2E0ODdiOGFhMjg2NTBmMjg1Y2I0YjE3NGE1MmY0MGY1MWZhNGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaApAQCAtMzA5LDYgKzMwOSw4IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25z
dCBvdmVycmlkZTsKICNlbmRpZgogCisgICAgdmlydHVhbCBib29sIHNob3VsZERpc3BhdGNoRmFr
ZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0IG92ZXJyaWRlOworCiAgICAgU3RyaW5nIG1fY2FjaGVk
VG9vbFRpcDsKICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExh
cmdlc3RGcmFtZTsKICAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCmluZGV4IGRjY2UxY2RiNmIxOGM4Mzk5NDI4ODExMjBiOTJmMzY5ZGJhZjFjYjcuLjVj
ODYyODgzODA2Y2FiOWU5NzY2ZmRkMDk3ZDViM2VlZjdlNTgxY2EgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTMzNCw2ICszMzQsNyBAQCBX
ZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycyYgcGFyYW1ldGVycykKICAgICAsIG1fc3lzdGVtV2ViR0xQb2xpY3koV2ViR0xBbGxv
d0NyZWF0aW9uKQogI2VuZGlmCiAgICAgLCBtX21haW5GcmFtZVByb2dyZXNzQ29tcGxldGVkKGZh
bHNlKQorICAgICwgbV9zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHModHJ1ZSkKIHsK
ICAgICBBU1NFUlQobV9wYWdlSUQpOwogICAgIC8vIEZJWE1FOiBUaGlzIGlzIGEgbm9uLWlkZWFs
IGxvY2F0aW9uIGZvciB0aGlzIFNldHRpbmcgYW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCAxYzNjMjNmYWVkODliNmNmZDk0MzJmN2FlNWM3MDQ0
NGQyZWMwZTI1Li5mM2Y5YjkxYjkxYTc3ODliMGY5MTkwMjg1ZWNlMDhlMzk1YzE4NTcwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKQEAgLTg2MSw2ICs4
NjEsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRDaGFuZ2VTY3JvbGxPZmZzZXRGb3JGcmFtZShX
ZWJDb3JlOjpGcmFtZSopOwogCiAgICAgdm9pZCBzZXRNYWluRnJhbWVQcm9ncmVzc0NvbXBsZXRl
ZChib29sIGNvbXBsZXRlZCkgeyBtX21haW5GcmFtZVByb2dyZXNzQ29tcGxldGVkID0gY29tcGxl
dGVkOyB9CisgICAgYm9vbCBzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25z
dCB7IHJldHVybiBtX3Nob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50czsgfQorCiBwcml2
YXRlOgogICAgIFdlYlBhZ2UodWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzJik7CiAKQEAgLTEwODIsNiArMTA4NCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBk
YXRhRGV0ZWN0b3JzRGlkSGlkZVVJKFdlYkNvcmU6OlBhZ2VPdmVybGF5OjpQYWdlT3ZlcmxheUlE
KTsKICNlbmRpZgogCisgICAgdm9pZCBzZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVu
dHMoYm9vbCBkaXNwYXRjaCkgeyBtX3Nob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyA9
IGRpc3BhdGNoOyB9CisKICAgICB1aW50NjRfdCBtX3BhZ2VJRDsKIAogICAgIHN0ZDo6dW5pcXVl
X3B0cjxXZWJDb3JlOjpQYWdlPiBtX3BhZ2U7CkBAIC0xMzI2LDYgKzEzMzAsNyBAQCBwcml2YXRl
OgogI2VuZGlmCiAKICAgICBib29sIG1fbWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0ZWQ7CisgICAg
Ym9vbCBtX3Nob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50czsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbgppbmRleCBiOTc4MmFiNGVhMzBkMTE4MmZkY2I5YzFkNDM3
N2Y5ZjA4ZjJiMWZlLi4wOTExYmE5ZTcwNDE2NTQzNWY4ZmRjNTJlOGExYmExNDU2ZWQ2YjIyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbgpAQCAtNDEwLDQgKzQxMCw2IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2UgTGVnYWN5
UmVjZWl2ZXIgewogICAgIERhdGFEZXRlY3RvcnNEaWRDaGFuZ2VVSShXZWJDb3JlOjpQYWdlT3Zl
cmxheTo6UGFnZU92ZXJsYXlJRCBwYWdlT3ZlcmxheSkKICAgICBEYXRhRGV0ZWN0b3JzRGlkSGlk
ZVVJKFdlYkNvcmU6OlBhZ2VPdmVybGF5OjpQYWdlT3ZlcmxheUlEIHBhZ2VPdmVybGF5KQogI2Vu
ZGlmCisKKyAgICBTZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoYm9vbCBzaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMpCiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242513</attachid>
            <date>2014-12-03 12:39:34 -0800</date>
            <delta_ts>2014-12-05 13:26:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139219-20141203124006.patch</filename>
            <type>text/plain</type>
            <size>25280</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NzQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTMwZTQ4ZTlkYmUzMzc1
MmQxNGVjNjljMTkzOGU2YmM2NmRmYjdmZi4uZDA4YjkxMDBjNDRiYTVlZjRhNzJhMWExYTBiYzg0
MGYwNDE2YTUwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE0LTEyLTAzICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkIGlu
cHV0IHNob3VsZCBiZSBkaXNhYmxlZCBpbiB0aGUgcHJldmlldyBwb3BvdmVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzkyMTkKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzE5MDUyMzgxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNocm9tZUNsaWVudDo6c2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKToKKyAgICAg
ICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRs
ZXI6OmRpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50U29vbik6CisgICAgICAgIEFsbG93IENocm9t
ZUNsaWVudCB0byBkaXNhYmxlIHRoZSBkaXNwYXRjaCBvZiAiZmFrZSIgbW91c2VNb3ZlIGV2ZW50
cworICAgICAgICB0aGF0IGhhcHBlbnMgZHVyaW5nIHNjcm9sbGluZy4KKwogMjAxNC0xMi0wMyAg
cGVhdm9Ab3V0bG9vay5jb20gIDxwZWF2b0BvdXRsb29rLmNvbT4KIAogICAgICAgICBbVGV4TWFw
XSBSZWR1bmRhbnQgbWV0aG9kIGluIEdyYXBoaWNzTGF5ZXJUZXh0dXJlTWFwcGVyLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CmluZGV4IGYxYmY5YjRmNjkyMDM5ODZhNGY2OGQ1NmZjNWRiMjkzNDAzYTE4MDkuLmFhMzBiNWMz
ZTM4MDYwOThhMWVhNzhiOWFiZGMwNjM5Mjg4YzY1ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw4
NyBAQAorMjAxNC0xMi0wMyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4K
KworICAgICAgICBLZXlib2FyZCBpbnB1dCBzaG91bGQgYmUgZGlzYWJsZWQgaW4gdGhlIHByZXZp
ZXcgcG9wb3ZlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTM5MjE5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xOTA1MjM4MT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIHN1cmUgdGhhdCBrZXli
b2FyZCBpbnB1dCwgUXVpY2sgTG9vaywgZXRjLiBhcmUgYmxvY2tlZCBpbiBwcmV2aWV3IHBvcG92
ZXJzCisgICAgICAgIGFuZCBXS1RodW1ibmFpbFZpZXdzLiBBbHNvIGJsb2NrIHRoZSBmYWtlIG1v
dXNlTW92ZSBldmVudHMgdGhhdCBvcmlnaW5hdGUgaW4KKyAgICAgICAgdGhlIFdlYiBwcm9jZXNz
IHVwb24gc2Nyb2xsaW5nLCBiZWNhdXNlIHdlIHdlcmUgbWlzc2luZyB0aG9zZSBkZXNwaXRlIGJs
b2NraW5nCisgICAgICAgIG9yZGluYXJ5IG1vdXNlTW92ZSBldmVudHMuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL21hYy9XS1ZpZXcubW06CisgICAgICAgIFJlbmFtZSBfaWdub3Jlc05vbldoZWVsTW91c2VF
dmVudHMgdG8gX2lnbm9yZXNOb25XaGVlbEV2ZW50cywgYmVjYXVzZSBpdCB3aWxsCisgICAgICAg
IGFwcGx5IG5vdCBvbmx5IHRvIG1vdXNlIGV2ZW50cyBidXQgYWxzbyBrZXkgZXZlbnRzLCBRdWlj
ayBMb29rIGV2ZW50cywgbWVudQorICAgICAgICBwcmVwYXJhdGlvbiBldmVudHMsIHN3aXBlIGV2
ZW50cywgZXRjLgorCisgICAgICAgIEFkZCBfaWdub3Jlc0FsbEV2ZW50cywgd2hpY2ggbWVhbnMg
dGhlIHNhbWUgdGhpbmcgYXMgX2lnbm9yZXNOb25XaGVlbEV2ZW50cworICAgICAgICB3aXRoIHRo
ZSBhZGRpdGlvbiBvZiBpZ25vcmluZyBzY3JvbGxXaGVlbCBldmVudHMuCisKKyAgICAgICAgKC1b
V0tWaWV3IHNjcm9sbFdoZWVsOl0pOgorICAgICAgICAoLVtXS1ZpZXcgc3dpcGVXaXRoRXZlbnQ6
XSk6CisgICAgICAgICgtW1dLVmlldyBtb3VzZU1vdmVkOl0pOgorICAgICAgICAoLVtXS1ZpZXcg
bW91c2VEb3duOl0pOgorICAgICAgICAoLVtXS1ZpZXcgbW91c2VVcDpdKToKKyAgICAgICAgKC1b
V0tWaWV3IG1vdXNlRHJhZ2dlZDpdKToKKyAgICAgICAgQWRqdXN0IHRvIHRoZSBuZXcgbmFtZS4K
KworICAgICAgICAoLVtXS1ZpZXcgcGVyZm9ybUtleUVxdWl2YWxlbnQ6XSk6CisgICAgICAgICgt
W1dLVmlldyBrZXlVcDpdKToKKyAgICAgICAgKC1bV0tWaWV3IGtleURvd246XSk6CisgICAgICAg
ICgtW1dLVmlldyBmbGFnc0NoYW5nZWQ6XSk6CisgICAgICAgICgtW1dLVmlldyBxdWlja0xvb2tX
aXRoRXZlbnQ6XSk6CisgICAgICAgICgtW1dLVmlldyBwcmVwYXJlRm9yTWVudTp3aXRoRXZlbnQ6
XSk6CisgICAgICAgICgtW1dLVmlldyB3aWxsT3Blbk1lbnU6d2l0aEV2ZW50Ol0pOgorICAgICAg
ICAoLVtXS1ZpZXcgZGlkQ2xvc2VNZW51OndpdGhFdmVudDpdKToKKyAgICAgICAgQmxvY2sgYWxs
IG9mIHRoZXNlIGV2ZW50cyBhcyB3ZWxsIGFzIHRob3NlIHdlIHdlcmUgcHJldmlvdXNseSBibG9j
a2luZy4KKworICAgICAgICAoLVtXS1ZpZXcgX3NldElnbm9yZXNBbGxFdmVudHM6XSk6CisgICAg
ICAgICgtW1dLVmlldyBfc2V0SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6XSk6CisgICAgICAg
ICgtW1dLVmlldyBfc2V0SWdub3Jlc05vbldoZWVsRXZlbnRzOl0pOgorICAgICAgICAoLVtXS1Zp
ZXcgX2lnbm9yZXNOb25XaGVlbEV2ZW50c10pOgorICAgICAgICAoLVtXS1ZpZXcgX2lnbm9yZXNB
bGxFdmVudHNdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXdJbnRlcm5hbC5o
OgorICAgICAgICBBZGp1c3QgdG8gdGhlIG5ldyBuYW1lcyBhbmQgdGhlIGFkZGl0aW9uIG9mIGln
bm9yZXNBbGxFdmVudHMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLQWN0aW9uTWVudUNv
bnRyb2xsZXIubW06CisgICAgICAgICgtW1dLUGFnZVByZXZpZXdWaWV3Q29udHJvbGxlciBsb2Fk
Vmlld10pOgorICAgICAgICBBZGp1c3QgdG8gdGhlIG5ldyBuYW1lLgorCisgICAgICAgICgtW1dL
QWN0aW9uTWVudUNvbnRyb2xsZXIgcHJlcGFyZUZvck1lbnU6d2l0aEV2ZW50Ol0pOgorICAgICAg
ICBNb3ZlIGJhaWxpbmcgZnJvbSBwcmVwYXJlRm9yTWVudTogdXAgdG8gV0tWaWV3LgorCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2Vi
VmlldyBfaWdub3Jlc05vbldoZWVsRXZlbnRzXSk6CisgICAgICAgICgtW1dLV2ViVmlldyBfc2V0
SWdub3Jlc05vbldoZWVsRXZlbnRzOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgX2lnbm9yZXNO
b25XaGVlbE1vdXNlRXZlbnRzXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLV2ViVmlldyBfc2V0
SWdub3Jlc05vbldoZWVsTW91c2VFdmVudHM6XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdJbnRlcm5hbC5oOgorICAgICAgICBBZGp1c3QgdG8gdGhl
IG5ldyBuYW1lICh3aXRob3V0ICJtb3VzZSIgaW4gaXQpLgorCisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tUaHVtYm5haWxWaWV3Lm1tOgorICAgICAgICAoLVtfV0tUaHVtYm5haWxW
aWV3IF92aWV3V2FzVW5wYXJlbnRlZF0pOgorICAgICAgICAoLVtfV0tUaHVtYm5haWxWaWV3IF92
aWV3V2FzUGFyZW50ZWRdKToKKyAgICAgICAgRXhwbGljaXRseSB0ZWxsIFdLVmlldyB0byBkaXNh
YmxlIGV2ZW50IGhhbmRsaW5nIHdoaWxlIHRodW1ibmFpbGVkLAorICAgICAgICBpbnN0ZWFkIG9m
IGhhdmluZyBXS1ZpZXcgc3BlY2lhbC1jYXNlIHRodW1ibmFpbCB2aWV3cyBpbnRlcm5hbGx5Lgor
CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2VQcm94eTo6c2V0U2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJD
aHJvbWVDbGllbnQ6OnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyk6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6OldlYlBhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50
cyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFNob3VsZERpc3BhdGNoRmFrZU1vdXNl
TW92ZUV2ZW50cyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2Fn
ZXMuaW46CisgICAgICAgIFBsdW1iIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cyBm
cm9tIHRoZSBVSSBwcm9jZXNzIHRvIHRoZSBXZWIgcHJvY2VzcworICAgICAgICBhbmQgdGhyb3Vn
aCB0byBXZWJLaXQyJ3MgQ2hyb21lQ2xpZW50IGltcGxlbWVudGF0aW9uLgorCiAyMDE0LTEyLTAz
ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3Zl
IEVOQUJMRV9VSV9QUk9DRVNTX1NUT1JBR0UgZGVmaW5lLCBpdCdzIGFsd2F5cyAxLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ2hyb21lQ2xpZW50LmgKaW5kZXggMmNkZGE0OWViMzQxODk2ZGRlNDcwMmE1YjM2NTAx
NjUxODdjNmM5MS4uNWQ5ZmU2MTdhZTgzYTY0NTU2ZTM5NTJjMGJhZTA2MWVjNzg2OTcyMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCkBAIC00NDYsNiArNDQ2LDggQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgLyogaXNU
ZXh0T25seSAqLykgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogCisgICAgdmlydHVh
bCBib29sIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0IHsgcmV0dXJu
IHRydWU7IH0KKwogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkNocm9tZUNsaWVudCgpIHsgfQog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBjZjk0M2RhMTMzZjI3MGQ2
NmI4MmMyMzI4YjJmMzVjNzEwZGYxMWViLi40NWFhOGNkMWM3OTliMjNiNWExNGU3ZTBmZmFhOGJl
NWFlM2JlZGYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yOTA0LDYg
KzI5MDQsMTEgQEAgdm9pZCBFdmVudEhhbmRsZXI6OmRpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50
U29vbigpCiAgICAgaWYgKCFtX2ZyYW1lLnNldHRpbmdzKCkuZGV2aWNlU3VwcG9ydHNNb3VzZSgp
KQogICAgICAgICByZXR1cm47CiAKKyAgICBpZiAoUGFnZSogcGFnZSA9IG1fZnJhbWUucGFnZSgp
KSB7CisgICAgICAgIGlmICghcGFnZS0+Y2hyb21lKCkuY2xpZW50KCkuc2hvdWxkRGlzcGF0Y2hG
YWtlTW91c2VNb3ZlRXZlbnRzKCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAg
Ly8gSWYgdGhlIGNvbnRlbnQgaGFzIGV2ZXIgdGFrZW4gbG9uZ2VyIHRoYW4gZmFrZU1vdXNlTW92
ZVNob3J0SW50ZXJ2YWwgd2UKICAgICAvLyByZXNjaGVkdWxlIHRoZSB0aW1lciBhbmQgdXNlIGEg
bG9uZ2VyIHRpbWUuIFRoaXMgd2lsbCBjYXVzZSB0aGUgY29udGVudAogICAgIC8vIHRvIHJlY2Vp
dmUgdGhlc2UgbW92ZXMgb25seSBhZnRlciB0aGUgdXNlciBpcyBkb25lIHNjcm9sbGluZywgcmVk
dWNpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tW
aWV3UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ZpZXdQ
cml2YXRlLmgKaW5kZXggOTJiYTBmYjQ1NWU0MzdjNWMyMGYyMWQ0NzA3YTAyYjFjYTllMWRiOS4u
ZTVlNDllMWU4ODAyODMxNDA3NDU4NTFlZmQ2NTc4OTRmM2ZhZDM3ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ZpZXdQcml2YXRlLmgKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ZpZXdQcml2YXRlLmgKQEAgLTgxLDcg
KzgxLDggQEAKIEBwcm9wZXJ0eSAocmVhZG9ubHksIGdldHRlcj1pc1VzaW5nVUlTaWRlQ29tcG9z
aXRpbmcpIEJPT0wgdXNpbmdVSVNpZGVDb21wb3NpdGluZzsKIEBwcm9wZXJ0eSAocmVhZHdyaXRl
KSBCT09MIGFsbG93c01hZ25pZmljYXRpb247CiBAcHJvcGVydHkgKHJlYWR3cml0ZSkgZG91Ymxl
IG1hZ25pZmljYXRpb247Ci1AcHJvcGVydHkgKHJlYWR3cml0ZSwgc2V0dGVyPV9zZXRJZ25vcmVz
Tm9uV2hlZWxNb3VzZUV2ZW50czopIEJPT0wgX2lnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOwor
QHByb3BlcnR5IChyZWFkd3JpdGUsIHNldHRlcj1fc2V0SWdub3Jlc05vbldoZWVsRXZlbnRzOikg
Qk9PTCBfaWdub3Jlc05vbldoZWVsRXZlbnRzOworQHByb3BlcnR5IChyZWFkd3JpdGUsIHNldHRl
cj1fc2V0SWdub3Jlc0FsbEV2ZW50czopIEJPT0wgX2lnbm9yZXNBbGxFdmVudHM7CiBAcHJvcGVy
dHkgKHJlYWR3cml0ZSkgQk9PTCBhbGxvd3NCYWNrRm9yd2FyZE5hdmlnYXRpb25HZXN0dXJlczsK
IEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFRvcENvbnRlbnRJbnNldDopIENHRmxv
YXQgX3RvcENvbnRlbnRJbnNldDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbQppbmRleCA3ZDMxYjM4ODhjMzBhODI4YmFkYjYxOTYwMTRjOTUz
NjhhMWY4YTEyLi5hYjRjNTUwODg1ZDgwOGJhMDM3ODQxNzA4ZjljODcxMWE2MzdhZmNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpAQCAt
MTU4MywxNCArMTU4MywxNCBAQCBzdGF0aWMgV2ViQ29yZTo6RmxvYXRQb2ludCBjb25zdHJhaW5D
b250ZW50T2Zmc2V0KFdlYkNvcmU6OkZsb2F0UG9pbnQgY29udGVudE9mZgogICAgIFtfd2tWaWV3
IHNldE1hZ25pZmljYXRpb246bWFnbmlmaWNhdGlvbiBjZW50ZXJlZEF0UG9pbnQ6TlNQb2ludEZy
b21DR1BvaW50KHBvaW50KV07CiB9CiAKLS0gKEJPT0wpX2lnbm9yZXNOb25XaGVlbE1vdXNlRXZl
bnRzCistIChCT09MKV9pZ25vcmVzTm9uV2hlZWxFdmVudHMKIHsKLSAgICByZXR1cm4gW193a1Zp
ZXcgX2lnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzXTsKKyAgICByZXR1cm4gW193a1ZpZXcgX2ln
bm9yZXNOb25XaGVlbEV2ZW50c107CiB9CiAKLS0gKHZvaWQpX3NldElnbm9yZXNOb25XaGVlbE1v
dXNlRXZlbnRzOihCT09MKWlnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzCistICh2b2lkKV9zZXRJ
Z25vcmVzTm9uV2hlZWxFdmVudHM6KEJPT0wpaWdub3Jlc05vbldoZWVsRXZlbnRzCiB7Ci0gICAg
W193a1ZpZXcgX3NldElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOmlnbm9yZXNOb25XaGVlbE1v
dXNlRXZlbnRzXTsKKyAgICBbX3drVmlldyBfc2V0SWdub3Jlc05vbldoZWVsRXZlbnRzOmlnbm9y
ZXNOb25XaGVlbEV2ZW50c107CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdJbnRlcm5hbC5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdJbnRlcm5hbC5oCmluZGV4IGVjZmE4OTY2
NmY3ZWFkM2U3ZDBlMjFkY2MzY2U1YTE5MzVlOTI0MzguLmZkMzRlZDFmNTA5YTU1MTg5OTI5NTg3
YWI2ZTc5MjE3OTg0OTk5MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3SW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVybmFsLmgKQEAgLTk5LDcgKzk5LDcgQEAgc3RydWN0
IFByaW50SW5mbzsKIAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBVSUVkZ2VJbnNl
dHMgX2NvbXB1dGVkQ29udGVudEluc2V0OwogI2Vsc2UKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBz
ZXR0ZXI9X3NldElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOikgQk9PTCBfaWdub3Jlc05vbldo
ZWVsTW91c2VFdmVudHM7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJZ25vcmVz
Tm9uV2hlZWxFdmVudHM6KSBCT09MIF9pZ25vcmVzTm9uV2hlZWxFdmVudHM7CiAjZW5kaWYKIAog
QGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tU
aHVtYm5haWxWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tU
aHVtYm5haWxWaWV3Lm1tCmluZGV4IDQ3MDhkNjVkZDkxZmRmYjZkZjk5YjY3MjViMTU1NjhkMmZj
ZGM0MTYuLmRmOTMyM2YxMmEyMDZkOWFlZjYxNTNhZGU0YzcxN2QyMWIyNzBlNjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVGh1bWJuYWlsVmlldy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1RodW1ibmFpbFZp
ZXcubW0KQEAgLTgwLDYgKzgwLDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIC0gKHZvaWQp
X3ZpZXdXYXNVbnBhcmVudGVkCiB7CiAgICAgW193a1ZpZXcgX3NldFRodW1ibmFpbFZpZXc6bmls
XTsKKyAgICBbX3drVmlldyBfc2V0SWdub3Jlc0FsbEV2ZW50czpOT107CiAKICAgICBzZWxmLmxh
eWVyLmNvbnRlbnRzID0gbmlsOwogICAgIF9sYXN0U25hcHNob3RTY2FsZSA9IE5BTjsKQEAgLTk3
LDYgKzk4LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIAogICAgIFtzZWxmIF9yZXF1ZXN0
U25hcHNob3RJZk5lZWRlZF07CiAgICAgW193a1ZpZXcgX3NldFRodW1ibmFpbFZpZXc6c2VsZl07
CisgICAgW193a1ZpZXcgX3NldElnbm9yZXNBbGxFdmVudHM6WUVTXTsKIH0KIAogLSAodm9pZClf
cmVxdWVzdFNuYXBzaG90SWZOZWVkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvbWFjL1dLVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFj
L1dLVmlldy5tbQppbmRleCA0ZTQxY2FiMzc0ZmVmN2ExNGNjYjIyODU2YWNhY2I3M2Q1ZmNkOWI2
Li5mZGYyYmE4MDA1MmI4MDE5MDRkYmNkNjAzZDA0Yzg1MzdiNDk1MWUzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCkBAIC0yNDcsNyArMjQ3LDggQEAgc3Ry
dWN0IFdLVmlld0ludGVycHJldEtleUV2ZW50c1BhcmFtZXRlcnMgewogCiAgICAgc3RkOjp1bmlx
dWVfcHRyPFZpZXdHZXN0dXJlQ29udHJvbGxlcj4gX2dlc3R1cmVDb250cm9sbGVyOwogICAgIEJP
T0wgX2FsbG93c01hZ25pZmljYXRpb247Ci0gICAgQk9PTCBfaWdub3Jlc05vbldoZWVsTW91c2VF
dmVudHM7CisgICAgQk9PTCBfaWdub3Jlc05vbldoZWVsRXZlbnRzOworICAgIEJPT0wgX2lnbm9y
ZXNBbGxFdmVudHM7CiAgICAgQk9PTCBfYWxsb3dzQmFja0ZvcndhcmROYXZpZ2F0aW9uR2VzdHVy
ZXM7CiAKICAgICBSZXRhaW5QdHI8Q0FMYXllcj4gX3Jvb3RMYXllcjsKQEAgLTExMDQsMjkgKzEx
MDUsNiBAQCBzdGF0aWMgTlNUb29sYmFySXRlbSAqdG9vbGJhckl0ZW0oaWQgPE5TVmFsaWRhdGVk
VXNlckludGVyZmFjZUl0ZW0+IGl0ZW0pCiAKIC8vIEV2ZW50cwogCi0tIChCT09MKV9zaG91bGRJ
Z25vcmVNb3VzZUV2ZW50cwotewotICAgIC8vIEZJWE1FOiBUaGlzIGNoZWNrIGlzIHN1cnByaXNp
bmdseSBzcGVjaWZpYy4gQXJlIHRoZXJlIGFueSBvdGhlciBjYXNlcyB3aGVyZSB3ZSBuZWVkIHRv
IGJsb2NrIG1vdXNlIGV2ZW50cz8KLSAgICAvLyBEbyB3ZSBhY3R1YWxseSBuZWVkIHRvIGluIHRo
dW1ibmFpbCB2aWV3PyBBbmQgaWYgd2UgZG8sIHdoYXQgYWJvdXQgbm9uLW1vdXNlIGV2ZW50cz8K
LSNpZiBXS19BUElfRU5BQkxFRAotICAgIGlmIChfZGF0YS0+X3RodW1ibmFpbFZpZXcpCi0gICAg
ICAgIHJldHVybiBZRVM7Ci0jZW5kaWYKLQotICAgIC8vIC1zY3JvbGxXaGVlbDogdXNlcyAtX3No
b3VsZElnbm9yZVdoZWVsRXZlbnRzLCBzbyBmb3IgYWxsIG90aGVyIGV2ZW50IHR5cGVzIGl0IGlz
IGNvcnJlY3QgdG8gdXNlIHRoaXMuCi0gICAgcmV0dXJuIF9kYXRhLT5faWdub3Jlc05vbldoZWVs
TW91c2VFdmVudHM7Ci19Ci0KLS0gKEJPT0wpX3Nob3VsZElnbm9yZVdoZWVsRXZlbnRzCi17Ci0j
aWYgV0tfQVBJX0VOQUJMRUQKLSAgICBpZiAoX2RhdGEtPl90aHVtYm5haWxWaWV3KQotICAgICAg
ICByZXR1cm4gWUVTOwotI2VuZGlmCi0KLSAgICByZXR1cm4gTk87Ci19Ci0KIC8vIE92ZXJyaWRl
IHRoaXMgc28gdGhhdCBBcHBLaXQgd2lsbCBzZW5kIHVzIGFycm93IGtleXMgYXMga2V5IGRvd24g
ZXZlbnRzIHNvIHdlIGNhbgogLy8gc3VwcG9ydCB0aGVtIHZpYSB0aGUga2V5IGJpbmRpbmdzIG1l
Y2hhbmlzbS4KIC0gKEJPT0wpX3dhbnRzS2V5RG93bkZvckV2ZW50OihOU0V2ZW50ICopZXZlbnQK
QEAgLTExNDksNyArMTEyNyw3IEBAIHN0YXRpYyBOU1Rvb2xiYXJJdGVtICp0b29sYmFySXRlbShp
ZCA8TlNWYWxpZGF0ZWRVc2VySW50ZXJmYWNlSXRlbT4gaXRlbSkKICNkZWZpbmUgTkFUSVZFX01P
VVNFX0VWRU5UX0hBTkRMRVIoU2VsZWN0b3IpIFwKICAgICAtICh2b2lkKVNlbGVjdG9yOihOU0V2
ZW50ICopdGhlRXZlbnQgXAogICAgIHsgXAotICAgICAgICBpZiAoc2VsZi5fc2hvdWxkSWdub3Jl
TW91c2VFdmVudHMpIFwKKyAgICAgICAgaWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRz
KSBcCiAgICAgICAgICAgICByZXR1cm47IFwKICAgICAgICAgaWYgKE5TVGV4dElucHV0Q29udGV4
dCAqY29udGV4dCA9IFtzZWxmIGlucHV0Q29udGV4dF0pIHsgXAogICAgICAgICAgICAgW2NvbnRl
eHQgaGFuZGxlRXZlbnQ6dGhlRXZlbnQgY29tcGxldGlvbkhhbmRsZXI6XihCT09MIGhhbmRsZWQp
IHsgXApAQCAtMTE2OSw3ICsxMTQ3LDcgQEAgc3RhdGljIE5TVG9vbGJhckl0ZW0gKnRvb2xiYXJJ
dGVtKGlkIDxOU1ZhbGlkYXRlZFVzZXJJbnRlcmZhY2VJdGVtPiBpdGVtKQogI2RlZmluZSBOQVRJ
VkVfTU9VU0VfRVZFTlRfSEFORExFUihTZWxlY3RvcikgXAogICAgIC0gKHZvaWQpU2VsZWN0b3I6
KE5TRXZlbnQgKil0aGVFdmVudCBcCiAgICAgeyBcCi0gICAgICAgIGlmIChzZWxmLl9zaG91bGRJ
Z25vcmVNb3VzZUV2ZW50cykgXAorICAgICAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxF
dmVudHMpIFwKICAgICAgICAgICAgIHJldHVybjsgXAogICAgICAgICBpZiAoW1tzZWxmIGlucHV0
Q29udGV4dF0gaGFuZGxlRXZlbnQ6dGhlRXZlbnRdKSB7IFwKICAgICAgICAgICAgIExPRyhUZXh0
SW5wdXQsICIlcyB3YXMgaGFuZGxlZCBieSB0ZXh0IGlucHV0IGNvbnRleHQiLCBTdHJpbmcoI1Nl
bGVjdG9yKS5zdWJzdHJpbmcoMCwgU3RyaW5nKCNTZWxlY3RvcikuZmluZCgiSW50ZXJuYWwiKSku
YXNjaWkoKS5kYXRhKCkpOyBcCkBAIC0xMjA2LDcgKzExODQsNyBAQCBOQVRJVkVfTU9VU0VfRVZF
TlRfSEFORExFUihyaWdodE1vdXNlVXApCiAKIC0gKHZvaWQpc2Nyb2xsV2hlZWw6KE5TRXZlbnQg
KilldmVudAogewotICAgIGlmIChbc2VsZiBfc2hvdWxkSWdub3JlV2hlZWxFdmVudHNdKQorICAg
IGlmIChfZGF0YS0+X2lnbm9yZXNBbGxFdmVudHMpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8v
IFdvcmsgYXJvdW5kIDxyZGFyOi8vcHJvYmxlbS8xOTA4Njk5Mz4gYnkgYWx3YXlzIGNsZWFyaW5n
IHRoZSBhY3RpdmUgdGV4dCBpbmRpY2F0b3Igb24gc2Nyb2xsLgpAQCAtMTIyNCw3ICsxMjAyLDcg
QEAgTkFUSVZFX01PVVNFX0VWRU5UX0hBTkRMRVIocmlnaHRNb3VzZVVwKQogCiAtICh2b2lkKXN3
aXBlV2l0aEV2ZW50OihOU0V2ZW50ICopZXZlbnQKIHsKLSAgICBpZiAoc2VsZi5fc2hvdWxkSWdu
b3JlTW91c2VFdmVudHMpCisgICAgaWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRzKQog
ICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIV9kYXRhLT5fYWxsb3dzQmFja0ZvcndhcmROYXZp
Z2F0aW9uR2VzdHVyZXMpIHsKQEAgLTEyNDIsNyArMTIyMCw3IEBAIE5BVElWRV9NT1VTRV9FVkVO
VF9IQU5ETEVSKHJpZ2h0TW91c2VVcCkKIAogLSAodm9pZCltb3VzZU1vdmVkOihOU0V2ZW50ICop
ZXZlbnQKIHsKLSAgICBpZiAoc2VsZi5fc2hvdWxkSWdub3JlTW91c2VFdmVudHMpCisgICAgaWYg
KF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRzKQogICAgICAgICByZXR1cm47CiAKICAgICAv
LyBXaGVuIGEgdmlldyBpcyBmaXJzdCByZXNwb25kZXIsIGl0IGdldHMgbW91c2UgbW92ZWQgZXZl
bnRzIGV2ZW4gd2hlbiB0aGUgbW91c2UgaXMgb3V0c2lkZSBpdHMgdmlzaWJsZSByZWN0LgpAQCAt
MTI1NCw3ICsxMjMyLDcgQEAgTkFUSVZFX01PVVNFX0VWRU5UX0hBTkRMRVIocmlnaHRNb3VzZVVw
KQogCiAtICh2b2lkKW1vdXNlRG93bjooTlNFdmVudCAqKWV2ZW50CiB7Ci0gICAgaWYgKHNlbGYu
X3Nob3VsZElnbm9yZU1vdXNlRXZlbnRzKQorICAgIGlmIChfZGF0YS0+X2lnbm9yZXNOb25XaGVl
bEV2ZW50cykKICAgICAgICAgcmV0dXJuOwogCiAgICAgW3NlbGYgX3NldE1vdXNlRG93bkV2ZW50
OmV2ZW50XTsKQEAgLTEyNzAsNyArMTI0OCw3IEBAIE5BVElWRV9NT1VTRV9FVkVOVF9IQU5ETEVS
KHJpZ2h0TW91c2VVcCkKIAogLSAodm9pZCltb3VzZVVwOihOU0V2ZW50ICopZXZlbnQKIHsKLSAg
ICBpZiAoc2VsZi5fc2hvdWxkSWdub3JlTW91c2VFdmVudHMpCisgICAgaWYgKF9kYXRhLT5faWdu
b3Jlc05vbldoZWVsRXZlbnRzKQogICAgICAgICByZXR1cm47CiAKICAgICBbc2VsZiBfc2V0TW91
c2VEb3duRXZlbnQ6bmlsXTsKQEAgLTEyNzksNyArMTI1Nyw3IEBAIE5BVElWRV9NT1VTRV9FVkVO
VF9IQU5ETEVSKHJpZ2h0TW91c2VVcCkKIAogLSAodm9pZCltb3VzZURyYWdnZWQ6KE5TRXZlbnQg
KilldmVudAogewotICAgIGlmIChzZWxmLl9zaG91bGRJZ25vcmVNb3VzZUV2ZW50cykKKyAgICBp
ZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCiAgICAgICAgIHJldHVybjsKIAogICAg
IGlmIChfZGF0YS0+X2lnbm9yaW5nTW91c2VEcmFnZ2VkRXZlbnRzKQpAQCAtMjE4Miw2ICsyMTYw
LDkgQEAgc3RhdGljIHZvaWQgZXh0cmFjdFVuZGVybGluZXMoTlNBdHRyaWJ1dGVkU3RyaW5nICpz
dHJpbmcsIFZlY3RvcjxDb21wb3NpdGlvblVuZGUKIAogLSAoQk9PTClwZXJmb3JtS2V5RXF1aXZh
bGVudDooTlNFdmVudCAqKWV2ZW50CiB7CisgICAgaWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVs
RXZlbnRzKQorICAgICAgICByZXR1cm4gTk87CisKICAgICAvLyBUaGVyZSdzIGEgY2hhbmNlIHRo
YXQgcmVzcG9uZGluZyB0byB0aGlzIGV2ZW50IHdpbGwgcnVuIGEgbmVzdGVkIGV2ZW50IGxvb3As
IGFuZAogICAgIC8vIGZldGNoaW5nIGEgbmV3IGV2ZW50IG1pZ2h0IHJlbGVhc2UgdGhlIG9sZCBv
bmUuIFJldGFpbmluZyBhbmQgdGhlbiBhdXRvcmVsZWFzaW5nCiAgICAgLy8gdGhlIGN1cnJlbnQg
ZXZlbnQgcHJldmVudHMgdGhhdCBmcm9tIGNhdXNpbmcgYSBwcm9ibGVtIGluc2lkZSBXZWJLaXQg
b3IgQXBwS2l0IGNvZGUuCkBAIC0yMjE5LDYgKzIyMDAsOSBAQCBzdGF0aWMgdm9pZCBleHRyYWN0
VW5kZXJsaW5lcyhOU0F0dHJpYnV0ZWRTdHJpbmcgKnN0cmluZywgVmVjdG9yPENvbXBvc2l0aW9u
VW5kZQogCiAtICh2b2lkKWtleVVwOihOU0V2ZW50ICopdGhlRXZlbnQKIHsKKyAgICBpZiAoX2Rh
dGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCisgICAgICAgIHJldHVybjsKKwogICAgIExPRyhU
ZXh0SW5wdXQsICJrZXlVcDolcCAlQCIsIHRoZUV2ZW50LCB0aGVFdmVudCk7CiAgICAgLy8gV2Ug
ZG9uJ3QgaW50ZXJwcmV0IHRoZSBrZXlVcCBldmVudCwgYXMgdGhpcyBicmVha3Mga2V5IGJpbmRp
bmdzIChzZWUgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzAxMDA+
KS4KICAgICBfZGF0YS0+X3BhZ2UtPmhhbmRsZUtleWJvYXJkRXZlbnQoTmF0aXZlV2ViS2V5Ym9h
cmRFdmVudCh0aGVFdmVudCwgZmFsc2UsIFZlY3RvcjxLZXlwcmVzc0NvbW1hbmQ+KCkpKTsKQEAg
LTIyMjYsNiArMjIxMCw5IEBAIHN0YXRpYyB2b2lkIGV4dHJhY3RVbmRlcmxpbmVzKE5TQXR0cmli
dXRlZFN0cmluZyAqc3RyaW5nLCBWZWN0b3I8Q29tcG9zaXRpb25VbmRlCiAKIC0gKHZvaWQpa2V5
RG93bjooTlNFdmVudCAqKXRoZUV2ZW50CiB7CisgICAgaWYgKF9kYXRhLT5faWdub3Jlc05vbldo
ZWVsRXZlbnRzKQorICAgICAgICByZXR1cm47CisKICAgICBMT0coVGV4dElucHV0LCAia2V5RG93
bjolcCAlQCVzIiwgdGhlRXZlbnQsIHRoZUV2ZW50LCAodGhlRXZlbnQgPT0gX2RhdGEtPl9rZXlE
b3duRXZlbnRCZWluZ1Jlc2VudCkgPyAiIChyZS1zZW50KSIgOiAiIik7CiAKICAgICAvLyBUaGVy
ZSdzIGEgY2hhbmNlIHRoYXQgcmVzcG9uZGluZyB0byB0aGlzIGV2ZW50IHdpbGwgcnVuIGEgbmVz
dGVkIGV2ZW50IGxvb3AsIGFuZApAQCAtMjI2MSw2ICsyMjQ4LDkgQEAgc3RhdGljIHZvaWQgZXh0
cmFjdFVuZGVybGluZXMoTlNBdHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcsIFZlY3RvcjxDb21wb3Np
dGlvblVuZGUKIAogLSAodm9pZClmbGFnc0NoYW5nZWQ6KE5TRXZlbnQgKil0aGVFdmVudAogewor
ICAgIGlmIChfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykKKyAgICAgICAgcmV0dXJuOwor
CiAgICAgTE9HKFRleHRJbnB1dCwgImZsYWdzQ2hhbmdlZDolcCAlQCIsIHRoZUV2ZW50LCB0aGVF
dmVudCk7CiAKICAgICAvLyBUaGVyZSdzIGEgY2hhbmNlIHRoYXQgcmVzcG9uZGluZyB0byB0aGlz
IGV2ZW50IHdpbGwgcnVuIGEgbmVzdGVkIGV2ZW50IGxvb3AsIGFuZApAQCAtMjgzMyw2ICsyODIz
LDkgQEAgc3RhdGljIHZvaWQqIGtleVZhbHVlT2JzZXJ2aW5nQ29udGV4dCA9ICZrZXlWYWx1ZU9i
c2VydmluZ0NvbnRleHQ7CiAjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAx
MDgwCiAtICh2b2lkKXF1aWNrTG9va1dpdGhFdmVudDooTlNFdmVudCAqKWV2ZW50CiB7CisgICAg
aWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRzKQorICAgICAgICByZXR1cm47CisKICAg
ICBOU1BvaW50IGxvY2F0aW9uSW5WaWV3Q29vcmRpbmF0ZXMgPSBbc2VsZiBjb252ZXJ0UG9pbnQ6
W2V2ZW50IGxvY2F0aW9uSW5XaW5kb3ddIGZyb21WaWV3Om5pbF07CiAgICAgX2RhdGEtPl9wYWdl
LT5wZXJmb3JtRGljdGlvbmFyeUxvb2t1cEF0TG9jYXRpb24oRmxvYXRQb2ludChsb2NhdGlvbklu
Vmlld0Nvb3JkaW5hdGVzLngsIGxvY2F0aW9uSW5WaWV3Q29vcmRpbmF0ZXMueSkpOwogfQpAQCAt
MzY5OCwxNiArMzY5MSwzMSBAQCBzdGF0aWMgTlNTdHJpbmcgKnBhdGhXaXRoVW5pcXVlRmlsZW5h
bWVGb3JQYXRoKE5TU3RyaW5nICpwYXRoKQogCiAtICh2b2lkKXByZXBhcmVGb3JNZW51OihOU01l
bnUgKiltZW51IHdpdGhFdmVudDooTlNFdmVudCAqKWV2ZW50CiB7CisgICAgaWYgKF9kYXRhLT5f
aWdub3Jlc05vbldoZWVsRXZlbnRzKSB7CisgICAgICAgIFttZW51IGNhbmNlbFRyYWNraW5nXTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIFtfZGF0YS0+X2FjdGlvbk1lbnVDb250cm9s
bGVyIHByZXBhcmVGb3JNZW51Om1lbnUgd2l0aEV2ZW50OmV2ZW50XTsKIH0KIAogLSAodm9pZCl3
aWxsT3Blbk1lbnU6KE5TTWVudSAqKW1lbnUgd2l0aEV2ZW50OihOU0V2ZW50ICopZXZlbnQKIHsK
KyAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpIHsKKyAgICAgICAgW21lbnUg
Y2FuY2VsVHJhY2tpbmddOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgW19kYXRhLT5f
YWN0aW9uTWVudUNvbnRyb2xsZXIgd2lsbE9wZW5NZW51Om1lbnUgd2l0aEV2ZW50OmV2ZW50XTsK
IH0KIAogLSAodm9pZClkaWRDbG9zZU1lbnU6KE5TTWVudSAqKW1lbnUgd2l0aEV2ZW50OihOU0V2
ZW50ICopZXZlbnQKIHsKKyAgICBpZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpIHsK
KyAgICAgICAgW21lbnUgY2FuY2VsVHJhY2tpbmddOworICAgICAgICByZXR1cm47CisgICAgfQor
CiAgICAgW19kYXRhLT5fYWN0aW9uTWVudUNvbnRyb2xsZXIgZGlkQ2xvc2VNZW51Om1lbnUgd2l0
aEV2ZW50OmV2ZW50XTsKIH0KIApAQCAtNDAxMCwxNCArNDAxOCwzNSBAQCBzdGF0aWMgTlNTdHJp
bmcgKnBhdGhXaXRoVW5pcXVlRmlsZW5hbWVGb3JQYXRoKE5TU3RyaW5nICpwYXRoKQogICAgIHJl
dHVybiBfZGF0YS0+X2FsbG93c0JhY2tGb3J3YXJkTmF2aWdhdGlvbkdlc3R1cmVzOwogfQogCist
ICh2b2lkKV9zZXRJZ25vcmVzQWxsRXZlbnRzOihCT09MKWlnbm9yZXNBbGxFdmVudHMKK3sKKyAg
ICBfZGF0YS0+X2lnbm9yZXNBbGxFdmVudHMgPSBpZ25vcmVzQWxsRXZlbnRzOworICAgIFtzZWxm
IF9zZXRJZ25vcmVzTm9uV2hlZWxFdmVudHM6aWdub3Jlc0FsbEV2ZW50c107Cit9CisKKy8vIEZv
cndhcmQgX3NldElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzIHRvIF9zZXRJZ25vcmVzTm9uV2hl
ZWxFdmVudHMgdG8gYXZvaWQgYnJlYWtpbmcgZXhpc3RpbmcgY2xpZW50cy4KIC0gKHZvaWQpX3Nl
dElnbm9yZXNOb25XaGVlbE1vdXNlRXZlbnRzOihCT09MKWlnbm9yZXNOb25XaGVlbE1vdXNlRXZl
bnRzCiB7Ci0gICAgX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxNb3VzZUV2ZW50cyA9IGlnbm9yZXNO
b25XaGVlbE1vdXNlRXZlbnRzOworICAgIFtzZWxmIF9zZXRJZ25vcmVzTm9uV2hlZWxFdmVudHM6
aWdub3Jlc05vbldoZWVsTW91c2VFdmVudHNdOworfQorCistICh2b2lkKV9zZXRJZ25vcmVzTm9u
V2hlZWxFdmVudHM6KEJPT0wpaWdub3Jlc05vbldoZWVsRXZlbnRzCit7CisgICAgaWYgKF9kYXRh
LT5faWdub3Jlc05vbldoZWVsRXZlbnRzID09IGlnbm9yZXNOb25XaGVlbEV2ZW50cykKKyAgICAg
ICAgcmV0dXJuOworCisgICAgX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMgPSBpZ25vcmVz
Tm9uV2hlZWxFdmVudHM7CisgICAgX2RhdGEtPl9wYWdlLT5zZXRTaG91bGREaXNwYXRjaEZha2VN
b3VzZU1vdmVFdmVudHMoIWlnbm9yZXNOb25XaGVlbEV2ZW50cyk7Cit9CisKKy0gKEJPT0wpX2ln
bm9yZXNOb25XaGVlbEV2ZW50cworeworICAgIHJldHVybiBfZGF0YS0+X2lnbm9yZXNOb25XaGVl
bEV2ZW50czsKIH0KIAotLSAoQk9PTClfaWdub3Jlc05vbldoZWVsTW91c2VFdmVudHMKKy0gKEJP
T0wpX2lnbm9yZXNBbGxFdmVudHMKIHsKLSAgICByZXR1cm4gX2RhdGEtPl9pZ25vcmVzTm9uV2hl
ZWxNb3VzZUV2ZW50czsKKyAgICByZXR1cm4gX2RhdGEtPl9pZ25vcmVzQWxsRXZlbnRzOwogfQog
CiAtICh2b2lkKV9kaXNwYXRjaFNldFRvcENvbnRlbnRJbnNldApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3SW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlld0ludGVybmFsLmgKaW5kZXggNjU0Y2Y5ODVjMDJm
Mjc0Mzc0MzkwYzU4ZmFkZWM2MmQ2NDY4NTczYy4uNzE5YWQ0MGVjZWM0YjFjOWU0ODViYzU2ZmUy
OWRlZGI3YmM0YWUyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9t
YWMvV0tWaWV3SW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21h
Yy9XS1ZpZXdJbnRlcm5hbC5oCkBAIC0xMTAsOCArMTEwLDYgQEAgc3RydWN0IFdlYlBhZ2VDb25m
aWd1cmF0aW9uOwogLSAodm9pZClfc2V0U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlczooQk9PTClz
dXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzOwogLSAoQk9PTClfc3VwcHJlc3NWaXNpYmlsaXR5VXBk
YXRlczsKIAotLSAoQk9PTClfc2hvdWxkSWdub3JlTW91c2VFdmVudHM7Ci0KIC0gKHZvaWQpX2Rp
ZEZpcnN0VmlzdWFsbHlOb25FbXB0eUxheW91dEZvck1haW5GcmFtZTsKIC0gKHZvaWQpX2RpZEZp
bmlzaExvYWRGb3JNYWluRnJhbWU7CiAtICh2b2lkKV9kaWRTYW1lRG9jdW1lbnROYXZpZ2F0aW9u
Rm9yTWFpbkZyYW1lOihXZWJLaXQ6OlNhbWVEb2N1bWVudE5hdmlnYXRpb25UeXBlKXR5cGU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDUxNjcyY2M2OTQ5
OTNiYTgzZjI1ZmI4OGYxOThiNjc0NTk1YjY5M2MuLjIwMjk2MGFkY2IzYWQyMmUyNTI1ZmU5ZDkw
ZWVhYzFhY2QzN2YwNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCkBAIC01MzQyLDQgKzUzNDIsOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUGVyZm9ybUFj
dGlvbk1lbnVIaXRUZXN0KGNvbnN0IEFjdGlvbk1lbnVIaXRUZXN0UmVzdWx0JiByZQogfQogI2Vu
ZGlmCiAKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVF
dmVudHMoYm9vbCBzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMpCit7CisgICAgbV9w
cm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRTaG91bGREaXNwYXRjaEZha2VNb3Vz
ZU1vdmVFdmVudHMoc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKSwgbV9wYWdlSUQp
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuaAppbmRleCA2ZGRiODViMjYxYjBmMjgyNDk5ZWIyOWY1OTFhZGE1NDYyNzQwMTEx
Li4zYzhkYTAyYjEyNjJjYTEzOTUyZWJjYjRhNTIzZTg3MzhhMWNmNmZlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC05NDcsNiArOTQ3LDggQEAgcHVibGljOgog
I2VuZGlmCiAgICAgdm9pZCBnZXRHdWVzc2VzRm9yV29yZChjb25zdCBTdHJpbmcmIHdvcmQsIGNv
bnN0IFN0cmluZyYgY29udGV4dCwgVmVjdG9yPFN0cmluZz4mIGd1ZXNzZXMpOwogCisgICAgdm9p
ZCBzZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoYm9vbCk7CisKIHByaXZhdGU6
CiAgICAgV2ViUGFnZVByb3h5KFBhZ2VDbGllbnQmLCBXZWJQcm9jZXNzUHJveHkmLCB1aW50NjRf
dCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDb25maWd1cmF0aW9uJik7CiAgICAgdm9pZCBwbGF0Zm9y
bUluaXRpYWxpemUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V0tBY3Rpb25NZW51Q29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V0tBY3Rpb25NZW51Q29udHJvbGxlci5tbQppbmRleCA5OWMyNzk0MTNlMzFlMWEwYTc2N2EwYzJm
MzM5NDU2MTAyODM0N2EwLi5iMTNiNWJlMTUzYWFkNTIzMjYwOTVhY2QzM2U1MWJhNTFkN2I3MmNi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLQWN0aW9uTWVudUNv
bnRyb2xsZXIubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XS0FjdGlvbk1l
bnVDb250cm9sbGVyLm1tCkBAIC0xNDcsNyArMTQ3LDcgQEAgc3RhdGljIGNvbnN0IENHRmxvYXQg
cHJldmlld1ZpZXdUaXRsZUhlaWdodCA9IDM0OwogICAgIF9wcmV2aWV3VmlldyA9IFtfZGVsZWdh
dGUgcGFnZVByZXZpZXdWaWV3Q29udHJvbGxlcjpzZWxmIHZpZXdGb3JQcmV2aWV3aW5nVVJMOl91
cmwuZ2V0KCkgaW5pdGlhbEZyYW1lU2l6ZTpkZWZhdWx0RnJhbWUuc2l6ZV07CiAgICAgaWYgKCFf
cHJldmlld1ZpZXcpIHsKICAgICAgICAgUmV0YWluUHRyPFdLV2ViVmlldz4gd2ViVmlldyA9IGFk
b3B0TlMoW1tXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6ZGVmYXVsdEZyYW1lXSk7Ci0g
ICAgICAgIFt3ZWJWaWV3IF9zZXRJZ25vcmVzTm9uV2hlZWxNb3VzZUV2ZW50czpZRVNdOworICAg
ICAgICBbd2ViVmlldyBfc2V0SWdub3Jlc05vbldoZWVsRXZlbnRzOllFU107CiAgICAgICAgIGlm
IChfdXJsKSB7CiAgICAgICAgICAgICBOU1VSTFJlcXVlc3QgKnJlcXVlc3QgPSBbTlNVUkxSZXF1
ZXN0IHJlcXVlc3RXaXRoVVJMOl91cmwuZ2V0KCldOwogICAgICAgICAgICAgW3dlYlZpZXcgbG9h
ZFJlcXVlc3Q6cmVxdWVzdF07CkBAIC0yNTMsMTEgKzI1Myw2IEBAIHN0YXRpYyBjb25zdCBDR0Zs
b2F0IHByZXZpZXdWaWV3VGl0bGVIZWlnaHQgPSAzNDsKICAgICBpZiAobWVudSAhPSBfd2tWaWV3
LmFjdGlvbk1lbnUpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChfd2tWaWV3Ll9zaG91bGRJ
Z25vcmVNb3VzZUV2ZW50cykgewotICAgICAgICBbbWVudSBjYW5jZWxUcmFja2luZ107Ci0gICAg
ICAgIHJldHVybjsKLSAgICB9Ci0KICAgICBbc2VsZiBkaXNtaXNzQWN0aW9uTWVudVBvcG92ZXJz
XTsKIAogICAgIF9ldmVudExvY2F0aW9uSW5WaWV3ID0gW193a1ZpZXcgY29udmVydFBvaW50OmV2
ZW50LmxvY2F0aW9uSW5XaW5kb3cgZnJvbVZpZXc6bmlsXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cAppbmRleCBiYjNjNjgxZTVkNGVlMDU4NDI1MjZhMzUxYzIxNGJlM2ZiODdiMTQ5Li43Y2UyODFk
OGRiNGY3ZDFkYjM1NGY4YzVlYTZhMzZlMDU2M2Y0NDg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCkBAIC0xMDgwLDcgKzEwODAsMTEgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6Omhhc1JlbGV2
YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25zdAogewogICAgIHJldHVy
biAoaXNUZXh0T25seSAmJiBXZWJQcm9jZXNzOjpzaGFyZWQoKS5oYXNTZWxlY3Rpb25TZXJ2aWNl
cygpKSB8fCBXZWJQcm9jZXNzOjpzaGFyZWQoKS5oYXNSaWNoQ29udGVudFNlcnZpY2VzKCk7CiB9
Ci0KICNlbmRpZgogCitib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkRGlzcGF0Y2hGYWtlTW91
c2VNb3ZlRXZlbnRzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wYWdlLT5zaG91bGREaXNwYXRj
aEZha2VNb3VzZU1vdmVFdmVudHMoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAppbmRleCA3ODIzOGQyODlmZjU4MDQ5NDEwMmNjNWIyZjE2NjhjZmQxMmJl
OTc1Li40ZmNhNDg3YjhhYTI4NjUwZjI4NWNiNGIxNzRhNTJmNDBmNTFmYTRjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmgKQEAgLTMwOSw2ICszMDksOCBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgYm9v
bCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3Qgb3Zl
cnJpZGU7CiAjZW5kaWYKIAorICAgIHZpcnR1YWwgYm9vbCBzaG91bGREaXNwYXRjaEZha2VNb3Vz
ZU1vdmVFdmVudHMoKSBjb25zdCBvdmVycmlkZTsKKwogICAgIFN0cmluZyBtX2NhY2hlZFRvb2xU
aXA7CiAgICAgbXV0YWJsZSBSZWZQdHI8V2ViRnJhbWU+IG1fY2FjaGVkRnJhbWVTZXRMYXJnZXN0
RnJhbWU7CiAgICAgbXV0YWJsZSBib29sIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNj
cm9sbGJhcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAppbmRleCAzOWU5MzVhZTY2M2NiZjQxN2ViMWJkYjNiODIwMzM5Y2Y3NmY3ZjMzLi45MGEyNDE1
YTEyODkxZTU3NjM4MGMxODk0Nzk2Mjk0MTYwZDI5MDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zMzQsNiArMzM0LDcgQEAgV2ViUGFn
ZTo6V2ViUGFnZSh1aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMmIHBhcmFtZXRlcnMpCiAgICAgLCBtX3N5c3RlbVdlYkdMUG9saWN5KFdlYkdMQWxsb3dDcmVh
dGlvbikKICNlbmRpZgogICAgICwgbV9tYWluRnJhbWVQcm9ncmVzc0NvbXBsZXRlZChmYWxzZSkK
KyAgICAsIG1fc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKHRydWUpCiB7CiAgICAg
QVNTRVJUKG1fcGFnZUlEKTsKICAgICAvLyBGSVhNRTogVGhpcyBpcyBhIG5vbi1pZGVhbCBsb2Nh
dGlvbiBmb3IgdGhpcyBTZXR0aW5nIGFuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmgKaW5kZXggMWMzYzIzZmFlZDg5YjZjZmQ5NDMyZjdhZTVjNzA0NDRkMmVj
MGUyNS4uZjNmOWI5MWI5MWE3Nzg5YjBmOTE5MDI4NWVjZTA4ZTM5NWMxODU3MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC04NjEsNiArODYxLDgg
QEAgcHVibGljOgogICAgIHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0Rm9yRnJhbWUoV2ViQ29y
ZTo6RnJhbWUqKTsKIAogICAgIHZvaWQgc2V0TWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0ZWQoYm9v
bCBjb21wbGV0ZWQpIHsgbV9tYWluRnJhbWVQcm9ncmVzc0NvbXBsZXRlZCA9IGNvbXBsZXRlZDsg
fQorICAgIGJvb2wgc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3QgeyBy
ZXR1cm4gbV9zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHM7IH0KKwogcHJpdmF0ZToK
ICAgICBXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycyYpOwogCkBAIC0xMDgyLDYgKzEwODQsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGF0YURl
dGVjdG9yc0RpZEhpZGVVSShXZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXlJRCk7CiAj
ZW5kaWYKIAorICAgIHZvaWQgc2V0U2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKGJv
b2wgZGlzcGF0Y2gpIHsgbV9zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMgPSBkaXNw
YXRjaDsgfQorCiAgICAgdWludDY0X3QgbV9wYWdlSUQ7CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8
V2ViQ29yZTo6UGFnZT4gbV9wYWdlOwpAQCAtMTMyNiw2ICsxMzMwLDcgQEAgcHJpdmF0ZToKICNl
bmRpZgogCiAgICAgYm9vbCBtX21haW5GcmFtZVByb2dyZXNzQ29tcGxldGVkOworICAgIGJvb2wg
bV9zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHM7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4KaW5kZXggYjk3ODJhYjRlYTMwZDExODJmZGNiOWMxZDQzNzdmOWYw
OGYyYjFmZS4uMDkxMWJhOWU3MDQxNjU0MzVmOGZkYzUyZThhMWJhMTQ1NmVkNmIyMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2Fn
ZXMuaW4KQEAgLTQxMCw0ICs0MTAsNiBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlIExlZ2FjeVJlY2Vp
dmVyIHsKICAgICBEYXRhRGV0ZWN0b3JzRGlkQ2hhbmdlVUkoV2ViQ29yZTo6UGFnZU92ZXJsYXk6
OlBhZ2VPdmVybGF5SUQgcGFnZU92ZXJsYXkpCiAgICAgRGF0YURldGVjdG9yc0RpZEhpZGVVSShX
ZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXlJRCBwYWdlT3ZlcmxheSkKICNlbmRpZgor
CisgICAgU2V0U2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKGJvb2wgc2hvdWxkRGlz
cGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKQogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242656</attachid>
            <date>2014-12-05 13:26:38 -0800</date>
            <delta_ts>2014-12-05 13:27:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139219-20141205132713.patch</filename>
            <type>text/plain</type>
            <size>2847</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2ODU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOGIwZTQ0NjI2ZGNkOTRh
OTM1MmU0NDU4ZmYzNWMyMTFiNjA1ZjU5Yy4uZmU1YjQ5NzkyYTMzNTJhMjE0OGFmNjZkZDU0MTE1
NzZhMjZmMGYxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTEyLTA1ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkIGlu
cHV0IHNob3VsZCBiZSBkaXNhYmxlZCBpbiB0aGUgcHJldmlldyBwb3BvdmVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzkyMTkKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzE5MDUyMzgxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tOgorICAgICAgICAo
LVtXS1ZpZXcgcGVyZm9ybUtleUVxdWl2YWxlbnQ6XSk6CisgICAgICAgICgtW1dLVmlldyBrZXlV
cDpdKToKKyAgICAgICAgKC1bV0tWaWV3IGtleURvd246XSk6CisgICAgICAgICgtW1dLVmlldyBm
bGFnc0NoYW5nZWQ6XSk6CisgICAgICAgIFRoZXJlIGFyZSB0d28gaW1wbGVtZW50YXRpb25zIG9m
IGVhY2ggb2YgdGhlc2UgbWV0aG9kcyBpbiB0aGlzIGZpbGUuCisgICAgICAgIEFkanVzdCB0aGUg
b25lcyB0aGF0IHRoZSBvcmlnaW5hbCBwYXRjaCBtaXNzZWQuCisKIDIwMTQtMTItMDUgIEFudHRp
IEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIEluIE5ldHdvcmtSZXNvdXJj
ZUxvYWRlciBhbHdheXMgYmFpbCBvdXQgYWZ0ZXIgYWJvcnQoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCmluZGV4IDVlNzI1MDMyNzVkMzNmMjAxNWE4OGFlYTBl
NjQ1OWQwMzhhYzFkOTkuLmZlOTJkNTkzOTQ5ZGMyYzI2OTI0NGUzMjJhYTU4NWNmMjBlMDdmNzEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KQEAgLTE3Mjks
NiArMTcyOSw5IEBAIHN0YXRpYyB2b2lkIGV4dHJhY3RVbmRlcmxpbmVzKE5TQXR0cmlidXRlZFN0
cmluZyAqc3RyaW5nLCBWZWN0b3I8Q29tcG9zaXRpb25VbmRlCiAKIC0gKEJPT0wpcGVyZm9ybUtl
eUVxdWl2YWxlbnQ6KE5TRXZlbnQgKilldmVudAogeworICAgIGlmIChfZGF0YS0+X2lnbm9yZXNO
b25XaGVlbEV2ZW50cykKKyAgICAgICAgcmV0dXJuIE5POworCiAgICAgLy8gVGhlcmUncyBhIGNo
YW5jZSB0aGF0IHJlc3BvbmRpbmcgdG8gdGhpcyBldmVudCB3aWxsIHJ1biBhIG5lc3RlZCBldmVu
dCBsb29wLCBhbmQKICAgICAvLyBmZXRjaGluZyBhIG5ldyBldmVudCBtaWdodCByZWxlYXNlIHRo
ZSBvbGQgb25lLiBSZXRhaW5pbmcgYW5kIHRoZW4gYXV0b3JlbGVhc2luZwogICAgIC8vIHRoZSBj
dXJyZW50IGV2ZW50IHByZXZlbnRzIHRoYXQgZnJvbSBjYXVzaW5nIGEgcHJvYmxlbSBpbnNpZGUg
V2ViS2l0IG9yIEFwcEtpdCBjb2RlLgpAQCAtMTc2Niw2ICsxNzY5LDkgQEAgc3RhdGljIHZvaWQg
ZXh0cmFjdFVuZGVybGluZXMoTlNBdHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcsIFZlY3RvcjxDb21w
b3NpdGlvblVuZGUKIAogLSAodm9pZClrZXlVcDooTlNFdmVudCAqKXRoZUV2ZW50CiB7CisgICAg
aWYgKF9kYXRhLT5faWdub3Jlc05vbldoZWVsRXZlbnRzKQorICAgICAgICByZXR1cm47CisKICAg
ICBMT0coVGV4dElucHV0LCAia2V5VXA6JXAgJUAiLCB0aGVFdmVudCwgdGhlRXZlbnQpOwogCiAg
ICAgW3NlbGYgX2ludGVycHJldEtleUV2ZW50OnRoZUV2ZW50IGNvbXBsZXRpb25IYW5kbGVyOl4o
Qk9PTCBoYW5kbGVkQnlJbnB1dE1ldGhvZCwgY29uc3QgVmVjdG9yPEtleXByZXNzQ29tbWFuZD4m
IGNvbW1hbmRzKSB7CkBAIC0xNzc2LDYgKzE3ODIsOSBAQCBzdGF0aWMgdm9pZCBleHRyYWN0VW5k
ZXJsaW5lcyhOU0F0dHJpYnV0ZWRTdHJpbmcgKnN0cmluZywgVmVjdG9yPENvbXBvc2l0aW9uVW5k
ZQogCiAtICh2b2lkKWtleURvd246KE5TRXZlbnQgKil0aGVFdmVudAogeworICAgIGlmIChfZGF0
YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykKKyAgICAgICAgcmV0dXJuOworCiAgICAgTE9HKFRl
eHRJbnB1dCwgImtleURvd246JXAgJUAlcyIsIHRoZUV2ZW50LCB0aGVFdmVudCwgKHRoZUV2ZW50
ID09IF9kYXRhLT5fa2V5RG93bkV2ZW50QmVpbmdSZXNlbnQpID8gIiAocmUtc2VudCkiIDogIiIp
OwogCiAgICAgaWYgKFtzZWxmIF90cnlIYW5kbGVQbHVnaW5Db21wbGV4VGV4dElucHV0S2V5RG93
bjp0aGVFdmVudF0pIHsKQEAgLTE4MDAsNiArMTgwOSw5IEBAIHN0YXRpYyB2b2lkIGV4dHJhY3RV
bmRlcmxpbmVzKE5TQXR0cmlidXRlZFN0cmluZyAqc3RyaW5nLCBWZWN0b3I8Q29tcG9zaXRpb25V
bmRlCiAKIC0gKHZvaWQpZmxhZ3NDaGFuZ2VkOihOU0V2ZW50ICopdGhlRXZlbnQKIHsKKyAgICBp
ZiAoX2RhdGEtPl9pZ25vcmVzTm9uV2hlZWxFdmVudHMpCisgICAgICAgIHJldHVybjsKKwogICAg
IExPRyhUZXh0SW5wdXQsICJmbGFnc0NoYW5nZWQ6JXAgJUAiLCB0aGVFdmVudCwgdGhlRXZlbnQp
OwogCiAgICAgdW5zaWduZWQgc2hvcnQga2V5Q29kZSA9IFt0aGVFdmVudCBrZXlDb2RlXTsK
</data>
<flag name="review"
          id="267527"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>