<?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>80166</bug_id>
          
          <creation_ts>2012-03-02 09:06:33 -0800</creation_ts>
          <short_desc>Web Inspector: InspectorCounters mechanism should be thread-safe</short_desc>
          <delta_ts>2012-03-06 08:20:58 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>0</everconfirmed>
          <reporter name="Yury Semikhatsky">yurys</reporter>
          <assigned_to name="Yury Semikhatsky">yurys</assigned_to>
          <cc>abarth</cc>
    
    <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>japhet</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>569687</commentid>
    <comment_count>0</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-02 09:06:33 -0800</bug_when>
    <thetext>There are some counters which make sense for workers as well (e.g. event listener count) and since workers run in their own threads it should be safe to increment/decrement counters from there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569690</commentid>
    <comment_count>1</comment_count>
      <attachid>129910</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-02 09:08:57 -0800</bug_when>
    <thetext>Created attachment 129910
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569693</commentid>
    <comment_count>2</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-02 09:10:52 -0800</bug_when>
    <thetext>Dromaeo results for Chromium run
with the patch applied: http://dromaeo.com/?id=164681
and without it: http://dromaeo.com/?id=164673</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569704</commentid>
    <comment_count>3</comment_count>
      <attachid>129910</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-03-02 09:23:04 -0800</bug_when>
    <thetext>Comment on attachment 129910
Patch

Attachment 129910 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/11802009</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569707</commentid>
    <comment_count>4</comment_count>
      <attachid>129910</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-02 09:28:08 -0800</bug_when>
    <thetext>Comment on attachment 129910
Patch

Attachment 129910 did not pass win-ews (win):
Output: http://queues.webkit.org/results/11797038</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569709</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-03-02 09:29:59 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Dromaeo results for Chromium run
&gt; with the patch applied: http://dromaeo.com/?id=164681
&gt; and without it: http://dromaeo.com/?id=164673

So you are saying it got faster?

Sounds like you are breaking ews.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569710</commentid>
    <comment_count>6</comment_count>
      <attachid>129910</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-03-02 09:30:34 -0800</bug_when>
    <thetext>Comment on attachment 129910
Patch

r- for breaking build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570495</commentid>
    <comment_count>7</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-05 01:07:12 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #2)
&gt; &gt; Dromaeo results for Chromium run
&gt; &gt; with the patch applied: http://dromaeo.com/?id=164681
&gt; &gt; and without it: http://dromaeo.com/?id=164673
&gt; 
&gt; So you are saying it got faster?
&gt; 
Of cause not, it just one of the sampling errors. In two other runs the results were about the same:
http://dromaeo.com/?id=164676
http://dromaeo.com/?id=164678

&gt; Sounds like you are breaking ews.
Will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570612</commentid>
    <comment_count>8</comment_count>
      <attachid>130107</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-05 06:05:30 -0800</bug_when>
    <thetext>Created attachment 130107
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571862</commentid>
    <comment_count>9</comment_count>
      <attachid>130385</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-06 07:54:12 -0800</bug_when>
    <thetext>Created attachment 130385
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571878</commentid>
    <comment_count>10</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-03-06 08:20:58 -0800</bug_when>
    <thetext>Committed r109922: &lt;http://trac.webkit.org/changeset/109922&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129910</attachid>
            <date>2012-03-02 09:08:57 -0800</date>
            <delta_ts>2012-03-05 06:05:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80166-20120302210856.patch</filename>
            <type>text/plain</type>
            <size>12558</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzgyYzU0OWE4NGUwYWRh
