<?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>131057</bug_id>
          
          <creation_ts>2014-04-01 13:49:27 -0700</creation_ts>
          <short_desc>Remove Settings::maximumDecodedImageSize()</short_desc>
          <delta_ts>2014-04-02 14:10:41 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>joepeck</cc>
    
    <cc>psolanki</cc>
    
    <cc>yongjun_zhang</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>996423</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-01 13:49:27 -0700</bug_when>
    <thetext>Following up on bug #127029, comment #7, we should remove the setting Settings::maximumDecodedImageSize() and its related logic as this feature has various shortcomings. At the time of writing, the iOS port is the only port that makes use of this setting. That is, the iOS port is the only port that specifies a maximum decoded image size less than the port-independent default size (std::numeric_limits&lt;size_t&gt;::max()). Moreover, this feature is less useful to the iOS port as it has support infrastructure to subsample large images (*).

(*) We should look to make this support infrastructure platform-independent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996424</commentid>
    <comment_count>1</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-01 13:49:41 -0700</bug_when>
    <thetext>&lt;rdar://problem/15626368&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996436</commentid>
    <comment_count>2</comment_count>
      <attachid>228319</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-01 14:13:02 -0700</bug_when>
    <thetext>Created attachment 228319
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996442</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-01 14:19:37 -0700</bug_when>
    <thetext>Maybe we should increase the maximum canvas area on iOS? Currently we limit the image buffer of the canvas to 20 MB.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996738</commentid>
    <comment_count>4</comment_count>
      <attachid>228319</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-02 09:56:30 -0700</bug_when>
    <thetext>Comment on attachment 228319
Patch

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

&gt; Source/WebCore/loader/cache/CachedImage.cpp:400
&gt; +        // The image failed to be decoded. Either we need more image data or the image data is malformed.

&quot;failed to be decoded&quot; is not grammatical. I suggest &quot;Image decoding failed.&quot;

&gt; Source/WebCore/loader/cache/CachedImage.cpp:439
&gt; +        // The image failed to be decoded; the image data is malformed.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996848</commentid>
    <comment_count>5</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-02 14:05:36 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 228319 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=228319&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/loader/cache/CachedImage.cpp:400
&gt; &gt; +        // The image failed to be decoded. Either we need more image data or the image data is malformed.
&gt; 
&gt; &quot;failed to be decoded&quot; is not grammatical. I suggest &quot;Image decoding failed.&quot;

Will fix before landing.

&gt; 
&gt; &gt; Source/WebCore/loader/cache/CachedImage.cpp:439
&gt; &gt; +        // The image failed to be decoded; the image data is malformed.
&gt; 
&gt; Ditto.

Will fix before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996852</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-04-02 14:10:41 -0700</bug_when>
    <thetext>Committed r166665: &lt;http://trac.webkit.org/changeset/166665&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228319</attachid>
            <date>2014-04-01 14:13:02 -0700</date>
            <delta_ts>2014-04-02 09:56:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131057-20140401141253.patch</filename>
            <type>text/plain</type>
            <size>18564</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY2NjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGViZTJlOTEyOTE4OTAx
