<?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>85585</bug_id>
          
          <creation_ts>2012-05-04 00:03:12 -0700</creation_ts>
          <short_desc>[EFL] EFL&apos;s LayoutTestController does not implement setApplicationCacheOriginQuota</short_desc>
          <delta_ts>2012-05-16 06:05:38 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</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>
          
          <blocked>86195</blocked>
    
    <blocked>86498</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>tmpsantos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>616002</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-04 00:03:12 -0700</bug_when>
    <thetext>EFL&apos;s LayoutTestController needs to implement setApplicationCacheOriginQuota so that test cases in http/tests/appcache can be unskipped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616005</commentid>
    <comment_count>1</comment_count>
      <attachid>140170</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-04 00:17:43 -0700</bug_when>
    <thetext>Created attachment 140170
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617148</commentid>
    <comment_count>2</comment_count>
      <attachid>140170</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-06 12:02:02 -0700</bug_when>
    <thetext>Comment on attachment 140170
Patch

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

&gt; Source/WebKit/efl/ewk/ewk_view.h:177
&gt; +    uint64_t (*exceeded_application_cache_quota)(Ewk_View_Smart_Data *sd, Ewk_Security_Origin* origin, int64_t defaultOriginQuota, int64_t totalSpaceNeeded);

Whenever you change this struct, you need to bump EWK_VIEW_SMART_CLASS_VERSION.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617396</commentid>
    <comment_count>3</comment_count>
      <attachid>140479</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-06 22:40:16 -0700</bug_when>
    <thetext>Created attachment 140479
Patch

Bump EWK_VIEW_SMART_CLASS_VERSION.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618534</commentid>
    <comment_count>4</comment_count>
      <attachid>140479</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-08 08:13:34 -0700</bug_when>
    <thetext>Comment on attachment 140479
Patch

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624299</commentid>
    <comment_count>5</comment_count>
      <attachid>140479</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2012-05-15 11:21:05 -0700</bug_when>
    <thetext>Comment on attachment 140479
Patch

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

I&apos;m setting cq- because of the nit.

&gt; Tools/DumpRenderTree/efl/DumpRenderTreeView.cpp:127
&gt; +        // Rounding up or down not really matter for these tests. It&apos;s

Nit: not really -&gt; does not really</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624988</commentid>
    <comment_count>6</comment_count>
      <attachid>142149</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-15 22:38:09 -0700</bug_when>
    <thetext>Created attachment 142149
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624996</commentid>
    <comment_count>7</comment_count>
      <attachid>142153</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-15 22:47:45 -0700</bug_when>
    <thetext>Created attachment 142153
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625118</commentid>
    <comment_count>8</comment_count>
      <attachid>142153</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-16 01:28:07 -0700</bug_when>
    <thetext>Comment on attachment 142153
Patch for landing

Rejecting attachment 142153 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

ERROR: /mnt/git/webkit-commit-queue/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://queues.webkit.org/results/12706609</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625192</commentid>
    <comment_count>9</comment_count>
      <attachid>142207</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-16 02:35:17 -0700</bug_when>
    <thetext>Created attachment 142207
Patch for landing

Forgot to update reviewer name in Changelogs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625261</commentid>
    <comment_count>10</comment_count>
      <attachid>142207</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-16 04:26:05 -0700</bug_when>
    <thetext>Comment on attachment 142207
Patch for landing

Clearing flags on attachment: 142207

Committed r117258: &lt;http://trac.webkit.org/changeset/117258&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625262</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-16 04:26:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625334</commentid>
    <comment_count>12</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-05-16 06:05:38 -0700</bug_when>
    <thetext>This patch caused a regression. See bug 86611.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140170</attachid>
            <date>2012-05-04 00:17:43 -0700</date>
            <delta_ts>2012-05-06 22:40:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85585_appcache_quota.patch</filename>
            <type>text/plain</type>
            <size>15164</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2NDI5OGU2Li45NjNhYmMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MDQgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVuc2tpcCB0aGUgdGVzdCBjYXNlcyB0aGF0IHJlcXVpcmUg
aW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
IGluIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyLgorCisgICAgICAgICogcGxhdGZvcm0vZWZs
L1NraXBwZWQ6CisKIDIwMTItMDUtMDMgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPHJha3Vjb0B3
ZWJraXQub3JnPgogCiAgICAgICAgIFtFRkxdIFVucmV2aWV3ZWQsIGFkZCBzb21lIG90aGVyIG1p
c3NpbmcgYmFzZWxpbmVzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Nr
aXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAppbmRleCAxMTE2N2NjLi43
YzVkMmVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZApAQCAtMzY0LDI0ICszNjQsMjUgQEAg
aHR0cC90ZXN0cy9taXNjL2NvcHktcmVzb2x2ZXMtdXJscy5odG1sCiAjIEVGTCdzIExheW91dFRl
c3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRDYWNoZU1vZGVsCiBmYXN0L2RvbS9I
VE1MU2NyaXB0RWxlbWVudC9uZXN0ZWQtZXhlY3V0aW9uLmh0bWwKIAotIyBFRkwncyBMYXlvdXRU
ZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdp
blF1b3RhCi1odHRwL3Rlc3RzL2FwcGNhY2hlCi0KLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xs
ZXIgZG9lcyBub3QgaW1wbGVtZW50IGNsZWFyQXBwbGljYXRpb25DYWNoZUZvck9yaWdpbgotaHR0
cC90ZXN0cy9hcHBjYWNoZQotCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90
IGltcGxlbWVudCBvcmlnaW5zV2l0aEFwcGxpY2F0aW9uQ2FjaGUKLWh0dHAvdGVzdHMvYXBwY2Fj
aGUKLQotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgYXBw
bGljYXRpb25DYWNoZURpc2tVc2FnZUZvck9yaWdpbgotaHR0cC90ZXN0cy9hcHBjYWNoZQotCiAj
IEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXREb21haW5S
ZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lCiBodHRwL3Rlc3RzL3NlY3VyaXR5L3NldERv
bWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUuaHRtbAogCiAjIEVGTCdzIExheW91
dFRlc3RDb250cm9sbGVyIG92ZXJyaWRlUHJlZmVyZW5jZSBkb2VzIG5vdCBpbXBsZW1lbnQgV2Vi
S2l0VXNlUHJlSFRNTDVQYXJzZXJRdWlya3MgcHJlZmVyZW5jZQogZmFzdC9wYXJzZXIvcHJlLWh0
bWw1LXBhcnNlci1xdWlya3MuaHRtbAogCisjIEZhbGxiYWNrIHJlc291cmNlIHdhc24ndCB1c2Vk
IGZvciBhIHJlZGlyZWN0IHRvIGEgcmVzb3VyY2Ugd2l0aCBhbm90aGVyIG9yaWdpbgoraHR0cC90
ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCisKKyMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xs
ZXIgZG9lcyBub3QgaW1wbGVtZW50IGNsZWFyQXBwbGljYXRpb25DYWNoZUZvck9yaWdpbgoraHR0
cC90ZXN0cy9hcHBjYWNoZS9vcmlnaW4tZGVsZXRlLmh0bWwKK2h0dHAvdGVzdHMvYXBwY2FjaGUv
b3JpZ2luLXVzYWdlLmh0bWwKKworIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5v
dCBpbXBsZW1lbnQgYXBwbGljYXRpb25DYWNoZURpc2tVc2FnZUZvck9yaWdpbgoraHR0cC90ZXN0
cy9hcHBjYWNoZS9vcmlnaW4tdXNhZ2UuaHRtbAorCisjIEVGTCdzIExheW91dFRlc3RDb250cm9s
bGVyIGRvZXMgbm90IGltcGxlbWVudCBvcmlnaW5zV2l0aEFwcGxpY2F0aW9uQ2FjaGUKK2h0dHAv
dGVzdHMvYXBwY2FjaGUvb3JpZ2lucy13aXRoLWFwcGNhY2hlLmh0bWwKKwogIyBFRkwncyBMYXlv
dXRUZXN0Q29udHJvbGxlciBvdmVycmlkZVByZWZlcmVuY2UgZG9lcyBub3QgaW1wbGVtZW50IFdl
YktpdE9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCBwcmVmZXJlbmNlCiBodHRwL3Rl
c3RzL2FwcGNhY2hlL2Rpc2FibGVkLmh0bWwKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9l
ZmwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4IDVhNjFkMGIu
LjQ5ZmVhMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMi0wNS0wNCAg
Q2hyaXN0b3BoZSBEdW1leiAgPGNocmlzdG9waGUuZHVtZXpAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg1NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIG5ldyBmdW5jdGlvbiB0byBFd2tfU2VjdXJpdHlfT3JpZ2lu
IHRvIHNldCB0aGUgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgcXVvdGEuIEltcGxlbWVudCBy
ZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhIGluCisgICAgICAgIENocm9tZUNsaWVu
dEVmbC4gQWRkIGZ1bmN0aW9uIHRvIHRoZSBFd2tfVmlldyB0byByZXBvcnQgdGhhdCB0aGUKKyAg
ICAgICAgYXBwbGljYXRpb24gY2FjaGUgcXVvdGEgd2FzIHJlYWNoZWQuCisKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2hy
b21lQ2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKToKKyAgICAg
ICAgKiBld2svZXdrX3ByaXZhdGUuaDoKKyAgICAgICAgKiBld2svZXdrX3NlY3VyaXR5X29yaWdp
bi5jcHA6CisgICAgICAgIChld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9uX2NhY2hlX3F1
b3RhX3NldCk6CisgICAgICAgICogZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uaDoKKyAgICAgICAg
KiBld2svZXdrX3ZpZXcuY3BwOgorICAgICAgICAoX0V3a19WaWV3X1ByaXZhdGVfRGF0YSk6Cisg
ICAgICAgIChld2tfdmlld19leGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YSk6CisgICAg
ICAgICogZXdrL2V3a192aWV3Lmg6CisKIDIwMTItMDUtMDMgIEZhZHkgU2FtdWVsICA8ZnNhbXVl
bEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmVtb3ZpbmcgbGluZSBpbiBjb21wdXRlVmlld3Bv
cnRBdHRyaWJ1dGVzIHRoYXQgZW5mb3JjZXMgYSBtaW5pbXVtIHNjYWxlIGZhY3RvciB0byBuZXZl
ciBhbGxvdyB6b29taW5nIG91dCBtb3JlIHRoYW4gdmlld3BvcnQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwCmluZGV4IDFlNzYx
MGEuLjg4MTM5ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0
L0Nocm9tZUNsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBv
cnQvQ2hyb21lQ2xpZW50RWZsLmNwcApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIkNocm9tZUNsaWVudEVmbC5oIgogCisjaW5jbHVkZSAiQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2UuaCIKICNpbmNsdWRlICJGaWxlQ2hvb3Nlci5oIgogI2luY2x1ZGUgIkZp
bGVJY29uTG9hZGVyLmgiCiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCkBAIC0zODgsOSArMzg5LDE2
IEBAIHZvaWQgQ2hyb21lQ2xpZW50RWZsOjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qg
c3BhY2VOZWVkZWQpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBDaHJvbWVDbGll
bnRFZmw6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4q
LCBpbnQ2NF90KQordm9pZCBDaHJvbWVDbGllbnRFZmw6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hl
T3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwgaW50NjRfdCB0b3RhbFNwYWNlTmVl
ZGVkKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgRXdrX1NlY3VyaXR5X09yaWdpbiog
ZXdrT3JpZ2luID0gZXdrX3NlY3VyaXR5X29yaWdpbl9uZXcob3JpZ2luKTsKKyAgICBpbnQ2NF90
IGRlZmF1bHRPcmlnaW5RdW90YSA9IFdlYkNvcmU6OmNhY2hlU3RvcmFnZSgpLmRlZmF1bHRPcmln
aW5RdW90YSgpOworCisgICAgaW50NjRfdCBuZXdRdW90YSA9IGV3a192aWV3X2V4Y2VlZGVkX2Fw
cGxpY2F0aW9uX2NhY2hlX3F1b3RhKG1fdmlldywgZXdrT3JpZ2luLCBkZWZhdWx0T3JpZ2luUXVv
dGEsIHRvdGFsU3BhY2VOZWVkZWQpOworICAgIGlmIChuZXdRdW90YSkKKyAgICAgICAgZXdrX3Nl
Y3VyaXR5X29yaWdpbl9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YV9zZXQoZXdrT3JpZ2luLCBuZXdR
dW90YSk7CisKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2ZyZWUoZXdrT3JpZ2luKTsKIH0KIAog
I2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oCmlu
ZGV4IGI1YzUxYzAuLjQxNDEwN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9l
d2tfcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oCkBA
IC0xNDgsNiArMTQ4LDcgQEAgdm9pZCBld2tfdmlld19ydW5famF2YXNjcmlwdF9hbGVydChFdmFz
X09iamVjdCogZXdrVmlldywgRXZhc19PYmplY3QqIGZyYW1lLCBjb24KIGJvb2wgZXdrX3ZpZXdf
cnVuX2phdmFzY3JpcHRfY29uZmlybShFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19PYmplY3Qq
IGZyYW1lLCBjb25zdCBjaGFyKiBtZXNzYWdlKTsKIGJvb2wgZXdrX3ZpZXdfcnVuX2phdmFzY3Jp
cHRfcHJvbXB0KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX09iamVjdCogZnJhbWUsIGNvbnN0
IGNoYXIqIG1lc3NhZ2UsIGNvbnN0IGNoYXIqIGRlZmF1bHRWYWx1ZSwgY2hhcioqIHZhbHVlKTsK
IGJvb2wgZXdrX3ZpZXdfc2hvdWxkX2ludGVycnVwdF9qYXZhc2NyaXB0KEV2YXNfT2JqZWN0KiBl
d2tWaWV3KTsKK2ludDY0X3QgZXdrX3ZpZXdfZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVv
dGEoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV3a19TZWN1cml0eV9PcmlnaW4gKm9yaWdpbiwgaW50
NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEsIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7CiB1aW50
NjRfdCBld2tfdmlld19leGNlZWRlZF9kYXRhYmFzZV9xdW90YShFdmFzX09iamVjdCogZXdrVmll
dywgRXZhc19PYmplY3QqIGZyYW1lLCBjb25zdCBjaGFyKiBkYXRhYmFzZU5hbWUsIHVpbnQ2NF90
IGN1cnJlbnRTaXplLCB1aW50NjRfdCBleHBlY3RlZFNpemUpOwogCiBib29sIGV3a192aWV3X3J1
bl9vcGVuX3BhbmVsKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX09iamVjdCogZnJhbWUsIGJv
b2wgYWxsb3dzTXVsdGlwbGVGaWxlcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIGFjY2VwdE1JTUVU
eXBlcywgRWluYV9MaXN0Kiogc2VsZWN0ZWRGaWxlbmFtZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9lZmwvZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uY3BwIGIvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uY3BwCmluZGV4IGNkMWY4MTUuLmU3NTRkNGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAKQEAgLTIw
LDYgKzIwLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJld2tfc2VjdXJpdHlf
b3JpZ2luLmgiCiAKKyNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oIgogI2luY2x1
ZGUgIkRhdGFiYXNlVHJhY2tlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5j
bHVkZSAiZXdrX3ByaXZhdGUuaCIKQEAgLTc5LDYgKzgwLDExIEBAIHZvaWQgZXdrX3NlY3VyaXR5
X29yaWdpbl93ZWJfZGF0YWJhc2VfcXVvdGFfc2V0KGNvbnN0IEV3a19TZWN1cml0eV9PcmlnaW4q
IG9yaWdpCiAjZW5kaWYKIH0KIAordm9pZCBld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9u
X2NhY2hlX3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4sIGludDY0
X3QgcXVvdGEpCit7CisgICAgV2ViQ29yZTo6Y2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkUXVv
dGFGb3JPcmlnaW4ob3JpZ2luLT5zZWN1cml0eU9yaWdpbi5nZXQoKSwgcXVvdGEpOworfQorCiB2
b2lkIGV3a19zZWN1cml0eV9vcmlnaW5fZnJlZShFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4p
CiB7CiAgICAgb3JpZ2luLT5zZWN1cml0eU9yaWdpbiA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oIGIvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uaAppbmRleCA4NjE2N2YzLi5kZTA0YzFkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmgKQEAgLTExMCw2ICsxMTAs
MTQgQEAgRUFQSSB1aW50NjRfdCAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl93ZWJfZGF0YWJhc2Vf
cXVvdGFfZ2V0KGNvbnN0IEV3a19TZWN1cml0eV8KIEVBUEkgdm9pZCAgICAgICAgIGV3a19zZWN1
cml0eV9vcmlnaW5fd2ViX2RhdGFiYXNlX3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3Jp
Z2luICpvLCB1aW50NjRfdCBxdW90YSk7CiAKIC8qKgorICogU2V0cyB0aGUgYXBwbGljYXRpb24g
Y2FjaGUgdXNhZ2UgcXVvdGEgZm9yIGEgc2VjdXJpdHkgb3JpZ2luLgorICoKKyAqIEBwYXJhbSBv
IHNlY3VyaXR5IG9yaWdpbiBvYmplY3QKKyAqIEBwYXJhbSBxdW90YSB0aGUgdXNhZ2UgcXVvdGEg
aW4gYnl0ZXMKKyAqLworRUFQSSB2b2lkICAgICAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBs
aWNhdGlvbl9jYWNoZV9xdW90YV9zZXQoY29uc3QgRXdrX1NlY3VyaXR5X09yaWdpbiAqbywgaW50
NjRfdCBxdW90YSk7CisKKy8qKgogICogUmVsZWFzZSBhbGwgcmVzb3VyY2VzIGFsbG9jYXRlZCBi
eSBhIHNlY3VyaXR5IG9yaWdpbiBvYmplY3QuCiAgKgogICogQHBhcmFtIG8gc2VjdXJpdHkgb3Jp
Z2luIG9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNw
cCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggNzk1MmJiYy4uNTI0
NzUyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC0zNDA0LDYgKzM0MDQsMzAg
QEAgYm9vbCBld2tfdmlld19zaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQoRXZhc19PYmplY3Qq
IGV3a1ZpZXcpCiAKIC8qKgogICogQGludGVybmFsCisgKiBUaGlzIGlzIGNhbGxlZCB3aGVuZXZl
ciB0aGUgYXBwbGljYXRpb24gaXMgYXNraW5nIHRvIHN0b3JlIGRhdGEgdG8gdGhlIGNhY2hlIGFu
ZCB0aGUKKyAqIHF1b3RhIGFsbG9jYXRlZCB0byB0aGF0IGFwcGxpY2F0aW9uIGlzIGV4Y2VlZGVk
LiBCcm93c2VyIG1heSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUKKyAqIHNpemUgb2YgcXVvdGEg
YmVmb3JlIHRoZSBvcmlnaW5hdGluZyBvcGVyYXRpb24gZmFpbHMuCisgKgorICogQHBhcmFtIGV3
a1ZpZXcgVmlldy4KKyAqIEBwYXJhbSBvcmlnaW4gU2VjdXJpdHkgb3JpZ2luLgorICogQHBhcmFt
IGRlZmF1bHRPcmlnaW5RdW90YSBEZWZhdWx0IHF1b3RhIGZvciBvcmlnaW4uCisgKiBAcGFyYW0g
dG90YWxTcGFjZU5lZWRlZCBUaGUgdG90YWwgc3BhY2UgbmVlZGVkIGluIHRoZSBjYWNoZSBpbiBv
cmRlciB0byBmdWxmaWxsCisgKiBhcHBsaWNhdGlvbidzIHJlcXVpcmVtZW50LgorICovCitpbnQ2
NF90IGV3a192aWV3X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKEV2YXNfT2JqZWN0
KiBld2tWaWV3LCBFd2tfU2VjdXJpdHlfT3JpZ2luICpvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9y
aWdpblF1b3RhLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpCit7CisgICAgREJHKCJld2tWaWV3
PSVwIiwgZXdrVmlldyk7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBz
bWFydERhdGEsIDApOworICAgIEVJTkFfU0FGRVRZX09OX05VTExfUkVUVVJOX1ZBTChzbWFydERh
dGEtPmFwaSwgMCk7CisgICAgaWYgKCFzbWFydERhdGEtPmFwaS0+ZXhjZWVkZWRfYXBwbGljYXRp
b25fY2FjaGVfcXVvdGEpCisgICAgICAgIHJldHVybiAwOworCisgICAgSU5GKCJkZWZhdWx0T3Jp
Z2luUXVvdGE9JSIgUFJJdTY0ICIgdG90YWxTcGFjZU5lZWRlZD0lIiBQUkl1NjQsIGRlZmF1bHRP
cmlnaW5RdW90YSwgdG90YWxTcGFjZU5lZWRlZCk7CisgICAgcmV0dXJuIHNtYXJ0RGF0YS0+YXBp
LT5leGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YShzbWFydERhdGEsIG9yaWdpbiwgZGVm
YXVsdE9yaWdpblF1b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKK30KKworLyoqCisgKiBAaW50ZXJu
YWwKICAqIFRoaXMgaXMgY2FsbGVkIHdoZW5ldmVyIHRoZSB3ZWIgc2l0ZSBzaG93biBpbiBAcGFy
YW0gZnJhbWUgaXMgYXNraW5nIHRvIHN0b3JlIGRhdGEKICAqIHRvIHRoZSBkYXRhYmFzZSBAcGFy
YW0gZGF0YWJhc2VOYW1lIGFuZCB0aGUgcXVvdGEgYWxsb2NhdGVkIHRvIHRoYXQgd2ViIHNpdGUK
ICAqIGlzIGV4Y2VlZGVkLiBCcm93c2VyIG1heSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUgc2l6
ZSBvZiBxdW90YSBiZWZvcmUgdGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX3ZpZXcuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCmluZGV4IGJiYjVj
ODMuLjMxNGUxNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCkBAIC0xNzQsNiArMTc0LDcg
QEAgc3RydWN0IF9Fd2tfVmlld19TbWFydF9DbGFzcyB7CiAgICAgRWluYV9Cb29sICgqcnVuX2ph
dmFzY3JpcHRfY29uZmlybSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpm
cmFtZSwgY29uc3QgY2hhciAqbWVzc2FnZSk7CiAgICAgRWluYV9Cb29sICgqcnVuX2phdmFzY3Jp
cHRfcHJvbXB0KShFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3QgKmZyYW1lLCBj
b25zdCBjaGFyICptZXNzYWdlLCBjb25zdCBjaGFyICpkZWZhdWx0VmFsdWUsIGNoYXIgKip2YWx1
ZSk7CiAgICAgRWluYV9Cb29sICgqc2hvdWxkX2ludGVycnVwdF9qYXZhc2NyaXB0KShFd2tfVmll
d19TbWFydF9EYXRhICpzZCk7CisgICAgdWludDY0X3QgKCpleGNlZWRlZF9hcHBsaWNhdGlvbl9j
YWNoZV9xdW90YSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19TZWN1cml0eV9PcmlnaW4q
IG9yaWdpbiwgaW50NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEsIGludDY0X3QgdG90YWxTcGFjZU5l
ZWRlZCk7CiAgICAgdWludDY0X3QgKCpleGNlZWRlZF9kYXRhYmFzZV9xdW90YSkoRXdrX1ZpZXdf
U21hcnRfRGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwgY29uc3QgY2hhciAqZGF0YWJhc2VO
YW1lLCB1aW50NjRfdCBjdXJyZW50X3NpemUsIHVpbnQ2NF90IGV4cGVjdGVkX3NpemUpOwogCiAg
ICAgRWluYV9Cb29sICgqcnVuX29wZW5fcGFuZWwpKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBF
dmFzX09iamVjdCAqZnJhbWUsIEVpbmFfQm9vbCBhbGxvd3NfbXVsdGlwbGVfZmlsZXMsIEVpbmFf
TGlzdCAqYWNjZXB0X3R5cGVzLCBFaW5hX0xpc3QgKipzZWxlY3RlZF9maWxlbmFtZXMpOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDA1NjkxYTcu
LjRkNmQwMmEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0wNS0wNCAgQ2hyaXN0b3BoZSBEdW1leiAgPGNocmlz
dG9waGUuZHVtZXpAaW50ZWwuY29tPgorCisgICAgICAgIFtFRkxdIEVGTCdzIExheW91dFRlc3RD
b250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVv
dGEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NTg1
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSBpbiBFRkwncworICAgICAgICBMYXlv
dXRUZXN0Q29udHJvbGxlci4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVu
ZGVyVHJlZUNocm9tZS5jcHA6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZUNocm9tZTo6cmVzZXRE
ZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZs
L0R1bXBSZW5kZXJUcmVlVmlldy5jcHA6CisgICAgICAgIChvbkV4Y2VlZGVkQXBwbGljYXRpb25D
YWNoZVF1b3RhKToKKyAgICAgICAgKGRydFZpZXdBZGQpOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKToKKwogMjAxMi0wNS0w
MyAgUmFwaGFlbCBLdWJvIGRhIENvc3RhICA8cmFrdWNvQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
Z2l0LWFkZC1yZXZpZXdlcjogRG8gbm90IHB1dCB0aGUgYnVnIHRpdGxlIGFuZCBpdHMgVVJMIGlu
IHRoZSBzYW1lIGxpbmUgaW4gdGhlIGNvbW1pdCBtZXNzYWdlLgpkaWZmIC0tZ2l0IGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKaW5kZXggYzE3NzAzOS4uOTEx
N2U2YSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVl
Q2hyb21lLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVD
aHJvbWUuY3BwCkBAIC0yMDIsNiArMjAyLDggQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6
cmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlcygpCiAgICAgZXdrX3NldHRpbmdzX3dlYl9k
YXRhYmFzZV9jbGVhcigpOwogICAgIGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfZGVmYXVsdF9x
dW90YV9zZXQoNSAqIDEwMjQgKiAxMDI0KTsKIAorICAgIGV3a19zZXR0aW5nc19hcHBsaWNhdGlv
bl9jYWNoZV9jbGVhcigpOworCiAgICAgZXdrX3ZpZXdfc2V0dGluZ19wcml2YXRlX2Jyb3dzaW5n
X3NldChtYWluVmlldygpLCBFSU5BX0ZBTFNFKTsKICAgICBld2tfdmlld19zZXR0aW5nX3NwYXRp
YWxfbmF2aWdhdGlvbl9zZXQobWFpblZpZXcoKSwgRUlOQV9GQUxTRSk7CiAgICAgZXdrX3ZpZXdf
c2V0dGluZ19lbmFibGVfZnJhbWVfZmxhdHRlbmluZ19zZXQobWFpblZpZXcoKSwgRUlOQV9GQUxT
RSk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVW
aWV3LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3Bw
CmluZGV4IGU4ZmNiODUuLmM1ZTJhYTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Vm
bC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwCkBAIC0xMjAsNiArMTIwLDI3IEBAIHN0YXRpYyB1aW50
NjRfdCBvbkV4Y2VlZGVkRGF0YWJhc2VRdW90YShFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERh
dGEsIEV2YXNfT2JqCiAgICAgcmV0dXJuIDUgKiAxMDI0ICogMTAyNDsKIH0KIAorc3RhdGljIHVp
bnQ2NF90IG9uRXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hlUXVvdGEoRXdrX1ZpZXdfU21hcnRfRGF0
YSosIEV3a19TZWN1cml0eV9PcmlnaW4gKm9yaWdpbiwgaW50NjRfdCBkZWZhdWx0T3JpZ2luUXVv
dGEsIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkKK3sKKyAgICBpZiAoZ0xheW91dFRlc3RDb250
cm9sbGVyLT5kdW1wQXBwbGljYXRpb25DYWNoZURlbGVnYXRlQ2FsbGJhY2tzKCkpIHsKKyAgICAg
ICAgLy8gRm9yIGV4YW1wbGUsIG51bWJlcnMgZnJvbSAzMDAwMCAtIDM5OTk5IHdpbGwgb3V0cHV0
IGFzIDMwMDAwLgorICAgICAgICAvLyBSb3VuZGluZyB1cCBvciBkb3duIG5vdCByZWFsbHkgbWF0
dGVyIGZvciB0aGVzZSB0ZXN0cy4gSXQncworICAgICAgICAvLyBzdWZmaWNpZW50IHRvIGp1c3Qg
Z2V0IGEgcmFuZ2Ugb2YgMTAwMDAgdG8gZGV0ZXJtaW5lIGlmIHdlIHdlcmUKKyAgICAgICAgLy8g
YWJvdmUgb3IgYmVsb3cgYSB0aHJlc2hvbGQuCisgICAgICAgIGludDY0X3QgdHJ1bmNhdGVkU3Bh
Y2VOZWVkZWQgPSAodG90YWxTcGFjZU5lZWRlZCAvIDEwMDAwKSAqIDEwMDAwOworICAgICAgICBw
cmludGYoIlVJIERFTEVHQVRFIEFQUExJQ0FUSU9OIENBQ0hFIENBTExCQUNLOiBleGNlZWRlZEFw
cGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YUZvclNlY3VyaXR5T3JpZ2luOnslcywgJXMsICVpfSB0
b3RhbFNwYWNlTmVlZGVkOn4lbGx1XG4iLAorICAgICAgICAgICAgICAgZXdrX3NlY3VyaXR5X29y
aWdpbl9wcm90b2NvbF9nZXQob3JpZ2luKSwKKyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9v
cmlnaW5faG9zdF9nZXQob3JpZ2luKSwKKyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9vcmln
aW5fcG9ydF9nZXQob3JpZ2luKSwKKyAgICAgICAgICAgICAgIHRydW5jYXRlZFNwYWNlTmVlZGVk
KTsKKyAgICB9CisKKyAgICBpZiAoZ0xheW91dFRlc3RDb250cm9sbGVyLT5kaXNhbGxvd0luY3Jl
YXNlRm9yQXBwbGljYXRpb25DYWNoZVF1b3RhKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAg
cmV0dXJuIGRlZmF1bHRPcmlnaW5RdW90YTsKK30KKwogc3RhdGljIGJvb2wgc2hvdWxkVXNlU2lu
Z2xlQmFja2luZ1N0b3JlKCkKIHsKICAgICBjb25zdCBjaGFyKiB1c2VTaW5nbGVCYWNraW5nU3Rv
cmUgPSBnZXRlbnYoIkRSVF9VU0VfU0lOR0xFX0JBQ0tJTkdfU1RPUkUiKTsKQEAgLTE0Nyw2ICsx
NjgsNyBAQCBFdmFzX09iamVjdCogZHJ0Vmlld0FkZChFdmFzKiBldmFzKQogICAgIGFwaS5ydW5f
amF2YXNjcmlwdF9wcm9tcHQgPSBvbkphdmFTY3JpcHRQcm9tcHQ7CiAgICAgYXBpLndpbmRvd19j
cmVhdGUgPSBvbldpbmRvd0NyZWF0ZTsKICAgICBhcGkud2luZG93X2Nsb3NlID0gb25XaW5kb3dD
bG9zZTsKKyAgICBhcGkuZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVvdGEgPSBvbkV4Y2Vl
ZGVkQXBwbGljYXRpb25DYWNoZVF1b3RhOwogICAgIGFwaS5leGNlZWRlZF9kYXRhYmFzZV9xdW90
YSA9IG9uRXhjZWVkZWREYXRhYmFzZVF1b3RhOwogCiAgICAgcmV0dXJuIGV2YXNfb2JqZWN0X3Nt
YXJ0X2FkZChldmFzLCBldmFzX3NtYXJ0X2NsYXNzX25ldygmYXBpLnNjKSk7CmRpZmYgLS1naXQg
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAppbmRl
eCA4NmYyMzhkLi4wZGE2NGMwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwv
TGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Vm
bC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKQEAgLTU0OCwxMCArNTQ4LDExIEBAIHZvaWQg
TGF5b3V0VGVzdENvbnRyb2xsZXI6OmNsZWFyQWxsQXBwbGljYXRpb25DYWNoZXMoKQogICAgIGV3
a19zZXR0aW5nc19hcHBsaWNhdGlvbl9jYWNoZV9jbGVhcigpOwogfQogCi12b2lkIExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEodW5zaWduZWQgbG9u
ZyBsb25nKQordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0QXBwbGljYXRpb25DYWNoZU9y
aWdpblF1b3RhKHVuc2lnbmVkIGxvbmcgbG9uZyBxdW90YSkKIHsKLSAgICAvLyBGSVhNRTogSW1w
bGVtZW50IHRvIHN1cHBvcnQgYXBwbGljYXRpb24gY2FjaGUgcXVvdGFzLgotICAgIG5vdEltcGxl
bWVudGVkKCk7CisgICAgRXdrX1NlY3VyaXR5X09yaWdpbiogb3JpZ2luID0gZXdrX2ZyYW1lX3Nl
Y3VyaXR5X29yaWdpbl9nZXQoYnJvd3Nlci0+bWFpbkZyYW1lKCkpOworICAgIGV3a19zZWN1cml0
eV9vcmlnaW5fYXBwbGljYXRpb25fY2FjaGVfcXVvdGFfc2V0KG9yaWdpbiwgcXVvdGEpOworICAg
IGV3a19zZWN1cml0eV9vcmlnaW5fZnJlZShvcmlnaW4pOwogfQogCiB2b2lkIExheW91dFRlc3RD
b250cm9sbGVyOjpjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4oT3BhcXVlSlNTdHJpbmcq
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140479</attachid>
            <date>2012-05-06 22:40:16 -0700</date>
            <delta_ts>2012-05-15 22:38:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>85585_appcache_quota.patch</filename>
            <type>text/plain</type>
            <size>15380</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyOTA5YzJhLi4wNGIyNjNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MDcgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVuc2tpcCB0aGUgdGVzdCBjYXNlcyB0aGF0IHJlcXVpcmUg