YzVmZDdhMmYxMDI5M2UxNjBjMTQwNmNjZi4uNThlNmRkY2E2NjdiMDU0YWRmM2E0MjcyYjRmYjkz
MGEyNTk5NWI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAzLTAyICBZdXJ5
IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEluc3BlY3RvckNvdW50ZXJzIG1lY2hhbmlzbSBzaG91bGQgYmUgdGhyZWFkLXNhZmUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMTY2CisKKyAg
ICAgICAgTWFrZSBJbnNwZWN0b3JDb3VudGVycyBpbnN0YW5jZSB0aHJlYWQgbG9jYWwgc28gdGhh
dCBpdCBjYW4gYmUgc2FmZWx5IGFjY2Vzc2VkCisgICAgICAgIGluIHdvcmtlcnMuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0V2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjpK
U0V2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjp+SlNF
dmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0
ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcjo6VjhB
YnN0cmFjdEV2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhBYnN0cmFjdEV2ZW50
TGlzdGVuZXI6On5WOEFic3RyYWN0RXZlbnRMaXN0ZW5lcik6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpEb2N1bWVudCk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6fkRvY3VtZW50KToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6Ok5vZGUpOgorICAgICAgICAqIGRvbS9Ob2RlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6On5Ob2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ291bnRlcnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ291bnRl
cnM6Okluc3BlY3RvckNvdW50ZXJzKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvdW50
ZXJzOjpjb3VudGVyVmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3RvckNvdW50ZXJzLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6aW5j
cmVtZW50Q291bnRlcik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6ZGVj
cmVtZW50Q291bnRlcik6CisgICAgICAgIChJbnNwZWN0b3JDb3VudGVycyk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6c2V0SGVhcFNpemVTdGF0aXN0aWMpOgorICAgICAgICAq
IHBsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFk
R2xvYmFsRGF0YTo6VGhyZWFkR2xvYmFsRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRH
bG9iYWxEYXRhOjpkZXN0cm95KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRh
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFRocmVhZEdsb2JhbERhdGEpOgorICAg
ICAgICAoV2ViQ29yZTo6VGhyZWFkR2xvYmFsRGF0YTo6aW5zcGVjdG9yQ291bnRlcnMpOgorCiAy
MDEyLTAzLTAyICBLYXVzdHViaCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgog
CiAgICAgICAgIFJlbmFtZSBET01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZDZmZGY3N2U1
ZjM2MjNlYjFhODg4ZjNjYmQ2NmRiNjI2ZDE4ZmQ2OC4uZjQwOTYyMzI5Yjg0ZDFiNDFlMzdlZDQz
MzNiMzA4ZmQzMjNlYjhkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2
ZW50TGlzdGVuZXIuY3BwCkBAIC00NSwxMiArNDUsMTYgQEAgSlNFdmVudExpc3RlbmVyOjpKU0V2
ZW50TGlzdGVuZXIoSlNPYmplY3QqIGZ1bmN0aW9uLCBKU09iamVjdCogd3JhcHBlciwgYm9vbCBp
c0EKICAgICAgICAgbV9qc0Z1bmN0aW9uLnNldE1heUJlTnVsbCgqbV9pc29sYXRlZFdvcmxkLT5n
bG9iYWxEYXRhKCksIHdyYXBwZXIsIGZ1bmN0aW9uKTsKICAgICBlbHNlCiAgICAgICAgIEFTU0VS
VCghZnVuY3Rpb24pOworI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgSW5zcGVjdG9yQ291bnRl
cnM6OmluY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNv
dW50ZXIpOworI2VuZGlmCiB9CiAKIEpTRXZlbnRMaXN0ZW5lcjo6fkpTRXZlbnRMaXN0ZW5lcigp
CiB7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKICAgICBJbnNwZWN0b3JDb3VudGVyczo6ZGVjcmVt
ZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291bnRlcik7Cisj
ZW5kaWYKIH0KIAogSlNPYmplY3QqIEpTRXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpTRnVuY3Rp
b24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggOWM1NjQ0
MGM0OGE0MjEzMzc2NDk2NTdkZTRlNWY5ZDQyNmNmZDM1Mi4uYTM4YmQ3YzAxM2FmNzU5NjA0ZjQw
NmQ2OTkzYTA4MmExN2VkNzEzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1Y4QWJzdHJhY3RFdmVudExpc3RlbmVyLmNwcApAQCAtNTgsNyArNTgsOSBAQCBWOEFi
c3RyYWN0RXZlbnRMaXN0ZW5lcjo6VjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIoYm9vbCBpc0F0dHJp
YnV0ZSwgY29uc3QgV29ybGRDbwogICAgICwgbV9pc0F0dHJpYnV0ZShpc0F0dHJpYnV0ZSkKICAg
ICAsIG1fd29ybGRDb250ZXh0KHdvcmxkQ29udGV4dCkKIHsKLSAgICBJbnNwZWN0b3JDb3VudGVy
czo6aW5jcmVtZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291
bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3VudGVyczo6Y3Vy
cmVudCgpLmluY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5l
ckNvdW50ZXIpOworI2VuZGlmCiB9CiAKIFY4QWJzdHJhY3RFdmVudExpc3RlbmVyOjp+VjhBYnN0
cmFjdEV2ZW50TGlzdGVuZXIoKQpAQCAtNjksNyArNzEsOSBAQCBWOEFic3RyYWN0RXZlbnRMaXN0
ZW5lcjo6flY4QWJzdHJhY3RFdmVudExpc3RlbmVyKCkKICAgICAgICAgVjhFdmVudExpc3RlbmVy
TGlzdDo6Y2xlYXJXcmFwcGVyKGxpc3RlbmVyLCBtX2lzQXR0cmlidXRlKTsKICAgICB9CiAgICAg
ZGlzcG9zZUxpc3RlbmVyT2JqZWN0KCk7Ci0gICAgSW5zcGVjdG9yQ291bnRlcnM6OmRlY3JlbWVu
dENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpOworI2lm
IEVOQUJMRShJTlNQRUNUT1IpCisgICAgSW5zcGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKS5kZWNy
ZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50ZXJzOjpKU0V2ZW50TGlzdGVuZXJDb3VudGVyKTsK
KyNlbmRpZgogfQogCiB2b2lkIFY4QWJzdHJhY3RFdmVudExpc3RlbmVyOjpoYW5kbGVFdmVudChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFdmVudCogZXZlbnQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rv
Y3VtZW50LmNwcAppbmRleCBlMDZhYmNkZGNkOTcxMTQyYjM2NWI4MDQ2MzA3MTc1ZGNmZmEyY2Iw
Li43NzU2YzBjOWVlZmIxOGUzOTgwNjUwYjNiMDc2ZmZkZWM4NWFlYzBmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5jcHAKQEAgLTUwNyw3ICs1MDcsOSBAQCBEb2N1bWVudDo6RG9jdW1lbnQoRnJhbWUq
IGZyYW1lLCBjb25zdCBLVVJMJiB1cmwsIGJvb2wgaXNYSFRNTCwgYm9vbCBpc0hUTUwpCiAgICAg
c3RhdGljIGludCBkb2NJRCA9IDA7CiAgICAgbV9kb2NJRCA9IGRvY0lEKys7CiAgICAgCi0gICAg
SW5zcGVjdG9yQ291bnRlcnM6OmluY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkRv
Y3VtZW50Q291bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3Vu
dGVyczo6Y3VycmVudCgpLmluY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkRvY3Vt
ZW50Q291bnRlcik7CisjZW5kaWYKIH0KIAogc3RhdGljIHZvaWQgaGlzdG9ncmFtTXV0YXRpb25F
dmVudFVzYWdlKGNvbnN0IHVuc2lnbmVkIHNob3J0JiBsaXN0ZW5lclR5cGVzKQpAQCAtNTg1LDcg
KzU4Nyw5IEBAIERvY3VtZW50Ojp+RG9jdW1lbnQoKQogICAgIGlmIChoYXNSYXJlRGF0YSgpKQog
ICAgICAgICBjbGVhclJhcmVEYXRhKCk7CiAKLSAgICBJbnNwZWN0b3JDb3VudGVyczo6ZGVjcmVt
ZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6RG9jdW1lbnRDb3VudGVyKTsKKyNpZiBFTkFC
TEUoSU5TUEVDVE9SKQorICAgIEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkuZGVjcmVtZW50
Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6RG9jdW1lbnRDb3VudGVyKTsKKyNlbmRpZgogfQog
CiB2b2lkIERvY3VtZW50OjpyZW1vdmVkTGFzdFJlZigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4
IDE5ODZkNGU5ZGViY2VjZThiYWFlYzhlNTA4NmYxNmVkZmRkYjIyMWQuLjhhZmQ0OGY1NDUwY2I2
ZDUwYmU1MTYxYTYxY2FiNjI3ZDdjYmQzZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xNDg0
LDcgKzE0ODQsOSBAQCBpbmxpbmUgTm9kZTo6Tm9kZShEb2N1bWVudCogZG9jdW1lbnQsIENvbnN0
cnVjdGlvblR5cGUgdHlwZSkKICNpZiAhZGVmaW5lZChOREVCVUcpIHx8IChkZWZpbmVkKERVTVBf
Tk9ERV9TVEFUSVNUSUNTKSAmJiBEVU1QX05PREVfU1RBVElTVElDUykKICAgICB0cmFja0ZvckRl
YnVnZ2luZygpOwogI2VuZGlmCi0gICAgSW5zcGVjdG9yQ291bnRlcnM6OmluY3JlbWVudENvdW50
ZXIoSW5zcGVjdG9yQ291bnRlcnM6Ok5vZGVDb3VudGVyKTsKKyNpZiBFTkFCTEUoSU5TUEVDVE9S
KQorICAgIEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkuaW5jcmVtZW50Q291bnRlcihJbnNw
ZWN0b3JDb3VudGVyczo6Tm9kZUNvdW50ZXIpOworI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAppbmRleCBmNWFhYzhhOWU5MGQyMWYxMzNiNGMyOTE3ZDc5
NTgxMjliMzBhNmY3Li5lNzE2OTAwMjQ3NDU4ZmY5NmY0ZGUzOGU0Yzk1MmE4MWZlYjE4ODhmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL05vZGUuY3BwCkBAIC00MDYsNyArNDA2LDkgQEAgTm9kZTo6fk5vZGUoKQogICAgIGlm
IChkb2MpCiAgICAgICAgIGRvYy0+Z3VhcmREZXJlZigpOwogCi0gICAgSW5zcGVjdG9yQ291bnRl
cnM6OmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6Ok5vZGVDb3VudGVyKTsKKyNp
ZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkuZGVj
cmVtZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6Tm9kZUNvdW50ZXIpOworI2VuZGlmCiB9
CiAKIHZvaWQgTm9kZTo6c2V0RG9jdW1lbnQoRG9jdW1lbnQqIGRvY3VtZW50KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb3VudGVycy5jcHAKaW5kZXggNzA2OTcwNzdi
M2I2MTcwMTVhOTNhNjc4YTIxOWU3NDIwZjQzMzNlMi4uZDQ0ZGYxNjMxMjhlMTNiOThkMmEyOWZk
MmE2NDhkNWMzMTM4MzVmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvdW50ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ291bnRlcnMuY3BwCkBAIC0zMCwxNiArMzAsMjYgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkluc3BlY3RvckNvdW50ZXJzLmgiCisjaW5jbHVkZSAiVGhyZWFkR2xvYmFs
RGF0YS5oIgogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1pbnQgSW5zcGVjdG9yQ291bnRlcnM6OnNfY291bnRlcnNbQ291bnRlclR5cGVMZW5ndGhdOwor
SW5zcGVjdG9yQ291bnRlcnM6Okluc3BlY3RvckNvdW50ZXJzKCkKK3sKKyAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IENvdW50ZXJUeXBlTGVuZ3RoOyBpKyspCisgICAgICAgIG1fY291bnRlcnNb
aV0gPSAwOworfQogCiBpbnQgSW5zcGVjdG9yQ291bnRlcnM6OmNvdW50ZXJWYWx1ZShDb3VudGVy
VHlwZSB0eXBlKQogewotICAgIHJldHVybiBzX2NvdW50ZXJzW3R5cGVdOworICAgIHJldHVybiBt
X2NvdW50ZXJzW3R5cGVdOworfQorCitJbnNwZWN0b3JDb3VudGVycyYgSW5zcGVjdG9yQ291bnRl
cnM6OmN1cnJlbnQoKQoreworICAgIHJldHVybiB0aHJlYWRHbG9iYWxEYXRhKCkuaW5zcGVjdG9y
Q291bnRlcnMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMuaAppbmRleCAwM2RjMTEwNzIyYWEyODhiZjAw
Y2FkZjI5YjI1MDUyODU0MWQ2ODBlLi5hNThiZmEzZmU5OWJkYTE3NzlkNTE4MzUzN2I3NWRhNmZl
OTY3MmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291
bnRlcnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMu
aApAQCAtMzEsNiArMzEsNyBAQAogI2lmbmRlZiBJbnNwZWN0b3JDb3VudGVyc19oCiAjZGVmaW5l
IEluc3BlY3RvckNvdW50ZXJzX2gKIAorI2lmIEVOQUJMRShJTlNQRUNUT1IpCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIGNsYXNzIEluc3BlY3RvckNvdW50ZXJzIHsKQEAgLTQxLDMzICs0MiwyOCBA
QCBwdWJsaWM6CiAgICAgICAgIEpTRXZlbnRMaXN0ZW5lckNvdW50ZXIsCiAgICAgICAgIENvdW50
ZXJUeXBlTGVuZ3RoCiAgICAgfTsKKyAgICBJbnNwZWN0b3JDb3VudGVycygpOwogCi0gICAgc3Rh
dGljIGlubGluZSB2b2lkIGluY3JlbWVudENvdW50ZXIoQ291bnRlclR5cGUgdHlwZSkKKyAgICBp
bmxpbmUgdm9pZCBpbmNyZW1lbnRDb3VudGVyKENvdW50ZXJUeXBlIHR5cGUpCiAgICAgewotI2lm
IEVOQUJMRShJTlNQRUNUT1IpCi0gICAgICAgICsrc19jb3VudGVyc1t0eXBlXTsKLSNlbmRpZgor
ICAgICAgICArK21fY291bnRlcnNbdHlwZV07CiAgICAgfQogCi0gICAgc3RhdGljIGlubGluZSB2
b2lkIGRlY3JlbWVudENvdW50ZXIoQ291bnRlclR5cGUgdHlwZSkKKyAgICBpbmxpbmUgdm9pZCBk
ZWNyZW1lbnRDb3VudGVyKENvdW50ZXJUeXBlIHR5cGUpCiAgICAgewotI2lmIEVOQUJMRShJTlNQ
RUNUT1IpCi0gICAgICAgIC0tc19jb3VudGVyc1t0eXBlXTsKLSNlbmRpZgorICAgICAgICAtLW1f
Y291bnRlcnNbdHlwZV07CiAgICAgfQogCi0jaWYgRU5BQkxFKElOU1BFQ1RPUikKLSAgICBzdGF0
aWMgaW50IGNvdW50ZXJWYWx1ZShDb3VudGVyVHlwZSk7Ci0jZW5kaWYKKyAgICBpbnQgY291bnRl
clZhbHVlKENvdW50ZXJUeXBlKTsKKworICAgIHN0YXRpYyBJbnNwZWN0b3JDb3VudGVycyYgY3Vy
cmVudCgpOwogCiBwcml2YXRlOgotICAgIEluc3BlY3RvckNvdW50ZXJzKCk7CiAKLSNpZiBFTkFC
TEUoSU5TUEVDVE9SKQotICAgIHN0YXRpYyBpbnQgc19jb3VudGVyc1tDb3VudGVyVHlwZUxlbmd0
aF07Ci0jZW5kaWYKKyAgICBpbnQgbV9jb3VudGVyc1tDb3VudGVyVHlwZUxlbmd0aF07CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKKyNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQog
I2VuZGlmIC8vICFkZWZpbmVkKEluc3BlY3RvckNvdW50ZXJzX2gpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKaW5kZXggZWQ3ZDE0
M2Q1ZjYyN2Y4MTExN2Q2M2E1ODk5NzE5OGU4MjAxMzZmZC4uOGM3MTA5YTg2Zjk3MjE1YWYxZmI2
YjQ4NWYxNDA1MTBlZTljMzgwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcApAQCAtMzkwLDEwICszOTAsMTEgQEAgdm9pZCBJ
bnNwZWN0b3JUaW1lbGluZUFnZW50OjpzZXRIZWFwU2l6ZVN0YXRpc3RpYyhJbnNwZWN0b3JPYmpl
Y3QqIHJlY29yZCkKICAgICByZWNvcmQtPnNldE51bWJlcigidG90YWxIZWFwU2l6ZSIsIHRvdGFs
SGVhcFNpemUpOwogCiAgICAgaWYgKG1fc3RhdGUtPmdldEJvb2xlYW4oVGltZWxpbmVBZ2VudFN0
YXRlOjppbmNsdWRlTWVtb3J5RGV0YWlscykpIHsKKyAgICAgICAgSW5zcGVjdG9yQ291bnRlcnMm
IGluc3BlY3RvckNvdW50ZXJzID0gSW5zcGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKTsKICAgICAg
ICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gY291bnRlcnMgPSBJbnNwZWN0b3JPYmplY3Q6OmNy
ZWF0ZSgpOwotICAgICAgICBjb3VudGVycy0+c2V0TnVtYmVyKCJub2RlcyIsIEluc3BlY3RvckNv
dW50ZXJzOjpjb3VudGVyVmFsdWUoSW5zcGVjdG9yQ291bnRlcnM6Ok5vZGVDb3VudGVyKSk7Ci0g
ICAgICAgIGNvdW50ZXJzLT5zZXROdW1iZXIoImRvY3VtZW50cyIsIEluc3BlY3RvckNvdW50ZXJz
Ojpjb3VudGVyVmFsdWUoSW5zcGVjdG9yQ291bnRlcnM6OkRvY3VtZW50Q291bnRlcikpOwotICAg
ICAgICBjb3VudGVycy0+c2V0TnVtYmVyKCJqc0V2ZW50TGlzdGVuZXJzIiwgSW5zcGVjdG9yQ291
bnRlcnM6OmNvdW50ZXJWYWx1ZShJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291
bnRlcikpOworICAgICAgICBjb3VudGVycy0+c2V0TnVtYmVyKCJub2RlcyIsIGluc3BlY3RvckNv
dW50ZXJzLmNvdW50ZXJWYWx1ZShJbnNwZWN0b3JDb3VudGVyczo6Tm9kZUNvdW50ZXIpKTsKKyAg
ICAgICAgY291bnRlcnMtPnNldE51bWJlcigiZG9jdW1lbnRzIiwgaW5zcGVjdG9yQ291bnRlcnMu
Y291bnRlclZhbHVlKEluc3BlY3RvckNvdW50ZXJzOjpEb2N1bWVudENvdW50ZXIpKTsKKyAgICAg
ICAgY291bnRlcnMtPnNldE51bWJlcigianNFdmVudExpc3RlbmVycyIsIGluc3BlY3RvckNvdW50
ZXJzLmNvdW50ZXJWYWx1ZShJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291bnRl
cikpOwogICAgICAgICByZWNvcmQtPnNldE9iamVjdCgiY291bnRlcnMiLCBjb3VudGVycy5yZWxl
YXNlKCkpOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Ro
cmVhZEdsb2JhbERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFs
RGF0YS5jcHAKaW5kZXggMTY2ZWI0N2JhY2I0MDk0ZDZkZDI5ZjJiNDFjOTc0ZGVkNzM0ODlmYi4u
YjVmMTMyMzI4ZjVmNTI4MWY3NTE4NTkzMzdjZWM3ZWNhNTlhN2EyZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKIAog
I2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgor
I2luY2x1ZGUgIkluc3BlY3RvckNvdW50ZXJzLmgiCiAjaW5jbHVkZSAiVGhyZWFkVGltZXJzLmgi
CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvVW51c2VkUGFyYW0u
aD4KQEAgLTcwLDYgKzcxLDkgQEAgVGhyZWFkR2xvYmFsRGF0YTo6VGhyZWFkR2xvYmFsRGF0YSgp
CiAjaWYgUExBVEZPUk0oTUFDKQogICAgICwgbV9jYWNoZWRDb252ZXJ0ZXJURUMoYWRvcHRQdHIo
bmV3IFRFQ0NvbnZlcnRlcldyYXBwZXIpKQogI2VuZGlmCisjaWYgRU5BQkxFKElOU1BFQ1RPUikK
KyAgICAsIG1faW5zcGVjdG9yQ291bnRlcnMoYWRvcHRQdHIobmV3IEluc3BlY3RvckNvdW50ZXJz
KCkpKQorI2VuZGlmCiB7CiAgICAgLy8gVGhpcyBjb25zdHJ1Y3RvciB3aWxsIGhhdmUgYmVlbiBj
YWxsZWQgb24gdGhlIG1haW4gdGhyZWFkIGJlZm9yZSBiZWluZyBjYWxsZWQgb24KICAgICAvLyBh
bnkgb3RoZXIgdGhyZWFkLCBhbmQgaXMgb25seSBjYWxsZWQgb25jZSBwZXIgdGhyZWFkIC0gdGhp
cyBtYWtlcyB0aGlzIGEgY29udmVuaWVudApAQCAtOTMsNiArOTcsMTAgQEAgdm9pZCBUaHJlYWRH
bG9iYWxEYXRhOjpkZXN0cm95KCkKICAgICBtX2NhY2hlZENvbnZlcnRlcklDVS5jbGVhcigpOwog
I2VuZGlmCiAKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIG1faW5zcGVjdG9yQ291bnRlcnMu
Y2xlYXIoKTsKKyNlbmRpZgorCiAgICAgbV9ldmVudE5hbWVzLmNsZWFyKCk7CiAgICAgbV90aHJl
YWRUaW1lcnMuY2xlYXIoKTsKICAgICBtX3htbFR5cGVSZWdFeHAuY2xlYXIoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuaAppbmRleCBiYjlmMWE4ZTFjYjMzYThj
ZDVhZjU4NGM3YmM0MTQ5ZTg3YWVjZDZmLi5iNjA3ODZhNjUxNWFmYmMwZTMzYzA2NDBmNzdmNTRm
NmE3MzlkYzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9i
YWxEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5o
CkBAIC00Miw2ICs0Miw3IEBAIHVzaW5nIFdURjo6VGhyZWFkU3BlY2lmaWM7CiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKICAgICBjbGFzcyBFdmVudE5hbWVzOworICAgIGNsYXNzIEluc3BlY3RvckNv
dW50ZXJzOwogICAgIGNsYXNzIFRocmVhZFRpbWVyczsKICAgICBjbGFzcyBYTUxNSU1FVHlwZVJl
Z0V4cDsKIApAQCAtNjcsNiArNjgsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBU
RUNDb252ZXJ0ZXJXcmFwcGVyJiBjYWNoZWRDb252ZXJ0ZXJURUMoKSB7IHJldHVybiAqbV9jYWNo
ZWRDb252ZXJ0ZXJURUM7IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICAg
ICAgSW5zcGVjdG9yQ291bnRlcnMmIGluc3BlY3RvckNvdW50ZXJzKCkgeyByZXR1cm4gKm1faW5z
cGVjdG9yQ291bnRlcnM7IH0KKyNlbmRpZgorCiAgICAgcHJpdmF0ZToKICAgICAgICAgT3duUHRy
PEV2ZW50TmFtZXM+IG1fZXZlbnROYW1lczsKICAgICAgICAgT3duUHRyPFRocmVhZFRpbWVycz4g
bV90aHJlYWRUaW1lcnM7CkBAIC04NCw2ICs4OSwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIE93blB0cjxURUNDb252ZXJ0ZXJXcmFwcGVyPiBtX2NhY2hlZENvbnZlcnRlclRFQzsK
ICNlbmRpZgogCisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICAgICAgT3duUHRyPEluc3BlY3Rv
ckNvdW50ZXJzPiBtX2luc3BlY3RvckNvdW50ZXJzOworI2VuZGlmCisKICNpZiBFTkFCTEUoV09S
S0VSUykKICAgICAgICAgc3RhdGljIFRocmVhZFNwZWNpZmljPFRocmVhZEdsb2JhbERhdGE+KiBz
dGF0aWNEYXRhOwogI2Vsc2UK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130107</attachid>
            <date>2012-03-05 06:05:30 -0800</date>
            <delta_ts>2012-03-06 07:54:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80166-20120305180527.patch</filename>
            <type>text/plain</type>
            <size>12748</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzgyYzU0OWE4NGUwYWRh
