<?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>86503</bug_id>
          
          <creation_ts>2012-05-15 11:18:57 -0700</creation_ts>
          <short_desc>Use unaccelerated scrolling deltas when rubber-banding</short_desc>
          <delta_ts>2012-05-15 13:02:05 -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>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>bdakin</cc>
    
    <cc>gustavo</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>624294</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-05-15 11:18:57 -0700</bug_when>
    <thetext>Use unaccelerated scrolling deltas when rubber-banding</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624315</commentid>
    <comment_count>1</comment_count>
      <attachid>142013</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-05-15 11:33:16 -0700</bug_when>
    <thetext>Created attachment 142013
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624324</commentid>
    <comment_count>2</comment_count>
      <attachid>142013</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2012-05-15 11:39:53 -0700</bug_when>
    <thetext>Comment on attachment 142013
Patch

Attachment 142013 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/12715009</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624327</commentid>
    <comment_count>3</comment_count>
      <attachid>142013</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-05-15 11:42:30 -0700</bug_when>
    <thetext>Comment on attachment 142013
Patch

But of course fix the GTK build before committing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624343</commentid>
    <comment_count>4</comment_count>
      <attachid>142017</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-05-15 11:51:54 -0700</bug_when>
    <thetext>Created attachment 142017
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624439</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-05-15 13:02:05 -0700</bug_when>
    <thetext>Committed r117129: &lt;http://trac.webkit.org/changeset/117129&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142013</attachid>
            <date>2012-05-15 11:33:16 -0700</date>
            <delta_ts>2012-05-15 11:51:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86503-20120515113348.patch</filename>
            <type>text/plain</type>
            <size>22949</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3MDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDMyZDVjYTIwY2I4MWEw