aW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
IGluIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyLgorCisgICAgICAgICogcGxhdGZvcm0vZWZs
L1NraXBwZWQ6CisKIDIwMTItMDUtMDYgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIGV4cGVjdGF0aW9ucyB1cGRhdGUgZm9yIG92ZXJm
bG93LXBvc2l0aW9uaW5nLmh0bWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9l
ZmwvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCmluZGV4IGJiNTM3
ODcuLjdmZTM3MjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVk
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCkBAIC0zNjMsMjQgKzM2Mywy
NSBAQCBodHRwL3Rlc3RzL21pc2MvY29weS1yZXNvbHZlcy11cmxzLmh0bWwKICMgRUZMJ3MgTGF5
b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldENhY2hlTW9kZWwKIGZhc3Qv
ZG9tL0hUTUxTY3JpcHRFbGVtZW50L25lc3RlZC1leGVjdXRpb24uaHRtbAogCi0jIEVGTCdzIExh
eW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRBcHBsaWNhdGlvbkNhY2hl
T3JpZ2luUXVvdGEKLWh0dHAvdGVzdHMvYXBwY2FjaGUKLQotIyBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgY2xlYXJBcHBsaWNhdGlvbkNhY2hlRm9yT3JpZ2lu
Ci1odHRwL3Rlc3RzL2FwcGNhY2hlCi0KLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9l
cyBub3QgaW1wbGVtZW50IG9yaWdpbnNXaXRoQXBwbGljYXRpb25DYWNoZQotaHR0cC90ZXN0cy9h
cHBjYWNoZQotCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVu
dCBhcHBsaWNhdGlvbkNhY2hlRGlza1VzYWdlRm9yT3JpZ2luCi1odHRwL3Rlc3RzL2FwcGNhY2hl
Ci0KICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldERv
bWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUKIGh0dHAvdGVzdHMvc2VjdXJpdHkv
c2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZS5odG1sCiAKICMgRUZMJ3Mg
TGF5b3V0VGVzdENvbnRyb2xsZXIgb3ZlcnJpZGVQcmVmZXJlbmNlIGRvZXMgbm90IGltcGxlbWVu
dCBXZWJLaXRVc2VQcmVIVE1MNVBhcnNlclF1aXJrcyBwcmVmZXJlbmNlCiBmYXN0L3BhcnNlci9w
cmUtaHRtbDUtcGFyc2VyLXF1aXJrcy5odG1sCiAKKyMgRmFsbGJhY2sgcmVzb3VyY2Ugd2Fzbid0
IHVzZWQgZm9yIGEgcmVkaXJlY3QgdG8gYSByZXNvdXJjZSB3aXRoIGFub3RoZXIgb3JpZ2luCito
dHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWwKKworIyBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgY2xlYXJBcHBsaWNhdGlvbkNhY2hlRm9yT3JpZ2lu
CitodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi1kZWxldGUuaHRtbAoraHR0cC90ZXN0cy9hcHBj
YWNoZS9vcmlnaW4tdXNhZ2UuaHRtbAorCisjIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRv
ZXMgbm90IGltcGxlbWVudCBhcHBsaWNhdGlvbkNhY2hlRGlza1VzYWdlRm9yT3JpZ2luCitodHRw
L3Rlc3RzL2FwcGNhY2hlL29yaWdpbi11c2FnZS5odG1sCisKKyMgRUZMJ3MgTGF5b3V0VGVzdENv
bnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IG9yaWdpbnNXaXRoQXBwbGljYXRpb25DYWNoZQor
aHR0cC90ZXN0cy9hcHBjYWNoZS9vcmlnaW5zLXdpdGgtYXBwY2FjaGUuaHRtbAorCiAjIEVGTCdz
IExheW91dFRlc3RDb250cm9sbGVyIG92ZXJyaWRlUHJlZmVyZW5jZSBkb2VzIG5vdCBpbXBsZW1l
bnQgV2ViS2l0T2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkIHByZWZlcmVuY2UKIGh0
dHAvdGVzdHMvYXBwY2FjaGUvZGlzYWJsZWQuaHRtbAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggNGRl
YWJlOS4uYjg2YmMzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA1
LTA3ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAg
ICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50
IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODU1ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgbmV3IGZ1bmN0aW9uIHRvIEV3a19TZWN1cml0eV9P
cmlnaW4gdG8gc2V0IHRoZSBhcHBsaWNhdGlvbiBjYWNoZQorICAgICAgICBxdW90YS4gSW1wbGVt
ZW50IHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEgaW4KKyAgICAgICAgQ2hyb21l
Q2xpZW50RWZsLiBBZGQgZnVuY3Rpb24gdG8gdGhlIEV3a19WaWV3IHRvIHJlcG9ydCB0aGF0IHRo
ZQorICAgICAgICBhcHBsaWNhdGlvbiBjYWNoZSBxdW90YSB3YXMgcmVhY2hlZC4KKworICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDaHJvbWVDbGllbnRFZmw6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEpOgor
ICAgICAgICAqIGV3ay9ld2tfcHJpdmF0ZS5oOgorICAgICAgICAqIGV3ay9ld2tfc2VjdXJpdHlf
b3JpZ2luLmNwcDoKKyAgICAgICAgKGV3a19zZWN1cml0eV9vcmlnaW5fYXBwbGljYXRpb25fY2Fj
aGVfcXVvdGFfc2V0KToKKyAgICAgICAgKiBld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oOgorICAg
ICAgICAqIGV3ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRh
KToKKyAgICAgICAgKGV3a192aWV3X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKToK
KyAgICAgICAgKiBld2svZXdrX3ZpZXcuaDoKKwogMjAxMi0wNS0wNiAgTWlraGFpbCBQb3pkbnlh
a292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBFRkwn
cyBMYXlvdXRUZXN0Q29udHJvbGxlciBzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkIGlt
cGxlbWVudGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9y
dC9DaHJvbWVDbGllbnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQv
Q2hyb21lQ2xpZW50RWZsLmNwcAppbmRleCAxZTc2MTBhLi44ODEzOWQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKQEAg
LTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDaHJvbWVDbGll
bnRFZmwuaCIKIAorI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgiCiAjaW5jbHVk
ZSAiRmlsZUNob29zZXIuaCIKICNpbmNsdWRlICJGaWxlSWNvbkxvYWRlci5oIgogI2luY2x1ZGUg
IkZsb2F0UmVjdC5oIgpAQCAtMzg4LDkgKzM4OSwxNiBAQCB2b2lkIENocm9tZUNsaWVudEVmbDo6
cmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKQogICAgIG5vdEltcGxl
bWVudGVkKCk7CiB9CiAKLXZvaWQgQ2hyb21lQ2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25D
YWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCkKK3ZvaWQgQ2hyb21lQ2xp
ZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5T3JpZ2lu
KiBvcmlnaW4sIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkKIHsKLSAgICBub3RJbXBsZW1lbnRl
ZCgpOworICAgIEV3a19TZWN1cml0eV9PcmlnaW4qIGV3a09yaWdpbiA9IGV3a19zZWN1cml0eV9v
cmlnaW5fbmV3KG9yaWdpbik7CisgICAgaW50NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEgPSBXZWJD
b3JlOjpjYWNoZVN0b3JhZ2UoKS5kZWZhdWx0T3JpZ2luUXVvdGEoKTsKKworICAgIGludDY0X3Qg
bmV3UXVvdGEgPSBld2tfdmlld19leGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YShtX3Zp
ZXcsIGV3a09yaWdpbiwgZGVmYXVsdE9yaWdpblF1b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKKyAg
ICBpZiAobmV3UXVvdGEpCisgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fYXBwbGljYXRpb25f
Y2FjaGVfcXVvdGFfc2V0KGV3a09yaWdpbiwgbmV3UXVvdGEpOworCisgICAgZXdrX3NlY3VyaXR5
X29yaWdpbl9mcmVlKGV3a09yaWdpbik7CiB9CiAKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9ld2svZXdrX3ByaXZhdGUuaAppbmRleCAyNmQ0NDhkLi5iYjBjMjM3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ByaXZhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9ld2svZXdrX3ByaXZhdGUuaApAQCAtMTQ4LDYgKzE0OCw3IEBAIHZvaWQgZXdr
X3ZpZXdfcnVuX2phdmFzY3JpcHRfYWxlcnQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2Jq
ZWN0KiBmcmFtZSwgY29uCiBib29sIGV3a192aWV3X3J1bl9qYXZhc2NyaXB0X2NvbmZpcm0oRXZh
c19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgY29uc3QgY2hhciogbWVzc2Fn
ZSk7CiBib29sIGV3a192aWV3X3J1bl9qYXZhc2NyaXB0X3Byb21wdChFdmFzX09iamVjdCogZXdr
VmlldywgRXZhc19PYmplY3QqIGZyYW1lLCBjb25zdCBjaGFyKiBtZXNzYWdlLCBjb25zdCBjaGFy
KiBkZWZhdWx0VmFsdWUsIGNoYXIqKiB2YWx1ZSk7CiBib29sIGV3a192aWV3X3Nob3VsZF9pbnRl
cnJ1cHRfamF2YXNjcmlwdChFdmFzX09iamVjdCogZXdrVmlldyk7CitpbnQ2NF90IGV3a192aWV3
X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBF
d2tfU2VjdXJpdHlfT3JpZ2luICpvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9yaWdpblF1b3RhLCBp
bnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpOwogdWludDY0X3QgZXdrX3ZpZXdfZXhjZWVkZWRfZGF0
YWJhc2VfcXVvdGEoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgY29u
c3QgY2hhciogZGF0YWJhc2VOYW1lLCB1aW50NjRfdCBjdXJyZW50U2l6ZSwgdWludDY0X3QgZXhw
ZWN0ZWRTaXplKTsKIAogYm9vbCBld2tfdmlld19ydW5fb3Blbl9wYW5lbChFdmFzX09iamVjdCog
ZXdrVmlldywgRXZhc19PYmplY3QqIGZyYW1lLCBib29sIGFsbG93c011bHRpcGxlRmlsZXMsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBhY2NlcHRNSU1FVHlwZXMsIEVpbmFfTGlzdCoqIHNlbGVjdGVk
RmlsZW5hbWVzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJp
dHlfb3JpZ2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2lu
LmNwcAppbmRleCBjZDFmODE1Li5lNzU0ZDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a19zZWN1cml0eV9vcmlnaW4uY3BwCkBAIC0yMCw2ICsyMCw3IEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiZXdrX3NlY3VyaXR5X29yaWdpbi5oIgogCisjaW5jbHVkZSAiQXBw
bGljYXRpb25DYWNoZVN0b3JhZ2UuaCIKICNpbmNsdWRlICJEYXRhYmFzZVRyYWNrZXIuaCIKICNp
bmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgImV3a19wcml2YXRlLmgiCkBAIC03
OSw2ICs4MCwxMSBAQCB2b2lkIGV3a19zZWN1cml0eV9vcmlnaW5fd2ViX2RhdGFiYXNlX3F1b3Rh
X3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaQogI2VuZGlmCiB9CiAKK3ZvaWQg
ZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YV9zZXQoY29uc3QgRXdr
X1NlY3VyaXR5X09yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHF1b3RhKQoreworICAgIFdlYkNvcmU6
OmNhY2hlU3RvcmFnZSgpLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbi0+c2VjdXJp
dHlPcmlnaW4uZ2V0KCksIHF1b3RhKTsKK30KKwogdm9pZCBld2tfc2VjdXJpdHlfb3JpZ2luX2Zy
ZWUoRXdrX1NlY3VyaXR5X09yaWdpbiogb3JpZ2luKQogewogICAgIG9yaWdpbi0+c2VjdXJpdHlP
cmlnaW4gPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19zZWN1cml0
eV9vcmlnaW4uaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmgK
aW5kZXggODYxNjdmMy4uZGUwNGMxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a19zZWN1cml0eV9vcmlnaW4uaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3Nl
Y3VyaXR5X29yaWdpbi5oCkBAIC0xMTAsNiArMTEwLDE0IEBAIEVBUEkgdWludDY0X3QgICAgIGV3
a19zZWN1cml0eV9vcmlnaW5fd2ViX2RhdGFiYXNlX3F1b3RhX2dldChjb25zdCBFd2tfU2VjdXJp
dHlfCiBFQVBJIHZvaWQgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX3dlYl9kYXRhYmFzZV9x
dW90YV9zZXQoY29uc3QgRXdrX1NlY3VyaXR5X09yaWdpbiAqbywgdWludDY0X3QgcXVvdGEpOwog
CiAvKioKKyAqIFNldHMgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIHVzYWdlIHF1b3RhIGZvciBhIHNl
Y3VyaXR5IG9yaWdpbi4KKyAqCisgKiBAcGFyYW0gbyBzZWN1cml0eSBvcmlnaW4gb2JqZWN0Cisg
KiBAcGFyYW0gcXVvdGEgdGhlIHVzYWdlIHF1b3RhIGluIGJ5dGVzCisgKi8KK0VBUEkgdm9pZCAg
ICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fYXBwbGljYXRpb25fY2FjaGVfcXVvdGFfc2V0KGNv
bnN0IEV3a19TZWN1cml0eV9PcmlnaW4gKm8sIGludDY0X3QgcXVvdGEpOworCisvKioKICAqIFJl
bGVhc2UgYWxsIHJlc291cmNlcyBhbGxvY2F0ZWQgYnkgYSBzZWN1cml0eSBvcmlnaW4gb2JqZWN0
LgogICoKICAqIEBwYXJhbSBvIHNlY3VyaXR5IG9yaWdpbiBvYmplY3QKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX3ZpZXcuY3BwCmluZGV4IDdhMGVlMWUuLjI5YjEzNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a192aWV3LmNwcApAQCAtMzQyNSw2ICszNDI1LDMwIEBAIGJvb2wgZXdrX3ZpZXdfc2hvdWxkX2lu
dGVycnVwdF9qYXZhc2NyaXB0KEV2YXNfT2JqZWN0KiBld2tWaWV3KQogCiAvKioKICAqIEBpbnRl
cm5hbAorICogVGhpcyBpcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGFwcGxpY2F0aW9uIGlzIGFza2lu
ZyB0byBzdG9yZSBkYXRhIHRvIHRoZSBjYWNoZSBhbmQgdGhlCisgKiBxdW90YSBhbGxvY2F0ZWQg
dG8gdGhhdCBhcHBsaWNhdGlvbiBpcyBleGNlZWRlZC4gQnJvd3NlciBtYXkgdXNlIHRoaXMgdG8g
aW5jcmVhc2UgdGhlCisgKiBzaXplIG9mIHF1b3RhIGJlZm9yZSB0aGUgb3JpZ2luYXRpbmcgb3Bl
cmF0aW9uIGZhaWxzLgorICoKKyAqIEBwYXJhbSBld2tWaWV3IFZpZXcuCisgKiBAcGFyYW0gb3Jp
Z2luIFNlY3VyaXR5IG9yaWdpbi4KKyAqIEBwYXJhbSBkZWZhdWx0T3JpZ2luUXVvdGEgRGVmYXVs
dCBxdW90YSBmb3Igb3JpZ2luLgorICogQHBhcmFtIHRvdGFsU3BhY2VOZWVkZWQgVGhlIHRvdGFs
IHNwYWNlIG5lZWRlZCBpbiB0aGUgY2FjaGUgaW4gb3JkZXIgdG8gZnVsZmlsbAorICogYXBwbGlj
YXRpb24ncyByZXF1aXJlbWVudC4KKyAqLworaW50NjRfdCBld2tfdmlld19leGNlZWRlZF9hcHBs
aWNhdGlvbl9jYWNoZV9xdW90YShFdmFzX09iamVjdCogZXdrVmlldywgRXdrX1NlY3VyaXR5X09y
aWdpbiAqb3JpZ2luLCBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNw
YWNlTmVlZGVkKQoreworICAgIERCRygiZXdrVmlldz0lcCIsIGV3a1ZpZXcpOworICAgIEVXS19W
SUVXX1NEX0dFVF9PUl9SRVRVUk4oZXdrVmlldywgc21hcnREYXRhLCAwKTsKKyAgICBFSU5BX1NB
RkVUWV9PTl9OVUxMX1JFVFVSTl9WQUwoc21hcnREYXRhLT5hcGksIDApOworICAgIGlmICghc21h
cnREYXRhLT5hcGktPmV4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKQorICAgICAgICBy
ZXR1cm4gMDsKKworICAgIElORigiZGVmYXVsdE9yaWdpblF1b3RhPSUiIFBSSXU2NCAiIHRvdGFs
U3BhY2VOZWVkZWQ9JSIgUFJJdTY0LCBkZWZhdWx0T3JpZ2luUXVvdGEsIHRvdGFsU3BhY2VOZWVk
ZWQpOworICAgIHJldHVybiBzbWFydERhdGEtPmFwaS0+ZXhjZWVkZWRfYXBwbGljYXRpb25fY2Fj
aGVfcXVvdGEoc21hcnREYXRhLCBvcmlnaW4sIGRlZmF1bHRPcmlnaW5RdW90YSwgdG90YWxTcGFj
ZU5lZWRlZCk7Cit9CisKKy8qKgorICogQGludGVybmFsCiAgKiBUaGlzIGlzIGNhbGxlZCB3aGVu
ZXZlciB0aGUgd2ViIHNpdGUgc2hvd24gaW4gQHBhcmFtIGZyYW1lIGlzIGFza2luZyB0byBzdG9y
ZSBkYXRhCiAgKiB0byB0aGUgZGF0YWJhc2UgQHBhcmFtIGRhdGFiYXNlTmFtZSBhbmQgdGhlIHF1
b3RhIGFsbG9jYXRlZCB0byB0aGF0IHdlYiBzaXRlCiAgKiBpcyBleGNlZWRlZC4gQnJvd3NlciBt
YXkgdXNlIHRoaXMgdG8gaW5jcmVhc2UgdGhlIHNpemUgb2YgcXVvdGEgYmVmb3JlIHRoZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmggYi9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3ZpZXcuaAppbmRleCA0ZDg3NzI0Li45NWJmYWZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3ZpZXcuaApAQCAtMTc0LDYgKzE3NCw3IEBAIHN0cnVjdCBfRXdrX1ZpZXdfU21hcnRf
Q2xhc3MgewogICAgIEVpbmFfQm9vbCAoKnJ1bl9qYXZhc2NyaXB0X2NvbmZpcm0pKEV3a19WaWV3
X1NtYXJ0X0RhdGEgKnNkLCBFdmFzX09iamVjdCAqZnJhbWUsIGNvbnN0IGNoYXIgKm1lc3NhZ2Up
OwogICAgIEVpbmFfQm9vbCAoKnJ1bl9qYXZhc2NyaXB0X3Byb21wdCkoRXdrX1ZpZXdfU21hcnRf
RGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwgY29uc3QgY2hhciAqbWVzc2FnZSwgY29uc3Qg
Y2hhciAqZGVmYXVsdFZhbHVlLCBjaGFyICoqdmFsdWUpOwogICAgIEVpbmFfQm9vbCAoKnNob3Vs
ZF9pbnRlcnJ1cHRfamF2YXNjcmlwdCkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpOworICAgIHVp
bnQ2NF90ICgqZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVvdGEpKEV3a19WaWV3X1NtYXJ0
X0RhdGEgKnNkLCBFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9y
aWdpblF1b3RhLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpOwogICAgIHVpbnQ2NF90ICgqZXhj
ZWVkZWRfZGF0YWJhc2VfcXVvdGEpKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFdmFzX09iamVj
dCAqZnJhbWUsIGNvbnN0IGNoYXIgKmRhdGFiYXNlTmFtZSwgdWludDY0X3QgY3VycmVudF9zaXpl
LCB1aW50NjRfdCBleHBlY3RlZF9zaXplKTsKIAogICAgIEVpbmFfQm9vbCAoKnJ1bl9vcGVuX3Bh
bmVsKShFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3QgKmZyYW1lLCBFaW5hX0Jv
b2wgYWxsb3dzX211bHRpcGxlX2ZpbGVzLCBFaW5hX0xpc3QgKmFjY2VwdF90eXBlcywgRWluYV9M
aXN0ICoqc2VsZWN0ZWRfZmlsZW5hbWVzKTsKQEAgLTE4Niw3ICsxODcsNyBAQCBzdHJ1Y3QgX0V3
a19WaWV3X1NtYXJ0X0NsYXNzIHsKICAqIFRoZSB2ZXJzaW9uIHlvdSBoYXZlIHRvIHB1dCBpbnRv
IHRoZSB2ZXJzaW9uIGZpZWxkCiAgKiBpbiB0aGUgQGEgRXdrX1ZpZXdfU21hcnRfQ2xhc3Mgc3Ry
dWN0dXJlLgogICovCi0jZGVmaW5lIEVXS19WSUVXX1NNQVJUX0NMQVNTX1ZFUlNJT04gNFVMCisj
ZGVmaW5lIEVXS19WSUVXX1NNQVJUX0NMQVNTX1ZFUlNJT04gNVVMCiAKIC8qKgogICogSW5pdGlh
bGl6ZXMgYSB3aG9sZSBAYSBFd2tfVmlld19TbWFydF9DbGFzcyBzdHJ1Y3R1cmUuCmRpZmYgLS1n
aXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMWY3YTg4NC4uNDMx
ZDFlOSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDIxIEBACisyMDEyLTA1LTA3ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3Bo
ZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRy
b2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODU1ODUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhIGluIEVGTCdzCisgICAgICAgIExheW91dFRl
c3RDb250cm9sbGVyLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJU
cmVlQ2hyb21lLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlQ2hyb21lOjpyZXNldERlZmF1
bHRzVG9Db25zaXN0ZW50VmFsdWVzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvRHVt
cFJlbmRlclRyZWVWaWV3LmNwcDoKKyAgICAgICAgKG9uRXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hl
UXVvdGEpOgorICAgICAgICAoZHJ0Vmlld0FkZCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUv
ZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyOjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEpOgorCiAyMDEyLTA1LTA2ICBN
YXJ5IFd1ICA8bWFyeS53dUB0b3JjaG1vYmlsZS5jb20uY24+CiAKICAgICAgICAgQWRkIGEgY29u
dHJpYnV0b3IgdG8gY29tbWl0dGVycy5weQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Vm
bC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKaW5kZXggN2ZlMWMxOS4uYzJjMjk0ZSAxMDA2NDQK
LS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAor
KysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCkBA
IC0yMDQsNiArMjA0LDggQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6cmVzZXREZWZhdWx0
c1RvQ29uc2lzdGVudFZhbHVlcygpCiAgICAgZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9jbGVh
cigpOwogICAgIGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfZGVmYXVsdF9xdW90YV9zZXQoNSAq
IDEwMjQgKiAxMDI0KTsKIAorICAgIGV3a19zZXR0aW5nc19hcHBsaWNhdGlvbl9jYWNoZV9jbGVh
cigpOworCiAgICAgZXdrX3ZpZXdfc2V0dGluZ19wcml2YXRlX2Jyb3dzaW5nX3NldChtYWluVmll
dygpLCBFSU5BX0ZBTFNFKTsKICAgICBld2tfdmlld19zZXR0aW5nX3NwYXRpYWxfbmF2aWdhdGlv
bl9zZXQobWFpblZpZXcoKSwgRUlOQV9GQUxTRSk7CiAgICAgZXdrX3ZpZXdfc2V0dGluZ19lbmFi
bGVfZnJhbWVfZmxhdHRlbmluZ19zZXQobWFpblZpZXcoKSwgRUlOQV9GQUxTRSk7CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVWaWV3LmNwcCBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwCmluZGV4IGU4ZmNi
ODUuLmM1ZTJhYTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVu
ZGVyVHJlZVZpZXcuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVy
VHJlZVZpZXcuY3BwCkBAIC0xMjAsNiArMTIwLDI3IEBAIHN0YXRpYyB1aW50NjRfdCBvbkV4Y2Vl
ZGVkRGF0YWJhc2VRdW90YShFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEsIEV2YXNfT2Jq
CiAgICAgcmV0dXJuIDUgKiAxMDI0ICogMTAyNDsKIH0KIAorc3RhdGljIHVpbnQ2NF90IG9uRXhj
ZWVkZWRBcHBsaWNhdGlvbkNhY2hlUXVvdGEoRXdrX1ZpZXdfU21hcnRfRGF0YSosIEV3a19TZWN1
cml0eV9PcmlnaW4gKm9yaWdpbiwgaW50NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEsIGludDY0X3Qg
dG90YWxTcGFjZU5lZWRlZCkKK3sKKyAgICBpZiAoZ0xheW91dFRlc3RDb250cm9sbGVyLT5kdW1w
QXBwbGljYXRpb25DYWNoZURlbGVnYXRlQ2FsbGJhY2tzKCkpIHsKKyAgICAgICAgLy8gRm9yIGV4
YW1wbGUsIG51bWJlcnMgZnJvbSAzMDAwMCAtIDM5OTk5IHdpbGwgb3V0cHV0IGFzIDMwMDAwLgor
ICAgICAgICAvLyBSb3VuZGluZyB1cCBvciBkb3duIG5vdCByZWFsbHkgbWF0dGVyIGZvciB0aGVz
ZSB0ZXN0cy4gSXQncworICAgICAgICAvLyBzdWZmaWNpZW50IHRvIGp1c3QgZ2V0IGEgcmFuZ2Ug
b2YgMTAwMDAgdG8gZGV0ZXJtaW5lIGlmIHdlIHdlcmUKKyAgICAgICAgLy8gYWJvdmUgb3IgYmVs
b3cgYSB0aHJlc2hvbGQuCisgICAgICAgIGludDY0X3QgdHJ1bmNhdGVkU3BhY2VOZWVkZWQgPSAo
dG90YWxTcGFjZU5lZWRlZCAvIDEwMDAwKSAqIDEwMDAwOworICAgICAgICBwcmludGYoIlVJIERF
TEVHQVRFIEFQUExJQ0FUSU9OIENBQ0hFIENBTExCQUNLOiBleGNlZWRlZEFwcGxpY2F0aW9uQ2Fj
aGVPcmlnaW5RdW90YUZvclNlY3VyaXR5T3JpZ2luOnslcywgJXMsICVpfSB0b3RhbFNwYWNlTmVl
ZGVkOn4lbGx1XG4iLAorICAgICAgICAgICAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9wcm90b2Nv
bF9nZXQob3JpZ2luKSwKKyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5faG9zdF9n
ZXQob3JpZ2luKSwKKyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fcG9ydF9nZXQo
b3JpZ2luKSwKKyAgICAgICAgICAgICAgIHRydW5jYXRlZFNwYWNlTmVlZGVkKTsKKyAgICB9CisK
KyAgICBpZiAoZ0xheW91dFRlc3RDb250cm9sbGVyLT5kaXNhbGxvd0luY3JlYXNlRm9yQXBwbGlj
YXRpb25DYWNoZVF1b3RhKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIGRlZmF1
bHRPcmlnaW5RdW90YTsKK30KKwogc3RhdGljIGJvb2wgc2hvdWxkVXNlU2luZ2xlQmFja2luZ1N0
b3JlKCkKIHsKICAgICBjb25zdCBjaGFyKiB1c2VTaW5nbGVCYWNraW5nU3RvcmUgPSBnZXRlbnYo
IkRSVF9VU0VfU0lOR0xFX0JBQ0tJTkdfU1RPUkUiKTsKQEAgLTE0Nyw2ICsxNjgsNyBAQCBFdmFz
X09iamVjdCogZHJ0Vmlld0FkZChFdmFzKiBldmFzKQogICAgIGFwaS5ydW5famF2YXNjcmlwdF9w
cm9tcHQgPSBvbkphdmFTY3JpcHRQcm9tcHQ7CiAgICAgYXBpLndpbmRvd19jcmVhdGUgPSBvbldp
bmRvd0NyZWF0ZTsKICAgICBhcGkud2luZG93X2Nsb3NlID0gb25XaW5kb3dDbG9zZTsKKyAgICBh
cGkuZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVvdGEgPSBvbkV4Y2VlZGVkQXBwbGljYXRp
b25DYWNoZVF1b3RhOwogICAgIGFwaS5leGNlZWRlZF9kYXRhYmFzZV9xdW90YSA9IG9uRXhjZWVk
ZWREYXRhYmFzZVF1b3RhOwogCiAgICAgcmV0dXJuIGV2YXNfb2JqZWN0X3NtYXJ0X2FkZChldmFz
LCBldmFzX3NtYXJ0X2NsYXNzX25ldygmYXBpLnNjKSk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAppbmRleCA4MWY5M2MyLi4x
MGQ2ZjJmIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENv
bnRyb2xsZXJFZmwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0
Q29udHJvbGxlckVmbC5jcHAKQEAgLTU0MywxMCArNTQzLDExIEBAIHZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OmNsZWFyQWxsQXBwbGljYXRpb25DYWNoZXMoKQogICAgIGV3a19zZXR0aW5nc19h
cHBsaWNhdGlvbl9jYWNoZV9jbGVhcigpOwogfQogCi12b2lkIExheW91dFRlc3RDb250cm9sbGVy
OjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEodW5zaWduZWQgbG9uZyBsb25nKQordm9p
ZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKHVu
c2lnbmVkIGxvbmcgbG9uZyBxdW90YSkKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRvIHN1
cHBvcnQgYXBwbGljYXRpb24gY2FjaGUgcXVvdGFzLgotICAgIG5vdEltcGxlbWVudGVkKCk7Cisg
ICAgRXdrX1NlY3VyaXR5X09yaWdpbiogb3JpZ2luID0gZXdrX2ZyYW1lX3NlY3VyaXR5X29yaWdp
bl9nZXQoYnJvd3Nlci0+bWFpbkZyYW1lKCkpOworICAgIGV3a19zZWN1cml0eV9vcmlnaW5fYXBw
bGljYXRpb25fY2FjaGVfcXVvdGFfc2V0KG9yaWdpbiwgcXVvdGEpOworICAgIGV3a19zZWN1cml0
eV9vcmlnaW5fZnJlZShvcmlnaW4pOwogfQogCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpj
bGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4oT3BhcXVlSlNTdHJpbmcqKQo=
</data>
<flag name="review"
          id="146354"
          type_id="1"
          status="+"
          setter="gustavo"
    />
    <flag name="commit-queue"
          id="146355"
          type_id="3"
          status="-"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142149</attachid>
            <date>2012-05-15 22:38:09 -0700</date>
            <delta_ts>2012-05-15 22:47:45 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>85585_appcache_quota.patch</filename>
            <type>text/plain</type>
            <size>15252</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmViZGJkLi5kY2NhODU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MTUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVuc2tpcCB0aGUgdGVzdCBjYXNlcyB0aGF0IHJlcXVpcmUg