YjQ4Zjc4MzYxMzNkZGUzODA5ZWRjZWFhMS4uZjNiMTlhYzBmZDdhZGZiMTljY2FmODg3ZGRlYjQ1
MmE1MjE0ZmI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE0LTA0LTAxICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgU2V0dGluZ3M6
Om1heGltdW1EZWNvZGVkSW1hZ2VTaXplKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEzMTA1NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTU2MjYz
Njg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhl
IHNldHRpbmcgU2V0dGluZ3M6Om1heGltdW1EZWNvZGVkSW1hZ2VTaXplKCkgYW5kIGl0cyByZWxh
dGVkIGxvZ2ljIGhhdmUgdmFyaW91cworICAgICAgICBzaG9ydGNvbWluZ3MsIGluY2x1ZGluZyB0
aGUgaW5hYmlsaXR5IHRvIGNhbmNlbCBhbiBpbWFnZSBsb2FkIHdoZW4gdGhlIGVzdGltYXRlZAor
ICAgICAgICBkZWNvZGVkIGltYWdlIHNpemUgZXhjZWVkcyB0aGUgbWF4aW11bSBkZWNvZGVkIGlt
YWdlIHNpemUuIEluIHRoZSBpT1MgcG9ydCwgdGhpcworICAgICAgICBzZXR0aW5nIGlzIGxlc3Mg
dXNlZnVsIGdpdmVuIGltYWdlIHN1YnNhbXBsaW5nIHN1cHBvcnQuIEZvciBub3csIHdlIHJlbW92
ZSB0aGlzCisgICAgICAgIHNldHRpbmcgYW5kIGl0cyByZWxhdGVkIGxvZ2ljLiBTaG91bGQgaXQg
dHVybiBvdXQgdGhhdCBzdWNoIGEgc2V0dGluZyBpcyB1c2VmdWwKKyAgICAgICAgdGhlbiB3ZSBj
YW4gaW1wbGVtZW50IGl0IGFnYWluIHRha2luZyBjYXJlIHRvIGFkZHJlc3MgdGhlIHNob3J0Y29t
aW5ncyBpbiB0aGUKKyAgICAgICAgb3JpZ2luYWwgZGVzaWduLgorCisgICAgICAgICogaHRtbC9I
VE1MQ2FudmFzRWxlbWVudC5jcHA6IEZvciB0aGUgaU9TIHBvcnQsIGRlZmluZSBNYXhDYW52YXNB
cmVhIHRvIGJlIDQ1ODAgKiAxMTQ1CisgICAgICAgIHBpeGVscyBzdWNoIHRoYXQgdGhlIG1heGlt
dW0gc2l6ZSBvZiB0aGUgaW1hZ2UgYnVmZmVyIGlzIDIwIE1CIChhc3N1bWVzIDQgYnl0ZXMgcGVy
IHBpeGVsKS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxDYW52YXNFbGVtZW50OjpIVE1MQ2FudmFz
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQ2FudmFzRWxlbWVudDo6Y3JlYXRlSW1h
Z2VCdWZmZXIpOgorICAgICAgICAqIGh0bWwvSFRNTENhbnZhc0VsZW1lbnQuaDoKKyAgICAgICAg
KiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpjcmVhdGVJbWFnZURhdGEpOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpnZXRJbWFnZURhdGEpOgorICAg
ICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
YWNoZWRJbWFnZTo6YWRkSW5jcmVtZW50YWxEYXRhQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZEltYWdlOjpmaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkSW1hZ2UuaDoKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmluOgorCiAyMDE0LTA0LTAxICBC
ZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBh
IGNvdXBsZSBvZiB1c2VsZXNzIHN0YXRpYyBzdHJpbmdzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggMThh
Y2E1NzU4OGVlOTNhYWE3Y2RkYzYzN2I1Mzc3NTJlMDQ3OTQxMC4uODAyODE2M2M2ZWZlYzM4MzVh
Y2FiMzRmYTAwYjEwNDAyMDNjMjM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBA
CisyMDE0LTA0LTAxICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZW1vdmUgU2V0dGluZ3M6Om1heGltdW1EZWNvZGVkSW1hZ2VTaXplKCkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA1NworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMTU2MjYzNjg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuIAorCisgICAgICAgIFJlbW92ZSBwcmVmZXJlbmNlcyBrZXkgV2ViS2l0TWF4aW11bUltYWdl
U2l6ZS4KKworICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmg6Cisg
ICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbToKKyAgICAgICAgKCtbV2ViUHJlZmVy
ZW5jZXMgaW5pdGlhbGl6ZV0pOgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBfbWF4aW11bUlt
YWdlU2l6ZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJp
dmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmll
dyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDE0LTAzLTMxICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBXRUJfVElNSU5HIG9uIE1h
YyBhbmQgaU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCmluZGV4
IDAxZWYxMDJkOGI0YTk4MWYwODFhNjliOTkwYzY2YmEyNTEwNThkNjAuLjc1MTIxMjMxZWNmYzM4
NTVlYzhlODJhMWNlYWZkMDE1OTUxMDI0MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENh
bnZhc0VsZW1lbnQuY3BwCkBAIC02Nyw5ICs2NywxMSBAQCBzdGF0aWMgY29uc3QgaW50IERlZmF1
bHRIZWlnaHQgPSAxNTA7CiAKIC8vIEZpcmVmb3ggbGltaXRzIHdpZHRoL2hlaWdodCB0byAzMjc2
NyBwaXhlbHMsIGJ1dCBzbG93cyBkb3duIGRyYW1hdGljYWxseSBiZWZvcmUgaXQKIC8vIHJlYWNo
ZXMgdGhhdCBsaW1pdC4gV2UgbGltaXQgYnkgYXJlYSBpbnN0ZWFkLCBnaXZpbmcgdXMgbGFyZ2Vy
IG1heGltdW0gZGltZW5zaW9ucywKLS8vIGluIGV4Y2hhbmdlIGZvciBhIHNtYWxsZXIgbWF4aW11
bSBjYW52YXMgc2l6ZS4KLSNpZiAhUExBVEZPUk0oSU9TKQotc3RhdGljIGNvbnN0IGZsb2F0IE1h
eENhbnZhc0FyZWEgPSAzMjc2OCAqIDgxOTI7IC8vIE1heGltdW0gY2FudmFzIGFyZWEgaW4gQ1NT
IHBpeGVscworLy8gaW4gZXhjaGFuZ2UgZm9yIGEgc21hbGxlciBtYXhpbXVtIGNhbnZhcyBzaXpl
LiBUaGUgbWF4aW11bSBjYW52YXMgc2l6ZSBpcyBpbiBDU1MgcGl4ZWxzLgorI2lmIFBMQVRGT1JN
KElPUykKK3N0YXRpYyBjb25zdCBmbG9hdCBNYXhDYW52YXNBcmVhID0gNDU4MCAqIDExNDU7IC8v
IDIwIE1CIGFzc3VtaW5nIDQgYnl0ZXMgcGVyIHBpeGVsCisjZWxzZQorc3RhdGljIGNvbnN0IGZs
b2F0IE1heENhbnZhc0FyZWEgPSAzMjc2OCAqIDgxOTI7CiAjZW5kaWYKIAogSFRNTENhbnZhc0Vs
ZW1lbnQ6OkhUTUxDYW52YXNFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERv
Y3VtZW50JiBkb2N1bWVudCkKQEAgLTc5LDEwICs4MSw2IEBAIEhUTUxDYW52YXNFbGVtZW50OjpI
VE1MQ2FudmFzRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYg
ZG9jCiAgICAgLCBtX2lnbm9yZVJlc2V0KGZhbHNlKQogICAgICwgbV9kZXZpY2VTY2FsZUZhY3Rv
cih0YXJnZXREZXZpY2VTY2FsZUZhY3RvcigpKQogICAgICwgbV9vcmlnaW5DbGVhbih0cnVlKQot
I2lmIFBMQVRGT1JNKElPUykKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGxvb2sgdG8gcmVjb25j
aWxlIHVzYWdlIG9mIE1heENhbnZhc0FyZWEgYW5kIG1fbWF4aW11bURlY29kZWRJbWFnZVNpemUu
Ci0gICAgLCBtX21heGltdW1EZWNvZGVkSW1hZ2VTaXplKGRvY3VtZW50LnNldHRpbmdzKCkgPyBk
b2N1bWVudC5zZXR0aW5ncygpLT5tYXhpbXVtRGVjb2RlZEltYWdlU2l6ZSgpIDogMCkKLSNlbmRp
ZgogICAgICwgbV9oYXNDcmVhdGVkSW1hZ2VCdWZmZXIoZmFsc2UpCiAgICAgLCBtX2RpZENsZWFy
SW1hZ2VCdWZmZXIoZmFsc2UpCiB7CkBAIC01NzQsMTMgKzU3Miw4IEBAIHZvaWQgSFRNTENhbnZh
c0VsZW1lbnQ6OmNyZWF0ZUltYWdlQnVmZmVyKCkgY29uc3QKICAgICBpZiAoIWRldmljZVNpemUu
aXNFeHByZXNzaWJsZUFzSW50U2l6ZSgpKQogICAgICAgICByZXR1cm47CiAKLSNpZiBQTEFURk9S
TShJT1MpCi0gICAgaWYgKGRldmljZVNpemUud2lkdGgoKSAqIGRldmljZVNpemUuaGVpZ2h0KCkg
KiA0ID4gbV9tYXhpbXVtRGVjb2RlZEltYWdlU2l6ZSkKLSAgICAgICAgcmV0dXJuOwotI2Vsc2UK
ICAgICBpZiAoZGV2aWNlU2l6ZS53aWR0aCgpICogZGV2aWNlU2l6ZS5oZWlnaHQoKSA+IE1heENh
bnZhc0FyZWEpCiAgICAgICAgIHJldHVybjsKLSNlbmRpZgogCiAgICAgSW50U2l6ZSBidWZmZXJT
aXplKGRldmljZVNpemUud2lkdGgoKSwgZGV2aWNlU2l6ZS5oZWlnaHQoKSk7CiAgICAgaWYgKCFi
dWZmZXJTaXplLndpZHRoKCkgfHwgIWJ1ZmZlclNpemUuaGVpZ2h0KCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxDYW52YXNFbGVtZW50LmgKaW5kZXggODQzYTBlMmFlY2QyY2U3OTAzNDBkOGYwMGQz
MmUyODg1YzIxOTFjYi4uZDQ3MDUxYjI1NzI5ZDlhZmZiMmE2OWYwMWRkZjY1MjNlNDYxNGNmYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaApAQCAtMTI4LDEyICsxMjgs
NiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRPcmlnaW5UYWludGVkKCkgeyBtX29yaWdpbkNsZWFu
ID0gZmFsc2U7IH0KICAgICBib29sIG9yaWdpbkNsZWFuKCkgY29uc3QgeyByZXR1cm4gbV9vcmln
aW5DbGVhbjsgfQogCi0jaWYgUExBVEZPUk0oSU9TKQotICAgIC8vIEZJWE1FOiBDYW4gd2UgdXNl
IHVuc2lnbmVkIGRhdGEgdHlwZXMsIHVuc2lnbmVkIG9yIHNpemVfdD8KLSAgICB2b2lkIHNldE1h
eGltdW1EZWNvZGVkSW1hZ2VTaXplKGZsb2F0IG1heGltdW1EZWNvZGVkSW1hZ2VTaXplKSB7IG1f
bWF4aW11bURlY29kZWRJbWFnZVNpemUgPSBtYXhpbXVtRGVjb2RlZEltYWdlU2l6ZTsgfQotICAg
IGZsb2F0IG1heGltdW1EZWNvZGVkSW1hZ2VTaXplKCkgeyByZXR1cm4gbV9tYXhpbXVtRGVjb2Rl
ZEltYWdlU2l6ZTsgfQotI2VuZGlmCi0KICAgICBBZmZpbmVUcmFuc2Zvcm0gYmFzZVRyYW5zZm9y
bSgpIGNvbnN0OwogCiAgICAgdm9pZCBtYWtlUmVuZGVyaW5nUmVzdWx0c0F2YWlsYWJsZSgpOwpA
QCAtMTgyLDExICsxNzYsNiBAQCBwcml2YXRlOgogICAgIGZsb2F0IG1fZGV2aWNlU2NhbGVGYWN0
b3I7CiAgICAgYm9vbCBtX29yaWdpbkNsZWFuOwogCi0jaWYgUExBVEZPUk0oSU9TKQotICAgIC8v
IEZJWE1FOiBDYW4gd2UgdXNlIGEgdW5zaWduZWQgZGF0YSB0eXBlLCB1bnNpZ25lZCBvciBzaXpl
X3Q/Ci0gICAgZmxvYXQgbV9tYXhpbXVtRGVjb2RlZEltYWdlU2l6ZTsKLSNlbmRpZgotCiAgICAg
Ly8gbV9jcmVhdGVkSW1hZ2VCdWZmZXIgbWVhbnMgd2UgdHJpZWQgdG8gbWFsbG9jIHRoZSBidWZm
ZXIuICBXZSBkaWRuJ3QgbmVjZXNzYXJpbHkgZ2V0IGl0LgogICAgIG11dGFibGUgYm9vbCBtX2hh
c0NyZWF0ZWRJbWFnZUJ1ZmZlcjsKICAgICBtdXRhYmxlIGJvb2wgbV9kaWRDbGVhckltYWdlQnVm
ZmVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVy
aW5nQ29udGV4dDJELmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRl
cmluZ0NvbnRleHQyRC5jcHAKaW5kZXggNDMwNWQxMDRkYjU4ZTk4MDE5NGRlMmIzMWM0NmZiZTA3
NzEwZGVjMi4uMmQ5YjQzNzNiNTNkMGM2YTFkMjUwOGMxZjY3Mzk4ODc2OGI4NWI5YiAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250
ZXh0MkQuY3BwCkBAIC0xODU3LDE1ICsxODU3LDYgQEAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IENh
bnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6Y3JlYXRlSW1hZ2VEYXRhKGZsb2F0IHN3LCBmbG9hdAog
ICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSNpZiBQTEFURk9STShJT1MpCi0gICAgLy8gSWYg
dGhlIGNhbnZhcyBlbGVtZW50IHdhcyBjcmVhdGVkIGJlZm9yZSBEb2N1bWVudCBoYWQgYSBGcmFt
ZSwKLSAgICAvLyB0aGVuIG5vIG1heGltdW1EZWNvZGVkSW1hZ2VTaXplIHdhcyBzZXQuCi0gICAg
aWYgKCFjYW52YXMoKS0+bWF4aW11bURlY29kZWRJbWFnZVNpemUoKSkgewotICAgICAgICBpZiAo
U2V0dGluZ3MqIHNldHRpbmdzID0gY2FudmFzKCktPmRvY3VtZW50KCkuc2V0dGluZ3MoKSkKLSAg
ICAgICAgICAgIGNhbnZhcygpLT5zZXRNYXhpbXVtRGVjb2RlZEltYWdlU2l6ZShzZXR0aW5ncy0+
bWF4aW11bURlY29kZWRJbWFnZVNpemUoKSk7Ci0gICAgfQotI2VuZGlmCi0KICAgICBGbG9hdFNp
emUgbG9naWNhbFNpemUoZmFicyhzdyksIGZhYnMoc2gpKTsKICAgICBpZiAoIWxvZ2ljYWxTaXpl
LmlzRXhwcmVzc2libGVBc0ludFNpemUoKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0xOTE2LDE1
ICsxOTA3LDYgQEAgUGFzc1JlZlB0cjxJbWFnZURhdGE+IENhbnZhc1JlbmRlcmluZ0NvbnRleHQy
RDo6Z2V0SW1hZ2VEYXRhKEltYWdlQnVmZmVyOjpDb29yZGkKICAgICAgICAgc2ggPSAtc2g7CiAg
ICAgfQogCi0jaWYgUExBVEZPUk0oSU9TKQotICAgIC8vIElmIHRoZSBjYW52YXMgZWxlbWVudCB3
YXMgY3JlYXRlZCBiZWZvcmUgRG9jdW1lbnQgaGFkIGEgRnJhbWUsCi0gICAgLy8gdGhlbiBubyBt
YXhpbXVtRGVjb2RlZEltYWdlU2l6ZSB3YXMgc2V0LgotICAgIGlmICghY2FudmFzKCktPm1heGlt
dW1EZWNvZGVkSW1hZ2VTaXplKCkpIHsKLSAgICAgICAgaWYgKFNldHRpbmdzKiBzZXR0aW5ncyA9
IGNhbnZhcygpLT5kb2N1bWVudCgpLnNldHRpbmdzKCkpCi0gICAgICAgICAgICBjYW52YXMoKS0+
c2V0TWF4aW11bURlY29kZWRJbWFnZVNpemUoc2V0dGluZ3MtPm1heGltdW1EZWNvZGVkSW1hZ2VT
aXplKCkpOwotICAgIH0KLSNlbmRpZgotCiAgICAgRmxvYXRSZWN0IGxvZ2ljYWxSZWN0KHN4LCBz
eSwgc3csIHNoKTsKICAgICBpZiAobG9naWNhbFJlY3Qud2lkdGgoKSA8IDEpCiAgICAgICAgIGxv
Z2ljYWxSZWN0LnNldFdpZHRoKDEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRJbWFnZS5jcHAKaW5kZXggOGViYzhmN2Q4YjA4YTk1Y2U0NDhlNjk4MWFjZDVjM2ViNWRkOTk1
Mi4uOGI0MDMwNzVlMDI3MmIxOTQ4ZmU5ZjA2MDk5YzMxNDQxYTQyNjY1OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCkBAIC0zODEsMTggKzM4MSw2IEBA
IGlubGluZSB2b2lkIENhY2hlZEltYWdlOjpjbGVhckltYWdlKCkKICAgICBtX2ltYWdlLmNsZWFy
KCk7CiB9CiAKLWJvb2wgQ2FjaGVkSW1hZ2U6OmNhbkJlRHJhd24oKSBjb25zdAotewotICAgIGlm
ICghbV9pbWFnZSB8fCBtX2ltYWdlLT5pc051bGwoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
Ci0gICAgaWYgKCFtX2xvYWRlciB8fCBtX2xvYWRlci0+cmVhY2hlZFRlcm1pbmFsU3RhdGUoKSkK
LSAgICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICBzaXplX3QgZXN0aW1hdGVkRGVjb2RlZEltYWdl
U2l6ZSA9IG1faW1hZ2UtPndpZHRoKCkgKiBtX2ltYWdlLT5oZWlnaHQoKSAqIDQ7IC8vIG5vIG92
ZXJmbG93IGNoZWNrCi0gICAgcmV0dXJuIGVzdGltYXRlZERlY29kZWRJbWFnZVNpemUgPD0gbV9s
b2FkZXItPmZyYW1lTG9hZGVyKCktPmZyYW1lKCkuc2V0dGluZ3MoKS5tYXhpbXVtRGVjb2RlZElt
YWdlU2l6ZSgpOwotfQotCiB2b2lkIENhY2hlZEltYWdlOjphZGRJbmNyZW1lbnRhbERhdGFCdWZm
ZXIoUmVzb3VyY2VCdWZmZXIqIGRhdGEpCiB7CiAgICAgbV9kYXRhID0gZGF0YTsKQEAgLTQwOCw4
ICszOTYsOCBAQCB2b2lkIENhY2hlZEltYWdlOjphZGRJbmNyZW1lbnRhbERhdGFCdWZmZXIoUmVz
b3VyY2VCdWZmZXIqIGRhdGEpCiAgICAgaWYgKCFzaXplQXZhaWxhYmxlKQogICAgICAgICByZXR1
cm47CiAKLSAgICBpZiAoIWNhbkJlRHJhd24oKSkgewotICAgICAgICAvLyBUaGVyZSdzIG5vIGlt
YWdlIHRvIGRyYXcgb3IgaXRzIGRlY29kZWQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWF4aW11
bSBhbGxvd2VkLgorICAgIGlmIChtX2ltYWdlLT5pc051bGwoKSkgeworICAgICAgICAvLyBUaGUg
aW1hZ2UgZmFpbGVkIHRvIGJlIGRlY29kZWQuIEVpdGhlciB3ZSBuZWVkIG1vcmUgaW1hZ2UgZGF0
YSBvciB0aGUgaW1hZ2UgZGF0YSBpcyBtYWxmb3JtZWQuCiAgICAgICAgIGVycm9yKGVycm9yT2Nj
dXJyZWQoKSA/IHN0YXR1cygpIDogRGVjb2RlRXJyb3IpOwogICAgICAgICBpZiAoaW5DYWNoZSgp
KQogICAgICAgICAgICAgbWVtb3J5Q2FjaGUoKS0+cmVtb3ZlKHRoaXMpOwpAQCAtNDQ3LDggKzQz
NSw4IEBAIHZvaWQgQ2FjaGVkSW1hZ2U6OmZpbmlzaExvYWRpbmcoUmVzb3VyY2VCdWZmZXIqIGRh
dGEpCiAgICAgaWYgKG1faW1hZ2UpCiAgICAgICAgIG1faW1hZ2UtPnNldERhdGEobV9kYXRhLT5z
aGFyZWRCdWZmZXIoKSwgdHJ1ZSk7CiAKLSAgICBpZiAoIWNhbkJlRHJhd24oKSkgewotICAgICAg
ICAvLyBUaGVyZSdzIG5vIGltYWdlIHRvIGRyYXcgb3IgaXRzIGRlY29kZWQgc2l6ZSBpcyBiaWdn
ZXIgdGhhbiB0aGUgbWF4aW11bSBhbGxvd2VkLgorICAgIGlmICghbV9pbWFnZSB8fCBtX2ltYWdl
LT5pc051bGwoKSkgeworICAgICAgICAvLyBUaGUgaW1hZ2UgZmFpbGVkIHRvIGJlIGRlY29kZWQ7
IHRoZSBpbWFnZSBkYXRhIGlzIG1hbGZvcm1lZC4KICAgICAgICAgZXJyb3IoZXJyb3JPY2N1cnJl
ZCgpID8gc3RhdHVzKCkgOiBEZWNvZGVFcnJvcik7CiAgICAgICAgIGlmIChpbkNhY2hlKCkpCiAg
ICAgICAgICAgICBtZW1vcnlDYWNoZSgpLT5yZW1vdmUodGhpcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oCmluZGV4IDg2YWYwM2ZkMDE4NTU4NmQ1ZGE3ZDM0YzQ3
ZGRlMmUwNjYzMmNiZTcuLmY3ZDcwY2ZkZTRkNmU0YmJmNmIzMmM1Njg2NTU1NDM4ZjVmNjViYWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oCkBAIC05OSw3ICs5
OSw2IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGNyZWF0ZUltYWdlKCk7CiAgICAgdm9pZCBjbGVh
ckltYWdlKCk7Ci0gICAgYm9vbCBjYW5CZURyYXduKCkgY29uc3Q7CiAgICAgLy8gSWYgbm90IG51
bGwsIGNoYW5nZVJlY3QgaXMgdGhlIGNoYW5nZWQgcGFydCBvZiB0aGUgaW1hZ2UuCiAgICAgdm9p
ZCBub3RpZnlPYnNlcnZlcnMoY29uc3QgSW50UmVjdCogY2hhbmdlUmVjdCA9IDApOwogICAgIHZp
cnR1YWwgUHVyZ2VQcmlvcml0eSBwdXJnZVByaW9yaXR5KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gUHVyZ2VGaXJzdDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KaW5kZXggN2Y3NWYxNDJiY2Fh
MjVmMDIxOTU3Yjg3MDdjNjdkMjY3NThhZWFkMi4uYzhkZDZmNjZkNWNhMDBjM2U1MzU0ZjZiYzlh
ZTQ3MDBhYWYzNWEyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5p
bgorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCkBAIC0yNSw3ICsyNSw2IEBA
IHZhbGlkYXRpb25NZXNzYWdlVGltZXJNYWduaWZpY2F0aW9uIHR5cGU9aW50LCBpbml0aWFsPTUw
CiBtaW5pbXVtQWNjZWxlcmF0ZWQyZENhbnZhc1NpemUgdHlwZT1pbnQsIGluaXRpYWw9MjU3KjI1
NgogCiBsYXlvdXRGYWxsYmFja1dpZHRoIHR5cGU9aW50LCBpbml0aWFsPTk4MAotbWF4aW11bURl
Y29kZWRJbWFnZVNpemUgdHlwZT1zaXplX3QsIGluaXRpYWw9c3RkOjpudW1lcmljX2xpbWl0czxz
aXplX3Q+OjptYXgoKQogZGV2aWNlV2lkdGggdHlwZT1pbnQsIGluaXRpYWw9MAogZGV2aWNlSGVp
Z2h0IHR5cGU9aW50LCBpbml0aWFsPTAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXggNzhiNDBmNzE5NDE2MGQzMDQ2
Njk0ZGYwOGNhZjBjMDRkYzEyMTFkMi4uY2I4OTYwM2Q2YTI5YzUxMjkxYTcwOGUzYzhjMjRjYzY1
NDZmOWE5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJl
bmNlS2V5c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZl
cmVuY2VLZXlzUHJpdmF0ZS5oCkBAIC0xODAsNyArMTgwLDYgQEAKICNkZWZpbmUgV2ViS2l0TWlu
aW11bVpvb21Gb250U2l6ZVByZWZlcmVuY2VLZXkgQCJXZWJLaXRNaW5pbXVtWm9vbUZvbnRTaXpl
UHJlZmVyZW5jZUtleSIKIAogI2lmIFRBUkdFVF9PU19JUEhPTkUKLSNkZWZpbmUgV2ViS2l0TWF4
aW11bUltYWdlU2l6ZVByZWZlcmVuY2VLZXkgQCJXZWJLaXRNYXhpbXVtSW1hZ2VTaXplIgogI2Rl
ZmluZSBXZWJLaXRTdGFuZGFsb25lUHJlZmVyZW5jZUtleSBAIldlYktpdFN0YW5kYWxvbmVQcmVm
ZXJlbmNlS2V5IgogI2RlZmluZSBXZWJLaXRUZWxlcGhvbmVQYXJzaW5nRW5hYmxlZFByZWZlcmVu
Y2VLZXkgQCJXZWJLaXRUZWxlcGhvbmVQYXJzaW5nRW5hYmxlZFByZWZlcmVuY2VLZXkiCiAjZGVm
aW5lIFdlYktpdEFsd2F5c1VzZUJhc2VsaW5lT2ZQcmltYXJ5Rm9udFByZWZlcmVuY2VLZXkgQCJX
ZWJLaXRBbHdheXNVc2VCYXNlbGluZU9mUHJpbWFyeUZvbnRQcmVmZXJlbmNlS2V5IgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggY2RiOTg1MDZjOTcz
ZjUxMWNiYjc1M2YzMDg2MGQ5NDY4MGJkNzBlOS4uNGY3Y2MwNDNhNjgyYzQzYmNhZWFkYmJhMmU3
ODJkZjU0NDhkZGVjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VzLm1tCkBAIC0zOTQsOSArMzk0LDYgQEAgcHVibGljOgogICAgIFdURjo6aW5pdGlhbGl6ZU1h
aW5UaHJlYWRUb1Byb2Nlc3NNYWluVGhyZWFkKCk7CiAgICAgUnVuTG9vcDo6aW5pdGlhbGl6ZU1h
aW5SdW5Mb29wKCk7CiAjZW5kaWYKLSNpZiBQTEFURk9STShJT1MpCi0gICAgc3RhdGljIHVuc2ln
bmVkIGRlZmF1bHRNYXhpbXVtSW1hZ2VTaXplID0gMjAgKiAxMDI0ICogMTAyNDsKLSNlbmRpZgog
CiAgICAgTlNEaWN0aW9uYXJ5ICpkaWN0ID0gW05TRGljdGlvbmFyeSBkaWN0aW9uYXJ5V2l0aE9i
amVjdHNBbmRLZXlzOgogICAgICAgICBAIlRpbWVzIiwgICAgICAgICAgICAgICAgICAgICAgIFdl
YktpdFN0YW5kYXJkRm9udFByZWZlcmVuY2VLZXksCkBAIC01NTMsNyArNTUwLDYgQEAgcHVibGlj
OgogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdFBsdWdJblNu
YXBzaG90dGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5LAogCiAjaWYgUExBVEZPUk0oSU9TKQotICAg
ICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aFVuc2lnbmVkSW50OmRlZmF1bHRNYXhpbXVtSW1hZ2VT
aXplXSwgV2ViS2l0TWF4aW11bUltYWdlU2l6ZVByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051
bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2ViS2l0VGVsZXBob25lUGFyc2luZ0VuYWJsZWRQ
cmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDotMV0sICAgICAg
V2ViS2l0TGF5b3V0SW50ZXJ2YWxQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVt
YmVyV2l0aEZsb2F0Oi0xLjBmXSwgV2ViS2l0TWF4UGFyc2VEdXJhdGlvblByZWZlcmVuY2VLZXks
CkBAIC0xNDAxLDExICsxMzk3LDYgQEAgcHVibGljOgogfQogCiAjaWYgUExBVEZPUk0oSU9TKQot
LSAoc2l6ZV90KV9tYXhpbXVtSW1hZ2VTaXplCi17Ci0gICAgcmV0dXJuIFtbTlNVc2VyRGVmYXVs
dHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGludGVnZXJGb3JLZXk6V2ViS2l0TWF4aW11bUltYWdl
U2l6ZVByZWZlcmVuY2VLZXldOwotfQotCiAtIChCT09MKV9zdGFuZGFsb25lCiB7CiAgICAgcmV0
dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0U3RhbmRhbG9uZVByZWZlcmVuY2VLZXld
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1By
aXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmgKaW5kZXggMjNiNzkwNjljOTU1ZjY4YWMzYmJjYzZkZTQ2YjhiOWY3YjAzMmFmZS4uY2IyNTkw
NGUzOTM3MjcxY2E4ZTBkNDczZmRkOTY5MTY2ZTc0MmJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0yOTIsNyArMjkyLDYg
QEAgZXh0ZXJuIE5TU3RyaW5nICpXZWJQcmVmZXJlbmNlc0NhY2hlTW9kZWxDaGFuZ2VkSW50ZXJu
YWxOb3RpZmljYXRpb247CiAKIC8vIE90aGVyIHByaXZhdGUgbWV0aG9kcwogI2lmIFRBUkdFVF9P
U19JUEhPTkUKLS0gKHNpemVfdClfbWF4aW11bUltYWdlU2l6ZTsKIC0gKEJPT0wpX3N0YW5kYWxv
bmU7CiAtICh2b2lkKV9zZXRTdGFuZGFsb25lOihCT09MKWZsYWc7CiAtICh2b2lkKV9zZXRUZWxl
cGhvbmVOdW1iZXJQYXJzaW5nRW5hYmxlZDooQk9PTClmbGFnOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCmluZGV4IDE4M2ZhYTM4ZTFlYzNhMWYzZWY3MjNhYjM5MWQ0Zjk5NzZiM2Zi
ZTguLjNmYTA3M2QwNTFjZDQ2ZTA0YjQzZGRhODUzMGRhMWE0ZmM5NmE5NDMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTIyODgsNyArMjI4OCw2IEBAIHN0YXRpYyBib29s
IG5lZWRzU2VsZlJldGFpbldoaWxlTG9hZGluZ1F1aXJrKCkKICNlbHNlCiAgICAgLy8gaU9TLXNw
ZWNpZmljIHNldHRpbmdzCiAgICAgc2V0dGluZ3Muc2V0U3RhbmRhbG9uZShbcHJlZmVyZW5jZXMg
X3N0YW5kYWxvbmVdKTsKLSAgICBzZXR0aW5ncy5zZXRNYXhpbXVtRGVjb2RlZEltYWdlU2l6ZShb
cHJlZmVyZW5jZXMgX21heGltdW1JbWFnZVNpemVdKTsKICAgICBzZXR0aW5ncy5zZXRUZWxlcGhv
bmVOdW1iZXJQYXJzaW5nRW5hYmxlZChbcHJlZmVyZW5jZXMgX3RlbGVwaG9uZU51bWJlclBhcnNp
bmdFbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0QWx3YXlzVXNlQmFzZWxpbmVPZlByaW1hcnlG
b250KFtwcmVmZXJlbmNlcyBfYWx3YXlzVXNlQmFzZWxpbmVPZlByaW1hcnlGb250XSk7CiAgICAg
c2V0dGluZ3Muc2V0QWxsb3dNdWx0aUVsZW1lbnRJbXBsaWNpdFN1Ym1pc3Npb24oW3ByZWZlcmVu
Y2VzIF9hbGxvd011bHRpRWxlbWVudEltcGxpY2l0Rm9ybVN1Ym1pc3Npb25dKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0
MTM3ZTkwOThhODM0MDE2NTE2YzBmODU4MGI2YWU3YjAzMDE2MzlkLi5mZDYxNzQ3NzFkMzc4MDVi
ODc4YzY2MWQ1YWNmY2E1YTJhZTBlYjQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTQtMDQt
MDEgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBT
ZXR0aW5nczo6bWF4aW11bURlY29kZWRJbWFnZVNpemUoKQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxMDU3CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8xNTYyNjM2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBSZW1vdmUgdGVzdCBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9kZWNvZGVkLXNpemUtZXhj
ZWVkcy1tYXgtZGVjb2RlZC1zaXplLmh0bWwgYXMgaXQKKyAgICAgICAgaXNuJ3QgYXBwbGljYWJs
ZSBmb2xsb3dpbmcgdGhlIHJlbW92YWwgb2YgdGhlIHNldHRpbmcgU2V0dGluZ3M6Om1heGltdW1E
ZWNvZGVkSW1hZ2VTaXplKCkuCisgICAgICAgIEFkZGl0aW9uYWxseSB1cGRhdGUgdGhlIHRlc3Qg
ZmFzdC9pbWFnZXMvYmFnLXBuZy5odG1sIHRvIGVuc3VyZSB0aGF0IHdlIGRpc3BhdGNoCisgICAg
ICAgIGEgRE9NIEVycm9yIGV2ZW50IHdoZW4gd2UgZmFpbCB0byBkZWNvZGUgYSBtYWxmb3JtZWQg
aW1hZ2UuCisKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9iYWQtcG5nLmh0bWw6CisgICAgICAgICog
ZmFzdC9pbWFnZXMvZGVjb2RlZC1zaXplLWV4Y2VlZHMtbWF4LWRlY29kZWQtc2l6ZS1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvZGVjb2RlZC1zaXplLWV4Y2Vl
ZHMtbWF4LWRlY29kZWQtc2l6ZS5odG1sOiBSZW1vdmVkLgorCiAyMDE0LTA0LTAxICBNeWxlcyBD
LiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgc3ZnL3RleHQvdGV4
dC1vdmVyZmxvdy1lbGxpcHNpcy1zdmdmb250LWtlcm5pbmctbGlnYXR1cmVzLmh0bWwgYW5kIHN2
Zy9jc3MvZm9udC1mYWNlLWNyYXNoLmh0bWwgZnJlcXVlbnRseSBhc3NlcnQgaW4gQ29tcGxleFRl
eHRDb250cm9sbGVyOjpvZmZzZXRGb3JQb3NpdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9pbWFnZXMvYmFkLXBuZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvYmFkLXBu
Zy5odG1sCmluZGV4IDJlMWJkMDRjNjM2NzY3MTk3YzEzZDA5MjhmYWI3NDI0MWRlYjA1Y2QuLmJl
NDE5YjE5ZGYxZTMxOWExMDI5MDRiOTMyN2VkOTA3NWUzYWUxMzEgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2JhZC1wbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lt
YWdlcy9iYWQtcG5nLmh0bWwKQEAgLTEsOCArMSwxNyBAQAogPGh0bWw+CiAgIDxoZWFkPgogICAg
IDxzY3JpcHQ+Ci0gICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgfQorCisgICAgICBmdW5jdGlvbiB0
ZXN0UGFzc2VkKCkKKyAgICAgIHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
c3VsdCIpLmlubmVyVGV4dCA9ICJQQVNTIjsKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgfQogICAgIDwvc2Ny
aXB0PgogCiAgICA8L2hlYWQ+CkBAIC0xMCw3ICsxOSw3IEBACiAgICAgIDwhLS0gVGhpcyBwcmV2
aW91c2x5IHRyaWVkIHRvIHJlY3Vyc2l2ZWx5IGRlY29kZSB0aGUgUE5HLCBsZWFkaW5nIHRvIGhl
YXAKICAgICAgICAgICBjb3JydXB0aW9uIHdoZW4gdHJ5aW5nIHRvIHVud2luZCB0aGUgc3RhY2sg
dGhyb3VnaCBhIG1lbWJlciBvZiBhCiAgICAgICAgICAgZGVzdHJveWVkIG9iamVjdC4gLS0+Ci0g
ICAgIDxpbWcgc3JjPSJyZXNvdXJjZXMvYmFkLXBuZy5wbmciPgotICAgICA8cD5QQVNTPC9wPgor
ICAgICA8aW1nIHNyYz0icmVzb3VyY2VzL2JhZC1wbmcucG5nIiBvbmVycm9yPSJ0ZXN0UGFzc2Vk
KCkiPgorICAgICA8cCBpZD0icmVzdWx0Ij5GQUlMPC9wPgogICAgPC9ib2R5PgogIDwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2RlY29kZWQtc2l6ZS1leGNlZWRz
LW1heC1kZWNvZGVkLXNpemUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
ZGVjb2RlZC1zaXplLWV4Y2VlZHMtbWF4LWRlY29kZWQtc2l6ZS1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwZTAyNjliNDA2NzM5Zjg1MjdkZjVjMTE0NjljMTFl
MDA5MzkyMmUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvZGVjb2RlZC1zaXplLWV4Y2VlZHMtbWF4LWRlY29kZWQt
c2l6ZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBACi1UZXN0cyB0
aGF0IGFuIGltYWdlIHdob3NlIHNpemUgZXhjZWVkcyB0aGUgbWF4aW11bSBkZWNvZGVkIHNpemUg
ZGlzcGF0Y2hlcyBhIERPTSBlcnJvciBldmVudC4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLVBBU1MgZXZlbnQudHlwZSBpcyAnZXJyb3InLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvaW1hZ2VzL2RlY29kZWQtc2l6ZS1leGNlZWRzLW1heC1kZWNvZGVkLXNpemUuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2RlY29kZWQtc2l6ZS1leGNlZWRzLW1heC1kZWNvZGVkLXNp
emUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjQ5NzY2NTA3M2U5ZTJlMWYz
ZTY3ZjFmM2M4MzUwNzcyNjJiNzkzZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9kZWNvZGVkLXNpemUtZXhjZWVk
cy1tYXgtZGVjb2RlZC1zaXplLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi08
IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci13aW5kb3cuanNUZXN0SXNB
c3luYyA9IHRydWU7Ci1pZiAod2luZG93LmludGVybmFscykKLSAgICB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLnNldE1heGltdW1EZWNvZGVkSW1hZ2VTaXplKDApOyAvLyBieXRlcwotPC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxpbWcgc3JjPSJyZXNvdXJjZXMvcmVkLTI1NngyNTYuanBn
IiB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiIgb25lcnJvcj0iY2hlY2tEaXNwYXRjaGVkRXZlbnQo
ZXZlbnQpIiBvbmxvYWQ9ImNoZWNrRGlzcGF0Y2hlZEV2ZW50KGV2ZW50KSI+Ci08c2NyaXB0Pgot
ZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYW4gaW1hZ2Ugd2hvc2Ugc2l6ZSBleGNlZWRzIHRoZSBt
YXhpbXVtIGRlY29kZWQgc2l6ZSBkaXNwYXRjaGVzIGEgRE9NIGVycm9yIGV2ZW50LiIpOwotZnVu
Y3Rpb24gY2hlY2tEaXNwYXRjaGVkRXZlbnQoZXZlbnQpCi17Ci0gICAgaWYgKGV2ZW50LnR5cGUg
PT09ICJlcnJvciIpCi0gICAgICAgIHRlc3RQYXNzZWQoImV2ZW50LnR5cGUgaXMgJ2Vycm9yJy4i
KTsKLSAgICBlbHNlCi0gICAgICAgIHRlc3RQYXNzZWQoImV2ZW50LnR5cGUgc2hvdWxkIGhhdmUg
YmVlbiAnZXJyb3InLiBXYXMgJyIgKyBldmVudC50eXBlICsgIicuIik7Ci0gICAgZmluaXNoSlNU
ZXN0KCk7Ci19Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4K
</data>
<flag name="review"
          id="252602"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>