MGE3MmI5NDE1ZmZjNzNmZjQ2Zjc2Yzc3ZS4uZjA4ZjE0ZjdiMTc4ZjJiZDgyMjFjZTU3ZGNhYThk
YWY4MDY1M2EzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA1LTE1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHVuYWNjZWxl
cmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyB3aGVuIHJ1YmJlci1iYW5kaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NjUwMworICAgICAgICA8cmRhcjov
L3Byb2JsZW0vMTEzNzg3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9y
bVdoZWVsRXZlbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtV2hlZWxFdmVudDo6UGxh
dGZvcm1XaGVlbEV2ZW50KToKKyAgICAgICAgKFBsYXRmb3JtV2hlZWxFdmVudCk6CisgICAgICAg
IChXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnQ6OnNjcm9sbENvdW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlBsYXRmb3JtV2hlZWxFdmVudDo6dW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCk6
CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnQ6OnVuYWNjZWxlcmF0ZWRTY3Jv
bGxpbmdEZWx0YVkpOgorICAgICAgICBBZGQgc2Nyb2xsIGNvdW50IGFuZCB1bmFjY2VsZXJhdGVk
IHNjcm9sbGluZyBkZWx0YXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsRWxhc3Rp
Y2l0eUNvbnRyb2xsZXIubW06CisgICAgICAgIChXZWJDb3JlOjplbGFzdGljRGVsdGFGb3JUaW1l
RGVsdGEpOgorICAgICAgICAoV2ViQ29yZTo6ZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKToK
KyAgICAgICAgKFdlYkNvcmU6OnJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YSk6CisgICAgICAg
IENhbGwgdGhlIG5ldyBXS1NJIGZ1bmN0aW9ucy4KKworICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
RWxhc3RpY2l0eUNvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOgorICAgICAgICBVc2UgdGhl
IHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyB3aGVuIG5lZWRlZC4KKworICAgICAgICAq
IHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmg6CisgICAgICAgICogcGxhdGZv
cm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW06CisgICAgICAgIEFkZCBuZXcgV0tTSSBm
dW5jdGlvbnMuCisKIDIwMTItMDUtMTUgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogYWRkIHNob3cvaGlkZSBkZWJ1Z2dlciBz
aWRlYmFyIGJ1dHRvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCAxM2E1ZmZmOWEwNTViMGY4N2FkZGU3
YTgxY2UyYzkyMzE5ZjhlOGU3Li5kMGRiZGM1ZTQ5NGJkMDk1MDc1Mzk1NDhhMzA5ODFmNjFlNmU4
NDMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUtMTUgIEFuZGVy
cyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgdW5hY2NlbGVy
YXRlZCBzY3JvbGxpbmcgZGVsdGFzIHdoZW4gcnViYmVyLWJhbmRpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg2NTAzCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xMTM3ODc0Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAg
ICAgKEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKToKKyAgICAgICAgSW5pdCBuZXcgV0tTSSBm
dW5jdGlvbnMuCisKIDIwMTItMDUtMTQgIEx1a2UgTWFjcGhlcnNvbiAgPG1hY3BoZXJzb25AY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIEludHJvZHVjZSBFTkFCTEVfQ1NTX1ZBUklBQkxFUyBjb21w
aWxlIGZsYWcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjA5NDk3NjE4NDU5OTliM2Y2ODE0ZDNhMmU4ZmJlNDA2
ZjI2NjgxMy4uMzU0YWFlMDZlYjZhNTNhZjIzYjkyN2EwYjQ5ZmJmM2MwNzAwMmNlZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTA1LTE1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRl
bHRhcyB3aGVuIHJ1YmJlci1iYW5kaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NjUwMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTEzNzg3NDI+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvV2ViRXZlbnQuaDoKKyAgICAgICAgKFdlYldoZWVsRXZlbnQpOgorICAgICAgICAoV2ViS2l0
OjpXZWJXaGVlbEV2ZW50OjpzY3JvbGxDb3VudCk6CisgICAgICAgIChXZWJLaXQ6OldlYldoZWVs
RXZlbnQ6OnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSk6CisgICAgICAgIEFkZCBzY3JvbGwg
Y291bnQgYW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhLgorCisgICAgICAgICogU2hh
cmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYktpdDJQbGF0
Zm9ybVdoZWVsRXZlbnQ6OldlYktpdDJQbGF0Zm9ybVdoZWVsRXZlbnQpOgorICAgICAgICBJbml0
aWFsaXplIHNjcm9sbCBjb3VudCBhbmQgdW5hY2NlbGVyYXRlZCBzY3JvbGxpbmcgZGVsdGFzLgor
CisgICAgICAgICogU2hhcmVkL1dlYldoZWVsRXZlbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJXaGVlbEV2ZW50OjpXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgSW5pdGlhbGl6ZSBzY3JvbGwg
Y291bnQgYW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcy4KKworICAgICAgICAoV2Vi
S2l0OjpXZWJXaGVlbEV2ZW50OjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJXaGVlbEV2
ZW50OjpkZWNvZGUpOgorICAgICAgICBFbmNvZGUgYW5kIGRlY29kZSBzY3JvbGwgY291bnQgYW5k
IHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcy4KKworICAgICAgICAqIFNoYXJlZC9tYWMv
V2ViRXZlbnRGYWN0b3J5Lm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNy
ZWF0ZVdlYldoZWVsRXZlbnQpOgorICAgICAgICBJbml0aWFsaXplIHRoZSBzY3JvbGwgY291bnQg
YW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyBmcm9tIHRoZSB1bmRlcmx5aW5nIE5T
RXZlbnQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6Y29hbGVzY2UpOgorICAgICAgICBDb2FsZXNjZSB1bmFjY2VsZXJhdGVkIHNjcm9s
bGluZyBkZWx0YXMgYXMgd2VsbC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKToKKyAgICAgICAgSW5pdCBuZXcgV0tTSSBmdW5jdGlvbnMuCisKIDIwMTItMDUt
MTUgIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0aEB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFtRdF0gQWRkIGluZnJhIGZvciB0ZXN0aW5nIGRvdWJsZS10YXAgdG8gem9vbSBmdW5j
dGlvbmFsaXR5IGV0YwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4g
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCAyYmEzMWExZWEyZjE2ODgxOTM4
NjNmMDY3NDU4OWVmODU5MDdhODJkLi43NGZhNjA0NmIyZDEwMGRlYThlNTk5N2RjZjFjZGY2OGQ5
YzRjZDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTY5Myw2ICsxNjkzLDkgQEAgX3drRmls
dGVyUmVsZWFzZQogX3drRmlsdGVyV2FzQmxvY2tlZAogX3drRmlsdGVyQWRkRGF0YQogX3drRmls
dGVyRGF0YUNvbXBsZXRlCitfd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YQorX3drTlNFbGFz
dGljRGVsdGFGb3JSZWJvdW5kRGVsdGEKK193a05TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRh
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9QbGF0Zm9ybVdoZWVsRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bs
YXRmb3JtV2hlZWxFdmVudC5oCmluZGV4IDA4NGI0NTU1MzVmNzAxZmRkYjE4ZTQxNGQ5YTU5ZTlj
MzlmZGZlOTQuLjI3OWUxY2YyMzU3YzNmYTVmYzc5MDVlNTNjOTA1ZTllY2I4YjI5MmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVudC5oCkBAIC05NCw2ICs5
NCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICwgbV9oYXNQcmVjaXNlU2Ny
b2xsaW5nRGVsdGFzKGZhbHNlKQogICAgICAgICAgICAgLCBtX3BoYXNlKFBsYXRmb3JtV2hlZWxF
dmVudFBoYXNlTm9uZSkKICAgICAgICAgICAgICwgbV9tb21lbnR1bVBoYXNlKFBsYXRmb3JtV2hl
ZWxFdmVudFBoYXNlTm9uZSkKKyAgICAgICAgICAgICwgbV9zY3JvbGxDb3VudCgwKQorICAgICAg
ICAgICAgLCBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoMCkKKyAgICAgICAgICAgICwg
bV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKDApCiAjZW5kaWYKICAgICAgICAgewogICAg
ICAgICB9CkBAIC0xMTIsNiArMTE1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAg
ICAgLCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoZmFsc2UpCiAgICAgICAgICAgICAsIG1f
cGhhc2UoUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKQogICAgICAgICAgICAgLCBtX21vbWVu
dHVtUGhhc2UoUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKQorICAgICAgICAgICAgLCBtX3Nj
cm9sbENvdW50KDApCisgICAgICAgICAgICAsIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRh
WCgwKQorICAgICAgICAgICAgLCBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoMCkKICNl
bmRpZgogICAgICAgICB7CiAgICAgICAgIH0KQEAgLTE1Myw2ICsxNTksMTAgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBwaGFzZSgpIGNvbnN0
IHsgcmV0dXJuIG1fcGhhc2U7IH0KICAgICAgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9t
ZW50dW1QaGFzZSgpIGNvbnN0IHsgcmV0dXJuIG1fbW9tZW50dW1QaGFzZTsgfQogICAgICAgICBi
b29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoKSBjb25zdCB7IHJldHVybiBtX2hhc1ByZWNp
c2VTY3JvbGxpbmdEZWx0YXM7IH0KKworICAgICAgICB1bnNpZ25lZCBzY3JvbGxDb3VudCgpIGNv
bnN0IHsgcmV0dXJuIG1fc2Nyb2xsQ291bnQ7IH0KKyAgICAgICAgZmxvYXQgdW5hY2NlbGVyYXRl
ZFNjcm9sbGluZ0RlbHRhWCgpIGNvbnN0IHsgcmV0dXJuIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGlu
Z0RlbHRhWDsgfQorICAgICAgICBmbG9hdCB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCkg
Y29uc3QgeyByZXR1cm4gbV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZOyB9CiAjZW5kaWYK
IAogI2lmIFBMQVRGT1JNKFdJTikKQEAgLTE4MSw2ICsxOTEsOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIGJvb2wgbV9oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzOwogICAgICAgICBQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBtX3BoYXNlOwogICAgICAgICBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZSBtX21vbWVudHVtUGhhc2U7CisgICAgICAgIHVuc2lnbmVkIG1fc2Nyb2xsQ291bnQ7
CisgICAgICAgIGZsb2F0IG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAg
ZmxvYXQgbV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZOwogI2VuZGlmCiAgICAgfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEVsYXN0aWNpdHlD
b250cm9sbGVyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEVsYXN0aWNp
dHlDb250cm9sbGVyLm1tCmluZGV4IGE4MTc4NDY5NjhlOThmOTYwZjIyNDdmYWUzMTc5ZDljZDMy
ZDk2ODguLmQxMjJiNTZjZmE0MDFlZDQwNzY1Mjg0ZjZmYjdmZWIwZjkxMjJkN2IgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxFbGFzdGljaXR5Q29udHJvbGxl
ci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsRWxhc3RpY2l0eUNv
bnRyb2xsZXIubW0KQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJTY3JvbGxFbGFzdGljaXR5
Q29udHJvbGxlci5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCisjaW5jbHVk
ZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAjaW5j
bHVkZSA8c3lzL3N5c2N0bC5oPgogCkBAIC02Nyw5ICs2OCwxMSBAQCBzdGF0aWMgTlNUaW1lSW50
ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RhdGljIGNvbnN0
IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKLXN0YXRpYyBjb25z
dCBmbG9hdCBydWJiZXJiYW5kU3RpZmZuZXNzID0gMjA7CiBzdGF0aWMgY29uc3QgZmxvYXQgcnVi
YmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOwogc3RhdGljIGNvbnN0IGZsb2F0
IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworI2lm
IGRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFSRCkgfHwgZGVmaW5lZChCVUxESU5HX09OX1NOT1df
TEVPUEFSRCkgfHwgZGVmaW5lZChCVUlMRElOR19PTl9MSU9OKQorc3RhdGljIGNvbnN0IGZsb2F0
IHJ1YmJlcmJhbmRTdGlmZm5lc3MgPSAyMDsKIHN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5k
QW1wbGl0dWRlID0gMC4zMWY7CiBzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZFBlcmlvZCA9
IDEuNmY7CiAKQEAgLTkyLDYgKzk1LDIyIEBAIHN0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCiB7CiAgICAgcmV0dXJuIGRlbHRhICogcnViYmVyYmFu
ZFN0aWZmbmVzczsKIH0KKyNlbHNlCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBl
bGFwc2VkVGltZSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShp
bml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitzdGF0
aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQoreworICAg
IHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKworc3Rh
dGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAg
ICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisjZW5k
aWYKIAogc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpCiB7CkBAIC0xNTksOCAr
MTc4LDIwIEBAIGJvb2wgU2Nyb2xsRWxhc3RpY2l0eUNvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZl
bnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlCiAgICAgLy8gUmVzZXQgb3ZlcmZsb3cg
dmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBw
b2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgogICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YSA9IEZsb2F0U2l6ZSgpOwogCi0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hl
ZWxFdmVudC5kZWx0YVgoKTsKLSAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVl
bEV2ZW50LmRlbHRhWSgpOworICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5z
dHJldGNoQW1vdW50KCk7CisgICAgYm9vbCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNo
QW1vdW50LmhlaWdodCgpOworICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBzdHJl
dGNoQW1vdW50LndpZHRoKCk7CisKKyAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWDsKKyAg
ICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWTsKKworICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJl
dGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKKyAgICAgICAgZXZlbnRDb2FsZXNj
ZWREZWx0YVggPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYKCk7Cisg
ICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNj
cm9sbGluZ0RlbHRhWSgpOworICAgIH0gZWxzZSB7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFYID0gLXdoZWVsRXZlbnQuZGVsdGFYKCk7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZ
ID0gLXdoZWVsRXZlbnQuZGVsdGFZKCk7CisgICAgfQogCiAgICAgZGVsdGFYICs9IGV2ZW50Q29h
bGVzY2VkRGVsdGFYOwogICAgIGRlbHRhWSArPSBldmVudENvYWxlc2NlZERlbHRhWTsKQEAgLTE3
MSwxNSArMjAyLDggQEAgYm9vbCBTY3JvbGxFbGFzdGljaXR5Q29udHJvbGxlcjo6aGFuZGxlV2hl
ZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWUKICAgICBlbHNlCiAgICAgICAg
IGRlbHRhWSA9IDA7CiAKLSAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IGZhbHNlOwot
ICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBmYWxzZTsKICAgICBib29sIHNob3Vs
ZFN0cmV0Y2ggPSBmYWxzZTsKIAotICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50
LT5zdHJldGNoQW1vdW50KCk7Ci0KLSAgICBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQud2lkdGgoKTsKLSAgICBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1v
dW50LmhlaWdodCgpOwotCiAgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFz
ZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwogCiAgICAgLy8gSWYgd2UgYXJlIHN0YXJ0
aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaAppbmRleCBk
ZDE2ZmExODJkNzkzOTI4MmJiNmUzNzA3N2E0ZDA2ZTc0N2IyODBjLi45MDhkZDk1YTkwMDJhM2Mz
Nzk0ZTc1NWQ4YjQ2OTVlMjAwMTJmOGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKQEAgLTMyMyw2ICszMjMsMTAgQEAg
ZXh0ZXJuIHZvaWQgKCp3a0ZpbHRlclJlbGVhc2UpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIGV4
dGVybiBCT09MICgqd2tGaWx0ZXJXYXNCbG9ja2VkKShXZWJGaWx0ZXJFdmFsdWF0b3IgKik7CiBl
eHRlcm4gY29uc3QgY2hhciogKCp3a0ZpbHRlckFkZERhdGEpKFdlYkZpbHRlckV2YWx1YXRvciAq
LCBjb25zdCBjaGFyKiBkYXRhLCBpbnQqIGxlbmd0aCk7CiBleHRlcm4gY29uc3QgY2hhciogKCp3
a0ZpbHRlckRhdGFDb21wbGV0ZSkoV2ViRmlsdGVyRXZhbHVhdG9yICosIGludCogbGVuZ3RoKTsK
KworZXh0ZXJuIENHRmxvYXQgKCp3a05TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKShDR0Zsb2F0
IGluaXRpYWxQb3NpdGlvbiwgQ0dGbG9hdCBpbml0aWFsVmVsb2NpdHksIENHRmxvYXQgZWxhcHNl
ZFRpbWUpOworZXh0ZXJuIENHRmxvYXQgKCp3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRh
KShDR0Zsb2F0IGRlbHRhKTsKK2V4dGVybiBDR0Zsb2F0ICgqd2tOU1JlYm91bmREZWx0YUZvckVs
YXN0aWNEZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CiAjZW5kaWYKIAogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQppbmRleCA0
MzlhMmYyNGY2MmI0MGU0MmVlZDk4YTlkN2I4ZDg0YTYxZWE2YjFmLi5jMDg3YTVkODdhNDVlZDgy
YmE0Yzc5Nzk1ZDk3Y2YxZWQ5MTAzY2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQpAQCAtMjAyLDQgKzIwMiw5IEBA
IHZvaWQgKCp3a0ZpbHRlclJlbGVhc2UpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIEJPT0wgKCp3
a0ZpbHRlcldhc0Jsb2NrZWQpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIGNvbnN0IGNoYXIqICgq
d2tGaWx0ZXJBZGREYXRhKShXZWJGaWx0ZXJFdmFsdWF0b3IgKiwgY29uc3QgY2hhciogZGF0YSwg
aW50KiBsZW5ndGgpOwogY29uc3QgY2hhciogKCp3a0ZpbHRlckRhdGFDb21wbGV0ZSkoV2ViRmls
dGVyRXZhbHVhdG9yICosIGludCogbGVuZ3RoKTsKKworQ0dGbG9hdCAoKndrTlNFbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEpKENHRmxvYXQgaW5pdGlhbFBvc2l0aW9uLCBDR0Zsb2F0IGluaXRpYWxW
ZWxvY2l0eSwgQ0dGbG9hdCBlbGFwc2VkVGltZSk7CitDR0Zsb2F0ICgqd2tOU0VsYXN0aWNEZWx0
YUZvclJlYm91bmREZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CitDR0Zsb2F0ICgqd2tOU1JlYm91bmRE
ZWx0YUZvckVsYXN0aWNEZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CiAjZW5kaWYKKwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1t
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1t
CmluZGV4IDAwZjc5YjU0NjNmOTU0MWFjODBkYTZjMDQxMjcwYTFmODFjNTRjYjAuLmQxZjJmMTVl
ZTZhZGVhY2EyZWQyODE5ZTRhMzc2YTU3MzkyOTA2ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTE5OCw3
ICsxOTgsMTIgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElO
SVQoRmlsdGVyV2FzQmxvY2tlZCk7CiAgICAgSU5JVChGaWx0ZXJBZGREYXRhKTsKICAgICBJTklU
KEZpbHRlckRhdGFDb21wbGV0ZSk7CisKKyAgICBJTklUKE5TRWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKTsKKyAgICBJTklUKE5TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKTsKKyAgICBJTklU
KE5TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKTsKICNlbmRpZgorCiAjZW5kaWYKICAgICBk
aWRJbml0ID0gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJF
dmVudC5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50LmgKaW5kZXggMmFhYmYyODBh
MGMxNTA1ZDkwOTU1MzIwNTIwNDg5YTMyYzE0N2ZhNy4uODExMWQ1MTYwNTRjODhjNWUzMThhY2Fk
Y2E2ODNkODIyNTQzMzhiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50LmgKQEAgLTE4Miw3ICsx
ODIsNyBAQCBwdWJsaWM6CiAKICAgICBXZWJXaGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0
aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9h
dFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5LCBNb2RpZmllcnMsIGRvdWJsZSB0aW1lc3Rh
bXApOwogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBXZWJXaGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2Jh
bFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3Jl
OjpGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5LCBQaGFzZSwgUGhhc2UgbW9tZW50
dW1QaGFzZSwgYm9vbCBoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzLCBNb2RpZmllcnMsIGRvdWJs
ZSB0aW1lc3RhbXAsIGJvb2wgZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKTsKKyAgICBXZWJX
aGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNp
emUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFy
aXR5LCBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgUGhhc2UsIFBoYXNlIG1vbWVu
dHVtUGhhc2UsIGJvb2wgaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcywgdWludDMyX3Qgc2Nyb2xs
Q291bnQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0Rl
bHRhLCBNb2RpZmllcnMsIGRvdWJsZSB0aW1lc3RhbXApOwogI2VuZGlmCiAKICAgICBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCBwb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fcG9zaXRpb247IH0K
QEAgLTE5NSw2ICsxOTUsOCBAQCBwdWJsaWM6CiAgICAgUGhhc2UgcGhhc2UoKSBjb25zdCB7IHJl
dHVybiBzdGF0aWNfY2FzdDxQaGFzZT4obV9waGFzZSk7IH0KICAgICBQaGFzZSBtb21lbnR1bVBo
YXNlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8UGhhc2U+KG1fbW9tZW50dW1QaGFzZSk7
IH0KICAgICBib29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoKSBjb25zdCB7IHJldHVybiBt
X2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXM7IH0KKyAgICB1aW50MzJfdCBzY3JvbGxDb3VudCgp
IGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsQ291bnQ7IH0KKyAgICBjb25zdCBXZWJDb3JlOjpGbG9h
dFNpemUmIHVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSgpIGNvbnN0IHsgcmV0dXJuIG1fdW5h
Y2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhOyB9CiAjZW5kaWYKIAogICAgIHZvaWQgZW5jb2RlKENv
cmVJUEM6OkFyZ3VtZW50RW5jb2RlciopIGNvbnN0OwpAQCAtMjEzLDYgKzIxNSw4IEBAIHByaXZh
dGU6CiAgICAgdWludDMyX3QgbV9waGFzZTsgLy8gUGhhc2UKICAgICB1aW50MzJfdCBtX21vbWVu
dHVtUGhhc2U7IC8vIFBoYXNlCiAgICAgYm9vbCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXM7
CisgICAgdWludDMyX3QgbV9zY3JvbGxDb3VudDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgbV91
bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGE7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24uY3BwIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHAKaW5kZXggZWQ4NTY5ZDFmOGU3ODMwNjQ2
NzRjYWYxNGQ5YTYxMDE1ZTA2ZjVjNi4uOGI2MWUyN2IyODlkYWVkMWIzNTc3ZmZlNTc3MjEzMGQz
MDczMTE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50Q29udmVy
c2lvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5j
cHAKQEAgLTEzNiw2ICsxMzYsOSBAQCBwdWJsaWM6CiAgICAgICAgIG1fcGhhc2UgPSBzdGF0aWNf
Y2FzdDxXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZT4od2ViRXZlbnQucGhhc2UoKSk7
CiAgICAgICAgIG1fbW9tZW50dW1QaGFzZSA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OlBsYXRmb3Jt
V2hlZWxFdmVudFBoYXNlPih3ZWJFdmVudC5tb21lbnR1bVBoYXNlKCkpOwogICAgICAgICBtX2hh
c1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMgPSB3ZWJFdmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVs
dGFzKCk7CisgICAgICAgIG1fc2Nyb2xsQ291bnQgPSB3ZWJFdmVudC5zY3JvbGxDb3VudCgpOwor
ICAgICAgICBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVggPSB3ZWJFdmVudC51bmFjY2Vs
ZXJhdGVkU2Nyb2xsaW5nRGVsdGEoKS53aWR0aCgpOworICAgICAgICBtX3VuYWNjZWxlcmF0ZWRT
Y3JvbGxpbmdEZWx0YVkgPSB3ZWJFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEoKS5o
ZWlnaHQoKTsKICNlbmRpZgogICAgIH0KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViV2hlZWxFdmVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViV2hlZWxF
dmVudC5jcHAKaW5kZXggODQ1YjllNWMyMmFiOWE4ZTgyNmY5OTJmZTA1ZTgxMmQzMDIxNTI5MC4u
MzdjNjkxZTY0MTg1NWVhODYxMDdmMDI4ODI0NDUzMDk3NDFhNzBlZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYldoZWVsRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJXaGVlbEV2ZW50LmNwcApAQCAtNDQsMTMgKzQ0LDE0IEBAIFdlYldoZWVsRXZl
bnQ6OldlYldoZWVsRXZlbnQoVHlwZSB0eXBlLCBjb25zdCBJbnRQb2ludCYgcG9zaXRpb24sIGNv
bnN0IEludFBvaW50CiAjaWYgUExBVEZPUk0oTUFDKQogICAgICwgbV9waGFzZShQaGFzZU5vbmUp
CiAgICAgLCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoZmFsc2UpCisgICAgLCBtX3Njcm9s
bENvdW50KDApCiAjZW5kaWYKIHsKICAgICBBU1NFUlQoaXNXaGVlbEV2ZW50VHlwZSh0eXBlKSk7
CiB9CiAKICNpZiBQTEFURk9STShNQUMpCi1XZWJXaGVlbEV2ZW50OjpXZWJXaGVlbEV2ZW50KFR5
cGUgdHlwZSwgY29uc3QgSW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBJbnRQb2ludCYgZ2xvYmFs
UG9zaXRpb24sIGNvbnN0IEZsb2F0U2l6ZSYgZGVsdGEsIGNvbnN0IEZsb2F0U2l6ZSYgd2hlZWxU
aWNrcywgR3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHksIFBoYXNlIHBoYXNlLCBQaGFzZSBtb21lbnR1
bVBoYXNlLCBib29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMsIE1vZGlmaWVycyBtb2RpZmll
cnMsIGRvdWJsZSB0aW1lc3RhbXAsIGJvb2wgZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKQor
V2ViV2hlZWxFdmVudDo6V2ViV2hlZWxFdmVudChUeXBlIHR5cGUsIGNvbnN0IEludFBvaW50JiBw
b3NpdGlvbiwgY29uc3QgSW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25zdCBGbG9hdFNpemUm
IGRlbHRhLCBjb25zdCBGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5IGdyYW51bGFy
aXR5LCBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgUGhhc2UgcGhhc2UsIFBoYXNl
IG1vbWVudHVtUGhhc2UsIGJvb2wgaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcywgdWludDMyX3Qg
c2Nyb2xsQ291bnQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgdW5hY2NlbGVyYXRlZFNjcm9s
bGluZ0RlbHRhLCBNb2RpZmllcnMgbW9kaWZpZXJzLCBkb3VibGUgdGltZXN0YW1wKQogICAgIDog
V2ViRXZlbnQodHlwZSwgbW9kaWZpZXJzLCB0aW1lc3RhbXApCiAgICAgLCBtX3Bvc2l0aW9uKHBv
c2l0aW9uKQogICAgICwgbV9nbG9iYWxQb3NpdGlvbihnbG9iYWxQb3NpdGlvbikKQEAgLTYxLDYg
KzYyLDggQEAgV2ViV2hlZWxFdmVudDo6V2ViV2hlZWxFdmVudChUeXBlIHR5cGUsIGNvbnN0IElu
dFBvaW50JiBwb3NpdGlvbiwgY29uc3QgSW50UG9pbnQKICAgICAsIG1fcGhhc2UocGhhc2UpCiAg
ICAgLCBtX21vbWVudHVtUGhhc2UobW9tZW50dW1QaGFzZSkKICAgICAsIG1faGFzUHJlY2lzZVNj
cm9sbGluZ0RlbHRhcyhoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKQorICAgICwgbV9zY3JvbGxD
b3VudChzY3JvbGxDb3VudCkKKyAgICAsIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhKHVu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSkKIHsKICAgICBBU1NFUlQoaXNXaGVlbEV2ZW50VHlw
ZSh0eXBlKSk7CiB9CkBAIC04MCw2ICs4Myw4IEBAIHZvaWQgV2ViV2hlZWxFdmVudDo6ZW5jb2Rl
KENvcmVJUEM6OkFyZ3VtZW50RW5jb2RlciogZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyLT5l
bmNvZGUobV9waGFzZSk7CiAgICAgZW5jb2Rlci0+ZW5jb2RlKG1fbW9tZW50dW1QaGFzZSk7CiAg
ICAgZW5jb2Rlci0+ZW5jb2RlKG1faGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcyk7CisgICAgZW5j
b2Rlci0+ZW5jb2RlKG1fc2Nyb2xsQ291bnQpOworICAgIGVuY29kZXItPmVuY29kZShtX3VuYWNj
ZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSk7CiAjZW5kaWYKIH0KIApAQCAtMTA2LDYgKzExMSwxMCBA
QCBib29sIFdlYldoZWVsRXZlbnQ6OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRl
Y29kZXIsIFdlYldoZWVsRXZlbnQmIHQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAo
IWRlY29kZXItPmRlY29kZSh0Lm1faGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcykpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXItPmRlY29kZSh0Lm1fc2Nyb2xsQ291bnQp
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUodC5tX3Vu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRp
ZgogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L21hYy9XZWJFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2
ZW50RmFjdG9yeS5tbQppbmRleCA1OWQ2ZTlkNWExYTk5MDVlM2FjZGRiYjJjN2QzOGQ5NmUzMzQz
MDQ5Li5iZjAxNTJmZjA3NTQxZDJmOTQzMjUxNjIwYWM5NGYxNTRlNTZiMjVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQpAQCAtMzQsNiArMzQsMTIg
QEAKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKK0BpbnRlcmZhY2UgTlNFdmVudCAoV2Vi
TlNFdmVudERldGFpbHMpCistIChOU0ludGVnZXIpX3Njcm9sbENvdW50OworLSAoQ0dGbG9hdClf
dW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWDsKKy0gKENHRmxvYXQpX3VuYWNjZWxlcmF0ZWRT
Y3JvbGxpbmdEZWx0YVk7CitAZW5kCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiAvLyBGSVhNRTog
VGhpcyBpcyBhIGh1Z2UgY29weS9wYXN0ZSBmcm9tIFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMubW0uIFRoZSBjb2RlIHNob3VsZCBiZSBtZXJnZWQuCkBAIC0zODUsOCArMzkxLDYgQEAg
V2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVu
dCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBOU1BvaW50IHBvc2l0aW9uID0gcG9pbnRGb3JF
dmVudChldmVudCwgd2luZG93Vmlldyk7CiAgICAgTlNQb2ludCBnbG9iYWxQb3NpdGlvbiA9IGds
b2JhbFBvaW50Rm9yRXZlbnQoZXZlbnQpOwogCi0gICAgV2ViV2hlZWxFdmVudDo6R3JhbnVsYXJp
dHkgZ3JhbnVsYXJpdHkgID0gV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7
Ci0KICAgICBCT09MIGNvbnRpbnVvdXM7CiAgICAgZmxvYXQgZGVsdGFYID0gMDsKICAgICBmbG9h
dCBkZWx0YVkgPSAwOwpAQCAtNDA3LDE3ICs0MTEsMzQgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVu
dEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5TVmlldyAqd2lu
ZG8KICAgICAgICAgZGVsdGFZICo9IHN0YXRpY19jYXN0PGZsb2F0PihTY3JvbGxiYXI6OnBpeGVs
c1BlckxpbmVTdGVwKCkpOwogICAgIH0KIAotICAgIFdlYldoZWVsRXZlbnQ6OlBoYXNlIHBoYXNl
ICAgICAgICAgICAgICA9IHBoYXNlRm9yRXZlbnQoZXZlbnQpOwotICAgIFdlYldoZWVsRXZlbnQ6
OlBoYXNlIG1vbWVudHVtUGhhc2UgICAgICA9IG1vbWVudHVtUGhhc2VGb3JFdmVudChldmVudCk7
Ci0gICAgYm9vbCBoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzICAgICAgICAgID0gY29udGludW91
czsKLSAgICBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVycyAgICAgICAgICAgPSBtb2RpZmll
cnNGb3JFdmVudChldmVudCk7Ci0gICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICAg
ICAgICAgID0gW2V2ZW50IHRpbWVzdGFtcF07CisgICAgV2ViV2hlZWxFdmVudDo6R3JhbnVsYXJp
dHkgZ3JhbnVsYXJpdHkgID0gV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7
CisKICNpZiBIQVZFKElOVkVSVEVEX1dIRUVMX0VWRU5UUykKICAgICBib29sIGRpcmVjdGlvbklu
dmVydGVkRnJvbURldmljZSAgICAgICAgPSBbZXZlbnQgaXNEaXJlY3Rpb25JbnZlcnRlZEZyb21E
ZXZpY2VdOwogI2Vsc2UKICAgICBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSAgICAg
ICAgPSBmYWxzZTsKICNlbmRpZgotICAgIHJldHVybiBXZWJXaGVlbEV2ZW50KFdlYkV2ZW50OjpX
aGVlbCwgSW50UG9pbnQocG9zaXRpb24pLCBJbnRQb2ludChnbG9iYWxQb3NpdGlvbiksIEZsb2F0
U2l6ZShkZWx0YVgsIGRlbHRhWSksIEZsb2F0U2l6ZSh3aGVlbFRpY2tzWCwgd2hlZWxUaWNrc1kp
LCBncmFudWxhcml0eSwgcGhhc2UsIG1vbWVudHVtUGhhc2UsIGhhc1ByZWNpc2VTY3JvbGxpbmdE
ZWx0YXMsIG1vZGlmaWVycywgdGltZXN0YW1wLCBkaXJlY3Rpb25JbnZlcnRlZEZyb21EZXZpY2Up
OworCisgICAgV2ViV2hlZWxFdmVudDo6UGhhc2UgcGhhc2UgICAgICAgICAgICAgID0gcGhhc2VG
b3JFdmVudChldmVudCk7CisgICAgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSAg
ICAgID0gbW9tZW50dW1QaGFzZUZvckV2ZW50KGV2ZW50KTsKKyAgICBib29sIGhhc1ByZWNpc2VT
Y3JvbGxpbmdEZWx0YXMgICAgICAgICAgPSBjb250aW51b3VzOworCisgICAgdWludDMyX3Qgc2Ny
b2xsQ291bnQ7CisgICAgRmxvYXRTaXplIHVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YTsKKwor
ICAgIHN0YXRpYyBib29sIG5zRXZlbnRTdXBwb3J0c1Njcm9sbENvdW50ID0gW05TRXZlbnQgaW5z
dGFuY2VzUmVzcG9uZFRvU2VsZWN0b3I6QHNlbGVjdG9yKF9zY3JvbGxDb3VudCldOworICAgIGlm
IChuc0V2ZW50U3VwcG9ydHNTY3JvbGxDb3VudCkgeworICAgICAgICBzY3JvbGxDb3VudCA9IFtl
dmVudCBfc2Nyb2xsQ291bnRdOworICAgICAgICB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEg
PSBGbG9hdFNpemUoW2V2ZW50IF91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYXSwgW2V2ZW50
IF91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZXSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
c2Nyb2xsQ291bnQgPSAwOworICAgICAgICB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEgPSBG
bG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpOworICAgIH0KKworICAgIFdlYkV2ZW50OjpNb2RpZmll
cnMgbW9kaWZpZXJzICAgICAgICAgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50KTsKKyAgICBk
b3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgICAgICAgICAgPSBbZXZlbnQgdGltZXN0YW1w
XTsKKyAgICAKKyAgICByZXR1cm4gV2ViV2hlZWxFdmVudChXZWJFdmVudDo6V2hlZWwsIEludFBv
aW50KHBvc2l0aW9uKSwgSW50UG9pbnQoZ2xvYmFsUG9zaXRpb24pLCBGbG9hdFNpemUoZGVsdGFY
LCBkZWx0YVkpLCBGbG9hdFNpemUod2hlZWxUaWNrc1gsIHdoZWVsVGlja3NZKSwgZ3JhbnVsYXJp
dHksIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgcGhhc2UsIG1vbWVudHVtUGhhc2UsIGhh
c1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMsIHNjcm9sbENvdW50LCB1bmFjY2VsZXJhdGVkU2Nyb2xs
aW5nRGVsdGEsIG1vZGlmaWVycywgdGltZXN0YW1wKTsKIH0KIAogV2ViS2V5Ym9hcmRFdmVudCBX
ZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJkRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5T
VmlldyAqKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBm
ZjE4YzU4MGM5ZTRhZGE3OWU2ZDE1MWEzNGI1NWEyMWE0YjhmOGM0Li5kNWMyZDEyNDdkNjkwZWQ0
ZjlkNWJiODljOWFkNTlhNzBjMmVhYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcApAQCAtMTAxOSw5ICsxMDE5LDEwIEBAIHN0YXRpYyBXZWJXaGVlbEV2ZW50
IGNvYWxlc2NlKGNvbnN0IFdlYldoZWVsRXZlbnQmIGEsIGNvbnN0IFdlYldoZWVsRXZlbnQmIGIp
CiAKICAgICBGbG9hdFNpemUgbWVyZ2VkRGVsdGEgPSBhLmRlbHRhKCkgKyBiLmRlbHRhKCk7CiAg
ICAgRmxvYXRTaXplIG1lcmdlZFdoZWVsVGlja3MgPSBhLndoZWVsVGlja3MoKSArIGIud2hlZWxU
aWNrcygpOworICAgIEZsb2F0U2l6ZSBtZXJnZWRVbmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEg
PSBhLnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSgpICsgYi51bmFjY2VsZXJhdGVkU2Nyb2xs
aW5nRGVsdGEoKTsKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICByZXR1cm4gV2ViV2hlZWxFdmVu
dChXZWJFdmVudDo6V2hlZWwsIGIucG9zaXRpb24oKSwgYi5nbG9iYWxQb3NpdGlvbigpLCBtZXJn
ZWREZWx0YSwgbWVyZ2VkV2hlZWxUaWNrcywgYi5ncmFudWxhcml0eSgpLCBiLnBoYXNlKCksIGIu
bW9tZW50dW1QaGFzZSgpLCBiLmhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoKSwgYi5tb2RpZmll
cnMoKSwgYi50aW1lc3RhbXAoKSwgYi5kaXJlY3Rpb25JbnZlcnRlZEZyb21EZXZpY2UoKSk7Cisg
ICAgcmV0dXJuIFdlYldoZWVsRXZlbnQoV2ViRXZlbnQ6OldoZWVsLCBiLnBvc2l0aW9uKCksIGIu
Z2xvYmFsUG9zaXRpb24oKSwgbWVyZ2VkRGVsdGEsIG1lcmdlZFdoZWVsVGlja3MsIGIuZ3JhbnVs
YXJpdHkoKSwgYi5kaXJlY3Rpb25JbnZlcnRlZEZyb21EZXZpY2UoKSwgYi5waGFzZSgpLCBiLm1v
bWVudHVtUGhhc2UoKSwgYi5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKCksIGIuc2Nyb2xsQ291
bnQoKSwgbWVyZ2VkVW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhLCBiLm1vZGlmaWVycygpLCBi
LnRpbWVzdGFtcCgpKTsKICNlbHNlCiAgICAgcmV0dXJuIFdlYldoZWVsRXZlbnQoV2ViRXZlbnQ6
OldoZWVsLCBiLnBvc2l0aW9uKCksIGIuZ2xvYmFsUG9zaXRpb24oKSwgbWVyZ2VkRGVsdGEsIG1l
cmdlZFdoZWVsVGlja3MsIGIuZ3JhbnVsYXJpdHkoKSwgYi5tb2RpZmllcnMoKSwgYi50aW1lc3Rh
bXAoKSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbQppbmRleCBh
Y2YxOWM0YmYzY2RjZDViNGI1YWE2NzIwNWZjMzhjNjU2ZjlkNTI0Li5jMTM4NWYwYTM2MzMzMDBk
ZDI1ZWUzYzBjOTMwYjM3N2UwODEwZDNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJm
YWNlLm1tCkBAIC0xODEsNiArMTgxLDEwIEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2Uodm9pZCkKICAgICAgICAgSU5JVChGaWx0ZXJXYXNCbG9ja2VkKTsKICAgICAgICAgSU5JVChG
aWx0ZXJBZGREYXRhKTsKICAgICAgICAgSU5JVChGaWx0ZXJEYXRhQ29tcGxldGUpOworCisgICAg
ICAgIElOSVQoTlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEpOworICAgICAgICBJTklUKE5TRWxh
c3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKTsKKyAgICAgICAgSU5JVChOU1JlYm91bmREZWx0YUZv
ckVsYXN0aWNEZWx0YSk7CiAjZW5kaWYKIAogICAgIH0pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142017</attachid>
            <date>2012-05-15 11:51:54 -0700</date>
            <delta_ts>2012-05-15 12:19:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86503-20120515115226.patch</filename>
            <type>text/plain</type>
            <size>22896</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3MDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDMyZDVjYTIwY2I4MWEw
