<?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>197961</bug_id>
          
          <creation_ts>2019-05-16 13:38:14 -0700</creation_ts>
          <short_desc>[PlayStation] Don&apos;t call fcntl.</short_desc>
          <delta_ts>2019-05-21 17:55:28 -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>New Bugs</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ross Kirsling">ross.kirsling</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>stephan.szabo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>yoshiaki.jitsukawa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1536890</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-05-16 13:38:14 -0700</bug_when>
    <thetext>[PlayStation] Don&apos;t call fcntl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536891</commentid>
    <comment_count>1</comment_count>
      <attachid>370062</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-05-16 13:39:30 -0700</bug_when>
    <thetext>Created attachment 370062
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536892</commentid>
    <comment_count>2</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-05-16 13:40:50 -0700</bug_when>
    <thetext>Simple patch, but we need to come up with a better #if to use before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537583</commentid>
    <comment_count>3</comment_count>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2019-05-20 08:21:01 -0700</bug_when>
    <thetext>We probably should also be protecting the #ifdef F_DUPFD_CLOEXEC case in dupCloseOnExec since we could get the define while still not being allowed to call fcntl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538055</commentid>
    <comment_count>4</comment_count>
      <attachid>370357</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-05-21 16:55:53 -0700</bug_when>
    <thetext>Created attachment 370357
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538056</commentid>
    <comment_count>5</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-05-21 16:57:11 -0700</bug_when>
    <thetext>Attachment 370357 did not pass style-queue:


ERROR: Source/WTF/wtf/unix/UniStdExtrasUnix.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/playstation/UniStdExtrasPlayStation.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 2 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538058</commentid>
    <comment_count>6</comment_count>
      <attachid>370358</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-05-21 17:04:37 -0700</bug_when>
    <thetext>Created attachment 370358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538059</commentid>
    <comment_count>7</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-05-21 17:06:12 -0700</bug_when>
    <thetext>Attachment 370358 did not pass style-queue:


ERROR: Source/WTF/wtf/unix/UniStdExtrasUnix.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/playstation/UniStdExtrasPlayStation.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 2 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538068</commentid>
    <comment_count>8</comment_count>
      <attachid>370358</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-21 17:54:46 -0700</bug_when>
    <thetext>Comment on attachment 370358
Patch

Clearing flags on attachment: 370358

Committed r245606: &lt;https://trac.webkit.org/changeset/245606&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538069</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-21 17:54:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538070</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-21 17:55:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/51009469&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370062</attachid>
            <date>2019-05-16 13:39:30 -0700</date>
            <delta_ts>2019-05-21 16:55:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197961-20190516133928.patch</filename>
            <type>text/plain</type>
            <size>2800</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1Mzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDZlZmFiMzdmMTRmNjQwZWJkNWI2MjNk
OThkNDQ2YmZhYjViY2IzYjQuLjZhMmUyZTY5ODM5MzU3N2Q4Njc0YzFiM2U3ZDVlMzkxYTQxZGMw
YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTktMDUtMTYgIFJvc3MgS2lyc2xpbmcgIDxyb3Nz
LmtpcnNsaW5nQHNvbnkuY29tPgorCisgICAgICAgIFtQbGF5U3RhdGlvbl0gRG9uJ3QgY2FsbCBm
Y250bC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5
Nzk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
d3RmL1VuaVN0ZEV4dHJhcy5jcHA6CisgICAgICAgIChXVEY6OnNldENsb3NlT25FeGVjKToKKwog
MjAxOS0wNS0xNiAgRWlrZSBSYXRoa2UgIDxlcmFja0ByZWRoYXQuY29tPgogCiAgICAgICAgIEZp
eCBtZW1jcHkoKSBjYWxsIGZvciBiaWcgZW5kaWFuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNlY2Q5NTIxMzQxZmE3
YWQxN2VkYzdjZmUzMWJmZmFkN2ZjNTM3ZDEuLmVlMTFiNDc4OTUyZjVkN2M5OWFlNzRkZWQzOGMy
MzM1ODFkZWVjYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTktMDUtMTYgIFJvc3Mg
S2lyc2xpbmcgIDxyb3NzLmtpcnNsaW5nQHNvbnkuY29tPgorCisgICAgICAgIFtQbGF5U3RhdGlv
bl0gRG9uJ3QgY2FsbCBmY250bC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE5Nzk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogUGxhdGZvcm0vSVBDL3VuaXgvQ29ubmVjdGlvblVuaXguY3BwOgorICAg
ICAgICAoSVBDOjpDb25uZWN0aW9uOjpvcGVuKToKKwogMjAxOS0wNS0xNiAgUnlhbiBXYWxrbGlu
ICA8cnlhbkB0ZXN0dG9hc3QuY29tPgogCiAgICAgICAgIFtXUEVdIFJlbmRlcmluZyBvbiBhIEhp
RFBJIGRpc3BsYXkgbG9va3Mgc2NhbGVkIHVwIGluc3RlYWQgb2YgcmVuZGVyZWQgYXQgMngKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAgYi9Tb3VyY2UvV1RGL3d0
Zi9VbmlTdGRFeHRyYXMuY3BwCmluZGV4IGFhMzRhYjRiZDAxZjNiYmNjMjJjZGZjZGMwYzIxZjQz
YTgzZGYxYTkuLjQwM2MzZWZiMzhhNzRmMDQ1NTFmYjJlZDc3MjEwMThhNTUzNDE3NmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAKKysrIGIvU291cmNlL1dURi93
dGYvVW5pU3RkRXh0cmFzLmNwcApAQCAtMzIsNiArMzIsNyBAQCBuYW1lc3BhY2UgV1RGIHsKIAog
Ym9vbCBzZXRDbG9zZU9uRXhlYyhpbnQgZmlsZURlc2NyaXB0b3IpCiB7CisjaWYgIVBMQVRGT1JN
KFBMQVlTVEFUSU9OKQogICAgIGludCByZXR1cm5WYWx1ZSA9IC0xOwogICAgIGRvIHsKICAgICAg
ICAgaW50IGZsYWdzID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfR0VURkQpOwpAQCAtNDAsNiAr
NDEsOSBAQCBib29sIHNldENsb3NlT25FeGVjKGludCBmaWxlRGVzY3JpcHRvcikKICAgICB9IHdo
aWxlIChyZXR1cm5WYWx1ZSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUik7CiAKICAgICByZXR1cm4g
cmV0dXJuVmFsdWUgIT0gLTE7CisjZWxzZQorICAgIHJldHVybiB0cnVlOworI2VuZGlmCiB9CiAK
IGludCBkdXBDbG9zZU9uRXhlYyhpbnQgZmlsZURlc2NyaXB0b3IpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1BsYXRmb3JtL0lQQy91bml4L0Nvbm5lY3Rpb25Vbml4LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvUGxhdGZvcm0vSVBDL3VuaXgvQ29ubmVjdGlvblVuaXguY3BwCmluZGV4IDRmM2FiMTQ2
MDhiNGJmZDJlNjVhMDQxMDJjNGQ0OGFjNWM2YWQ2NTYuLjBmNDZlYjA5MGNmZDc0MzgzMTk5NmI5
YWI4MTE3YWMzOTAzYzI4YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBD
L3VuaXgvQ29ubmVjdGlvblVuaXguY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBD
L3VuaXgvQ29ubmVjdGlvblVuaXguY3BwCkBAIC0zMzEsNiArMzMxLDcgQEAgdm9pZCBDb25uZWN0
aW9uOjpyZWFkeVJlYWRIYW5kbGVyKCkKIAogYm9vbCBDb25uZWN0aW9uOjpvcGVuKCkKIHsKKyNp
ZiAhUExBVEZPUk0oUExBWVNUQVRJT04pCiAgICAgaW50IGZsYWdzID0gZmNudGwobV9zb2NrZXRE
ZXNjcmlwdG9yLCBGX0dFVEZMLCAwKTsKICAgICB3aGlsZSAoZmNudGwobV9zb2NrZXREZXNjcmlw
dG9yLCBGX1NFVEZMLCBmbGFncyB8IE9fTk9OQkxPQ0spID09IC0xKSB7CiAgICAgICAgIGlmIChl
cnJubyAhPSBFSU5UUikgewpAQCAtMzM4LDYgKzMzOSwxMCBAQCBib29sIENvbm5lY3Rpb246Om9w
ZW4oKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAgICAgfQorI2Vsc2UK
KyAgICBpbnQgbm9uQmxvY2tpbmcgPSAxOworICAgIHNldHNvY2tvcHQobV9zb2NrZXREZXNjcmlw
dG9yLCAweGZmZmYsIDB4MTIwMCwgJm5vbkJsb2NraW5nLCA0KTsKKyNlbmRpZgogCiAgICAgUmVm
UHRyPENvbm5lY3Rpb24+IHByb3RlY3RlZFRoaXModGhpcyk7CiAgICAgbV9pc0Nvbm5lY3RlZCA9
IHRydWU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370357</attachid>
            <date>2019-05-21 16:55:53 -0700</date>
            <delta_ts>2019-05-21 17:04:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197961-20190521165553.patch</filename>
            <type>text/plain</type>
            <size>15559</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1NTM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZWY4NWQ5MDFjMTNmNzM2MWM0ZGNkZWFmNDg4MWI5YWRmOTU4ZjhiLi5iNzBkNjM4ZDI1NGNkOWVl
