<?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>127621</bug_id>
          
          <creation_ts>2014-01-25 09:32:54 -0800</creation_ts>
          <short_desc>Modernize HashTable threading code</short_desc>
          <delta_ts>2014-01-25 11:19:45 -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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>971964</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 09:32:54 -0800</bug_when>
    <thetext>Modernize HashTable threading code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971966</commentid>
    <comment_count>1</comment_count>
      <attachid>222213</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 09:35:40 -0800</bug_when>
    <thetext>Created attachment 222213
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971969</commentid>
    <comment_count>2</comment_count>
      <attachid>222214</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 09:43:49 -0800</bug_when>
    <thetext>Created attachment 222214
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971973</commentid>
    <comment_count>3</comment_count>
      <attachid>222215</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 10:19:14 -0800</bug_when>
    <thetext>Created attachment 222215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971990</commentid>
    <comment_count>4</comment_count>
      <attachid>222218</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 10:52:26 -0800</bug_when>
    <thetext>Created attachment 222218
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971996</commentid>
    <comment_count>5</comment_count>
      <attachid>222218</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-01-25 11:10:33 -0800</bug_when>
    <thetext>Comment on attachment 222218
Patch

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

&gt; Source/WebCore/platform/DragData.h:77
&gt; -typedef HashMap&lt;UINT, Vector&lt;String&gt;&gt; DragDataMap;
&gt; +typedef HashMap&lt;unsigned, Vector&lt;String&gt;&gt; DragDataMap;

Change not mentioned in ChangeLog. Good idea, but not really part of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971999</commentid>
    <comment_count>6</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-25 11:19:45 -0800</bug_when>
    <thetext>Committed r162774: &lt;http://trac.webkit.org/changeset/162774&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222213</attachid>
            <date>2014-01-25 09:35:40 -0800</date>
            <delta_ts>2014-01-25 09:43:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127621-20140125093539.patch</filename>
            <type>text/plain</type>
            <size>16294</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNiNmZmMjJiODY0MmIzZjk5YjFlOGI1