MGE3MmI5NDE1ZmZjNzNmZjQ2Zjc2Yzc3ZS4uZjA4ZjE0ZjdiMTc4ZjJiZDgyMjFjZTU3ZGNhYThk
YWY4MDY1M2EzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA1LTE1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHVuYWNjZWxl
cmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyB3aGVuIHJ1YmJlci1iYW5kaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NjUwMworICAgICAgICA8cmRhcjov
L3Byb2JsZW0vMTEzNzg3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9y
bVdoZWVsRXZlbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtV2hlZWxFdmVudDo6UGxh
dGZvcm1XaGVlbEV2ZW50KToKKyAgICAgICAgKFBsYXRmb3JtV2hlZWxFdmVudCk6CisgICAgICAg
IChXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnQ6OnNjcm9sbENvdW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlBsYXRmb3JtV2hlZWxFdmVudDo6dW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCk6
CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnQ6OnVuYWNjZWxlcmF0ZWRTY3Jv
bGxpbmdEZWx0YVkpOgorICAgICAgICBBZGQgc2Nyb2xsIGNvdW50IGFuZCB1bmFjY2VsZXJhdGVk
IHNjcm9sbGluZyBkZWx0YXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsRWxhc3Rp
Y2l0eUNvbnRyb2xsZXIubW06CisgICAgICAgIChXZWJDb3JlOjplbGFzdGljRGVsdGFGb3JUaW1l
RGVsdGEpOgorICAgICAgICAoV2ViQ29yZTo6ZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKToK
KyAgICAgICAgKFdlYkNvcmU6OnJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YSk6CisgICAgICAg
IENhbGwgdGhlIG5ldyBXS1NJIGZ1bmN0aW9ucy4KKworICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
RWxhc3RpY2l0eUNvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOgorICAgICAgICBVc2UgdGhl
IHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyB3aGVuIG5lZWRlZC4KKworICAgICAgICAq
IHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmg6CisgICAgICAgICogcGxhdGZv
cm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW06CisgICAgICAgIEFkZCBuZXcgV0tTSSBm
dW5jdGlvbnMuCisKIDIwMTItMDUtMTUgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogYWRkIHNob3cvaGlkZSBkZWJ1Z2dlciBz
aWRlYmFyIGJ1dHRvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCAxM2E1ZmZmOWEwNTViMGY4N2FkZGU3
YTgxY2UyYzkyMzE5ZjhlOGU3Li5kMGRiZGM1ZTQ5NGJkMDk1MDc1Mzk1NDhhMzA5ODFmNjFlNmU4
NDMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUtMTUgIEFuZGVy
cyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgdW5hY2NlbGVy
YXRlZCBzY3JvbGxpbmcgZGVsdGFzIHdoZW4gcnViYmVyLWJhbmRpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg2NTAzCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xMTM3ODc0Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAg
ICAgKEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKToKKyAgICAgICAgSW5pdCBuZXcgV0tTSSBm
dW5jdGlvbnMuCisKIDIwMTItMDUtMTQgIEx1a2UgTWFjcGhlcnNvbiAgPG1hY3BoZXJzb25AY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIEludHJvZHVjZSBFTkFCTEVfQ1NTX1ZBUklBQkxFUyBjb21w
aWxlIGZsYWcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjA5NDk3NjE4NDU5OTliM2Y2ODE0ZDNhMmU4ZmJlNDA2
ZjI2NjgxMy4uMzU0YWFlMDZlYjZhNTNhZjIzYjkyN2EwYjQ5ZmJmM2MwNzAwMmNlZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTA1LTE1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRl
bHRhcyB3aGVuIHJ1YmJlci1iYW5kaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NjUwMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTEzNzg3NDI+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvV2ViRXZlbnQuaDoKKyAgICAgICAgKFdlYldoZWVsRXZlbnQpOgorICAgICAgICAoV2ViS2l0
OjpXZWJXaGVlbEV2ZW50OjpzY3JvbGxDb3VudCk6CisgICAgICAgIChXZWJLaXQ6OldlYldoZWVs
RXZlbnQ6OnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSk6CisgICAgICAgIEFkZCBzY3JvbGwg
Y291bnQgYW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhLgorCisgICAgICAgICogU2hh
cmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYktpdDJQbGF0
Zm9ybVdoZWVsRXZlbnQ6OldlYktpdDJQbGF0Zm9ybVdoZWVsRXZlbnQpOgorICAgICAgICBJbml0
aWFsaXplIHNjcm9sbCBjb3VudCBhbmQgdW5hY2NlbGVyYXRlZCBzY3JvbGxpbmcgZGVsdGFzLgor
CisgICAgICAgICogU2hhcmVkL1dlYldoZWVsRXZlbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJXaGVlbEV2ZW50OjpXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgSW5pdGlhbGl6ZSBzY3JvbGwg
Y291bnQgYW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcy4KKworICAgICAgICAoV2Vi
S2l0OjpXZWJXaGVlbEV2ZW50OjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJXaGVlbEV2
ZW50OjpkZWNvZGUpOgorICAgICAgICBFbmNvZGUgYW5kIGRlY29kZSBzY3JvbGwgY291bnQgYW5k
IHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcy4KKworICAgICAgICAqIFNoYXJlZC9tYWMv
V2ViRXZlbnRGYWN0b3J5Lm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNy
ZWF0ZVdlYldoZWVsRXZlbnQpOgorICAgICAgICBJbml0aWFsaXplIHRoZSBzY3JvbGwgY291bnQg
YW5kIHVuYWNjZWxlcmF0ZWQgc2Nyb2xsaW5nIGRlbHRhcyBmcm9tIHRoZSB1bmRlcmx5aW5nIE5T
RXZlbnQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6Y29hbGVzY2UpOgorICAgICAgICBDb2FsZXNjZSB1bmFjY2VsZXJhdGVkIHNjcm9s
bGluZyBkZWx0YXMgYXMgd2VsbC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKToKKyAgICAgICAgSW5pdCBuZXcgV0tTSSBmdW5jdGlvbnMuCisKIDIwMTItMDUt
MTUgIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0aEB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFtRdF0gQWRkIGluZnJhIGZvciB0ZXN0aW5nIGRvdWJsZS10YXAgdG8gem9vbSBmdW5j
dGlvbmFsaXR5IGV0YwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4g
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCAyYmEzMWExZWEyZjE2ODgxOTM4
NjNmMDY3NDU4OWVmODU5MDdhODJkLi43NGZhNjA0NmIyZDEwMGRlYThlNTk5N2RjZjFjZGY2OGQ5
YzRjZDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTY5Myw2ICsxNjkzLDkgQEAgX3drRmls
dGVyUmVsZWFzZQogX3drRmlsdGVyV2FzQmxvY2tlZAogX3drRmlsdGVyQWRkRGF0YQogX3drRmls
dGVyRGF0YUNvbXBsZXRlCitfd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YQorX3drTlNFbGFz
dGljRGVsdGFGb3JSZWJvdW5kRGVsdGEKK193a05TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRh
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9QbGF0Zm9ybVdoZWVsRXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bs
YXRmb3JtV2hlZWxFdmVudC5oCmluZGV4IDA4NGI0NTU1MzVmNzAxZmRkYjE4ZTQxNGQ5YTU5ZTlj
MzlmZGZlOTQuLjI3OWUxY2YyMzU3YzNmYTVmYzc5MDVlNTNjOTA1ZTllY2I4YjI5MmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVudC5oCkBAIC05NCw2ICs5
NCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICwgbV9oYXNQcmVjaXNlU2Ny
b2xsaW5nRGVsdGFzKGZhbHNlKQogICAgICAgICAgICAgLCBtX3BoYXNlKFBsYXRmb3JtV2hlZWxF
dmVudFBoYXNlTm9uZSkKICAgICAgICAgICAgICwgbV9tb21lbnR1bVBoYXNlKFBsYXRmb3JtV2hl
ZWxFdmVudFBoYXNlTm9uZSkKKyAgICAgICAgICAgICwgbV9zY3JvbGxDb3VudCgwKQorICAgICAg
ICAgICAgLCBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoMCkKKyAgICAgICAgICAgICwg
bV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKDApCiAjZW5kaWYKICAgICAgICAgewogICAg
ICAgICB9CkBAIC0xMTIsNiArMTE1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAg
ICAgLCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoZmFsc2UpCiAgICAgICAgICAgICAsIG1f
cGhhc2UoUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKQogICAgICAgICAgICAgLCBtX21vbWVu
dHVtUGhhc2UoUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKQorICAgICAgICAgICAgLCBtX3Nj
cm9sbENvdW50KDApCisgICAgICAgICAgICAsIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRh
WCgwKQorICAgICAgICAgICAgLCBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoMCkKICNl
bmRpZgogICAgICAgICB7CiAgICAgICAgIH0KQEAgLTE1Myw2ICsxNTksMTAgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBwaGFzZSgpIGNvbnN0
IHsgcmV0dXJuIG1fcGhhc2U7IH0KICAgICAgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9t
ZW50dW1QaGFzZSgpIGNvbnN0IHsgcmV0dXJuIG1fbW9tZW50dW1QaGFzZTsgfQogICAgICAgICBi
b29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoKSBjb25zdCB7IHJldHVybiBtX2hhc1ByZWNp
c2VTY3JvbGxpbmdEZWx0YXM7IH0KKworICAgICAgICB1bnNpZ25lZCBzY3JvbGxDb3VudCgpIGNv
bnN0IHsgcmV0dXJuIG1fc2Nyb2xsQ291bnQ7IH0KKyAgICAgICAgZmxvYXQgdW5hY2NlbGVyYXRl
ZFNjcm9sbGluZ0RlbHRhWCgpIGNvbnN0IHsgcmV0dXJuIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGlu
Z0RlbHRhWDsgfQorICAgICAgICBmbG9hdCB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCkg
Y29uc3QgeyByZXR1cm4gbV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZOyB9CiAjZW5kaWYK
IAogI2lmIFBMQVRGT1JNKFdJTikKQEAgLTE4MSw2ICsxOTEsOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIGJvb2wgbV9oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzOwogICAgICAgICBQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBtX3BoYXNlOwogICAgICAgICBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZSBtX21vbWVudHVtUGhhc2U7CisgICAgICAgIHVuc2lnbmVkIG1fc2Nyb2xsQ291bnQ7
CisgICAgICAgIGZsb2F0IG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAg
ZmxvYXQgbV91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZOwogI2VuZGlmCiAgICAgfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEVsYXN0aWNpdHlD
b250cm9sbGVyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEVsYXN0aWNp
dHlDb250cm9sbGVyLm1tCmluZGV4IGE4MTc4NDY5NjhlOThmOTYwZjIyNDdmYWUzMTc5ZDljZDMy
ZDk2ODguLmQxMjJiNTZjZmE0MDFlZDQwNzY1Mjg0ZjZmYjdmZWIwZjkxMjJkN2IgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxFbGFzdGljaXR5Q29udHJvbGxl
ci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsRWxhc3RpY2l0eUNv
bnRyb2xsZXIubW0KQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJTY3JvbGxFbGFzdGljaXR5
Q29udHJvbGxlci5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCisjaW5jbHVk
ZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAjaW5j
bHVkZSA8c3lzL3N5c2N0bC5oPgogCkBAIC02Nyw5ICs2OCwxMSBAQCBzdGF0aWMgTlNUaW1lSW50
ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RhdGljIGNvbnN0
IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKLXN0YXRpYyBjb25z
dCBmbG9hdCBydWJiZXJiYW5kU3RpZmZuZXNzID0gMjA7CiBzdGF0aWMgY29uc3QgZmxvYXQgcnVi
YmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOwogc3RhdGljIGNvbnN0IGZsb2F0
IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworI2lm
IGRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFSRCkgfHwgZGVmaW5lZChCVUxESU5HX09OX1NOT1df
TEVPUEFSRCkgfHwgZGVmaW5lZChCVUlMRElOR19PTl9MSU9OKQorc3RhdGljIGNvbnN0IGZsb2F0
IHJ1YmJlcmJhbmRTdGlmZm5lc3MgPSAyMDsKIHN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5k
QW1wbGl0dWRlID0gMC4zMWY7CiBzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZFBlcmlvZCA9
IDEuNmY7CiAKQEAgLTkyLDYgKzk1LDIyIEBAIHN0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCiB7CiAgICAgcmV0dXJuIGRlbHRhICogcnViYmVyYmFu
ZFN0aWZmbmVzczsKIH0KKyNlbHNlCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBl
bGFwc2VkVGltZSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShp
bml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitzdGF0
aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQoreworICAg
IHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKworc3Rh
dGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAg
ICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisjZW5k
aWYKIAogc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpCiB7CkBAIC0xNTksOCAr
MTc4LDIwIEBAIGJvb2wgU2Nyb2xsRWxhc3RpY2l0eUNvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZl
bnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlCiAgICAgLy8gUmVzZXQgb3ZlcmZsb3cg
dmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBw
b2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgogICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YSA9IEZsb2F0U2l6ZSgpOwogCi0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hl
ZWxFdmVudC5kZWx0YVgoKTsKLSAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVl
bEV2ZW50LmRlbHRhWSgpOworICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5z
dHJldGNoQW1vdW50KCk7CisgICAgYm9vbCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNo
QW1vdW50LmhlaWdodCgpOworICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBzdHJl
dGNoQW1vdW50LndpZHRoKCk7CisKKyAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWDsKKyAg
ICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWTsKKworICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJl
dGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKKyAgICAgICAgZXZlbnRDb2FsZXNj
ZWREZWx0YVggPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYKCk7Cisg
ICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNj
cm9sbGluZ0RlbHRhWSgpOworICAgIH0gZWxzZSB7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFYID0gLXdoZWVsRXZlbnQuZGVsdGFYKCk7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZ
ID0gLXdoZWVsRXZlbnQuZGVsdGFZKCk7CisgICAgfQogCiAgICAgZGVsdGFYICs9IGV2ZW50Q29h
bGVzY2VkRGVsdGFYOwogICAgIGRlbHRhWSArPSBldmVudENvYWxlc2NlZERlbHRhWTsKQEAgLTE3
MSwxNSArMjAyLDggQEAgYm9vbCBTY3JvbGxFbGFzdGljaXR5Q29udHJvbGxlcjo6aGFuZGxlV2hl
ZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWUKICAgICBlbHNlCiAgICAgICAg
IGRlbHRhWSA9IDA7CiAKLSAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IGZhbHNlOwot
ICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBmYWxzZTsKICAgICBib29sIHNob3Vs
ZFN0cmV0Y2ggPSBmYWxzZTsKIAotICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50
LT5zdHJldGNoQW1vdW50KCk7Ci0KLSAgICBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQud2lkdGgoKTsKLSAgICBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1v
dW50LmhlaWdodCgpOwotCiAgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFz
ZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwogCiAgICAgLy8gSWYgd2UgYXJlIHN0YXJ0
aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaAppbmRleCBk
ZDE2ZmExODJkNzkzOTI4MmJiNmUzNzA3N2E0ZDA2ZTc0N2IyODBjLi45MDhkZDk1YTkwMDJhM2Mz
Nzk0ZTc1NWQ4YjQ2OTVlMjAwMTJmOGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKQEAgLTMyMyw2ICszMjMsMTAgQEAg
ZXh0ZXJuIHZvaWQgKCp3a0ZpbHRlclJlbGVhc2UpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIGV4
dGVybiBCT09MICgqd2tGaWx0ZXJXYXNCbG9ja2VkKShXZWJGaWx0ZXJFdmFsdWF0b3IgKik7CiBl
eHRlcm4gY29uc3QgY2hhciogKCp3a0ZpbHRlckFkZERhdGEpKFdlYkZpbHRlckV2YWx1YXRvciAq
LCBjb25zdCBjaGFyKiBkYXRhLCBpbnQqIGxlbmd0aCk7CiBleHRlcm4gY29uc3QgY2hhciogKCp3
a0ZpbHRlckRhdGFDb21wbGV0ZSkoV2ViRmlsdGVyRXZhbHVhdG9yICosIGludCogbGVuZ3RoKTsK
KworZXh0ZXJuIENHRmxvYXQgKCp3a05TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKShDR0Zsb2F0
IGluaXRpYWxQb3NpdGlvbiwgQ0dGbG9hdCBpbml0aWFsVmVsb2NpdHksIENHRmxvYXQgZWxhcHNl
ZFRpbWUpOworZXh0ZXJuIENHRmxvYXQgKCp3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRh
KShDR0Zsb2F0IGRlbHRhKTsKK2V4dGVybiBDR0Zsb2F0ICgqd2tOU1JlYm91bmREZWx0YUZvckVs
YXN0aWNEZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CiAjZW5kaWYKIAogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQppbmRleCA0
MzlhMmYyNGY2MmI0MGU0MmVlZDk4YTlkN2I4ZDg0YTYxZWE2YjFmLi5jMDg3YTVkODdhNDVlZDgy
YmE0Yzc5Nzk1ZDk3Y2YxZWQ5MTAzY2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQpAQCAtMjAyLDQgKzIwMiw5IEBA
IHZvaWQgKCp3a0ZpbHRlclJlbGVhc2UpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIEJPT0wgKCp3
a0ZpbHRlcldhc0Jsb2NrZWQpKFdlYkZpbHRlckV2YWx1YXRvciAqKTsKIGNvbnN0IGNoYXIqICgq
d2tGaWx0ZXJBZGREYXRhKShXZWJGaWx0ZXJFdmFsdWF0b3IgKiwgY29uc3QgY2hhciogZGF0YSwg
aW50KiBsZW5ndGgpOwogY29uc3QgY2hhciogKCp3a0ZpbHRlckRhdGFDb21wbGV0ZSkoV2ViRmls
dGVyRXZhbHVhdG9yICosIGludCogbGVuZ3RoKTsKKworQ0dGbG9hdCAoKndrTlNFbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEpKENHRmxvYXQgaW5pdGlhbFBvc2l0aW9uLCBDR0Zsb2F0IGluaXRpYWxW
ZWxvY2l0eSwgQ0dGbG9hdCBlbGFwc2VkVGltZSk7CitDR0Zsb2F0ICgqd2tOU0VsYXN0aWNEZWx0
YUZvclJlYm91bmREZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CitDR0Zsb2F0ICgqd2tOU1JlYm91bmRE
ZWx0YUZvckVsYXN0aWNEZWx0YSkoQ0dGbG9hdCBkZWx0YSk7CiAjZW5kaWYKKwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1t
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1t
CmluZGV4IDAwZjc5YjU0NjNmOTU0MWFjODBkYTZjMDQxMjcwYTFmODFjNTRjYjAuLmQxZjJmMTVl
ZTZhZGVhY2EyZWQyODE5ZTRhMzc2YTU3MzkyOTA2ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTE5OCw3
ICsxOTgsMTIgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElO
SVQoRmlsdGVyV2FzQmxvY2tlZCk7CiAgICAgSU5JVChGaWx0ZXJBZGREYXRhKTsKICAgICBJTklU
KEZpbHRlckRhdGFDb21wbGV0ZSk7CisKKyAgICBJTklUKE5TRWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKTsKKyAgICBJTklUKE5TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKTsKKyAgICBJTklU
KE5TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKTsKICNlbmRpZgorCiAjZW5kaWYKICAgICBk
aWRJbml0ID0gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJF
dmVudC5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50LmgKaW5kZXggMmFhYmYyODBh
MGMxNTA1ZDkwOTU1MzIwNTIwNDg5YTMyYzE0N2ZhNy4uODExMWQ1MTYwNTRjODhjNWUzMThhY2Fk
Y2E2ODNkODIyNTQzMzhiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50LmgKQEAgLTE4Miw3ICsx
ODIsNyBAQCBwdWJsaWM6CiAKICAgICBXZWJXaGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0
aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9h
dFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5LCBNb2RpZmllcnMsIGRvdWJsZSB0aW1lc3Rh
bXApOwogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBXZWJXaGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2Jh
bFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3Jl
OjpGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5LCBQaGFzZSwgUGhhc2UgbW9tZW50
dW1QaGFzZSwgYm9vbCBoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzLCBNb2RpZmllcnMsIGRvdWJs
ZSB0aW1lc3RhbXAsIGJvb2wgZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKTsKKyAgICBXZWJX
aGVlbEV2ZW50KFR5cGUsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNp
emUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFy
aXR5LCBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgUGhhc2UsIFBoYXNlIG1vbWVu
dHVtUGhhc2UsIGJvb2wgaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcywgdWludDMyX3Qgc2Nyb2xs
Q291bnQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0Rl
bHRhLCBNb2RpZmllcnMsIGRvdWJsZSB0aW1lc3RhbXApOwogI2VuZGlmCiAKICAgICBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCBwb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fcG9zaXRpb247IH0K
QEAgLTE5NSw2ICsxOTUsOCBAQCBwdWJsaWM6CiAgICAgUGhhc2UgcGhhc2UoKSBjb25zdCB7IHJl
dHVybiBzdGF0aWNfY2FzdDxQaGFzZT4obV9waGFzZSk7IH0KICAgICBQaGFzZSBtb21lbnR1bVBo
YXNlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8UGhhc2U+KG1fbW9tZW50dW1QaGFzZSk7
IH0KICAgICBib29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoKSBjb25zdCB7IHJldHVybiBt
X2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXM7IH0KKyAgICB1aW50MzJfdCBzY3JvbGxDb3VudCgp
IGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsQ291bnQ7IH0KKyAgICBjb25zdCBXZWJDb3JlOjpGbG9h
dFNpemUmIHVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSgpIGNvbnN0IHsgcmV0dXJuIG1fdW5h
Y2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhOyB9CiAjZW5kaWYKIAogICAgIHZvaWQgZW5jb2RlKENv
cmVJUEM6OkFyZ3VtZW50RW5jb2RlciopIGNvbnN0OwpAQCAtMjEzLDYgKzIxNSw4IEBAIHByaXZh
dGU6CiAgICAgdWludDMyX3QgbV9waGFzZTsgLy8gUGhhc2UKICAgICB1aW50MzJfdCBtX21vbWVu
dHVtUGhhc2U7IC8vIFBoYXNlCiAgICAgYm9vbCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXM7
CisgICAgdWludDMyX3QgbV9zY3JvbGxDb3VudDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgbV91
bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGE7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24uY3BwIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHAKaW5kZXggZWQ4NTY5ZDFmOGU3ODMwNjQ2
NzRjYWYxNGQ5YTYxMDE1ZTA2ZjVjNi4uOGI2MWUyN2IyODlkYWVkMWIzNTc3ZmZlNTc3MjEzMGQz
MDczMTE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50Q29udmVy
c2lvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5j
cHAKQEAgLTEzNiw2ICsxMzYsOSBAQCBwdWJsaWM6CiAgICAgICAgIG1fcGhhc2UgPSBzdGF0aWNf
Y2FzdDxXZWJDb3JlOjpQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZT4od2ViRXZlbnQucGhhc2UoKSk7
CiAgICAgICAgIG1fbW9tZW50dW1QaGFzZSA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OlBsYXRmb3Jt
V2hlZWxFdmVudFBoYXNlPih3ZWJFdmVudC5tb21lbnR1bVBoYXNlKCkpOwogICAgICAgICBtX2hh
c1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMgPSB3ZWJFdmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVs
dGFzKCk7CisgICAgICAgIG1fc2Nyb2xsQ291bnQgPSB3ZWJFdmVudC5zY3JvbGxDb3VudCgpOwor
ICAgICAgICBtX3VuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVggPSB3ZWJFdmVudC51bmFjY2Vs
ZXJhdGVkU2Nyb2xsaW5nRGVsdGEoKS53aWR0aCgpOworICAgICAgICBtX3VuYWNjZWxlcmF0ZWRT
Y3JvbGxpbmdEZWx0YVkgPSB3ZWJFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEoKS5o
ZWlnaHQoKTsKICNlbmRpZgogICAgIH0KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViV2hlZWxFdmVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViV2hlZWxF
dmVudC5jcHAKaW5kZXggODQ1YjllNWMyMmFiOWE4ZTgyNmY5OTJmZTA1ZTgxMmQzMDIxNTI5MC4u
MzdjNjkxZTY0MTg1NWVhODYxMDdmMDI4ODI0NDUzMDk3NDFhNzBlZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYldoZWVsRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJXaGVlbEV2ZW50LmNwcApAQCAtNDQsMTMgKzQ0LDE0IEBAIFdlYldoZWVsRXZl
bnQ6OldlYldoZWVsRXZlbnQoVHlwZSB0eXBlLCBjb25zdCBJbnRQb2ludCYgcG9zaXRpb24sIGNv
bnN0IEludFBvaW50CiAjaWYgUExBVEZPUk0oTUFDKQogICAgICwgbV9waGFzZShQaGFzZU5vbmUp
CiAgICAgLCBtX2hhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMoZmFsc2UpCisgICAgLCBtX3Njcm9s
bENvdW50KDApCiAjZW5kaWYKIHsKICAgICBBU1NFUlQoaXNXaGVlbEV2ZW50VHlwZSh0eXBlKSk7
CiB9CiAKICNpZiBQTEFURk9STShNQUMpCi1XZWJXaGVlbEV2ZW50OjpXZWJXaGVlbEV2ZW50KFR5
cGUgdHlwZSwgY29uc3QgSW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBJbnRQb2ludCYgZ2xvYmFs
UG9zaXRpb24sIGNvbnN0IEZsb2F0U2l6ZSYgZGVsdGEsIGNvbnN0IEZsb2F0U2l6ZSYgd2hlZWxU
aWNrcywgR3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHksIFBoYXNlIHBoYXNlLCBQaGFzZSBtb21lbnR1
bVBoYXNlLCBib29sIGhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMsIE1vZGlmaWVycyBtb2RpZmll
cnMsIGRvdWJsZSB0aW1lc3RhbXAsIGJvb2wgZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKQor
V2ViV2hlZWxFdmVudDo6V2ViV2hlZWxFdmVudChUeXBlIHR5cGUsIGNvbnN0IEludFBvaW50JiBw
b3NpdGlvbiwgY29uc3QgSW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25zdCBGbG9hdFNpemUm
IGRlbHRhLCBjb25zdCBGbG9hdFNpemUmIHdoZWVsVGlja3MsIEdyYW51bGFyaXR5IGdyYW51bGFy
aXR5LCBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgUGhhc2UgcGhhc2UsIFBoYXNl
IG1vbWVudHVtUGhhc2UsIGJvb2wgaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcywgdWludDMyX3Qg
c2Nyb2xsQ291bnQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgdW5hY2NlbGVyYXRlZFNjcm9s
bGluZ0RlbHRhLCBNb2RpZmllcnMgbW9kaWZpZXJzLCBkb3VibGUgdGltZXN0YW1wKQogICAgIDog
V2ViRXZlbnQodHlwZSwgbW9kaWZpZXJzLCB0aW1lc3RhbXApCiAgICAgLCBtX3Bvc2l0aW9uKHBv
c2l0aW9uKQogICAgICwgbV9nbG9iYWxQb3NpdGlvbihnbG9iYWxQb3NpdGlvbikKQEAgLTYxLDYg
KzYyLDggQEAgV2ViV2hlZWxFdmVudDo6V2ViV2hlZWxFdmVudChUeXBlIHR5cGUsIGNvbnN0IElu
dFBvaW50JiBwb3NpdGlvbiwgY29uc3QgSW50UG9pbnQKICAgICAsIG1fcGhhc2UocGhhc2UpCiAg
ICAgLCBtX21vbWVudHVtUGhhc2UobW9tZW50dW1QaGFzZSkKICAgICAsIG1faGFzUHJlY2lzZVNj
cm9sbGluZ0RlbHRhcyhoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKQorICAgICwgbV9zY3JvbGxD
b3VudChzY3JvbGxDb3VudCkKKyAgICAsIG1fdW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhKHVu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSkKIHsKICAgICBBU1NFUlQoaXNXaGVlbEV2ZW50VHlw
ZSh0eXBlKSk7CiB9CkBAIC04MCw2ICs4Myw4IEBAIHZvaWQgV2ViV2hlZWxFdmVudDo6ZW5jb2Rl
KENvcmVJUEM6OkFyZ3VtZW50RW5jb2RlciogZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyLT5l
bmNvZGUobV9waGFzZSk7CiAgICAgZW5jb2Rlci0+ZW5jb2RlKG1fbW9tZW50dW1QaGFzZSk7CiAg
ICAgZW5jb2Rlci0+ZW5jb2RlKG1faGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcyk7CisgICAgZW5j
b2Rlci0+ZW5jb2RlKG1fc2Nyb2xsQ291bnQpOworICAgIGVuY29kZXItPmVuY29kZShtX3VuYWNj
ZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSk7CiAjZW5kaWYKIH0KIApAQCAtMTA2LDYgKzExMSwxMCBA
QCBib29sIFdlYldoZWVsRXZlbnQ6OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRl
Y29kZXIsIFdlYldoZWVsRXZlbnQmIHQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAo
IWRlY29kZXItPmRlY29kZSh0Lm1faGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcykpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXItPmRlY29kZSh0Lm1fc2Nyb2xsQ291bnQp
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUodC5tX3Vu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRp
ZgogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L21hYy9XZWJFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2
ZW50RmFjdG9yeS5tbQppbmRleCA1OWQ2ZTlkNWExYTk5MDVlM2FjZGRiYjJjN2QzOGQ5NmUzMzQz
MDQ5Li5iZjAxNTJmZjA3NTQxZDJmOTQzMjUxNjIwYWM5NGYxNTRlNTZiMjVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQpAQCAtMzQsNiArMzQsMTIg
QEAKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKK0BpbnRlcmZhY2UgTlNFdmVudCAoV2Vi
TlNFdmVudERldGFpbHMpCistIChOU0ludGVnZXIpX3Njcm9sbENvdW50OworLSAoQ0dGbG9hdClf
dW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWDsKKy0gKENHRmxvYXQpX3VuYWNjZWxlcmF0ZWRT
Y3JvbGxpbmdEZWx0YVk7CitAZW5kCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiAvLyBGSVhNRTog
VGhpcyBpcyBhIGh1Z2UgY29weS9wYXN0ZSBmcm9tIFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMubW0uIFRoZSBjb2RlIHNob3VsZCBiZSBtZXJnZWQuCkBAIC0zODUsOCArMzkxLDYgQEAg
V2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVu
dCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBOU1BvaW50IHBvc2l0aW9uID0gcG9pbnRGb3JF
dmVudChldmVudCwgd2luZG93Vmlldyk7CiAgICAgTlNQb2ludCBnbG9iYWxQb3NpdGlvbiA9IGds
b2JhbFBvaW50Rm9yRXZlbnQoZXZlbnQpOwogCi0gICAgV2ViV2hlZWxFdmVudDo6R3JhbnVsYXJp
dHkgZ3JhbnVsYXJpdHkgID0gV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7
Ci0KICAgICBCT09MIGNvbnRpbnVvdXM7CiAgICAgZmxvYXQgZGVsdGFYID0gMDsKICAgICBmbG9h
dCBkZWx0YVkgPSAwOwpAQCAtNDA3LDE3ICs0MTEsMzQgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVu
dEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5TVmlldyAqd2lu
ZG8KICAgICAgICAgZGVsdGFZICo9IHN0YXRpY19jYXN0PGZsb2F0PihTY3JvbGxiYXI6OnBpeGVs
c1BlckxpbmVTdGVwKCkpOwogICAgIH0KIAotICAgIFdlYldoZWVsRXZlbnQ6OlBoYXNlIHBoYXNl
ICAgICAgICAgICAgICA9IHBoYXNlRm9yRXZlbnQoZXZlbnQpOwotICAgIFdlYldoZWVsRXZlbnQ6
OlBoYXNlIG1vbWVudHVtUGhhc2UgICAgICA9IG1vbWVudHVtUGhhc2VGb3JFdmVudChldmVudCk7
Ci0gICAgYm9vbCBoYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzICAgICAgICAgID0gY29udGludW91
czsKLSAgICBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVycyAgICAgICAgICAgPSBtb2RpZmll
cnNGb3JFdmVudChldmVudCk7Ci0gICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICAg
ICAgICAgID0gW2V2ZW50IHRpbWVzdGFtcF07CisgICAgV2ViV2hlZWxFdmVudDo6R3JhbnVsYXJp
dHkgZ3JhbnVsYXJpdHkgID0gV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7
CisKICNpZiBIQVZFKElOVkVSVEVEX1dIRUVMX0VWRU5UUykKICAgICBib29sIGRpcmVjdGlvbklu
dmVydGVkRnJvbURldmljZSAgICAgICAgPSBbZXZlbnQgaXNEaXJlY3Rpb25JbnZlcnRlZEZyb21E
ZXZpY2VdOwogI2Vsc2UKICAgICBib29sIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSAgICAg
ICAgPSBmYWxzZTsKICNlbmRpZgotICAgIHJldHVybiBXZWJXaGVlbEV2ZW50KFdlYkV2ZW50OjpX
aGVlbCwgSW50UG9pbnQocG9zaXRpb24pLCBJbnRQb2ludChnbG9iYWxQb3NpdGlvbiksIEZsb2F0
U2l6ZShkZWx0YVgsIGRlbHRhWSksIEZsb2F0U2l6ZSh3aGVlbFRpY2tzWCwgd2hlZWxUaWNrc1kp
LCBncmFudWxhcml0eSwgcGhhc2UsIG1vbWVudHVtUGhhc2UsIGhhc1ByZWNpc2VTY3JvbGxpbmdE
ZWx0YXMsIG1vZGlmaWVycywgdGltZXN0YW1wLCBkaXJlY3Rpb25JbnZlcnRlZEZyb21EZXZpY2Up
OworCisgICAgV2ViV2hlZWxFdmVudDo6UGhhc2UgcGhhc2UgICAgICAgICAgICAgID0gcGhhc2VG
b3JFdmVudChldmVudCk7CisgICAgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSAg
ICAgID0gbW9tZW50dW1QaGFzZUZvckV2ZW50KGV2ZW50KTsKKyAgICBib29sIGhhc1ByZWNpc2VT
Y3JvbGxpbmdEZWx0YXMgICAgICAgICAgPSBjb250aW51b3VzOworCisgICAgdWludDMyX3Qgc2Ny
b2xsQ291bnQ7CisgICAgRmxvYXRTaXplIHVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YTsKKwor
ICAgIHN0YXRpYyBib29sIG5zRXZlbnRTdXBwb3J0c1Njcm9sbENvdW50ID0gW05TRXZlbnQgaW5z
dGFuY2VzUmVzcG9uZFRvU2VsZWN0b3I6QHNlbGVjdG9yKF9zY3JvbGxDb3VudCldOworICAgIGlm
IChuc0V2ZW50U3VwcG9ydHNTY3JvbGxDb3VudCkgeworICAgICAgICBzY3JvbGxDb3VudCA9IFtl
dmVudCBfc2Nyb2xsQ291bnRdOworICAgICAgICB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEg
PSBGbG9hdFNpemUoW2V2ZW50IF91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYXSwgW2V2ZW50
IF91bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZXSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
c2Nyb2xsQ291bnQgPSAwOworICAgICAgICB1bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEgPSBG
bG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpOworICAgIH0KKworICAgIFdlYkV2ZW50OjpNb2RpZmll
cnMgbW9kaWZpZXJzICAgICAgICAgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50KTsKKyAgICBk
b3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgICAgICAgICAgPSBbZXZlbnQgdGltZXN0YW1w
XTsKKyAgICAKKyAgICByZXR1cm4gV2ViV2hlZWxFdmVudChXZWJFdmVudDo6V2hlZWwsIEludFBv
aW50KHBvc2l0aW9uKSwgSW50UG9pbnQoZ2xvYmFsUG9zaXRpb24pLCBGbG9hdFNpemUoZGVsdGFY
LCBkZWx0YVkpLCBGbG9hdFNpemUod2hlZWxUaWNrc1gsIHdoZWVsVGlja3NZKSwgZ3JhbnVsYXJp
dHksIGRpcmVjdGlvbkludmVydGVkRnJvbURldmljZSwgcGhhc2UsIG1vbWVudHVtUGhhc2UsIGhh
c1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMsIHNjcm9sbENvdW50LCB1bmFjY2VsZXJhdGVkU2Nyb2xs
aW5nRGVsdGEsIG1vZGlmaWVycywgdGltZXN0YW1wKTsKIH0KIAogV2ViS2V5Ym9hcmRFdmVudCBX
ZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJkRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5T
VmlldyAqKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBm
ZjE4YzU4MGM5ZTRhZGE3OWU2ZDE1MWEzNGI1NWEyMWE0YjhmOGM0Li5lYjBlZjcxZTY2ZDQzYTI2
YWRlNDVhNWFkYWVlN2IzZjFiOWY1MzA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcApAQCAtMTAyMSw3ICsxMDIxLDkgQEAgc3RhdGljIFdlYldoZWVsRXZlbnQg
Y29hbGVzY2UoY29uc3QgV2ViV2hlZWxFdmVudCYgYSwgY29uc3QgV2ViV2hlZWxFdmVudCYgYikK
ICAgICBGbG9hdFNpemUgbWVyZ2VkV2hlZWxUaWNrcyA9IGEud2hlZWxUaWNrcygpICsgYi53aGVl
bFRpY2tzKCk7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgcmV0dXJuIFdlYldoZWVsRXZlbnQo
V2ViRXZlbnQ6OldoZWVsLCBiLnBvc2l0aW9uKCksIGIuZ2xvYmFsUG9zaXRpb24oKSwgbWVyZ2Vk
RGVsdGEsIG1lcmdlZFdoZWVsVGlja3MsIGIuZ3JhbnVsYXJpdHkoKSwgYi5waGFzZSgpLCBiLm1v
bWVudHVtUGhhc2UoKSwgYi5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKCksIGIubW9kaWZpZXJz
KCksIGIudGltZXN0YW1wKCksIGIuZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKCkpOworICAg
IEZsb2F0U2l6ZSBtZXJnZWRVbmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEgPSBhLnVuYWNjZWxl
cmF0ZWRTY3JvbGxpbmdEZWx0YSgpICsgYi51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGEoKTsK
KworICAgIHJldHVybiBXZWJXaGVlbEV2ZW50KFdlYkV2ZW50OjpXaGVlbCwgYi5wb3NpdGlvbigp
LCBiLmdsb2JhbFBvc2l0aW9uKCksIG1lcmdlZERlbHRhLCBtZXJnZWRXaGVlbFRpY2tzLCBiLmdy
YW51bGFyaXR5KCksIGIuZGlyZWN0aW9uSW52ZXJ0ZWRGcm9tRGV2aWNlKCksIGIucGhhc2UoKSwg
Yi5tb21lbnR1bVBoYXNlKCksIGIuaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcygpLCBiLnNjcm9s
bENvdW50KCksIG1lcmdlZFVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YSwgYi5tb2RpZmllcnMo
KSwgYi50aW1lc3RhbXAoKSk7CiAjZWxzZQogICAgIHJldHVybiBXZWJXaGVlbEV2ZW50KFdlYkV2
ZW50OjpXaGVlbCwgYi5wb3NpdGlvbigpLCBiLmdsb2JhbFBvc2l0aW9uKCksIG1lcmdlZERlbHRh
LCBtZXJnZWRXaGVlbFRpY2tzLCBiLmdyYW51bGFyaXR5KCksIGIubW9kaWZpZXJzKCksIGIudGlt
ZXN0YW1wKCkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5k
ZXggYWNmMTljNGJmM2NkY2Q1YjRiNWFhNjcyMDVmYzM4YzY1NmY5ZDUyNC4uYzEzODVmMGEzNjMz
MzAwZGQyNWVlM2MwYzkzMGIzNzdlMDgxMGQzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUlu
dGVyZmFjZS5tbQpAQCAtMTgxLDYgKzE4MSwxMCBAQCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50
ZXJmYWNlKHZvaWQpCiAgICAgICAgIElOSVQoRmlsdGVyV2FzQmxvY2tlZCk7CiAgICAgICAgIElO
SVQoRmlsdGVyQWRkRGF0YSk7CiAgICAgICAgIElOSVQoRmlsdGVyRGF0YUNvbXBsZXRlKTsKKwor
ICAgICAgICBJTklUKE5TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKTsKKyAgICAgICAgSU5JVChO
U0VsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YSk7CisgICAgICAgIElOSVQoTlNSZWJvdW5kRGVs
dGFGb3JFbGFzdGljRGVsdGEpOwogI2VuZGlmCiAKICAgICB9KTsK
</data>
<flag name="review"
          id="148256"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>