ZGUzNDE5YTQ2YzgwMDg5MjkzZjI0MzY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxOS0wNS0yMSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW1BsYXlTdGF0aW9uXSBEb24ndCBjYWxsIGZjbnRsLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTYxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRnVqaWkgSGlyb25vcmkuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvcmVt
b3RlL3NvY2tldC9wb3NpeC9SZW1vdGVJbnNwZWN0b3JTb2NrZXRQT1NJWC5jcHA6CisgICAgICAg
IChJbnNwZWN0b3I6OlNvY2tldDo6c2V0dXApOgorICAgICAgICBVc2UgV1RGOjpzZXRDbG9zZU9u
RXhlYyBhbmQgV1RGOjpzZXROb25CbG9jay4KKwogMjAxOS0wNS0yMCAgQ2FybG9zIEdhcmNpYSBD
YW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dMSUJdIENyYXNoIHdoZW4g
aW5zdGFudGlhdGluZyBhIGpzIG9iamVjdCByZWdpc3RlcmVkIHdpdGgganNjX2NvbnRleHRfcmVn
aXN0ZXJfY2xhc3Mgb24gd2luZG93IG9iamVjdCBjbGVhcmVkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAzODUwMzU2ZjM3ZDJi
NDM0NWYzZjdhOWM2Nzc1YjgxMGRmZTAzNTMuLjZlNDMyNmQ3YjE4ODYxOGJmYTE0NWQ1NTUzOWUy
MjkxYmIwODhhZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTktMDUtMjEgIFJvc3MgS2lyc2xp
bmcgIDxyb3NzLmtpcnNsaW5nQHNvbnkuY29tPgorCisgICAgICAgIFtQbGF5U3RhdGlvbl0gRG9u
J3QgY2FsbCBmY250bC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE5Nzk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IEZ1amlpIEhpcm9ub3JpLgorCisg
ICAgICAgICogd3RmL1BsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUpT
Q09ubHkuY21ha2U6CisgICAgICAgICogd3RmL1BsYXRmb3JtUGxheVN0YXRpb24uY21ha2U6Cisg
ICAgICAgICogd3RmL1BsYXRmb3JtV1BFLmNtYWtlOgorICAgICAgICAqIHd0Zi9VbmlTdGRFeHRy
YXMuaDoKKyAgICAgICAgKiB3dGYvcGxheXN0YXRpb24vVW5pU3RkRXh0cmFzUGxheVN0YXRpb24u
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdURjo6c2V0Q2xvc2VPbkV4ZWMpOgorICAgICAgICAoV1RG
OjpkdXBDbG9zZU9uRXhlYyk6CisgICAgICAgIChXVEY6OnNldE5vbkJsb2NrKToKKyAgICAgICAg
KiB3dGYvdW5peC9VbmlTdGRFeHRyYXNVbml4LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XVEYv
d3RmL1VuaVN0ZEV4dHJhcy5jcHAuCisgICAgICAgIChXVEY6OnNldE5vbkJsb2NrKToKKyAgICAg
ICAgTW92ZSBVbmlTdGRFeHRyYXMgdG8gdW5peC8sIGFkZCBhIFBsYXlTdGF0aW9uIHZlcnNpb24g
dGhhdCBkb2Vzbid0IHVzZSBmY250bCwgYWRkIGFuIGFic3RyYWN0aW9uIGZvciBPX05PTkJMT0NL
LgorCiAyMDE5LTA1LTIwICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNv
bT4KIAogICAgICAgICBbR0xJQl0gUmVwZWF0aW5nIHRpbWVyIGlzIG5vdCBzdG9wcGVkIHdoZW4g
c3RvcCBpcyBjYWxsZWQgZnJvbSB0aGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZTRhZjQ0Y2YyZTk4
ZDc3MmNlYWYxNTEzNTk1OGE4ZmExZWYzNDljMi4uY2U5YzUyZTNiMWU2ZjY2NTI4ZTU1NDkwZDg5
N2NmMzU3YTdiZGRlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0wNS0yMSAgUm9z
cyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAgW1BsYXlTdGF0
aW9uXSBEb24ndCBjYWxsIGZjbnRsLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTk3OTYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRnVqaWkgSGlyb25v
cmkuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHA6Cisg
ICAgICAgIChJUEM6OkNvbm5lY3Rpb246Om9wZW4pOgorICAgICAgICBVc2UgV1RGOjpzZXROb25C
bG9jay4KKwogMjAxOS0wNS0yMCAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgW21hY09TXSBTVFAgY2FuJ3QgbGF1bmNoIGFueSBXZWJDb250ZW50IHByb2Nl
c3NlcwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUv
c29ja2V0L3Bvc2l4L1JlbW90ZUluc3BlY3RvclNvY2tldFBPU0lYLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL3NvY2tldC9wb3NpeC9SZW1vdGVJbnNwZWN0b3JT
b2NrZXRQT1NJWC5jcHAKaW5kZXggOWEyNWE2ODRlZDEzNzBlMTFjZGIwNDViYWEyZTJmZDY4ZmU4
Y2Q4MC4uNzAzN2M0YWY2YjY5YWY1NmJjMjE4Mjc3ZDAzZGZjMDIxMWRkOWJhOCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvc29ja2V0L3Bvc2l4L1Jl
bW90ZUluc3BlY3RvclNvY2tldFBPU0lYLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL3JlbW90ZS9zb2NrZXQvcG9zaXgvUmVtb3RlSW5zcGVjdG9yU29ja2V0UE9TSVgu
Y3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2luY2x1ZGUg
PHN5cy91bi5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHd0Zi9VbmlTdGRFeHRy
YXMuaD4KIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKQEAgLTEzOCw5ICsxMzksOCBAQCBPcHRp
b25hbDxzdGQ6OmFycmF5PFBsYXRmb3JtU29ja2V0VHlwZSwgMj4+IGNyZWF0ZVBhaXIoKQogCiB2
b2lkIHNldHVwKFBsYXRmb3JtU29ja2V0VHlwZSBzb2NrZXQpCiB7Ci0gICAgZmNudGwoc29ja2V0
LCBGX1NFVEZELCBGRF9DTE9FWEVDKTsKLSAgICBpbnQgZmxhZ3MgPSBmY250bChzb2NrZXQsIEZf
R0VURkwsIDApOwotICAgIGZjbnRsKHNvY2tldCwgRl9TRVRGTCwgZmxhZ3MgfCBPX05PTkJMT0NL
KTsKKyAgICBzZXRDbG9zZU9uRXhlYyhzb2NrZXQpOworICAgIHNldE5vbkJsb2NrKHNvY2tldCk7
CiAKICAgICBzZXRzb2Nrb3B0KHNvY2tldCwgU09MX1NPQ0tFVCwgU09fUkNWQlVGLCAmQnVmZmVy
U2l6ZSwgc2l6ZW9mKEJ1ZmZlclNpemUpKTsKICAgICBzZXRzb2Nrb3B0KHNvY2tldCwgU09MX1NP
Q0tFVCwgU09fU05EQlVGLCAmQnVmZmVyU2l6ZSwgc2l6ZW9mKEJ1ZmZlclNpemUpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNlL1dURi93dGYv
UGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjk3ZDBmYTJjNzhmMzk2MWIwZjRjM2UxNzE5M2ZiYTZl
NWU0YTNmNS4uNjBiMzdiZDk2YjIyODI4Zjg4YzFmMmU4OWViMGIwMGRjY2JjM2Q5OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dURi93
dGYvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTE3LDggKzE3LDYgQEAgaWYgKENNQUtFX1NZU1RFTV9O
QU1FIE1BVENIRVMgIkxpbnV4IikKIGVuZGlmICgpCiAKIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VT
Ci0gICAgVW5pU3RkRXh0cmFzLmNwcAotCiAgICAgZ2VuZXJpYy9NYWluVGhyZWFkR2VuZXJpYy5j
cHAKICAgICBnZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCiAKQEAgLTM1LDYgKzMzLDcgQEAg
bGlzdChBUFBFTkQgV1RGX1NPVVJDRVMKIAogICAgIHVuaXgvQ1BVVGltZVVuaXguY3BwCiAgICAg
dW5peC9MYW5ndWFnZVVuaXguY3BwCisgICAgdW5peC9VbmlTdGRFeHRyYXNVbml4LmNwcAogKQog
CiBpZiAoQ01BS0VfU1lTVEVNX05BTUUgTUFUQ0hFUyAiTGludXgiKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1KU0NPbmx5LmNtYWtlIGIvU291cmNlL1dURi93dGYvUGxhdGZv
cm1KU0NPbmx5LmNtYWtlCmluZGV4IDUzOTJiZWIwMjNlZjY0ODc2ZWU1OGQ2MzdmOGJlZTBlMDEw
ODhiYmEuLjBkYWUwYWI5NTA1YjczMWQ2NGM0ZjQ5NzgwMzE4Mzk1YWNkMGM1Y2EgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSlNDT25seS5jbWFrZQorKysgYi9Tb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybUpTQ09ubHkuY21ha2UKQEAgLTI5LDggKzI5LDYgQEAgaWYgKFdJTjMyKQog
ICAgICkKIGVsc2UgKCkKICAgICBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwotICAgICAgICBVbmlT
dGRFeHRyYXMuY3BwCi0KICAgICAgICAgZ2VuZXJpYy9NYWluVGhyZWFkR2VuZXJpYy5jcHAKIAog
ICAgICAgICBwb3NpeC9GaWxlU3lzdGVtUE9TSVguY3BwCkBAIC00MCw2ICszOCw3IEBAIGVsc2Ug
KCkKICAgICAgICAgdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VVbml4LmNw
cAogCiAgICAgICAgIHVuaXgvTGFuZ3VhZ2VVbml4LmNwcAorICAgICAgICB1bml4L1VuaVN0ZEV4
dHJhc1VuaXguY3BwCiAgICAgKQogICAgIGlmIChXVEZfT1NfRlVDSFNJQSkKICAgICAgICAgbGlz
dChBUFBFTkQgV1RGX1NPVVJDRVMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
UGxheVN0YXRpb24uY21ha2UgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVBsYXlTdGF0aW9uLmNt
YWtlCmluZGV4IDkzMmIyYTNkYTcyNTA3ZTQ1Y2UxYWI2YTYxY2M0ZDMzNGFkOWQ3YzAuLmRkZmU2
OGE1MTM4MDJiYjViOWY0ODFlMmRkOWZiNDFmNDJiYWVjMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL1BsYXRmb3JtUGxheVN0YXRpb24uY21ha2UKKysrIGIvU291cmNlL1dURi93dGYvUGxh
dGZvcm1QbGF5U3RhdGlvbi5jbWFrZQpAQCAtNSw2ICs1LDggQEAgbGlzdChBUFBFTkQgV1RGX1NP
VVJDRVMKICAgICBnZW5lcmljL1J1bkxvb3BHZW5lcmljLmNwcAogICAgIGdlbmVyaWMvV29ya1F1
ZXVlR2VuZXJpYy5jcHAKIAorICAgIHBsYXlzdGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9u
LmNwcAorCiAgICAgcG9zaXgvRmlsZVN5c3RlbVBPU0lYLmNwcAogICAgIHBvc2l4L09TQWxsb2Nh
dG9yUE9TSVguY3BwCiAgICAgcG9zaXgvVGhyZWFkaW5nUE9TSVguY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVdQRS5jbWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
V1BFLmNtYWtlCmluZGV4IDc3ODdjZmVmNWIyZTMxMWFlODg0YjU5MTZkOGJmNDVhMmE3YzA0ZmEu
LmFiMjczZTdjMzlmN2Q3N2YxZmU0MTQ1NjQzNTI0YmFiNzBiMjQ4NDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtV1BFLmNtYWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtV1BFLmNtYWtlCkBAIC0xMSw4ICsxMSw2IEBAIGxpc3QoQVBQRU5EIFdURl9QVUJMSUNfSEVB
REVSUwogKQogCiBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwotICAgIFVuaVN0ZEV4dHJhcy5jcHAK
LQogICAgIGdlbmVyaWMvTWFpblRocmVhZEdlbmVyaWMuY3BwCiAgICAgZ2VuZXJpYy9NZW1vcnlG
b290cHJpbnRHZW5lcmljLmNwcAogICAgIGdlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAKQEAg
LTMzLDYgKzMxLDcgQEAgbGlzdChBUFBFTkQgV1RGX1NPVVJDRVMKIAogICAgIHVuaXgvQ1BVVGlt
ZVVuaXguY3BwCiAgICAgdW5peC9MYW5ndWFnZVVuaXguY3BwCisgICAgdW5peC9VbmlTdGRFeHRy
YXNVbml4LmNwcAogKQogCiBsaXN0KEFQUEVORCBXVEZfTElCUkFSSUVTCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMuY3BwIGIvU291cmNlL1dURi93dGYvVW5pU3RkRXh0
cmFzLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWEzNGFiNGJkMDFmM2JiY2My
MmNkZmNkYzBjMjFmNDNhODNkZjFhOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMuY3BwCisrKyAvZGV2L251
bGwKQEAgLTEsNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBJZ2FsaWEgUy5M
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
Ci0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVJTIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgPHd0Zi9VbmlTdGRFeHRy
YXMuaD4KLQotI2luY2x1ZGUgPGZjbnRsLmg+Ci0KLW5hbWVzcGFjZSBXVEYgewotCi1ib29sIHNl
dENsb3NlT25FeGVjKGludCBmaWxlRGVzY3JpcHRvcikKLXsKLSAgICBpbnQgcmV0dXJuVmFsdWUg
PSAtMTsKLSAgICBkbyB7Ci0gICAgICAgIGludCBmbGFncyA9IGZjbnRsKGZpbGVEZXNjcmlwdG9y
LCBGX0dFVEZEKTsKLSAgICAgICAgaWYgKGZsYWdzICE9IC0xKQotICAgICAgICAgICAgcmV0dXJu
VmFsdWUgPSBmY250bChmaWxlRGVzY3JpcHRvciwgRl9TRVRGRCwgZmxhZ3MgfCBGRF9DTE9FWEVD
KTsKLSAgICB9IHdoaWxlIChyZXR1cm5WYWx1ZSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUik7Ci0K
LSAgICByZXR1cm4gcmV0dXJuVmFsdWUgIT0gLTE7Ci19Ci0KLWludCBkdXBDbG9zZU9uRXhlYyhp
bnQgZmlsZURlc2NyaXB0b3IpCi17Ci0gICAgaW50IGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvciA9
IC0xOwotI2lmZGVmIEZfRFVQRkRfQ0xPRVhFQwotICAgIHdoaWxlICgoZHVwbGljYXRlZEZpbGVE
ZXNjcmlwdG9yID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfRFVQRkRfQ0xPRVhFQywgMCkpID09
IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KLSAgICBpZiAoZHVwbGljYXRlZEZpbGVEZXNjcmlw
dG9yICE9IC0xKQotICAgICAgICByZXR1cm4gZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yOwotCi0j
ZW5kaWYKLQotICAgIHdoaWxlICgoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yID0gZHVwKGZpbGVE
ZXNjcmlwdG9yKSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsgfQotICAgIGlmIChkdXBsaWNh
dGVkRmlsZURlc2NyaXB0b3IgPT0gLTEpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIGlmICgh
c2V0Q2xvc2VPbkV4ZWMoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yKSkgewotICAgICAgICBjbG9z
ZVdpdGhSZXRyeShkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IpOwotICAgICAgICByZXR1cm4gLTE7
Ci0gICAgfQotCi0gICAgcmV0dXJuIGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcjsKLX0KLQotfSAv
LyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMu
aCBiL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCmluZGV4IGI2NzM2ZTM3ZWQ1ODQ2M2I4
YWE2ZTk4MWY3YjI4ZmExNDM3ODM4ZjMuLmI3OWRmZTdkY2ZlZjcxNzVlZDk2MWE2ZWMyNjI4NTRl
ZTE2NjRkYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCisrKyBi
L1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCkBAIC01MCwxMCArNTAsMTMgQEAgaW5saW5l
IGludCBjbG9zZVdpdGhSZXRyeShpbnQgZmlsZURlc2NyaXB0b3IpCiAgICAgcmV0dXJuIHJldDsK
IH0KIAorV1RGX0VYUE9SVF9QUklWQVRFIGJvb2wgc2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlw
dG9yKTsKKwogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Y2xvc2VXaXRoUmV0cnk7
Ci11c2luZyBXVEY6OnNldENsb3NlT25FeGVjOwogdXNpbmcgV1RGOjpkdXBDbG9zZU9uRXhlYzsK
K3VzaW5nIFdURjo6c2V0Q2xvc2VPbkV4ZWM7Cit1c2luZyBXVEY6OnNldE5vbkJsb2NrOwogCiAj
ZW5kaWYgLy8gVW5pU3RkRXh0cmFzX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3BsYXlz
dGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9uLmNwcCBiL1NvdXJjZS9XVEYvd3RmL3BsYXlz
dGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9uLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MTAyMWMyMWIz
ZmNhNDJhZTU5OTkwMjMzMmZlY2Y4ODIxNTg5ZWY0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dURi93dGYvcGxheXN0YXRpb24vVW5pU3RkRXh0cmFzUGxheVN0YXRpb24uY3BwCkBAIC0wLDAg
KzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgU29ueSBJbnRlcmFjdGl2ZSBFbnRl
cnRhaW5tZW50IEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
PHd0Zi9VbmlTdGRFeHRyYXMuaD4KKworI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKworbmFtZXNw
YWNlIFdURiB7CisKK2Jvb2wgc2V0Q2xvc2VPbkV4ZWMoaW50KQoreworICAgIHJldHVybiB0cnVl
OworfQorCitpbnQgZHVwQ2xvc2VPbkV4ZWMoaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGlu
dCBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPSAtMTsKKworICAgIHdoaWxlICgoZHVwbGljYXRl
ZEZpbGVEZXNjcmlwdG9yID0gZHVwKGZpbGVEZXNjcmlwdG9yKSkgPT0gLTEgJiYgZXJybm8gPT0g
RUlOVFIpIHsgfQorICAgIGlmIChkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPT0gLTEpCisgICAg
ICAgIHJldHVybiAtMTsKKworICAgIHJldHVybiBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3I7Cit9
CisKK2Jvb2wgc2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCBub25C
bG9ja2luZyA9IDE7CisgICAgcmV0dXJuIHNldHNvY2tvcHQoZmlsZURlc2NyaXB0b3IsIFNPTF9T
T0NLRVQsIFNPX05CSU8sICZub25CbG9ja2luZywgc2l6ZW9mKGludCkpICE9IC0xOworfQorCit9
IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3VuaXgvVW5pU3Rk
RXh0cmFzVW5peC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91bml4L1VuaVN0ZEV4dHJhc1VuaXguY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjExNWY3NzBlYmJhMGM1MTE4OWE4YzA4MjQwNGY5ZTI5MTcwNzNkZDQKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi91bml4L1VuaVN0ZEV4dHJhc1VuaXguY3Bw
CkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYgSWdhbGlhIFMuTC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFz
Lmg+CisKKyNpbmNsdWRlIDxmY250bC5oPgorCituYW1lc3BhY2UgV1RGIHsKKworYm9vbCBzZXRD
bG9zZU9uRXhlYyhpbnQgZmlsZURlc2NyaXB0b3IpCit7CisgICAgaW50IHJldHVyblZhbHVlID0g
LTE7CisgICAgZG8geworICAgICAgICBpbnQgZmxhZ3MgPSBmY250bChmaWxlRGVzY3JpcHRvciwg
Rl9HRVRGRCk7CisgICAgICAgIGlmIChmbGFncyAhPSAtMSkKKyAgICAgICAgICAgIHJldHVyblZh
bHVlID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfU0VURkQsIGZsYWdzIHwgRkRfQ0xPRVhFQyk7
CisgICAgfSB3aGlsZSAocmV0dXJuVmFsdWUgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpOworCisg
ICAgcmV0dXJuIHJldHVyblZhbHVlICE9IC0xOworfQorCitpbnQgZHVwQ2xvc2VPbkV4ZWMoaW50
IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPSAt
MTsKKyNpZmRlZiBGX0RVUEZEX0NMT0VYRUMKKyAgICB3aGlsZSAoKGR1cGxpY2F0ZWRGaWxlRGVz
Y3JpcHRvciA9IGZjbnRsKGZpbGVEZXNjcmlwdG9yLCBGX0RVUEZEX0NMT0VYRUMsIDApKSA9PSAt
MSAmJiBlcnJubyA9PSBFSU5UUikgeyB9CisgICAgaWYgKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRv
ciAhPSAtMSkKKyAgICAgICAgcmV0dXJuIGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcjsKKworI2Vu
ZGlmCisKKyAgICB3aGlsZSAoKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvciA9IGR1cChmaWxlRGVz
Y3JpcHRvcikpID09IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KKyAgICBpZiAoZHVwbGljYXRl
ZEZpbGVEZXNjcmlwdG9yID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAoIXNl
dENsb3NlT25FeGVjKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcikpIHsKKyAgICAgICAgY2xvc2VX
aXRoUmV0cnkoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yKTsKKyAgICAgICAgcmV0dXJuIC0xOwor
ICAgIH0KKworICAgIHJldHVybiBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3I7Cit9CisKK2Jvb2wg
c2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCByZXR1cm5WYWx1ZSA9
IC0xOworCisgICAgaW50IGZsYWdzID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfR0VURkwsIDAp
OworICAgIHdoaWxlICgocmV0dXJuVmFsdWUgPSBmY250bChmaWxlRGVzY3JpcHRvciwgRl9TRVRG
TCwgZmxhZ3MgfCBPX05PTkJMT0NLKSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsgfQorCisg
ICAgcmV0dXJuIHJldHVyblZhbHVlICE9IC0xOworfQorCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL3VuaXgvQ29ubmVjdGlvblVuaXgu
Y3BwIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAK
aW5kZXggNGYzYWIxNDYwOGI0YmZkMmU2NWEwNDEwMmM0ZDQ4YWM1YzZhZDY1Ni4uODJhN2I2Y2Ex
ZTZjNTYwZmViMDk4OTc0Mzg4YWRmNWFlNGM2MjA2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAKQEAgLTMzMSwxMiArMzMxLDkg
QEAgdm9pZCBDb25uZWN0aW9uOjpyZWFkeVJlYWRIYW5kbGVyKCkKIAogYm9vbCBDb25uZWN0aW9u
OjpvcGVuKCkKIHsKLSAgICBpbnQgZmxhZ3MgPSBmY250bChtX3NvY2tldERlc2NyaXB0b3IsIEZf
R0VURkwsIDApOwotICAgIHdoaWxlIChmY250bChtX3NvY2tldERlc2NyaXB0b3IsIEZfU0VURkws
IGZsYWdzIHwgT19OT05CTE9DSykgPT0gLTEpIHsKLSAgICAgICAgaWYgKGVycm5vICE9IEVJTlRS
KSB7Ci0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICAgICAgfQorICAgIGlmICghc2V0Tm9uQmxvY2soZmlsZURlc2NyaXB0b3Ip
KSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgfQogCiAgICAgUmVmUHRyPENvbm5lY3Rpb24+IHByb3RlY3RlZFRoaXModGhpcyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370358</attachid>
            <date>2019-05-21 17:04:37 -0700</date>
            <delta_ts>2019-05-21 17:54:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197961-20190521170436.patch</filename>
            <type>text/plain</type>
            <size>15563</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1NTM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZWY4NWQ5MDFjMTNmNzM2MWM0ZGNkZWFmNDg4MWI5YWRmOTU4ZjhiLi5iNzBkNjM4ZDI1NGNkOWVl
