<?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>139030</bug_id>
          
          <creation_ts>2014-11-24 12:21:10 -0800</creation_ts>
          <short_desc>Remove Qt cruft related to tap higlighting</short_desc>
          <delta_ts>2014-11-24 23:38:54 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Éva Balázsfalvi">evab.u-szeged</reporter>
          <assigned_to name="Éva Balázsfalvi">evab.u-szeged</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1050873</commentid>
    <comment_count>0</comment_count>
    <who name="Éva Balázsfalvi">evab.u-szeged</who>
    <bug_when>2014-11-24 12:21:10 -0800</bug_when>
    <thetext>GestureTapHighlighter and TapHighlightController were used by only Qt. These files were 
added to the cmake build system, but they aren&apos;t used at all. But they caused many
maintenance cost for nothing. Let&apos;s remove them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050874</commentid>
    <comment_count>1</comment_count>
      <attachid>242167</attachid>
    <who name="Éva Balázsfalvi">evab.u-szeged</who>
    <bug_when>2014-11-24 12:36:45 -0800</bug_when>
    <thetext>Created attachment 242167
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050907</commentid>
    <comment_count>2</comment_count>
      <attachid>242167</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-11-24 16:01:18 -0800</bug_when>
    <thetext>Comment on attachment 242167
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050951</commentid>
    <comment_count>3</comment_count>
      <attachid>242167</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-24 23:38:52 -0800</bug_when>
    <thetext>Comment on attachment 242167
Patch

Clearing flags on attachment: 242167

Committed r176536: &lt;http://trac.webkit.org/changeset/176536&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050952</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-24 23:38:54 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242167</attachid>
            <date>2014-11-24 12:36:45 -0800</date>
            <delta_ts>2014-11-24 23:38:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139030-20141124213705.patch</filename>
            <type>text/plain</type>
            <size>21243</size>
            <attacher name="Éva Balázsfalvi">evab.u-szeged</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NTIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjI1OTM1NmQ2OGQxZTBi