NmUxMDgwOTE4ODY2MjE5ZTQuLjA2ODZlM2E3OTY5OTI2OTkyZjYxZjBjNmM1ZTk0MzliZWE5ZjI2
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDEtMjUgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb2Rlcm5pemUgSGFzaFRhYmxlIHRocmVhZGlu
ZyBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
Mjc2MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
c2Ugc3RkOjptdXRleCBhbmQgc3RkOjphdG9taWMgaW5zdGVhZCBvZiBXVEYgdGhyZWFkaW5nIHBy
aW1pdGl2ZXMuCisKKyAgICAgICAgKiB3dGYvRHluYW1pY0Fubm90YXRpb25zLmg6CisgICAgICAg
IEluY2x1ZGUgUGxhdGZvcm0uaCBoZXJlIHNpbmNlIHRoaXMgZmlsZSByZWxpZXMgb24gVVNFIG1h
Y3Jvcy4KKworICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAoV1RGOjpIYXNo
VGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudCk6CisgICAgICAgIENoYW5nZSB0aGlz
IHRvIHRha2UgYW4gdW5zaWduZWQuCisKKyAgICAgICAgKFdURjo6SGFzaFRhYmxlU3RhdHM6OmR1
bXBTdGF0cyk6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAoV1RGOjpLZXlU
cmFpdHM+OjpIYXNoVGFibGUpOgorICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjpyZW1vdmUpOgor
ICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjppbnZhbGlkYXRlSXRlcmF0b3JzKToKKyAgICAgICAg
VXNlIGEgc2luZ2xlIHByb2JlIGNvdW50ZXIuCisKKyAgICAgICAgKFdURjo6YWRkSXRlcmF0b3Ip
OgorICAgICAgICAoV1RGOjpyZW1vdmVJdGVyYXRvcik6CisKIDIwMTQtMDEtMjQgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbl0gQ29udmVydCBzb21l
IE5NYWtlIGZpbGVzIHRvIE1TQnVpbGQgcHJvamVjdCBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDhhZmI3
NGVjOWFhZDk0MzgwMDYyMzNlZGFmMjg2ZTM1OGJkYmZmNDUuLjVkOTBlNzNkMzc1NmQzODQ3M2Q5
MGQxMzU2YmNmYWY4NTdjMjVkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0w
MS0yNSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIE1v
ZGVybml6ZSBIYXNoVGFibGUgdGhyZWFkaW5nIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzYyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cGxpY2l0bHkgaW5jbHVkZSBoZWFkZXJzIHRoYXQg
dXNlZCB0byBiZSBicm91Z2h0IGluIGJ5IEhhc2hUYWJsZS5oCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9BdWRpb1Nlc3Npb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Nv
Y2tldFN0cmVhbUhhbmRsZS5oOgorCiAyMDE0LTAxLTI0ICBEYW4gQmVybnN0ZWluICA8bWl0ekBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV2ZXJ0ZWQgcjE2Mjc2MC4gSXQgYnJva2UgbW9yZSB0aGlu
Z3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggMjcwMTM4MGU1ZTJhZDIwMGNiNWNiYTYyZjY2NGUzYWViMGIyZTMx
ZS4uMTcyMzY4MDNkZmI5NzIzNDlkNjI4YjQ4MDVhNDc0YzQ0ODllZTU5ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBh
cHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcgY29kZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NjIxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwbGljaXRs
eSBpbmNsdWRlIGhlYWRlcnMgdGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFzaFRhYmxl
LmgKKworICAgICAgICAqIFNoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmg6CisKIDIwMTQtMDEt
MjQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
S2l0MiBWaWV3IEdlc3R1cmVzIChTbWFydCBab29tKTogQ2FuJ3QgZG91YmxlLXRhcCB6b29tLW91
dCBvbiB0aGUgYm9keQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRHluYW1pY0Fubm90YXRp
b25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaAppbmRleCAzOGFjY2Uz
NWU2ODk2YmI5ODM3YjI0ZDhjMWE0Nzk4ZjUxM2EzZWJiLi4yZDVhNWE5ZTlhNWM1YzYzY2FkOTk0
YTViZDM3MTFiOGZlODQ3ZWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5u
b3RhdGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaApAQCAt
MjcsNiArMjcsOCBAQAogI2lmbmRlZiBXVEZfRHluYW1pY0Fubm90YXRpb25zX2gKICNkZWZpbmUg
V1RGX0R5bmFtaWNBbm5vdGF0aW9uc19oCiAKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KKwog
LyogVGhpcyBmaWxlIGRlZmluZXMgZHluYW1pYyBhbm5vdGF0aW9ucyBmb3IgdXNlIHdpdGggZHlu
YW1pYyBhbmFseXNpcwogICogdG9vbCBzdWNoIGFzIFRocmVhZFNhbml0aXplciwgVmFsZ3JpbmQs
IGV0Yy4KICAqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwIGIvU291
cmNlL1dURi93dGYvSGFzaFRhYmxlLmNwcAppbmRleCBhNTc4ZjUyZmRkZDQxMjAyOGY4MmJmYzY1
NzgxYTYxNGNhZjY4ODBmLi40NThkZDUzMWZlODQ2YWUzMjQ2NGFlZTEyZjU5YzdmMWRhY2RkZmI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL0hhc2hUYWJsZS5jcHAKQEAgLTI3LDEzICsyNywxNCBAQCBuYW1lc3BhY2UgV1RGIHsK
IAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCiAKLWludCBIYXNoVGFibGVTdGF0czo6bnVtQWNj
ZXNzZXM7Ci1pbnQgSGFzaFRhYmxlU3RhdHM6Om51bUNvbGxpc2lvbnM7Ci1pbnQgSGFzaFRhYmxl
U3RhdHM6OmNvbGxpc2lvbkdyYXBoWzQwOTZdOwotaW50IEhhc2hUYWJsZVN0YXRzOjptYXhDb2xs
aXNpb25zOwotaW50IEhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlczsKLWludCBIYXNoVGFibGVT
dGF0czo6bnVtUmVtb3ZlczsKLWludCBIYXNoVGFibGVTdGF0czo6bnVtUmVpbnNlcnRzOworc3Rk
OjphdG9taWM8dW5zaWduZWQ+IEhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKK3N0ZDo6YXRv
bWljPHVuc2lnbmVkPiBIYXNoVGFibGVTdGF0czo6bnVtUmVoYXNoZXM7CitzdGQ6OmF0b21pYzx1
bnNpZ25lZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CitzdGQ6OmF0b21pYzx1bnNpZ25l
ZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlaW5zZXJ0czsKKwordW5zaWduZWQgSGFzaFRhYmxlU3Rh
dHM6Om51bUNvbGxpc2lvbnM7Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6Y29sbGlzaW9uR3Jh
cGhbNDA5Nl07Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6bWF4Q29sbGlzaW9uczsKIAogc3Rh
dGljIHN0ZDo6bXV0ZXgmIGhhc2hUYWJsZVN0YXRzTXV0ZXgoKQogewpAQCAtNDYsNyArNDcsNyBA
QCBzdGF0aWMgc3RkOjptdXRleCYgaGFzaFRhYmxlU3RhdHNNdXRleCgpCiAgICAgcmV0dXJuICpt
dXRleDsKIH0KIAotdm9pZCBIYXNoVGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudChp
bnQgY291bnQpCit2b2lkIEhhc2hUYWJsZVN0YXRzOjpyZWNvcmRDb2xsaXNpb25BdENvdW50KHVu
c2lnbmVkIGNvdW50KQogewogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKGhh
c2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKQEAgLTYxLDE0ICs2MiwxNCBAQCB2b2lkIEhhc2hUYWJs
ZVN0YXRzOjpkdW1wU3RhdHMoKQogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2Nr
KGhhc2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKICAgICBkYXRhTG9nRigiXG5XVEY6Okhhc2hUYWJs
ZSBzdGF0aXN0aWNzXG5cbiIpOwotICAgIGRhdGFMb2dGKCIlZCBhY2Nlc3Nlc1xuIiwgbnVtQWNj
ZXNzZXMpOworICAgIGRhdGFMb2dGKCIldSBhY2Nlc3Nlc1xuIiwgbnVtQWNjZXNzZXMubG9hZCgp
KTsKICAgICBkYXRhTG9nRigiJWQgdG90YWwgY29sbGlzaW9ucywgYXZlcmFnZSAlLjJmIHByb2Jl
cyBwZXIgYWNjZXNzXG4iLCBudW1Db2xsaXNpb25zLCAxLjAgKiAobnVtQWNjZXNzZXMgKyBudW1D
b2xsaXNpb25zKSAvIG51bUFjY2Vzc2VzKTsKICAgICBkYXRhTG9nRigibG9uZ2VzdCBjb2xsaXNp
b24gY2hhaW46ICVkXG4iLCBtYXhDb2xsaXNpb25zKTsKLSAgICBmb3IgKGludCBpID0gMTsgaSA8
PSBtYXhDb2xsaXNpb25zOyBpKyspIHsKLSAgICAgICAgZGF0YUxvZ0YoIiAgJWQgbG9va3VwcyB3
aXRoIGV4YWN0bHkgJWQgY29sbGlzaW9ucyAoJS4yZiUlICwgJS4yZiUlIHdpdGggdGhpcyBtYW55
IG9yIG1vcmUpXG4iLCBjb2xsaXNpb25HcmFwaFtpXSwgaSwgMTAwLjAgKiAoY29sbGlzaW9uR3Jh
cGhbaV0gLSBjb2xsaXNpb25HcmFwaFtpKzFdKSAvIG51bUFjY2Vzc2VzLCAxMDAuMCAqIGNvbGxp
c2lvbkdyYXBoW2ldIC8gbnVtQWNjZXNzZXMpOworICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkg
PD0gbWF4Q29sbGlzaW9uczsgaSsrKSB7CisgICAgICAgIGRhdGFMb2dGKCIgICV1IGxvb2t1cHMg
d2l0aCBleGFjdGx5ICV1IGNvbGxpc2lvbnMgKCUuMmYlJSAsICUuMmYlJSB3aXRoIHRoaXMgbWFu
eSBvciBtb3JlKVxuIiwgY29sbGlzaW9uR3JhcGhbaV0sIGksIDEwMC4wICogKGNvbGxpc2lvbkdy
YXBoW2ldIC0gY29sbGlzaW9uR3JhcGhbaSsxXSkgLyBudW1BY2Nlc3NlcywgMTAwLjAgKiBjb2xs
aXNpb25HcmFwaFtpXSAvIG51bUFjY2Vzc2VzKTsKICAgICB9Ci0gICAgZGF0YUxvZ0YoIiVkIHJl
aGFzaGVzXG4iLCBudW1SZWhhc2hlcyk7Ci0gICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwg
bnVtUmVpbnNlcnRzKTsKKyAgICBkYXRhTG9nRigiJWQgcmVoYXNoZXNcbiIsIG51bVJlaGFzaGVz
LmxvYWQoKSk7CisgICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwgbnVtUmVpbnNlcnRzLmxv
YWQoKSk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvSGFzaFRhYmxl
LmggYi9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAppbmRleCA3YWExOTE1YTJkOTA0OWFiMDY0
MThkNGMxOTJiZDdhNDNjNmMyNTdkLi44NTE5YWUzNjQ3YjZhODVmNmYwMzE2ZmVhZWRlNzYzZjFj
N2Y0ZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi9IYXNoVGFibGUuaApAQCAtMjIsNiArMjIsOCBAQAogI2lmbmRlZiBXVEZfSGFz
aFRhYmxlX2gKICNkZWZpbmUgV1RGX0hhc2hUYWJsZV9oCiAKKyNpbmNsdWRlIDxhdG9taWM+Cisj
aW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dHlwZV90cmFp
dHM+CiAjaW5jbHVkZSA8dXRpbGl0eT4KQEAgLTI5LDE1ICszMSw4IEBACiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KLSNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL1ZhbHVlQ2hlY2suaD4KIAotI2lmbmRlZiBOREVCVUcKLS8vIFJlcXVpcmVkIGZvciBDSEVD
S19IQVNIVEFCTEVfSVRFUkFUT1JTLgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KLSNpbmNsdWRl
IDx3dGYvUGFzc093blB0ci5oPgotI2VuZGlmCi0KICNkZWZpbmUgRFVNUF9IQVNIVEFCTEVfU1RB
VFMgMAogI2RlZmluZSBEVU1QX0hBU0hUQUJMRV9TVEFUU19QRVJfVEFCTEUgMAogCkBAIC02Miwx
NyArNTcsMTcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICBzdHJ1Y3QgSGFzaFRhYmxlU3RhdHMg
ewogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgYWxsIGF0b21pY2FsbHkg
aW5jcmVtZW50ZWQgd2hlbiBtb2RpZmllZC4KLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGlj
IGludCBudW1BY2Nlc3NlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1S
ZWhhc2hlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1SZW1vdmVzOwot
ICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IG51bVJlaW5zZXJ0czsKKyAgICAgICAg
V1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1BY2Nlc3NlczsK
KyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1S
ZWhhc2hlczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2ln
bmVkPiBudW1SZW1vdmVzOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgc3RkOjphdG9t
aWM8dW5zaWduZWQ+IG51bVJlaW5zZXJ0czsKIAogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZh
cmlhYmxlcyBhcmUgb25seSBtb2RpZmllZCBpbiB0aGUgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCBt
ZXRob2Qgd2l0aGluIGEgbXV0ZXguCi0gICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyBpbnQg
bWF4Q29sbGlzaW9uczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1Db2xs
aXNpb25zOwotICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IGNvbGxpc2lvbkdyYXBo
WzQwOTZdOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgdW5zaWduZWQgbWF4Q29sbGlz
aW9uczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHVuc2lnbmVkIG51bUNvbGxpc2lv
bnM7CisgICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyB1bnNpZ25lZCBjb2xsaXNpb25HcmFw
aFs0MDk2XTsKIAotICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgcmVjb3Jk
Q29sbGlzaW9uQXRDb3VudChpbnQgY291bnQpOworICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCh1bnNpZ25lZCBjb3VudCk7CiAgICAg
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wU3RhdHMoKTsKICAgICB9Owog
CkBAIC00ODMsMTIgKzQ3OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgLy8gQWxsIGFj
Y2VzcyB0byBtX2l0ZXJhdG9ycyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIG1fbXV0ZXguCiAgICAg
ICAgIG11dGFibGUgY29uc3RfaXRlcmF0b3IqIG1faXRlcmF0b3JzOwogICAgICAgICAvLyBVc2Ug
T3duUHRyIHNvIEhhc2hUYWJsZSBjYW4gc3RpbGwgYmUgbWVtbW92ZSdkIG9yIG1lbWNweSdlZC4K
LSAgICAgICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8TXV0ZXg+IG1fbXV0ZXg7CisgICAgICAg
IG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPHN0ZDo6bXV0ZXg+IG1fbXV0ZXg7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgIHB1YmxpYzoKLSAgICAgICAg
bXV0YWJsZSBPd25QdHI8U3RhdHM+IG1fc3RhdHM7CisgICAgICAgIG11dGFibGUgc3RkOjp1bmlx
dWVfcHRyPFN0YXRzPiBtX3N0YXRzOwogI2VuZGlmCiAgICAgfTsKIApAQCAtNTM5LDcgKzUzNCw3
IEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICAsIG1fZGVsZXRlZENvdW50KDApCiAjaWYgQ0hF
Q0tfSEFTSFRBQkxFX0lURVJBVE9SUwogICAgICAgICAsIG1faXRlcmF0b3JzKDApCi0gICAgICAg
ICwgbV9tdXRleChzdGQ6Om1ha2VfdW5pcXVlPE11dGV4PigpKQorICAgICAgICAsIG1fbXV0ZXgo
c3RkOjptYWtlX3VuaXF1ZTxzdGQ6Om11dGV4PigpKQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCiAgICAgICAgICwgbV9zdGF0cyhzdGQ6Om1ha2VfdW5pcXVlPFN0
YXRzPigpKQpAQCAtNTk5LDEzICs1OTQsMTIgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgICAg
ICByZXR1cm4gMDsKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0lu
Y3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2Jl
Q291bnQgPSAwOworICAgICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAg
ICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxF
X1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAg
ICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIHdoaWxlICgx
KSB7CkBAIC02MzEsOCArNjI1LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAjZW5kaWYKIAogI2lmIERV
TVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQotICAgICAgICAgICAgKytwZXJUYWJsZVByb2Jl
Q291bnQ7Ci0gICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENvdW50KHBlclRh
YmxlUHJvYmVDb3VudCk7CisgICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENv
dW50KHByb2JlQ291bnQpOwogI2VuZGlmCiAKICAgICAgICAgICAgIGlmIChrID09IDApCkBAIC02
NTUsMTMgKzY0OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgaW50IGkgPSBoICYgc2l6
ZU1hc2s7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBhdG9taWNJbmNyZW1l
bnQoJkhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3Nlcyk7CisgICAgICAgICsrSGFzaFRhYmxlU3Rh
dHM6Om51bUFjY2Vzc2VzOwogICAgICAgICBpbnQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51
bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgog
CiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTY5NCw4ICs2ODYsNyBA
QCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVS
X1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAgICAgICAgICAgIG1f
c3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNvdW50KTsKKyAgICAg
ICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVDb3VudCk7CiAjZW5k
aWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTcxOCwxMyArNzA5LDEyIEBAIG5hbWVz
cGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAogI2lmIERVTVBfSEFT
SFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51
bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7
CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICAr
K21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0g
MDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTc1
Nyw4ICs3NDcsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAg
ICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNv
dW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVD
b3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTgxNCwxMyArODAz
LDEyIEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRh
YmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAg
ICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJv
YmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJM
RQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQ
cm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5
ID0gMDsKQEAgLTg1Myw4ICs4NDEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYg
RFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJv
YmVDb3VudDsKLSAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVy
VGFibGVQcm9iZUNvdW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0
Q291bnQocHJvYmVDb3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAg
LTkyNCw3ICs5MTEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgQVNTRVJUKCFsb29rdXBG
b3JXcml0aW5nKEV4dHJhY3Rvcjo6ZXh0cmFjdChlbnRyeSkpLnNlY29uZCk7CiAgICAgICAgIEFT
U0VSVCghaXNEZWxldGVkQnVja2V0KCoobG9va3VwRm9yV3JpdGluZyhFeHRyYWN0b3I6OmV4dHJh
Y3QoZW50cnkpKS5maXJzdCkpKTsKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBh
dG9taWNJbmNyZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHMpOworICAgICAgICAr
K0hhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZWluc2VydHM7CkBAIC05
OTQsNyArOTgxLDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdm9pZCBIYXNoVGFibGU8S2V5LCBW
YWx1ZSwgRXh0cmFjdG9yLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHMsIEtleVRyYWl0cz46OnJlbW92
ZShWYWx1ZVR5cGUqIHBvcykKICAgICB7CiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFMKLSAgICAg
ICAgYXRvbWljSW5jcmVtZW50KCZIYXNoVGFibGVTdGF0czo6bnVtUmVtb3Zlcyk7CisgICAgICAg
ICsrSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZW1vdmVzOwpAQCAtMTA5
MCw3ICsxMDc3LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFU
UwogICAgICAgICBpZiAob2xkVGFibGVTaXplICE9IDApCi0gICAgICAgICAgICBhdG9taWNJbmNy
ZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlcyk7CisgICAgICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1SZWhhc2hlczsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RB
VFNfUEVSX1RBQkxFCkBAIC0xMTQ3LDcgKzExMzQsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoc3RkOjptYWtlX3VuaXF1
ZTxNdXRleD4oKSkKKyAgICAgICAgLCBtX211dGV4KHN0ZDo6bWFrZV91bmlxdWU8c3RkOjptdXRl
eD4oKSkKICNlbmRpZgogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAg
ICAsIG1fc3RhdHMoc3RkOjptYWtlX3VuaXF1ZTxTdGF0cz4oKm90aGVyLm1fc3RhdHMpKQpAQCAt
MTI1Miw3ICsxMjM5LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUg
S2V5LCB0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgRXh0cmFjdG9yLCB0eXBlbmFtZSBIYXNoRnVu
Y3Rpb25zLCB0eXBlbmFtZSBUcmFpdHMsIHR5cGVuYW1lIEtleVRyYWl0cz4KICAgICB2b2lkIEhh
c2hUYWJsZTxLZXksIFZhbHVlLCBFeHRyYWN0b3IsIEhhc2hGdW5jdGlvbnMsIFRyYWl0cywgS2V5
VHJhaXRzPjo6aW52YWxpZGF0ZUl0ZXJhdG9ycygpCiAgICAgewotICAgICAgICBNdXRleExvY2tl
ciBsb2NrKCptX211dGV4KTsKKyAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxv
Y2soKm1fbXV0ZXgpOwogICAgICAgICBjb25zdF9pdGVyYXRvciogbmV4dDsKICAgICAgICAgZm9y
IChjb25zdF9pdGVyYXRvciogcCA9IG1faXRlcmF0b3JzOyBwOyBwID0gbmV4dCkgewogICAgICAg
ICAgICAgbmV4dCA9IHAtPm1fbmV4dDsKQEAgLTEyNzQsNyArMTI2MSw3IEBAIG5hbWVzcGFjZSBX
VEYgewogICAgICAgICBpZiAoIXRhYmxlKSB7CiAgICAgICAgICAgICBpdC0+bV9uZXh0ID0gMDsK
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIE11dGV4TG9ja2VyIGxvY2soKnRhYmxlLT5t
X211dGV4KTsKKyAgICAgICAgICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKCp0
YWJsZS0+bV9tdXRleCk7CiAgICAgICAgICAgICBBU1NFUlQodGFibGUtPm1faXRlcmF0b3JzICE9
IGl0KTsKICAgICAgICAgICAgIGl0LT5tX25leHQgPSB0YWJsZS0+bV9pdGVyYXRvcnM7CiAgICAg
ICAgICAgICB0YWJsZS0+bV9pdGVyYXRvcnMgPSBpdDsKQEAgLTEyOTYsNyArMTI4Myw3IEBAIG5h
bWVzcGFjZSBXVEYgewogICAgICAgICAgICAgQVNTRVJUKCFpdC0+bV9uZXh0KTsKICAgICAgICAg
ICAgIEFTU0VSVCghaXQtPm1fcHJldmlvdXMpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgTXV0ZXhMb2NrZXIgbG9jaygqaXQtPm1fdGFibGUtPm1fbXV0ZXgpOworICAgICAgICAgICAg
c3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2soKml0LT5tX3RhYmxlLT5tX211dGV4KTsK
ICAgICAgICAgICAgIGlmIChpdC0+bV9uZXh0KSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGl0
LT5tX25leHQtPm1fcHJldmlvdXMgPT0gaXQpOwogICAgICAgICAgICAgICAgIGl0LT5tX25leHQt
Pm1fcHJldmlvdXMgPSBpdC0+bV9wcmV2aW91czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL0F1ZGlvU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vQXVkaW9TZXNzaW9uLmgKaW5kZXggZWIxMjc3M2NiYTY1ZWM5ZWVjMzg3MWQwZGI2Yzlh
NjRmNTA5YTU5MC4uNGZmZjVhNjY4NDdiZTgyOGNmODAwNWIzZTJlNjNlMGFjNTEwNjZkNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKQEAgLTMwLDYg
KzMwLDcgQEAKIAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgor
I2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFt
SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1NvY2tldFN0cmVh
bUhhbmRsZS5oCmluZGV4IDhjMWE0ZTEzNDQzNjkyMjc0N2NiODgyYmRlYTczMDg2ZjEyMTdjY2Yu
LjU4NTVhYWQ0YmY0YjVmMmI2ZmU0ZTgzMTI4YjA5ZmIwMjYzYjkwYzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFtSGFuZGxlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9Tb2NrZXRTdHJlYW1IYW5kbGUu
aApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2xpZW50LmgiCiAj
aW5jbHVkZSAiU29ja2V0U3RyZWFtSGFuZGxlQmFzZS5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5Q
dHIuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIAogdHlwZWRlZiBz
dHJ1Y3QgX19DRkhUVFBNZXNzYWdlKiBDRkhUVFBNZXNzYWdlUmVmOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQmxvY2tpbmdSZXNwb25zZU1hcC5oIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL0Jsb2NraW5nUmVzcG9uc2VNYXAuaAppbmRleCAxMWFjZTc1OWMyZjFmZGM3NmM4
NGIyYTc3NzEzOTQwMzYzNjYxZTFiLi5mNDUyOWFmNGY2OWE4ZmFjZTM2NjM4M2I0ODA3MDE0Mzdl
ZjVlOGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQmxvY2tpbmdSZXNwb25z
ZU1hcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmgK
QEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPGNvbmRpdGlvbl92YXJpYWJsZT4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBUPgogY2xhc3MgQmxvY2tpbmdSZXNwb25zZU1hcCB7CmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTI3ZGRlNTUxOGVmNjFm
ODI0OTI0ZjVkN2Y2MDliNzU3ODUxMTVlNi4uNjZjZmZjMGUzM2JiNTU2ZDE1ZWE5Mzk5N2Y3ZWNm
ZGIzNTI1OWZkYSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcg
Y29kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3
NjIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhw
bGljaXRseSBpbmNsdWRlIGhlYWRlcnMgdGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFz
aFRhYmxlLmgKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0phdmFTY3JpcHRUaHJlYWRpbmcu
Y3BwOgorCiAyMDE0LTAxLTI0ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29t
PgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEFkZCBQaGlsaXAgSsOkZ2Vuc3RlZHQgdG8gd2F0Y2gg
YW5kIGNvbnRyaWJ1dG9yIGxpc3RzLgpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
SmF2YVNjcmlwdFRocmVhZGluZy5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9KYXZhU2NyaXB0
VGhyZWFkaW5nLmNwcAppbmRleCA2NmRlMTU2YzdmOWViMTJiNDBmMmVkNDZmN2Q4ZDlhNzcyM2Y1
YjkwLi41ZDY3M2I4NzBhZGRlNDVjNWM3MGM0YmE1MmM3OTI3ZjVmNWUxZDYxIDEwMDY0NAotLS0g
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9KYXZhU2NyaXB0VGhyZWFkaW5nLmNwcAorKysgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9KYXZhU2NyaXB0VGhyZWFkaW5nLmNwcApAQCAtMzYsNiArMzYsOCBA
QAogI2luY2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CisjaW5jbHVk
ZSA8d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAK
IHN0YXRpYyBjb25zdCBzaXplX3QgamF2YVNjcmlwdFRocmVhZHNDb3VudCA9IDQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222214</attachid>
            <date>2014-01-25 09:43:49 -0800</date>
            <delta_ts>2014-01-25 10:19:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127621-20140125094348.patch</filename>
            <type>text/plain</type>
            <size>16755</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNiNmZmMjJiODY0MmIzZjk5YjFlOGI1