ZGUzNDE5YTQ2YzgwMDg5MjkzZjI0MzY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxOS0wNS0yMSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW1BsYXlTdGF0aW9uXSBEb24ndCBjYWxsIGZjbnRsLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTYxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRnVqaWkgSGlyb25vcmkuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvcmVt
b3RlL3NvY2tldC9wb3NpeC9SZW1vdGVJbnNwZWN0b3JTb2NrZXRQT1NJWC5jcHA6CisgICAgICAg
IChJbnNwZWN0b3I6OlNvY2tldDo6c2V0dXApOgorICAgICAgICBVc2UgV1RGOjpzZXRDbG9zZU9u
RXhlYyBhbmQgV1RGOjpzZXROb25CbG9jay4KKwogMjAxOS0wNS0yMCAgQ2FybG9zIEdhcmNpYSBD
YW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dMSUJdIENyYXNoIHdoZW4g
aW5zdGFudGlhdGluZyBhIGpzIG9iamVjdCByZWdpc3RlcmVkIHdpdGgganNjX2NvbnRleHRfcmVn
aXN0ZXJfY2xhc3Mgb24gd2luZG93IG9iamVjdCBjbGVhcmVkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAzODUwMzU2ZjM3ZDJi
NDM0NWYzZjdhOWM2Nzc1YjgxMGRmZTAzNTMuLjZlNDMyNmQ3YjE4ODYxOGJmYTE0NWQ1NTUzOWUy
MjkxYmIwODhhZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTktMDUtMjEgIFJvc3MgS2lyc2xp
bmcgIDxyb3NzLmtpcnNsaW5nQHNvbnkuY29tPgorCisgICAgICAgIFtQbGF5U3RhdGlvbl0gRG9u
J3QgY2FsbCBmY250bC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE5Nzk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IEZ1amlpIEhpcm9ub3JpLgorCisg
ICAgICAgICogd3RmL1BsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUpT
Q09ubHkuY21ha2U6CisgICAgICAgICogd3RmL1BsYXRmb3JtUGxheVN0YXRpb24uY21ha2U6Cisg
ICAgICAgICogd3RmL1BsYXRmb3JtV1BFLmNtYWtlOgorICAgICAgICAqIHd0Zi9VbmlTdGRFeHRy
YXMuaDoKKyAgICAgICAgKiB3dGYvcGxheXN0YXRpb24vVW5pU3RkRXh0cmFzUGxheVN0YXRpb24u
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdURjo6c2V0Q2xvc2VPbkV4ZWMpOgorICAgICAgICAoV1RG
OjpkdXBDbG9zZU9uRXhlYyk6CisgICAgICAgIChXVEY6OnNldE5vbkJsb2NrKToKKyAgICAgICAg
KiB3dGYvdW5peC9VbmlTdGRFeHRyYXNVbml4LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XVEYv
d3RmL1VuaVN0ZEV4dHJhcy5jcHAuCisgICAgICAgIChXVEY6OnNldE5vbkJsb2NrKToKKyAgICAg
ICAgTW92ZSBVbmlTdGRFeHRyYXMgdG8gdW5peC8sIGFkZCBhIFBsYXlTdGF0aW9uIHZlcnNpb24g
dGhhdCBkb2Vzbid0IHVzZSBmY250bCwgYWRkIGFuIGFic3RyYWN0aW9uIGZvciBPX05PTkJMT0NL
LgorCiAyMDE5LTA1LTIwICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNv
bT4KIAogICAgICAgICBbR0xJQl0gUmVwZWF0aW5nIHRpbWVyIGlzIG5vdCBzdG9wcGVkIHdoZW4g
c3RvcCBpcyBjYWxsZWQgZnJvbSB0aGUgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZTRhZjQ0Y2YyZTk4
ZDc3MmNlYWYxNTEzNTk1OGE4ZmExZWYzNDljMi4uY2U5YzUyZTNiMWU2ZjY2NTI4ZTU1NDkwZDg5
N2NmMzU3YTdiZGRlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0wNS0yMSAgUm9z
cyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAgW1BsYXlTdGF0
aW9uXSBEb24ndCBjYWxsIGZjbnRsLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTk3OTYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRnVqaWkgSGlyb25v
cmkuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHA6Cisg
ICAgICAgIChJUEM6OkNvbm5lY3Rpb246Om9wZW4pOgorICAgICAgICBVc2UgV1RGOjpzZXROb25C
bG9jay4KKwogMjAxOS0wNS0yMCAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgW21hY09TXSBTVFAgY2FuJ3QgbGF1bmNoIGFueSBXZWJDb250ZW50IHByb2Nl
c3NlcwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUv
c29ja2V0L3Bvc2l4L1JlbW90ZUluc3BlY3RvclNvY2tldFBPU0lYLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL3NvY2tldC9wb3NpeC9SZW1vdGVJbnNwZWN0b3JT
b2NrZXRQT1NJWC5jcHAKaW5kZXggOWEyNWE2ODRlZDEzNzBlMTFjZGIwNDViYWEyZTJmZDY4ZmU4
Y2Q4MC4uNzAzN2M0YWY2YjY5YWY1NmJjMjE4Mjc3ZDAzZGZjMDIxMWRkOWJhOCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvc29ja2V0L3Bvc2l4L1Jl
bW90ZUluc3BlY3RvclNvY2tldFBPU0lYLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL3JlbW90ZS9zb2NrZXQvcG9zaXgvUmVtb3RlSW5zcGVjdG9yU29ja2V0UE9TSVgu
Y3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2luY2x1ZGUg
PHN5cy91bi5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHd0Zi9VbmlTdGRFeHRy
YXMuaD4KIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKQEAgLTEzOCw5ICsxMzksOCBAQCBPcHRp
b25hbDxzdGQ6OmFycmF5PFBsYXRmb3JtU29ja2V0VHlwZSwgMj4+IGNyZWF0ZVBhaXIoKQogCiB2
b2lkIHNldHVwKFBsYXRmb3JtU29ja2V0VHlwZSBzb2NrZXQpCiB7Ci0gICAgZmNudGwoc29ja2V0
LCBGX1NFVEZELCBGRF9DTE9FWEVDKTsKLSAgICBpbnQgZmxhZ3MgPSBmY250bChzb2NrZXQsIEZf
R0VURkwsIDApOwotICAgIGZjbnRsKHNvY2tldCwgRl9TRVRGTCwgZmxhZ3MgfCBPX05PTkJMT0NL
KTsKKyAgICBzZXRDbG9zZU9uRXhlYyhzb2NrZXQpOworICAgIHNldE5vbkJsb2NrKHNvY2tldCk7
CiAKICAgICBzZXRzb2Nrb3B0KHNvY2tldCwgU09MX1NPQ0tFVCwgU09fUkNWQlVGLCAmQnVmZmVy
U2l6ZSwgc2l6ZW9mKEJ1ZmZlclNpemUpKTsKICAgICBzZXRzb2Nrb3B0KHNvY2tldCwgU09MX1NP
Q0tFVCwgU09fU05EQlVGLCAmQnVmZmVyU2l6ZSwgc2l6ZW9mKEJ1ZmZlclNpemUpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtR1RLLmNtYWtlIGIvU291cmNlL1dURi93dGYv
UGxhdGZvcm1HVEsuY21ha2UKaW5kZXggMjk3ZDBmYTJjNzhmMzk2MWIwZjRjM2UxNzE5M2ZiYTZl
NWU0YTNmNS4uNjBiMzdiZDk2YjIyODI4Zjg4YzFmMmU4OWViMGIwMGRjY2JjM2Q5OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1HVEsuY21ha2UKKysrIGIvU291cmNlL1dURi93
dGYvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTE3LDggKzE3LDYgQEAgaWYgKENNQUtFX1NZU1RFTV9O
QU1FIE1BVENIRVMgIkxpbnV4IikKIGVuZGlmICgpCiAKIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VT
Ci0gICAgVW5pU3RkRXh0cmFzLmNwcAotCiAgICAgZ2VuZXJpYy9NYWluVGhyZWFkR2VuZXJpYy5j
cHAKICAgICBnZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCiAKQEAgLTM1LDYgKzMzLDcgQEAg
bGlzdChBUFBFTkQgV1RGX1NPVVJDRVMKIAogICAgIHVuaXgvQ1BVVGltZVVuaXguY3BwCiAgICAg
dW5peC9MYW5ndWFnZVVuaXguY3BwCisgICAgdW5peC9VbmlTdGRFeHRyYXNVbml4LmNwcAogKQog
CiBpZiAoQ01BS0VfU1lTVEVNX05BTUUgTUFUQ0hFUyAiTGludXgiKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1KU0NPbmx5LmNtYWtlIGIvU291cmNlL1dURi93dGYvUGxhdGZv
cm1KU0NPbmx5LmNtYWtlCmluZGV4IDUzOTJiZWIwMjNlZjY0ODc2ZWU1OGQ2MzdmOGJlZTBlMDEw
ODhiYmEuLjBkYWUwYWI5NTA1YjczMWQ2NGM0ZjQ5NzgwMzE4Mzk1YWNkMGM1Y2EgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSlNDT25seS5jbWFrZQorKysgYi9Tb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybUpTQ09ubHkuY21ha2UKQEAgLTI5LDggKzI5LDYgQEAgaWYgKFdJTjMyKQog
ICAgICkKIGVsc2UgKCkKICAgICBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwotICAgICAgICBVbmlT
dGRFeHRyYXMuY3BwCi0KICAgICAgICAgZ2VuZXJpYy9NYWluVGhyZWFkR2VuZXJpYy5jcHAKIAog
ICAgICAgICBwb3NpeC9GaWxlU3lzdGVtUE9TSVguY3BwCkBAIC00MCw2ICszOCw3IEBAIGVsc2Ug
KCkKICAgICAgICAgdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VVbml4LmNw
cAogCiAgICAgICAgIHVuaXgvTGFuZ3VhZ2VVbml4LmNwcAorICAgICAgICB1bml4L1VuaVN0ZEV4
dHJhc1VuaXguY3BwCiAgICAgKQogICAgIGlmIChXVEZfT1NfRlVDSFNJQSkKICAgICAgICAgbGlz
dChBUFBFTkQgV1RGX1NPVVJDRVMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
UGxheVN0YXRpb24uY21ha2UgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVBsYXlTdGF0aW9uLmNt
YWtlCmluZGV4IDkzMmIyYTNkYTcyNTA3ZTQ1Y2UxYWI2YTYxY2M0ZDMzNGFkOWQ3YzAuLmRkZmU2
OGE1MTM4MDJiYjViOWY0ODFlMmRkOWZiNDFmNDJiYWVjMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL1BsYXRmb3JtUGxheVN0YXRpb24uY21ha2UKKysrIGIvU291cmNlL1dURi93dGYvUGxh
dGZvcm1QbGF5U3RhdGlvbi5jbWFrZQpAQCAtNSw2ICs1LDggQEAgbGlzdChBUFBFTkQgV1RGX1NP
VVJDRVMKICAgICBnZW5lcmljL1J1bkxvb3BHZW5lcmljLmNwcAogICAgIGdlbmVyaWMvV29ya1F1
ZXVlR2VuZXJpYy5jcHAKIAorICAgIHBsYXlzdGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9u
LmNwcAorCiAgICAgcG9zaXgvRmlsZVN5c3RlbVBPU0lYLmNwcAogICAgIHBvc2l4L09TQWxsb2Nh
dG9yUE9TSVguY3BwCiAgICAgcG9zaXgvVGhyZWFkaW5nUE9TSVguY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVdQRS5jbWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
V1BFLmNtYWtlCmluZGV4IDc3ODdjZmVmNWIyZTMxMWFlODg0YjU5MTZkOGJmNDVhMmE3YzA0ZmEu
LmFiMjczZTdjMzlmN2Q3N2YxZmU0MTQ1NjQzNTI0YmFiNzBiMjQ4NDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtV1BFLmNtYWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtV1BFLmNtYWtlCkBAIC0xMSw4ICsxMSw2IEBAIGxpc3QoQVBQRU5EIFdURl9QVUJMSUNfSEVB
REVSUwogKQogCiBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwotICAgIFVuaVN0ZEV4dHJhcy5jcHAK
LQogICAgIGdlbmVyaWMvTWFpblRocmVhZEdlbmVyaWMuY3BwCiAgICAgZ2VuZXJpYy9NZW1vcnlG
b290cHJpbnRHZW5lcmljLmNwcAogICAgIGdlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAKQEAg
LTMzLDYgKzMxLDcgQEAgbGlzdChBUFBFTkQgV1RGX1NPVVJDRVMKIAogICAgIHVuaXgvQ1BVVGlt
ZVVuaXguY3BwCiAgICAgdW5peC9MYW5ndWFnZVVuaXguY3BwCisgICAgdW5peC9VbmlTdGRFeHRy
YXNVbml4LmNwcAogKQogCiBsaXN0KEFQUEVORCBXVEZfTElCUkFSSUVTCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMuY3BwIGIvU291cmNlL1dURi93dGYvVW5pU3RkRXh0
cmFzLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWEzNGFiNGJkMDFmM2JiY2My
MmNkZmNkYzBjMjFmNDNhODNkZjFhOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMuY3BwCisrKyAvZGV2L251
bGwKQEAgLTEsNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBJZ2FsaWEgUy5M
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
Ci0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVJTIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgPHd0Zi9VbmlTdGRFeHRy
YXMuaD4KLQotI2luY2x1ZGUgPGZjbnRsLmg+Ci0KLW5hbWVzcGFjZSBXVEYgewotCi1ib29sIHNl
dENsb3NlT25FeGVjKGludCBmaWxlRGVzY3JpcHRvcikKLXsKLSAgICBpbnQgcmV0dXJuVmFsdWUg
PSAtMTsKLSAgICBkbyB7Ci0gICAgICAgIGludCBmbGFncyA9IGZjbnRsKGZpbGVEZXNjcmlwdG9y
LCBGX0dFVEZEKTsKLSAgICAgICAgaWYgKGZsYWdzICE9IC0xKQotICAgICAgICAgICAgcmV0dXJu
VmFsdWUgPSBmY250bChmaWxlRGVzY3JpcHRvciwgRl9TRVRGRCwgZmxhZ3MgfCBGRF9DTE9FWEVD
KTsKLSAgICB9IHdoaWxlIChyZXR1cm5WYWx1ZSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUik7Ci0K
LSAgICByZXR1cm4gcmV0dXJuVmFsdWUgIT0gLTE7Ci19Ci0KLWludCBkdXBDbG9zZU9uRXhlYyhp
bnQgZmlsZURlc2NyaXB0b3IpCi17Ci0gICAgaW50IGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvciA9
IC0xOwotI2lmZGVmIEZfRFVQRkRfQ0xPRVhFQwotICAgIHdoaWxlICgoZHVwbGljYXRlZEZpbGVE
ZXNjcmlwdG9yID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfRFVQRkRfQ0xPRVhFQywgMCkpID09
IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KLSAgICBpZiAoZHVwbGljYXRlZEZpbGVEZXNjcmlw
dG9yICE9IC0xKQotICAgICAgICByZXR1cm4gZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yOwotCi0j
ZW5kaWYKLQotICAgIHdoaWxlICgoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yID0gZHVwKGZpbGVE
ZXNjcmlwdG9yKSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsgfQotICAgIGlmIChkdXBsaWNh
dGVkRmlsZURlc2NyaXB0b3IgPT0gLTEpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIGlmICgh
c2V0Q2xvc2VPbkV4ZWMoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yKSkgewotICAgICAgICBjbG9z
ZVdpdGhSZXRyeShkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IpOwotICAgICAgICByZXR1cm4gLTE7
Ci0gICAgfQotCi0gICAgcmV0dXJuIGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcjsKLX0KLQotfSAv
LyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9VbmlTdGRFeHRyYXMu
aCBiL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCmluZGV4IGI2NzM2ZTM3ZWQ1ODQ2M2I4
YWE2ZTk4MWY3YjI4ZmExNDM3ODM4ZjMuLmI3OWRmZTdkY2ZlZjcxNzVlZDk2MWE2ZWMyNjI4NTRl
ZTE2NjRkYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCisrKyBi
L1NvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5oCkBAIC01MCwxMCArNTAsMTMgQEAgaW5saW5l
IGludCBjbG9zZVdpdGhSZXRyeShpbnQgZmlsZURlc2NyaXB0b3IpCiAgICAgcmV0dXJuIHJldDsK
IH0KIAorV1RGX0VYUE9SVF9QUklWQVRFIGJvb2wgc2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlw
dG9yKTsKKwogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Y2xvc2VXaXRoUmV0cnk7
Ci11c2luZyBXVEY6OnNldENsb3NlT25FeGVjOwogdXNpbmcgV1RGOjpkdXBDbG9zZU9uRXhlYzsK
K3VzaW5nIFdURjo6c2V0Q2xvc2VPbkV4ZWM7Cit1c2luZyBXVEY6OnNldE5vbkJsb2NrOwogCiAj
ZW5kaWYgLy8gVW5pU3RkRXh0cmFzX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3BsYXlz
dGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9uLmNwcCBiL1NvdXJjZS9XVEYvd3RmL3BsYXlz
dGF0aW9uL1VuaVN0ZEV4dHJhc1BsYXlTdGF0aW9uLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MTAyMWMyMWIz
ZmNhNDJhZTU5OTkwMjMzMmZlY2Y4ODIxNTg5ZWY0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dURi93dGYvcGxheXN0YXRpb24vVW5pU3RkRXh0cmFzUGxheVN0YXRpb24uY3BwCkBAIC0wLDAg
KzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgU29ueSBJbnRlcmFjdGl2ZSBFbnRl
cnRhaW5tZW50IEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
PHd0Zi9VbmlTdGRFeHRyYXMuaD4KKworI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKworbmFtZXNw
YWNlIFdURiB7CisKK2Jvb2wgc2V0Q2xvc2VPbkV4ZWMoaW50KQoreworICAgIHJldHVybiB0cnVl
OworfQorCitpbnQgZHVwQ2xvc2VPbkV4ZWMoaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGlu
dCBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPSAtMTsKKworICAgIHdoaWxlICgoZHVwbGljYXRl
ZEZpbGVEZXNjcmlwdG9yID0gZHVwKGZpbGVEZXNjcmlwdG9yKSkgPT0gLTEgJiYgZXJybm8gPT0g
RUlOVFIpIHsgfQorICAgIGlmIChkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPT0gLTEpCisgICAg
ICAgIHJldHVybiAtMTsKKworICAgIHJldHVybiBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3I7Cit9
CisKK2Jvb2wgc2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCBub25C
bG9ja2luZyA9IDE7CisgICAgcmV0dXJuIHNldHNvY2tvcHQoZmlsZURlc2NyaXB0b3IsIFNPTF9T
T0NLRVQsIFNPX05CSU8sICZub25CbG9ja2luZywgc2l6ZW9mKGludCkpICE9IC0xOworfQorCit9
IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3VuaXgvVW5pU3Rk
RXh0cmFzVW5peC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91bml4L1VuaVN0ZEV4dHJhc1VuaXguY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjExNWY3NzBlYmJhMGM1MTE4OWE4YzA4MjQwNGY5ZTI5MTcwNzNkZDQKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi91bml4L1VuaVN0ZEV4dHJhc1VuaXguY3Bw
CkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYgSWdhbGlhIFMuTC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFz
Lmg+CisKKyNpbmNsdWRlIDxmY250bC5oPgorCituYW1lc3BhY2UgV1RGIHsKKworYm9vbCBzZXRD
bG9zZU9uRXhlYyhpbnQgZmlsZURlc2NyaXB0b3IpCit7CisgICAgaW50IHJldHVyblZhbHVlID0g
LTE7CisgICAgZG8geworICAgICAgICBpbnQgZmxhZ3MgPSBmY250bChmaWxlRGVzY3JpcHRvciwg
Rl9HRVRGRCk7CisgICAgICAgIGlmIChmbGFncyAhPSAtMSkKKyAgICAgICAgICAgIHJldHVyblZh
bHVlID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfU0VURkQsIGZsYWdzIHwgRkRfQ0xPRVhFQyk7
CisgICAgfSB3aGlsZSAocmV0dXJuVmFsdWUgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpOworCisg
ICAgcmV0dXJuIHJldHVyblZhbHVlICE9IC0xOworfQorCitpbnQgZHVwQ2xvc2VPbkV4ZWMoaW50
IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3IgPSAt
MTsKKyNpZmRlZiBGX0RVUEZEX0NMT0VYRUMKKyAgICB3aGlsZSAoKGR1cGxpY2F0ZWRGaWxlRGVz
Y3JpcHRvciA9IGZjbnRsKGZpbGVEZXNjcmlwdG9yLCBGX0RVUEZEX0NMT0VYRUMsIDApKSA9PSAt
MSAmJiBlcnJubyA9PSBFSU5UUikgeyB9CisgICAgaWYgKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRv
ciAhPSAtMSkKKyAgICAgICAgcmV0dXJuIGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcjsKKworI2Vu
ZGlmCisKKyAgICB3aGlsZSAoKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvciA9IGR1cChmaWxlRGVz
Y3JpcHRvcikpID09IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KKyAgICBpZiAoZHVwbGljYXRl
ZEZpbGVEZXNjcmlwdG9yID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAoIXNl
dENsb3NlT25FeGVjKGR1cGxpY2F0ZWRGaWxlRGVzY3JpcHRvcikpIHsKKyAgICAgICAgY2xvc2VX
aXRoUmV0cnkoZHVwbGljYXRlZEZpbGVEZXNjcmlwdG9yKTsKKyAgICAgICAgcmV0dXJuIC0xOwor
ICAgIH0KKworICAgIHJldHVybiBkdXBsaWNhdGVkRmlsZURlc2NyaXB0b3I7Cit9CisKK2Jvb2wg
c2V0Tm9uQmxvY2soaW50IGZpbGVEZXNjcmlwdG9yKQoreworICAgIGludCByZXR1cm5WYWx1ZSA9
IC0xOworCisgICAgaW50IGZsYWdzID0gZmNudGwoZmlsZURlc2NyaXB0b3IsIEZfR0VURkwsIDAp
OworICAgIHdoaWxlICgocmV0dXJuVmFsdWUgPSBmY250bChmaWxlRGVzY3JpcHRvciwgRl9TRVRG
TCwgZmxhZ3MgfCBPX05PTkJMT0NLKSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsgfQorCisg
ICAgcmV0dXJuIHJldHVyblZhbHVlICE9IC0xOworfQorCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL3VuaXgvQ29ubmVjdGlvblVuaXgu
Y3BwIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAK
aW5kZXggNGYzYWIxNDYwOGI0YmZkMmU2NWEwNDEwMmM0ZDQ4YWM1YzZhZDY1Ni4uNjNiNmJlNzI3
MWU0NDU4ODM5NTA1YWE5MTVlMzg3M2Y4NTE0ZGVkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAKQEAgLTMzMSwxMiArMzMxLDkg
QEAgdm9pZCBDb25uZWN0aW9uOjpyZWFkeVJlYWRIYW5kbGVyKCkKIAogYm9vbCBDb25uZWN0aW9u
OjpvcGVuKCkKIHsKLSAgICBpbnQgZmxhZ3MgPSBmY250bChtX3NvY2tldERlc2NyaXB0b3IsIEZf
R0VURkwsIDApOwotICAgIHdoaWxlIChmY250bChtX3NvY2tldERlc2NyaXB0b3IsIEZfU0VURkws
IGZsYWdzIHwgT19OT05CTE9DSykgPT0gLTEpIHsKLSAgICAgICAgaWYgKGVycm5vICE9IEVJTlRS
KSB7Ci0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICAgICAgfQorICAgIGlmICghc2V0Tm9uQmxvY2sobV9zb2NrZXREZXNjcmlw
dG9yKSkgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KIAogICAgIFJlZlB0cjxDb25uZWN0aW9uPiBwcm90ZWN0ZWRUaGlzKHRoaXMp
Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>