NTU5ODM4YzNlZjRmZmZmMWRjZGQ1NjI2Yy4uZDhjMDI3NzhkOGI4MjVhMTI2MTFmMDFmMWFiOTM3
MTk5Nzk2YTlkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE0LTExLTI0ICBFdmEg
QmFsYXpzZmFsdmkgIDxldmFiLnUtc3plZ2VkQHBhcnRuZXIuc2Ftc3VuZy5jb20+CisKKyAgICAg
ICAgUmVtb3ZlIFF0IGNydWZ0IHJlbGF0ZWQgdG8gdGFwIGhpZ2xpZ2h0aW5nCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzkwMzAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgbmVlZGVk
LgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogcGFnZS9HZXN0dXJlVGFw
SGlnaGxpZ2h0ZXIuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIHBhZ2UvR2VzdHVyZVRhcEhpZ2hs
aWdodGVyLmg6IFJlbW92ZWQuCisKIDIwMTQtMTEtMjQgIEFudHRpIEtvaXZpc3RvICA8YW50dGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1bnVzZWQgU3R5bGUgc3RydWN0IGZyb20gU2lt
cGxlTGluZUxheW91dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA2ZjI4MzJmOWVhNDE5Zjg2NTBkYWYyYzY2
ZDE1NmU4M2I0MzZkZjM4Li4xNzU0ZTg0NDE4YjQwMWIzMTBjNWEwZmEwYWQzZGE4OWNmMjE1NTYy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMTEtMjQgIEV2YSBCYWxhenNmYWx2
aSAgPGV2YWIudS1zemVnZWRAcGFydG5lci5zYW1zdW5nLmNvbT4KKworICAgICAgICBSZW1vdmUg
UXQgY3J1ZnQgcmVsYXRlZCB0byB0YXAgaGlnbGlnaHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTAzMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1RhcEhpZ2hsaWdodENvbnRyb2xsZXIuY3BwOiBSZW1vdmVkLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9UYXBIaWdobGlnaHRDb250cm9sbGVyLmg6IFJl
bW92ZWQuCisKIDIwMTQtMTEtMjQgIEFsYmVydG8gR2FyY2lhICA8YmVydG9AaWdhbGlhLmNvbT4K
IAogICAgICAgICBXZWJraXQyIGRvZXNudCBidWlsZCBvbiBwb3dlcnBjIDMyIGJpdHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggZWYyMjk0MjZjZmJhMzFjZjE1ZjE3YThjZmNhODUzZWNlNDFjYTVk
MC4uNjQ2MzUxMmQzMTgzZWFkOTY4ZDliNDA5ODlkMjgyZDBjNTFjMDgzMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTE5MDEsNyArMTkwMSw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBw
YWdlL0ZyYW1lU25hcHNob3R0aW5nLmNwcAogICAgIHBhZ2UvRnJhbWVUcmVlLmNwcAogICAgIHBh
Z2UvRnJhbWVWaWV3LmNwcAotICAgIHBhZ2UvR2VzdHVyZVRhcEhpZ2hsaWdodGVyLmNwcAogICAg
IHBhZ2UvR3JvdXBTZXR0aW5ncy5jcHAKICAgICBwYWdlL0hpc3RvcnkuY3BwCiAgICAgcGFnZS9M
b2NhdGlvbi5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VzdHVyZVRhcEhp
Z2hsaWdodGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VzdHVyZVRhcEhpZ2hsaWdodGVy
LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjc5ZmE5ZTk4ZjA1OTY4Njc3MmVk
YzYwM2ZhOWYyMzMyYzJiMDA5OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlc3R1cmVUYXBIaWdobGlnaHRlci5jcHAK
KysrIC9kZXYvbnVsbApAQCAtMSwyNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEy
IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgSW5jLiAoIkFwcGxlIikg
bm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAi
QVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIkdlc3R1cmVUYXBIaWdobGlnaHRlci5oIgotCi0jaW5jbHVkZSAiRWxlbWVudC5o
IgotI2luY2x1ZGUgIkZyYW1lVmlldy5oIgotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgot
I2luY2x1ZGUgIkdyYXBoaWNzVHlwZXMuaCIKLSNpbmNsdWRlICJNYWluRnJhbWUuaCIKLSNpbmNs
dWRlICJOb2RlLmgiCi0jaW5jbHVkZSAiUGFnZS5oIgotI2luY2x1ZGUgIlJlbmRlckJveE1vZGVs
T2JqZWN0LmgiCi0jaW5jbHVkZSAiUmVuZGVySW5saW5lLmgiCi0jaW5jbHVkZSAiUmVuZGVyTGF5
ZXIuaCIKLSNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKLSNpbmNsdWRlICJSZW5kZXJWaWV3Lmgi
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotbmFtZXNwYWNlIHsKLQotaW5saW5lIExheW91dFBv
aW50IG93bmVyRnJhbWVUb01haW5GcmFtZU9mZnNldChjb25zdCBSZW5kZXJPYmplY3QqIG8pCi17
Ci0gICAgQVNTRVJUKG8tPm5vZGUoKSk7Ci0gICAgRnJhbWUmIGNvbnRhaW5pbmdGcmFtZSA9IG8t
PmZyYW1lKCk7Ci0KLSAgICBGcmFtZSYgbWFpbkZyYW1lID0gY29udGFpbmluZ0ZyYW1lLnBhZ2Uo
KS0+bWFpbkZyYW1lKCk7Ci0KLSAgICBMYXlvdXRQb2ludCBtYWluRnJhbWVQb2ludCA9IG1haW5G
cmFtZS52aWV3KCktPndpbmRvd1RvQ29udGVudHMoY29udGFpbmluZ0ZyYW1lLnZpZXcoKS0+Y29u
dGVudHNUb1dpbmRvdyhJbnRQb2ludCgpKSk7Ci0gICAgcmV0dXJuIG1haW5GcmFtZVBvaW50Owot
fQotCi1BZmZpbmVUcmFuc2Zvcm0gbG9jYWxUb0Fic29sdXRlVHJhbnNmb3JtKGNvbnN0IFJlbmRl
ck9iamVjdCogbykKLXsKLSAgICBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtOwotICAgIExheW91
dFBvaW50IHJlZmVyZW5jZVBvaW50OwotCi0gICAgd2hpbGUgKG8pIHsKLSAgICAgICAgUmVuZGVy
RWxlbWVudCogbmV4dENvbnRhaW5lciA9IG8tPmNvbnRhaW5lcigpOwotICAgICAgICBpZiAoIW5l
eHRDb250YWluZXIpCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBMYXlvdXRTaXplIGNv
bnRhaW5lck9mZnNldCA9IG8tPm9mZnNldEZyb21Db250YWluZXIoKm5leHRDb250YWluZXIsIHJl
ZmVyZW5jZVBvaW50KTsKLSAgICAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggdDsKLSAgICAgICAg
by0+Z2V0VHJhbnNmb3JtRnJvbUNvbnRhaW5lcihuZXh0Q29udGFpbmVyLCBjb250YWluZXJPZmZz
ZXQsIHQpOwotCi0gICAgICAgIHRyYW5zZm9ybSA9IHQudG9BZmZpbmVUcmFuc2Zvcm0oKSAqIHRy
YW5zZm9ybTsKLSAgICAgICAgcmVmZXJlbmNlUG9pbnQubW92ZShjb250YWluZXJPZmZzZXQpOwot
ICAgICAgICBvID0gbmV4dENvbnRhaW5lcjsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJhbnNmb3Jt
OwotfQotCi1pbmxpbmUgYm9vbCBjb250YWlucyhjb25zdCBMYXlvdXRSZWN0JiByZWN0LCBpbnQg
eCkKLXsKLSAgICByZXR1cm4gIXJlY3QuaXNFbXB0eSgpICYmIHggPj0gcmVjdC54KCkgJiYgeCA8
PSByZWN0Lm1heFgoKTsKLX0KLQotaW5saW5lIGJvb2wgc3RyaWtlcyhjb25zdCBMYXlvdXRSZWN0
JiBhLCBjb25zdCBMYXlvdXRSZWN0JiBiKQotewotICAgIHJldHVybiAhYS5pc0VtcHR5KCkgJiYg
IWIuaXNFbXB0eSgpCi0gICAgICAgICYmIGEueCgpIDw9IGIubWF4WCgpICYmIGIueCgpIDw9IGEu
bWF4WCgpCi0gICAgICAgICYmIGEueSgpIDw9IGIubWF4WSgpICYmIGIueSgpIDw9IGEubWF4WSgp
OwotfQotCi1pbmxpbmUgdm9pZCBzaGlmdFhFZGdlc1RvQ29udGFpbklmU3RyaWtlcyhMYXlvdXRS
ZWN0JiByZWN0LCBMYXlvdXRSZWN0JiBvdGhlciwgYm9vbCBpc0ZpcnN0KQotewotICAgIGlmIChy
ZWN0LmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKG90aGVyLmlzRW1wdHko
KSB8fCAhc3RyaWtlcyhyZWN0LCBvdGhlcikpCi0gICAgICAgIHJldHVybjsKLQotICAgIExheW91
dFVuaXQgbGVmdFNpZGUgPSBzdGQ6Om1pbihyZWN0LngoKSwgb3RoZXIueCgpKTsKLSAgICBMYXlv
dXRVbml0IHJpZ2h0U2lkZSA9IHN0ZDo6bWF4KHJlY3QubWF4WCgpLCBvdGhlci5tYXhYKCkpOwot
Ci0gICAgcmVjdC5zaGlmdFhFZGdlVG8obGVmdFNpZGUpOwotICAgIHJlY3Quc2hpZnRNYXhYRWRn
ZVRvKHJpZ2h0U2lkZSk7Ci0KLSAgICBpZiAoaXNGaXJzdCkKLSAgICAgICAgb3RoZXIuc2hpZnRN
YXhYRWRnZVRvKHJpZ2h0U2lkZSk7Ci0gICAgZWxzZQotICAgICAgICBvdGhlci5zaGlmdFhFZGdl
VG8obGVmdFNpZGUpOwotfQotCi1pbmxpbmUgdm9pZCBhZGRIaWdobGlnaHRSZWN0KFBhdGgmIHBh
dGgsIGNvbnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IExheW91dFJlY3QmIHByZXYsIGNvbnN0
IExheW91dFJlY3QmIG5leHQpCi17Ci0gICAgLy8gVGhlIHJvdW5kaW5nIGNoZWNrIGRlcGVuZHMg
b24gdGhlIHJlY3RzIG5vdCBpbnRlcnNlY3RpbmcgZWFjaG90aGVyLAotICAgIC8vIG9yIGJlaW5n
IGNvbnRhaW5lZCBmb3IgdGhhdCBtYXR0ZXIuCi0gICAgQVNTRVJUKCFyZWN0LmludGVyc2VjdHMo
cHJldikpOwotICAgIEFTU0VSVCghcmVjdC5pbnRlcnNlY3RzKG5leHQpKTsKLQotICAgIGlmIChy
ZWN0LmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgY29uc3QgaW50IHJvdW5kaW5n
ID0gNDsKLQotICAgIEZsb2F0UmVjdCBjb3B5KHJlY3QpOwotICAgIGNvcHkuaW5mbGF0ZVgocm91
bmRpbmcpOwotICAgIGNvcHkuaW5mbGF0ZVkocm91bmRpbmcgLyAyKTsKLQotICAgIEZsb2F0U2l6
ZSByb3VuZGVkKHJvdW5kaW5nICogMS44LCByb3VuZGluZyAqIDEuOCk7Ci0gICAgRmxvYXRTaXpl
IHNxdWFyZWQoMCwgMCk7Ci0KLSAgICBwYXRoLmFkZEJlemllcnNGb3JSb3VuZGVkUmVjdChjb3B5
LAotICAgICAgICAgICAgY29udGFpbnMocHJldiwgcmVjdC54KCkpID8gc3F1YXJlZCA6IHJvdW5k
ZWQsCi0gICAgICAgICAgICBjb250YWlucyhwcmV2LCByZWN0Lm1heFgoKSkgPyBzcXVhcmVkIDog
cm91bmRlZCwKLSAgICAgICAgICAgIGNvbnRhaW5zKG5leHQsIHJlY3QueCgpKSA/IHNxdWFyZWQg
OiByb3VuZGVkLAotICAgICAgICAgICAgY29udGFpbnMobmV4dCwgcmVjdC5tYXhYKCkpID8gc3F1
YXJlZCA6IHJvdW5kZWQpOwotfQotCi1QYXRoIGFic29sdXRlUGF0aEZvclJlbmRlcmVyKFJlbmRl
ck9iamVjdCogY29uc3QgbykKLXsKLSAgICBBU1NFUlQobyk7Ci0KLSAgICBWZWN0b3I8SW50UmVj
dD4gcmVjdHM7Ci0gICAgTGF5b3V0UG9pbnQgZnJhbWVPZmZzZXQgPSBvd25lckZyYW1lVG9NYWlu
RnJhbWVPZmZzZXQobyk7Ci0gICAgby0+YWRkRm9jdXNSaW5nUmVjdHMocmVjdHMsIGZyYW1lT2Zm
c2V0KTsKLQotICAgIGlmIChyZWN0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBQYXRoKCk7
Ci0KLSAgICAvLyBUaGUgYmFzaWMgaWRlYSBpcyB0byBhbGxvdyB1cCB0byB0aHJlZSBkaWZmZXJl
bnQgYm94ZXMgaW4gb3JkZXIgdG8gaGlnaGxpZ2h0Ci0gICAgLy8gdGV4dCB3aXRoIGxpbmUgYnJl
YWtzIG1vcmUgbmljZXIgdGhhbiB1c2luZyBhIGJvdW5kaW5nIGJveC4KLQotICAgIC8vIE1lcmdl
IGFsbCBjZW50ZXIgYm94ZXMgKGFsbCBidXQgdGhlIGZpcnN0IGFuZCB0aGUgbGFzdCkuCi0gICAg
TGF5b3V0UmVjdCBtaWQ7Ci0KLSAgICAvLyBTZXQgdGhlIGVuZCB2YWx1ZSB0byBpbnRlZ2VyLiBJ
dCBlbnN1cmVzIHRoYXQgbm8gdW5zaWduZWQgaW50IG92ZXJmbG93IG9jY3VycwotICAgIC8vIGlu
IHRoZSB0ZXN0IGV4cHJlc3Npb24sIGluIGNhc2Ugb2YgZW1wdHkgcmVjdHMgdmVjdG9yLgotICAg
IGludCBlbmQgPSByZWN0cy5zaXplKCkgLSAxOwotICAgIGZvciAoaW50IGkgPSAxOyBpIDwgZW5k
OyArK2kpCi0gICAgICAgIG1pZC51bml0ZUlmTm9uWmVybyhyZWN0cy5hdChpKSk7Ci0KLSAgICBM
YXlvdXRSZWN0IGZpcnN0OwotICAgIExheW91dFJlY3QgbGFzdDsKLQotICAgIC8vIEFkZCB0aGUg
Zmlyc3QgYm94LCBidXQgbWVyZ2UgaXQgd2l0aCB0aGUgY2VudGVyIGJveGVzIGlmIGl0IGludGVy
c2VjdHMgb3IgaWYgdGhlIGNlbnRlciBib3ggaXMgZW1wdHkuCi0gICAgaWYgKHJlY3RzLnNpemUo
KSAmJiAhcmVjdHMuZmlyc3QoKS5pc0VtcHR5KCkpIHsKLSAgICAgICAgLy8gSWYgdGhlIG1pZCBi
b3ggaXMgZW1wdHkgYXQgdGhpcyBwb2ludCwgdW5pdGUgaXQgd2l0aCB0aGUgZmlyc3QgYm94LiBU
aGlzIGFsbG93cyB0aGUgZmlyc3QgYm94IHRvIGJlCi0gICAgICAgIC8vIHVuaXRlZCB3aXRoIHRo
ZSBsYXN0IGJveCBpZiB0aGV5IGludGVyc2VjdCBpbiB0aGUgZm9sbG93aW5nIGNoZWNrIGZvciBs
YXN0LiBOb3QgdW5pdGluZyB0aGVtIHdvdWxkCi0gICAgICAgIC8vIHRyaWdnZXIgaW4gYXNzZXJ0
IGluIGFkZEhpZ2hsaWdoUmVjdCBkdWUgdG8gdGhlIGZpcnN0IGFuZCB0aGUgbGFzdCBib3ggaW50
ZXJzZWN0aW5nLCBidXQgYmVpbmcgcGFzc2VkCi0gICAgICAgIC8vIGFzIHR3byBzZXBhcmF0ZSBi
b3hlcy4KLSAgICAgICAgaWYgKG1pZC5pc0VtcHR5KCkgfHwgbWlkLmludGVyc2VjdHMocmVjdHMu
Zmlyc3QoKSkpCi0gICAgICAgICAgICBtaWQudW5pdGUocmVjdHMuZmlyc3QoKSk7Ci0gICAgICAg
IGVsc2UgewotICAgICAgICAgICAgZmlyc3QgPSByZWN0cy5maXJzdCgpOwotICAgICAgICAgICAg
c2hpZnRYRWRnZXNUb0NvbnRhaW5JZlN0cmlrZXMobWlkLCBmaXJzdCwgLyogaXNGaXJzdCAqLyB0
cnVlKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIC8vIEFkZCB0aGUgbGFzdCBib3gsIGJ1dCBt
ZXJnZSBpdCB3aXRoIHRoZSBjZW50ZXIgYm94ZXMgaWYgaXQgaW50ZXJzZWN0cy4KLSAgICBpZiAo
cmVjdHMuc2l6ZSgpID4gMSAmJiAhcmVjdHMubGFzdCgpLmlzRW1wdHkoKSkgewotICAgICAgICAv
LyBBZGp1c3QgY2VudGVyIGJveGVzIHRvIGJvdW5kYXJ5IG9mIGxhc3QKLSAgICAgICAgaWYgKG1p
ZC5pbnRlcnNlY3RzKHJlY3RzLmxhc3QoKSkpCi0gICAgICAgICAgICBtaWQudW5pdGUocmVjdHMu
bGFzdCgpKTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBsYXN0ID0gcmVjdHMubGFzdCgp
OwotICAgICAgICAgICAgc2hpZnRYRWRnZXNUb0NvbnRhaW5JZlN0cmlrZXMobWlkLCBsYXN0LCAv
KiBpc0ZpcnN0ICovIGZhbHNlKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIFZlY3RvcjxMYXlv
dXRSZWN0PiBkcmF3YWJsZVJlY3RzOwotICAgIGlmICghZmlyc3QuaXNFbXB0eSgpKQotICAgICAg
ICBkcmF3YWJsZVJlY3RzLmFwcGVuZChmaXJzdCk7Ci0gICAgaWYgKCFtaWQuaXNFbXB0eSgpKQot
ICAgICAgICBkcmF3YWJsZVJlY3RzLmFwcGVuZChtaWQpOwotICAgIGlmICghbGFzdC5pc0VtcHR5
KCkpCi0gICAgICAgIGRyYXdhYmxlUmVjdHMuYXBwZW5kKGxhc3QpOwotCi0gICAgLy8gQ2xpcCB0
aGUgb3ZlcmZsb3cgcmVjdHMgaWYgbmVlZGVkLCBiZWZvcmUgdGhlIHJpbmcgcGF0aCBpcyBmb3Jt
ZWQgdG8KLSAgICAvLyBlbnN1cmUgcm91bmRlZCBoaWdobGlnaHQgcmVjdHMuCi0gICAgZm9yIChp
bnQgaSA9IGRyYXdhYmxlUmVjdHMuc2l6ZSgpIC0gMTsgaSA+PSAwOyAtLWkpIHsKLSAgICAgICAg
TGF5b3V0UmVjdCYgcmluZ1JlY3QgPSBkcmF3YWJsZVJlY3RzLmF0KGkpOwotICAgICAgICBMYXlv
dXRQb2ludCByaW5nUmVjdExvY2F0aW9uID0gcmluZ1JlY3QubG9jYXRpb24oKTsKLQotICAgICAg
ICByaW5nUmVjdC5tb3ZlQnkoLWZyYW1lT2Zmc2V0KTsKLQotICAgICAgICBSZW5kZXJMYXllciog
bGF5ZXIgPSBvLT5lbmNsb3NpbmdMYXllcigpOwotICAgICAgICBSZW5kZXJPYmplY3QqIGN1cnJl
bnRSZW5kZXJlciA9IG87Ci0KLSAgICAgICAgLy8gQ2hlY2sgYW5jZXN0b3IgbGF5ZXJzIGZvciBv
dmVyZmxvdyBjbGlwIGFuZCBpbnRlcnNlY3QgdGhlbS4KLSAgICAgICAgZm9yICg7IGxheWVyOyBs
YXllciA9IGxheWVyLT5wYXJlbnQoKSkgewotICAgICAgICAgICAgUmVuZGVyTGF5ZXJNb2RlbE9i
amVjdCogbGF5ZXJSZW5kZXJlciA9ICZsYXllci0+cmVuZGVyZXIoKTsKLQotICAgICAgICAgICAg
aWYgKGxheWVyUmVuZGVyZXItPmhhc092ZXJmbG93Q2xpcCgpICYmIGxheWVyUmVuZGVyZXIgIT0g
Y3VycmVudFJlbmRlcmVyKSB7Ci0gICAgICAgICAgICAgICAgYm9vbCBjb250YWluZXJTa2lwcGVk
ID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgLy8gU2tpcCBhbmNlc3RvciBsYXllcnMgdGhhdCBh
cmUgbm90IGNvbnRhaW5lcnMgZm9yIHRoZSBjdXJyZW50IHJlbmRlcmVyLgotICAgICAgICAgICAg
ICAgIGN1cnJlbnRSZW5kZXJlci0+Y29udGFpbmVyKGxheWVyUmVuZGVyZXIsICZjb250YWluZXJT
a2lwcGVkKTsKLSAgICAgICAgICAgICAgICBpZiAoY29udGFpbmVyU2tpcHBlZCkKLSAgICAgICAg
ICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgRmxvYXRRdWFkIHJpbmdRdWFk
ID0gY3VycmVudFJlbmRlcmVyLT5sb2NhbFRvQ29udGFpbmVyUXVhZChGbG9hdFF1YWQocmluZ1Jl
Y3QpLCBsYXllclJlbmRlcmVyKTsKLSAgICAgICAgICAgICAgICAvLyBJZ25vcmUgcXVhZHMgdGhh
dCBhcmUgbm90IHJlY3Rhbmd1bGFyLCBzaW5jZSB3ZSBjYW4gbm90IGN1cnJlbnRseSBoaWdobGln
aHQgdGhlbSBuaWNlbHkuCi0gICAgICAgICAgICAgICAgaWYgKHJpbmdRdWFkLmlzUmVjdGlsaW5l
YXIoKSkKLSAgICAgICAgICAgICAgICAgICAgcmluZ1JlY3QgPSByaW5nUXVhZC5lbmNsb3NpbmdC
b3VuZGluZ0JveCgpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAg
cmluZ1JlY3QgPSBMYXlvdXRSZWN0KCk7Ci0gICAgICAgICAgICAgICAgY3VycmVudFJlbmRlcmVy
ID0gbGF5ZXJSZW5kZXJlcjsKLQotICAgICAgICAgICAgICAgIHJpbmdSZWN0LmludGVyc2VjdChk
b3duY2FzdDxSZW5kZXJCb3g+KCpsYXllclJlbmRlcmVyKS5ib3JkZXJCb3hSZWN0KCkpOwotCi0g
ICAgICAgICAgICAgICAgaWYgKHJpbmdSZWN0LmlzRW1wdHkoKSkKLSAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAocmluZ1Jl
Y3QuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICBkcmF3YWJsZVJlY3RzLnJlbW92ZShpKTsKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIC8vIEFmdGVyIGNsaXBwaW5n
LCByZXNldCB0aGUgb3JpZ2luYWwgcG9zaXRpb24gc28gdGhhdCBwYXJlbnRzJyB0cmFuc2Zvcm1z
IGFwcGx5IGNvcnJlY3RseS4KLSAgICAgICAgcmluZ1JlY3Quc2V0TG9jYXRpb24ocmluZ1JlY3RM
b2NhdGlvbik7Ci0gICAgfQotCi0gICAgUGF0aCBwYXRoOwotICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgZHJhd2FibGVSZWN0cy5zaXplKCk7ICsraSkgewotICAgICAgICBMYXlvdXRSZWN0IHBy
ZXYgPSBpID8gZHJhd2FibGVSZWN0cy5hdChpIC0gMSkgOiBMYXlvdXRSZWN0KCk7Ci0gICAgICAg
IExheW91dFJlY3QgbmV4dCA9IGkgPCAoZHJhd2FibGVSZWN0cy5zaXplKCkgLSAxKSA/IGRyYXdh
YmxlUmVjdHMuYXQoaSArIDEpIDogTGF5b3V0UmVjdCgpOwotICAgICAgICBhZGRIaWdobGlnaHRS
ZWN0KHBhdGgsIGRyYXdhYmxlUmVjdHMuYXQoaSksIHByZXYsIG5leHQpOwotICAgIH0KLQotICAg
IHBhdGgudHJhbnNmb3JtKGxvY2FsVG9BYnNvbHV0ZVRyYW5zZm9ybShvKSk7Ci0gICAgcmV0dXJu
IHBhdGg7Ci19Ci0KLX0gLy8gYW5vbnltb3VzIG5hbWVzcGFjZQotCi1uYW1lc3BhY2UgR2VzdHVy
ZVRhcEhpZ2hsaWdodGVyIHsKLQotUGF0aCBwYXRoRm9yTm9kZUhpZ2hsaWdodChjb25zdCBOb2Rl
KiBub2RlKQotewotICAgIFJlbmRlck9iamVjdCogcmVuZGVyZXIgPSBub2RlLT5yZW5kZXJlcigp
OwotCi0gICAgaWYgKCFyZW5kZXJlciB8fCAoIXJlbmRlcmVyLT5pc0JveCgpICYmICFyZW5kZXJl
ci0+aXNSZW5kZXJJbmxpbmUoKSkpCi0gICAgICAgIHJldHVybiBQYXRoKCk7Ci0KLSAgICByZXR1
cm4gYWJzb2x1dGVQYXRoRm9yUmVuZGVyZXIocmVuZGVyZXIpOwotfQotCi19IC8vIG5hbWVzcGFj
ZSBHZXN0dXJlVGFwSGlnaGxpZ2h0ZXIKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZXN0dXJlVGFwSGlnaGxpZ2h0ZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvR2VzdHVyZVRhcEhpZ2hsaWdodGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDgzYWE3ZjRjMjhiN2U5MzMzNGQxMjM3Yjk0OThkMmNiZjE3NjBkOTIuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9HZXN0dXJlVGFwSGlnaGxpZ2h0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiAgTmVpdGhlciB0
aGUgbmFtZSBvZiBBcHBsZSBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0gKiAgICAg
aXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIEdlc3R1cmVUYXBIaWdobGlnaHRlcl9oCi0jZGVmaW5lIEdlc3R1
cmVUYXBIaWdobGlnaHRlcl9oCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQWZmaW5l
VHJhbnNmb3JtOwotY2xhc3MgUGF0aDsKLWNsYXNzIE5vZGU7Ci0KLW5hbWVzcGFjZSBHZXN0dXJl
VGFwSGlnaGxpZ2h0ZXIgewotCi1QYXRoIHBhdGhGb3JOb2RlSGlnaGxpZ2h0KGNvbnN0IE5vZGUq
KTsKLQotfSAvLyBuYW1lc3BhY2UgR2VzdHVyZVRhcEhpZ2hsaWdodGVyCi0KLX0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEdlc3R1cmVUYXBIaWdobGlnaHRlcl9faApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViS2l0Mi9DTWFr
ZUxpc3RzLnR4dAppbmRleCA3NDI3MDg0NjJjZDM1NzA1NDYxNWFkYThhMzBjZWY1YTVmYWJkYmNm
Li43YTZjYTU3OGU3NzQyZTc3MDIyNWI1NGQ1YjgzOTJmZjA0NTAzOTZmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9DTWFrZUxp
c3RzLnR4dApAQCAtNTQ5LDcgKzU0OSw2IEBAIHNldChXZWJLaXQyX1NPVVJDRVMKICAgICBXZWJQ
cm9jZXNzL1dlYlBhZ2UvRmluZENvbnRyb2xsZXIuY3BwCiAgICAgV2ViUHJvY2Vzcy9XZWJQYWdl
L0xheWVyVHJlZUhvc3QuY3BwCiAgICAgV2ViUHJvY2Vzcy9XZWJQYWdlL1BhZ2VCYW5uZXIuY3Bw
Ci0gICAgV2ViUHJvY2Vzcy9XZWJQYWdlL1RhcEhpZ2hsaWdodENvbnRyb2xsZXIuY3BwCiAgICAg
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkJhY2tGb3J3YXJkTGlzdFByb3h5LmNwcAogICAgIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJDb250ZXh0TWVudS5jcHAKICAgICBXZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViRG9jdW1lbnRMb2FkZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvVGFwSGlnaGxpZ2h0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvVGFwSGlnaGxpZ2h0Q29udHJvbGxlci5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDUwODU5NWIwZjU4ZjhmZTk2MmVlZGU5NjExMWI0MGJjNzZmM2E2
YTUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1RhcEhpZ2hsaWdodENvbnRyb2xsZXIuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsMTIwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
Tm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCi0gKgotICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgotICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91
ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotICoKLSAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0
cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICogYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAq
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUgR05VCi0gKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KLSAqCi0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh
bTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwotICogdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBG
bG9vciwKLSAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgotICoKLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGFwSGlnaGxpZ2h0Q29udHJvbGxlci5oIgotCi0jaWYg
RU5BQkxFKFRPVUNIX0VWRU5UUykKLQotI2luY2x1ZGUgIlNoYXJlYWJsZUJpdG1hcC5oIgotI2lu
Y2x1ZGUgIldLUGFnZS5oIgotI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgotI2lu
Y2x1ZGUgIldlYlBhZ2UuaCIKLSNpbmNsdWRlICJXZWJQYWdlUHJveHlNZXNzYWdlcy5oIgotI2lu
Y2x1ZGUgIldlYlByb2Nlc3MuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL0ZvY3VzQ29udHJvbGxlci5o
PgotI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWUuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lVmll
dy5oPgotI2luY2x1ZGUgPFdlYkNvcmUvR2VzdHVyZVRhcEhpZ2hsaWdodGVyLmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHQuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL01haW5GcmFt
ZS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUGFnZS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUGFnZU92
ZXJsYXlDb250cm9sbGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9SZW5kZXJFbGVtZW50Lmg+Ci0K
LXVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci11c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKLQotbmFtZXNw
YWNlIFdlYktpdCB7Ci0KLVRhcEhpZ2hsaWdodENvbnRyb2xsZXI6OlRhcEhpZ2hsaWdodENvbnRy
b2xsZXIoV2ViUGFnZSogd2ViUGFnZSkKLSAgICA6IG1fd2ViUGFnZSh3ZWJQYWdlKQotICAgICwg
bV9vdmVybGF5KDApCi17Ci19Ci0KLVRhcEhpZ2hsaWdodENvbnRyb2xsZXI6On5UYXBIaWdobGln
aHRDb250cm9sbGVyKCkKLXsKLX0KLQotdm9pZCBUYXBIaWdobGlnaHRDb250cm9sbGVyOjpoaWdo
bGlnaHQoTm9kZSogbm9kZSkKLXsKLSAgICBBU1NFUlQobm9kZSk7Ci0KLSAgICBtX3BhdGggPSBH
ZXN0dXJlVGFwSGlnaGxpZ2h0ZXI6OnBhdGhGb3JOb2RlSGlnaGxpZ2h0KG5vZGUpOwotICAgIG1f
Y29sb3IgPSBub2RlLT5yZW5kZXJlcigpLT5zdHlsZSgpLnRhcEhpZ2hsaWdodENvbG9yKCk7Ci0K
LSAgICBpZiAoIW1fb3ZlcmxheSkgewotICAgICAgICBSZWZQdHI8UGFnZU92ZXJsYXk+IG92ZXJs
YXkgPSBQYWdlT3ZlcmxheTo6Y3JlYXRlKCp0aGlzKTsKLSAgICAgICAgbV9vdmVybGF5ID0gb3Zl
cmxheS5nZXQoKTsKLSAgICAgICAgbV93ZWJQYWdlLT5tYWluRnJhbWUoKS0+cGFnZU92ZXJsYXlD
b250cm9sbGVyKCkuaW5zdGFsbFBhZ2VPdmVybGF5KG92ZXJsYXkucmVsZWFzZSgpLCBQYWdlT3Zl
cmxheTo6RmFkZU1vZGU6OkZhZGUpOwotICAgIH0gZWxzZQotICAgICAgICBtX292ZXJsYXktPnNl
dE5lZWRzRGlzcGxheSgpOwotfQotCi12b2lkIFRhcEhpZ2hsaWdodENvbnRyb2xsZXI6OmhpZGVI
aWdobGlnaHQoKQotewotICAgIGlmIChtX292ZXJsYXkpCi0gICAgICAgIG1fd2ViUGFnZS0+bWFp
bkZyYW1lKCktPnBhZ2VPdmVybGF5Q29udHJvbGxlcigpLnVuaW5zdGFsbFBhZ2VPdmVybGF5KG1f
b3ZlcmxheSwgUGFnZU92ZXJsYXk6OkZhZGVNb2RlOjpGYWRlKTsKLX0KLQotdm9pZCBUYXBIaWdo
bGlnaHRDb250cm9sbGVyOjpwYWdlT3ZlcmxheURlc3Ryb3llZChQYWdlT3ZlcmxheSopCi17Ci19
Ci0KLXZvaWQgVGFwSGlnaGxpZ2h0Q29udHJvbGxlcjo6d2lsbE1vdmVUb1dlYlBhZ2UoUGFnZU92
ZXJsYXkqLCBXZWJQYWdlKiB3ZWJQYWdlKQotewotICAgIGlmICh3ZWJQYWdlKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICAvLyBUaGUgcGFnZSBvdmVybGF5IGlzIG1vdmluZyBhd2F5IGZyb20gdGhl
IHdlYiBwYWdlLCByZXNldCBpdC4KLSAgICBBU1NFUlQobV9vdmVybGF5KTsKLSAgICBtX292ZXJs
YXkgPSAwOwotfQotCi12b2lkIFRhcEhpZ2hsaWdodENvbnRyb2xsZXI6OmRpZE1vdmVUb1dlYlBh
Z2UoUGFnZU92ZXJsYXkqLCBXZWJQYWdlKikKLXsKLX0KLQotc3RhdGljIENvbG9yIGhpZ2hsaWdo
dENvbG9yKENvbG9yIGJhc2VDb2xvciwgZmxvYXQgZnJhY3Rpb25GYWRlZEluKQotewotICAgIHJl
dHVybiBDb2xvcihiYXNlQ29sb3IucmVkKCksIGJhc2VDb2xvci5ncmVlbigpLCBiYXNlQ29sb3Iu
Ymx1ZSgpLCBpbnQoYmFzZUNvbG9yLmFscGhhKCkgKiBmcmFjdGlvbkZhZGVkSW4pKTsKLX0KLQot
dm9pZCBUYXBIaWdobGlnaHRDb250cm9sbGVyOjpkcmF3UmVjdChQYWdlT3ZlcmxheSogLypwYWdl
T3ZlcmxheSovLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIC8qZGly
dHlSZWN0Ki8pCi17Ci0gICAgaWYgKG1fcGF0aC5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybjsK
LQotICAgIHsKLSAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVyKGNv
bnRleHQpOwotICAgICAgICBjb250ZXh0LnNldEZpbGxDb2xvcihoaWdobGlnaHRDb2xvcihtX2Nv
bG9yLCAwLjVmKSwgQ29sb3JTcGFjZVNSR0IpOwotICAgICAgICBjb250ZXh0LmZpbGxQYXRoKG1f
cGF0aCk7Ci0gICAgfQotfQotCi1ib29sIFRhcEhpZ2hsaWdodENvbnRyb2xsZXI6Om1vdXNlRXZl
bnQoUGFnZU92ZXJsYXkqLCBjb25zdCBXZWJNb3VzZUV2ZW50JikKLXsKLSAgICByZXR1cm4gZmFs
c2U7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKFRPVUNI
X0VWRU5UUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9U
YXBIaWdobGlnaHRDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvVGFwSGlnaGxpZ2h0Q29udHJvbGxlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1YzM5ZjdlNjQ4ODE1NmY0NjExYWU0ZTU3Mzk3NGRkYzI5YmFiZWEwLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9UYXBIaWdobGlnaHRDb250cm9sbGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3
NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIE5va2lhIENvcnBvcmF0aW9uIGFu
ZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQotICoKLSAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSAqIG1vZGlmeSBpdCB1bmRl
ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNl
IGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKLSAq
IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg
dmVyc2lvbi4KLSAqCi0gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg
dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKLSAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0
aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0gKiBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotICogTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogWW91IHNo
b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZQotICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZ
SU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KLSAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCi0gKiBCb3N0b24sIE1B
IDAyMTEwLTEzMDEsIFVTQS4KLSAqCi0gKi8KLQotI2lmbmRlZiBUYXBIaWdobGlnaHRDb250cm9s
bGVyX2gKLSNkZWZpbmUgVGFwSGlnaGxpZ2h0Q29udHJvbGxlcl9oCi0KLSNpZiBFTkFCTEUoVE9V
Q0hfRVZFTlRTKQotCi0jaW5jbHVkZSAiUGFnZU92ZXJsYXkuaCIKLSNpbmNsdWRlICJXZWJFdmVu
dC5oIgotI2luY2x1ZGUgPFdlYkNvcmUvQ29sb3IuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL01haW5G
cmFtZS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUGF0aC5oPgotI2luY2x1ZGUgPHd0Zi9Gb3J3YXJk
Lmg+Ci0jaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci1jbGFzcyBGcmFtZTsKLWNsYXNzIEludFJlY3Q7Ci1j
bGFzcyBOb2RlOwotfQotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotY2xhc3MgV2ViUGFnZTsKLQot
Y2xhc3MgVGFwSGlnaGxpZ2h0Q29udHJvbGxlciA6IHByaXZhdGUgV2ViQ29yZTo6UGFnZU92ZXJs
YXk6OkNsaWVudCB7Ci0gICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoVGFwSGlnaGxpZ2h0Q29udHJv
bGxlcik7Ci0KLXB1YmxpYzoKLSAgICBleHBsaWNpdCBUYXBIaWdobGlnaHRDb250cm9sbGVyKFdl
YlBhZ2UqKTsKLSAgICB2aXJ0dWFsIH5UYXBIaWdobGlnaHRDb250cm9sbGVyKCk7Ci0KLSAgICB2
b2lkIGhpZ2hsaWdodChXZWJDb3JlOjpOb2RlKik7Ci0gICAgdm9pZCBoaWRlSGlnaGxpZ2h0KCk7
Ci0KLXByaXZhdGU6Ci0gICAgLy8gUGFnZU92ZXJsYXk6OkNsaWVudC4KLSAgICB2aXJ0dWFsIHZv
aWQgcGFnZU92ZXJsYXlEZXN0cm95ZWQoV2ViQ29yZTo6UGFnZU92ZXJsYXkqKTsKLSAgICB2aXJ0
dWFsIHZvaWQgd2lsbE1vdmVUb1dlYlBhZ2UoV2ViQ29yZTo6UGFnZU92ZXJsYXkqLCBXZWJQYWdl
Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZE1vdmVUb1dlYlBhZ2UoV2ViQ29yZTo6UGFnZU92ZXJs
YXkqLCBXZWJQYWdlKik7Ci0gICAgdmlydHVhbCBib29sIG1vdXNlRXZlbnQoV2ViQ29yZTo6UGFn
ZU92ZXJsYXkqLCBjb25zdCBXZWJNb3VzZUV2ZW50Jik7Ci0gICAgdmlydHVhbCB2b2lkIGRyYXdS
ZWN0KFdlYkNvcmU6OlBhZ2VPdmVybGF5KiwgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0JiwgY29u
c3QgV2ViQ29yZTo6SW50UmVjdCYgZGlydHlSZWN0KTsKLQotcHJpdmF0ZToKLSAgICBXZWJQYWdl
KiBtX3dlYlBhZ2U7Ci0gICAgV2ViQ29yZTo6UGFnZU92ZXJsYXkqIG1fb3ZlcmxheTsKLQotICAg
IFdlYkNvcmU6OlBhdGggbV9wYXRoOwotICAgIFdlYkNvcmU6OkNvbG9yIG1fY29sb3I7Ci19Owot
Ci19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShUT1VDSF9FVkVOVFMp
Ci0KLSNlbmRpZiAvLyBUYXBIaWdobGlnaHRDb250cm9sbGVyX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>