NmUxMDgwOTE4ODY2MjE5ZTQuLjA2ODZlM2E3OTY5OTI2OTkyZjYxZjBjNmM1ZTk0MzliZWE5ZjI2
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDEtMjUgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb2Rlcm5pemUgSGFzaFRhYmxlIHRocmVhZGlu
ZyBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
Mjc2MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
c2Ugc3RkOjptdXRleCBhbmQgc3RkOjphdG9taWMgaW5zdGVhZCBvZiBXVEYgdGhyZWFkaW5nIHBy
aW1pdGl2ZXMuCisKKyAgICAgICAgKiB3dGYvRHluYW1pY0Fubm90YXRpb25zLmg6CisgICAgICAg
IEluY2x1ZGUgUGxhdGZvcm0uaCBoZXJlIHNpbmNlIHRoaXMgZmlsZSByZWxpZXMgb24gVVNFIG1h
Y3Jvcy4KKworICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAoV1RGOjpIYXNo
VGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudCk6CisgICAgICAgIENoYW5nZSB0aGlz
IHRvIHRha2UgYW4gdW5zaWduZWQuCisKKyAgICAgICAgKFdURjo6SGFzaFRhYmxlU3RhdHM6OmR1
bXBTdGF0cyk6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAoV1RGOjpLZXlU
cmFpdHM+OjpIYXNoVGFibGUpOgorICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjpyZW1vdmUpOgor
ICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjppbnZhbGlkYXRlSXRlcmF0b3JzKToKKyAgICAgICAg
VXNlIGEgc2luZ2xlIHByb2JlIGNvdW50ZXIuCisKKyAgICAgICAgKFdURjo6YWRkSXRlcmF0b3Ip
OgorICAgICAgICAoV1RGOjpyZW1vdmVJdGVyYXRvcik6CisKIDIwMTQtMDEtMjQgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbl0gQ29udmVydCBzb21l
IE5NYWtlIGZpbGVzIHRvIE1TQnVpbGQgcHJvamVjdCBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDhhZmI3
NGVjOWFhZDk0MzgwMDYyMzNlZGFmMjg2ZTM1OGJkYmZmNDUuLjVkOTBlNzNkMzc1NmQzODQ3M2Q5
MGQxMzU2YmNmYWY4NTdjMjVkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0w
MS0yNSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIE1v
ZGVybml6ZSBIYXNoVGFibGUgdGhyZWFkaW5nIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzYyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cGxpY2l0bHkgaW5jbHVkZSBoZWFkZXJzIHRoYXQg
dXNlZCB0byBiZSBicm91Z2h0IGluIGJ5IEhhc2hUYWJsZS5oCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9BdWRpb1Nlc3Npb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Nv
Y2tldFN0cmVhbUhhbmRsZS5oOgorCiAyMDE0LTAxLTI0ICBEYW4gQmVybnN0ZWluICA8bWl0ekBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV2ZXJ0ZWQgcjE2Mjc2MC4gSXQgYnJva2UgbW9yZSB0aGlu
Z3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggMjcwMTM4MGU1ZTJhZDIwMGNiNWNiYTYyZjY2NGUzYWViMGIyZTMx
ZS4uMTcyMzY4MDNkZmI5NzIzNDlkNjI4YjQ4MDVhNDc0YzQ0ODllZTU5ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBh
cHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcgY29kZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NjIxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwbGljaXRs
eSBpbmNsdWRlIGhlYWRlcnMgdGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFzaFRhYmxl
LmgKKworICAgICAgICAqIFNoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmg6CisKIDIwMTQtMDEt
MjQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
S2l0MiBWaWV3IEdlc3R1cmVzIChTbWFydCBab29tKTogQ2FuJ3QgZG91YmxlLXRhcCB6b29tLW91
dCBvbiB0aGUgYm9keQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRHluYW1pY0Fubm90YXRp
b25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaAppbmRleCAzOGFjY2Uz
NWU2ODk2YmI5ODM3YjI0ZDhjMWE0Nzk4ZjUxM2EzZWJiLi4yZDVhNWE5ZTlhNWM1YzYzY2FkOTk0
YTViZDM3MTFiOGZlODQ3ZWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5u
b3RhdGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaApAQCAt
MjcsNiArMjcsOCBAQAogI2lmbmRlZiBXVEZfRHluYW1pY0Fubm90YXRpb25zX2gKICNkZWZpbmUg
V1RGX0R5bmFtaWNBbm5vdGF0aW9uc19oCiAKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KKwog
LyogVGhpcyBmaWxlIGRlZmluZXMgZHluYW1pYyBhbm5vdGF0aW9ucyBmb3IgdXNlIHdpdGggZHlu
YW1pYyBhbmFseXNpcwogICogdG9vbCBzdWNoIGFzIFRocmVhZFNhbml0aXplciwgVmFsZ3JpbmQs
IGV0Yy4KICAqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwIGIvU291
cmNlL1dURi93dGYvSGFzaFRhYmxlLmNwcAppbmRleCBhNTc4ZjUyZmRkZDQxMjAyOGY4MmJmYzY1
NzgxYTYxNGNhZjY4ODBmLi40NThkZDUzMWZlODQ2YWUzMjQ2NGFlZTEyZjU5YzdmMWRhY2RkZmI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL0hhc2hUYWJsZS5jcHAKQEAgLTI3LDEzICsyNywxNCBAQCBuYW1lc3BhY2UgV1RGIHsK
IAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCiAKLWludCBIYXNoVGFibGVTdGF0czo6bnVtQWNj
ZXNzZXM7Ci1pbnQgSGFzaFRhYmxlU3RhdHM6Om51bUNvbGxpc2lvbnM7Ci1pbnQgSGFzaFRhYmxl
U3RhdHM6OmNvbGxpc2lvbkdyYXBoWzQwOTZdOwotaW50IEhhc2hUYWJsZVN0YXRzOjptYXhDb2xs
aXNpb25zOwotaW50IEhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlczsKLWludCBIYXNoVGFibGVT
dGF0czo6bnVtUmVtb3ZlczsKLWludCBIYXNoVGFibGVTdGF0czo6bnVtUmVpbnNlcnRzOworc3Rk
OjphdG9taWM8dW5zaWduZWQ+IEhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKK3N0ZDo6YXRv
bWljPHVuc2lnbmVkPiBIYXNoVGFibGVTdGF0czo6bnVtUmVoYXNoZXM7CitzdGQ6OmF0b21pYzx1
bnNpZ25lZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CitzdGQ6OmF0b21pYzx1bnNpZ25l
ZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlaW5zZXJ0czsKKwordW5zaWduZWQgSGFzaFRhYmxlU3Rh
dHM6Om51bUNvbGxpc2lvbnM7Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6Y29sbGlzaW9uR3Jh
cGhbNDA5Nl07Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6bWF4Q29sbGlzaW9uczsKIAogc3Rh
dGljIHN0ZDo6bXV0ZXgmIGhhc2hUYWJsZVN0YXRzTXV0ZXgoKQogewpAQCAtNDYsNyArNDcsNyBA
QCBzdGF0aWMgc3RkOjptdXRleCYgaGFzaFRhYmxlU3RhdHNNdXRleCgpCiAgICAgcmV0dXJuICpt
dXRleDsKIH0KIAotdm9pZCBIYXNoVGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudChp
bnQgY291bnQpCit2b2lkIEhhc2hUYWJsZVN0YXRzOjpyZWNvcmRDb2xsaXNpb25BdENvdW50KHVu
c2lnbmVkIGNvdW50KQogewogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKGhh
c2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKQEAgLTYxLDE0ICs2MiwxNCBAQCB2b2lkIEhhc2hUYWJs
ZVN0YXRzOjpkdW1wU3RhdHMoKQogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2Nr
KGhhc2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKICAgICBkYXRhTG9nRigiXG5XVEY6Okhhc2hUYWJs
ZSBzdGF0aXN0aWNzXG5cbiIpOwotICAgIGRhdGFMb2dGKCIlZCBhY2Nlc3Nlc1xuIiwgbnVtQWNj
ZXNzZXMpOworICAgIGRhdGFMb2dGKCIldSBhY2Nlc3Nlc1xuIiwgbnVtQWNjZXNzZXMubG9hZCgp
KTsKICAgICBkYXRhTG9nRigiJWQgdG90YWwgY29sbGlzaW9ucywgYXZlcmFnZSAlLjJmIHByb2Jl
cyBwZXIgYWNjZXNzXG4iLCBudW1Db2xsaXNpb25zLCAxLjAgKiAobnVtQWNjZXNzZXMgKyBudW1D
b2xsaXNpb25zKSAvIG51bUFjY2Vzc2VzKTsKICAgICBkYXRhTG9nRigibG9uZ2VzdCBjb2xsaXNp
b24gY2hhaW46ICVkXG4iLCBtYXhDb2xsaXNpb25zKTsKLSAgICBmb3IgKGludCBpID0gMTsgaSA8
PSBtYXhDb2xsaXNpb25zOyBpKyspIHsKLSAgICAgICAgZGF0YUxvZ0YoIiAgJWQgbG9va3VwcyB3
aXRoIGV4YWN0bHkgJWQgY29sbGlzaW9ucyAoJS4yZiUlICwgJS4yZiUlIHdpdGggdGhpcyBtYW55
IG9yIG1vcmUpXG4iLCBjb2xsaXNpb25HcmFwaFtpXSwgaSwgMTAwLjAgKiAoY29sbGlzaW9uR3Jh
cGhbaV0gLSBjb2xsaXNpb25HcmFwaFtpKzFdKSAvIG51bUFjY2Vzc2VzLCAxMDAuMCAqIGNvbGxp
c2lvbkdyYXBoW2ldIC8gbnVtQWNjZXNzZXMpOworICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkg
PD0gbWF4Q29sbGlzaW9uczsgaSsrKSB7CisgICAgICAgIGRhdGFMb2dGKCIgICV1IGxvb2t1cHMg
d2l0aCBleGFjdGx5ICV1IGNvbGxpc2lvbnMgKCUuMmYlJSAsICUuMmYlJSB3aXRoIHRoaXMgbWFu
eSBvciBtb3JlKVxuIiwgY29sbGlzaW9uR3JhcGhbaV0sIGksIDEwMC4wICogKGNvbGxpc2lvbkdy
YXBoW2ldIC0gY29sbGlzaW9uR3JhcGhbaSsxXSkgLyBudW1BY2Nlc3NlcywgMTAwLjAgKiBjb2xs
aXNpb25HcmFwaFtpXSAvIG51bUFjY2Vzc2VzKTsKICAgICB9Ci0gICAgZGF0YUxvZ0YoIiVkIHJl
aGFzaGVzXG4iLCBudW1SZWhhc2hlcyk7Ci0gICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwg
bnVtUmVpbnNlcnRzKTsKKyAgICBkYXRhTG9nRigiJWQgcmVoYXNoZXNcbiIsIG51bVJlaGFzaGVz
LmxvYWQoKSk7CisgICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwgbnVtUmVpbnNlcnRzLmxv
YWQoKSk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvSGFzaFRhYmxl
LmggYi9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAppbmRleCA3YWExOTE1YTJkOTA0OWFiMDY0
MThkNGMxOTJiZDdhNDNjNmMyNTdkLi44NTE5YWUzNjQ3YjZhODVmNmYwMzE2ZmVhZWRlNzYzZjFj
N2Y0ZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi9IYXNoVGFibGUuaApAQCAtMjIsNiArMjIsOCBAQAogI2lmbmRlZiBXVEZfSGFz
aFRhYmxlX2gKICNkZWZpbmUgV1RGX0hhc2hUYWJsZV9oCiAKKyNpbmNsdWRlIDxhdG9taWM+Cisj
aW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dHlwZV90cmFp
dHM+CiAjaW5jbHVkZSA8dXRpbGl0eT4KQEAgLTI5LDE1ICszMSw4IEBACiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KLSNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL1ZhbHVlQ2hlY2suaD4KIAotI2lmbmRlZiBOREVCVUcKLS8vIFJlcXVpcmVkIGZvciBDSEVD
S19IQVNIVEFCTEVfSVRFUkFUT1JTLgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KLSNpbmNsdWRl
IDx3dGYvUGFzc093blB0ci5oPgotI2VuZGlmCi0KICNkZWZpbmUgRFVNUF9IQVNIVEFCTEVfU1RB
VFMgMAogI2RlZmluZSBEVU1QX0hBU0hUQUJMRV9TVEFUU19QRVJfVEFCTEUgMAogCkBAIC02Miwx
NyArNTcsMTcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICBzdHJ1Y3QgSGFzaFRhYmxlU3RhdHMg
ewogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgYWxsIGF0b21pY2FsbHkg
aW5jcmVtZW50ZWQgd2hlbiBtb2RpZmllZC4KLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGlj
IGludCBudW1BY2Nlc3NlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1S
ZWhhc2hlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1SZW1vdmVzOwot
ICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IG51bVJlaW5zZXJ0czsKKyAgICAgICAg
V1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1BY2Nlc3NlczsK
KyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1S
ZWhhc2hlczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2ln
bmVkPiBudW1SZW1vdmVzOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgc3RkOjphdG9t
aWM8dW5zaWduZWQ+IG51bVJlaW5zZXJ0czsKIAogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZh
cmlhYmxlcyBhcmUgb25seSBtb2RpZmllZCBpbiB0aGUgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCBt
ZXRob2Qgd2l0aGluIGEgbXV0ZXguCi0gICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyBpbnQg
bWF4Q29sbGlzaW9uczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1Db2xs
aXNpb25zOwotICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IGNvbGxpc2lvbkdyYXBo
WzQwOTZdOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgdW5zaWduZWQgbWF4Q29sbGlz
aW9uczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHVuc2lnbmVkIG51bUNvbGxpc2lv
bnM7CisgICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyB1bnNpZ25lZCBjb2xsaXNpb25HcmFw
aFs0MDk2XTsKIAotICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgcmVjb3Jk
Q29sbGlzaW9uQXRDb3VudChpbnQgY291bnQpOworICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCh1bnNpZ25lZCBjb3VudCk7CiAgICAg
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wU3RhdHMoKTsKICAgICB9Owog
CkBAIC00ODMsMTIgKzQ3OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgLy8gQWxsIGFj
Y2VzcyB0byBtX2l0ZXJhdG9ycyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIG1fbXV0ZXguCiAgICAg
ICAgIG11dGFibGUgY29uc3RfaXRlcmF0b3IqIG1faXRlcmF0b3JzOwogICAgICAgICAvLyBVc2Ug
T3duUHRyIHNvIEhhc2hUYWJsZSBjYW4gc3RpbGwgYmUgbWVtbW92ZSdkIG9yIG1lbWNweSdlZC4K
LSAgICAgICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8TXV0ZXg+IG1fbXV0ZXg7CisgICAgICAg
IG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPHN0ZDo6bXV0ZXg+IG1fbXV0ZXg7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgIHB1YmxpYzoKLSAgICAgICAg
bXV0YWJsZSBPd25QdHI8U3RhdHM+IG1fc3RhdHM7CisgICAgICAgIG11dGFibGUgc3RkOjp1bmlx
dWVfcHRyPFN0YXRzPiBtX3N0YXRzOwogI2VuZGlmCiAgICAgfTsKIApAQCAtNTM5LDcgKzUzNCw3
IEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICAsIG1fZGVsZXRlZENvdW50KDApCiAjaWYgQ0hF
Q0tfSEFTSFRBQkxFX0lURVJBVE9SUwogICAgICAgICAsIG1faXRlcmF0b3JzKDApCi0gICAgICAg
ICwgbV9tdXRleChzdGQ6Om1ha2VfdW5pcXVlPE11dGV4PigpKQorICAgICAgICAsIG1fbXV0ZXgo
c3RkOjptYWtlX3VuaXF1ZTxzdGQ6Om11dGV4PigpKQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCiAgICAgICAgICwgbV9zdGF0cyhzdGQ6Om1ha2VfdW5pcXVlPFN0
YXRzPigpKQpAQCAtNTk5LDEzICs1OTQsMTIgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgICAg
ICByZXR1cm4gMDsKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0lu
Y3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2Jl
Q291bnQgPSAwOworICAgICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAg
ICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxF
X1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAg
ICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIHdoaWxlICgx
KSB7CkBAIC02MzEsOCArNjI1LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAjZW5kaWYKIAogI2lmIERV
TVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQotICAgICAgICAgICAgKytwZXJUYWJsZVByb2Jl
Q291bnQ7Ci0gICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENvdW50KHBlclRh
YmxlUHJvYmVDb3VudCk7CisgICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENv
dW50KHByb2JlQ291bnQpOwogI2VuZGlmCiAKICAgICAgICAgICAgIGlmIChrID09IDApCkBAIC02
NTUsMTMgKzY0OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgaW50IGkgPSBoICYgc2l6
ZU1hc2s7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBhdG9taWNJbmNyZW1l
bnQoJkhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3Nlcyk7CisgICAgICAgICsrSGFzaFRhYmxlU3Rh
dHM6Om51bUFjY2Vzc2VzOwogICAgICAgICBpbnQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51
bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgog
CiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTY5NCw4ICs2ODYsNyBA
QCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVS
X1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAgICAgICAgICAgIG1f
c3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNvdW50KTsKKyAgICAg
ICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVDb3VudCk7CiAjZW5k
aWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTcxOCwxMyArNzA5LDEyIEBAIG5hbWVz
cGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAogI2lmIERVTVBfSEFT
SFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51
bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7
CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICAr
K21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0g
MDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTc1
Nyw4ICs3NDcsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAg
ICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNv
dW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVD
b3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTgxNCwxMyArODAz
LDEyIEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRh
YmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAg
ICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJv
YmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJM
RQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQ
cm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5
ID0gMDsKQEAgLTg1Myw4ICs4NDEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYg
RFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJv
YmVDb3VudDsKLSAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVy
VGFibGVQcm9iZUNvdW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0
Q291bnQocHJvYmVDb3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAg
LTkyNCw3ICs5MTEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgQVNTRVJUKCFsb29rdXBG
b3JXcml0aW5nKEV4dHJhY3Rvcjo6ZXh0cmFjdChlbnRyeSkpLnNlY29uZCk7CiAgICAgICAgIEFT
U0VSVCghaXNEZWxldGVkQnVja2V0KCoobG9va3VwRm9yV3JpdGluZyhFeHRyYWN0b3I6OmV4dHJh
Y3QoZW50cnkpKS5maXJzdCkpKTsKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBh
dG9taWNJbmNyZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHMpOworICAgICAgICAr
K0hhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZWluc2VydHM7CkBAIC05
OTQsNyArOTgxLDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdm9pZCBIYXNoVGFibGU8S2V5LCBW
YWx1ZSwgRXh0cmFjdG9yLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHMsIEtleVRyYWl0cz46OnJlbW92
ZShWYWx1ZVR5cGUqIHBvcykKICAgICB7CiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFMKLSAgICAg
ICAgYXRvbWljSW5jcmVtZW50KCZIYXNoVGFibGVTdGF0czo6bnVtUmVtb3Zlcyk7CisgICAgICAg
ICsrSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZW1vdmVzOwpAQCAtMTA5
MCw3ICsxMDc3LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFU
UwogICAgICAgICBpZiAob2xkVGFibGVTaXplICE9IDApCi0gICAgICAgICAgICBhdG9taWNJbmNy
ZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlcyk7CisgICAgICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1SZWhhc2hlczsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RB
VFNfUEVSX1RBQkxFCkBAIC0xMTQ3LDcgKzExMzQsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoc3RkOjptYWtlX3VuaXF1
ZTxNdXRleD4oKSkKKyAgICAgICAgLCBtX211dGV4KHN0ZDo6bWFrZV91bmlxdWU8c3RkOjptdXRl
eD4oKSkKICNlbmRpZgogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAg
ICAsIG1fc3RhdHMoc3RkOjptYWtlX3VuaXF1ZTxTdGF0cz4oKm90aGVyLm1fc3RhdHMpKQpAQCAt
MTI1Miw3ICsxMjM5LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUg
S2V5LCB0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgRXh0cmFjdG9yLCB0eXBlbmFtZSBIYXNoRnVu
Y3Rpb25zLCB0eXBlbmFtZSBUcmFpdHMsIHR5cGVuYW1lIEtleVRyYWl0cz4KICAgICB2b2lkIEhh
c2hUYWJsZTxLZXksIFZhbHVlLCBFeHRyYWN0b3IsIEhhc2hGdW5jdGlvbnMsIFRyYWl0cywgS2V5
VHJhaXRzPjo6aW52YWxpZGF0ZUl0ZXJhdG9ycygpCiAgICAgewotICAgICAgICBNdXRleExvY2tl
ciBsb2NrKCptX211dGV4KTsKKyAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxv
Y2soKm1fbXV0ZXgpOwogICAgICAgICBjb25zdF9pdGVyYXRvciogbmV4dDsKICAgICAgICAgZm9y
IChjb25zdF9pdGVyYXRvciogcCA9IG1faXRlcmF0b3JzOyBwOyBwID0gbmV4dCkgewogICAgICAg
ICAgICAgbmV4dCA9IHAtPm1fbmV4dDsKQEAgLTEyNzQsNyArMTI2MSw3IEBAIG5hbWVzcGFjZSBX
VEYgewogICAgICAgICBpZiAoIXRhYmxlKSB7CiAgICAgICAgICAgICBpdC0+bV9uZXh0ID0gMDsK
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIE11dGV4TG9ja2VyIGxvY2soKnRhYmxlLT5t
X211dGV4KTsKKyAgICAgICAgICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKCp0
YWJsZS0+bV9tdXRleCk7CiAgICAgICAgICAgICBBU1NFUlQodGFibGUtPm1faXRlcmF0b3JzICE9
IGl0KTsKICAgICAgICAgICAgIGl0LT5tX25leHQgPSB0YWJsZS0+bV9pdGVyYXRvcnM7CiAgICAg
ICAgICAgICB0YWJsZS0+bV9pdGVyYXRvcnMgPSBpdDsKQEAgLTEyOTYsNyArMTI4Myw3IEBAIG5h
bWVzcGFjZSBXVEYgewogICAgICAgICAgICAgQVNTRVJUKCFpdC0+bV9uZXh0KTsKICAgICAgICAg
ICAgIEFTU0VSVCghaXQtPm1fcHJldmlvdXMpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgTXV0ZXhMb2NrZXIgbG9jaygqaXQtPm1fdGFibGUtPm1fbXV0ZXgpOworICAgICAgICAgICAg
c3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2soKml0LT5tX3RhYmxlLT5tX211dGV4KTsK
ICAgICAgICAgICAgIGlmIChpdC0+bV9uZXh0KSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGl0
LT5tX25leHQtPm1fcHJldmlvdXMgPT0gaXQpOwogICAgICAgICAgICAgICAgIGl0LT5tX25leHQt
Pm1fcHJldmlvdXMgPSBpdC0+bV9wcmV2aW91czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL0F1ZGlvU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vQXVkaW9TZXNzaW9uLmgKaW5kZXggZWIxMjc3M2NiYTY1ZWM5ZWVjMzg3MWQwZGI2Yzlh
NjRmNTA5YTU5MC4uNGZmZjVhNjY4NDdiZTgyOGNmODAwNWIzZTJlNjNlMGFjNTEwNjZkNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKQEAgLTMwLDYg
KzMwLDcgQEAKIAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgor
I2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFt
SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1NvY2tldFN0cmVh
bUhhbmRsZS5oCmluZGV4IDhjMWE0ZTEzNDQzNjkyMjc0N2NiODgyYmRlYTczMDg2ZjEyMTdjY2Yu
LjU4NTVhYWQ0YmY0YjVmMmI2ZmU0ZTgzMTI4YjA5ZmIwMjYzYjkwYzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFtSGFuZGxlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9Tb2NrZXRTdHJlYW1IYW5kbGUu
aApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2xpZW50LmgiCiAj
aW5jbHVkZSAiU29ja2V0U3RyZWFtSGFuZGxlQmFzZS5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5Q
dHIuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIAogdHlwZWRlZiBz
dHJ1Y3QgX19DRkhUVFBNZXNzYWdlKiBDRkhUVFBNZXNzYWdlUmVmOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmgKaW5k
ZXggNWJhYzIxZTQ0NTJlYWRmYmU4MWM1MTc5MTQ1MmIxZjk0Njg5Y2NiNi4uZmQ5NWE3NDI4YzY5
Mjc5ZTI1M2MxODlmMWFjMWQwYTE4Nzg4YmJkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXNDeWNsZVNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ3ljbGVTb2x2ZXIuaApAQCAtMjIsNiArMjIs
NyBAQAogCiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1
ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQmxvY2tpbmdSZXNwb25zZU1hcC5oCmluZGV4IDExYWNlNzU5YzJmMWZk
Yzc2Yzg0YjJhNzc3MTM5NDAzNjM2NjFlMWIuLmY0NTI5YWY0ZjY5YThmYWNlMzY2MzgzYjQ4MDcw
MTQzN2VmNWU4YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9CbG9ja2luZ1Jl
c3BvbnNlTWFwLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Jsb2NraW5nUmVzcG9uc2VN
YXAuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8Y29uZGl0aW9uX3ZhcmlhYmxlPgog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAK
IHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiBjbGFzcyBCbG9ja2luZ1Jlc3BvbnNlTWFwIHsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5MjdkZGU1NTE4
ZWY2MWY4MjQ5MjRmNWQ3ZjYwOWI3NTc4NTExNWU2Li42NmNmZmMwZTMzYmI1NTZkMTVlYTkzOTk3
ZjdlY2ZkYjM1MjU5ZmRhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMDEtMjUgIEFuZGVycyBDYXJsc3NvbiAg
PGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb2Rlcm5pemUgSGFzaFRhYmxlIHRocmVh
ZGluZyBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMjc2MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBFeHBsaWNpdGx5IGluY2x1ZGUgaGVhZGVycyB0aGF0IHVzZWQgdG8gYmUgYnJvdWdodCBpbiBi
eSBIYXNoVGFibGUuaAorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvSmF2YVNjcmlwdFRocmVh
ZGluZy5jcHA6CisKIDIwMTQtMDEtMjQgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gQWRkIFBoaWxpcCBKw6RnZW5zdGVkdCB0byB3
YXRjaCBhbmQgY29udHJpYnV0b3IgbGlzdHMuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9KYXZhU2NyaXB0VGhyZWFkaW5nLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0phdmFT
Y3JpcHRUaHJlYWRpbmcuY3BwCmluZGV4IDY2ZGUxNTZjN2Y5ZWIxMmI0MGYyZWQ0NmY3ZDhkOWE3
NzIzZjViOTAuLjVkNjczYjg3MGFkZGU0NWM1YzcwYzRiYTUyYzc5MjdmNWY1ZTFkNjEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0phdmFTY3JpcHRUaHJlYWRpbmcuY3BwCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0phdmFTY3JpcHRUaHJlYWRpbmcuY3BwCkBAIC0zNiw2ICsz
Niw4IEBACiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4K
ICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nUHJpbWl0aXZlcy5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KIAogc3RhdGljIGNvbnN0IHNpemVfdCBqYXZhU2NyaXB0VGhyZWFkc0NvdW50ID0gNDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222215</attachid>
            <date>2014-01-25 10:19:14 -0800</date>
            <delta_ts>2014-01-25 10:52:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127621-20140125101913.patch</filename>
            <type>text/plain</type>
            <size>17225</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNiNmZmMjJiODY0MmIzZjk5YjFlOGI1