YzVmZDdhMmYxMDI5M2UxNjBjMTQwNmNjZi4uNThlNmRkY2E2NjdiMDU0YWRmM2E0MjcyYjRmYjkz
MGEyNTk5NWI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAzLTAyICBZdXJ5
IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEluc3BlY3RvckNvdW50ZXJzIG1lY2hhbmlzbSBzaG91bGQgYmUgdGhyZWFkLXNhZmUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMTY2CisKKyAg
ICAgICAgTWFrZSBJbnNwZWN0b3JDb3VudGVycyBpbnN0YW5jZSB0aHJlYWQgbG9jYWwgc28gdGhh
dCBpdCBjYW4gYmUgc2FmZWx5IGFjY2Vzc2VkCisgICAgICAgIGluIHdvcmtlcnMuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0V2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjpK
U0V2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjp+SlNF
dmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0
ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcjo6VjhB
YnN0cmFjdEV2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhBYnN0cmFjdEV2ZW50
TGlzdGVuZXI6On5WOEFic3RyYWN0RXZlbnRMaXN0ZW5lcik6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpEb2N1bWVudCk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6fkRvY3VtZW50KToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6Ok5vZGUpOgorICAgICAgICAqIGRvbS9Ob2RlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6On5Ob2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ291bnRlcnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ291bnRl
cnM6Okluc3BlY3RvckNvdW50ZXJzKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvdW50
ZXJzOjpjb3VudGVyVmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3RvckNvdW50ZXJzLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6aW5j
cmVtZW50Q291bnRlcik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6ZGVj
cmVtZW50Q291bnRlcik6CisgICAgICAgIChJbnNwZWN0b3JDb3VudGVycyk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6c2V0SGVhcFNpemVTdGF0aXN0aWMpOgorICAgICAgICAq
IHBsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFk
R2xvYmFsRGF0YTo6VGhyZWFkR2xvYmFsRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRH
bG9iYWxEYXRhOjpkZXN0cm95KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRh
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFRocmVhZEdsb2JhbERhdGEpOgorICAg
ICAgICAoV2ViQ29yZTo6VGhyZWFkR2xvYmFsRGF0YTo6aW5zcGVjdG9yQ291bnRlcnMpOgorCiAy
MDEyLTAzLTAyICBLYXVzdHViaCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgog
CiAgICAgICAgIFJlbmFtZSBET01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZDZmZGY3N2U1
ZjM2MjNlYjFhODg4ZjNjYmQ2NmRiNjI2ZDE4ZmQ2OC4uYmZiM2RkMzE2NGIwNDc0ZWE2MWQ5YTRl
MGJkZGNiZWJlZWI4M2Q0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2
ZW50TGlzdGVuZXIuY3BwCkBAIC00NSwxMiArNDUsMTYgQEAgSlNFdmVudExpc3RlbmVyOjpKU0V2
ZW50TGlzdGVuZXIoSlNPYmplY3QqIGZ1bmN0aW9uLCBKU09iamVjdCogd3JhcHBlciwgYm9vbCBp
c0EKICAgICAgICAgbV9qc0Z1bmN0aW9uLnNldE1heUJlTnVsbCgqbV9pc29sYXRlZFdvcmxkLT5n
bG9iYWxEYXRhKCksIHdyYXBwZXIsIGZ1bmN0aW9uKTsKICAgICBlbHNlCiAgICAgICAgIEFTU0VS
VCghZnVuY3Rpb24pOwotICAgIEluc3BlY3RvckNvdW50ZXJzOjppbmNyZW1lbnRDb3VudGVyKElu
c3BlY3RvckNvdW50ZXJzOjpKU0V2ZW50TGlzdGVuZXJDb3VudGVyKTsKKyNpZiBFTkFCTEUoSU5T
UEVDVE9SKQorICAgIEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkuaW5jcmVtZW50Q291bnRl
cihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291bnRlcik7CisjZW5kaWYKIH0K
IAogSlNFdmVudExpc3RlbmVyOjp+SlNFdmVudExpc3RlbmVyKCkKIHsKLSAgICBJbnNwZWN0b3JD
b3VudGVyczo6ZGVjcmVtZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3Rl
bmVyQ291bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3VudGVy
czo6Y3VycmVudCgpLmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRM
aXN0ZW5lckNvdW50ZXIpOworI2VuZGlmCiB9CiAKIEpTT2JqZWN0KiBKU0V2ZW50TGlzdGVuZXI6
OmluaXRpYWxpemVKU0Z1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKSBjb25zdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhBYnN0cmFjdEV2ZW50TGlzdGVu
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhBYnN0cmFjdEV2ZW50TGlzdGVu
ZXIuY3BwCmluZGV4IDljNTY0NDBjNDhhNDIxMzM3NjQ5NjU3ZGU0ZTVmOWQ0MjZjZmQzNTIuLmEz
OGJkN2MwMTNhZjc1OTYwNGY0MDZkNjk5M2EwODJhMTdlZDcxMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QWJzdHJhY3RFdmVudExpc3RlbmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5jcHAKQEAg
LTU4LDcgKzU4LDkgQEAgVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXI6OlY4QWJzdHJhY3RFdmVudExp
c3RlbmVyKGJvb2wgaXNBdHRyaWJ1dGUsIGNvbnN0IFdvcmxkQ28KICAgICAsIG1faXNBdHRyaWJ1
dGUoaXNBdHRyaWJ1dGUpCiAgICAgLCBtX3dvcmxkQ29udGV4dCh3b3JsZENvbnRleHQpCiB7Ci0g
ICAgSW5zcGVjdG9yQ291bnRlcnM6OmluY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6
OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpOworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgSW5z
cGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKS5pbmNyZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50
ZXJzOjpKU0V2ZW50TGlzdGVuZXJDb3VudGVyKTsKKyNlbmRpZgogfQogCiBWOEFic3RyYWN0RXZl
bnRMaXN0ZW5lcjo6flY4QWJzdHJhY3RFdmVudExpc3RlbmVyKCkKQEAgLTY5LDcgKzcxLDkgQEAg
VjhBYnN0cmFjdEV2ZW50TGlzdGVuZXI6On5WOEFic3RyYWN0RXZlbnRMaXN0ZW5lcigpCiAgICAg
ICAgIFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmNsZWFyV3JhcHBlcihsaXN0ZW5lciwgbV9pc0F0dHJp
YnV0ZSk7CiAgICAgfQogICAgIGRpc3Bvc2VMaXN0ZW5lck9iamVjdCgpOwotICAgIEluc3BlY3Rv
ckNvdW50ZXJzOjpkZWNyZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50ZXJzOjpKU0V2ZW50TGlz
dGVuZXJDb3VudGVyKTsKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIEluc3BlY3RvckNvdW50
ZXJzOjpjdXJyZW50KCkuZGVjcmVtZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVu
dExpc3RlbmVyQ291bnRlcik7CisjZW5kaWYKIH0KIAogdm9pZCBWOEFic3RyYWN0RXZlbnRMaXN0
ZW5lcjo6aGFuZGxlRXZlbnQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXZlbnQq
IGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggZTA2YWJjZGRjZDk3MTE0MmIzNjVi
ODA0NjMwNzE3NWRjZmZhMmNiMC4uNzc1NmMwYzllZWZiMThlMzk4MDY1MGIzYjA3NmZmZGVjODVh
ZWMwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC01MDcsNyArNTA3LDkgQEAgRG9jdW1l
bnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3QgS1VSTCYgdXJsLCBib29sIGlzWEhUTUws
IGJvb2wgaXNIVE1MKQogICAgIHN0YXRpYyBpbnQgZG9jSUQgPSAwOwogICAgIG1fZG9jSUQgPSBk
b2NJRCsrOwogICAgIAotICAgIEluc3BlY3RvckNvdW50ZXJzOjppbmNyZW1lbnRDb3VudGVyKElu
c3BlY3RvckNvdW50ZXJzOjpEb2N1bWVudENvdW50ZXIpOworI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CisgICAgSW5zcGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKS5pbmNyZW1lbnRDb3VudGVyKEluc3Bl
Y3RvckNvdW50ZXJzOjpEb2N1bWVudENvdW50ZXIpOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2b2lk
IGhpc3RvZ3JhbU11dGF0aW9uRXZlbnRVc2FnZShjb25zdCB1bnNpZ25lZCBzaG9ydCYgbGlzdGVu
ZXJUeXBlcykKQEAgLTU4NSw3ICs1ODcsOSBAQCBEb2N1bWVudDo6fkRvY3VtZW50KCkKICAgICBp
ZiAoaGFzUmFyZURhdGEoKSkKICAgICAgICAgY2xlYXJSYXJlRGF0YSgpOwogCi0gICAgSW5zcGVj
dG9yQ291bnRlcnM6OmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkRvY3VtZW50
Q291bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3VudGVyczo6
Y3VycmVudCgpLmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6OkRvY3VtZW50Q291
bnRlcik7CisjZW5kaWYKIH0KIAogdm9pZCBEb2N1bWVudDo6cmVtb3ZlZExhc3RSZWYoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuaAppbmRleCAxOTg2ZDRlOWRlYmNlY2U4YmFhZWM4ZTUwODZmMTZlZGZkZGIy
MjFkLi44YWZkNDhmNTQ1MGNiNmQ1MGJlNTE2MWE2MWNhYjYyN2Q3Y2JkM2U4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaApAQCAtMTQ4NCw3ICsxNDg0LDkgQEAgaW5saW5lIE5vZGU6Ok5vZGUoRG9jdW1l
bnQqIGRvY3VtZW50LCBDb25zdHJ1Y3Rpb25UeXBlIHR5cGUpCiAjaWYgIWRlZmluZWQoTkRFQlVH
KSB8fCAoZGVmaW5lZChEVU1QX05PREVfU1RBVElTVElDUykgJiYgRFVNUF9OT0RFX1NUQVRJU1RJ
Q1MpCiAgICAgdHJhY2tGb3JEZWJ1Z2dpbmcoKTsKICNlbmRpZgotICAgIEluc3BlY3RvckNvdW50
ZXJzOjppbmNyZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50ZXJzOjpOb2RlQ291bnRlcik7Cisj
aWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCgpLmlu
Y3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6Ok5vZGVDb3VudGVyKTsKKyNlbmRpZgog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKaW5kZXggZjVhYWM4YTll
OTBkMjFmMTMzYjRjMjkxN2Q3OTU4MTI5YjMwYTZmNy4uZTcxNjkwMDI0NzQ1OGZmOTZmNGRlMzhl
NGM5NTJhODFmZWIxODg4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcApAQCAtNDA2LDcgKzQwNiw5IEBAIE5v
ZGU6On5Ob2RlKCkKICAgICBpZiAoZG9jKQogICAgICAgICBkb2MtPmd1YXJkRGVyZWYoKTsKIAot
ICAgIEluc3BlY3RvckNvdW50ZXJzOjpkZWNyZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50ZXJz
OjpOb2RlQ291bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBJbnNwZWN0b3JDb3Vu
dGVyczo6Y3VycmVudCgpLmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9yQ291bnRlcnM6Ok5vZGVD
b3VudGVyKTsKKyNlbmRpZgogfQogCiB2b2lkIE5vZGU6OnNldERvY3VtZW50KERvY3VtZW50KiBk
b2N1bWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
b3VudGVycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMu
Y3BwCmluZGV4IDcwNjk3MDc3YjNiNjE3MDE1YTkzYTY3OGEyMTllNzQyMGY0MzMzZTIuLmQ0NGRm
MTYzMTI4ZTEzYjk4ZDJhMjlmZDJhNjQ4ZDVjMzEzODM1ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb3VudGVycy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmNwcApAQCAtMzAsMTYgKzMwLDI2IEBACiAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDb3VudGVycy5oIgorI2lu
Y2x1ZGUgIlRocmVhZEdsb2JhbERhdGEuaCIKIAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotaW50IEluc3BlY3RvckNvdW50ZXJzOjpzX2NvdW50ZXJzW0Nv
dW50ZXJUeXBlTGVuZ3RoXTsKK0luc3BlY3RvckNvdW50ZXJzOjpJbnNwZWN0b3JDb3VudGVycygp
Cit7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBDb3VudGVyVHlwZUxlbmd0aDsgaSsrKQor
ICAgICAgICBtX2NvdW50ZXJzW2ldID0gMDsKK30KIAogaW50IEluc3BlY3RvckNvdW50ZXJzOjpj
b3VudGVyVmFsdWUoQ291bnRlclR5cGUgdHlwZSkKIHsKLSAgICByZXR1cm4gc19jb3VudGVyc1t0
eXBlXTsKKyAgICByZXR1cm4gbV9jb3VudGVyc1t0eXBlXTsKK30KKworSW5zcGVjdG9yQ291bnRl
cnMmIEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkKK3sKKyAgICByZXR1cm4gdGhyZWFkR2xv
YmFsRGF0YSgpLmluc3BlY3RvckNvdW50ZXJzKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb3VudGVy
cy5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmgKaW5kZXgg
MDNkYzExMDcyMmFhMjg4YmYwMGNhZGYyOWIyNTA1Mjg1NDFkNjgwZS4uYTU4YmZhM2ZlOTliZGEx
Nzc5ZDUxODM1MzdiNzVkYTZmZTk2NzJkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckNvdW50ZXJzLmgKQEAgLTMxLDYgKzMxLDcgQEAKICNpZm5kZWYgSW5zcGVjdG9y
Q291bnRlcnNfaAogI2RlZmluZSBJbnNwZWN0b3JDb3VudGVyc19oCiAKKyNpZiBFTkFCTEUoSU5T
UEVDVE9SKQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBJbnNwZWN0b3JDb3VudGVycyB7
CkBAIC00MSwzMyArNDIsMjggQEAgcHVibGljOgogICAgICAgICBKU0V2ZW50TGlzdGVuZXJDb3Vu
dGVyLAogICAgICAgICBDb3VudGVyVHlwZUxlbmd0aAogICAgIH07CisgICAgSW5zcGVjdG9yQ291
bnRlcnMoKTsKIAotICAgIHN0YXRpYyBpbmxpbmUgdm9pZCBpbmNyZW1lbnRDb3VudGVyKENvdW50
ZXJUeXBlIHR5cGUpCisgICAgaW5saW5lIHZvaWQgaW5jcmVtZW50Q291bnRlcihDb3VudGVyVHlw
ZSB0eXBlKQogICAgIHsKLSNpZiBFTkFCTEUoSU5TUEVDVE9SKQotICAgICAgICArK3NfY291bnRl
cnNbdHlwZV07Ci0jZW5kaWYKKyAgICAgICAgKyttX2NvdW50ZXJzW3R5cGVdOwogICAgIH0KIAot
ICAgIHN0YXRpYyBpbmxpbmUgdm9pZCBkZWNyZW1lbnRDb3VudGVyKENvdW50ZXJUeXBlIHR5cGUp
CisgICAgaW5saW5lIHZvaWQgZGVjcmVtZW50Q291bnRlcihDb3VudGVyVHlwZSB0eXBlKQogICAg
IHsKLSNpZiBFTkFCTEUoSU5TUEVDVE9SKQotICAgICAgICAtLXNfY291bnRlcnNbdHlwZV07Ci0j
ZW5kaWYKKyAgICAgICAgLS1tX2NvdW50ZXJzW3R5cGVdOwogICAgIH0KIAotI2lmIEVOQUJMRShJ
TlNQRUNUT1IpCi0gICAgc3RhdGljIGludCBjb3VudGVyVmFsdWUoQ291bnRlclR5cGUpOwotI2Vu
ZGlmCisgICAgaW50IGNvdW50ZXJWYWx1ZShDb3VudGVyVHlwZSk7CisKKyAgICBzdGF0aWMgSW5z
cGVjdG9yQ291bnRlcnMmIGN1cnJlbnQoKTsKIAogcHJpdmF0ZToKLSAgICBJbnNwZWN0b3JDb3Vu
dGVycygpOwogCi0jaWYgRU5BQkxFKElOU1BFQ1RPUikKLSAgICBzdGF0aWMgaW50IHNfY291bnRl
cnNbQ291bnRlclR5cGVMZW5ndGhdOwotI2VuZGlmCisgICAgaW50IG1fY291bnRlcnNbQ291bnRl
clR5cGVMZW5ndGhdOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCisjZW5kaWYgLy8g
RU5BQkxFKElOU1BFQ1RPUikKICNlbmRpZiAvLyAhZGVmaW5lZChJbnNwZWN0b3JDb3VudGVyc19o
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5l
QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdl
bnQuY3BwCmluZGV4IGVkN2QxNDNkNWY2MjdmODExMTdkNjNhNTg5OTcxOThlODIwMTM2ZmQuLjhj
NzEwOWE4NmY5NzIxNWFmMWZiNmI0ODVmMTQwNTEwZWU5YzM4MGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKQEAgLTM5MCwx
MCArMzkwLDExIEBAIHZvaWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6c2V0SGVhcFNpemVTdGF0
aXN0aWMoSW5zcGVjdG9yT2JqZWN0KiByZWNvcmQpCiAgICAgcmVjb3JkLT5zZXROdW1iZXIoInRv
dGFsSGVhcFNpemUiLCB0b3RhbEhlYXBTaXplKTsKIAogICAgIGlmIChtX3N0YXRlLT5nZXRCb29s
ZWFuKFRpbWVsaW5lQWdlbnRTdGF0ZTo6aW5jbHVkZU1lbW9yeURldGFpbHMpKSB7CisgICAgICAg
IEluc3BlY3RvckNvdW50ZXJzJiBpbnNwZWN0b3JDb3VudGVycyA9IEluc3BlY3RvckNvdW50ZXJz
OjpjdXJyZW50KCk7CiAgICAgICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGNvdW50ZXJzID0g
SW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKTsKLSAgICAgICAgY291bnRlcnMtPnNldE51bWJlcigi
bm9kZXMiLCBJbnNwZWN0b3JDb3VudGVyczo6Y291bnRlclZhbHVlKEluc3BlY3RvckNvdW50ZXJz
OjpOb2RlQ291bnRlcikpOwotICAgICAgICBjb3VudGVycy0+c2V0TnVtYmVyKCJkb2N1bWVudHMi
LCBJbnNwZWN0b3JDb3VudGVyczo6Y291bnRlclZhbHVlKEluc3BlY3RvckNvdW50ZXJzOjpEb2N1
bWVudENvdW50ZXIpKTsKLSAgICAgICAgY291bnRlcnMtPnNldE51bWJlcigianNFdmVudExpc3Rl
bmVycyIsIEluc3BlY3RvckNvdW50ZXJzOjpjb3VudGVyVmFsdWUoSW5zcGVjdG9yQ291bnRlcnM6
OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpKTsKKyAgICAgICAgY291bnRlcnMtPnNldE51bWJlcigi
bm9kZXMiLCBpbnNwZWN0b3JDb3VudGVycy5jb3VudGVyVmFsdWUoSW5zcGVjdG9yQ291bnRlcnM6
Ok5vZGVDb3VudGVyKSk7CisgICAgICAgIGNvdW50ZXJzLT5zZXROdW1iZXIoImRvY3VtZW50cyIs
IGluc3BlY3RvckNvdW50ZXJzLmNvdW50ZXJWYWx1ZShJbnNwZWN0b3JDb3VudGVyczo6RG9jdW1l
bnRDb3VudGVyKSk7CisgICAgICAgIGNvdW50ZXJzLT5zZXROdW1iZXIoImpzRXZlbnRMaXN0ZW5l
cnMiLCBpbnNwZWN0b3JDb3VudGVycy5jb3VudGVyVmFsdWUoSW5zcGVjdG9yQ291bnRlcnM6OkpT
RXZlbnRMaXN0ZW5lckNvdW50ZXIpKTsKICAgICAgICAgcmVjb3JkLT5zZXRPYmplY3QoImNvdW50
ZXJzIiwgY291bnRlcnMucmVsZWFzZSgpKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RocmVhZEdsb2JhbERhdGEuY3BwCmluZGV4IDE2NmViNDdiYWNiNDA5NGQ2ZGQyOWYy
YjQxYzk3NGRlZDczNDg5ZmIuLmI1ZjEzMjMyOGY1ZjUyODFmNzUxODU5MzM3Y2VjN2VjYTU5YTdh
MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuY3BwCkBA
IC0yOSw2ICsyOSw3IEBACiAKICNpbmNsdWRlICJET01JbXBsZW1lbnRhdGlvbi5oIgogI2luY2x1
ZGUgIkV2ZW50TmFtZXMuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JDb3VudGVycy5oIgogI2luY2x1
ZGUgIlRocmVhZFRpbWVycy5oIgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVk
ZSA8d3RmL1VudXNlZFBhcmFtLmg+CkBAIC03MCw2ICs3MSw5IEBAIFRocmVhZEdsb2JhbERhdGE6
OlRocmVhZEdsb2JhbERhdGEoKQogI2lmIFBMQVRGT1JNKE1BQykKICAgICAsIG1fY2FjaGVkQ29u
dmVydGVyVEVDKGFkb3B0UHRyKG5ldyBURUNDb252ZXJ0ZXJXcmFwcGVyKSkKICNlbmRpZgorI2lm
IEVOQUJMRShJTlNQRUNUT1IpCisgICAgLCBtX2luc3BlY3RvckNvdW50ZXJzKGFkb3B0UHRyKG5l
dyBJbnNwZWN0b3JDb3VudGVycygpKSkKKyNlbmRpZgogewogICAgIC8vIFRoaXMgY29uc3RydWN0
b3Igd2lsbCBoYXZlIGJlZW4gY2FsbGVkIG9uIHRoZSBtYWluIHRocmVhZCBiZWZvcmUgYmVpbmcg
Y2FsbGVkIG9uCiAgICAgLy8gYW55IG90aGVyIHRocmVhZCwgYW5kIGlzIG9ubHkgY2FsbGVkIG9u
Y2UgcGVyIHRocmVhZCAtIHRoaXMgbWFrZXMgdGhpcyBhIGNvbnZlbmllbnQKQEAgLTkzLDYgKzk3
LDEwIEBAIHZvaWQgVGhyZWFkR2xvYmFsRGF0YTo6ZGVzdHJveSgpCiAgICAgbV9jYWNoZWRDb252
ZXJ0ZXJJQ1UuY2xlYXIoKTsKICNlbmRpZgogCisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBt
X2luc3BlY3RvckNvdW50ZXJzLmNsZWFyKCk7CisjZW5kaWYKKwogICAgIG1fZXZlbnROYW1lcy5j
bGVhcigpOwogICAgIG1fdGhyZWFkVGltZXJzLmNsZWFyKCk7CiAgICAgbV94bWxUeXBlUmVnRXhw
LmNsZWFyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9i
YWxEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRhLmgKaW5k
ZXggYmI5ZjFhOGUxY2IzM2E4Y2Q1YWY1ODRjN2JjNDE0OWU4N2FlY2Q2Zi4uYjYwNzg2YTY1MTVh
ZmJjMGUzM2MwNjQwZjc3ZjU0ZjZhNzM5ZGM3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1RocmVhZEdsb2JhbERhdGEuaApAQCAtNDIsNiArNDIsNyBAQCB1c2luZyBXVEY6OlRocmVhZFNw
ZWNpZmljOwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgRXZlbnROYW1lczsKKyAg
ICBjbGFzcyBJbnNwZWN0b3JDb3VudGVyczsKICAgICBjbGFzcyBUaHJlYWRUaW1lcnM7CiAgICAg
Y2xhc3MgWE1MTUlNRVR5cGVSZWdFeHA7CiAKQEAgLTY3LDYgKzY4LDEwIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgVEVDQ29udmVydGVyV3JhcHBlciYgY2FjaGVkQ29udmVydGVyVEVD
KCkgeyByZXR1cm4gKm1fY2FjaGVkQ29udmVydGVyVEVDOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJM
RShJTlNQRUNUT1IpCisgICAgICAgIEluc3BlY3RvckNvdW50ZXJzJiBpbnNwZWN0b3JDb3VudGVy
cygpIHsgcmV0dXJuICptX2luc3BlY3RvckNvdW50ZXJzOyB9CisjZW5kaWYKKwogICAgIHByaXZh
dGU6CiAgICAgICAgIE93blB0cjxFdmVudE5hbWVzPiBtX2V2ZW50TmFtZXM7CiAgICAgICAgIE93
blB0cjxUaHJlYWRUaW1lcnM+IG1fdGhyZWFkVGltZXJzOwpAQCAtODQsNiArODksMTAgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBPd25QdHI8VEVDQ29udmVydGVyV3JhcHBlcj4gbV9j
YWNoZWRDb252ZXJ0ZXJURUM7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAg
ICAgIE93blB0cjxJbnNwZWN0b3JDb3VudGVycz4gbV9pbnNwZWN0b3JDb3VudGVyczsKKyNlbmRp
ZgorCiAjaWYgRU5BQkxFKFdPUktFUlMpCiAgICAgICAgIHN0YXRpYyBUaHJlYWRTcGVjaWZpYzxU
aHJlYWRHbG9iYWxEYXRhPiogc3RhdGljRGF0YTsKICNlbHNlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130385</attachid>
            <date>2012-03-06 07:54:12 -0800</date>
            <delta_ts>2012-03-06 07:58:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80166-20120306195410.patch</filename>
            <type>text/plain</type>
            <size>15335</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzgyYzU0OWE4NGUwYWRh