aW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
IGluIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyLgorCisgICAgICAgICogcGxhdGZvcm0vZWZs
L1NraXBwZWQ6CisKIDIwMTItMDUtMTUgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFtFRkxdW0RSVF0gRml4IGV2ZW50U2VuZGVyIGtleSBwcm92aWRpbmcK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5kZXggMGM0MDU0MS4uNjdmMGJhMiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1NraXBwZWQKQEAgLTI4NywyNCArMjg3LDI1IEBAIGh0dHAvdGVzdHMvbWlzYy9j
b3B5LXJlc29sdmVzLXVybHMuaHRtbAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2Vz
IG5vdCBpbXBsZW1lbnQgc2V0Q2FjaGVNb2RlbAogZmFzdC9kb20vSFRNTFNjcmlwdEVsZW1lbnQv
bmVzdGVkLWV4ZWN1dGlvbi5odG1sCiAKLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9l
cyBub3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQotaHR0cC90ZXN0
cy9hcHBjYWNoZQotCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxl
bWVudCBjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4KLWh0dHAvdGVzdHMvYXBwY2FjaGUK
LQotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgb3JpZ2lu
c1dpdGhBcHBsaWNhdGlvbkNhY2hlCi1odHRwL3Rlc3RzL2FwcGNhY2hlCi0KLSMgRUZMJ3MgTGF5
b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IGFwcGxpY2F0aW9uQ2FjaGVEaXNr
VXNhZ2VGb3JPcmlnaW4KLWh0dHAvdGVzdHMvYXBwY2FjaGUKLQogIyBFRkwncyBMYXlvdXRUZXN0
Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRl
bkZvclVSTFNjaGVtZQogaHR0cC90ZXN0cy9zZWN1cml0eS9zZXREb21haW5SZWxheGF0aW9uRm9y
YmlkZGVuRm9yVVJMU2NoZW1lLmh0bWwKIAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBv
dmVycmlkZVByZWZlcmVuY2UgZG9lcyBub3QgaW1wbGVtZW50IFdlYktpdFVzZVByZUhUTUw1UGFy
c2VyUXVpcmtzIHByZWZlcmVuY2UKIGZhc3QvcGFyc2VyL3ByZS1odG1sNS1wYXJzZXItcXVpcmtz
Lmh0bWwKIAorIyBGYWxsYmFjayByZXNvdXJjZSB3YXNuJ3QgdXNlZCBmb3IgYSByZWRpcmVjdCB0
byBhIHJlc291cmNlIHdpdGggYW5vdGhlciBvcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUvZmFs
bGJhY2suaHRtbAorCisjIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxl
bWVudCBjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUv
b3JpZ2luLWRlbGV0ZS5odG1sCitodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi11c2FnZS5odG1s
CisKKyMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IGFwcGxp
Y2F0aW9uQ2FjaGVEaXNrVXNhZ2VGb3JPcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUvb3JpZ2lu
LXVzYWdlLmh0bWwKKworIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBs
ZW1lbnQgb3JpZ2luc1dpdGhBcHBsaWNhdGlvbkNhY2hlCitodHRwL3Rlc3RzL2FwcGNhY2hlL29y
aWdpbnMtd2l0aC1hcHBjYWNoZS5odG1sCisKICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIg
b3ZlcnJpZGVQcmVmZXJlbmNlIGRvZXMgbm90IGltcGxlbWVudCBXZWJLaXRPZmZsaW5lV2ViQXBw
bGljYXRpb25DYWNoZUVuYWJsZWQgcHJlZmVyZW5jZQogaHR0cC90ZXN0cy9hcHBjYWNoZS9kaXNh
YmxlZC5odG1sCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCBjMWNiNjJhLi44MGYyNjk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDUtMTUgIENocmlzdG9waGUgRHVtZXog
IDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlv
dXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0QXBwbGljYXRpb25DYWNoZU9y
aWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBuZXcgZnVuY3Rpb24gdG8gRXdrX1NlY3VyaXR5X09yaWdpbiB0byBzZXQgdGhlIGFwcGxp
Y2F0aW9uIGNhY2hlCisgICAgICAgIHF1b3RhLiBJbXBsZW1lbnQgcmVhY2hlZEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YSBpbgorICAgICAgICBDaHJvbWVDbGllbnRFZmwuIEFkZCBmdW5jdGlv
biB0byB0aGUgRXdrX1ZpZXcgdG8gcmVwb3J0IHRoYXQgdGhlCisgICAgICAgIGFwcGxpY2F0aW9u
IGNhY2hlIHF1b3RhIHdhcyByZWFjaGVkLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvQ2hy
b21lQ2xpZW50RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNocm9tZUNsaWVudEVmbDo6cmVh
Y2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSk6CisgICAgICAgICogZXdrL2V3a19zZWN1
cml0eV9vcmlnaW4uY3BwOgorICAgICAgICAoZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlv
bl9jYWNoZV9xdW90YV9zZXQpOgorICAgICAgICAqIGV3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmg6
CisgICAgICAgICogZXdrL2V3a192aWV3LmNwcDoKKyAgICAgICAgKF9Fd2tfVmlld19Qcml2YXRl
X0RhdGEpOgorICAgICAgICAoZXdrX3ZpZXdfZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVv
dGEpOgorICAgICAgICAqIGV3ay9ld2tfdmlldy5oOgorICAgICAgICAqIGV3ay9ld2tfdmlld19w
cml2YXRlLmg6CisKIDIwMTItMDUtMTUgIEtpaG9uZyBLd29uICA8a2lob25nLmt3b25Ac2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgW0VGTF0gRW5hYmxlIEZ1bGxzY3JlZW4gQVBJCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwIGIv
U291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcAppbmRl
eCBlMTk4YmI0Li45MzA1YWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNv
cmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJDaHJvbWVDbGllbnRFZmwuaCIKIAorI2luY2x1ZGUgIkFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgiCiAjaW5jbHVkZSAiRmlsZUNob29zZXIuaCIKICNpbmNs
dWRlICJGaWxlSWNvbkxvYWRlci5oIgogI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgpAQCAtMzk1LDkg
KzM5NiwxNiBAQCB2b2lkIENocm9tZUNsaWVudEVmbDo6cmVhY2hlZE1heEFwcENhY2hlU2l6ZShp
bnQ2NF90IHNwYWNlTmVlZGVkKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgQ2hy
b21lQ2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5
T3JpZ2luKiwgaW50NjRfdCkKK3ZvaWQgQ2hyb21lQ2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRp
b25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIGludDY0X3QgdG90YWxT
cGFjZU5lZWRlZCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIEV3a19TZWN1cml0eV9P
cmlnaW4qIGV3a09yaWdpbiA9IGV3a19zZWN1cml0eV9vcmlnaW5fbmV3KG9yaWdpbik7CisgICAg
aW50NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEgPSBXZWJDb3JlOjpjYWNoZVN0b3JhZ2UoKS5kZWZh
dWx0T3JpZ2luUXVvdGEoKTsKKworICAgIGludDY0X3QgbmV3UXVvdGEgPSBld2tfdmlld19leGNl
ZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YShtX3ZpZXcsIGV3a09yaWdpbiwgZGVmYXVsdE9y
aWdpblF1b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKKyAgICBpZiAobmV3UXVvdGEpCisgICAgICAg
IGV3a19zZWN1cml0eV9vcmlnaW5fYXBwbGljYXRpb25fY2FjaGVfcXVvdGFfc2V0KGV3a09yaWdp
biwgbmV3UXVvdGEpOworCisgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9mcmVlKGV3a09yaWdpbik7
CiB9CiAKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9lZmwvZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uY3BwIGIvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a19zZWN1cml0eV9vcmlnaW4uY3BwCmluZGV4IGNkMWY4MTUuLmU3NTRkNGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAKQEAgLTIwLDYgKzIw
LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJld2tfc2VjdXJpdHlfb3JpZ2lu
LmgiCiAKKyNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oIgogI2luY2x1ZGUgIkRh
dGFiYXNlVHJhY2tlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
ZXdrX3ByaXZhdGUuaCIKQEAgLTc5LDYgKzgwLDExIEBAIHZvaWQgZXdrX3NlY3VyaXR5X29yaWdp
bl93ZWJfZGF0YWJhc2VfcXVvdGFfc2V0KGNvbnN0IEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdp
CiAjZW5kaWYKIH0KIAordm9pZCBld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9uX2NhY2hl
X3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4sIGludDY0X3QgcXVv
dGEpCit7CisgICAgV2ViQ29yZTo6Y2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkUXVvdGFGb3JP
cmlnaW4ob3JpZ2luLT5zZWN1cml0eU9yaWdpbi5nZXQoKSwgcXVvdGEpOworfQorCiB2b2lkIGV3
a19zZWN1cml0eV9vcmlnaW5fZnJlZShFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4pCiB7CiAg
ICAgb3JpZ2luLT5zZWN1cml0eU9yaWdpbiA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a19zZWN1cml0eV9vcmlnaW4uaAppbmRleCA4NjE2N2YzLi5kZTA0YzFkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmgKQEAgLTExMCw2ICsxMTAsMTQgQEAg
RUFQSSB1aW50NjRfdCAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl93ZWJfZGF0YWJhc2VfcXVvdGFf
Z2V0KGNvbnN0IEV3a19TZWN1cml0eV8KIEVBUEkgdm9pZCAgICAgICAgIGV3a19zZWN1cml0eV9v
cmlnaW5fd2ViX2RhdGFiYXNlX3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luICpv
LCB1aW50NjRfdCBxdW90YSk7CiAKIC8qKgorICogU2V0cyB0aGUgYXBwbGljYXRpb24gY2FjaGUg
dXNhZ2UgcXVvdGEgZm9yIGEgc2VjdXJpdHkgb3JpZ2luLgorICoKKyAqIEBwYXJhbSBvIHNlY3Vy
aXR5IG9yaWdpbiBvYmplY3QKKyAqIEBwYXJhbSBxdW90YSB0aGUgdXNhZ2UgcXVvdGEgaW4gYnl0
ZXMKKyAqLworRUFQSSB2b2lkICAgICAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlv
bl9jYWNoZV9xdW90YV9zZXQoY29uc3QgRXdrX1NlY3VyaXR5X09yaWdpbiAqbywgaW50NjRfdCBx
dW90YSk7CisKKy8qKgogICogUmVsZWFzZSBhbGwgcmVzb3VyY2VzIGFsbG9jYXRlZCBieSBhIHNl
Y3VyaXR5IG9yaWdpbiBvYmplY3QuCiAgKgogICogQHBhcmFtIG8gc2VjdXJpdHkgb3JpZ2luIG9i
amVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggY2E2MDA4ZS4uZTBlZmQyZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC0zNDM0LDYgKzM0MzQsMzAgQEAgYm9v
bCBld2tfdmlld19zaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQoRXZhc19PYmplY3QqIGV3a1Zp
ZXcpCiAKIC8qKgogICogQGludGVybmFsCisgKiBUaGlzIGlzIGNhbGxlZCB3aGVuZXZlciB0aGUg
YXBwbGljYXRpb24gaXMgYXNraW5nIHRvIHN0b3JlIGRhdGEgdG8gdGhlIGNhY2hlIGFuZCB0aGUK
KyAqIHF1b3RhIGFsbG9jYXRlZCB0byB0aGF0IGFwcGxpY2F0aW9uIGlzIGV4Y2VlZGVkLiBCcm93
c2VyIG1heSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUKKyAqIHNpemUgb2YgcXVvdGEgYmVmb3Jl
IHRoZSBvcmlnaW5hdGluZyBvcGVyYXRpb24gZmFpbHMuCisgKgorICogQHBhcmFtIGV3a1ZpZXcg
Vmlldy4KKyAqIEBwYXJhbSBvcmlnaW4gU2VjdXJpdHkgb3JpZ2luLgorICogQHBhcmFtIGRlZmF1
bHRPcmlnaW5RdW90YSBEZWZhdWx0IHF1b3RhIGZvciBvcmlnaW4uCisgKiBAcGFyYW0gdG90YWxT
cGFjZU5lZWRlZCBUaGUgdG90YWwgc3BhY2UgbmVlZGVkIGluIHRoZSBjYWNoZSBpbiBvcmRlciB0
byBmdWxmaWxsCisgKiBhcHBsaWNhdGlvbidzIHJlcXVpcmVtZW50LgorICovCitpbnQ2NF90IGV3
a192aWV3X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKEV2YXNfT2JqZWN0KiBld2tW
aWV3LCBFd2tfU2VjdXJpdHlfT3JpZ2luICpvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9yaWdpblF1
b3RhLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpCit7CisgICAgREJHKCJld2tWaWV3PSVwIiwg
ZXdrVmlldyk7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBzbWFydERh
dGEsIDApOworICAgIEVJTkFfU0FGRVRZX09OX05VTExfUkVUVVJOX1ZBTChzbWFydERhdGEtPmFw
aSwgMCk7CisgICAgaWYgKCFzbWFydERhdGEtPmFwaS0+ZXhjZWVkZWRfYXBwbGljYXRpb25fY2Fj
aGVfcXVvdGEpCisgICAgICAgIHJldHVybiAwOworCisgICAgSU5GKCJkZWZhdWx0T3JpZ2luUXVv
dGE9JSIgUFJJdTY0ICIgdG90YWxTcGFjZU5lZWRlZD0lIiBQUkl1NjQsIGRlZmF1bHRPcmlnaW5R
dW90YSwgdG90YWxTcGFjZU5lZWRlZCk7CisgICAgcmV0dXJuIHNtYXJ0RGF0YS0+YXBpLT5leGNl
ZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YShzbWFydERhdGEsIG9yaWdpbiwgZGVmYXVsdE9y
aWdpblF1b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKK30KKworLyoqCisgKiBAaW50ZXJuYWwKICAq
IFRoaXMgaXMgY2FsbGVkIHdoZW5ldmVyIHRoZSB3ZWIgc2l0ZSBzaG93biBpbiBAcGFyYW0gZnJh
bWUgaXMgYXNraW5nIHRvIHN0b3JlIGRhdGEKICAqIHRvIHRoZSBkYXRhYmFzZSBAcGFyYW0gZGF0
YWJhc2VOYW1lIGFuZCB0aGUgcXVvdGEgYWxsb2NhdGVkIHRvIHRoYXQgd2ViIHNpdGUKICAqIGlz
IGV4Y2VlZGVkLiBCcm93c2VyIG1heSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUgc2l6ZSBvZiBx
dW90YSBiZWZvcmUgdGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3Zp
ZXcuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCmluZGV4IDk4MjEwZjguLjYx
YzczOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCkBAIC0xNzQsNiArMTc0LDcgQEAgc3Ry
dWN0IF9Fd2tfVmlld19TbWFydF9DbGFzcyB7CiAgICAgRWluYV9Cb29sICgqcnVuX2phdmFzY3Jp
cHRfY29uZmlybSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwg
Y29uc3QgY2hhciAqbWVzc2FnZSk7CiAgICAgRWluYV9Cb29sICgqcnVuX2phdmFzY3JpcHRfcHJv
bXB0KShFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3QgKmZyYW1lLCBjb25zdCBj
aGFyICptZXNzYWdlLCBjb25zdCBjaGFyICpkZWZhdWx0VmFsdWUsIGNoYXIgKip2YWx1ZSk7CiAg
ICAgRWluYV9Cb29sICgqc2hvdWxkX2ludGVycnVwdF9qYXZhc2NyaXB0KShFd2tfVmlld19TbWFy
dF9EYXRhICpzZCk7CisgICAgdWludDY0X3QgKCpleGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9x
dW90YSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdp
biwgaW50NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEsIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7
CiAgICAgdWludDY0X3QgKCpleGNlZWRlZF9kYXRhYmFzZV9xdW90YSkoRXdrX1ZpZXdfU21hcnRf
RGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwgY29uc3QgY2hhciAqZGF0YWJhc2VOYW1lLCB1
aW50NjRfdCBjdXJyZW50X3NpemUsIHVpbnQ2NF90IGV4cGVjdGVkX3NpemUpOwogCiAgICAgRWlu
YV9Cb29sICgqcnVuX29wZW5fcGFuZWwpKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFdmFzX09i
amVjdCAqZnJhbWUsIEVpbmFfQm9vbCBhbGxvd3NfbXVsdGlwbGVfZmlsZXMsIEVpbmFfTGlzdCAq
YWNjZXB0X3R5cGVzLCBFaW5hX0xpc3QgKipzZWxlY3RlZF9maWxlbmFtZXMpOwpAQCAtMTg2LDcg
KzE4Nyw3IEBAIHN0cnVjdCBfRXdrX1ZpZXdfU21hcnRfQ2xhc3MgewogICogVGhlIHZlcnNpb24g
eW91IGhhdmUgdG8gcHV0IGludG8gdGhlIHZlcnNpb24gZmllbGQKICAqIGluIHRoZSBAYSBFd2tf
Vmlld19TbWFydF9DbGFzcyBzdHJ1Y3R1cmUuCiAgKi8KLSNkZWZpbmUgRVdLX1ZJRVdfU01BUlRf
Q0xBU1NfVkVSU0lPTiA0VUwKKyNkZWZpbmUgRVdLX1ZJRVdfU01BUlRfQ0xBU1NfVkVSU0lPTiA1
VUwKIAogLyoqCiAgKiBJbml0aWFsaXplcyBhIHdob2xlIEBhIEV3a19WaWV3X1NtYXJ0X0NsYXNz
IHN0cnVjdHVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19w
cml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oCmluZGV4
IDYwZjYyMjAuLjcwZWYwMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tf
dmlld19wcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3ByaXZh
dGUuaApAQCAtODksNiArODksNyBAQCB2b2lkIGV3a192aWV3X3J1bl9qYXZhc2NyaXB0X2FsZXJ0
KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX09iamVjdCogZnJhbWUsIGNvbgogYm9vbCBld2tf
dmlld19ydW5famF2YXNjcmlwdF9jb25maXJtKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX09i
amVjdCogZnJhbWUsIGNvbnN0IGNoYXIqIG1lc3NhZ2UpOwogYm9vbCBld2tfdmlld19ydW5famF2
YXNjcmlwdF9wcm9tcHQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwg
Y29uc3QgY2hhciogbWVzc2FnZSwgY29uc3QgY2hhciogZGVmYXVsdFZhbHVlLCBjaGFyKiogdmFs
dWUpOwogYm9vbCBld2tfdmlld19zaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQoRXZhc19PYmpl
Y3QqIGV3a1ZpZXcpOworaW50NjRfdCBld2tfdmlld19leGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNo
ZV9xdW90YShFdmFzX09iamVjdCogZXdrVmlldywgRXdrX1NlY3VyaXR5X09yaWdpbiAqb3JpZ2lu
LCBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKTsK
IHVpbnQ2NF90IGV3a192aWV3X2V4Y2VlZGVkX2RhdGFiYXNlX3F1b3RhKEV2YXNfT2JqZWN0KiBl
d2tWaWV3LCBFdmFzX09iamVjdCogZnJhbWUsIGNvbnN0IGNoYXIqIGRhdGFiYXNlTmFtZSwgdWlu
dDY0X3QgY3VycmVudFNpemUsIHVpbnQ2NF90IGV4cGVjdGVkU2l6ZSk7CiAKIGJvb2wgZXdrX3Zp
ZXdfcnVuX29wZW5fcGFuZWwoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFt
ZSwgYm9vbCBhbGxvd3NNdWx0aXBsZUZpbGVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYWNjZXB0
TUlNRVR5cGVzLCBFaW5hX0xpc3QqKiBzZWxlY3RlZEZpbGVuYW1lcyk7CmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTNiMWYzZS4uYWMwYmQ5MyAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIxIEBACisyMDEyLTA1LTE1ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1l
ekBpbnRlbC5jb20+CisKKyAgICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIg
ZG9lcyBub3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODU1ODUKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgc2V0QXBw
bGljYXRpb25DYWNoZU9yaWdpblF1b3RhIGluIEVGTCdzCisgICAgICAgIExheW91dFRlc3RDb250
cm9sbGVyLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hy
b21lLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlQ2hyb21lOjpyZXNldERlZmF1bHRzVG9D
b25zaXN0ZW50VmFsdWVzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRl
clRyZWVWaWV3LmNwcDoKKyAgICAgICAgKG9uRXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hlUXVvdGEp
OgorICAgICAgICAoZHJ0Vmlld0FkZCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0xh
eW91dFRlc3RDb250cm9sbGVyRWZsLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVy
OjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEpOgorCiAyMDEyLTA1LTE1ICBLYW5naWwg
SGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtEUlRdIEZpeCBl
dmVudFNlbmRlciBrZXkgcHJvdmlkaW5nCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZs
L0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAppbmRleCBhYWE1NGViLi44Y2E2NGQ2IDEwMDY0NAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCisr
KyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKQEAg
LTIxMSw2ICsyMTEsNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlQ2hyb21lOjpyZXNldERlZmF1bHRz
VG9Db25zaXN0ZW50VmFsdWVzKCkKICAgICBld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX2RlZmF1
bHRfcXVvdGFfc2V0KDUgKiAxMDI0ICogMTAyNCk7CiAKICAgICBld2tfc2V0dGluZ3NfbWVtb3J5
X2NhY2hlX2NsZWFyKCk7CisgICAgZXdrX3NldHRpbmdzX2FwcGxpY2F0aW9uX2NhY2hlX2NsZWFy
KCk7CiAKICAgICBld2tfdmlld19zZXR0aW5nX3ByaXZhdGVfYnJvd3Npbmdfc2V0KG1haW5WaWV3
KCksIEVJTkFfRkFMU0UpOwogICAgIGV3a192aWV3X3NldHRpbmdfc3BhdGlhbF9uYXZpZ2F0aW9u
X3NldChtYWluVmlldygpLCBFSU5BX0ZBTFNFKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
ZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKaW5kZXggZThmY2I4NS4uZjlmOGY2NSAxMDA2NDQK
LS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKQEAgLTEy
MCw2ICsxMjAsMjcgQEAgc3RhdGljIHVpbnQ2NF90IG9uRXhjZWVkZWREYXRhYmFzZVF1b3RhKEV3
a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSwgRXZhc19PYmoKICAgICByZXR1cm4gNSAqIDEw
MjQgKiAxMDI0OwogfQogCitzdGF0aWMgdWludDY0X3Qgb25FeGNlZWRlZEFwcGxpY2F0aW9uQ2Fj
aGVRdW90YShFd2tfVmlld19TbWFydF9EYXRhKiwgRXdrX1NlY3VyaXR5X09yaWdpbiAqb3JpZ2lu
LCBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKQor
eworICAgIGlmIChnTGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBBcHBsaWNhdGlvbkNhY2hlRGVs
ZWdhdGVDYWxsYmFja3MoKSkgeworICAgICAgICAvLyBGb3IgZXhhbXBsZSwgbnVtYmVycyBmcm9t
IDMwMDAwIC0gMzk5OTkgd2lsbCBvdXRwdXQgYXMgMzAwMDAuCisgICAgICAgIC8vIFJvdW5kaW5n
IHVwIG9yIGRvd24gZG9lcyBub3QgcmVhbGx5IG1hdHRlciBmb3IgdGhlc2UgdGVzdHMuIEl0J3MK
KyAgICAgICAgLy8gc3VmZmljaWVudCB0byBqdXN0IGdldCBhIHJhbmdlIG9mIDEwMDAwIHRvIGRl
dGVybWluZSBpZiB3ZSB3ZXJlCisgICAgICAgIC8vIGFib3ZlIG9yIGJlbG93IGEgdGhyZXNob2xk
LgorICAgICAgICBpbnQ2NF90IHRydW5jYXRlZFNwYWNlTmVlZGVkID0gKHRvdGFsU3BhY2VOZWVk
ZWQgLyAxMDAwMCkgKiAxMDAwMDsKKyAgICAgICAgcHJpbnRmKCJVSSBERUxFR0FURSBBUFBMSUNB
VElPTiBDQUNIRSBDQUxMQkFDSzogZXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGFG
b3JTZWN1cml0eU9yaWdpbjp7JXMsICVzLCAlaX0gdG90YWxTcGFjZU5lZWRlZDp+JWxsdVxuIiwK
KyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fcHJvdG9jb2xfZ2V0KG9yaWdpbiks
CisgICAgICAgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2hvc3RfZ2V0KG9yaWdpbiksCisg
ICAgICAgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX3BvcnRfZ2V0KG9yaWdpbiksCisgICAg
ICAgICAgICAgICB0cnVuY2F0ZWRTcGFjZU5lZWRlZCk7CisgICAgfQorCisgICAgaWYgKGdMYXlv
dXRUZXN0Q29udHJvbGxlci0+ZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90
YSgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBkZWZhdWx0T3JpZ2luUXVvdGE7
Cit9CisKIHN0YXRpYyBib29sIHNob3VsZFVzZVNpbmdsZUJhY2tpbmdTdG9yZSgpCiB7CiAgICAg
Y29uc3QgY2hhciogdXNlU2luZ2xlQmFja2luZ1N0b3JlID0gZ2V0ZW52KCJEUlRfVVNFX1NJTkdM
RV9CQUNLSU5HX1NUT1JFIik7CkBAIC0xNDcsNiArMTY4LDcgQEAgRXZhc19PYmplY3QqIGRydFZp
ZXdBZGQoRXZhcyogZXZhcykKICAgICBhcGkucnVuX2phdmFzY3JpcHRfcHJvbXB0ID0gb25KYXZh
U2NyaXB0UHJvbXB0OwogICAgIGFwaS53aW5kb3dfY3JlYXRlID0gb25XaW5kb3dDcmVhdGU7CiAg
ICAgYXBpLndpbmRvd19jbG9zZSA9IG9uV2luZG93Q2xvc2U7CisgICAgYXBpLmV4Y2VlZGVkX2Fw
cGxpY2F0aW9uX2NhY2hlX3F1b3RhID0gb25FeGNlZWRlZEFwcGxpY2F0aW9uQ2FjaGVRdW90YTsK
ICAgICBhcGkuZXhjZWVkZWRfZGF0YWJhc2VfcXVvdGEgPSBvbkV4Y2VlZGVkRGF0YWJhc2VRdW90
YTsKIAogICAgIHJldHVybiBldmFzX29iamVjdF9zbWFydF9hZGQoZXZhcywgZXZhc19zbWFydF9j
bGFzc19uZXcoJmFwaS5zYykpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZs
L0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9M
YXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKaW5kZXggMjk4MzhiZi4uODAxNDAzNSAxMDA2NDQK
LS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNw
cAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwu
Y3BwCkBAIC01NDMsMTAgKzU0MywxMSBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpjbGVh
ckFsbEFwcGxpY2F0aW9uQ2FjaGVzKCkKICAgICBld2tfc2V0dGluZ3NfYXBwbGljYXRpb25fY2Fj
aGVfY2xlYXIoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0QXBwbGljYXRp
b25DYWNoZU9yaWdpblF1b3RhKHVuc2lnbmVkIGxvbmcgbG9uZykKK3ZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSh1bnNpZ25lZCBsb25nIGxv
bmcgcXVvdGEpCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0byBzdXBwb3J0IGFwcGxpY2F0
aW9uIGNhY2hlIHF1b3Rhcy4KLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIEV3a19TZWN1cml0
eV9PcmlnaW4qIG9yaWdpbiA9IGV3a19mcmFtZV9zZWN1cml0eV9vcmlnaW5fZ2V0KGJyb3dzZXIt
Pm1haW5GcmFtZSgpKTsKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9uX2NhY2hl
X3F1b3RhX3NldChvcmlnaW4sIHF1b3RhKTsKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2ZyZWUo
b3JpZ2luKTsKIH0KIAogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2xlYXJBcHBsaWNhdGlv
bkNhY2hlRm9yT3JpZ2luKE9wYXF1ZUpTU3RyaW5nKikK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142153</attachid>
            <date>2012-05-15 22:47:45 -0700</date>
            <delta_ts>2012-05-16 02:35:17 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>85585_appcache_quota.patch</filename>
            <type>text/plain</type>
            <size>15474</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmViZGJkLi5kY2NhODU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MTUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVuc2tpcCB0aGUgdGVzdCBjYXNlcyB0aGF0IHJlcXVpcmUg