NmUxMDgwOTE4ODY2MjE5ZTQuLjA2ODZlM2E3OTY5OTI2OTkyZjYxZjBjNmM1ZTk0MzliZWE5ZjI2
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDEtMjUgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb2Rlcm5pemUgSGFzaFRhYmxlIHRocmVhZGlu
ZyBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
Mjc2MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
c2Ugc3RkOjptdXRleCBhbmQgc3RkOjphdG9taWMgaW5zdGVhZCBvZiBXVEYgdGhyZWFkaW5nIHBy
aW1pdGl2ZXMuCisKKyAgICAgICAgKiB3dGYvRHluYW1pY0Fubm90YXRpb25zLmg6CisgICAgICAg
IEluY2x1ZGUgUGxhdGZvcm0uaCBoZXJlIHNpbmNlIHRoaXMgZmlsZSByZWxpZXMgb24gVVNFIG1h
Y3Jvcy4KKworICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAoV1RGOjpIYXNo
VGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudCk6CisgICAgICAgIENoYW5nZSB0aGlz
IHRvIHRha2UgYW4gdW5zaWduZWQuCisKKyAgICAgICAgKFdURjo6SGFzaFRhYmxlU3RhdHM6OmR1
bXBTdGF0cyk6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAoV1RGOjpLZXlU
cmFpdHM+OjpIYXNoVGFibGUpOgorICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjpyZW1vdmUpOgor
ICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjppbnZhbGlkYXRlSXRlcmF0b3JzKToKKyAgICAgICAg
VXNlIGEgc2luZ2xlIHByb2JlIGNvdW50ZXIuCisKKyAgICAgICAgKFdURjo6YWRkSXRlcmF0b3Ip
OgorICAgICAgICAoV1RGOjpyZW1vdmVJdGVyYXRvcik6CisKIDIwMTQtMDEtMjQgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbl0gQ29udmVydCBzb21l
IE5NYWtlIGZpbGVzIHRvIE1TQnVpbGQgcHJvamVjdCBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDhhZmI3
NGVjOWFhZDk0MzgwMDYyMzNlZGFmMjg2ZTM1OGJkYmZmNDUuLjVkOTBlNzNkMzc1NmQzODQ3M2Q5
MGQxMzU2YmNmYWY4NTdjMjVkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0w
MS0yNSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIE1v
ZGVybml6ZSBIYXNoVGFibGUgdGhyZWFkaW5nIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzYyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cGxpY2l0bHkgaW5jbHVkZSBoZWFkZXJzIHRoYXQg
dXNlZCB0byBiZSBicm91Z2h0IGluIGJ5IEhhc2hUYWJsZS5oCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9BdWRpb1Nlc3Npb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Nv
Y2tldFN0cmVhbUhhbmRsZS5oOgorCiAyMDE0LTAxLTI0ICBEYW4gQmVybnN0ZWluICA8bWl0ekBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV2ZXJ0ZWQgcjE2Mjc2MC4gSXQgYnJva2UgbW9yZSB0aGlu
Z3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggMjcwMTM4MGU1ZTJhZDIwMGNiNWNiYTYyZjY2NGUzYWViMGIyZTMx
ZS4uMTcyMzY4MDNkZmI5NzIzNDlkNjI4YjQ4MDVhNDc0YzQ0ODllZTU5ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBh
cHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcgY29kZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NjIxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwbGljaXRs
eSBpbmNsdWRlIGhlYWRlcnMgdGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFzaFRhYmxl
LmgKKworICAgICAgICAqIFNoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmg6CisKIDIwMTQtMDEt
MjQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
S2l0MiBWaWV3IEdlc3R1cmVzIChTbWFydCBab29tKTogQ2FuJ3QgZG91YmxlLXRhcCB6b29tLW91
dCBvbiB0aGUgYm9keQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRHluYW1pY0Fubm90YXRp
b25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaAppbmRleCAzOGFjY2Uz
NWU2ODk2YmI5ODM3YjI0ZDhjMWE0Nzk4ZjUxM2EzZWJiLi4yZDVhNWE5ZTlhNWM1YzYzY2FkOTk0
YTViZDM3MTFiOGZlODQ3ZWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5u
b3RhdGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaApAQCAt
MjcsNiArMjcsOCBAQAogI2lmbmRlZiBXVEZfRHluYW1pY0Fubm90YXRpb25zX2gKICNkZWZpbmUg
V1RGX0R5bmFtaWNBbm5vdGF0aW9uc19oCiAKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KKwog
LyogVGhpcyBmaWxlIGRlZmluZXMgZHluYW1pYyBhbm5vdGF0aW9ucyBmb3IgdXNlIHdpdGggZHlu
YW1pYyBhbmFseXNpcwogICogdG9vbCBzdWNoIGFzIFRocmVhZFNhbml0aXplciwgVmFsZ3JpbmQs
IGV0Yy4KICAqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwIGIvU291
cmNlL1dURi93dGYvSGFzaFRhYmxlLmNwcAppbmRleCBhNTc4ZjUyZmRkZDQxMjAyOGY4MmJmYzY1
NzgxYTYxNGNhZjY4ODBmLi40NThkZDUzMWZlODQ2YWUzMjQ2NGFlZTEyZjU5YzdmMWRhY2RkZmI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL0hhc2hUYWJsZS5jcHAKQEAgLTI3LDEzICsyNywxNCBAQCBuYW1lc3BhY2UgV1RGIHsK
IAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCiAKLWludCBIYXNoVGFibGVTdGF0czo6bnVtQWNj
ZXNzZXM7Ci1pbnQgSGFzaFRhYmxlU3RhdHM6Om51bUNvbGxpc2lvbnM7Ci1pbnQgSGFzaFRhYmxl
U3RhdHM6OmNvbGxpc2lvbkdyYXBoWzQwOTZdOwotaW50IEhhc2hUYWJsZVN0YXRzOjptYXhDb2xs
aXNpb25zOwotaW50IEhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlczsKLWludCBIYXNoVGFibGVT
dGF0czo6bnVtUmVtb3ZlczsKLWludCBIYXNoVGFibGVTdGF0czo6bnVtUmVpbnNlcnRzOworc3Rk
OjphdG9taWM8dW5zaWduZWQ+IEhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKK3N0ZDo6YXRv
bWljPHVuc2lnbmVkPiBIYXNoVGFibGVTdGF0czo6bnVtUmVoYXNoZXM7CitzdGQ6OmF0b21pYzx1
bnNpZ25lZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CitzdGQ6OmF0b21pYzx1bnNpZ25l
ZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlaW5zZXJ0czsKKwordW5zaWduZWQgSGFzaFRhYmxlU3Rh
dHM6Om51bUNvbGxpc2lvbnM7Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6Y29sbGlzaW9uR3Jh
cGhbNDA5Nl07Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6bWF4Q29sbGlzaW9uczsKIAogc3Rh
dGljIHN0ZDo6bXV0ZXgmIGhhc2hUYWJsZVN0YXRzTXV0ZXgoKQogewpAQCAtNDYsNyArNDcsNyBA
QCBzdGF0aWMgc3RkOjptdXRleCYgaGFzaFRhYmxlU3RhdHNNdXRleCgpCiAgICAgcmV0dXJuICpt
dXRleDsKIH0KIAotdm9pZCBIYXNoVGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudChp
bnQgY291bnQpCit2b2lkIEhhc2hUYWJsZVN0YXRzOjpyZWNvcmRDb2xsaXNpb25BdENvdW50KHVu
c2lnbmVkIGNvdW50KQogewogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKGhh
c2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKQEAgLTYxLDE0ICs2MiwxNCBAQCB2b2lkIEhhc2hUYWJs
ZVN0YXRzOjpkdW1wU3RhdHMoKQogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2Nr
KGhhc2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKICAgICBkYXRhTG9nRigiXG5XVEY6Okhhc2hUYWJs
ZSBzdGF0aXN0aWNzXG5cbiIpOwotICAgIGRhdGFMb2dGKCIlZCBhY2Nlc3Nlc1xuIiwgbnVtQWNj
ZXNzZXMpOworICAgIGRhdGFMb2dGKCIldSBhY2Nlc3Nlc1xuIiwgbnVtQWNjZXNzZXMubG9hZCgp
KTsKICAgICBkYXRhTG9nRigiJWQgdG90YWwgY29sbGlzaW9ucywgYXZlcmFnZSAlLjJmIHByb2Jl
cyBwZXIgYWNjZXNzXG4iLCBudW1Db2xsaXNpb25zLCAxLjAgKiAobnVtQWNjZXNzZXMgKyBudW1D
b2xsaXNpb25zKSAvIG51bUFjY2Vzc2VzKTsKICAgICBkYXRhTG9nRigibG9uZ2VzdCBjb2xsaXNp
b24gY2hhaW46ICVkXG4iLCBtYXhDb2xsaXNpb25zKTsKLSAgICBmb3IgKGludCBpID0gMTsgaSA8
PSBtYXhDb2xsaXNpb25zOyBpKyspIHsKLSAgICAgICAgZGF0YUxvZ0YoIiAgJWQgbG9va3VwcyB3
aXRoIGV4YWN0bHkgJWQgY29sbGlzaW9ucyAoJS4yZiUlICwgJS4yZiUlIHdpdGggdGhpcyBtYW55
IG9yIG1vcmUpXG4iLCBjb2xsaXNpb25HcmFwaFtpXSwgaSwgMTAwLjAgKiAoY29sbGlzaW9uR3Jh
cGhbaV0gLSBjb2xsaXNpb25HcmFwaFtpKzFdKSAvIG51bUFjY2Vzc2VzLCAxMDAuMCAqIGNvbGxp
c2lvbkdyYXBoW2ldIC8gbnVtQWNjZXNzZXMpOworICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkg
PD0gbWF4Q29sbGlzaW9uczsgaSsrKSB7CisgICAgICAgIGRhdGFMb2dGKCIgICV1IGxvb2t1cHMg
d2l0aCBleGFjdGx5ICV1IGNvbGxpc2lvbnMgKCUuMmYlJSAsICUuMmYlJSB3aXRoIHRoaXMgbWFu
eSBvciBtb3JlKVxuIiwgY29sbGlzaW9uR3JhcGhbaV0sIGksIDEwMC4wICogKGNvbGxpc2lvbkdy
YXBoW2ldIC0gY29sbGlzaW9uR3JhcGhbaSsxXSkgLyBudW1BY2Nlc3NlcywgMTAwLjAgKiBjb2xs
aXNpb25HcmFwaFtpXSAvIG51bUFjY2Vzc2VzKTsKICAgICB9Ci0gICAgZGF0YUxvZ0YoIiVkIHJl
aGFzaGVzXG4iLCBudW1SZWhhc2hlcyk7Ci0gICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwg
bnVtUmVpbnNlcnRzKTsKKyAgICBkYXRhTG9nRigiJWQgcmVoYXNoZXNcbiIsIG51bVJlaGFzaGVz
LmxvYWQoKSk7CisgICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwgbnVtUmVpbnNlcnRzLmxv
YWQoKSk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvSGFzaFRhYmxl
LmggYi9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAppbmRleCA3YWExOTE1YTJkOTA0OWFiMDY0
MThkNGMxOTJiZDdhNDNjNmMyNTdkLi44NTE5YWUzNjQ3YjZhODVmNmYwMzE2ZmVhZWRlNzYzZjFj
N2Y0ZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi9IYXNoVGFibGUuaApAQCAtMjIsNiArMjIsOCBAQAogI2lmbmRlZiBXVEZfSGFz
aFRhYmxlX2gKICNkZWZpbmUgV1RGX0hhc2hUYWJsZV9oCiAKKyNpbmNsdWRlIDxhdG9taWM+Cisj
aW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dHlwZV90cmFp
dHM+CiAjaW5jbHVkZSA8dXRpbGl0eT4KQEAgLTI5LDE1ICszMSw4IEBACiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KLSNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL1ZhbHVlQ2hlY2suaD4KIAotI2lmbmRlZiBOREVCVUcKLS8vIFJlcXVpcmVkIGZvciBDSEVD
S19IQVNIVEFCTEVfSVRFUkFUT1JTLgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KLSNpbmNsdWRl
IDx3dGYvUGFzc093blB0ci5oPgotI2VuZGlmCi0KICNkZWZpbmUgRFVNUF9IQVNIVEFCTEVfU1RB
VFMgMAogI2RlZmluZSBEVU1QX0hBU0hUQUJMRV9TVEFUU19QRVJfVEFCTEUgMAogCkBAIC02Miwx
NyArNTcsMTcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICBzdHJ1Y3QgSGFzaFRhYmxlU3RhdHMg
ewogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgYWxsIGF0b21pY2FsbHkg
aW5jcmVtZW50ZWQgd2hlbiBtb2RpZmllZC4KLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGlj
IGludCBudW1BY2Nlc3NlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1S
ZWhhc2hlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1SZW1vdmVzOwot
ICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IG51bVJlaW5zZXJ0czsKKyAgICAgICAg
V1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1BY2Nlc3NlczsK
KyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1S
ZWhhc2hlczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2ln
bmVkPiBudW1SZW1vdmVzOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgc3RkOjphdG9t
aWM8dW5zaWduZWQ+IG51bVJlaW5zZXJ0czsKIAogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZh
cmlhYmxlcyBhcmUgb25seSBtb2RpZmllZCBpbiB0aGUgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCBt
ZXRob2Qgd2l0aGluIGEgbXV0ZXguCi0gICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyBpbnQg
bWF4Q29sbGlzaW9uczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1Db2xs
aXNpb25zOwotICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IGNvbGxpc2lvbkdyYXBo
WzQwOTZdOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgdW5zaWduZWQgbWF4Q29sbGlz
aW9uczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHVuc2lnbmVkIG51bUNvbGxpc2lv
bnM7CisgICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyB1bnNpZ25lZCBjb2xsaXNpb25HcmFw
aFs0MDk2XTsKIAotICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgcmVjb3Jk
Q29sbGlzaW9uQXRDb3VudChpbnQgY291bnQpOworICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCh1bnNpZ25lZCBjb3VudCk7CiAgICAg
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wU3RhdHMoKTsKICAgICB9Owog
CkBAIC00ODMsMTIgKzQ3OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgLy8gQWxsIGFj
Y2VzcyB0byBtX2l0ZXJhdG9ycyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIG1fbXV0ZXguCiAgICAg
ICAgIG11dGFibGUgY29uc3RfaXRlcmF0b3IqIG1faXRlcmF0b3JzOwogICAgICAgICAvLyBVc2Ug
T3duUHRyIHNvIEhhc2hUYWJsZSBjYW4gc3RpbGwgYmUgbWVtbW92ZSdkIG9yIG1lbWNweSdlZC4K
LSAgICAgICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8TXV0ZXg+IG1fbXV0ZXg7CisgICAgICAg
IG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPHN0ZDo6bXV0ZXg+IG1fbXV0ZXg7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgIHB1YmxpYzoKLSAgICAgICAg
bXV0YWJsZSBPd25QdHI8U3RhdHM+IG1fc3RhdHM7CisgICAgICAgIG11dGFibGUgc3RkOjp1bmlx
dWVfcHRyPFN0YXRzPiBtX3N0YXRzOwogI2VuZGlmCiAgICAgfTsKIApAQCAtNTM5LDcgKzUzNCw3
IEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICAsIG1fZGVsZXRlZENvdW50KDApCiAjaWYgQ0hF
Q0tfSEFTSFRBQkxFX0lURVJBVE9SUwogICAgICAgICAsIG1faXRlcmF0b3JzKDApCi0gICAgICAg
ICwgbV9tdXRleChzdGQ6Om1ha2VfdW5pcXVlPE11dGV4PigpKQorICAgICAgICAsIG1fbXV0ZXgo
c3RkOjptYWtlX3VuaXF1ZTxzdGQ6Om11dGV4PigpKQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCiAgICAgICAgICwgbV9zdGF0cyhzdGQ6Om1ha2VfdW5pcXVlPFN0
YXRzPigpKQpAQCAtNTk5LDEzICs1OTQsMTIgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgICAg
ICByZXR1cm4gMDsKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0lu
Y3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2Jl
Q291bnQgPSAwOworICAgICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAg
ICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxF
X1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAg
ICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIHdoaWxlICgx
KSB7CkBAIC02MzEsOCArNjI1LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAjZW5kaWYKIAogI2lmIERV
TVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQotICAgICAgICAgICAgKytwZXJUYWJsZVByb2Jl
Q291bnQ7Ci0gICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENvdW50KHBlclRh
YmxlUHJvYmVDb3VudCk7CisgICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENv
dW50KHByb2JlQ291bnQpOwogI2VuZGlmCiAKICAgICAgICAgICAgIGlmIChrID09IDApCkBAIC02
NTUsMTMgKzY0OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgaW50IGkgPSBoICYgc2l6
ZU1hc2s7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBhdG9taWNJbmNyZW1l
bnQoJkhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3Nlcyk7CisgICAgICAgICsrSGFzaFRhYmxlU3Rh
dHM6Om51bUFjY2Vzc2VzOwogICAgICAgICBpbnQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51
bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgog
CiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTY5NCw4ICs2ODYsNyBA
QCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVS
X1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAgICAgICAgICAgIG1f
c3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNvdW50KTsKKyAgICAg
ICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVDb3VudCk7CiAjZW5k
aWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTcxOCwxMyArNzA5LDEyIEBAIG5hbWVz
cGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAogI2lmIERVTVBfSEFT
SFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51
bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7
CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICAr
K21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0g
MDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTc1
Nyw4ICs3NDcsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAg
ICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNv
dW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVD
b3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTgxNCwxMyArODAz
LDEyIEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRh
YmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAg
ICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJv
YmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJM
RQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQ
cm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5
ID0gMDsKQEAgLTg1Myw4ICs4NDEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYg
RFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJv
YmVDb3VudDsKLSAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVy
VGFibGVQcm9iZUNvdW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0
Q291bnQocHJvYmVDb3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAg
LTkyNCw3ICs5MTEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgQVNTRVJUKCFsb29rdXBG
b3JXcml0aW5nKEV4dHJhY3Rvcjo6ZXh0cmFjdChlbnRyeSkpLnNlY29uZCk7CiAgICAgICAgIEFT
U0VSVCghaXNEZWxldGVkQnVja2V0KCoobG9va3VwRm9yV3JpdGluZyhFeHRyYWN0b3I6OmV4dHJh
Y3QoZW50cnkpKS5maXJzdCkpKTsKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBh
dG9taWNJbmNyZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHMpOworICAgICAgICAr
K0hhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZWluc2VydHM7CkBAIC05
OTQsNyArOTgxLDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdm9pZCBIYXNoVGFibGU8S2V5LCBW
YWx1ZSwgRXh0cmFjdG9yLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHMsIEtleVRyYWl0cz46OnJlbW92
ZShWYWx1ZVR5cGUqIHBvcykKICAgICB7CiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFMKLSAgICAg
ICAgYXRvbWljSW5jcmVtZW50KCZIYXNoVGFibGVTdGF0czo6bnVtUmVtb3Zlcyk7CisgICAgICAg
ICsrSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZW1vdmVzOwpAQCAtMTA5
MCw3ICsxMDc3LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFU
UwogICAgICAgICBpZiAob2xkVGFibGVTaXplICE9IDApCi0gICAgICAgICAgICBhdG9taWNJbmNy
ZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlcyk7CisgICAgICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1SZWhhc2hlczsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RB
VFNfUEVSX1RBQkxFCkBAIC0xMTQ3LDcgKzExMzQsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoc3RkOjptYWtlX3VuaXF1
ZTxNdXRleD4oKSkKKyAgICAgICAgLCBtX211dGV4KHN0ZDo6bWFrZV91bmlxdWU8c3RkOjptdXRl
eD4oKSkKICNlbmRpZgogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAg
ICAsIG1fc3RhdHMoc3RkOjptYWtlX3VuaXF1ZTxTdGF0cz4oKm90aGVyLm1fc3RhdHMpKQpAQCAt
MTI1Miw3ICsxMjM5LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUg
S2V5LCB0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgRXh0cmFjdG9yLCB0eXBlbmFtZSBIYXNoRnVu
Y3Rpb25zLCB0eXBlbmFtZSBUcmFpdHMsIHR5cGVuYW1lIEtleVRyYWl0cz4KICAgICB2b2lkIEhh
c2hUYWJsZTxLZXksIFZhbHVlLCBFeHRyYWN0b3IsIEhhc2hGdW5jdGlvbnMsIFRyYWl0cywgS2V5
VHJhaXRzPjo6aW52YWxpZGF0ZUl0ZXJhdG9ycygpCiAgICAgewotICAgICAgICBNdXRleExvY2tl
ciBsb2NrKCptX211dGV4KTsKKyAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxv
Y2soKm1fbXV0ZXgpOwogICAgICAgICBjb25zdF9pdGVyYXRvciogbmV4dDsKICAgICAgICAgZm9y
IChjb25zdF9pdGVyYXRvciogcCA9IG1faXRlcmF0b3JzOyBwOyBwID0gbmV4dCkgewogICAgICAg
ICAgICAgbmV4dCA9IHAtPm1fbmV4dDsKQEAgLTEyNzQsNyArMTI2MSw3IEBAIG5hbWVzcGFjZSBX
VEYgewogICAgICAgICBpZiAoIXRhYmxlKSB7CiAgICAgICAgICAgICBpdC0+bV9uZXh0ID0gMDsK
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIE11dGV4TG9ja2VyIGxvY2soKnRhYmxlLT5t
X211dGV4KTsKKyAgICAgICAgICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKCp0
YWJsZS0+bV9tdXRleCk7CiAgICAgICAgICAgICBBU1NFUlQodGFibGUtPm1faXRlcmF0b3JzICE9
IGl0KTsKICAgICAgICAgICAgIGl0LT5tX25leHQgPSB0YWJsZS0+bV9pdGVyYXRvcnM7CiAgICAg
ICAgICAgICB0YWJsZS0+bV9pdGVyYXRvcnMgPSBpdDsKQEAgLTEyOTYsNyArMTI4Myw3IEBAIG5h
bWVzcGFjZSBXVEYgewogICAgICAgICAgICAgQVNTRVJUKCFpdC0+bV9uZXh0KTsKICAgICAgICAg
ICAgIEFTU0VSVCghaXQtPm1fcHJldmlvdXMpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgTXV0ZXhMb2NrZXIgbG9jaygqaXQtPm1fdGFibGUtPm1fbXV0ZXgpOworICAgICAgICAgICAg
c3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2soKml0LT5tX3RhYmxlLT5tX211dGV4KTsK
ICAgICAgICAgICAgIGlmIChpdC0+bV9uZXh0KSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGl0
LT5tX25leHQtPm1fcHJldmlvdXMgPT0gaXQpOwogICAgICAgICAgICAgICAgIGl0LT5tX25leHQt
Pm1fcHJldmlvdXMgPSBpdC0+bV9wcmV2aW91czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL0F1ZGlvU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vQXVkaW9TZXNzaW9uLmgKaW5kZXggZWIxMjc3M2NiYTY1ZWM5ZWVjMzg3MWQwZGI2Yzlh
NjRmNTA5YTU5MC4uNGZmZjVhNjY4NDdiZTgyOGNmODAwNWIzZTJlNjNlMGFjNTEwNjZkNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmgKQEAgLTMwLDYg
KzMwLDcgQEAKIAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgor
I2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFt
SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1NvY2tldFN0cmVh
bUhhbmRsZS5oCmluZGV4IDhjMWE0ZTEzNDQzNjkyMjc0N2NiODgyYmRlYTczMDg2ZjEyMTdjY2Yu
LjU4NTVhYWQ0YmY0YjVmMmI2ZmU0ZTgzMTI4YjA5ZmIwMjYzYjkwYzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvU29ja2V0U3RyZWFtSGFuZGxlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9Tb2NrZXRTdHJlYW1IYW5kbGUu
aApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2xpZW50LmgiCiAj
aW5jbHVkZSAiU29ja2V0U3RyZWFtSGFuZGxlQmFzZS5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5Q
dHIuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIAogdHlwZWRlZiBz
dHJ1Y3QgX19DRkhUVFBNZXNzYWdlKiBDRkhUVFBNZXNzYWdlUmVmOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vV2luZG93TWVzc2FnZUJyb2FkY2FzdGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vV2luZG93TWVzc2FnZUJyb2FkY2FzdGVyLmgKaW5k
ZXggZDM2YzIzM2ZiNGY2MmJmNTg5MjJiNzdlNzA2NjA4NzQxYTZmMGM2MS4uYmM4ZjgyOGRjNGY2
YWExNTZlOTQ3ZjU0NWZkMDQzNDg3ODUzYmM0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vd2luL1dpbmRvd01lc3NhZ2VCcm9hZGNhc3Rlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3dpbi9XaW5kb3dNZXNzYWdlQnJvYWRjYXN0ZXIuaApAQCAtMzEsNiArMzEs
NyBAQAogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5o
PgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ3lj
bGVTb2x2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ3lj
bGVTb2x2ZXIuaAppbmRleCA1YmFjMjFlNDQ1MmVhZGZiZTgxYzUxNzkxNDUyYjFmOTQ2ODljY2I2
Li5mZDk1YTc0MjhjNjkyNzllMjUzYzE4OWYxYWMxZDBhMTg3ODhiYmQwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXNDeWNsZVNvbHZlci5o
CkBAIC0yMiw2ICsyMiw3IEBACiAKICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Jsb2NraW5nUmVzcG9uc2VN
YXAuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmgKaW5kZXgg
MTFhY2U3NTljMmYxZmRjNzZjODRiMmE3NzcxMzk0MDM2MzY2MWUxYi4uZjQ1MjlhZjRmNjlhOGZh
Y2UzNjYzODNiNDgwNzAxNDM3ZWY1ZThjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL0Jsb2NraW5nUmVzcG9uc2VNYXAuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQmxv
Y2tpbmdSZXNwb25zZU1hcC5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlIDxjb25kaXRp
b25fdmFyaWFibGU+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvTm9u
Y29weWFibGUuaD4KIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGNsYXNzIEJsb2NraW5nUmVzcG9u
c2VNYXAgewpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IDkyN2RkZTU1MThlZjYxZjgyNDkyNGY1ZDdmNjA5Yjc1Nzg1MTE1ZTYuLjY2Y2ZmYzBlMzNi
YjU1NmQxNWVhOTM5OTdmN2VjZmRiMzUyNTlmZGEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxNC0wMS0yNSAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIE1vZGVybml6ZSBI
YXNoVGFibGUgdGhyZWFkaW5nIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyNzYyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEV4cGxpY2l0bHkgaW5jbHVkZSBoZWFkZXJzIHRoYXQgdXNlZCB0byBi
ZSBicm91Z2h0IGluIGJ5IEhhc2hUYWJsZS5oCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9K
YXZhU2NyaXB0VGhyZWFkaW5nLmNwcDoKKwogMjAxNC0wMS0yNCAgRXJpYyBDYXJsc29uICA8ZXJp
Yy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBBZGQgUGhpbGlwIErD
pGdlbnN0ZWR0IHRvIHdhdGNoIGFuZCBjb250cmlidXRvciBsaXN0cy4KZGlmZiAtLWdpdCBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL0phdmFTY3JpcHRUaHJlYWRpbmcuY3BwIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvSmF2YVNjcmlwdFRocmVhZGluZy5jcHAKaW5kZXggNjZkZTE1NmM3ZjllYjEyYjQw
ZjJlZDQ2ZjdkOGQ5YTc3MjNmNWI5MC4uNWQ2NzNiODcwYWRkZTQ1YzVjNzBjNGJhNTJjNzkyN2Y1
ZjVlMWQ2MSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvSmF2YVNjcmlwdFRocmVh
ZGluZy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvSmF2YVNjcmlwdFRocmVhZGluZy5j
cHAKQEAgLTM2LDYgKzM2LDggQEAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDx3dGYv
QXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CisjaW5jbHVkZSA8d3RmL1Ro
cmVhZGluZy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmg+CiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgogCiBzdGF0aWMgY29uc3Qgc2l6ZV90IGphdmFTY3JpcHRUaHJlYWRz
Q291bnQgPSA0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222218</attachid>
            <date>2014-01-25 10:52:26 -0800</date>
            <delta_ts>2014-01-25 11:10:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127621-20140125105226.patch</filename>
            <type>text/plain</type>
            <size>17695</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNiNmZmMjJiODY0MmIzZjk5YjFlOGI1