YzVmZDdhMmYxMDI5M2UxNjBjMTQwNmNjZi4uNThlNmRkY2E2NjdiMDU0YWRmM2E0MjcyYjRmYjkz
MGEyNTk5NWI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAzLTAyICBZdXJ5
IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEluc3BlY3RvckNvdW50ZXJzIG1lY2hhbmlzbSBzaG91bGQgYmUgdGhyZWFkLXNhZmUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMTY2CisKKyAg
ICAgICAgTWFrZSBJbnNwZWN0b3JDb3VudGVycyBpbnN0YW5jZSB0aHJlYWQgbG9jYWwgc28gdGhh
dCBpdCBjYW4gYmUgc2FmZWx5IGFjY2Vzc2VkCisgICAgICAgIGluIHdvcmtlcnMuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0V2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjpK
U0V2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6SlNFdmVudExpc3RlbmVyOjp+SlNF
dmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0
ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcjo6VjhB
YnN0cmFjdEV2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhBYnN0cmFjdEV2ZW50
TGlzdGVuZXI6On5WOEFic3RyYWN0RXZlbnRMaXN0ZW5lcik6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpEb2N1bWVudCk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6fkRvY3VtZW50KToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6Ok5vZGUpOgorICAgICAgICAqIGRvbS9Ob2RlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6On5Ob2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ291bnRlcnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ291bnRl
cnM6Okluc3BlY3RvckNvdW50ZXJzKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvdW50
ZXJzOjpjb3VudGVyVmFsdWUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3RvckNvdW50ZXJzLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6aW5j
cmVtZW50Q291bnRlcik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb3VudGVyczo6ZGVj
cmVtZW50Q291bnRlcik6CisgICAgICAgIChJbnNwZWN0b3JDb3VudGVycyk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6c2V0SGVhcFNpemVTdGF0aXN0aWMpOgorICAgICAgICAq
IHBsYXRmb3JtL1RocmVhZEdsb2JhbERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFk
R2xvYmFsRGF0YTo6VGhyZWFkR2xvYmFsRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRH
bG9iYWxEYXRhOjpkZXN0cm95KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaHJlYWRHbG9iYWxEYXRh
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFRocmVhZEdsb2JhbERhdGEpOgorICAg
ICAgICAoV2ViQ29yZTo6VGhyZWFkR2xvYmFsRGF0YTo6aW5zcGVjdG9yQ291bnRlcnMpOgorCiAy
MDEyLTAzLTAyICBLYXVzdHViaCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgog
CiAgICAgICAgIFJlbmFtZSBET01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNFdmVudExpc3RlbmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggZDZmZGY3N2U1
ZjM2MjNlYjFhODg4ZjNjYmQ2NmRiNjI2ZDE4ZmQ2OC4uNTgzNjkwMDVmZDI1Y2ViMjZhMzRmZDJm
YmM4ZTkxYTcwM2Y4MDE3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNFdmVudExpc3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2
ZW50TGlzdGVuZXIuY3BwCkBAIC00NSwxMiArNDUsMTYgQEAgSlNFdmVudExpc3RlbmVyOjpKU0V2
ZW50TGlzdGVuZXIoSlNPYmplY3QqIGZ1bmN0aW9uLCBKU09iamVjdCogd3JhcHBlciwgYm9vbCBp
c0EKICAgICAgICAgbV9qc0Z1bmN0aW9uLnNldE1heUJlTnVsbCgqbV9pc29sYXRlZFdvcmxkLT5n
bG9iYWxEYXRhKCksIHdyYXBwZXIsIGZ1bmN0aW9uKTsKICAgICBlbHNlCiAgICAgICAgIEFTU0VS
VCghZnVuY3Rpb24pOwotICAgIEluc3BlY3RvckNvdW50ZXJzOjppbmNyZW1lbnRDb3VudGVyKElu
c3BlY3RvckNvdW50ZXJzOjpKU0V2ZW50TGlzdGVuZXJDb3VudGVyKTsKKyNpZiBFTkFCTEUoSU5T
UEVDVE9SKQorICAgIFRocmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKS5pbmNy
ZW1lbnRDb3VudGVyKFRocmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5l
ckNvdW50ZXIpOworI2VuZGlmCiB9CiAKIEpTRXZlbnRMaXN0ZW5lcjo6fkpTRXZlbnRMaXN0ZW5l
cigpCiB7Ci0gICAgSW5zcGVjdG9yQ291bnRlcnM6OmRlY3JlbWVudENvdW50ZXIoSW5zcGVjdG9y
Q291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpOworI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CisgICAgVGhyZWFkTG9jYWxJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCgpLmRlY3JlbWVudENv
dW50ZXIoVGhyZWFkTG9jYWxJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3RlbmVyQ291bnRl
cik7CisjZW5kaWYKIH0KIAogSlNPYmplY3QqIEpTRXZlbnRMaXN0ZW5lcjo6aW5pdGlhbGl6ZUpT
RnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXgg
OWM1NjQ0MGM0OGE0MjEzMzc2NDk2NTdkZTRlNWY5ZDQyNmNmZDM1Mi4uODZmODFkMGFhNWFiZWM5
MjNmN2U1MDIxNTdhOWE3NDhkMTM3ZjA2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4QWJzdHJhY3RFdmVudExpc3RlbmVyLmNwcApAQCAtNTgsNyArNTgsOSBA
QCBWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcjo6VjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIoYm9vbCBp
c0F0dHJpYnV0ZSwgY29uc3QgV29ybGRDbwogICAgICwgbV9pc0F0dHJpYnV0ZShpc0F0dHJpYnV0
ZSkKICAgICAsIG1fd29ybGRDb250ZXh0KHdvcmxkQ29udGV4dCkKIHsKLSAgICBJbnNwZWN0b3JD
b3VudGVyczo6aW5jcmVtZW50Q291bnRlcihJbnNwZWN0b3JDb3VudGVyczo6SlNFdmVudExpc3Rl
bmVyQ291bnRlcik7CisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBUaHJlYWRMb2NhbEluc3Bl
Y3RvckNvdW50ZXJzOjpjdXJyZW50KCkuaW5jcmVtZW50Q291bnRlcihUaHJlYWRMb2NhbEluc3Bl
Y3RvckNvdW50ZXJzOjpKU0V2ZW50TGlzdGVuZXJDb3VudGVyKTsKKyNlbmRpZgogfQogCiBWOEFi
c3RyYWN0RXZlbnRMaXN0ZW5lcjo6flY4QWJzdHJhY3RFdmVudExpc3RlbmVyKCkKQEAgLTY5LDcg
KzcxLDkgQEAgVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXI6On5WOEFic3RyYWN0RXZlbnRMaXN0ZW5l
cigpCiAgICAgICAgIFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmNsZWFyV3JhcHBlcihsaXN0ZW5lciwg
bV9pc0F0dHJpYnV0ZSk7CiAgICAgfQogICAgIGRpc3Bvc2VMaXN0ZW5lck9iamVjdCgpOwotICAg
IEluc3BlY3RvckNvdW50ZXJzOjpkZWNyZW1lbnRDb3VudGVyKEluc3BlY3RvckNvdW50ZXJzOjpK
U0V2ZW50TGlzdGVuZXJDb3VudGVyKTsKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIFRocmVh
ZExvY2FsSW5zcGVjdG9yQ291bnRlcnM6OmN1cnJlbnQoKS5kZWNyZW1lbnRDb3VudGVyKFRocmVh
ZExvY2FsSW5zcGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpOworI2VuZGlm
CiB9CiAKIHZvaWQgVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXI6OmhhbmRsZUV2ZW50KFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV2ZW50KiBldmVudCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRleCBjMDg3MjFkOWIzZWQ5
Mzg5ZTA3MzU3OTMwZTkxMDk0YmU5ZTAzZWU1Li44OWMxYzA5YTM1OGNhNjFhZWZmNTk0MDllNTMw
ZTE3NjA1NDM3ZjFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckNvbnRyb2xsZXIuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAgSW5zcGVjdG9yQ29udHJvbGxlcjo6
SW5zcGVjdG9yQ29udHJvbGxlcihQYWdlKiBwYWdlLCBJbnNwZWN0b3JDbGllbnQqIGluc3BlY3Rv
ckMKICAgICBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQqIGRvbVN0b3JhZ2VBZ2VudCA9IGRvbVN0
b3JhZ2VBZ2VudFB0ci5nZXQoKTsKICAgICBtX2FnZW50cy5hcHBlbmQoZG9tU3RvcmFnZUFnZW50
UHRyLnJlbGVhc2UoKSk7CiAgICAgbV9hZ2VudHMuYXBwZW5kKEluc3BlY3Rvck1lbW9yeUFnZW50
OjpjcmVhdGUobV9pbnN0cnVtZW50aW5nQWdlbnRzLmdldCgpLCBtX3N0YXRlLmdldCgpLCBtX3Bh
Z2UsIG1fZG9tQWdlbnQpKTsKLSAgICBtX2FnZW50cy5hcHBlbmQoSW5zcGVjdG9yVGltZWxpbmVB
Z2VudDo6Y3JlYXRlKG1faW5zdHJ1bWVudGluZ0FnZW50cy5nZXQoKSwgbV9zdGF0ZS5nZXQoKSkp
OworICAgIG1fYWdlbnRzLmFwcGVuZChJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpjcmVhdGUobV9p
bnN0cnVtZW50aW5nQWdlbnRzLmdldCgpLCBtX3N0YXRlLmdldCgpLCBJbnNwZWN0b3JUaW1lbGlu
ZUFnZW50OjpQYWdlSW5zcGVjdG9yKSk7CiAgICAgbV9hZ2VudHMuYXBwZW5kKEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudDo6Y3JlYXRlKG1faW5zdHJ1bWVudGluZ0FnZW50cy5nZXQoKSwg
bV9zdGF0ZS5nZXQoKSwgcGFnZUFnZW50KSk7CiAKICAgICBPd25QdHI8SW5zcGVjdG9yUmVzb3Vy
Y2VBZ2VudD4gcmVzb3VyY2VBZ2VudFB0cihJbnNwZWN0b3JSZXNvdXJjZUFnZW50OjpjcmVhdGUo
bV9pbnN0cnVtZW50aW5nQWdlbnRzLmdldCgpLCBwYWdlQWdlbnQsIGluc3BlY3RvckNsaWVudCwg
bV9zdGF0ZS5nZXQoKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvdW50ZXJzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
b3VudGVycy5jcHAKaW5kZXggNzA2OTcwNzdiM2I2MTcwMTVhOTNhNjc4YTIxOWU3NDIwZjQzMzNl
Mi4uZDE3ZTI4OWRhZDY1NDQ2ZWRkOGNiMWVlODMxZTIxYmFiNjBmMTQ5YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMuY3BwCkBAIC0zMCw2ICszMCw3
IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDb3VudGVycy5o
IgorI2luY2x1ZGUgIlRocmVhZEdsb2JhbERhdGEuaCIKIAogI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CiAKQEAgLTQyLDYgKzQzLDIyIEBAIGludCBJbnNwZWN0b3JDb3VudGVyczo6Y291bnRlclZhbHVl
KENvdW50ZXJUeXBlIHR5cGUpCiAgICAgcmV0dXJuIHNfY291bnRlcnNbdHlwZV07CiB9CiAKK1Ro
cmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnM6OlRocmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnMo
KQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgQ291bnRlclR5cGVMZW5ndGg7IGkrKykK
KyAgICAgICAgbV9jb3VudGVyc1tpXSA9IDA7Cit9CisKK2ludCBUaHJlYWRMb2NhbEluc3BlY3Rv
ckNvdW50ZXJzOjpjb3VudGVyVmFsdWUoQ291bnRlclR5cGUgdHlwZSkKK3sKKyAgICByZXR1cm4g
bV9jb3VudGVyc1t0eXBlXTsKK30KKworVGhyZWFkTG9jYWxJbnNwZWN0b3JDb3VudGVycyYgVGhy
ZWFkTG9jYWxJbnNwZWN0b3JDb3VudGVyczo6Y3VycmVudCgpCit7CisgICAgcmV0dXJuIHRocmVh
ZEdsb2JhbERhdGEoKS5pbnNwZWN0b3JDb3VudGVycygpOworfQorCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvdW50ZXJzLmggYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMuaAppbmRleCAwM2RjMTEwNzIyYWEyODhiZjAwY2Fk
ZjI5YjI1MDUyODU0MWQ2ODBlLi4zYmVjZjc2YzE2ZGMzMjFhOGE4NDkzODUyMmI2Y2RkYzBmN2E1
OTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRl
cnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ291bnRlcnMuaApA
QCAtMzEsNiArMzEsMTAgQEAKICNpZm5kZWYgSW5zcGVjdG9yQ291bnRlcnNfaAogI2RlZmluZSBJ
bnNwZWN0b3JDb3VudGVyc19oCiAKKyNpZiAhQVNTRVJUX0RJU0FCTEVECisjaW5jbHVkZSA8d3Rm
L01haW5UaHJlYWQuaD4KKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIElu
c3BlY3RvckNvdW50ZXJzIHsKQEAgLTQ1LDYgKzQ5LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBp
bmxpbmUgdm9pZCBpbmNyZW1lbnRDb3VudGVyKENvdW50ZXJUeXBlIHR5cGUpCiAgICAgewogI2lm
IEVOQUJMRShJTlNQRUNUT1IpCisgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAg
ICAgICsrc19jb3VudGVyc1t0eXBlXTsKICNlbmRpZgogICAgIH0KQEAgLTUyLDYgKzU3LDcgQEAg
cHVibGljOgogICAgIHN0YXRpYyBpbmxpbmUgdm9pZCBkZWNyZW1lbnRDb3VudGVyKENvdW50ZXJU
eXBlIHR5cGUpCiAgICAgewogI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgICAgIEFTU0VSVChp
c01haW5UaHJlYWQoKSk7CiAgICAgICAgIC0tc19jb3VudGVyc1t0eXBlXTsKICNlbmRpZgogICAg
IH0KQEAgLTY4LDYgKzc0LDM1IEBAIHByaXZhdGU6CiAjZW5kaWYKIH07CiAKKworI2lmIEVOQUJM
RShJTlNQRUNUT1IpCitjbGFzcyBUaHJlYWRMb2NhbEluc3BlY3RvckNvdW50ZXJzIHsKK3B1Ymxp
YzoKKyAgICBlbnVtIENvdW50ZXJUeXBlIHsKKyAgICAgICAgSlNFdmVudExpc3RlbmVyQ291bnRl
ciwKKyAgICAgICAgQ291bnRlclR5cGVMZW5ndGgKKyAgICB9OworICAgIFRocmVhZExvY2FsSW5z
cGVjdG9yQ291bnRlcnMoKTsKKworICAgIGlubGluZSB2b2lkIGluY3JlbWVudENvdW50ZXIoQ291
bnRlclR5cGUgdHlwZSkKKyAgICB7CisgICAgICAgICsrbV9jb3VudGVyc1t0eXBlXTsKKyAgICB9
CisKKyAgICBpbmxpbmUgdm9pZCBkZWNyZW1lbnRDb3VudGVyKENvdW50ZXJUeXBlIHR5cGUpCisg
ICAgeworICAgICAgICAtLW1fY291bnRlcnNbdHlwZV07CisgICAgfQorCisgICAgaW50IGNvdW50
ZXJWYWx1ZShDb3VudGVyVHlwZSk7CisKKyAgICBzdGF0aWMgVGhyZWFkTG9jYWxJbnNwZWN0b3JD
b3VudGVycyYgY3VycmVudCgpOworCitwcml2YXRlOgorICAgIGludCBtX2NvdW50ZXJzW0NvdW50
ZXJUeXBlTGVuZ3RoXTsKK307CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gIWRlZmluZWQoSW5zcGVjdG9yQ291bnRlcnNfaCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcAppbmRleCBlZDdkMTQz
ZDVmNjI3ZjgxMTE3ZDYzYTU4OTk3MTk4ZTgyMDEzNmZkLi4zNGY5MjA3ZjA3OGUxZTkwMmJlNjhk
ZmViMTZhZWFlMjI1MDA0NDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCkBAIC0zOTEsOSArMzkxLDkgQEAgdm9pZCBJbnNw
ZWN0b3JUaW1lbGluZUFnZW50OjpzZXRIZWFwU2l6ZVN0YXRpc3RpYyhJbnNwZWN0b3JPYmplY3Qq
IHJlY29yZCkKIAogICAgIGlmIChtX3N0YXRlLT5nZXRCb29sZWFuKFRpbWVsaW5lQWdlbnRTdGF0
ZTo6aW5jbHVkZU1lbW9yeURldGFpbHMpKSB7CiAgICAgICAgIFJlZlB0cjxJbnNwZWN0b3JPYmpl
Y3Q+IGNvdW50ZXJzID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKTsKLSAgICAgICAgY291bnRl
cnMtPnNldE51bWJlcigibm9kZXMiLCBJbnNwZWN0b3JDb3VudGVyczo6Y291bnRlclZhbHVlKElu
c3BlY3RvckNvdW50ZXJzOjpOb2RlQ291bnRlcikpOwotICAgICAgICBjb3VudGVycy0+c2V0TnVt
YmVyKCJkb2N1bWVudHMiLCBJbnNwZWN0b3JDb3VudGVyczo6Y291bnRlclZhbHVlKEluc3BlY3Rv
ckNvdW50ZXJzOjpEb2N1bWVudENvdW50ZXIpKTsKLSAgICAgICAgY291bnRlcnMtPnNldE51bWJl
cigianNFdmVudExpc3RlbmVycyIsIEluc3BlY3RvckNvdW50ZXJzOjpjb3VudGVyVmFsdWUoSW5z
cGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpKTsKKyAgICAgICAgY291bnRl
cnMtPnNldE51bWJlcigibm9kZXMiLCAobV9pbnNwZWN0b3JUeXBlID09IFBhZ2VJbnNwZWN0b3Ip
ID8gSW5zcGVjdG9yQ291bnRlcnM6OmNvdW50ZXJWYWx1ZShJbnNwZWN0b3JDb3VudGVyczo6Tm9k
ZUNvdW50ZXIpIDogMCk7CisgICAgICAgIGNvdW50ZXJzLT5zZXROdW1iZXIoImRvY3VtZW50cyIs
IChtX2luc3BlY3RvclR5cGUgPT0gUGFnZUluc3BlY3RvcikgPyBJbnNwZWN0b3JDb3VudGVyczo6
Y291bnRlclZhbHVlKEluc3BlY3RvckNvdW50ZXJzOjpEb2N1bWVudENvdW50ZXIpIDogMCk7Cisg
ICAgICAgIGNvdW50ZXJzLT5zZXROdW1iZXIoImpzRXZlbnRMaXN0ZW5lcnMiLCBUaHJlYWRMb2Nh
bEluc3BlY3RvckNvdW50ZXJzOjpjdXJyZW50KCkuY291bnRlclZhbHVlKFRocmVhZExvY2FsSW5z
cGVjdG9yQ291bnRlcnM6OkpTRXZlbnRMaXN0ZW5lckNvdW50ZXIpKTsKICAgICAgICAgcmVjb3Jk
LT5zZXRPYmplY3QoImNvdW50ZXJzIiwgY291bnRlcnMucmVsZWFzZSgpKTsKICAgICB9CiB9CkBA
IC00MTQsMTEgKzQxNCwxMiBAQCB2b2lkIEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6OmRpZENvbXBs
ZXRlQ3VycmVudFJlY29yZChjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgfQogfQogCi1JbnNwZWN0
b3JUaW1lbGluZUFnZW50OjpJbnNwZWN0b3JUaW1lbGluZUFnZW50KEluc3RydW1lbnRpbmdBZ2Vu
dHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIEluc3BlY3RvclN0YXRlKiBzdGF0ZSkKK0luc3BlY3Rv
clRpbWVsaW5lQWdlbnQ6Okluc3BlY3RvclRpbWVsaW5lQWdlbnQoSW5zdHJ1bWVudGluZ0FnZW50
cyogaW5zdHJ1bWVudGluZ0FnZW50cywgSW5zcGVjdG9yU3RhdGUqIHN0YXRlLCBJbnNwZWN0b3JU
eXBlIHR5cGUpCiAgICAgOiBJbnNwZWN0b3JCYXNlQWdlbnQ8SW5zcGVjdG9yVGltZWxpbmVBZ2Vu
dD4oIlRpbWVsaW5lIiwgaW5zdHJ1bWVudGluZ0FnZW50cywgc3RhdGUpCiAgICAgLCBtX2Zyb250
ZW5kKDApCiAgICAgLCBtX2lkKDEpCiAgICAgLCBtX21heENhbGxTdGFja0RlcHRoKDUpCisgICAg
LCBtX2luc3BlY3RvclR5cGUodHlwZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmgKaW5kZXggZThjMzQ4NjlhN2JhNmJjNWRk
NmQzODJiOTdhNzU4MzZkZmRhZjFmYi4uMTY4NGU4NjQxYTk0YTQ0MTRjZmU2MjVhOGUyNmZhNjNh
NDczNTA5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRp
bWVsaW5lQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGlt
ZWxpbmVBZ2VudC5oCkBAIC01Niw5ICs1NiwxMCBAQCB0eXBlZGVmIFN0cmluZyBFcnJvclN0cmlu
ZzsKIGNsYXNzIEluc3BlY3RvclRpbWVsaW5lQWdlbnQgOiBwdWJsaWMgSW5zcGVjdG9yQmFzZUFn
ZW50PEluc3BlY3RvclRpbWVsaW5lQWdlbnQ+LCBTY3JpcHRHQ0V2ZW50TGlzdGVuZXIsIHB1Ymxp
YyBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlcjo6VGltZWxpbmVDb21tYW5kSGFuZGxlciB7CiAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoSW5zcGVjdG9yVGltZWxpbmVBZ2VudCk7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8SW5zcGVjdG9yVGltZWxpbmVBZ2VudD4gY3JlYXRlKElu
c3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIEluc3BlY3RvclN0YXRlKiBz
dGF0ZSkKKyAgICBlbnVtIEluc3BlY3RvclR5cGUgeyBQYWdlSW5zcGVjdG9yLCBXb3JrZXJJbnNw
ZWN0b3IgfTsKKyAgICBzdGF0aWMgUGFzc093blB0cjxJbnNwZWN0b3JUaW1lbGluZUFnZW50PiBj
cmVhdGUoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cywgSW5zcGVjdG9y
U3RhdGUqIHN0YXRlLCBJbnNwZWN0b3JUeXBlIHR5cGUpCiAgICAgewotICAgICAgICByZXR1cm4g
YWRvcHRQdHIobmV3IEluc3BlY3RvclRpbWVsaW5lQWdlbnQoaW5zdHJ1bWVudGluZ0FnZW50cywg
c3RhdGUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBJbnNwZWN0b3JUaW1lbGluZUFn
ZW50KGluc3RydW1lbnRpbmdBZ2VudHMsIHN0YXRlLCB0eXBlKSk7CiAgICAgfQogCiAgICAgfklu
c3BlY3RvclRpbWVsaW5lQWdlbnQoKTsKQEAgLTE0MCw3ICsxNDEsNyBAQCBwcml2YXRlOgogICAg
ICAgICBTdHJpbmcgdHlwZTsKICAgICB9OwogICAgICAgICAKLSAgICBJbnNwZWN0b3JUaW1lbGlu
ZUFnZW50KEluc3RydW1lbnRpbmdBZ2VudHMqLCBJbnNwZWN0b3JTdGF0ZSopOworICAgIEluc3Bl
Y3RvclRpbWVsaW5lQWdlbnQoSW5zdHJ1bWVudGluZ0FnZW50cyosIEluc3BlY3RvclN0YXRlKiwg
SW5zcGVjdG9yVHlwZSk7CiAKICAgICB2b2lkIHB1c2hDdXJyZW50UmVjb3JkKFBhc3NSZWZQdHI8
SW5zcGVjdG9yT2JqZWN0PiwgY29uc3QgU3RyaW5nJiB0eXBlLCBib29sIGNhcHR1cmVDYWxsU3Rh
Y2spOwogICAgIHZvaWQgc2V0SGVhcFNpemVTdGF0aXN0aWMoSW5zcGVjdG9yT2JqZWN0KiByZWNv
cmQpOwpAQCAtMTcwLDYgKzE3MSw3IEBAIHByaXZhdGU6CiAgICAgdHlwZWRlZiBWZWN0b3I8R0NF
dmVudD4gR0NFdmVudHM7CiAgICAgR0NFdmVudHMgbV9nY0V2ZW50czsKICAgICBpbnQgbV9tYXhD
YWxsU3RhY2tEZXB0aDsKKyAgICBJbnNwZWN0b3JUeXBlIG1faW5zcGVjdG9yVHlwZTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRleCBmMjE0Njk5ZWJiNzkyMThh
NmY0YjM3ZGE4OTMyYTcxYjczMjk5MDY1Li44ZjBlZDBiODA1ZDViYjYwY2VmNDkwM2ZmYzVhZjY4
MDEyZDkzZGZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5z
cGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtl
ckluc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgV29ya2VySW5zcGVj
dG9yQ29udHJvbGxlcjo6V29ya2VySW5zcGVjdG9yQ29udHJvbGxlcihXb3JrZXJDb250ZXh0KiB3
b3JrZXJDb250ZXgKICAgICBtX2RlYnVnZ2VyQWdlbnQgPSBXb3JrZXJEZWJ1Z2dlckFnZW50Ojpj
cmVhdGUobV9pbnN0cnVtZW50aW5nQWdlbnRzLmdldCgpLCBtX3N0YXRlLmdldCgpLCB3b3JrZXJD
b250ZXh0LCBtX2luamVjdGVkU2NyaXB0TWFuYWdlci5nZXQoKSk7CiAgICAgbV9wcm9maWxlckFn
ZW50ID0gSW5zcGVjdG9yUHJvZmlsZXJBZ2VudDo6Y3JlYXRlKG1faW5zdHJ1bWVudGluZ0FnZW50
cy5nZXQoKSwgbV9jb25zb2xlQWdlbnQuZ2V0KCksIHdvcmtlckNvbnRleHQsIG1fc3RhdGUuZ2V0
KCksIG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmdldCgpKTsKICNlbmRpZgotICAgIG1fdGltZWxp
bmVBZ2VudCA9IEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6OmNyZWF0ZShtX2luc3RydW1lbnRpbmdB
Z2VudHMuZ2V0KCksIG1fc3RhdGUuZ2V0KCkpOworICAgIG1fdGltZWxpbmVBZ2VudCA9IEluc3Bl
Y3RvclRpbWVsaW5lQWdlbnQ6OmNyZWF0ZShtX2luc3RydW1lbnRpbmdBZ2VudHMuZ2V0KCksIG1f
c3RhdGUuZ2V0KCksIEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6Oldvcmtlckluc3BlY3Rvcik7CiAK
ICAgICBtX2luamVjdGVkU2NyaXB0TWFuYWdlci0+aW5qZWN0ZWRTY3JpcHRIb3N0KCktPmluaXQo
MAogICAgICAgICAsIDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVh
ZEdsb2JhbERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0
YS5jcHAKaW5kZXggMTY2ZWI0N2JhY2I0MDk0ZDZkZDI5ZjJiNDFjOTc0ZGVkNzM0ODlmYi4uZGE4
NDZmOGRiYzJiNmUxZWYzNzAzZmQ4M2Q4NmEwZTU0ODFhOTIwYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2lu
Y2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgorI2lu
Y2x1ZGUgIkluc3BlY3RvckNvdW50ZXJzLmgiCiAjaW5jbHVkZSAiVGhyZWFkVGltZXJzLmgiCiAj
aW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvVW51c2VkUGFyYW0uaD4K
QEAgLTcwLDYgKzcxLDkgQEAgVGhyZWFkR2xvYmFsRGF0YTo6VGhyZWFkR2xvYmFsRGF0YSgpCiAj
aWYgUExBVEZPUk0oTUFDKQogICAgICwgbV9jYWNoZWRDb252ZXJ0ZXJURUMoYWRvcHRQdHIobmV3
IFRFQ0NvbnZlcnRlcldyYXBwZXIpKQogI2VuZGlmCisjaWYgRU5BQkxFKElOU1BFQ1RPUikKKyAg
ICAsIG1faW5zcGVjdG9yQ291bnRlcnMoYWRvcHRQdHIobmV3IFRocmVhZExvY2FsSW5zcGVjdG9y
Q291bnRlcnMoKSkpCisjZW5kaWYKIHsKICAgICAvLyBUaGlzIGNvbnN0cnVjdG9yIHdpbGwgaGF2
ZSBiZWVuIGNhbGxlZCBvbiB0aGUgbWFpbiB0aHJlYWQgYmVmb3JlIGJlaW5nIGNhbGxlZCBvbgog
ICAgIC8vIGFueSBvdGhlciB0aHJlYWQsIGFuZCBpcyBvbmx5IGNhbGxlZCBvbmNlIHBlciB0aHJl
YWQgLSB0aGlzIG1ha2VzIHRoaXMgYSBjb252ZW5pZW50CkBAIC05Myw2ICs5NywxMCBAQCB2b2lk
IFRocmVhZEdsb2JhbERhdGE6OmRlc3Ryb3koKQogICAgIG1fY2FjaGVkQ29udmVydGVySUNVLmNs
ZWFyKCk7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgbV9pbnNwZWN0b3JD
b3VudGVycy5jbGVhcigpOworI2VuZGlmCisKICAgICBtX2V2ZW50TmFtZXMuY2xlYXIoKTsKICAg
ICBtX3RocmVhZFRpbWVycy5jbGVhcigpOwogICAgIG1feG1sVHlwZVJlZ0V4cC5jbGVhcigpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhyZWFkR2xvYmFsRGF0YS5oCmluZGV4IGJiOWYxYThl
MWNiMzNhOGNkNWFmNTg0YzdiYzQxNDllODdhZWNkNmYuLjQyZjA1YWZlMzg5M2Y3M2Q5ZDdlZmY0
ODUyYjllZjE4ZmQ5YWQ2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Ro
cmVhZEdsb2JhbERhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRHbG9i
YWxEYXRhLmgKQEAgLTQyLDYgKzQyLDcgQEAgdXNpbmcgV1RGOjpUaHJlYWRTcGVjaWZpYzsKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIEV2ZW50TmFtZXM7CisgICAgY2xhc3MgVGhy
ZWFkTG9jYWxJbnNwZWN0b3JDb3VudGVyczsKICAgICBjbGFzcyBUaHJlYWRUaW1lcnM7CiAgICAg
Y2xhc3MgWE1MTUlNRVR5cGVSZWdFeHA7CiAKQEAgLTY3LDYgKzY4LDEwIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgVEVDQ29udmVydGVyV3JhcHBlciYgY2FjaGVkQ29udmVydGVyVEVD
KCkgeyByZXR1cm4gKm1fY2FjaGVkQ29udmVydGVyVEVDOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJM
RShJTlNQRUNUT1IpCisgICAgICAgIFRocmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnMmIGluc3Bl
Y3RvckNvdW50ZXJzKCkgeyByZXR1cm4gKm1faW5zcGVjdG9yQ291bnRlcnM7IH0KKyNlbmRpZgor
CiAgICAgcHJpdmF0ZToKICAgICAgICAgT3duUHRyPEV2ZW50TmFtZXM+IG1fZXZlbnROYW1lczsK
ICAgICAgICAgT3duUHRyPFRocmVhZFRpbWVycz4gbV90aHJlYWRUaW1lcnM7CkBAIC04NCw2ICs4
OSwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIE93blB0cjxURUNDb252ZXJ0ZXJX
cmFwcGVyPiBtX2NhY2hlZENvbnZlcnRlclRFQzsKICNlbmRpZgogCisjaWYgRU5BQkxFKElOU1BF
Q1RPUikKKyAgICAgICAgT3duUHRyPFRocmVhZExvY2FsSW5zcGVjdG9yQ291bnRlcnM+IG1faW5z
cGVjdG9yQ291bnRlcnM7CisjZW5kaWYKKwogI2lmIEVOQUJMRShXT1JLRVJTKQogICAgICAgICBz
dGF0aWMgVGhyZWFkU3BlY2lmaWM8VGhyZWFkR2xvYmFsRGF0YT4qIHN0YXRpY0RhdGE7CiAjZWxz
ZQo=
</data>
<flag name="review"
          id="133371"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>