aW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
IGluIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyLgorCisgICAgICAgICogcGxhdGZvcm0vZWZs
L1NraXBwZWQ6CisKIDIwMTItMDUtMTUgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFtFRkxdW0RSVF0gRml4IGV2ZW50U2VuZGVyIGtleSBwcm92aWRpbmcK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5kZXggMGM0MDU0MS4uNjdmMGJhMiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1NraXBwZWQKQEAgLTI4NywyNCArMjg3LDI1IEBAIGh0dHAvdGVzdHMvbWlzYy9j
b3B5LXJlc29sdmVzLXVybHMuaHRtbAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2Vz
IG5vdCBpbXBsZW1lbnQgc2V0Q2FjaGVNb2RlbAogZmFzdC9kb20vSFRNTFNjcmlwdEVsZW1lbnQv
bmVzdGVkLWV4ZWN1dGlvbi5odG1sCiAKLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9l
cyBub3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQotaHR0cC90ZXN0
cy9hcHBjYWNoZQotCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxl
bWVudCBjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4KLWh0dHAvdGVzdHMvYXBwY2FjaGUK
LQotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgb3JpZ2lu
c1dpdGhBcHBsaWNhdGlvbkNhY2hlCi1odHRwL3Rlc3RzL2FwcGNhY2hlCi0KLSMgRUZMJ3MgTGF5
b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IGFwcGxpY2F0aW9uQ2FjaGVEaXNr
VXNhZ2VGb3JPcmlnaW4KLWh0dHAvdGVzdHMvYXBwY2FjaGUKLQogIyBFRkwncyBMYXlvdXRUZXN0
Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRl
bkZvclVSTFNjaGVtZQogaHR0cC90ZXN0cy9zZWN1cml0eS9zZXREb21haW5SZWxheGF0aW9uRm9y
YmlkZGVuRm9yVVJMU2NoZW1lLmh0bWwKIAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBv
dmVycmlkZVByZWZlcmVuY2UgZG9lcyBub3QgaW1wbGVtZW50IFdlYktpdFVzZVByZUhUTUw1UGFy
c2VyUXVpcmtzIHByZWZlcmVuY2UKIGZhc3QvcGFyc2VyL3ByZS1odG1sNS1wYXJzZXItcXVpcmtz
Lmh0bWwKIAorIyBGYWxsYmFjayByZXNvdXJjZSB3YXNuJ3QgdXNlZCBmb3IgYSByZWRpcmVjdCB0
byBhIHJlc291cmNlIHdpdGggYW5vdGhlciBvcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUvZmFs
bGJhY2suaHRtbAorCisjIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxl
bWVudCBjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUv
b3JpZ2luLWRlbGV0ZS5odG1sCitodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi11c2FnZS5odG1s
CisKKyMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IGFwcGxp
Y2F0aW9uQ2FjaGVEaXNrVXNhZ2VGb3JPcmlnaW4KK2h0dHAvdGVzdHMvYXBwY2FjaGUvb3JpZ2lu
LXVzYWdlLmh0bWwKKworIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBs
ZW1lbnQgb3JpZ2luc1dpdGhBcHBsaWNhdGlvbkNhY2hlCitodHRwL3Rlc3RzL2FwcGNhY2hlL29y
aWdpbnMtd2l0aC1hcHBjYWNoZS5odG1sCisKICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIg
b3ZlcnJpZGVQcmVmZXJlbmNlIGRvZXMgbm90IGltcGxlbWVudCBXZWJLaXRPZmZsaW5lV2ViQXBw
bGljYXRpb25DYWNoZUVuYWJsZWQgcHJlZmVyZW5jZQogaHR0cC90ZXN0cy9hcHBjYWNoZS9kaXNh
YmxlZC5odG1sCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCBjMWNiNjJhLi44MGYyNjk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDUtMTUgIENocmlzdG9waGUgRHVtZXog
IDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlv
dXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0QXBwbGljYXRpb25DYWNoZU9y
aWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBuZXcgZnVuY3Rpb24gdG8gRXdrX1NlY3VyaXR5X09yaWdpbiB0byBzZXQgdGhlIGFwcGxp
Y2F0aW9uIGNhY2hlCisgICAgICAgIHF1b3RhLiBJbXBsZW1lbnQgcmVhY2hlZEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YSBpbgorICAgICAgICBDaHJvbWVDbGllbnRFZmwuIEFkZCBmdW5jdGlv
biB0byB0aGUgRXdrX1ZpZXcgdG8gcmVwb3J0IHRoYXQgdGhlCisgICAgICAgIGFwcGxpY2F0aW9u
IGNhY2hlIHF1b3RhIHdhcyByZWFjaGVkLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvQ2hy
b21lQ2xpZW50RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNocm9tZUNsaWVudEVmbDo6cmVh
Y2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSk6CisgICAgICAgICogZXdrL2V3a19zZWN1
cml0eV9vcmlnaW4uY3BwOgorICAgICAgICAoZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlv
bl9jYWNoZV9xdW90YV9zZXQpOgorICAgICAgICAqIGV3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmg6
CisgICAgICAgICogZXdrL2V3a192aWV3LmNwcDoKKyAgICAgICAgKF9Fd2tfVmlld19Qcml2YXRl
X0RhdGEpOgorICAgICAgICAoZXdrX3ZpZXdfZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVv
dGEpOgorICAgICAgICAqIGV3ay9ld2tfdmlldy5oOgorICAgICAgICAqIGV3ay9ld2tfdmlld19w
cml2YXRlLmg6CisKIDIwMTItMDUtMTUgIEtpaG9uZyBLd29uICA8a2lob25nLmt3b25Ac2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgW0VGTF0gRW5hYmxlIEZ1bGxzY3JlZW4gQVBJCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwIGIv
U291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcAppbmRl
eCBlMTk4YmI0Li5kMDM0ZTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNv
cmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJDaHJvbWVDbGllbnRFZmwuaCIKIAorI2luY2x1ZGUgIkFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgiCiAjaW5jbHVkZSAiRmlsZUNob29zZXIuaCIKICNpbmNs
dWRlICJGaWxlSWNvbkxvYWRlci5oIgogI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgpAQCAtNTMsNiAr
NTQsNyBAQAogI2luY2x1ZGUgIldpbmRvd0ZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiZXdrX2ZyYW1l
X3ByaXZhdGUuaCIKICNpbmNsdWRlICJld2tfcHJpdmF0ZS5oIgorI2luY2x1ZGUgImV3a19zZWN1
cml0eV9vcmlnaW5fcHJpdmF0ZS5oIgogI2luY2x1ZGUgImV3a192aWV3X3ByaXZhdGUuaCIKICNp
bmNsdWRlIDxFY29yZV9FdmFzLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgpAQCAtMzk1LDkgKzM5Nywx
NiBAQCB2b2lkIENocm9tZUNsaWVudEVmbDo6cmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90
IHNwYWNlTmVlZGVkKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgQ2hyb21lQ2xp
ZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5T3JpZ2lu
KiwgaW50NjRfdCkKK3ZvaWQgQ2hyb21lQ2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNo
ZU9yaWdpblF1b3RhKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIGludDY0X3QgdG90YWxTcGFjZU5l
ZWRlZCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIEV3a19TZWN1cml0eV9PcmlnaW4q
IGV3a09yaWdpbiA9IGV3a19zZWN1cml0eV9vcmlnaW5fbmV3KG9yaWdpbik7CisgICAgaW50NjRf
dCBkZWZhdWx0T3JpZ2luUXVvdGEgPSBXZWJDb3JlOjpjYWNoZVN0b3JhZ2UoKS5kZWZhdWx0T3Jp
Z2luUXVvdGEoKTsKKworICAgIGludDY0X3QgbmV3UXVvdGEgPSBld2tfdmlld19leGNlZWRlZF9h
cHBsaWNhdGlvbl9jYWNoZV9xdW90YShtX3ZpZXcsIGV3a09yaWdpbiwgZGVmYXVsdE9yaWdpblF1
b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKKyAgICBpZiAobmV3UXVvdGEpCisgICAgICAgIGV3a19z
ZWN1cml0eV9vcmlnaW5fYXBwbGljYXRpb25fY2FjaGVfcXVvdGFfc2V0KGV3a09yaWdpbiwgbmV3
UXVvdGEpOworCisgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9mcmVlKGV3a09yaWdpbik7CiB9CiAK
ICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uY3BwIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19z
ZWN1cml0eV9vcmlnaW4uY3BwCmluZGV4IGNkMWY4MTUuLmU3NTRkNGQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAKQEAgLTIwLDYgKzIwLDcgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJld2tfc2VjdXJpdHlfb3JpZ2luLmgiCiAK
KyNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oIgogI2luY2x1ZGUgIkRhdGFiYXNl
VHJhY2tlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiZXdrX3By
aXZhdGUuaCIKQEAgLTc5LDYgKzgwLDExIEBAIHZvaWQgZXdrX3NlY3VyaXR5X29yaWdpbl93ZWJf
ZGF0YWJhc2VfcXVvdGFfc2V0KGNvbnN0IEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdpCiAjZW5k
aWYKIH0KIAordm9pZCBld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3Rh
X3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4sIGludDY0X3QgcXVvdGEpCit7
CisgICAgV2ViQ29yZTo6Y2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkUXVvdGFGb3JPcmlnaW4o
b3JpZ2luLT5zZWN1cml0eU9yaWdpbi5nZXQoKSwgcXVvdGEpOworfQorCiB2b2lkIGV3a19zZWN1
cml0eV9vcmlnaW5fZnJlZShFd2tfU2VjdXJpdHlfT3JpZ2luKiBvcmlnaW4pCiB7CiAgICAgb3Jp
Z2luLT5zZWN1cml0eU9yaWdpbiA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3NlY3VyaXR5X29yaWdpbi5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19zZWN1
cml0eV9vcmlnaW4uaAppbmRleCA4NjE2N2YzLi5kZTA0YzFkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmgKQEAgLTExMCw2ICsxMTAsMTQgQEAgRUFQSSB1
aW50NjRfdCAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl93ZWJfZGF0YWJhc2VfcXVvdGFfZ2V0KGNv
bnN0IEV3a19TZWN1cml0eV8KIEVBUEkgdm9pZCAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5f
d2ViX2RhdGFiYXNlX3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luICpvLCB1aW50
NjRfdCBxdW90YSk7CiAKIC8qKgorICogU2V0cyB0aGUgYXBwbGljYXRpb24gY2FjaGUgdXNhZ2Ug
cXVvdGEgZm9yIGEgc2VjdXJpdHkgb3JpZ2luLgorICoKKyAqIEBwYXJhbSBvIHNlY3VyaXR5IG9y
aWdpbiBvYmplY3QKKyAqIEBwYXJhbSBxdW90YSB0aGUgdXNhZ2UgcXVvdGEgaW4gYnl0ZXMKKyAq
LworRUFQSSB2b2lkICAgICAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlvbl9jYWNo
ZV9xdW90YV9zZXQoY29uc3QgRXdrX1NlY3VyaXR5X09yaWdpbiAqbywgaW50NjRfdCBxdW90YSk7
CisKKy8qKgogICogUmVsZWFzZSBhbGwgcmVzb3VyY2VzIGFsbG9jYXRlZCBieSBhIHNlY3VyaXR5
IG9yaWdpbiBvYmplY3QuCiAgKgogICogQHBhcmFtIG8gc2VjdXJpdHkgb3JpZ2luIG9iamVjdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggY2E2MDA4ZS4uZTBlZmQyZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC0zNDM0LDYgKzM0MzQsMzAgQEAgYm9vbCBld2tf
dmlld19zaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQoRXZhc19PYmplY3QqIGV3a1ZpZXcpCiAK
IC8qKgogICogQGludGVybmFsCisgKiBUaGlzIGlzIGNhbGxlZCB3aGVuZXZlciB0aGUgYXBwbGlj
YXRpb24gaXMgYXNraW5nIHRvIHN0b3JlIGRhdGEgdG8gdGhlIGNhY2hlIGFuZCB0aGUKKyAqIHF1
b3RhIGFsbG9jYXRlZCB0byB0aGF0IGFwcGxpY2F0aW9uIGlzIGV4Y2VlZGVkLiBCcm93c2VyIG1h
eSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUKKyAqIHNpemUgb2YgcXVvdGEgYmVmb3JlIHRoZSBv
cmlnaW5hdGluZyBvcGVyYXRpb24gZmFpbHMuCisgKgorICogQHBhcmFtIGV3a1ZpZXcgVmlldy4K
KyAqIEBwYXJhbSBvcmlnaW4gU2VjdXJpdHkgb3JpZ2luLgorICogQHBhcmFtIGRlZmF1bHRPcmln
aW5RdW90YSBEZWZhdWx0IHF1b3RhIGZvciBvcmlnaW4uCisgKiBAcGFyYW0gdG90YWxTcGFjZU5l
ZWRlZCBUaGUgdG90YWwgc3BhY2UgbmVlZGVkIGluIHRoZSBjYWNoZSBpbiBvcmRlciB0byBmdWxm
aWxsCisgKiBhcHBsaWNhdGlvbidzIHJlcXVpcmVtZW50LgorICovCitpbnQ2NF90IGV3a192aWV3
X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBF
d2tfU2VjdXJpdHlfT3JpZ2luICpvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9yaWdpblF1b3RhLCBp
bnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpCit7CisgICAgREJHKCJld2tWaWV3PSVwIiwgZXdrVmll
dyk7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEsIDAp
OworICAgIEVJTkFfU0FGRVRZX09OX05VTExfUkVUVVJOX1ZBTChzbWFydERhdGEtPmFwaSwgMCk7
CisgICAgaWYgKCFzbWFydERhdGEtPmFwaS0+ZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVv
dGEpCisgICAgICAgIHJldHVybiAwOworCisgICAgSU5GKCJkZWZhdWx0T3JpZ2luUXVvdGE9JSIg
UFJJdTY0ICIgdG90YWxTcGFjZU5lZWRlZD0lIiBQUkl1NjQsIGRlZmF1bHRPcmlnaW5RdW90YSwg
dG90YWxTcGFjZU5lZWRlZCk7CisgICAgcmV0dXJuIHNtYXJ0RGF0YS0+YXBpLT5leGNlZWRlZF9h
cHBsaWNhdGlvbl9jYWNoZV9xdW90YShzbWFydERhdGEsIG9yaWdpbiwgZGVmYXVsdE9yaWdpblF1
b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKK30KKworLyoqCisgKiBAaW50ZXJuYWwKICAqIFRoaXMg
aXMgY2FsbGVkIHdoZW5ldmVyIHRoZSB3ZWIgc2l0ZSBzaG93biBpbiBAcGFyYW0gZnJhbWUgaXMg
YXNraW5nIHRvIHN0b3JlIGRhdGEKICAqIHRvIHRoZSBkYXRhYmFzZSBAcGFyYW0gZGF0YWJhc2VO
YW1lIGFuZCB0aGUgcXVvdGEgYWxsb2NhdGVkIHRvIHRoYXQgd2ViIHNpdGUKICAqIGlzIGV4Y2Vl
ZGVkLiBCcm93c2VyIG1heSB1c2UgdGhpcyB0byBpbmNyZWFzZSB0aGUgc2l6ZSBvZiBxdW90YSBi
ZWZvcmUgdGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuaCBi
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCmluZGV4IDk4MjEwZjguLjYxYzczOTUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5oCkBAIC0xNzQsNiArMTc0LDcgQEAgc3RydWN0IF9F
d2tfVmlld19TbWFydF9DbGFzcyB7CiAgICAgRWluYV9Cb29sICgqcnVuX2phdmFzY3JpcHRfY29u
ZmlybSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwgY29uc3Qg
Y2hhciAqbWVzc2FnZSk7CiAgICAgRWluYV9Cb29sICgqcnVuX2phdmFzY3JpcHRfcHJvbXB0KShF
d2tfVmlld19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3QgKmZyYW1lLCBjb25zdCBjaGFyICpt
ZXNzYWdlLCBjb25zdCBjaGFyICpkZWZhdWx0VmFsdWUsIGNoYXIgKip2YWx1ZSk7CiAgICAgRWlu
YV9Cb29sICgqc2hvdWxkX2ludGVycnVwdF9qYXZhc2NyaXB0KShFd2tfVmlld19TbWFydF9EYXRh
ICpzZCk7CisgICAgdWludDY0X3QgKCpleGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YSko
RXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdpbiwgaW50
NjRfdCBkZWZhdWx0T3JpZ2luUXVvdGEsIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7CiAgICAg
dWludDY0X3QgKCpleGNlZWRlZF9kYXRhYmFzZV9xdW90YSkoRXdrX1ZpZXdfU21hcnRfRGF0YSAq
c2QsIEV2YXNfT2JqZWN0ICpmcmFtZSwgY29uc3QgY2hhciAqZGF0YWJhc2VOYW1lLCB1aW50NjRf
dCBjdXJyZW50X3NpemUsIHVpbnQ2NF90IGV4cGVjdGVkX3NpemUpOwogCiAgICAgRWluYV9Cb29s
ICgqcnVuX29wZW5fcGFuZWwpKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFdmFzX09iamVjdCAq
ZnJhbWUsIEVpbmFfQm9vbCBhbGxvd3NfbXVsdGlwbGVfZmlsZXMsIEVpbmFfTGlzdCAqYWNjZXB0
X3R5cGVzLCBFaW5hX0xpc3QgKipzZWxlY3RlZF9maWxlbmFtZXMpOwpAQCAtMTg2LDcgKzE4Nyw3
IEBAIHN0cnVjdCBfRXdrX1ZpZXdfU21hcnRfQ2xhc3MgewogICogVGhlIHZlcnNpb24geW91IGhh
dmUgdG8gcHV0IGludG8gdGhlIHZlcnNpb24gZmllbGQKICAqIGluIHRoZSBAYSBFd2tfVmlld19T
bWFydF9DbGFzcyBzdHJ1Y3R1cmUuCiAgKi8KLSNkZWZpbmUgRVdLX1ZJRVdfU01BUlRfQ0xBU1Nf
VkVSU0lPTiA0VUwKKyNkZWZpbmUgRVdLX1ZJRVdfU01BUlRfQ0xBU1NfVkVSU0lPTiA1VUwKIAog
LyoqCiAgKiBJbml0aWFsaXplcyBhIHdob2xlIEBhIEV3a19WaWV3X1NtYXJ0X0NsYXNzIHN0cnVj
dHVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19wcml2YXRl
LmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oCmluZGV4IDYwZjYy
MjAuLjcwZWYwMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19w
cml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3ByaXZhdGUuaApA
QCAtODksNiArODksNyBAQCB2b2lkIGV3a192aWV3X3J1bl9qYXZhc2NyaXB0X2FsZXJ0KEV2YXNf
T2JqZWN0KiBld2tWaWV3LCBFdmFzX09iamVjdCogZnJhbWUsIGNvbgogYm9vbCBld2tfdmlld19y
dW5famF2YXNjcmlwdF9jb25maXJtKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX09iamVjdCog
ZnJhbWUsIGNvbnN0IGNoYXIqIG1lc3NhZ2UpOwogYm9vbCBld2tfdmlld19ydW5famF2YXNjcmlw
dF9wcm9tcHQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgY29uc3Qg
Y2hhciogbWVzc2FnZSwgY29uc3QgY2hhciogZGVmYXVsdFZhbHVlLCBjaGFyKiogdmFsdWUpOwog
Ym9vbCBld2tfdmlld19zaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQoRXZhc19PYmplY3QqIGV3
a1ZpZXcpOworaW50NjRfdCBld2tfdmlld19leGNlZWRlZF9hcHBsaWNhdGlvbl9jYWNoZV9xdW90
YShFdmFzX09iamVjdCogZXdrVmlldywgRXdrX1NlY3VyaXR5X09yaWdpbiAqb3JpZ2luLCBpbnQ2
NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKTsKIHVpbnQ2
NF90IGV3a192aWV3X2V4Y2VlZGVkX2RhdGFiYXNlX3F1b3RhKEV2YXNfT2JqZWN0KiBld2tWaWV3
LCBFdmFzX09iamVjdCogZnJhbWUsIGNvbnN0IGNoYXIqIGRhdGFiYXNlTmFtZSwgdWludDY0X3Qg
Y3VycmVudFNpemUsIHVpbnQ2NF90IGV4cGVjdGVkU2l6ZSk7CiAKIGJvb2wgZXdrX3ZpZXdfcnVu
X29wZW5fcGFuZWwoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgYm9v
bCBhbGxvd3NNdWx0aXBsZUZpbGVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYWNjZXB0TUlNRVR5
cGVzLCBFaW5hX0xpc3QqKiBzZWxlY3RlZEZpbGVuYW1lcyk7CmRpZmYgLS1naXQgYS9Ub29scy9D
aGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTNiMWYzZS4uYWMwYmQ5MyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIx
IEBACisyMDEyLTA1LTE1ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRl
bC5jb20+CisKKyAgICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBu
b3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODU1ODUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgc2V0QXBwbGljYXRp
b25DYWNoZU9yaWdpblF1b3RhIGluIEVGTCdzCisgICAgICAgIExheW91dFRlc3RDb250cm9sbGVy
LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNw
cDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlQ2hyb21lOjpyZXNldERlZmF1bHRzVG9Db25zaXN0
ZW50VmFsdWVzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVW
aWV3LmNwcDoKKyAgICAgICAgKG9uRXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hlUXVvdGEpOgorICAg
ICAgICAoZHJ0Vmlld0FkZCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRl
c3RDb250cm9sbGVyRWZsLmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEpOgorCiAyMDEyLTA1LTE1ICBLYW5naWwgSGFuICA8
a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtEUlRdIEZpeCBldmVudFNl
bmRlciBrZXkgcHJvdmlkaW5nCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwv
RHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBS
ZW5kZXJUcmVlQ2hyb21lLmNwcAppbmRleCBhYWE1NGViLi44Y2E2NGQ2IDEwMDY0NAotLS0gYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCisrKyBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKQEAgLTIxMSw2
ICsyMTEsNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlQ2hyb21lOjpyZXNldERlZmF1bHRzVG9Db25z
aXN0ZW50VmFsdWVzKCkKICAgICBld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX2RlZmF1bHRfcXVv
dGFfc2V0KDUgKiAxMDI0ICogMTAyNCk7CiAKICAgICBld2tfc2V0dGluZ3NfbWVtb3J5X2NhY2hl
X2NsZWFyKCk7CisgICAgZXdrX3NldHRpbmdzX2FwcGxpY2F0aW9uX2NhY2hlX2NsZWFyKCk7CiAK
ICAgICBld2tfdmlld19zZXR0aW5nX3ByaXZhdGVfYnJvd3Npbmdfc2V0KG1haW5WaWV3KCksIEVJ
TkFfRkFMU0UpOwogICAgIGV3a192aWV3X3NldHRpbmdfc3BhdGlhbF9uYXZpZ2F0aW9uX3NldCht
YWluVmlldygpLCBFSU5BX0ZBTFNFKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1
bXBSZW5kZXJUcmVlVmlldy5jcHAKaW5kZXggZThmY2I4NS4uZjlmOGY2NSAxMDA2NDQKLS0tIGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKQEAgLTEyMCw2ICsx
MjAsMjcgQEAgc3RhdGljIHVpbnQ2NF90IG9uRXhjZWVkZWREYXRhYmFzZVF1b3RhKEV3a19WaWV3
X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSwgRXZhc19PYmoKICAgICByZXR1cm4gNSAqIDEwMjQgKiAx
MDI0OwogfQogCitzdGF0aWMgdWludDY0X3Qgb25FeGNlZWRlZEFwcGxpY2F0aW9uQ2FjaGVRdW90
YShFd2tfVmlld19TbWFydF9EYXRhKiwgRXdrX1NlY3VyaXR5X09yaWdpbiAqb3JpZ2luLCBpbnQ2
NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKQoreworICAg
IGlmIChnTGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBBcHBsaWNhdGlvbkNhY2hlRGVsZWdhdGVD
YWxsYmFja3MoKSkgeworICAgICAgICAvLyBGb3IgZXhhbXBsZSwgbnVtYmVycyBmcm9tIDMwMDAw
IC0gMzk5OTkgd2lsbCBvdXRwdXQgYXMgMzAwMDAuCisgICAgICAgIC8vIFJvdW5kaW5nIHVwIG9y
IGRvd24gZG9lcyBub3QgcmVhbGx5IG1hdHRlciBmb3IgdGhlc2UgdGVzdHMuIEl0J3MKKyAgICAg
ICAgLy8gc3VmZmljaWVudCB0byBqdXN0IGdldCBhIHJhbmdlIG9mIDEwMDAwIHRvIGRldGVybWlu
ZSBpZiB3ZSB3ZXJlCisgICAgICAgIC8vIGFib3ZlIG9yIGJlbG93IGEgdGhyZXNob2xkLgorICAg
ICAgICBpbnQ2NF90IHRydW5jYXRlZFNwYWNlTmVlZGVkID0gKHRvdGFsU3BhY2VOZWVkZWQgLyAx
MDAwMCkgKiAxMDAwMDsKKyAgICAgICAgcHJpbnRmKCJVSSBERUxFR0FURSBBUFBMSUNBVElPTiBD
QUNIRSBDQUxMQkFDSzogZXhjZWVkZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGFGb3JTZWN1
cml0eU9yaWdpbjp7JXMsICVzLCAlaX0gdG90YWxTcGFjZU5lZWRlZDp+JWxsdVxuIiwKKyAgICAg
ICAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fcHJvdG9jb2xfZ2V0KG9yaWdpbiksCisgICAg
ICAgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2hvc3RfZ2V0KG9yaWdpbiksCisgICAgICAg
ICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX3BvcnRfZ2V0KG9yaWdpbiksCisgICAgICAgICAg
ICAgICB0cnVuY2F0ZWRTcGFjZU5lZWRlZCk7CisgICAgfQorCisgICAgaWYgKGdMYXlvdXRUZXN0
Q29udHJvbGxlci0+ZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YSgpKQor
ICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBkZWZhdWx0T3JpZ2luUXVvdGE7Cit9CisK
IHN0YXRpYyBib29sIHNob3VsZFVzZVNpbmdsZUJhY2tpbmdTdG9yZSgpCiB7CiAgICAgY29uc3Qg
Y2hhciogdXNlU2luZ2xlQmFja2luZ1N0b3JlID0gZ2V0ZW52KCJEUlRfVVNFX1NJTkdMRV9CQUNL
SU5HX1NUT1JFIik7CkBAIC0xNDcsNiArMTY4LDcgQEAgRXZhc19PYmplY3QqIGRydFZpZXdBZGQo
RXZhcyogZXZhcykKICAgICBhcGkucnVuX2phdmFzY3JpcHRfcHJvbXB0ID0gb25KYXZhU2NyaXB0
UHJvbXB0OwogICAgIGFwaS53aW5kb3dfY3JlYXRlID0gb25XaW5kb3dDcmVhdGU7CiAgICAgYXBp
LndpbmRvd19jbG9zZSA9IG9uV2luZG93Q2xvc2U7CisgICAgYXBpLmV4Y2VlZGVkX2FwcGxpY2F0
aW9uX2NhY2hlX3F1b3RhID0gb25FeGNlZWRlZEFwcGxpY2F0aW9uQ2FjaGVRdW90YTsKICAgICBh
cGkuZXhjZWVkZWRfZGF0YWJhc2VfcXVvdGEgPSBvbkV4Y2VlZGVkRGF0YWJhc2VRdW90YTsKIAog
ICAgIHJldHVybiBldmFzX29iamVjdF9zbWFydF9hZGQoZXZhcywgZXZhc19zbWFydF9jbGFzc19u
ZXcoJmFwaS5zYykpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91
dFRlc3RDb250cm9sbGVyRWZsLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRU
ZXN0Q29udHJvbGxlckVmbC5jcHAKaW5kZXggMjk4MzhiZi4uODAxNDAzNSAxMDA2NDQKLS0tIGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAorKysg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCkBA
IC01NDMsMTAgKzU0MywxMSBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpjbGVhckFsbEFw
cGxpY2F0aW9uQ2FjaGVzKCkKICAgICBld2tfc2V0dGluZ3NfYXBwbGljYXRpb25fY2FjaGVfY2xl
YXIoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0QXBwbGljYXRpb25DYWNo
ZU9yaWdpblF1b3RhKHVuc2lnbmVkIGxvbmcgbG9uZykKK3ZvaWQgTGF5b3V0VGVzdENvbnRyb2xs
ZXI6OnNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSh1bnNpZ25lZCBsb25nIGxvbmcgcXVv
dGEpCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0byBzdXBwb3J0IGFwcGxpY2F0aW9uIGNh
Y2hlIHF1b3Rhcy4KLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIEV3a19TZWN1cml0eV9Pcmln
aW4qIG9yaWdpbiA9IGV3a19mcmFtZV9zZWN1cml0eV9vcmlnaW5fZ2V0KGJyb3dzZXItPm1haW5G
cmFtZSgpKTsKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3Rh
X3NldChvcmlnaW4sIHF1b3RhKTsKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2ZyZWUob3JpZ2lu
KTsKIH0KIAogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2xlYXJBcHBsaWNhdGlvbkNhY2hl
Rm9yT3JpZ2luKE9wYXF1ZUpTU3RyaW5nKikK
</data>
<flag name="commit-queue"
          id="148412"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142207</attachid>
            <date>2012-05-16 02:35:17 -0700</date>
            <delta_ts>2012-05-16 04:26:05 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>85585_appcache_quota.patch</filename>
            <type>text/plain</type>
            <size>15495</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmViZGJkLi43MjIwMjhlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MTUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQorCisgICAgICAgIFJldmlld2VkIGJ5IEd1c3Rh
