<?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>108819</bug_id>
          
          <creation_ts>2013-02-04 06:09:07 -0800</creation_ts>
          <short_desc>[GTK] [Stable] Bad rendering of anidb.net in WebKit 1.10.2</short_desc>
          <delta_ts>2015-05-05 00:35:45 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Tomas Popela">tpopela</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>gustavo</cc>
    
    <cc>martin.sourada</cc>
    
    <cc>mrobinson</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>824299</commentid>
    <comment_count>0</comment_count>
    <who name="Tomas Popela">tpopela</who>
    <bug_when>2013-02-04 06:09:07 -0800</bug_when>
    <thetext>There is bug in rendering of http://anidb.net in WebKit 1.10.2. The pictures of it can be seen on https://bugzilla.redhat.com/show_bug.cgi?id=907432 . It&apos;s fixed in 1.11.4 release. Can the fix be backported to 1.10.3?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826234</commentid>
    <comment_count>1</comment_count>
    <who name="Martin Sourada">martin.sourada</who>
    <bug_when>2013-02-06 01:53:18 -0800</bug_when>
    <thetext>One of the other pages where I&apos;ve noticed it on is http://japanese.lingualift.com/ It happens on most of the buttons there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826240</commentid>
    <comment_count>2</comment_count>
      <attachid>186796</attachid>
    <who name="Martin Sourada">martin.sourada</who>
    <bug_when>2013-02-06 02:01:05 -0800</bug_when>
    <thetext>Created attachment 186796
Rendering problem on http://japanese.lingualift.com/

I&apos;ve prepared a really small (for convenience) image that illustrates it. It&apos;s actually composed of two cropped screen-shots. The top button is rendered incorrectly, the bottom is how it should like (and sometimes does, this rendering glitch is not present *always* and changes on hoover/scroll).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827346</commentid>
    <comment_count>3</comment_count>
      <attachid>187066</attachid>
    <who name="Tomas Popela">tpopela</who>
    <bug_when>2013-02-07 05:09:46 -0800</bug_when>
    <thetext>Created attachment 187066
Proposed patch

Git bisect get me to https://bugs.webkit.org/show_bug.cgi?id=101974 that fixes this bug. I&apos;ve adopted it for 1.10.2. I&apos;ve also included original tests (if they are not necessary there, I will remove them).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827538</commentid>
    <comment_count>4</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-07 08:22:39 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Created an attachment (id=187066) [details]
&gt; Proposed patch
&gt; 
&gt; Git bisect get me to https://bugs.webkit.org/show_bug.cgi?id=101974 that fixes this bug. I&apos;ve adopted it for 1.10.2. I&apos;ve also included original tests (if they are not necessary there, I will remove them).

Great work! I&apos;ve added it to the list of patches to merge here: https://trac.webkit.org/wiki/WebKitGTK/1.10.x</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049964</commentid>
    <comment_count>5</comment_count>
      <attachid>187066</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2014-11-19 15:56:47 -0800</bug_when>
    <thetext>Comment on attachment 187066
Proposed patch

Removing review flags.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>186796</attachid>
            <date>2013-02-06 02:01:05 -0800</date>
            <delta_ts>2013-02-06 02:01:05 -0800</delta_ts>
            <desc>Rendering problem on http://japanese.lingualift.com/</desc>
            <filename>webkitgtk-1.10-renderning-issue.png</filename>
            <type>image/png</type>
            <size>3040</size>
            <attacher name="Martin Sourada">martin.sourada</attacher>
            
              <data encoding="base64">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
EKVB0WBhzwAAAABJRU5ErkJggg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187066</attachid>
            <date>2013-02-07 05:09:46 -0800</date>
            <delta_ts>2014-11-19 15:56:47 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bugfix108819.patch</filename>
            <type>text/plain</type>
            <size>31257</size>
            <attacher name="Tomas Popela">tpopela</attacher>
            
              <data encoding="base64">RnJvbSBkMjRmMGZjZDA1NGU3YTQ5M2RhZWYxNjQzMzcyMjg4MWFkYTg5MmU2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUb21hcyBQb3BlbGEgPHRwb3BlbGFAcmVkaGF0LmNvbT4KRGF0