NmUxMDgwOTE4ODY2MjE5ZTQuLjA2ODZlM2E3OTY5OTI2OTkyZjYxZjBjNmM1ZTk0MzliZWE5ZjI2
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDEtMjUgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNb2Rlcm5pemUgSGFzaFRhYmxlIHRocmVhZGlu
ZyBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
Mjc2MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
c2Ugc3RkOjptdXRleCBhbmQgc3RkOjphdG9taWMgaW5zdGVhZCBvZiBXVEYgdGhyZWFkaW5nIHBy
aW1pdGl2ZXMuCisKKyAgICAgICAgKiB3dGYvRHluYW1pY0Fubm90YXRpb25zLmg6CisgICAgICAg
IEluY2x1ZGUgUGxhdGZvcm0uaCBoZXJlIHNpbmNlIHRoaXMgZmlsZSByZWxpZXMgb24gVVNFIG1h
Y3Jvcy4KKworICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAoV1RGOjpIYXNo
VGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudCk6CisgICAgICAgIENoYW5nZSB0aGlz
IHRvIHRha2UgYW4gdW5zaWduZWQuCisKKyAgICAgICAgKFdURjo6SGFzaFRhYmxlU3RhdHM6OmR1
bXBTdGF0cyk6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAoV1RGOjpLZXlU
cmFpdHM+OjpIYXNoVGFibGUpOgorICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjpyZW1vdmUpOgor
ICAgICAgICAoV1RGOjpLZXlUcmFpdHM+OjppbnZhbGlkYXRlSXRlcmF0b3JzKToKKyAgICAgICAg
VXNlIGEgc2luZ2xlIHByb2JlIGNvdW50ZXIuCisKKyAgICAgICAgKFdURjo6YWRkSXRlcmF0b3Ip
OgorICAgICAgICAoV1RGOjpyZW1vdmVJdGVyYXRvcik6CisKIDIwMTQtMDEtMjQgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbl0gQ29udmVydCBzb21l
IE5NYWtlIGZpbGVzIHRvIE1TQnVpbGQgcHJvamVjdCBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDhhZmI3
NGVjOWFhZDk0MzgwMDYyMzNlZGFmMjg2ZTM1OGJkYmZmNDUuLjVkOTBlNzNkMzc1NmQzODQ3M2Q5
MGQxMzU2YmNmYWY4NTdjMjVkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0w
MS0yNSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIE1v
ZGVybml6ZSBIYXNoVGFibGUgdGhyZWFkaW5nIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzYyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cGxpY2l0bHkgaW5jbHVkZSBoZWFkZXJzIHRoYXQg
dXNlZCB0byBiZSBicm91Z2h0IGluIGJ5IEhhc2hUYWJsZS5oCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9BdWRpb1Nlc3Npb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Nv
Y2tldFN0cmVhbUhhbmRsZS5oOgorCiAyMDE0LTAxLTI0ICBEYW4gQmVybnN0ZWluICA8bWl0ekBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV2ZXJ0ZWQgcjE2Mjc2MC4gSXQgYnJva2UgbW9yZSB0aGlu
Z3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggMjcwMTM4MGU1ZTJhZDIwMGNiNWNiYTYyZjY2NGUzYWViMGIyZTMx
ZS4uMTcyMzY4MDNkZmI5NzIzNDlkNjI4YjQ4MDVhNDc0YzQ0ODllZTU5ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBh
cHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcgY29kZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NjIxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwbGljaXRs
eSBpbmNsdWRlIGhlYWRlcnMgdGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFzaFRhYmxl
LmgKKworICAgICAgICAqIFNoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmg6CisKIDIwMTQtMDEt
MjQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
S2l0MiBWaWV3IEdlc3R1cmVzIChTbWFydCBab29tKTogQ2FuJ3QgZG91YmxlLXRhcCB6b29tLW91
dCBvbiB0aGUgYm9keQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRHluYW1pY0Fubm90YXRp
b25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaAppbmRleCAzOGFjY2Uz
NWU2ODk2YmI5ODM3YjI0ZDhjMWE0Nzk4ZjUxM2EzZWJiLi4yZDVhNWE5ZTlhNWM1YzYzY2FkOTk0
YTViZDM3MTFiOGZlODQ3ZWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5u
b3RhdGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9EeW5hbWljQW5ub3RhdGlvbnMuaApAQCAt
MjcsNiArMjcsOCBAQAogI2lmbmRlZiBXVEZfRHluYW1pY0Fubm90YXRpb25zX2gKICNkZWZpbmUg
V1RGX0R5bmFtaWNBbm5vdGF0aW9uc19oCiAKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KKwog
LyogVGhpcyBmaWxlIGRlZmluZXMgZHluYW1pYyBhbm5vdGF0aW9ucyBmb3IgdXNlIHdpdGggZHlu
YW1pYyBhbmFseXNpcwogICogdG9vbCBzdWNoIGFzIFRocmVhZFNhbml0aXplciwgVmFsZ3JpbmQs
IGV0Yy4KICAqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwIGIvU291
cmNlL1dURi93dGYvSGFzaFRhYmxlLmNwcAppbmRleCBhNTc4ZjUyZmRkZDQxMjAyOGY4MmJmYzY1
NzgxYTYxNGNhZjY4ODBmLi40NThkZDUzMWZlODQ2YWUzMjQ2NGFlZTEyZjU5YzdmMWRhY2RkZmI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL0hhc2hUYWJsZS5jcHAKQEAgLTI3LDEzICsyNywxNCBAQCBuYW1lc3BhY2UgV1RGIHsK
IAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCiAKLWludCBIYXNoVGFibGVTdGF0czo6bnVtQWNj
ZXNzZXM7Ci1pbnQgSGFzaFRhYmxlU3RhdHM6Om51bUNvbGxpc2lvbnM7Ci1pbnQgSGFzaFRhYmxl
U3RhdHM6OmNvbGxpc2lvbkdyYXBoWzQwOTZdOwotaW50IEhhc2hUYWJsZVN0YXRzOjptYXhDb2xs
aXNpb25zOwotaW50IEhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlczsKLWludCBIYXNoVGFibGVT
dGF0czo6bnVtUmVtb3ZlczsKLWludCBIYXNoVGFibGVTdGF0czo6bnVtUmVpbnNlcnRzOworc3Rk
OjphdG9taWM8dW5zaWduZWQ+IEhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKK3N0ZDo6YXRv
bWljPHVuc2lnbmVkPiBIYXNoVGFibGVTdGF0czo6bnVtUmVoYXNoZXM7CitzdGQ6OmF0b21pYzx1
bnNpZ25lZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CitzdGQ6OmF0b21pYzx1bnNpZ25l
ZD4gSGFzaFRhYmxlU3RhdHM6Om51bVJlaW5zZXJ0czsKKwordW5zaWduZWQgSGFzaFRhYmxlU3Rh
dHM6Om51bUNvbGxpc2lvbnM7Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6Y29sbGlzaW9uR3Jh
cGhbNDA5Nl07Cit1bnNpZ25lZCBIYXNoVGFibGVTdGF0czo6bWF4Q29sbGlzaW9uczsKIAogc3Rh
dGljIHN0ZDo6bXV0ZXgmIGhhc2hUYWJsZVN0YXRzTXV0ZXgoKQogewpAQCAtNDYsNyArNDcsNyBA
QCBzdGF0aWMgc3RkOjptdXRleCYgaGFzaFRhYmxlU3RhdHNNdXRleCgpCiAgICAgcmV0dXJuICpt
dXRleDsKIH0KIAotdm9pZCBIYXNoVGFibGVTdGF0czo6cmVjb3JkQ29sbGlzaW9uQXRDb3VudChp
bnQgY291bnQpCit2b2lkIEhhc2hUYWJsZVN0YXRzOjpyZWNvcmRDb2xsaXNpb25BdENvdW50KHVu
c2lnbmVkIGNvdW50KQogewogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKGhh
c2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKQEAgLTYxLDE0ICs2MiwxNCBAQCB2b2lkIEhhc2hUYWJs
ZVN0YXRzOjpkdW1wU3RhdHMoKQogICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2Nr
KGhhc2hUYWJsZVN0YXRzTXV0ZXgoKSk7CiAKICAgICBkYXRhTG9nRigiXG5XVEY6Okhhc2hUYWJs
ZSBzdGF0aXN0aWNzXG5cbiIpOwotICAgIGRhdGFMb2dGKCIlZCBhY2Nlc3Nlc1xuIiwgbnVtQWNj
ZXNzZXMpOworICAgIGRhdGFMb2dGKCIldSBhY2Nlc3Nlc1xuIiwgbnVtQWNjZXNzZXMubG9hZCgp
KTsKICAgICBkYXRhTG9nRigiJWQgdG90YWwgY29sbGlzaW9ucywgYXZlcmFnZSAlLjJmIHByb2Jl
cyBwZXIgYWNjZXNzXG4iLCBudW1Db2xsaXNpb25zLCAxLjAgKiAobnVtQWNjZXNzZXMgKyBudW1D
b2xsaXNpb25zKSAvIG51bUFjY2Vzc2VzKTsKICAgICBkYXRhTG9nRigibG9uZ2VzdCBjb2xsaXNp
b24gY2hhaW46ICVkXG4iLCBtYXhDb2xsaXNpb25zKTsKLSAgICBmb3IgKGludCBpID0gMTsgaSA8
PSBtYXhDb2xsaXNpb25zOyBpKyspIHsKLSAgICAgICAgZGF0YUxvZ0YoIiAgJWQgbG9va3VwcyB3
aXRoIGV4YWN0bHkgJWQgY29sbGlzaW9ucyAoJS4yZiUlICwgJS4yZiUlIHdpdGggdGhpcyBtYW55
IG9yIG1vcmUpXG4iLCBjb2xsaXNpb25HcmFwaFtpXSwgaSwgMTAwLjAgKiAoY29sbGlzaW9uR3Jh
cGhbaV0gLSBjb2xsaXNpb25HcmFwaFtpKzFdKSAvIG51bUFjY2Vzc2VzLCAxMDAuMCAqIGNvbGxp
c2lvbkdyYXBoW2ldIC8gbnVtQWNjZXNzZXMpOworICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkg
PD0gbWF4Q29sbGlzaW9uczsgaSsrKSB7CisgICAgICAgIGRhdGFMb2dGKCIgICV1IGxvb2t1cHMg
d2l0aCBleGFjdGx5ICV1IGNvbGxpc2lvbnMgKCUuMmYlJSAsICUuMmYlJSB3aXRoIHRoaXMgbWFu
eSBvciBtb3JlKVxuIiwgY29sbGlzaW9uR3JhcGhbaV0sIGksIDEwMC4wICogKGNvbGxpc2lvbkdy
YXBoW2ldIC0gY29sbGlzaW9uR3JhcGhbaSsxXSkgLyBudW1BY2Nlc3NlcywgMTAwLjAgKiBjb2xs
aXNpb25HcmFwaFtpXSAvIG51bUFjY2Vzc2VzKTsKICAgICB9Ci0gICAgZGF0YUxvZ0YoIiVkIHJl
aGFzaGVzXG4iLCBudW1SZWhhc2hlcyk7Ci0gICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwg
bnVtUmVpbnNlcnRzKTsKKyAgICBkYXRhTG9nRigiJWQgcmVoYXNoZXNcbiIsIG51bVJlaGFzaGVz
LmxvYWQoKSk7CisgICAgZGF0YUxvZ0YoIiVkIHJlaW5zZXJ0c1xuIiwgbnVtUmVpbnNlcnRzLmxv
YWQoKSk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvSGFzaFRhYmxl
LmggYi9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAppbmRleCA3YWExOTE1YTJkOTA0OWFiMDY0
MThkNGMxOTJiZDdhNDNjNmMyNTdkLi44NTE5YWUzNjQ3YjZhODVmNmYwMzE2ZmVhZWRlNzYzZjFj
N2Y0ZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi9IYXNoVGFibGUuaApAQCAtMjIsNiArMjIsOCBAQAogI2lmbmRlZiBXVEZfSGFz
aFRhYmxlX2gKICNkZWZpbmUgV1RGX0hhc2hUYWJsZV9oCiAKKyNpbmNsdWRlIDxhdG9taWM+Cisj
aW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dHlwZV90cmFp
dHM+CiAjaW5jbHVkZSA8dXRpbGl0eT4KQEAgLTI5LDE1ICszMSw4IEBACiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgogI2luY2x1ZGUgPHd0
Zi9TdGRMaWJFeHRyYXMuaD4KLSNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8
d3RmL1ZhbHVlQ2hlY2suaD4KIAotI2lmbmRlZiBOREVCVUcKLS8vIFJlcXVpcmVkIGZvciBDSEVD
S19IQVNIVEFCTEVfSVRFUkFUT1JTLgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KLSNpbmNsdWRl
IDx3dGYvUGFzc093blB0ci5oPgotI2VuZGlmCi0KICNkZWZpbmUgRFVNUF9IQVNIVEFCTEVfU1RB
VFMgMAogI2RlZmluZSBEVU1QX0hBU0hUQUJMRV9TVEFUU19QRVJfVEFCTEUgMAogCkBAIC02Miwx
NyArNTcsMTcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICBzdHJ1Y3QgSGFzaFRhYmxlU3RhdHMg
ewogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgYWxsIGF0b21pY2FsbHkg
aW5jcmVtZW50ZWQgd2hlbiBtb2RpZmllZC4KLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGlj
IGludCBudW1BY2Nlc3NlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1S
ZWhhc2hlczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1SZW1vdmVzOwot
ICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IG51bVJlaW5zZXJ0czsKKyAgICAgICAg
V1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1BY2Nlc3NlczsK
KyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBudW1S
ZWhhc2hlczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHN0ZDo6YXRvbWljPHVuc2ln
bmVkPiBudW1SZW1vdmVzOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgc3RkOjphdG9t
aWM8dW5zaWduZWQ+IG51bVJlaW5zZXJ0czsKIAogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHZh
cmlhYmxlcyBhcmUgb25seSBtb2RpZmllZCBpbiB0aGUgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCBt
ZXRob2Qgd2l0aGluIGEgbXV0ZXguCi0gICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyBpbnQg
bWF4Q29sbGlzaW9uczsKLSAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIGludCBudW1Db2xs
aXNpb25zOwotICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgaW50IGNvbGxpc2lvbkdyYXBo
WzQwOTZdOworICAgICAgICBXVEZfRVhQT1JUREFUQSBzdGF0aWMgdW5zaWduZWQgbWF4Q29sbGlz
aW9uczsKKyAgICAgICAgV1RGX0VYUE9SVERBVEEgc3RhdGljIHVuc2lnbmVkIG51bUNvbGxpc2lv
bnM7CisgICAgICAgIFdURl9FWFBPUlREQVRBIHN0YXRpYyB1bnNpZ25lZCBjb2xsaXNpb25HcmFw
aFs0MDk2XTsKIAotICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgcmVjb3Jk
Q29sbGlzaW9uQXRDb3VudChpbnQgY291bnQpOworICAgICAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcmVjb3JkQ29sbGlzaW9uQXRDb3VudCh1bnNpZ25lZCBjb3VudCk7CiAgICAg
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wU3RhdHMoKTsKICAgICB9Owog
CkBAIC00ODMsMTIgKzQ3OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgLy8gQWxsIGFj
Y2VzcyB0byBtX2l0ZXJhdG9ycyBzaG91bGQgYmUgZ3VhcmRlZCB3aXRoIG1fbXV0ZXguCiAgICAg
ICAgIG11dGFibGUgY29uc3RfaXRlcmF0b3IqIG1faXRlcmF0b3JzOwogICAgICAgICAvLyBVc2Ug
T3duUHRyIHNvIEhhc2hUYWJsZSBjYW4gc3RpbGwgYmUgbWVtbW92ZSdkIG9yIG1lbWNweSdlZC4K
LSAgICAgICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8TXV0ZXg+IG1fbXV0ZXg7CisgICAgICAg
IG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPHN0ZDo6bXV0ZXg+IG1fbXV0ZXg7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgIHB1YmxpYzoKLSAgICAgICAg
bXV0YWJsZSBPd25QdHI8U3RhdHM+IG1fc3RhdHM7CisgICAgICAgIG11dGFibGUgc3RkOjp1bmlx
dWVfcHRyPFN0YXRzPiBtX3N0YXRzOwogI2VuZGlmCiAgICAgfTsKIApAQCAtNTM5LDcgKzUzNCw3
IEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICAsIG1fZGVsZXRlZENvdW50KDApCiAjaWYgQ0hF
Q0tfSEFTSFRBQkxFX0lURVJBVE9SUwogICAgICAgICAsIG1faXRlcmF0b3JzKDApCi0gICAgICAg
ICwgbV9tdXRleChzdGQ6Om1ha2VfdW5pcXVlPE11dGV4PigpKQorICAgICAgICAsIG1fbXV0ZXgo
c3RkOjptYWtlX3VuaXF1ZTxzdGQ6Om11dGV4PigpKQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCiAgICAgICAgICwgbV9zdGF0cyhzdGQ6Om1ha2VfdW5pcXVlPFN0
YXRzPigpKQpAQCAtNTk5LDEzICs1OTQsMTIgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgICAg
ICByZXR1cm4gMDsKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0lu
Y3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2Jl
Q291bnQgPSAwOworICAgICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAg
ICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxF
X1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAg
ICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIHdoaWxlICgx
KSB7CkBAIC02MzEsOCArNjI1LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAjZW5kaWYKIAogI2lmIERV
TVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQotICAgICAgICAgICAgKytwZXJUYWJsZVByb2Jl
Q291bnQ7Ci0gICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENvdW50KHBlclRh
YmxlUHJvYmVDb3VudCk7CisgICAgICAgICAgICBtX3N0YXRzLT5yZWNvcmRDb2xsaXNpb25BdENv
dW50KHByb2JlQ291bnQpOwogI2VuZGlmCiAKICAgICAgICAgICAgIGlmIChrID09IDApCkBAIC02
NTUsMTMgKzY0OCwxMiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgaW50IGkgPSBoICYgc2l6
ZU1hc2s7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBhdG9taWNJbmNyZW1l
bnQoJkhhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3Nlcyk7CisgICAgICAgICsrSGFzaFRhYmxlU3Rh
dHM6Om51bUFjY2Vzc2VzOwogICAgICAgICBpbnQgcHJvYmVDb3VudCA9IDA7CiAjZW5kaWYKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICArK21fc3RhdHMtPm51
bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0gMDsKICNlbmRpZgog
CiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTY5NCw4ICs2ODYsNyBA
QCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVS
X1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAgICAgICAgICAgIG1f
c3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNvdW50KTsKKyAgICAg
ICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVDb3VudCk7CiAjZW5k
aWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTcxOCwxMyArNzA5LDEyIEBAIG5hbWVz
cGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAogI2lmIERVTVBfSEFT
SFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRhYmxlU3RhdHM6Om51
bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJvYmVDb3VudCA9IDA7
CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAgICAr
K21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQcm9iZUNvdW50ID0g
MDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5ID0gMDsKQEAgLTc1
Nyw4ICs3NDcsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFC
TEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJvYmVDb3VudDsKLSAg
ICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVyVGFibGVQcm9iZUNv
dW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocHJvYmVD
b3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAgLTgxNCwxMyArODAz
LDEyIEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICBpbnQgaSA9IGggJiBzaXplTWFzazsKIAog
I2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTCi0gICAgICAgIGF0b21pY0luY3JlbWVudCgmSGFzaFRh
YmxlU3RhdHM6Om51bUFjY2Vzc2VzKTsKLSAgICAgICAgaW50IHByb2JlQ291bnQgPSAwOworICAg
ICAgICArK0hhc2hUYWJsZVN0YXRzOjpudW1BY2Nlc3NlczsKKyAgICAgICAgdW5zaWduZWQgcHJv
YmVDb3VudCA9IDA7CiAjZW5kaWYKIAogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJM
RQogICAgICAgICArK21fc3RhdHMtPm51bUFjY2Vzc2VzOwotICAgICAgICBpbnQgcGVyVGFibGVQ
cm9iZUNvdW50ID0gMDsKICNlbmRpZgogCiAgICAgICAgIFZhbHVlVHlwZSogZGVsZXRlZEVudHJ5
ID0gMDsKQEAgLTg1Myw4ICs4NDEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICNlbmRpZgogCiAjaWYg
RFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICAgICArK3BlclRhYmxlUHJv
YmVDb3VudDsKLSAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0Q291bnQocGVy
VGFibGVQcm9iZUNvdW50KTsKKyAgICAgICAgICAgIG1fc3RhdHMtPnJlY29yZENvbGxpc2lvbkF0
Q291bnQocHJvYmVDb3VudCk7CiAjZW5kaWYKIAogICAgICAgICAgICAgaWYgKGsgPT0gMCkKQEAg
LTkyNCw3ICs5MTEsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgQVNTRVJUKCFsb29rdXBG
b3JXcml0aW5nKEV4dHJhY3Rvcjo6ZXh0cmFjdChlbnRyeSkpLnNlY29uZCk7CiAgICAgICAgIEFT
U0VSVCghaXNEZWxldGVkQnVja2V0KCoobG9va3VwRm9yV3JpdGluZyhFeHRyYWN0b3I6OmV4dHJh
Y3QoZW50cnkpKS5maXJzdCkpKTsKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFUUwotICAgICAgICBh
dG9taWNJbmNyZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHMpOworICAgICAgICAr
K0hhc2hUYWJsZVN0YXRzOjpudW1SZWluc2VydHM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZWluc2VydHM7CkBAIC05
OTQsNyArOTgxLDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdm9pZCBIYXNoVGFibGU8S2V5LCBW
YWx1ZSwgRXh0cmFjdG9yLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHMsIEtleVRyYWl0cz46OnJlbW92
ZShWYWx1ZVR5cGUqIHBvcykKICAgICB7CiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFMKLSAgICAg
ICAgYXRvbWljSW5jcmVtZW50KCZIYXNoVGFibGVTdGF0czo6bnVtUmVtb3Zlcyk7CisgICAgICAg
ICsrSGFzaFRhYmxlU3RhdHM6Om51bVJlbW92ZXM7CiAjZW5kaWYKICNpZiBEVU1QX0hBU0hUQUJM
RV9TVEFUU19QRVJfVEFCTEUKICAgICAgICAgKyttX3N0YXRzLT5udW1SZW1vdmVzOwpAQCAtMTA5
MCw3ICsxMDc3LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICNpZiBEVU1QX0hBU0hUQUJMRV9TVEFU
UwogICAgICAgICBpZiAob2xkVGFibGVTaXplICE9IDApCi0gICAgICAgICAgICBhdG9taWNJbmNy
ZW1lbnQoJkhhc2hUYWJsZVN0YXRzOjpudW1SZWhhc2hlcyk7CisgICAgICAgICAgICArK0hhc2hU
YWJsZVN0YXRzOjpudW1SZWhhc2hlczsKICNlbmRpZgogCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RB
VFNfUEVSX1RBQkxFCkBAIC0xMTQ3LDcgKzExMzQsNyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoc3RkOjptYWtlX3VuaXF1
ZTxNdXRleD4oKSkKKyAgICAgICAgLCBtX211dGV4KHN0ZDo6bWFrZV91bmlxdWU8c3RkOjptdXRl
eD4oKSkKICNlbmRpZgogI2lmIERVTVBfSEFTSFRBQkxFX1NUQVRTX1BFUl9UQUJMRQogICAgICAg
ICAsIG1fc3RhdHMoc3RkOjptYWtlX3VuaXF1ZTxTdGF0cz4oKm90aGVyLm1fc3RhdHMpKQpAQCAt
MTI1Miw3ICsxMjM5LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUg
S2V5LCB0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgRXh0cmFjdG9yLCB0eXBlbmFtZSBIYXNoRnVu
Y3Rpb25zLCB0eXBlbmFtZSBUcmFpdHMsIHR5cGVuYW1lIEtleVRyYWl0cz4KICAgICB2b2lkIEhh
c2hUYWJsZTxLZXksIFZhbHVlLCBFeHRyYWN0b3IsIEhhc2hGdW5jdGlvbnMsIFRyYWl0cywgS2V5
VHJhaXRzPjo6aW52YWxpZGF0ZUl0ZXJhdG9ycygpCiAgICAgewotICAgICAgICBNdXRleExvY2tl
ciBsb2NrKCptX211dGV4KTsKKyAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxv
Y2soKm1fbXV0ZXgpOwogICAgICAgICBjb25zdF9pdGVyYXRvciogbmV4dDsKICAgICAgICAgZm9y
IChjb25zdF9pdGVyYXRvciogcCA9IG1faXRlcmF0b3JzOyBwOyBwID0gbmV4dCkgewogICAgICAg
ICAgICAgbmV4dCA9IHAtPm1fbmV4dDsKQEAgLTEyNzQsNyArMTI2MSw3IEBAIG5hbWVzcGFjZSBX
VEYgewogICAgICAgICBpZiAoIXRhYmxlKSB7CiAgICAgICAgICAgICBpdC0+bV9uZXh0ID0gMDsK
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIE11dGV4TG9ja2VyIGxvY2soKnRhYmxlLT5t
X211dGV4KTsKKyAgICAgICAgICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBsb2NrKCp0
YWJsZS0+bV9tdXRleCk7CiAgICAgICAgICAgICBBU1NFUlQodGFibGUtPm1faXRlcmF0b3JzICE9
IGl0KTsKICAgICAgICAgICAgIGl0LT5tX25leHQgPSB0YWJsZS0+bV9pdGVyYXRvcnM7CiAgICAg
ICAgICAgICB0YWJsZS0+bV9pdGVyYXRvcnMgPSBpdDsKQEAgLTEyOTYsNyArMTI4Myw3IEBAIG5h
bWVzcGFjZSBXVEYgewogICAgICAgICAgICAgQVNTRVJUKCFpdC0+bV9uZXh0KTsKICAgICAgICAg
ICAgIEFTU0VSVCghaXQtPm1fcHJldmlvdXMpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgTXV0ZXhMb2NrZXIgbG9jaygqaXQtPm1fdGFibGUtPm1fbXV0ZXgpOworICAgICAgICAgICAg
c3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGxvY2soKml0LT5tX3RhYmxlLT5tX211dGV4KTsK
ICAgICAgICAgICAgIGlmIChpdC0+bV9uZXh0KSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGl0
LT5tX25leHQtPm1fcHJldmlvdXMgPT0gaXQpOwogICAgICAgICAgICAgICAgIGl0LT5tX25leHQt
Pm1fcHJldmlvdXMgPSBpdC0+bV9wcmV2aW91czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL0RyYWdEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0YS5o
CmluZGV4IDhmYzAxNjMyOTQ3ZWMxZTJlYmQ2ZjMyZmVkMjZmN2Y1Y2EwM2QyN2MuLmFlOTEwNzk4
ODk0Mzk4MDU3YzAzMGJiNWVmNjg5NDQxYzc4ZWIwMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0RyYWdEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRHJh
Z0RhdGEuaApAQCAtNzQsNyArNzQsNyBAQCBlbnVtIERyYWdBcHBsaWNhdGlvbkZsYWdzIHsKIH07
CiAKICNpZiBQTEFURk9STShXSU4pCi10eXBlZGVmIEhhc2hNYXA8VUlOVCwgVmVjdG9yPFN0cmlu
Zz4+IERyYWdEYXRhTWFwOwordHlwZWRlZiBIYXNoTWFwPHVuc2lnbmVkLCBWZWN0b3I8U3RyaW5n
Pj4gRHJhZ0RhdGFNYXA7CiAjZW5kaWYKIAogY2xhc3MgRHJhZ0RhdGEgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9TZXNzaW9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb1Nlc3Npb24uaAppbmRleCBlYjEyNzczY2JhNjVlYzll
ZWMzODcxZDBkYjZjOWE2NGY1MDlhNTkwLi40ZmZmNWE2Njg0N2JlODI4Y2Y4MDA1YjNlMmU2M2Uw
YWM1MTA2NmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9BdWRp
b1Nlc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb1Nlc3Np
b24uaApAQCAtMzAsNiArMzAsNyBAQAogCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0
Zi9IYXNoU2V0Lmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
Zi9Tb2NrZXRTdHJlYW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y2YvU29ja2V0U3RyZWFtSGFuZGxlLmgKaW5kZXggOGMxYTRlMTM0NDM2OTIyNzQ3Y2I4ODJiZGVh
NzMwODZmMTIxN2NjZi4uNTg1NWFhZDRiZjRiNWYyYjZmZTRlODMxMjhiMDlmYjAyNjNiOTBjNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9Tb2NrZXRTdHJl
YW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1NvY2tl
dFN0cmVhbUhhbmRsZS5oCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSAiQXV0aGVudGljYXRp
b25DbGllbnQuaCIKICNpbmNsdWRlICJTb2NrZXRTdHJlYW1IYW5kbGVCYXNlLmgiCiAjaW5jbHVk
ZSA8d3RmL1JldGFpblB0ci5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5o
PgogCiB0eXBlZGVmIHN0cnVjdCBfX0NGSFRUUE1lc3NhZ2UqIENGSFRUUE1lc3NhZ2VSZWY7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9XaW5kb3dNZXNzYWdlQnJv
YWRjYXN0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9XaW5kb3dNZXNzYWdlQnJv
YWRjYXN0ZXIuaAppbmRleCBkMzZjMjMzZmI0ZjYyYmY1ODkyMmI3N2U3MDY2MDg3NDFhNmYwYzYx
Li5iYzhmODI4ZGM0ZjZhYTE1NmU5NDdmNTQ1ZmQwNDM0ODc4NTNiYzRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vV2luZG93TWVzc2FnZUJyb2FkY2FzdGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1dpbmRvd01lc3NhZ2VCcm9hZGNhc3Rlci5o
CkBAIC0zMSw2ICszMSw3IEBACiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9T
VkdSZXNvdXJjZXNDeWNsZVNvbHZlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9T
VkdSZXNvdXJjZXNDeWNsZVNvbHZlci5oCmluZGV4IDViYWMyMWU0NDUyZWFkZmJlODFjNTE3OTE0
NTJiMWY5NDY4OWNjYjYuLmZkOTVhNzQyOGM2OTI3OWUyNTNjMTg5ZjFhYzFkMGExODc4OGJiZDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ3lj
bGVTb2x2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNl
c0N5Y2xlU29sdmVyLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVOQUJMRShTVkcpCiAjaW5j
bHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQmxv
Y2tpbmdSZXNwb25zZU1hcC5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Jsb2NraW5nUmVzcG9u
c2VNYXAuaAppbmRleCAxMWFjZTc1OWMyZjFmZGM3NmM4NGIyYTc3NzEzOTQwMzYzNjYxZTFiLi5m
NDUyOWFmNGY2OWE4ZmFjZTM2NjM4M2I0ODA3MDE0MzdlZjVlOGM0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQmxvY2tpbmdSZXNwb25zZU1hcC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9CbG9ja2luZ1Jlc3BvbnNlTWFwLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lu
Y2x1ZGUgPGNvbmRpdGlvbl92YXJpYWJsZT4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgorI2lu
Y2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogY2xhc3Mg
QmxvY2tpbmdSZXNwb25zZU1hcCB7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggOTI3ZGRlNTUxOGVmNjFmODI0OTI0ZjVkN2Y2MDliNzU3ODUxMTVl
Ni4uNjZjZmZjMGUzM2JiNTU2ZDE1ZWE5Mzk5N2Y3ZWNmZGIzNTI1OWZkYSAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisy
MDE0LTAxLTI1ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgTW9kZXJuaXplIEhhc2hUYWJsZSB0aHJlYWRpbmcgY29kZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3NjIxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwbGljaXRseSBpbmNsdWRlIGhlYWRlcnMg
dGhhdCB1c2VkIHRvIGJlIGJyb3VnaHQgaW4gYnkgSGFzaFRhYmxlLmgKKworICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL0phdmFTY3JpcHRUaHJlYWRpbmcuY3BwOgorCiAyMDE0LTAxLTI0ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQu
IEFkZCBQaGlsaXAgSsOkZ2Vuc3RlZHQgdG8gd2F0Y2ggYW5kIGNvbnRyaWJ1dG9yIGxpc3RzLgpk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvSmF2YVNjcmlwdFRocmVhZGluZy5jcHAg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9KYXZhU2NyaXB0VGhyZWFkaW5nLmNwcAppbmRleCA2NmRl
MTU2YzdmOWViMTJiNDBmMmVkNDZmN2Q4ZDlhNzcyM2Y1YjkwLi41ZDY3M2I4NzBhZGRlNDVjNWM3
MGM0YmE1MmM3OTI3ZjVmNWUxZDYxIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9K
YXZhU2NyaXB0VGhyZWFkaW5nLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9KYXZhU2Ny
aXB0VGhyZWFkaW5nLmNwcApAQCAtMzYsNiArMzYsOCBAQAogI2luY2x1ZGUgPHN0ZGxpYi5oPgog
I2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZ1ByaW1pdGl2
ZXMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIHN0YXRpYyBjb25zdCBzaXplX3QgamF2
YVNjcmlwdFRocmVhZHNDb3VudCA9IDQ7Cg==
</data>
<flag name="review"
          id="246197"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>