dm8gTm9yb25oYSBTaWx2YS4KKworICAgICAgICBVbnNraXAgdGhlIHRlc3QgY2FzZXMgdGhhdCBy
ZXF1aXJlIGltcGxlbWVudGF0aW9uIG9mCisgICAgICAgIHNldEFwcGxpY2F0aW9uQ2FjaGVPcmln
aW5RdW90YSBpbiBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlci4KKworICAgICAgICAqIHBsYXRm
b3JtL2VmbC9Ta2lwcGVkOgorCiAyMDEyLTA1LTE1ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBz
YW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtEUlRdIEZpeCBldmVudFNlbmRlciBrZXkgcHJv
dmlkaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCmluZGV4IDBjNDA1NDEuLjY3ZjBiYTIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCkBAIC0yODcsMjQgKzI4NywyNSBAQCBodHRwL3Rlc3Rz
L21pc2MvY29weS1yZXNvbHZlcy11cmxzLmh0bWwKICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xs
ZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldENhY2hlTW9kZWwKIGZhc3QvZG9tL0hUTUxTY3JpcHRF
bGVtZW50L25lc3RlZC1leGVjdXRpb24uaHRtbAogCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9s
bGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEKLWh0
dHAvdGVzdHMvYXBwY2FjaGUKLQotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5v
dCBpbXBsZW1lbnQgY2xlYXJBcHBsaWNhdGlvbkNhY2hlRm9yT3JpZ2luCi1odHRwL3Rlc3RzL2Fw
cGNhY2hlCi0KLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50
IG9yaWdpbnNXaXRoQXBwbGljYXRpb25DYWNoZQotaHR0cC90ZXN0cy9hcHBjYWNoZQotCi0jIEVG
TCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVudCBhcHBsaWNhdGlvbkNh
Y2hlRGlza1VzYWdlRm9yT3JpZ2luCi1odHRwL3Rlc3RzL2FwcGNhY2hlCi0KICMgRUZMJ3MgTGF5
b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldERvbWFpblJlbGF4YXRpb25G
b3JiaWRkZW5Gb3JVUkxTY2hlbWUKIGh0dHAvdGVzdHMvc2VjdXJpdHkvc2V0RG9tYWluUmVsYXhh
dGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZS5odG1sCiAKICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRy
b2xsZXIgb3ZlcnJpZGVQcmVmZXJlbmNlIGRvZXMgbm90IGltcGxlbWVudCBXZWJLaXRVc2VQcmVI
VE1MNVBhcnNlclF1aXJrcyBwcmVmZXJlbmNlCiBmYXN0L3BhcnNlci9wcmUtaHRtbDUtcGFyc2Vy
LXF1aXJrcy5odG1sCiAKKyMgRmFsbGJhY2sgcmVzb3VyY2Ugd2Fzbid0IHVzZWQgZm9yIGEgcmVk
aXJlY3QgdG8gYSByZXNvdXJjZSB3aXRoIGFub3RoZXIgb3JpZ2luCitodHRwL3Rlc3RzL2FwcGNh
Y2hlL2ZhbGxiYWNrLmh0bWwKKworIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5v
dCBpbXBsZW1lbnQgY2xlYXJBcHBsaWNhdGlvbkNhY2hlRm9yT3JpZ2luCitodHRwL3Rlc3RzL2Fw
cGNhY2hlL29yaWdpbi1kZWxldGUuaHRtbAoraHR0cC90ZXN0cy9hcHBjYWNoZS9vcmlnaW4tdXNh
Z2UuaHRtbAorCisjIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxlbWVu
dCBhcHBsaWNhdGlvbkNhY2hlRGlza1VzYWdlRm9yT3JpZ2luCitodHRwL3Rlc3RzL2FwcGNhY2hl
L29yaWdpbi11c2FnZS5odG1sCisKKyMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBu
b3QgaW1wbGVtZW50IG9yaWdpbnNXaXRoQXBwbGljYXRpb25DYWNoZQoraHR0cC90ZXN0cy9hcHBj
YWNoZS9vcmlnaW5zLXdpdGgtYXBwY2FjaGUuaHRtbAorCiAjIEVGTCdzIExheW91dFRlc3RDb250
cm9sbGVyIG92ZXJyaWRlUHJlZmVyZW5jZSBkb2VzIG5vdCBpbXBsZW1lbnQgV2ViS2l0T2ZmbGlu
ZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkIHByZWZlcmVuY2UKIGh0dHAvdGVzdHMvYXBwY2Fj
aGUvZGlzYWJsZWQuaHRtbAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggYzFjYjYyYS4uM2I4ZjQ1NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA1LTE1ICBDaHJpc3RvcGhl
IER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAgW0VGTF0gRUZM
J3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODU1ODUKKworICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEgU2ls
dmEuCisKKyAgICAgICAgQWRkIG5ldyBmdW5jdGlvbiB0byBFd2tfU2VjdXJpdHlfT3JpZ2luIHRv
IHNldCB0aGUgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgcXVvdGEuIEltcGxlbWVudCByZWFj
aGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhIGluCisgICAgICAgIENocm9tZUNsaWVudEVm
bC4gQWRkIGZ1bmN0aW9uIHRvIHRoZSBFd2tfVmlldyB0byByZXBvcnQgdGhhdCB0aGUKKyAgICAg
ICAgYXBwbGljYXRpb24gY2FjaGUgcXVvdGEgd2FzIHJlYWNoZWQuCisKKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2hyb21l
Q2xpZW50RWZsOjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKToKKyAgICAgICAg
KiBld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHA6CisgICAgICAgIChld2tfc2VjdXJpdHlfb3Jp
Z2luX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhX3NldCk6CisgICAgICAgICogZXdrL2V3a19zZWN1
cml0eV9vcmlnaW4uaDoKKyAgICAgICAgKiBld2svZXdrX3ZpZXcuY3BwOgorICAgICAgICAoX0V3
a19WaWV3X1ByaXZhdGVfRGF0YSk6CisgICAgICAgIChld2tfdmlld19leGNlZWRlZF9hcHBsaWNh
dGlvbl9jYWNoZV9xdW90YSk6CisgICAgICAgICogZXdrL2V3a192aWV3Lmg6CisgICAgICAgICog
ZXdrL2V3a192aWV3X3ByaXZhdGUuaDoKKwogMjAxMi0wNS0xNSAgS2lob25nIEt3b24gIDxraWhv
bmcua3dvbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBFbmFibGUgRnVsbHNjcmVlbiBB
UEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNs
aWVudEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGll
bnRFZmwuY3BwCmluZGV4IGUxOThiYjQuLmQwMzRlN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcApAQCAtMzQsNiArMzQs
NyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkNocm9tZUNsaWVudEVmbC5oIgog
CisjaW5jbHVkZSAiQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaCIKICNpbmNsdWRlICJGaWxlQ2hv
b3Nlci5oIgogI2luY2x1ZGUgIkZpbGVJY29uTG9hZGVyLmgiCiAjaW5jbHVkZSAiRmxvYXRSZWN0
LmgiCkBAIC01Myw2ICs1NCw3IEBACiAjaW5jbHVkZSAiV2luZG93RmVhdHVyZXMuaCIKICNpbmNs
dWRlICJld2tfZnJhbWVfcHJpdmF0ZS5oIgogI2luY2x1ZGUgImV3a19wcml2YXRlLmgiCisjaW5j
bHVkZSAiZXdrX3NlY3VyaXR5X29yaWdpbl9wcml2YXRlLmgiCiAjaW5jbHVkZSAiZXdrX3ZpZXdf
cHJpdmF0ZS5oIgogI2luY2x1ZGUgPEVjb3JlX0V2YXMuaD4KICNpbmNsdWRlIDxFdmFzLmg+CkBA
IC0zOTUsOSArMzk3LDE2IEBAIHZvaWQgQ2hyb21lQ2xpZW50RWZsOjpyZWFjaGVkTWF4QXBwQ2Fj
aGVTaXplKGludDY0X3Qgc3BhY2VOZWVkZWQpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAot
dm9pZCBDaHJvbWVDbGllbnRFZmw6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEo
U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90KQordm9pZCBDaHJvbWVDbGllbnRFZmw6OnJlYWNoZWRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwgaW50NjRf
dCB0b3RhbFNwYWNlTmVlZGVkKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgRXdrX1Nl
Y3VyaXR5X09yaWdpbiogZXdrT3JpZ2luID0gZXdrX3NlY3VyaXR5X29yaWdpbl9uZXcob3JpZ2lu
KTsKKyAgICBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSA9IFdlYkNvcmU6OmNhY2hlU3RvcmFn
ZSgpLmRlZmF1bHRPcmlnaW5RdW90YSgpOworCisgICAgaW50NjRfdCBuZXdRdW90YSA9IGV3a192
aWV3X2V4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKG1fdmlldywgZXdrT3JpZ2luLCBk
ZWZhdWx0T3JpZ2luUXVvdGEsIHRvdGFsU3BhY2VOZWVkZWQpOworICAgIGlmIChuZXdRdW90YSkK
KyAgICAgICAgZXdrX3NlY3VyaXR5X29yaWdpbl9hcHBsaWNhdGlvbl9jYWNoZV9xdW90YV9zZXQo
ZXdrT3JpZ2luLCBuZXdRdW90YSk7CisKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2ZyZWUoZXdr
T3JpZ2luKTsKIH0KIAogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5jcHAKaW5kZXggY2QxZjgxNS4uZTc1NGQ0ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmNwcApAQCAt
MjAsNiArMjAsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImV3a19zZWN1cml0
eV9vcmlnaW4uaCIKIAorI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgiCiAjaW5j
bHVkZSAiRGF0YWJhc2VUcmFja2VyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNp
bmNsdWRlICJld2tfcHJpdmF0ZS5oIgpAQCAtNzksNiArODAsMTEgQEAgdm9pZCBld2tfc2VjdXJp
dHlfb3JpZ2luX3dlYl9kYXRhYmFzZV9xdW90YV9zZXQoY29uc3QgRXdrX1NlY3VyaXR5X09yaWdp
biogb3JpZ2kKICNlbmRpZgogfQogCit2b2lkIGV3a19zZWN1cml0eV9vcmlnaW5fYXBwbGljYXRp
b25fY2FjaGVfcXVvdGFfc2V0KGNvbnN0IEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdpbiwgaW50
NjRfdCBxdW90YSkKK3sKKyAgICBXZWJDb3JlOjpjYWNoZVN0b3JhZ2UoKS5zdG9yZVVwZGF0ZWRR
dW90YUZvck9yaWdpbihvcmlnaW4tPnNlY3VyaXR5T3JpZ2luLmdldCgpLCBxdW90YSk7Cit9CisK
IHZvaWQgZXdrX3NlY3VyaXR5X29yaWdpbl9mcmVlKEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdp
bikKIHsKICAgICBvcmlnaW4tPnNlY3VyaXR5T3JpZ2luID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmggYi9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX3NlY3VyaXR5X29yaWdpbi5oCmluZGV4IDg2MTY3ZjMuLmRlMDRjMWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfc2VjdXJpdHlfb3JpZ2luLmgKKysrIGIv
U291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19zZWN1cml0eV9vcmlnaW4uaApAQCAtMTEwLDYgKzEx
MCwxNCBAQCBFQVBJIHVpbnQ2NF90ICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX3dlYl9kYXRhYmFz
ZV9xdW90YV9nZXQoY29uc3QgRXdrX1NlY3VyaXR5XwogRUFQSSB2b2lkICAgICAgICAgZXdrX3Nl
Y3VyaXR5X29yaWdpbl93ZWJfZGF0YWJhc2VfcXVvdGFfc2V0KGNvbnN0IEV3a19TZWN1cml0eV9P
cmlnaW4gKm8sIHVpbnQ2NF90IHF1b3RhKTsKIAogLyoqCisgKiBTZXRzIHRoZSBhcHBsaWNhdGlv
biBjYWNoZSB1c2FnZSBxdW90YSBmb3IgYSBzZWN1cml0eSBvcmlnaW4uCisgKgorICogQHBhcmFt
IG8gc2VjdXJpdHkgb3JpZ2luIG9iamVjdAorICogQHBhcmFtIHF1b3RhIHRoZSB1c2FnZSBxdW90
YSBpbiBieXRlcworICovCitFQVBJIHZvaWQgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2Fw
cGxpY2F0aW9uX2NhY2hlX3F1b3RhX3NldChjb25zdCBFd2tfU2VjdXJpdHlfT3JpZ2luICpvLCBp
bnQ2NF90IHF1b3RhKTsKKworLyoqCiAgKiBSZWxlYXNlIGFsbCByZXNvdXJjZXMgYWxsb2NhdGVk
IGJ5IGEgc2VjdXJpdHkgb3JpZ2luIG9iamVjdC4KICAqCiAgKiBAcGFyYW0gbyBzZWN1cml0eSBv
cmlnaW4gb2JqZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcu
Y3BwIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAppbmRleCBjYTYwMDhlLi5l
MGVmZDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKQEAgLTM0MzQsNiArMzQzNCwz
MCBAQCBib29sIGV3a192aWV3X3Nob3VsZF9pbnRlcnJ1cHRfamF2YXNjcmlwdChFdmFzX09iamVj
dCogZXdrVmlldykKIAogLyoqCiAgKiBAaW50ZXJuYWwKKyAqIFRoaXMgaXMgY2FsbGVkIHdoZW5l
dmVyIHRoZSBhcHBsaWNhdGlvbiBpcyBhc2tpbmcgdG8gc3RvcmUgZGF0YSB0byB0aGUgY2FjaGUg
YW5kIHRoZQorICogcXVvdGEgYWxsb2NhdGVkIHRvIHRoYXQgYXBwbGljYXRpb24gaXMgZXhjZWVk
ZWQuIEJyb3dzZXIgbWF5IHVzZSB0aGlzIHRvIGluY3JlYXNlIHRoZQorICogc2l6ZSBvZiBxdW90
YSBiZWZvcmUgdGhlIG9yaWdpbmF0aW5nIG9wZXJhdGlvbiBmYWlscy4KKyAqCisgKiBAcGFyYW0g
ZXdrVmlldyBWaWV3LgorICogQHBhcmFtIG9yaWdpbiBTZWN1cml0eSBvcmlnaW4uCisgKiBAcGFy
YW0gZGVmYXVsdE9yaWdpblF1b3RhIERlZmF1bHQgcXVvdGEgZm9yIG9yaWdpbi4KKyAqIEBwYXJh
bSB0b3RhbFNwYWNlTmVlZGVkIFRoZSB0b3RhbCBzcGFjZSBuZWVkZWQgaW4gdGhlIGNhY2hlIGlu
IG9yZGVyIHRvIGZ1bGZpbGwKKyAqIGFwcGxpY2F0aW9uJ3MgcmVxdWlyZW1lbnQuCisgKi8KK2lu
dDY0X3QgZXdrX3ZpZXdfZXhjZWVkZWRfYXBwbGljYXRpb25fY2FjaGVfcXVvdGEoRXZhc19PYmpl
Y3QqIGV3a1ZpZXcsIEV3a19TZWN1cml0eV9PcmlnaW4gKm9yaWdpbiwgaW50NjRfdCBkZWZhdWx0
T3JpZ2luUXVvdGEsIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkKK3sKKyAgICBEQkcoImV3a1Zp
ZXc9JXAiLCBld2tWaWV3KTsKKyAgICBFV0tfVklFV19TRF9HRVRfT1JfUkVUVVJOKGV3a1ZpZXcs
IHNtYXJ0RGF0YSwgMCk7CisgICAgRUlOQV9TQUZFVFlfT05fTlVMTF9SRVRVUk5fVkFMKHNtYXJ0
RGF0YS0+YXBpLCAwKTsKKyAgICBpZiAoIXNtYXJ0RGF0YS0+YXBpLT5leGNlZWRlZF9hcHBsaWNh
dGlvbl9jYWNoZV9xdW90YSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBJTkYoImRlZmF1bHRP
cmlnaW5RdW90YT0lIiBQUkl1NjQgIiB0b3RhbFNwYWNlTmVlZGVkPSUiIFBSSXU2NCwgZGVmYXVs
dE9yaWdpblF1b3RhLCB0b3RhbFNwYWNlTmVlZGVkKTsKKyAgICByZXR1cm4gc21hcnREYXRhLT5h
cGktPmV4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhKHNtYXJ0RGF0YSwgb3JpZ2luLCBk
ZWZhdWx0T3JpZ2luUXVvdGEsIHRvdGFsU3BhY2VOZWVkZWQpOworfQorCisvKioKKyAqIEBpbnRl
cm5hbAogICogVGhpcyBpcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIHdlYiBzaXRlIHNob3duIGluIEBw
YXJhbSBmcmFtZSBpcyBhc2tpbmcgdG8gc3RvcmUgZGF0YQogICogdG8gdGhlIGRhdGFiYXNlIEBw
YXJhbSBkYXRhYmFzZU5hbWUgYW5kIHRoZSBxdW90YSBhbGxvY2F0ZWQgdG8gdGhhdCB3ZWIgc2l0
ZQogICogaXMgZXhjZWVkZWQuIEJyb3dzZXIgbWF5IHVzZSB0aGlzIHRvIGluY3JlYXNlIHRoZSBz
aXplIG9mIHF1b3RhIGJlZm9yZSB0aGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3
ay9ld2tfdmlldy5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmgKaW5kZXggOTgy
MTBmOC4uNjFjNzM5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3
LmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmgKQEAgLTE3NCw2ICsxNzQs
NyBAQCBzdHJ1Y3QgX0V3a19WaWV3X1NtYXJ0X0NsYXNzIHsKICAgICBFaW5hX0Jvb2wgKCpydW5f
amF2YXNjcmlwdF9jb25maXJtKShFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3Qg
KmZyYW1lLCBjb25zdCBjaGFyICptZXNzYWdlKTsKICAgICBFaW5hX0Jvb2wgKCpydW5famF2YXNj
cmlwdF9wcm9tcHQpKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFdmFzX09iamVjdCAqZnJhbWUs
IGNvbnN0IGNoYXIgKm1lc3NhZ2UsIGNvbnN0IGNoYXIgKmRlZmF1bHRWYWx1ZSwgY2hhciAqKnZh
bHVlKTsKICAgICBFaW5hX0Jvb2wgKCpzaG91bGRfaW50ZXJydXB0X2phdmFzY3JpcHQpKEV3a19W
aWV3X1NtYXJ0X0RhdGEgKnNkKTsKKyAgICB1aW50NjRfdCAoKmV4Y2VlZGVkX2FwcGxpY2F0aW9u
X2NhY2hlX3F1b3RhKShFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX1NlY3VyaXR5X09yaWdp
biogb3JpZ2luLCBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3RhbFNwYWNl
TmVlZGVkKTsKICAgICB1aW50NjRfdCAoKmV4Y2VlZGVkX2RhdGFiYXNlX3F1b3RhKShFd2tfVmll
d19TbWFydF9EYXRhICpzZCwgRXZhc19PYmplY3QgKmZyYW1lLCBjb25zdCBjaGFyICpkYXRhYmFz
ZU5hbWUsIHVpbnQ2NF90IGN1cnJlbnRfc2l6ZSwgdWludDY0X3QgZXhwZWN0ZWRfc2l6ZSk7CiAK
ICAgICBFaW5hX0Jvb2wgKCpydW5fb3Blbl9wYW5lbCkoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2Qs
IEV2YXNfT2JqZWN0ICpmcmFtZSwgRWluYV9Cb29sIGFsbG93c19tdWx0aXBsZV9maWxlcywgRWlu
YV9MaXN0ICphY2NlcHRfdHlwZXMsIEVpbmFfTGlzdCAqKnNlbGVjdGVkX2ZpbGVuYW1lcyk7CkBA
IC0xODYsNyArMTg3LDcgQEAgc3RydWN0IF9Fd2tfVmlld19TbWFydF9DbGFzcyB7CiAgKiBUaGUg
dmVyc2lvbiB5b3UgaGF2ZSB0byBwdXQgaW50byB0aGUgdmVyc2lvbiBmaWVsZAogICogaW4gdGhl
IEBhIEV3a19WaWV3X1NtYXJ0X0NsYXNzIHN0cnVjdHVyZS4KICAqLwotI2RlZmluZSBFV0tfVklF
V19TTUFSVF9DTEFTU19WRVJTSU9OIDRVTAorI2RlZmluZSBFV0tfVklFV19TTUFSVF9DTEFTU19W
RVJTSU9OIDVVTAogCiAvKioKICAqIEluaXRpYWxpemVzIGEgd2hvbGUgQGEgRXdrX1ZpZXdfU21h
cnRfQ2xhc3Mgc3RydWN0dXJlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a192aWV3X3ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19wcml2YXRl
LmgKaW5kZXggNjBmNjIyMC4uNzBlZjAxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a192aWV3X3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3Zp
ZXdfcHJpdmF0ZS5oCkBAIC04OSw2ICs4OSw3IEBAIHZvaWQgZXdrX3ZpZXdfcnVuX2phdmFzY3Jp
cHRfYWxlcnQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgY29uCiBi
b29sIGV3a192aWV3X3J1bl9qYXZhc2NyaXB0X2NvbmZpcm0oRXZhc19PYmplY3QqIGV3a1ZpZXcs
IEV2YXNfT2JqZWN0KiBmcmFtZSwgY29uc3QgY2hhciogbWVzc2FnZSk7CiBib29sIGV3a192aWV3
X3J1bl9qYXZhc2NyaXB0X3Byb21wdChFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19PYmplY3Qq
IGZyYW1lLCBjb25zdCBjaGFyKiBtZXNzYWdlLCBjb25zdCBjaGFyKiBkZWZhdWx0VmFsdWUsIGNo
YXIqKiB2YWx1ZSk7CiBib29sIGV3a192aWV3X3Nob3VsZF9pbnRlcnJ1cHRfamF2YXNjcmlwdChF
dmFzX09iamVjdCogZXdrVmlldyk7CitpbnQ2NF90IGV3a192aWV3X2V4Y2VlZGVkX2FwcGxpY2F0
aW9uX2NhY2hlX3F1b3RhKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFd2tfU2VjdXJpdHlfT3JpZ2lu
ICpvcmlnaW4sIGludDY0X3QgZGVmYXVsdE9yaWdpblF1b3RhLCBpbnQ2NF90IHRvdGFsU3BhY2VO
ZWVkZWQpOwogdWludDY0X3QgZXdrX3ZpZXdfZXhjZWVkZWRfZGF0YWJhc2VfcXVvdGEoRXZhc19P
YmplY3QqIGV3a1ZpZXcsIEV2YXNfT2JqZWN0KiBmcmFtZSwgY29uc3QgY2hhciogZGF0YWJhc2VO
YW1lLCB1aW50NjRfdCBjdXJyZW50U2l6ZSwgdWludDY0X3QgZXhwZWN0ZWRTaXplKTsKIAogYm9v
bCBld2tfdmlld19ydW5fb3Blbl9wYW5lbChFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19PYmpl
Y3QqIGZyYW1lLCBib29sIGFsbG93c011bHRpcGxlRmlsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBhY2NlcHRNSU1FVHlwZXMsIEVpbmFfTGlzdCoqIHNlbGVjdGVkRmlsZW5hbWVzKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5M2IxZjNlLi44
NzQ0NjY0IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDUtMTUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3Rv
cGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTU4NQor
CisgICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYSBTaWx2YS4KKworICAgICAgICBJ
bXBsZW1lbnQgc2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhIGluIEVGTCdzCisgICAgICAg
IExheW91dFRlc3RDb250cm9sbGVyLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0R1
bXBSZW5kZXJUcmVlQ2hyb21lLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlQ2hyb21lOjpy
ZXNldERlZmF1bHRzVG9Db25zaXN0ZW50VmFsdWVzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9lZmwvRHVtcFJlbmRlclRyZWVWaWV3LmNwcDoKKyAgICAgICAgKG9uRXhjZWVkZWRBcHBsaWNh
dGlvbkNhY2hlUXVvdGEpOgorICAgICAgICAoZHJ0Vmlld0FkZCk6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcDoKKyAgICAgICAgKExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEpOgorCiAyMDEy
LTA1LTE1ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBb
RUZMXVtEUlRdIEZpeCBldmVudFNlbmRlciBrZXkgcHJvdmlkaW5nCmRpZmYgLS1naXQgYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAppbmRleCBhYWE1NGViLi44
Y2E2NGQ2IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRy
ZWVDaHJvbWUuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJl
ZUNocm9tZS5jcHAKQEAgLTIxMSw2ICsyMTEsNyBAQCB2b2lkIER1bXBSZW5kZXJUcmVlQ2hyb21l
OjpyZXNldERlZmF1bHRzVG9Db25zaXN0ZW50VmFsdWVzKCkKICAgICBld2tfc2V0dGluZ3Nfd2Vi
X2RhdGFiYXNlX2RlZmF1bHRfcXVvdGFfc2V0KDUgKiAxMDI0ICogMTAyNCk7CiAKICAgICBld2tf
c2V0dGluZ3NfbWVtb3J5X2NhY2hlX2NsZWFyKCk7CisgICAgZXdrX3NldHRpbmdzX2FwcGxpY2F0
aW9uX2NhY2hlX2NsZWFyKCk7CiAKICAgICBld2tfdmlld19zZXR0aW5nX3ByaXZhdGVfYnJvd3Np
bmdfc2V0KG1haW5WaWV3KCksIEVJTkFfRkFMU0UpOwogICAgIGV3a192aWV3X3NldHRpbmdfc3Bh
dGlhbF9uYXZpZ2F0aW9uX3NldChtYWluVmlldygpLCBFSU5BX0ZBTFNFKTsKZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZVZpZXcuY3BwIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlVmlldy5jcHAKaW5kZXggZThmY2I4NS4u
ZjlmOGY2NSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJU
cmVlVmlldy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVl
Vmlldy5jcHAKQEAgLTEyMCw2ICsxMjAsMjcgQEAgc3RhdGljIHVpbnQ2NF90IG9uRXhjZWVkZWRE
YXRhYmFzZVF1b3RhKEV3a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSwgRXZhc19PYmoKICAg
ICByZXR1cm4gNSAqIDEwMjQgKiAxMDI0OwogfQogCitzdGF0aWMgdWludDY0X3Qgb25FeGNlZWRl
ZEFwcGxpY2F0aW9uQ2FjaGVRdW90YShFd2tfVmlld19TbWFydF9EYXRhKiwgRXdrX1NlY3VyaXR5
X09yaWdpbiAqb3JpZ2luLCBpbnQ2NF90IGRlZmF1bHRPcmlnaW5RdW90YSwgaW50NjRfdCB0b3Rh
bFNwYWNlTmVlZGVkKQoreworICAgIGlmIChnTGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBBcHBs
aWNhdGlvbkNhY2hlRGVsZWdhdGVDYWxsYmFja3MoKSkgeworICAgICAgICAvLyBGb3IgZXhhbXBs
ZSwgbnVtYmVycyBmcm9tIDMwMDAwIC0gMzk5OTkgd2lsbCBvdXRwdXQgYXMgMzAwMDAuCisgICAg
ICAgIC8vIFJvdW5kaW5nIHVwIG9yIGRvd24gZG9lcyBub3QgcmVhbGx5IG1hdHRlciBmb3IgdGhl
c2UgdGVzdHMuIEl0J3MKKyAgICAgICAgLy8gc3VmZmljaWVudCB0byBqdXN0IGdldCBhIHJhbmdl
IG9mIDEwMDAwIHRvIGRldGVybWluZSBpZiB3ZSB3ZXJlCisgICAgICAgIC8vIGFib3ZlIG9yIGJl
bG93IGEgdGhyZXNob2xkLgorICAgICAgICBpbnQ2NF90IHRydW5jYXRlZFNwYWNlTmVlZGVkID0g
KHRvdGFsU3BhY2VOZWVkZWQgLyAxMDAwMCkgKiAxMDAwMDsKKyAgICAgICAgcHJpbnRmKCJVSSBE
RUxFR0FURSBBUFBMSUNBVElPTiBDQUNIRSBDQUxMQkFDSzogZXhjZWVkZWRBcHBsaWNhdGlvbkNh
Y2hlT3JpZ2luUXVvdGFGb3JTZWN1cml0eU9yaWdpbjp7JXMsICVzLCAlaX0gdG90YWxTcGFjZU5l
ZWRlZDp+JWxsdVxuIiwKKyAgICAgICAgICAgICAgIGV3a19zZWN1cml0eV9vcmlnaW5fcHJvdG9j
b2xfZ2V0KG9yaWdpbiksCisgICAgICAgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2hvc3Rf
Z2V0KG9yaWdpbiksCisgICAgICAgICAgICAgICBld2tfc2VjdXJpdHlfb3JpZ2luX3BvcnRfZ2V0
KG9yaWdpbiksCisgICAgICAgICAgICAgICB0cnVuY2F0ZWRTcGFjZU5lZWRlZCk7CisgICAgfQor
CisgICAgaWYgKGdMYXlvdXRUZXN0Q29udHJvbGxlci0+ZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxp
Y2F0aW9uQ2FjaGVRdW90YSgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBkZWZh
dWx0T3JpZ2luUXVvdGE7Cit9CisKIHN0YXRpYyBib29sIHNob3VsZFVzZVNpbmdsZUJhY2tpbmdT
dG9yZSgpCiB7CiAgICAgY29uc3QgY2hhciogdXNlU2luZ2xlQmFja2luZ1N0b3JlID0gZ2V0ZW52
KCJEUlRfVVNFX1NJTkdMRV9CQUNLSU5HX1NUT1JFIik7CkBAIC0xNDcsNiArMTY4LDcgQEAgRXZh
c19PYmplY3QqIGRydFZpZXdBZGQoRXZhcyogZXZhcykKICAgICBhcGkucnVuX2phdmFzY3JpcHRf
cHJvbXB0ID0gb25KYXZhU2NyaXB0UHJvbXB0OwogICAgIGFwaS53aW5kb3dfY3JlYXRlID0gb25X
aW5kb3dDcmVhdGU7CiAgICAgYXBpLndpbmRvd19jbG9zZSA9IG9uV2luZG93Q2xvc2U7CisgICAg
YXBpLmV4Y2VlZGVkX2FwcGxpY2F0aW9uX2NhY2hlX3F1b3RhID0gb25FeGNlZWRlZEFwcGxpY2F0
aW9uQ2FjaGVRdW90YTsKICAgICBhcGkuZXhjZWVkZWRfZGF0YWJhc2VfcXVvdGEgPSBvbkV4Y2Vl
ZGVkRGF0YWJhc2VRdW90YTsKIAogICAgIHJldHVybiBldmFzX29iamVjdF9zbWFydF9hZGQoZXZh
cywgZXZhc19zbWFydF9jbGFzc19uZXcoJmFwaS5zYykpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKaW5kZXggMjk4MzhiZi4u
ODAxNDAzNSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RD
b250cm9sbGVyRWZsLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVz
dENvbnRyb2xsZXJFZmwuY3BwCkBAIC01NDMsMTAgKzU0MywxMSBAQCB2b2lkIExheW91dFRlc3RD
b250cm9sbGVyOjpjbGVhckFsbEFwcGxpY2F0aW9uQ2FjaGVzKCkKICAgICBld2tfc2V0dGluZ3Nf
YXBwbGljYXRpb25fY2FjaGVfY2xlYXIoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxl
cjo6c2V0QXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKHVuc2lnbmVkIGxvbmcgbG9uZykKK3Zv
aWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSh1
bnNpZ25lZCBsb25nIGxvbmcgcXVvdGEpCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0byBz
dXBwb3J0IGFwcGxpY2F0aW9uIGNhY2hlIHF1b3Rhcy4KLSAgICBub3RJbXBsZW1lbnRlZCgpOwor
ICAgIEV3a19TZWN1cml0eV9PcmlnaW4qIG9yaWdpbiA9IGV3a19mcmFtZV9zZWN1cml0eV9vcmln
aW5fZ2V0KGJyb3dzZXItPm1haW5GcmFtZSgpKTsKKyAgICBld2tfc2VjdXJpdHlfb3JpZ2luX2Fw
cGxpY2F0aW9uX2NhY2hlX3F1b3RhX3NldChvcmlnaW4sIHF1b3RhKTsKKyAgICBld2tfc2VjdXJp
dHlfb3JpZ2luX2ZyZWUob3JpZ2luKTsKIH0KIAogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
Y2xlYXJBcHBsaWNhdGlvbkNhY2hlRm9yT3JpZ2luKE9wYXF1ZUpTU3RyaW5nKikK
</data>

          </attachment>
      

    </bug>

</bugzilla>