ZTogVGh1LCA3IEZlYiAyMDEzIDExOjUzOjU5ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gMjAxMy0w
Mi0wNyAgVG9tYXMgUG9wZWxhICA8dHBvcGVsYUByZWRoYXQuY29tPgoKICAgICAgICBbR1RLXSBb
U3RhYmxlXSBCYWQgcmVuZGVyaW5nIG9mIGFuaWRiLm5ldCBpbiBXZWJLaXQgMS4xMC4yCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODgxOQoKICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgQWRvcHRlZCBwYXRjaCBmcm9t
IEp1c3RpbiBOb3Zvc2FkIDxqdW5vdkBnb29nbGUuY29tPiAoMjAxMi0xMS0xNCkgLQogICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDE5NzQgdGhhdCBmaXhl
cyB0aGUgZ3JleQogICAgICAgIHRyYXBlem9pZHMgYXBwZWFyaW5nIHJhbmRvbWx5IG9uIGh0dHA6
Ly9hbmlkYi5uZXQuCgogICAgICAgIFRlc3Q6IGZhc3QvYm9yZGVycy9ib3JkZXItcmFkaXVzLXdp
ZGUtYm9yZGVyLTA1Lmh0bWwKCiAgICAgICAgKiBmYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13
aWRlLWJvcmRlci0wNS5odG1sOiBBZGRlZC4KICAgICAgICAqIGZhc3QvYm9yZGVycy9ib3JkZXIt
cmFkaXVzLXdpZGUtYm9yZGVyLTA1LWV4cGVjdGVkLnR4dDogQWRkZWQuCiAgICAgICAgKiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9ib3JkZXJzL2JvcmRlci1yYWRpdXMt
d2lkZS1ib3JkZXItMDUtZXhwZWN0ZWQucG5nOiBBZGRlZC4KICAgICAgICAqIExheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnM6IEFkZGVkIEV4cGVjdGF0aW9ucy4K
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3guY3BwOgogICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJCb3g6OmRldGVybWluZUJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSk6CiAgICAgICAgQWRkZWQg
c2VsZWN0aW9uIGNyaXRlcmlhIGZvciBCYWNrZ3JvdW5kT3ZlckJvcmRlcgogICAgICAgIChXZWJD
b3JlOjpSZW5kZXJCb3g6OnBhaW50Qm94RGVjb3JhdGlvbnMpOgogICAgICAgIEFkZGVkIGEgcHJl
bGltaW5hcnkgcGFpbnRCb3JkZXIgcGFzcyBmb3IgQmFja2dyb3VuZE92ZXJCb3JkZXIKICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyQm94OjpwYWludEJhY2tncm91bmQpOgogICAgICAgIEluc2V0dGlu
ZyB0aGUgYmFja2dyb3VuZCB0byB0byBpbm5lckJvcmRlciB3aGVuIGJsZWVkQXZvaWRhbmNlIGlz
CiAgICAgICAgQmFja2dyb3VuZE92ZXJCb3JkZXIuICBUaGlzIHdoeSBCYWNrZ3JvdW5kT3ZlckJv
cmRlciBvbmx5IHdvcmtzIGZvcgogICAgICAgIE9wYXF1ZSBzb2xpZCBlZGdlcy4KICAgICAgICAo
V2ViQ29yZSk6CiAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6YmFja2dyb3VuZElzU2luZ2xl
T3BhcXVlTGF5ZXIpOgogICAgICAgIFV0aWxpdHkgbWV0aG9kIHVzZSBieSBkZXRlcm1pbmVCYWNr
Z3JvdW5kQmxlZWRBdm9pZGFuY2UgdG8gdGVzdCB0aGUKICAgICAgICBiYWNrZ3JvdW5kJ3MgZWxp
Z2liaWxpdHkgZm9yIEJhY2tncm91bmRPdmVyQm9yZGVyIGJsZWVkIGF2b2lkYW5jZQogICAgICAg
IHN0cmF0ZWd5LiAgVGhlIHJlYXNvbiB0aGUgYmFja2dyb3VuZCBtdXN0IGJlIGEgc2luZ2xlIGxh
eWVyIGlzIHRvIGF2b2lkCiAgICAgICAgY29sb3IgYmxlZWRpbmcgZnJvbSBsYXllciBjb21wb3Np
dGluZyBhbG9uZyBhbnRpLWFsaWFzZWQgZWRnZXMKICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
b3guaDoKICAgICAgICAoUmVuZGVyQm94KToKICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3hN
b2RlbE9iamVjdC5jcHA6CiAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0Ojpn
ZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QpOgogICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2Rl
bE9iamVjdDo6Ym9yZGVySW5uZXJSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZSk6CiAgICAg
ICAgQWRkZWQgc3VwcG9ydCBmb3IgQmFja2dyb3VuZE92ZXJCb3JkZXIgYnkgYXBwbHlpbmcgYSBv
bmUgcGl4ZWwgaW5zZXQuCiAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0Ojpi
YWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKToKICAgICAgICBT
ZXQgdGhlIGJhY2tncm91bmQgcmVjdCB0byB0aGUgaW5uZXIgYm9yZGVyIGZvciBCYWNrZ3JvdW5k
T3ZlckJvcmRlcgogICAgICAgIChXZWJDb3JlKToKICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94
TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVyRXh0ZW5kZWQpOgogICAgICAgIEFkZGVkIHN1cHBv
cnQgZm9yIEJhY2tncm91bmRPdmVyQm9yZGVyIGJ5IHVzaW5nCiAgICAgICAgYmFja2dyb3VuZFJv
dW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZQogICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRCb3JkZXJTaWRlcyk6Ci0tLQogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTYgKysrKysKIC4uLi9ib3Jk
ZXItcmFkaXVzLXdpZGUtYm9yZGVyLTA1LWV4cGVjdGVkLnR4dCAgICAgIHwgICA2ICsrCiAuLi4v
ZmFzdC9ib3JkZXJzL2JvcmRlci1yYWRpdXMtd2lkZS1ib3JkZXItMDUuaHRtbCB8ICAxOSArKysr
KysKIC4uLi9ib3JkZXItcmFkaXVzLXdpZGUtYm9yZGVyLTA1LWV4cGVjdGVkLnBuZyAgICAgIHwg
QmluIDAgLT4gNTYwMSBieXRlcwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4
cGVjdGF0aW9ucyAgICAgfCAgIDcgKysrCiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICA1MCArKysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCAgICAgICAgICAgICB8ICAyOSArKysrKysrKy0KIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaCAgICAgICAgICAgICAgIHwgICAyICst
CiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwICB8ICA2
NSArKysrKysrKysrKysrLS0tLS0tLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJC
b3hNb2RlbE9iamVjdC5oICAgIHwgIDEzICsrKy0tCiAxMCBmaWxlcyBjaGFuZ2VkLCAxNzUgaW5z
ZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDkwNDhhYTkuLjYxMmM4OWYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMi0wNyAgVG9tYXMgUG9wZWxhICA8dHBvcGVsYUBy
ZWRoYXQuY29tPgorCisgICAgICAgIFtHVEtdIFtTdGFibGVdIEJhZCByZW5kZXJpbmcgb2YgYW5p
ZGIubmV0IGluIFdlYktpdCAxLjEwLjIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwODgxOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkb3B0ZWQgcGF0Y2ggZnJvbSBKdXN0aW4gTm92b3NhZCA8anVub3ZA
Z29vZ2xlLmNvbT4gKDIwMTItMTEtMTQpIC0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwMTk3NCB0aGF0IGZpeGVzIHRoZSBncmV5CisgICAgICAgIHRy
YXBlem9pZHMgYXBwZWFyaW5nIHJhbmRvbWx5IG9uIGh0dHA6Ly9hbmlkYi5uZXQuCisKKyAgICAg
ICAgKiBmYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13aWRlLWJvcmRlci0wNS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13aWRlLWJvcmRlci0wNS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtLXdpbi9mYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13aWRlLWJvcmRlci0wNS1leHBlY3Rl
ZC5wbmc6IEFkZGVkLgorICAgICAgICAqIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rl
c3RFeHBlY3RhdGlvbnM6IEFkZGVkIEV4cGVjdGF0aW9ucy4KKwogMjAxMi0xMS0wNiAgQWFyb24g
Q29sd2VsbCAgPGFjb2x3ZWxsQGNocm9taXVtLm9yZz4KIAogICAgICAgICBIZWFwLWJ1ZmZlci1v
dmVyZmxvdyBpbiBXZWJDb3JlOjpUZXh0VHJhY2tDdWVMaXN0OjphZGQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvYm9yZGVycy9ib3JkZXItcmFkaXVzLXdpZGUtYm9yZGVyLTA1LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYm9yZGVycy9ib3JkZXItcmFkaXVzLXdpZGUtYm9y
ZGVyLTA1LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4x
MDQzMzk0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ib3JkZXJzL2JvcmRl
ci1yYWRpdXMtd2lkZS1ib3JkZXItMDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorbGF5
ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0
ICgwLDApIHNpemUgODAweDYwMAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDIwKSBzaXpl
IDc4NHg1NjAKKyAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgyMCwwKSBzaXplIDIwMHgyMDAg
W2JnY29sb3I9IzAwODAwMF0gW2JvcmRlcjogKDEwcHggc29saWQgI0ZGMDAwMCkgbm9uZSAoMTBw
eCBzb2xpZCAjRkYwMDAwKSAoMzZweCBzb2xpZCAjMDAwMEZGKV0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvYm9yZGVycy9ib3JkZXItcmFkaXVzLXdpZGUtYm9yZGVyLTA1Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13aWRlLWJvcmRlci0wNS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmN2E0OTUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2JvcmRlcnMvYm9yZGVyLXJhZGl1cy13aWRlLWJvcmRl
ci0wNS5odG1sCkBAIC0wLDAgKzEsMTkgQEAKKzxzdHlsZT4KKyAgICBkaXYjdCB7CisgICAgICAg
IHdpZHRoOiAyMDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgYm9yZGVyOiAy
MHB4IHNvbGlkIHJnYmEoMjU1LDAsMCwxKTsKKyAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7
CisgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7CisgICAgICAgIGJvcmRlci1i
b3R0b20tbGVmdC1yYWRpdXM6IDBweDsKKyAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEo
MCwwLDI1NSwxKTsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47CisgICAgICAgIGJv
eC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgICAgIG1hcmdpbjogMjBweDsKKyAgICAgICAgYm9y
ZGVyLXRvcC13aWR0aDogMTBweDsKKyAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMTBweDsK
KyAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDM2cHg7CisgICAgICAgIGJvcmRlci1yaWdodC13
aWR0aDogMHB4OworICAgIH0KKzwvc3R5bGU+Cis8ZGl2IGlkPSJ0Ij48L2Rpdj4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2JvcmRlcnMvYm9yZGVy
LXJhZGl1cy13aWRlLWJvcmRlci0wNS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS13aW4vZmFzdC9ib3JkZXJzL2JvcmRlci1yYWRpdXMtd2lkZS1ib3JkZXItMDUt
ZXhwZWN0ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjMjAzZjcK
QmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1
bS13aW4vZmFzdC9ib3JkZXJzL2JvcmRlci1yYWRpdXMtd2lkZS1ib3JkZXItMDUtZXhwZWN0ZWQu
cG5nIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggMjJmNzJhNi4uYjA2ZGJiNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zCkBAIC0yODEwLDYgKzI4MTAsMTMgQEAgQlVHV0s5
NDEzMCA6IGZhc3QvaHRtbC9tYXJxdWVlLWFsdGVybmF0ZS5odG1sID0gUEFTUyBURVhUCiAKIEJV
R1dLNzczMTQgV0lOIE1BQyA6IGZhc3QvZXZlbnRzL3RvdWNoL3NlbmQtb25jYW5jZWwtZXZlbnQu
aHRtbCA9IFBBU1MgVEVYVAogCisjIE5lZWRzIHJlYmFzZWxpbmluZyBhZnRlciBmaXggZm9yIGJ1
ZyAxMDE5NzQKK0JVR1dLMTAxOTc0IFsgTWFjIExpbnV4IF0gZmFzdC9ib3JkZXJzL2JvcmRlci1y
YWRpdXMtd2lkZS1ib3JkZXItMDUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgUGFzcyBdCitCVUdX
SzEwMTk3NCBmYXN0L2Zvcm1zL3ZhbGlkYXRpb24tbWVzc2FnZS1hcHBlYXJhbmNlLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIFBhc3MgXQorQlVHV0sxMDE5NzQgc3ZnL2N1c3RvbS9zdmctZm9udHMt
aW4taHRtbC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBQYXNzIF0KK0JVR1dLMTAxOTc0IGZhc3Qv
Ym9yZGVycy9ib3JkZXItcmFkaXVzLXdpZGUtYm9yZGVyLTAxLmh0bWwgWyBJbWFnZU9ubHlGYWls
dXJlIFBhc3MgXQorQlVHV0sxMDE5NzQgZmFzdC9ib3JkZXJzL2JvcmRlclJhZGl1c0luc2V0MDEu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgUGFzcyBdCisKIC8vIENSQVNIIGNvbWVzIGZyb20gQlVH
Q1IxMjE0NDIKIEJVR1dLNzczOTcgTElOVVggOiBwbHVnaW5zL2NyYXNoLXJlc3RvcmluZy1wbHVn
aW4tcGFnZS1mcm9tLXBhZ2UtY2FjaGUuaHRtbCA9IFRJTUVPVVQgQ1JBU0gKIEJVR1dLNzczOTcg
V0lOIE1BQyA6IHBsdWdpbnMvY3Jhc2gtcmVzdG9yaW5nLXBsdWdpbi1wYWdlLWZyb20tcGFnZS1j
YWNoZS5odG1sID0gVElNRU9VVApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDdhYjRjZTguLmMwZDc4YTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw1MyBAQAorMjAxMy0wMi0wNyAgVG9tYXMgUG9wZWxhICA8dHBvcGVs
YUByZWRoYXQuY29tPgorCisgICAgICAgIFtHVEtdIFtTdGFibGVdIEJhZCByZW5kZXJpbmcgb2Yg
YW5pZGIubmV0IGluIFdlYktpdCAxLjEwLjIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwODgxOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkb3B0ZWQgcGF0Y2ggZnJvbSBKdXN0aW4gTm92b3NhZCA8anVu
b3ZAZ29vZ2xlLmNvbT4gKDIwMTItMTEtMTQpIC0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMTk3NCB0aGF0IGZpeGVzIHRoZSBncmV5CisgICAgICAg
IHRyYXBlem9pZHMgYXBwZWFyaW5nIHJhbmRvbWx5IG9uIGh0dHA6Ly9hbmlkYi5uZXQuCisKKyAg
ICAgICAgVGVzdDogZmFzdC9ib3JkZXJzL2JvcmRlci1yYWRpdXMtd2lkZS1ib3JkZXItMDUuaHRt
bAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJCb3g6OmRldGVybWluZUJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSk6CisgICAgICAg
IEFkZGVkIHNlbGVjdGlvbiBjcml0ZXJpYSBmb3IgQmFja2dyb3VuZE92ZXJCb3JkZXIKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJveDo6cGFpbnRCb3hEZWNvcmF0aW9ucyk6CisgICAgICAgIEFk
ZGVkIGEgcHJlbGltaW5hcnkgcGFpbnRCb3JkZXIgcGFzcyBmb3IgQmFja2dyb3VuZE92ZXJCb3Jk
ZXIKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6cGFpbnRCYWNrZ3JvdW5kKToKKyAgICAg
ICAgSW5zZXR0aW5nIHRoZSBiYWNrZ3JvdW5kIHRvIHRvIGlubmVyQm9yZGVyIHdoZW4gYmxlZWRB
dm9pZGFuY2UgaXMKKyAgICAgICAgQmFja2dyb3VuZE92ZXJCb3JkZXIuICBUaGlzIHdoeSBCYWNr
Z3JvdW5kT3ZlckJvcmRlciBvbmx5IHdvcmtzIGZvcgorICAgICAgICBPcGFxdWUgc29saWQgZWRn
ZXMuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6YmFj
a2dyb3VuZElzU2luZ2xlT3BhcXVlTGF5ZXIpOgorICAgICAgICBVdGlsaXR5IG1ldGhvZCB1c2Ug
YnkgZGV0ZXJtaW5lQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlIHRvIHRlc3QgdGhlCisgICAgICAg
IGJhY2tncm91bmQncyBlbGlnaWJpbGl0eSBmb3IgQmFja2dyb3VuZE92ZXJCb3JkZXIgYmxlZWQg
YXZvaWRhbmNlCisgICAgICAgIHN0cmF0ZWd5LiAgVGhlIHJlYXNvbiB0aGUgYmFja2dyb3VuZCBt
dXN0IGJlIGEgc2luZ2xlIGxheWVyIGlzIHRvIGF2b2lkCisgICAgICAgIGNvbG9yIGJsZWVkaW5n
IGZyb20gbGF5ZXIgY29tcG9zaXRpbmcgYWxvbmcgYW50aS1hbGlhc2VkIGVkZ2VzCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckJveC5oOgorICAgICAgICAoUmVuZGVyQm94KToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVkUmVjdCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6Ym9yZGVySW5uZXJSZWN0QWRqdXN0ZWRG
b3JCbGVlZEF2b2lkYW5jZSk6CisgICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIEJhY2tncm91bmRP
dmVyQm9yZGVyIGJ5IGFwcGx5aW5nIGEgb25lIHBpeGVsIGluc2V0LgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OmJhY2tncm91bmRSb3VuZGVkUmVjdEFkanVzdGVkRm9y
QmxlZWRBdm9pZGFuY2UpOgorICAgICAgICBTZXQgdGhlIGJhY2tncm91bmQgcmVjdCB0byB0aGUg
aW5uZXIgYm9yZGVyIGZvciBCYWNrZ3JvdW5kT3ZlckJvcmRlcgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRGaWxsTGF5ZXJF
eHRlbmRlZCk6CisgICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIEJhY2tncm91bmRPdmVyQm9yZGVy
IGJ5IHVzaW5nCisgICAgICAgIGJhY2tncm91bmRSb3VuZGVkUmVjdEFkanVzdGVkRm9yQmxlZWRB
dm9pZGFuY2UKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJv
cmRlclNpZGVzKToKKyAgICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgQmFja2dyb3VuZE92ZXJCb3Jk
ZXIgYnkgYXBwbHlpbmcgcGVyLXNpZGUgaW5zZXQKKyAgICAgICAgYWRqdXN0bWVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRUcmFuc2x1Y2VudEJvcmRl
clNpZGVzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJv
cmRlcik6CisgICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIEJhY2tncm91bmRPdmVyQm9yZGVyIGJ5
IHVzaW5nIGFuIGFkanVzdGVkIGlubmVyCisgICAgICAgIGJvcmRlciwgYnV0IG5vdCBpZiBzaWRl
cyBhcmUgcGFpbnRlZCBpbmRpdmlkdWFsbHkuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJv
eE1vZGVsT2JqZWN0Lmg6CisgICAgICAgIChSZW5kZXJCb3hNb2RlbE9iamVjdCk6CisKIDIwMTIt
MTAtMTYgIFphbiBEb2JlcnNlayAgPHphbmRvYmVyc2VrQGdtYWlsLmNvbT4KIAogICAgICAgICBb
R1N0cmVhbWVyXSBHc3RCdWZmZXIgcmVmIHJhY2UgaW4gV2ViS2l0V2ViQXVkaW9TcmNMb29wCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IGEwMDU2ZTAuLjY4ZTA2YzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC04MTUsMTIgKzgxNSwx
NSBAQCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgUmVuZGVyQm94OjpkZXRlcm1pbmVCYWNrZ3Jv
dW5kQmxlZWRBdm9pZGFuY2UoR3JhcGhpY3NDbwogICAgIEZsb2F0U2l6ZSBjb250ZXh0U2NhbGlu
ZyhzdGF0aWNfY2FzdDxmbG9hdD4oY3RtLnhTY2FsZSgpKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KGN0
bS55U2NhbGUoKSkpOwogICAgIGlmIChib3JkZXJPYnNjdXJlc0JhY2tncm91bmRFZGdlKGNvbnRl
eHRTY2FsaW5nKSkKICAgICAgICAgcmV0dXJuIEJhY2tncm91bmRCbGVlZFNocmlua0JhY2tncm91
bmQ7Ci0gICAgCisKICAgICAvLyBGSVhNRTogdGhlcmUgaXMgb25lIG1vcmUgc3RyYXRlZ3kgcG9z
c2libGUsIGZvciBvcGFxdWUgYmFja2dyb3VuZHMgYW5kCiAgICAgLy8gdHJhbnNsdWNlbnQgYm9y
ZGVycy4gSW4gdGhhdCBjYXNlIHdlIGNvdWxkIGF2b2lkIHVzaW5nIGEgdHJhbnNwYXJlbmN5IGxh
eWVyLAogICAgIC8vIGFuZCBwYWludCB0aGUgYm9yZGVyIGZpcnN0LCBhbmQgdGhlbiBwYWludCB0
aGUgYmFja2dyb3VuZCBjbGlwcGVkIHRvIHRoZQogICAgIC8vIGluc2lkZSBvZiB0aGUgYm9yZGVy
LgogCisgICAgaWYgKCFzdHlsZS0+aGFzQXBwZWFyYW5jZSgpICYmIGJvcmRlck9ic2N1cmVzQmFj
a2dyb3VuZCgpICYmIGJhY2tncm91bmRJc1NpbmdsZU9wYXF1ZUxheWVyKCkpCisgICAgICAgIHJl
dHVybiBCYWNrZ3JvdW5kQmxlZWRCYWNrZ3JvdW5kT3ZlckJvcmRlcjsKKwogICAgIHJldHVybiBC
YWNrZ3JvdW5kQmxlZWRVc2VUcmFuc3BhcmVuY3lMYXllcjsKIH0KIApAQCAtODU5LDYgKzg2Miw5
IEBAIHZvaWQgUmVuZGVyQm94OjpwYWludEJveERlY29yYXRpb25zKFBhaW50SW5mbyYgcGFpbnRJ
bmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpCiAgICAgSW50UmVjdCBzbmFwcGVkUGFpbnRSZWN0
KHBpeGVsU25hcHBlZEludFJlY3QocGFpbnRSZWN0KSk7CiAgICAgYm9vbCB0aGVtZVBhaW50ZWQg
PSBzdHlsZSgpLT5oYXNBcHBlYXJhbmNlKCkgJiYgIXRoZW1lKCktPnBhaW50KHRoaXMsIHBhaW50
SW5mbywgc25hcHBlZFBhaW50UmVjdCk7CiAgICAgaWYgKCF0aGVtZVBhaW50ZWQpIHsKKyAgICAg
ICAgaWYgKGJsZWVkQXZvaWRhbmNlID09IEJhY2tncm91bmRCbGVlZEJhY2tncm91bmRPdmVyQm9y
ZGVyKQorICAgICAgICAgICAgcGFpbnRCb3JkZXIocGFpbnRJbmZvLCBwYWludFJlY3QsIHN0eWxl
KCksIGJsZWVkQXZvaWRhbmNlKTsKKwogICAgICAgICBwYWludEJhY2tncm91bmQocGFpbnRJbmZv
LCBwYWludFJlY3QsIGJsZWVkQXZvaWRhbmNlKTsKIAogICAgICAgICBpZiAoc3R5bGUoKS0+aGFz
QXBwZWFyYW5jZSgpKQpAQCAtODY3LDcgKzg3Myw3IEBAIHZvaWQgUmVuZGVyQm94OjpwYWludEJv
eERlY29yYXRpb25zKFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFp
CiAgICAgcGFpbnRCb3hTaGFkb3cocGFpbnRJbmZvLCBwYWludFJlY3QsIHN0eWxlKCksIEluc2V0
KTsKIAogICAgIC8vIFRoZSB0aGVtZSB3aWxsIHRlbGwgdXMgd2hldGhlciBvciBub3Qgd2Ugc2hv
dWxkIGFsc28gcGFpbnQgdGhlIENTUyBib3JkZXIuCi0gICAgaWYgKCghc3R5bGUoKS0+aGFzQXBw
ZWFyYW5jZSgpIHx8ICghdGhlbWVQYWludGVkICYmIHRoZW1lKCktPnBhaW50Qm9yZGVyT25seSh0
aGlzLCBwYWludEluZm8sIHNuYXBwZWRQYWludFJlY3QpKSkgJiYgc3R5bGUoKS0+aGFzQm9yZGVy
KCkpCisgICAgaWYgKGJsZWVkQXZvaWRhbmNlICE9IEJhY2tncm91bmRCbGVlZEJhY2tncm91bmRP
dmVyQm9yZGVyICYmICghc3R5bGUoKS0+aGFzQXBwZWFyYW5jZSgpIHx8ICghdGhlbWVQYWludGVk
ICYmIHRoZW1lKCktPnBhaW50Qm9yZGVyT25seSh0aGlzLCBwYWludEluZm8sIHNuYXBwZWRQYWlu
dFJlY3QpKSkgJiYgc3R5bGUoKS0+aGFzQm9yZGVyKCkpCiAgICAgICAgIHBhaW50Qm9yZGVyKHBh
aW50SW5mbywgcGFpbnRSZWN0LCBzdHlsZSgpLCBibGVlZEF2b2lkYW5jZSk7CiAKICAgICBpZiAo
YmxlZWRBdm9pZGFuY2UgPT0gQmFja2dyb3VuZEJsZWVkVXNlVHJhbnNwYXJlbmN5TGF5ZXIpCkBA
IC04ODgsNiArODk0LDI1IEBAIHZvaWQgUmVuZGVyQm94OjpwYWludEJhY2tncm91bmQoY29uc3Qg
UGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFJlY3QmIHBhCiAgICAgfQogfQogCiti
b29sIFJlbmRlckJveDo6YmFja2dyb3VuZElzU2luZ2xlT3BhcXVlTGF5ZXIoKSBjb25zdAorewor
ICAgIGNvbnN0IEZpbGxMYXllciogZmlsbExheWVyID0gc3R5bGUoKS0+YmFja2dyb3VuZExheWVy
cygpOworICAgIGlmICghZmlsbExheWVyIHx8IGZpbGxMYXllci0+bmV4dCgpIHx8IGZpbGxMYXll
ci0+Y2xpcCgpICE9IEJvcmRlckZpbGxCb3ggfHwgZmlsbExheWVyLT5jb21wb3NpdGUoKSAhPSBD
b21wb3NpdGVTb3VyY2VPdmVyKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBDbGlw
cGVkIHdpdGggbG9jYWwgc2Nyb2xsaW5nCisgICAgaWYgKGhhc092ZXJmbG93Q2xpcCgpICYmIGZp
bGxMYXllci0+YXR0YWNobWVudCgpID09IExvY2FsQmFja2dyb3VuZEF0dGFjaG1lbnQpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIENvbG9yIGJnQ29sb3IgPSBzdHlsZSgpLT52aXNpdGVk
RGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpOworICAgIGlmIChiZ0Nv
bG9yLmlzVmFsaWQoKSAmJiBiZ0NvbG9yLmFscGhhKCkgPT0gMjU1KQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKworICAgIC8vIEZJWE1FOiByZXR1cm4gdHJ1ZSBpZiBhIGJhY2tncm91bmQgaW1hZ2Ug
aXMgcHJlc2VudCBhbmQgaXMgb3BhcXVlCisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQg
UmVuZGVyQm94OjpwYWludE1hc2soUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBv
aW50JiBwYWludE9mZnNldCkKIHsKICAgICBpZiAoIXBhaW50SW5mby5zaG91bGRQYWludFdpdGhp
blJvb3QodGhpcykgfHwgc3R5bGUoKS0+dmlzaWJpbGl0eSgpICE9IFZJU0lCTEUgfHwgcGFpbnRJ
bmZvLnBoYXNlICE9IFBhaW50UGhhc2VNYXNrIHx8IHBhaW50SW5mby5jb250ZXh0LT5wYWludGlu
Z0Rpc2FibGVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKaW5kZXggMDBiMDVm
NC4uNmQwMmU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJv
eC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaApAQCAtNTE0LDcg
KzUxNCw3IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHBhaW50TWFza0ltYWdlcyhjb25zdCBQYWlu
dEluZm8mLCBjb25zdCBMYXlvdXRSZWN0Jik7CiAKICAgICBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFu
Y2UgZGV0ZXJtaW5lQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlKEdyYXBoaWNzQ29udGV4dCopIGNv
bnN0OwotCisgICAgYm9vbCBiYWNrZ3JvdW5kSXNTaW5nbGVPcGFxdWVMYXllcigpIGNvbnN0Owog
I2lmIFBMQVRGT1JNKE1BQykKICAgICB2b2lkIHBhaW50Q3VzdG9tSGlnaGxpZ2h0KGNvbnN0IExh
eW91dFBvaW50JiwgY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBib29sIGJlaGluZFRleHQpOwog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2Jq
ZWN0LmNwcAppbmRleCBjYWYzMjdiLi42MWM3NjhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTY3MSw3ICs2NzEsNyBAQCBM
YXlvdXRVbml0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb21wdXRlZENTU1BhZGRpbmdFbmQoKSBj
b25zdAogfQogCiBSb3VuZGVkUmVjdCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6Z2V0QmFja2dyb3Vu
ZFJvdW5kZWRSZWN0KGNvbnN0IExheW91dFJlY3QmIGJvcmRlclJlY3QsIElubGluZUZsb3dCb3gq
IGJveCwgTGF5b3V0VW5pdCBpbmxpbmVCb3hXaWR0aCwgTGF5b3V0VW5pdCBpbmxpbmVCb3hIZWln
aHQsCi0gICAgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBib29sIGluY2x1ZGVMb2dpY2Fs
UmlnaHRFZGdlKQorICAgIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgYm9vbCBpbmNsdWRl
TG9naWNhbFJpZ2h0RWRnZSkgY29uc3QKIHsKICAgICBSZW5kZXJWaWV3KiByZW5kZXJWaWV3ID0g
dmlldygpOwogICAgIFJvdW5kZWRSZWN0IGJvcmRlciA9IHN0eWxlKCktPmdldFJvdW5kZWRCb3Jk
ZXJGb3IoYm9yZGVyUmVjdCwgcmVuZGVyVmlldywgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5j
bHVkZUxvZ2ljYWxSaWdodEVkZ2UpOwpAQCAtNjgzLDE3ICs2ODMsMzEgQEAgUm91bmRlZFJlY3Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVkUmVjdChjb25zdCBMYXlv
dXRSZWN0JiBib3IKICAgICByZXR1cm4gYm9yZGVyOwogfQogCi1zdGF0aWMgTGF5b3V0UmVjdCBi
YWNrZ3JvdW5kUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoR3JhcGhpY3NDb250ZXh0KiBj
b250ZXh0LCBjb25zdCBMYXlvdXRSZWN0JiBib3JkZXJSZWN0LCBCYWNrZ3JvdW5kQmxlZWRBdm9p
ZGFuY2UgYmxlZWRBdm9pZGFuY2UpCitzdGF0aWMgTGF5b3V0UmVjdCBzaHJpbmtSZWN0QnlPbmVQ
aXhlbChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IExheW91dFJlY3QmIHJlY3QpCiB7
Ci0gICAgaWYgKGJsZWVkQXZvaWRhbmNlICE9IEJhY2tncm91bmRCbGVlZFNocmlua0JhY2tncm91
bmQpCi0gICAgICAgIHJldHVybiBib3JkZXJSZWN0OwotCi0gICAgLy8gV2Ugc2hyaW5rIHRoZSBy
ZWN0YW5nbGUgYnkgb25lIHBpeGVsIG9uIGVhY2ggc2lkZSBiZWNhdXNlIHRoZSBibGVlZCBpcyBv
bmUgcGl4ZWwgbWF4aW11bS4KKyAgICBMYXlvdXRSZWN0IHNocnVua1JlY3QgPSByZWN0OwogICAg
IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsKLSAgICBMYXlv
dXRSZWN0IGFkanVzdGVkUmVjdCA9IGJvcmRlclJlY3Q7Ci0gICAgYWRqdXN0ZWRSZWN0LmluZmxh
dGVYKC1zdGF0aWNfY2FzdDxMYXlvdXRVbml0PihjZWlsKDEgLyB0cmFuc2Zvcm0ueFNjYWxlKCkp
KSk7Ci0gICAgYWRqdXN0ZWRSZWN0LmluZmxhdGVZKC1zdGF0aWNfY2FzdDxMYXlvdXRVbml0Pihj
ZWlsKDEgLyB0cmFuc2Zvcm0ueVNjYWxlKCkpKSk7Ci0gICAgcmV0dXJuIGFkanVzdGVkUmVjdDsK
KyAgICBzaHJ1bmtSZWN0LmluZmxhdGVYKC1zdGF0aWNfY2FzdDxMYXlvdXRVbml0PihjZWlsKDEg
LyB0cmFuc2Zvcm0ueFNjYWxlKCkpKSk7CisgICAgc2hydW5rUmVjdC5pbmZsYXRlWSgtc3RhdGlj
X2Nhc3Q8TGF5b3V0VW5pdD4oY2VpbCgxIC8gdHJhbnNmb3JtLnlTY2FsZSgpKSkpOworICAgIHJl
dHVybiBzaHJ1bmtSZWN0OworfQorCitMYXlvdXRSZWN0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpi
b3JkZXJJbm5lclJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKEdyYXBoaWNzQ29udGV4dCog
Y29udGV4dCwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNl
IGJsZWVkQXZvaWRhbmNlKSBjb25zdAoreworICAgIC8vIFdlIHNocmluayB0aGUgcmVjdGFuZ2xl
IGJ5IG9uZSBwaXhlbCBvbiBlYWNoIHNpZGUgdG8gbWFrZSBpdCBmdWxseSBvdmVybGFwIHRoZSBh
bnRpLWFsaWFzZWQgYmFja2dyb3VuZCBib3JkZXIKKyAgIHJldHVybiAoYmxlZWRBdm9pZGFuY2Ug
PT0gQmFja2dyb3VuZEJsZWVkQmFja2dyb3VuZE92ZXJCb3JkZXIpID8gc2hyaW5rUmVjdEJ5T25l
UGl4ZWwoY29udGV4dCwgcmVjdCkgOiByZWN0OworfQorCitSb3VuZGVkUmVjdCBSZW5kZXJCb3hN
b2RlbE9iamVjdDo6YmFja2dyb3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5j
ZShHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IExheW91dFJlY3QmIGJvcmRlclJlY3Qs
IEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBibGVlZEF2b2lkYW5jZSwgSW5saW5lRmxvd0JveCog
Ym94LCBjb25zdCBMYXlvdXRTaXplJiBib3hTaXplLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVk
Z2UsIGJvb2wgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0Cit7CisgICAgaWYgKGJsZWVk
QXZvaWRhbmNlID09IEJhY2tncm91bmRCbGVlZFNocmlua0JhY2tncm91bmQpIHsKKyAgICAgICAg
Ly8gV2Ugc2hyaW5rIHRoZSByZWN0YW5nbGUgYnkgb25lIHBpeGVsIG9uIGVhY2ggc2lkZSBiZWNh
dXNlIHRoZSBibGVlZCBpcyBvbmUgcGl4ZWwgbWF4aW11bS4KKyAgICAgICAgcmV0dXJuIGdldEJh
Y2tncm91bmRSb3VuZGVkUmVjdChzaHJpbmtSZWN0QnlPbmVQaXhlbChjb250ZXh0LCBib3JkZXJS
ZWN0KSwgYm94LCBib3hTaXplLndpZHRoKCksIGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMb2dp
Y2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKKyAgICB9CisgICAgaWYgKGJs
ZWVkQXZvaWRhbmNlID09IEJhY2tncm91bmRCbGVlZEJhY2tncm91bmRPdmVyQm9yZGVyKQorICAg
ICAgICByZXR1cm4gc3R5bGUoKS0+Z2V0Um91bmRlZElubmVyQm9yZGVyRm9yKGJvcmRlclJlY3Qs
IGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKKworICAg
IHJldHVybiBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoYm9yZGVyUmVjdCwgYm94LCBib3hTaXpl
LndpZHRoKCksIGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1
ZGVMb2dpY2FsUmlnaHRFZGdlKTsKIH0KIAogc3RhdGljIHZvaWQgYXBwbHlCb3hTaGFkb3dGb3JC
YWNrZ3JvdW5kKEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgUmVuZGVyU3R5bGUqIHN0eWxlKQpA
QCAtNzI3LDcgKzc0MSw3IEBAIHZvaWQgUmVuZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExh
eWVyRXh0ZW5kZWQoY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvCiAgICAgQ29sb3IgYmdD
b2xvciA9IGNvbG9yOwogICAgIFN0eWxlSW1hZ2UqIGJnSW1hZ2UgPSBiZ0xheWVyLT5pbWFnZSgp
OwogICAgIGJvb2wgc2hvdWxkUGFpbnRCYWNrZ3JvdW5kSW1hZ2UgPSBiZ0ltYWdlICYmIGJnSW1h
Z2UtPmNhblJlbmRlcih0aGlzLCBzdHlsZSgpLT5lZmZlY3RpdmVab29tKCkpOwotICAgIAorCiAg
ICAgYm9vbCBmb3JjZUJhY2tncm91bmRUb1doaXRlID0gZmFsc2U7CiAgICAgaWYgKGRvY3VtZW50
KCktPnByaW50aW5nKCkpIHsKICAgICAgICAgaWYgKHN0eWxlKCktPnByaW50Q29sb3JBZGp1c3Qo
KSA9PSBQcmludENvbG9yQWRqdXN0RWNvbm9teSkKQEAgLTc2NSw3ICs3NzksNyBAQCB2b2lkIFJl
bmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZpbGxMYXllckV4dGVuZGVkKGNvbnN0IFBhaW50SW5m
byYgcGFpbnRJbmZvLCBjbwogICAgICAgICAgICAgYXBwbHlCb3hTaGFkb3dGb3JCYWNrZ3JvdW5k
KGNvbnRleHQsIHN0eWxlKCkpOwogCiAgICAgICAgIGlmIChoYXNSb3VuZGVkQm9yZGVyICYmIGJs
ZWVkQXZvaWRhbmNlICE9IEJhY2tncm91bmRCbGVlZFVzZVRyYW5zcGFyZW5jeUxheWVyKSB7Ci0g
ICAgICAgICAgICBSb3VuZGVkUmVjdCBib3JkZXIgPSBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3Qo
YmFja2dyb3VuZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKGNvbnRleHQsIHJlY3QsIGJs
ZWVkQXZvaWRhbmNlKSwgYm94LCBib3hTaXplLndpZHRoKCksIGJveFNpemUuaGVpZ2h0KCksIGlu
Y2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0RWRnZSk7CisgICAgICAgICAgICBSb3VuZGVkUmVj
dCBib3JkZXIgPSBiYWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNl
KGNvbnRleHQsIHJlY3QsIGJsZWVkQXZvaWRhbmNlLCBib3gsIGJveFNpemUsIGluY2x1ZGVMZWZ0
RWRnZSwgaW5jbHVkZVJpZ2h0RWRnZSk7CiAgICAgICAgICAgICBjb250ZXh0LT5maWxsUm91bmRl
ZFJlY3QoYm9yZGVyLCBiZ0NvbG9yLCBzdHlsZSgpLT5jb2xvclNwYWNlKCkpOwogICAgICAgICB9
IGVsc2UKICAgICAgICAgICAgIGNvbnRleHQtPmZpbGxSZWN0KHBpeGVsU25hcHBlZEludFJlY3Qo
cmVjdCksIGJnQ29sb3IsIHN0eWxlKCktPmNvbG9yU3BhY2UoKSk7CkBAIC03NzYsNyArNzkwLDgg
QEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25z
dCBQYWludEluZm8mIHBhaW50SW5mbywgY28KICAgICBib29sIGNsaXBUb0JvcmRlclJhZGl1cyA9
IGhhc1JvdW5kZWRCb3JkZXIgJiYgYmxlZWRBdm9pZGFuY2UgIT0gQmFja2dyb3VuZEJsZWVkVXNl
VHJhbnNwYXJlbmN5TGF5ZXI7CiAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBjbGlwVG9C
b3JkZXJTdGF0ZVNhdmVyKCpjb250ZXh0LCBjbGlwVG9Cb3JkZXJSYWRpdXMpOwogICAgIGlmIChj
bGlwVG9Cb3JkZXJSYWRpdXMpIHsKLSAgICAgICAgUm91bmRlZFJlY3QgYm9yZGVyID0gZ2V0QmFj
a2dyb3VuZFJvdW5kZWRSZWN0KGJhY2tncm91bmRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5j
ZShjb250ZXh0LCByZWN0LCBibGVlZEF2b2lkYW5jZSksIGJveCwgYm94U2l6ZS53aWR0aCgpLCBi
b3hTaXplLmhlaWdodCgpLCBpbmNsdWRlTGVmdEVkZ2UsIGluY2x1ZGVSaWdodEVkZ2UpOworLy8g
ICAgICAgIFJvdW5kZWRSZWN0IGJvcmRlciA9IGdldEJhY2tncm91bmRSb3VuZGVkUmVjdChiYWNr
Z3JvdW5kUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29udGV4dCwgcmVjdCwgYmxlZWRB
dm9pZGFuY2UpLCBib3gsIGJveFNpemUud2lkdGgoKSwgYm94U2l6ZS5oZWlnaHQoKSwgaW5jbHVk
ZUxlZnRFZGdlLCBpbmNsdWRlUmlnaHRFZGdlKTsKKyAgICAgICAgUm91bmRlZFJlY3QgYm9yZGVy
ID0gaXNCb3JkZXJGaWxsID8gYmFja2dyb3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2
b2lkYW5jZShjb250ZXh0LCByZWN0LCBibGVlZEF2b2lkYW5jZSwgYm94LCBib3hTaXplLCBpbmNs
dWRlTGVmdEVkZ2UsIGluY2x1ZGVSaWdodEVkZ2UpIDogZ2V0QmFja2dyb3VuZFJvdW5kZWRSZWN0
KHJlY3QsIGJveCwgYm94U2l6ZS53aWR0aCgpLCBib3hTaXplLmhlaWdodCgpLCBpbmNsdWRlTGVm
dEVkZ2UsIGluY2x1ZGVSaWdodEVkZ2UpOwogICAgICAgICBjb250ZXh0LT5hZGRSb3VuZGVkUmVj
dENsaXAoYm9yZGVyKTsKICAgICB9CiAgICAgCkBAIC0xNzA2LDcgKzE3MjEsNyBAQCBzdGF0aWMg
SW50UmVjdCBjYWxjdWxhdGVTaWRlUmVjdChjb25zdCBSb3VuZGVkUmVjdCYgb3V0ZXJCb3JkZXIs
IGNvbnN0IEJvcmRlckVkZwogfQogCiB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJv
cmRlclNpZGVzKEdyYXBoaWNzQ29udGV4dCogZ3JhcGhpY3NDb250ZXh0LCBjb25zdCBSZW5kZXJT
dHlsZSogc3R5bGUsIGNvbnN0IFJvdW5kZWRSZWN0JiBvdXRlckJvcmRlciwgY29uc3QgUm91bmRl
ZFJlY3QmIGlubmVyQm9yZGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBCb3JkZXJFZGdlIGVkZ2VzW10sIEJvcmRlckVkZ2VGbGFncyBlZGdlU2V0
LCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgYmxlZWRBdm9pZGFuY2UsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEludFBvaW50JiBpbm5lckJvcmRl
ckFkanVzdG1lbnQsIGNvbnN0IEJvcmRlckVkZ2UgZWRnZXNbXSwgQm9yZGVyRWRnZUZsYWdzIGVk
Z2VTZXQsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBibGVlZEF2b2lkYW5jZSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBpbmNsdWRlTG9naWNhbExl
ZnRFZGdlLCBib29sIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlLCBib29sIGFudGlhbGlhcywgY29u
c3QgQ29sb3IqIG92ZXJyaWRlQ29sb3IpCiB7CiAgICAgYm9vbCByZW5kZXJSYWRpaSA9IG91dGVy
Qm9yZGVyLmlzUm91bmRlZCgpOwpAQCAtMTcxNyw3ICsxNzMyLDcgQEAgdm9pZCBSZW5kZXJCb3hN
b2RlbE9iamVjdDo6cGFpbnRCb3JkZXJTaWRlcyhHcmFwaGljc0NvbnRleHQqIGdyYXBoaWNzQ29u
dGV4dCwgY28KICAgICAKICAgICBpZiAoZWRnZXNbQlNUb3BdLnNob3VsZFJlbmRlcigpICYmIGlu
Y2x1ZGVzRWRnZShlZGdlU2V0LCBCU1RvcCkpIHsKICAgICAgICAgSW50UmVjdCBzaWRlUmVjdCA9
IG91dGVyQm9yZGVyLnJlY3QoKTsKLSAgICAgICAgc2lkZVJlY3Quc2V0SGVpZ2h0KGVkZ2VzW0JT
VG9wXS53aWR0aCk7CisgICAgICAgIHNpZGVSZWN0LnNldEhlaWdodChlZGdlc1tCU1RvcF0ud2lk
dGggKyBpbm5lckJvcmRlckFkanVzdG1lbnQueSgpKTsKIAogICAgICAgICBib29sIHVzZVBhdGgg
PSByZW5kZXJSYWRpaSAmJiAoYm9yZGVyU3R5bGVIYXNJbm5lckRldGFpbChlZGdlc1tCU1RvcF0u
c3R5bGUpIHx8IGJvcmRlcldpbGxBcmNJbm5lckVkZ2UoaW5uZXJCb3JkZXIucmFkaWkoKS50b3BM
ZWZ0KCksIGlubmVyQm9yZGVyLnJhZGlpKCkudG9wUmlnaHQoKSkpOwogICAgICAgICBwYWludE9u
ZUJvcmRlclNpZGUoZ3JhcGhpY3NDb250ZXh0LCBzdHlsZSwgb3V0ZXJCb3JkZXIsIGlubmVyQm9y
ZGVyLCBzaWRlUmVjdCwgQlNUb3AsIEJTTGVmdCwgQlNSaWdodCwgZWRnZXMsIHVzZVBhdGggPyAm
cm91bmRlZFBhdGggOiAwLCBibGVlZEF2b2lkYW5jZSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwg
aW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UsIGFudGlhbGlhcywgb3ZlcnJpZGVDb2xvcik7CkBAIC0x
NzI1LDcgKzE3NDAsNyBAQCB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJvcmRlclNp
ZGVzKEdyYXBoaWNzQ29udGV4dCogZ3JhcGhpY3NDb250ZXh0LCBjbwogCiAgICAgaWYgKGVkZ2Vz
W0JTQm90dG9tXS5zaG91bGRSZW5kZXIoKSAmJiBpbmNsdWRlc0VkZ2UoZWRnZVNldCwgQlNCb3R0
b20pKSB7CiAgICAgICAgIEludFJlY3Qgc2lkZVJlY3QgPSBvdXRlckJvcmRlci5yZWN0KCk7Ci0g
ICAgICAgIHNpZGVSZWN0LnNoaWZ0WUVkZ2VUbyhzaWRlUmVjdC5tYXhZKCkgLSBlZGdlc1tCU0Jv
dHRvbV0ud2lkdGgpOworICAgICAgICBzaWRlUmVjdC5zaGlmdFlFZGdlVG8oc2lkZVJlY3QubWF4
WSgpIC0gZWRnZXNbQlNCb3R0b21dLndpZHRoIC0gaW5uZXJCb3JkZXJBZGp1c3RtZW50LnkoKSk7
CiAKICAgICAgICAgYm9vbCB1c2VQYXRoID0gcmVuZGVyUmFkaWkgJiYgKGJvcmRlclN0eWxlSGFz
SW5uZXJEZXRhaWwoZWRnZXNbQlNCb3R0b21dLnN0eWxlKSB8fCBib3JkZXJXaWxsQXJjSW5uZXJF
ZGdlKGlubmVyQm9yZGVyLnJhZGlpKCkuYm90dG9tTGVmdCgpLCBpbm5lckJvcmRlci5yYWRpaSgp
LmJvdHRvbVJpZ2h0KCkpKTsKICAgICAgICAgcGFpbnRPbmVCb3JkZXJTaWRlKGdyYXBoaWNzQ29u
dGV4dCwgc3R5bGUsIG91dGVyQm9yZGVyLCBpbm5lckJvcmRlciwgc2lkZVJlY3QsIEJTQm90dG9t
LCBCU0xlZnQsIEJTUmlnaHQsIGVkZ2VzLCB1c2VQYXRoID8gJnJvdW5kZWRQYXRoIDogMCwgYmxl
ZWRBdm9pZGFuY2UsIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRF
ZGdlLCBhbnRpYWxpYXMsIG92ZXJyaWRlQ29sb3IpOwpAQCAtMTczMyw3ICsxNzQ4LDcgQEAgdm9p
ZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRCb3JkZXJTaWRlcyhHcmFwaGljc0NvbnRleHQq
IGdyYXBoaWNzQ29udGV4dCwgY28KIAogICAgIGlmIChlZGdlc1tCU0xlZnRdLnNob3VsZFJlbmRl
cigpICYmIGluY2x1ZGVzRWRnZShlZGdlU2V0LCBCU0xlZnQpKSB7CiAgICAgICAgIEludFJlY3Qg
c2lkZVJlY3QgPSBvdXRlckJvcmRlci5yZWN0KCk7Ci0gICAgICAgIHNpZGVSZWN0LnNldFdpZHRo
KGVkZ2VzW0JTTGVmdF0ud2lkdGgpOworICAgICAgICBzaWRlUmVjdC5zZXRXaWR0aChlZGdlc1tC
U0xlZnRdLndpZHRoICsgaW5uZXJCb3JkZXJBZGp1c3RtZW50LngoKSk7CiAKICAgICAgICAgYm9v
bCB1c2VQYXRoID0gcmVuZGVyUmFkaWkgJiYgKGJvcmRlclN0eWxlSGFzSW5uZXJEZXRhaWwoZWRn
ZXNbQlNMZWZ0XS5zdHlsZSkgfHwgYm9yZGVyV2lsbEFyY0lubmVyRWRnZShpbm5lckJvcmRlci5y
YWRpaSgpLmJvdHRvbUxlZnQoKSwgaW5uZXJCb3JkZXIucmFkaWkoKS50b3BMZWZ0KCkpKTsKICAg
ICAgICAgcGFpbnRPbmVCb3JkZXJTaWRlKGdyYXBoaWNzQ29udGV4dCwgc3R5bGUsIG91dGVyQm9y
ZGVyLCBpbm5lckJvcmRlciwgc2lkZVJlY3QsIEJTTGVmdCwgQlNUb3AsIEJTQm90dG9tLCBlZGdl
cywgdXNlUGF0aCA/ICZyb3VuZGVkUGF0aCA6IDAsIGJsZWVkQXZvaWRhbmNlLCBpbmNsdWRlTG9n
aWNhbExlZnRFZGdlLCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSwgYW50aWFsaWFzLCBvdmVycmlk
ZUNvbG9yKTsKQEAgLTE3NDEsMTQgKzE3NTYsMTQgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVj
dDo6cGFpbnRCb3JkZXJTaWRlcyhHcmFwaGljc0NvbnRleHQqIGdyYXBoaWNzQ29udGV4dCwgY28K
IAogICAgIGlmIChlZGdlc1tCU1JpZ2h0XS5zaG91bGRSZW5kZXIoKSAmJiBpbmNsdWRlc0VkZ2Uo
ZWRnZVNldCwgQlNSaWdodCkpIHsKICAgICAgICAgSW50UmVjdCBzaWRlUmVjdCA9IG91dGVyQm9y
ZGVyLnJlY3QoKTsKLSAgICAgICAgc2lkZVJlY3Quc2hpZnRYRWRnZVRvKHNpZGVSZWN0Lm1heFgo
KSAtIGVkZ2VzW0JTUmlnaHRdLndpZHRoKTsKKyAgICAgICAgc2lkZVJlY3Quc2hpZnRYRWRnZVRv
KHNpZGVSZWN0Lm1heFgoKSAtIGVkZ2VzW0JTUmlnaHRdLndpZHRoIC0gaW5uZXJCb3JkZXJBZGp1
c3RtZW50LngoKSk7CiAKICAgICAgICAgYm9vbCB1c2VQYXRoID0gcmVuZGVyUmFkaWkgJiYgKGJv
cmRlclN0eWxlSGFzSW5uZXJEZXRhaWwoZWRnZXNbQlNSaWdodF0uc3R5bGUpIHx8IGJvcmRlcldp
bGxBcmNJbm5lckVkZ2UoaW5uZXJCb3JkZXIucmFkaWkoKS5ib3R0b21SaWdodCgpLCBpbm5lckJv
cmRlci5yYWRpaSgpLnRvcFJpZ2h0KCkpKTsKICAgICAgICAgcGFpbnRPbmVCb3JkZXJTaWRlKGdy
YXBoaWNzQ29udGV4dCwgc3R5bGUsIG91dGVyQm9yZGVyLCBpbm5lckJvcmRlciwgc2lkZVJlY3Qs
IEJTUmlnaHQsIEJTVG9wLCBCU0JvdHRvbSwgZWRnZXMsIHVzZVBhdGggPyAmcm91bmRlZFBhdGgg
OiAwLCBibGVlZEF2b2lkYW5jZSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2lj
YWxSaWdodEVkZ2UsIGFudGlhbGlhcywgb3ZlcnJpZGVDb2xvcik7CiAgICAgfQogfQogCi12b2lk
IFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludFRyYW5zbHVjZW50Qm9yZGVyU2lkZXMoR3JhcGhp
Y3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgY29u
c3QgUm91bmRlZFJlY3QmIG91dGVyQm9yZGVyLCBjb25zdCBSb3VuZGVkUmVjdCYgaW5uZXJCb3Jk
ZXIsCit2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludFRyYW5zbHVjZW50Qm9yZGVyU2lk
ZXMoR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQsIGNvbnN0IFJlbmRlclN0eWxlKiBz
dHlsZSwgY29uc3QgUm91bmRlZFJlY3QmIG91dGVyQm9yZGVyLCBjb25zdCBSb3VuZGVkUmVjdCYg
aW5uZXJCb3JkZXIsIGNvbnN0IEludFBvaW50JiBpbm5lckJvcmRlckFkanVzdG1lbnQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
Qm9yZGVyRWRnZSBlZGdlc1tdLCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgYmxlZWRBdm9pZGFu
Y2UsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0
RWRnZSwgYm9vbCBhbnRpYWxpYXMpCiB7CiAgICAgQm9yZGVyRWRnZUZsYWdzIGVkZ2VzVG9EcmF3
ID0gQWxsQm9yZGVyRWRnZXM7CkBAIC0xNzc5LDcgKzE3OTQsNyBAQCB2b2lkIFJlbmRlckJveE1v
ZGVsT2JqZWN0OjpwYWludFRyYW5zbHVjZW50Qm9yZGVyU2lkZXMoR3JhcGhpY3NDb250ZXh0KiBn
cmFwaGljcwogICAgICAgICAgICAgY29tbW9uQ29sb3IgPSBDb2xvcihjb21tb25Db2xvci5yZWQo
KSwgY29tbW9uQ29sb3IuZ3JlZW4oKSwgY29tbW9uQ29sb3IuYmx1ZSgpKTsKICAgICAgICAgfQog
Ci0gICAgICAgIHBhaW50Qm9yZGVyU2lkZXMoZ3JhcGhpY3NDb250ZXh0LCBzdHlsZSwgb3V0ZXJC
b3JkZXIsIGlubmVyQm9yZGVyLCBlZGdlcywgY29tbW9uQ29sb3JFZGdlU2V0LCBibGVlZEF2b2lk
YW5jZSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UsIGFu
dGlhbGlhcywgJmNvbW1vbkNvbG9yKTsKKyAgICAgICAgcGFpbnRCb3JkZXJTaWRlcyhncmFwaGlj
c0NvbnRleHQsIHN0eWxlLCBvdXRlckJvcmRlciwgaW5uZXJCb3JkZXIsIGlubmVyQm9yZGVyQWRq
dXN0bWVudCwgZWRnZXMsIGNvbW1vbkNvbG9yRWRnZVNldCwgYmxlZWRBdm9pZGFuY2UsIGluY2x1
ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlLCBhbnRpYWxpYXMsICZj
b21tb25Db2xvcik7CiAgICAgICAgICAgICAKICAgICAgICAgaWYgKHVzZVRyYW5zcGFyZW5jeUxh
eWVyKQogICAgICAgICAgICAgZ3JhcGhpY3NDb250ZXh0LT5lbmRUcmFuc3BhcmVuY3lMYXllcigp
OwpAQCAtMTgwMiw3ICsxODE3LDcgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRC
b3JkZXIoY29uc3QgUGFpbnRJbmZvJiBpbmZvLCBjb25zdCBMYXlvdXRSZWN0JgogICAgIEJvcmRl
ckVkZ2UgZWRnZXNbNF07CiAgICAgZ2V0Qm9yZGVyRWRnZUluZm8oZWRnZXMsIHN0eWxlLCBpbmNs
dWRlTG9naWNhbExlZnRFZGdlLCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSk7CiAgICAgUm91bmRl
ZFJlY3Qgb3V0ZXJCb3JkZXIgPSBzdHlsZS0+Z2V0Um91bmRlZEJvcmRlckZvcihyZWN0LCB2aWV3
KCksIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKLSAg
ICBSb3VuZGVkUmVjdCBpbm5lckJvcmRlciA9IHN0eWxlLT5nZXRSb3VuZGVkSW5uZXJCb3JkZXJG
b3IocmVjdCwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2Up
OworICAgIFJvdW5kZWRSZWN0IGlubmVyQm9yZGVyID0gc3R5bGUtPmdldFJvdW5kZWRJbm5lckJv
cmRlckZvcihib3JkZXJJbm5lclJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKGdyYXBoaWNz
Q29udGV4dCwgcmVjdCwgYmxlZWRBdm9pZGFuY2UpLCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBp
bmNsdWRlTG9naWNhbFJpZ2h0RWRnZSk7CiAKICAgICBib29sIGhhdmVBbHBoYUNvbG9yID0gZmFs
c2U7CiAgICAgYm9vbCBoYXZlQWxsU29saWRFZGdlcyA9IHRydWU7CkBAIC0xOTM4LDEwICsxOTUz
LDEyIEBAIHZvaWQgUmVuZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50Qm9yZGVyKGNvbnN0IFBhaW50
SW5mbyYgaW5mbywgY29uc3QgTGF5b3V0UmVjdCYKIAogICAgIC8vIElmIG9ubHkgb25lIGVkZ2Ug
dmlzaWJsZSBhbnRpYWxpYXNpbmcgZG9lc24ndCBjcmVhdGUgc2VhbXMKICAgICBib29sIGFudGlh
bGlhcyA9IHNob3VsZEFudGlhbGlhc0xpbmVzKGdyYXBoaWNzQ29udGV4dCkgfHwgbnVtRWRnZXNW
aXNpYmxlID09IDE7CisgICAgUm91bmRlZFJlY3QgdW5hZGp1c3RlZElubmVyQm9yZGVyID0gKGJs
ZWVkQXZvaWRhbmNlID09IEJhY2tncm91bmRCbGVlZEJhY2tncm91bmRPdmVyQm9yZGVyKSA/IHN0
eWxlLT5nZXRSb3VuZGVkSW5uZXJCb3JkZXJGb3IocmVjdCwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRn
ZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIDogaW5uZXJCb3JkZXI7CisgICAgSW50UG9pbnQg
aW5uZXJCb3JkZXJBZGp1c3RtZW50KGlubmVyQm9yZGVyLnJlY3QoKS54KCkgLSB1bmFkanVzdGVk
SW5uZXJCb3JkZXIucmVjdCgpLngoKSwgaW5uZXJCb3JkZXIucmVjdCgpLnkoKSAtIHVuYWRqdXN0
ZWRJbm5lckJvcmRlci5yZWN0KCkueSgpKTsKICAgICBpZiAoaGF2ZUFscGhhQ29sb3IpCi0gICAg
ICAgIHBhaW50VHJhbnNsdWNlbnRCb3JkZXJTaWRlcyhncmFwaGljc0NvbnRleHQsIHN0eWxlLCBv
dXRlckJvcmRlciwgaW5uZXJCb3JkZXIsIGVkZ2VzLCBibGVlZEF2b2lkYW5jZSwgaW5jbHVkZUxv
Z2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UsIGFudGlhbGlhcyk7Ci0gICAg
ZWxzZQotICAgICAgICBwYWludEJvcmRlclNpZGVzKGdyYXBoaWNzQ29udGV4dCwgc3R5bGUsIG91
dGVyQm9yZGVyLCBpbm5lckJvcmRlciwgZWRnZXMsIEFsbEJvcmRlckVkZ2VzLCBibGVlZEF2b2lk
YW5jZSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UsIGFu
dGlhbGlhcyk7CisgICAgICAgIHBhaW50VHJhbnNsdWNlbnRCb3JkZXJTaWRlcyhncmFwaGljc0Nv
bnRleHQsIHN0eWxlLCBvdXRlckJvcmRlciwgdW5hZGp1c3RlZElubmVyQm9yZGVyLCBpbm5lckJv
cmRlckFkanVzdG1lbnQsIGVkZ2VzLCBibGVlZEF2b2lkYW5jZSwgaW5jbHVkZUxvZ2ljYWxMZWZ0
RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UsIGFudGlhbGlhcyk7CisgICAgIGVsc2UKKyAg
ICAgICAgcGFpbnRCb3JkZXJTaWRlcyhncmFwaGljc0NvbnRleHQsIHN0eWxlLCBvdXRlckJvcmRl
ciwgdW5hZGp1c3RlZElubmVyQm9yZGVyLCBpbm5lckJvcmRlckFkanVzdG1lbnQsIGVkZ2VzLCBB
bGxCb3JkZXJFZGdlcywgYmxlZWRBdm9pZGFuY2UsIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGlu
Y2x1ZGVMb2dpY2FsUmlnaHRFZGdlLCBhbnRpYWxpYXMpOwogfQogCiB2b2lkIFJlbmRlckJveE1v
ZGVsT2JqZWN0OjpkcmF3Qm94U2lkZUZyb21QYXRoKEdyYXBoaWNzQ29udGV4dCogZ3JhcGhpY3ND
b250ZXh0LCBjb25zdCBMYXlvdXRSZWN0JiBib3JkZXJSZWN0LCBjb25zdCBQYXRoJiBib3JkZXJQ
YXRoLCBjb25zdCBCb3JkZXJFZGdlIGVkZ2VzW10sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCmluZGV4IDA2N2Y2MDQuLmJlZWVmODMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCkBAIC0z
Nyw3ICszNyw4IEBAIHR5cGVkZWYgdW5zaWduZWQgQm9yZGVyRWRnZUZsYWdzOwogZW51bSBCYWNr
Z3JvdW5kQmxlZWRBdm9pZGFuY2UgewogICAgIEJhY2tncm91bmRCbGVlZE5vbmUsCiAgICAgQmFj
a2dyb3VuZEJsZWVkU2hyaW5rQmFja2dyb3VuZCwKLSAgICBCYWNrZ3JvdW5kQmxlZWRVc2VUcmFu
c3BhcmVuY3lMYXllcgorICAgIEJhY2tncm91bmRCbGVlZFVzZVRyYW5zcGFyZW5jeUxheWVyLAor
ICAgIEJhY2tncm91bmRCbGVlZEJhY2tncm91bmRPdmVyQm9yZGVyCiB9OwogCiBlbnVtIENvbnRl
bnRDaGFuZ2VUeXBlIHsKQEAgLTIzMiw2ICsyMzMsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBn
ZXRCb3JkZXJFZGdlSW5mbyhjbGFzcyBCb3JkZXJFZGdlW10sIGNvbnN0IFJlbmRlclN0eWxlKiwg
Ym9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlID0gdHJ1ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJp
Z2h0RWRnZSA9IHRydWUpIGNvbnN0OwogICAgIGJvb2wgYm9yZGVyT2JzY3VyZXNCYWNrZ3JvdW5k
RWRnZShjb25zdCBGbG9hdFNpemUmIGNvbnRleHRTY2FsZSkgY29uc3Q7CiAgICAgYm9vbCBib3Jk
ZXJPYnNjdXJlc0JhY2tncm91bmQoKSBjb25zdDsKKyAgICBSb3VuZGVkUmVjdCBiYWNrZ3JvdW5k
Um91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKEdyYXBoaWNzQ29udGV4dCosIGNv
bnN0IExheW91dFJlY3QmLCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UsIElubGluZUZsb3dCb3gq
LCBjb25zdCBMYXlvdXRTaXplJiwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBib29sIGlu
Y2x1ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKKyAgICBMYXlvdXRSZWN0IGJvcmRlcklubmVy
UmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgTGF5
b3V0UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSkgY29uc3Q7CiAKICAgICBib29sIHNo
b3VsZFBhaW50QXRMb3dRdWFsaXR5KEdyYXBoaWNzQ29udGV4dCosIEltYWdlKiwgY29uc3Qgdm9p
ZCosIGNvbnN0IExheW91dFNpemUmKTsKIApAQCAtMjgwLDcgKzI4Myw3IEBAIHByaXZhdGU6CiAg
ICAgSW50U2l6ZSBjYWxjdWxhdGVJbWFnZUludHJpbnNpY0RpbWVuc2lvbnMoU3R5bGVJbWFnZSos
IGNvbnN0IEludFNpemUmIHNjYWxlZFBvc2l0aW9uaW5nQXJlYVNpemUsIFNjYWxlQnlFZmZlY3Rp
dmVab29tT3JOb3QpIGNvbnN0OwogCiAgICAgUm91bmRlZFJlY3QgZ2V0QmFja2dyb3VuZFJvdW5k
ZWRSZWN0KGNvbnN0IExheW91dFJlY3QmLCBJbmxpbmVGbG93Qm94KiwgTGF5b3V0VW5pdCBpbmxp
bmVCb3hXaWR0aCwgTGF5b3V0VW5pdCBpbmxpbmVCb3hIZWlnaHQsCi0gICAgICAgIGJvb2wgaW5j
bHVkZUxvZ2ljYWxMZWZ0RWRnZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSk7CisgICAg
ICAgIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0
RWRnZSkgY29uc3Q7CiAKICAgICB2b2lkIGNsaXBCb3JkZXJTaWRlUG9seWdvbihHcmFwaGljc0Nv
bnRleHQqLCBjb25zdCBSb3VuZGVkUmVjdCYgb3V0ZXJCb3JkZXIsIGNvbnN0IFJvdW5kZWRSZWN0
JiBpbm5lckJvcmRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCb3hTaWRlLCBi
b29sIGZpcnN0RWRnZU1hdGNoZXMsIGJvb2wgc2Vjb25kRWRnZU1hdGNoZXMpOwpAQCAtMjg4LDEx
ICsyOTEsMTEgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBhaW50T25lQm9yZGVyU2lkZShHcmFwaGlj
c0NvbnRleHQqLCBjb25zdCBSZW5kZXJTdHlsZSosIGNvbnN0IFJvdW5kZWRSZWN0JiBvdXRlckJv
cmRlciwgY29uc3QgUm91bmRlZFJlY3QmIGlubmVyQm9yZGVyLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBJbnRSZWN0JiBzaWRlUmVjdCwgQm94U2lkZSwgQm94U2lkZSBh
ZGphY2VudFNpZGUxLCBCb3hTaWRlIGFkamFjZW50U2lkZTIsIGNvbnN0IGNsYXNzIEJvcmRlckVk
Z2VbXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUGF0aCosIEJhY2tn
cm91bmRCbGVlZEF2b2lkYW5jZSwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBib29sIGlu
Y2x1ZGVMb2dpY2FsUmlnaHRFZGdlLCBib29sIGFudGlhbGlhcywgY29uc3QgQ29sb3IqIG92ZXJy
aWRlQ29sb3IgPSAwKTsKLSAgICB2b2lkIHBhaW50VHJhbnNsdWNlbnRCb3JkZXJTaWRlcyhHcmFw
aGljc0NvbnRleHQqLCBjb25zdCBSZW5kZXJTdHlsZSosIGNvbnN0IFJvdW5kZWRSZWN0JiBvdXRl
ckJvcmRlciwgY29uc3QgUm91bmRlZFJlY3QmIGlubmVyQm9yZGVyLAorICAgIHZvaWQgcGFpbnRU
cmFuc2x1Y2VudEJvcmRlclNpZGVzKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IFJlbmRlclN0eWxl
KiwgY29uc3QgUm91bmRlZFJlY3QmIG91dGVyQm9yZGVyLCBjb25zdCBSb3VuZGVkUmVjdCYgaW5u
ZXJCb3JkZXIsIGNvbnN0IEludFBvaW50JiBpbm5lckJvcmRlckFkanVzdG1lbnQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzIEJvcmRlckVkZ2VbXSwgQmFja2dyb3VuZEJs
ZWVkQXZvaWRhbmNlLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJvb2wgaW5jbHVkZUxv
Z2ljYWxSaWdodEVkZ2UsIGJvb2wgYW50aWFsaWFzID0gZmFsc2UpOwogICAgIHZvaWQgcGFpbnRC
b3JkZXJTaWRlcyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBSZW5kZXJTdHlsZSosIGNvbnN0IFJv
dW5kZWRSZWN0JiBvdXRlckJvcmRlciwgY29uc3QgUm91bmRlZFJlY3QmIGlubmVyQm9yZGVyLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjbGFzcyBCb3JkZXJFZGdlW10sIEJvcmRl
ckVkZ2VGbGFncywgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJvb2wgaW5jbHVkZUxvZ2ljYWxS
aWdodEVkZ2UsIGJvb2wgYW50aWFsaWFzID0gZmFsc2UsIGNvbnN0IENvbG9yKiBvdmVycmlkZUNv
bG9yID0gMCk7CisgICAgICAgIGNvbnN0IEludFBvaW50JiBpbm5lckJvcmRlckFkanVzdG1lbnQs
IGNvbnN0IGNsYXNzIEJvcmRlckVkZ2VbXSwgQm9yZGVyRWRnZUZsYWdzLCBCYWNrZ3JvdW5kQmxl
ZWRBdm9pZGFuY2UsCisgICAgICAgIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgYm9vbCBp
bmNsdWRlTG9naWNhbFJpZ2h0RWRnZSwgYm9vbCBhbnRpYWxpYXMgPSBmYWxzZSwgY29uc3QgQ29s
b3IqIG92ZXJyaWRlQ29sb3IgPSAwKTsKICAgICB2b2lkIGRyYXdCb3hTaWRlRnJvbVBhdGgoR3Jh
cGhpY3NDb250ZXh0KiwgY29uc3QgTGF5b3V0UmVjdCYsIGNvbnN0IFBhdGgmLCBjb25zdCBjbGFz
cyBCb3JkZXJFZGdlW10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgdGhpY2tu
ZXNzLCBmbG9hdCBkcmF3VGhpY2tuZXNzLCBCb3hTaWRlLCBjb25zdCBSZW5kZXJTdHlsZSosIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbG9yLCBFQm9yZGVyU3R5bGUsIEJhY2tncm91
bmRCbGVlZEF2b2lkYW5jZSwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBib29sIGluY2x1
ZGVMb2dpY2FsUmlnaHRFZGdlKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>