<?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>92431</bug_id>
          
          <creation_ts>2012-07-26 15:48:49 -0700</creation_ts>
          <short_desc>REGRESSION(r123799): broke the Apple Mac build (Requested by bweinstein on #webkit).</short_desc>
          <delta_ts>2012-07-26 16:07:09 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>92281</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>abarth</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>679860</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-26 15:48:49 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/123799 broke the build:
broke the Apple Mac build (Requested by bweinstein on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679863</commentid>
    <comment_count>1</comment_count>
      <attachid>154774</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-26 15:49:37 -0700</bug_when>
    <thetext>Created attachment 154774
ROLLOUT of r123799

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679886</commentid>
    <comment_count>2</comment_count>
      <attachid>154774</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-26 16:07:06 -0700</bug_when>
    <thetext>Comment on attachment 154774
ROLLOUT of r123799

Clearing flags on attachment: 154774

Committed r123810: &lt;http://trac.webkit.org/changeset/123810&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679887</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-26 16:07:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154774</attachid>
            <date>2012-07-26 15:49:37 -0700</date>
            <delta_ts>2012-07-26 16:07:06 -0700</delta_ts>
            <desc>ROLLOUT of r123799</desc>
            <filename>bug-92431-20120726225510.patch</filename>
            <type>text/plain</type>
            <size>32357</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjRhZjg4ZGY2MjhkODhm
Y2M4MmRiZjE4ODgwYjYxNTM1NTkzNGRhOC4uMzc1M2QzZDEzZWMwM2Q5M2I0MjY0MWEzNzYxMzJi
OGYwMjJjNTViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA3LTI2ICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTIzNzk5LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xMjM3OTkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTkyNDMxCisKKyAgICAgICAgYnJva2UgdGhlIEFwcGxlIE1hYyBidWlsZCAoUmVx
dWVzdGVkIGJ5IGJ3ZWluc3RlaW4gb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAq
IFRhcmdldC5wcmk6CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIGRvbS9FdmVu
dE5hbWVzLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vR2VzdHVyZUV2ZW50
LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBkb20vR2VzdHVyZUV2ZW50Lmg6IFJlbW92ZWQuCisg
ICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKE5vZGUpOgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6Y2xlYXIpOgorICAgICAgICAoV2Vi
Q29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQpOgorICAgICAgICAqIHBhZ2Uv
RXZlbnRIYW5kbGVyLmg6CisKIDIwMTItMDctMjYgIEJlbmphbWluIFBvdWxhaW4gIDxicG91bGFp
bkBhcHBsZS5jb20+CiAKICAgICAgICAgVXNlIHRoZSBjb25zdGFudCBjb3VudCBvZiBUYWdzL0F0
dHJpYnV0ZXMgbmFtZXMgaW5zdGVhZCBvZiBnZXR0aW5nIHRoZSBzaXplIHdoZW4gb2J0YWluaW5n
IHRoZSB0YWdzL2F0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNDRhNWM5
NGI5M2NiM2RmYzA4YjEwZTE2OWUxOWI0NjM4MjFjMzQwMC4uMWQ3MDQ3NDBjN2ZhZGQ4NjE5OThk
YWU4ODUzOGU2MmE3NDE1MTZlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMSBAQAorMjAxMi0wNy0yNiAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFp
bC5jb20+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyMzc5OS4KKyAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTIzNzk5CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjQzMQorCisgICAgICAgIGJyb2tl
IHRoZSBBcHBsZSBNYWMgYnVpbGQgKFJlcXVlc3RlZCBieSBid2VpbnN0ZWluIG9uCisgICAgICAg
ICN3ZWJraXQpLgorCisgICAgICAgICogc3JjL1dlYklucHV0RXZlbnRDb252ZXJzaW9uLmNwcDoK
KyAgICAgICAgKFdlYktpdCk6CisgICAgICAgICogc3JjL1dlYklucHV0RXZlbnRDb252ZXJzaW9u
Lmg6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWluZXJJ
bXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGx1Z2luQ29udGFpbmVySW1wbDo6aGFuZGxl
RXZlbnQpOgorICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmg6CisgICAgICAg
IChXZWJQbHVnaW5Db250YWluZXJJbXBsKToKKwogMjAxMi0wNy0yNiAgU2FkcnVsIEhhYmliIENo
b3dkaHVyeSAgPHNhZHJ1bEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUHJvcGFnYXRlIGdlc3R1
cmUgZXZlbnRzIHRvIHBsdWdpbnMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDljZGQxMjRjY2Y5
ZDdmMWNlNTIxNmU3ZWZjMTc0MDBiNGVlZjI1MGEuLjlhOTdmZTUxZjI3Y2U2MzVjMmE5MjdjNWMy
MTZkODBmMWY1YzY1ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMDk5LDcgKzEwOTksNiBA
QCBTRVQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgZG9tL0V4Y2VwdGlvbkJhc2UuY3BwCiAgICAgZG9t
L0V4Y2VwdGlvbkNvZGVQbGFjZWhvbGRlci5jcHAKICAgICBkb20vR2VuZXJpY0V2ZW50UXVldWUu
Y3BwCi0gICAgZG9tL0dlc3R1cmVFdmVudC5jcHAKICAgICBkb20vSWNvblVSTC5jcHAKICAgICBk
b20vSWRUYXJnZXRPYnNlcnZlci5jcHAKICAgICBkb20vSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1Nv
dXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggYjM2Y2M0ODFlMzE0ZDM1YmVi
MGVmMmY3OTBkNjdkYWRjOThjMzVlOC4uMzMwZWEwNGRmNzQ1ZDJlNmIwYTk2Mzk4Y2Y5NTI2N2M4
OWMyZmNjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC0xOTUyLDggKzE5NTIs
NiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25D
b2RlUGxhY2Vob2xkZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZVBs
YWNlaG9sZGVyLmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9GcmFnbWVudFNjcmlwdGluZ1Blcm1p
c3Npb24uaCBcCi0JU291cmNlL1dlYkNvcmUvZG9tL0dlc3R1cmVFdmVudC5jcHAgXAotCVNvdXJj
ZS9XZWJDb3JlL2RvbS9HZXN0dXJlRXZlbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0lnbm9y
ZURlc3RydWN0aXZlV3JpdGVDb3VudEluY3JlbWVudGVyLmggXAogCVNvdXJjZS9XZWJDb3JlL2Rv
bS9FeGNlcHRpb25Db2RlUGxhY2Vob2xkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL0dlbmVy
aWNFdmVudFF1ZXVlLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJp
IGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCA0ZjJhMjNhN2M1NTI0NmM0Njk4ZDZk
YzFkNDFmNmVlYjVhY2FlZDBiLi44ZjUwOGZlZDVlNjZjNjgzZWMzOTE1MWZkNDYyZTk0MmE3ZGQ5
ZWU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1RhcmdldC5wcmkKQEAgLTQwOCw3ICs0MDgsNiBAQCBTT1VSQ0VTICs9IFwKICAgICBk
b20vRXhjZXB0aW9uQmFzZS5jcHAgXAogICAgIGRvbS9FeGNlcHRpb25Db2RlUGxhY2Vob2xkZXIu
Y3BwIFwKICAgICBkb20vR2VuZXJpY0V2ZW50UXVldWUuY3BwIFwKLSAgICBkb20vR2VzdHVyZUV2
ZW50LmNwcCBcCiAgICAgZG9tL0ljb25VUkwuY3BwIFwKICAgICBkb20vSWRUYXJnZXRPYnNlcnZl
ci5jcHAgXAogICAgIGRvbS9JZFRhcmdldE9ic2VydmVyUmVnaXN0cnkuY3BwIFwKQEAgLTE1MzYs
NyArMTUzNSw2IEBAIEhFQURFUlMgKz0gXAogICAgIGRvbS9FeGNlcHRpb25CYXNlLmggXAogICAg
IGRvbS9FeGNlcHRpb25Db2RlLmggXAogICAgIGRvbS9GcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Np
b24uaCBcCi0gICAgZG9tL0dlc3R1cmVFdmVudC5oIFwKICAgICBkb20vSWRUYXJnZXRPYnNlcnZl
ci5oIFwKICAgICBkb20vSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmggXAogICAgIGRvbS9LZXli
b2FyZEV2ZW50LmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDJiMzU1NWRlNWMwYzljZWY5NGI5YWZl
YmM4YzA4NWVkYWZlYzkyYzQuLjhiYzgwZjBmY2RlOWI2Y2YxNDRiODk2MDM0ZWQ4MWU5MjJkOWU3
NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTUxODcsOCArNTE4Nyw2IEBACiAgICAgICAgICAgICAn
ZG9tL0V4Y2VwdGlvbkNvZGVQbGFjZWhvbGRlci5jcHAnLAogICAgICAgICAgICAgJ2RvbS9HZW5l
cmljRXZlbnRRdWV1ZS5jcHAnLAogICAgICAgICAgICAgJ2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5o
JywKLSAgICAgICAgICAgICdkb20vR2VzdHVyZUV2ZW50LmNwcCcsCi0gICAgICAgICAgICAnZG9t
L0dlc3R1cmVFdmVudC5oJywKICAgICAgICAgICAgICdkb20vSGFzaENoYW5nZUV2ZW50LmgnLAog
ICAgICAgICAgICAgJ2RvbS9JZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5o
JywKICAgICAgICAgICAgICdkb20vSWNvblVSTC5jcHAnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50TmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgK
aW5kZXggODk4ZGE5NjIyM2ZkMDcxYWQwMGJkMWE5MjU3NGUyYWMyZmI3NWU2ZS4uYjBlZmJlNzY1
MDhjOGViMjU0ZGYyOTYyYmJlODlkYzYyNzE3MTQyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50TmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5o
CkBAIC03MSwxMSArNzEsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFjcm8oZm9jdXMp
IFwKICAgICBtYWNybyhmb2N1c2luKSBcCiAgICAgbWFjcm8oZm9jdXNvdXQpIFwKLSAgICBtYWNy
byhnZXN0dXJldGFwKSBcCi0gICAgbWFjcm8oZ2VzdHVyZXRhcGRvd24pIFwKLSAgICBtYWNybyhn
ZXN0dXJlc2Nyb2xsc3RhcnQpIFwKLSAgICBtYWNybyhnZXN0dXJlc2Nyb2xsZW5kKSBcCi0gICAg
bWFjcm8oZ2VzdHVyZXNjcm9sbHVwZGF0ZSkgXAogICAgIG1hY3JvKGhhc2hjaGFuZ2UpIFwKICAg
ICBtYWNybyhpbnB1dCkgXAogICAgIG1hY3JvKGludmFsaWQpIFwKQEAgLTI2NywxNSArMjYyLDYg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgICAgIHx8IGV2ZW50VHlwZSA9PSB0
b3VjaGNhbmNlbEV2ZW50OwogICAgICAgICB9CiAKLSAgICAgICAgaW5saW5lIGJvb2wgaXNHZXN0
dXJlRXZlbnRUeXBlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlKSBjb25zdAotICAgICAg
ICB7Ci0gICAgICAgICAgICByZXR1cm4gZXZlbnRUeXBlID09IGdlc3R1cmV0YXBFdmVudAotICAg
ICAgICAgICAgICAgIHx8IGV2ZW50VHlwZSA9PSBnZXN0dXJldGFwZG93bkV2ZW50Ci0gICAgICAg
ICAgICAgICAgfHwgZXZlbnRUeXBlID09IGdlc3R1cmVzY3JvbGxzdGFydEV2ZW50Ci0gICAgICAg
ICAgICAgICAgfHwgZXZlbnRUeXBlID09IGdlc3R1cmVzY3JvbGxlbmRFdmVudAotICAgICAgICAg
ICAgICAgIHx8IGV2ZW50VHlwZSA9PSBnZXN0dXJlc2Nyb2xsdXBkYXRlRXZlbnQ7Ci0gICAgICAg
IH0KLQogICAgICAgICBWZWN0b3I8QXRvbWljU3RyaW5nPiB0b3VjaEV2ZW50TmFtZXMoKSBjb25z
dAogICAgICAgICB7CiAgICAgICAgICAgICBWZWN0b3I8QXRvbWljU3RyaW5nPiBuYW1lczsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZXN0dXJlRXZlbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0dlc3R1cmVFdmVudC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGUyNDdiMmZiODFjMWY0M2JjMGU3MjZjNGZmZWI4NzhkM2E1ZmIwMWMuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0dlc3R1
cmVFdmVudC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMjggKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4g
T1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCi0KLSNpbmNs
dWRlICJHZXN0dXJlRXZlbnQuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1QYXNzUmVmUHRy
PEdlc3R1cmVFdmVudD4gR2VzdHVyZUV2ZW50OjpjcmVhdGUoKQotewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgR2VzdHVyZUV2ZW50KTsKLX0KLQotUGFzc1JlZlB0cjxHZXN0dXJlRXZlbnQ+IEdl
c3R1cmVFdmVudDo6Y3JlYXRlKFBhc3NSZWZQdHI8QWJzdHJhY3RWaWV3PiB2aWV3LCBjb25zdCBQ
bGF0Zm9ybUdlc3R1cmVFdmVudCYgZXZlbnQpCi17Ci0gICAgQXRvbWljU3RyaW5nIGV2ZW50VHlw
ZTsKLSAgICBzd2l0Y2ggKGV2ZW50LnR5cGUoKSkgewotICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6
R2VzdHVyZVNjcm9sbEJlZ2luOgotICAgICAgICBldmVudFR5cGUgPSBldmVudE5hbWVzKCkuZ2Vz
dHVyZXNjcm9sbHN0YXJ0RXZlbnQ7IGJyZWFrOwotICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2Vz
dHVyZVNjcm9sbEVuZDoKLSAgICAgICAgZXZlbnRUeXBlID0gZXZlbnROYW1lcygpLmdlc3R1cmVz
Y3JvbGxlbmRFdmVudDsgYnJlYWs7Ci0gICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlU2Ny
b2xsVXBkYXRlOgotICAgICAgICBldmVudFR5cGUgPSBldmVudE5hbWVzKCkuZ2VzdHVyZXNjcm9s
bHVwZGF0ZUV2ZW50OyBicmVhazsKLSAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXA6
Ci0gICAgICAgIGV2ZW50VHlwZSA9IGV2ZW50TmFtZXMoKS5nZXN0dXJldGFwRXZlbnQ7IGJyZWFr
OwotICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd246Ci0gICAgICAgIGV2ZW50
VHlwZSA9IGV2ZW50TmFtZXMoKS5nZXN0dXJldGFwZG93bkV2ZW50OyBicmVhazsKLSAgICBjYXNl
IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVEb3VibGVUYXA6Ci0gICAgY2FzZSBQbGF0Zm9ybUV2ZW50
OjpHZXN0dXJlVHdvRmluZ2VyVGFwOgotICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZUxv
bmdQcmVzczoKLSAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVQaW5jaEJlZ2luOgotICAg
IGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVBpbmNoRW5kOgotICAgIGNhc2UgUGxhdGZvcm1F
dmVudDo6R2VzdHVyZVBpbmNoVXBkYXRlOgotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwotICAgIH0KLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEdlc3R1cmVFdmVu
dChldmVudFR5cGUsIHZpZXcsIGV2ZW50Lmdsb2JhbFBvc2l0aW9uKCkueCgpLCBldmVudC5nbG9i
YWxQb3NpdGlvbigpLnkoKSwgZXZlbnQucG9zaXRpb24oKS54KCksIGV2ZW50LnBvc2l0aW9uKCku
eSgpLCBldmVudC5jdHJsS2V5KCksIGV2ZW50LmFsdEtleSgpLCBldmVudC5zaGlmdEtleSgpLCBl
dmVudC5tZXRhS2V5KCksIGV2ZW50LmRlbHRhWCgpLCBldmVudC5kZWx0YVkoKSkpOwotfQotCi12
b2lkIEdlc3R1cmVFdmVudDo6aW5pdEdlc3R1cmVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5
cGUsIFBhc3NSZWZQdHI8QWJzdHJhY3RWaWV3PiB2aWV3LCBpbnQgc2NyZWVuWCwgaW50IHNjcmVl
blksIGludCBjbGllbnRYLCBpbnQgY2xpZW50WSwgYm9vbCBjdHJsS2V5LCBib29sIGFsdEtleSwg
Ym9vbCBzaGlmdEtleSwgYm9vbCBtZXRhS2V5LCBmbG9hdCBkZWx0YVgsIGZsb2F0IGRlbHRhWSkK
LXsKLSAgICBpZiAoZGlzcGF0Y2hlZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpbml0VUlF
dmVudCh0eXBlLCB0cnVlLCB0cnVlLCB2aWV3LCAwKTsKLSAgICBtX3NjcmVlbkxvY2F0aW9uID0g
SW50UG9pbnQoc2NyZWVuWCwgc2NyZWVuWSk7Ci0gICAgbV9jdHJsS2V5ID0gY3RybEtleTsKLSAg
ICBtX2FsdEtleSA9IGFsdEtleTsKLSAgICBtX3NoaWZ0S2V5ID0gc2hpZnRLZXk7Ci0gICAgbV9t
ZXRhS2V5ID0gbWV0YUtleTsKLQotICAgIG1fZGVsdGFYID0gZGVsdGFYOwotICAgIG1fZGVsdGFZ
ID0gZGVsdGFZOwotCi0gICAgaW5pdENvb3JkaW5hdGVzKEludFBvaW50KGNsaWVudFgsIGNsaWVu
dFkpKTsKLX0KLQotY29uc3QgQXRvbWljU3RyaW5nJiBHZXN0dXJlRXZlbnQ6OmludGVyZmFjZU5h
bWUoKSBjb25zdAotewotICAgIHN0YXRpYyBBdG9taWNTdHJpbmcgaW50ZXJmYWNlKCJUQkRJbnRl
cmZhY2UiKTsKLSAgICByZXR1cm4gaW50ZXJmYWNlOwotfQotCi1HZXN0dXJlRXZlbnQ6Okdlc3R1
cmVFdmVudCgpCi0gICAgOiBtX2RlbHRhWCgwKQotICAgICwgbV9kZWx0YVkoMCkKLXsKLX0KLQot
R2VzdHVyZUV2ZW50OjpHZXN0dXJlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlLCBQYXNz
UmVmUHRyPEFic3RyYWN0Vmlldz4gdmlldywgaW50IHNjcmVlblgsIGludCBzY3JlZW5ZLCBpbnQg
Y2xpZW50WCwgaW50IGNsaWVudFksIGJvb2wgY3RybEtleSwgYm9vbCBhbHRLZXksIGJvb2wgc2hp
ZnRLZXksIGJvb2wgbWV0YUtleSwgZmxvYXQgZGVsdGFYLCBmbG9hdCBkZWx0YVkpCi0gICAgOiBN
b3VzZVJlbGF0ZWRFdmVudCh0eXBlLCB0cnVlLCB0cnVlLCB2aWV3LCAwLCBJbnRQb2ludChzY3Jl
ZW5YLCBzY3JlZW5ZKSwgSW50UG9pbnQoY2xpZW50WCwgY2xpZW50WSksCi0jaWYgRU5BQkxFKFBP
SU5URVJfTE9DSykKLSAgICAgICAgICAgICAgICAgICAgICAgIEludFBvaW50KDAsIDApLAotI2Vu
ZGlmCi0gICAgICAgICAgICAgICAgICAgICAgICBjdHJsS2V5LCBhbHRLZXksIHNoaWZ0S2V5LCBt
ZXRhS2V5KQotICAgICwgbV9kZWx0YVgoZGVsdGFYKQotICAgICwgbV9kZWx0YVkoZGVsdGFZKQot
ewotfQotCi1HZXN0dXJlRXZlbnREaXNwYXRjaE1lZGlhdG9yOjpHZXN0dXJlRXZlbnREaXNwYXRj
aE1lZGlhdG9yKFBhc3NSZWZQdHI8R2VzdHVyZUV2ZW50PiBnZXN0dXJlRXZlbnQpCi0gICAgOiBF
dmVudERpc3BhdGNoTWVkaWF0b3IoZ2VzdHVyZUV2ZW50KQotewotfQotCi1HZXN0dXJlRXZlbnQq
IEdlc3R1cmVFdmVudERpc3BhdGNoTWVkaWF0b3I6OmV2ZW50KCkgY29uc3QKLXsKLSAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8R2VzdHVyZUV2ZW50Kj4oRXZlbnREaXNwYXRjaE1lZGlhdG9yOjpldmVu
dCgpKTsKLX0KLQotYm9vbCBHZXN0dXJlRXZlbnREaXNwYXRjaE1lZGlhdG9yOjpkaXNwYXRjaEV2
ZW50KEV2ZW50RGlzcGF0Y2hlciogZGlzcGF0Y2hlcikgY29uc3QKLXsKLSAgICBpZiAoZGlzcGF0
Y2hlci0+bm9kZSgpLT5kaXNhYmxlZCgpKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIGRp
c3BhdGNoZXItPmRpc3BhdGNoRXZlbnQoZXZlbnQoKSk7Ci0gICAgQVNTRVJUKCFldmVudCgpLT5k
ZWZhdWx0UHJldmVudGVkKCkpOwotICAgIHJldHVybiBldmVudCgpLT5kZWZhdWx0SGFuZGxlZCgp
IHx8IGV2ZW50KCktPmRlZmF1bHRQcmV2ZW50ZWQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0dlc3R1cmVFdmVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0dlc3R1
cmVFdmVudC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZjA4M2MzZjIyMDY5ODkw
OGYzZWM5NDQ5ZTQzNmQ3Njc1MzYxNmMyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZXN0dXJlRXZlbnQuaAorKysgL2Rl
di9udWxsCkBAIC0xLDgyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
LSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBHZXN0dXJlRXZlbnRf
aAotI2RlZmluZSBHZXN0dXJlRXZlbnRfaAotCi0jaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQot
Ci0jaW5jbHVkZSAiRXZlbnREaXNwYXRjaGVyLmgiCi0jaW5jbHVkZSAiRXZlbnROYW1lcy5oIgot
I2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiRnJhbWVWaWV3LmgiCi0jaW5jbHVkZSAiTW91
c2VSZWxhdGVkRXZlbnQuaCIKLSNpbmNsdWRlICJQbGF0Zm9ybUV2ZW50LmgiCi0jaW5jbHVkZSAi
UGxhdGZvcm1HZXN0dXJlRXZlbnQuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBH
ZXN0dXJlRXZlbnQgOiBwdWJsaWMgTW91c2VSZWxhdGVkRXZlbnQgewotcHVibGljOgotICAgIHZp
cnR1YWwgfkdlc3R1cmVFdmVudCgpIHsgfQotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8R2VzdHVy
ZUV2ZW50PiBjcmVhdGUoKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxHZXN0dXJlRXZlbnQ+IGNy
ZWF0ZShQYXNzUmVmUHRyPEFic3RyYWN0Vmlldz4sIGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50
Jik7Ci0KLSAgICB2b2lkIGluaXRHZXN0dXJlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBl
LCBQYXNzUmVmUHRyPEFic3RyYWN0Vmlldz4sIGludCBzY3JlZW5YLCBpbnQgc2NyZWVuWSwgaW50
IGNsaWVudFgsIGludCBjbGllbnRZLCBib29sIGN0cmxLZXksIGJvb2wgYWx0S2V5LCBib29sIHNo
aWZ0S2V5LCBib29sIG1ldGFLZXksIGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZKTsKLQotICAg
IHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3Q7Ci0KLSAg
ICBmbG9hdCBkZWx0YVgoKSBjb25zdCB7IHJldHVybiBtX2RlbHRhWDsgfQotICAgIGZsb2F0IGRl
bHRhWSgpIGNvbnN0IHsgcmV0dXJuIG1fZGVsdGFZOyB9Ci0KLXByaXZhdGU6Ci0gICAgR2VzdHVy
ZUV2ZW50KCk7Ci0gICAgR2VzdHVyZUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgUGFz
c1JlZlB0cjxBYnN0cmFjdFZpZXc+LCBpbnQgc2NyZWVuWCwgaW50IHNjcmVlblksIGludCBjbGll
bnRYLCBpbnQgY2xpZW50WSwgYm9vbCBjdHJsS2V5LCBib29sIGFsdEtleSwgYm9vbCBzaGlmdEtl
eSwgYm9vbCBtZXRhS2V5LCBmbG9hdCBkZWx0YVgsIGZsb2F0IGRlbHRhWSk7Ci0KLSAgICBmbG9h
dCBtX2RlbHRhWDsKLSAgICBmbG9hdCBtX2RlbHRhWTsKLX07Ci0KLWNsYXNzIEdlc3R1cmVFdmVu
dERpc3BhdGNoTWVkaWF0b3IgOiBwdWJsaWMgRXZlbnREaXNwYXRjaE1lZGlhdG9yIHsKLXB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxHZXN0dXJlRXZlbnREaXNwYXRjaE1lZGlhdG9yPiBj
cmVhdGUoUGFzc1JlZlB0cjxHZXN0dXJlRXZlbnQ+IGdlc3R1cmVFdmVudCkKLSAgICB7Ci0gICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgR2VzdHVyZUV2ZW50RGlzcGF0Y2hNZWRpYXRvcihnZXN0
dXJlRXZlbnQpKTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgZXhwbGljaXQgR2VzdHVyZUV2ZW50
RGlzcGF0Y2hNZWRpYXRvcihQYXNzUmVmUHRyPEdlc3R1cmVFdmVudD4pOwotCi0gICAgR2VzdHVy
ZUV2ZW50KiBldmVudCgpIGNvbnN0OwotCi0gICAgdmlydHVhbCBib29sIGRpc3BhdGNoRXZlbnQo
RXZlbnREaXNwYXRjaGVyKikgY29uc3Q7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCi0KLSNlbmRpZiAvLyBHZXN0dXJlRXZl
bnRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL05vZGUuY3BwCmluZGV4IDc1MjhjZmQzMTE3YWIzMTRhODJkNTI1ZTAwYjVjMzBm
NDA3NWE1MDguLmYzMGMzZmNiZmNmODYwYWUwMzQxN2I1ZGNkMDExN2I5NmM1ZmY5ZWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5jcHAKQEAgLTEwOSwxMCArMTA5LDYgQEAKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3Ry
aW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0jaWYgRU5BQkxF
KEdFU1RVUkVfRVZFTlRTKQotI2luY2x1ZGUgIkdlc3R1cmVFdmVudC5oIgotI2VuZGlmCi0KICNp
ZiBFTkFCTEUoSU5TUEVDVE9SKQogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKICNl
bmRpZgpAQCAtMjYzNywxMyArMjYzMyw2IEBAIGJvb2wgTm9kZTo6ZGlzcGF0Y2hNb3VzZUV2ZW50
KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQsIGNvbnN0IEF0b21pY1N0cmluCiAgICAg
cmV0dXJuIEV2ZW50RGlzcGF0Y2hlcjo6ZGlzcGF0Y2hFdmVudCh0aGlzLCBNb3VzZUV2ZW50RGlz
cGF0Y2hNZWRpYXRvcjo6Y3JlYXRlKE1vdXNlRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIGRvY3Vt
ZW50KCktPmRlZmF1bHRWaWV3KCksIGV2ZW50LCBkZXRhaWwsIHJlbGF0ZWRUYXJnZXQpKSk7CiB9
CiAKLSNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCi1ib29sIE5vZGU6OmRpc3BhdGNoR2VzdHVy
ZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBldmVudCkKLXsKLSAgICByZXR1cm4g
RXZlbnREaXNwYXRjaGVyOjpkaXNwYXRjaEV2ZW50KHRoaXMsIEdlc3R1cmVFdmVudERpc3BhdGNo
TWVkaWF0b3I6OmNyZWF0ZShHZXN0dXJlRXZlbnQ6OmNyZWF0ZShkb2N1bWVudCgpLT5kZWZhdWx0
VmlldygpLCBldmVudCkpKTsKLX0KLSNlbmRpZgotCiB2b2lkIE5vZGU6OmRpc3BhdGNoU2ltdWxh
dGVkQ2xpY2soUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQsIGJvb2wgc2VuZE1vdXNlRXZlbnRzLCBi
b29sIHNob3dQcmVzc2VkTG9vaykKIHsKICAgICBFdmVudERpc3BhdGNoZXI6OmRpc3BhdGNoU2lt
dWxhdGVkQ2xpY2sodGhpcywgZXZlbnQsIHNlbmRNb3VzZUV2ZW50cywgc2hvd1ByZXNzZWRMb29r
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oCmluZGV4IGEzMjA0YmExYTdhM2U4MjZiNDU5MjNmNmEyMjU5ODUzNWU4YjQw
M2MuLjg2YTdkMzllZDU4YmRiYzlkNDJmMjQxZTQ3NmM5YTZiMzE2YmQ2ZDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aApAQCAtODgsMTAgKzg4LDYgQEAgY2xhc3MgU2hhZG93Um9vdDsKIGNsYXNzIFRhZ05vZGVMaXN0
OwogY2xhc3MgVHJlZVNjb3BlOwogCi0jaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQotY2xhc3Mg
UGxhdGZvcm1HZXN0dXJlRXZlbnQ7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShNSUNST0RBVEEpCiBj
bGFzcyBIVE1MUHJvcGVydGllc0NvbGxlY3Rpb247CiBjbGFzcyBQcm9wZXJ0eU5vZGVMaXN0OwpA
QCAtNjEzLDkgKzYwOSw2IEBAIHB1YmxpYzoKICAgICBib29sIGRpc3BhdGNoS2V5RXZlbnQoY29u
c3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50Jik7CiAgICAgYm9vbCBkaXNwYXRjaFdoZWVsRXZlbnQo
Y29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAgICAgYm9vbCBkaXNwYXRjaE1vdXNlRXZlbnQo
Y29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiwgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUs
IGludCBjbGlja0NvdW50ID0gMCwgTm9kZSogcmVsYXRlZFRhcmdldCA9IDApOwotI2lmIEVOQUJM
RShHRVNUVVJFX0VWRU5UUykKLSAgICBib29sIGRpc3BhdGNoR2VzdHVyZUV2ZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50Jik7Ci0jZW5kaWYKICAgICB2b2lkIGRpc3BhdGNoU2ltdWxhdGVk
Q2xpY2soUGFzc1JlZlB0cjxFdmVudD4gdW5kZXJseWluZ0V2ZW50LCBib29sIHNlbmRNb3VzZUV2
ZW50cyA9IGZhbHNlLCBib29sIHNob3dQcmVzc2VkTG9vayA9IHRydWUpOwogICAgIGJvb2wgZGlz
cGF0Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggMDYxZDgzMzBmNTY3ZjliYjQwNzI2MWU5ZmJh
NDlmMjE2MmMyNGNiOC4uOGVlYTNmYTY1OGI1OWZjYmNkY2NmOTIxM2JjNzhlMjhhYTY0Nzc3YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMzY3LDExICszNjcsMTAgQEAg
dm9pZCBFdmVudEhhbmRsZXI6OmNsZWFyKCkKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogICAg
IG1fb3JpZ2luYXRpbmdUb3VjaFBvaW50VGFyZ2V0cy5jbGVhcigpOwogI2VuZGlmCi0jaWYgRU5B
QkxFKEdFU1RVUkVfRVZFTlRTKQotICAgIG1fc2Nyb2xsR2VzdHVyZUhhbmRsaW5nTm9kZSA9IDA7
Ci0jZW5kaWYKICAgICBtX21heE1vdXNlTW92ZWREdXJhdGlvbiA9IDA7CisjaWYgRU5BQkxFKEdF
U1RVUkVfRVZFTlRTKQogICAgIG1fYmFzZUV2ZW50VHlwZSA9IFBsYXRmb3JtRXZlbnQ6Ok5vVHlw
ZTsKKyNlbmRpZgogfQogCiB2b2lkIEV2ZW50SGFuZGxlcjo6bm9kZVdpbGxCZVJlbW92ZWQoTm9k
ZSogbm9kZVRvQmVSZW1vdmVkKQpAQCAtMjQxNCwyOSArMjQxMyw2IEBAIGJvb2wgRXZlbnRIYW5k
bGVyOjpoYW5kbGVHZXN0dXJlVGFwRG93bigpCiAKIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVH
ZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKIHsK
LSAgICBOb2RlKiBldmVudFRhcmdldCA9IDA7Ci0gICAgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkg
PT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVNjcm9sbEVuZCB8fCBnZXN0dXJlRXZlbnQudHlwZSgp
ID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVTY3JvbGxVcGRhdGUpCi0gICAgICAgIGV2ZW50VGFy
Z2V0ID0gbV9zY3JvbGxHZXN0dXJlSGFuZGxpbmdOb2RlLmdldCgpOwotCi0gICAgaWYgKCFldmVu
dFRhcmdldCkgewotICAgICAgICBIaXRUZXN0UmVzdWx0IHJlc3VsdCA9IGhpdFRlc3RSZXN1bHRB
dFBvaW50KGdlc3R1cmVFdmVudC5wb3NpdGlvbigpLCBmYWxzZSwgZmFsc2UsIERvbnRIaXRUZXN0
U2Nyb2xsYmFycywgSGl0VGVzdFJlcXVlc3Q6OlJlYWRPbmx5IHwgSGl0VGVzdFJlcXVlc3Q6OkFj
dGl2ZSk7Ci0gICAgICAgIGV2ZW50VGFyZ2V0ID0gdGFyZ2V0Tm9kZShyZXN1bHQpOwotICAgIH0K
LQotICAgIGlmIChldmVudFRhcmdldCkgewotICAgICAgICBib29sIGV2ZW50U3dhbGxvd2VkID0g
ZXZlbnRUYXJnZXQtPmRpc3BhdGNoR2VzdHVyZUV2ZW50KGdlc3R1cmVFdmVudCk7Ci0KLSAgICAg
ICAgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVNjcm9s
bEJlZ2luKSB7Ci0gICAgICAgICAgICBpZiAoZXZlbnRTd2FsbG93ZWQpCi0gICAgICAgICAgICAg
ICAgbV9zY3JvbGxHZXN0dXJlSGFuZGxpbmdOb2RlID0gZXZlbnRUYXJnZXQ7Ci0gICAgICAgICAg
ICBlbHNlCi0gICAgICAgICAgICAgICAgbV9zY3JvbGxHZXN0dXJlSGFuZGxpbmdOb2RlID0gMDsK
LSAgICAgICAgfQotCi0gICAgICAgIGlmIChldmVudFN3YWxsb3dlZCkKLSAgICAgICAgICAgIHJl
dHVybiB0cnVlOwotICAgIH0KLQogICAgIC8vIEZJWE1FOiBBIG1vcmUgZ2VuZXJhbCBzY3JvbGwg
c3lzdGVtIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA1OTYpIHdp
bGwKICAgICAvLyBlbGltaW5hdGUgdGhlIG5lZWQgZm9yIHRoaXMuCiAgICAgVGVtcG9yYXJ5Q2hh
bmdlPFBsYXRmb3JtRXZlbnQ6OlR5cGU+IGJhc2VFdmVudFR5cGUobV9iYXNlRXZlbnRUeXBlLCBn
ZXN0dXJlRXZlbnQudHlwZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZl
bnRIYW5kbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCmluZGV4IGVl
MjY5NDQzM2RiMWMyNzk5ZDUwNGIyZDQ4NGYwNGUzNTQ3MDMwZTMuLjFkMmQzNzVjMzliYjU4YmE1
M2E1OGY1NDMwN2ViMTYyNWVmMDdmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RXZlbnRIYW5kbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaApA
QCAtNDQ2LDExICs0NDYsNiBAQCBwcml2YXRlOgogICAgIFRvdWNoVGFyZ2V0TWFwIG1fb3JpZ2lu
YXRpbmdUb3VjaFBvaW50VGFyZ2V0czsKICAgICBib29sIG1fdG91Y2hQcmVzc2VkOwogI2VuZGlm
Ci0KLSNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCi0gICAgUmVmUHRyPE5vZGU+IG1fc2Nyb2xs
R2VzdHVyZUhhbmRsaW5nTm9kZTsKLSNlbmRpZgotCiAgICAgZG91YmxlIG1fbWF4TW91c2VNb3Zl
ZER1cmF0aW9uOwogICAgIFBsYXRmb3JtRXZlbnQ6OlR5cGUgbV9iYXNlRXZlbnRUeXBlOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZlbnRDb252
ZXJzaW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZlbnRDb252
ZXJzaW9uLmNwcAppbmRleCBjMDhlZGVhYWE2YzU2NjYyOTFiNGRjYjNiYjE3NmJiZWVhMDdiOTUz
Li4yMDdkODFjYTM4NGQzNmM4M2E0ZDEwMWU0NzBkYTllMDkyMjIzNGQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJbnB1dEV2ZW50Q29udmVyc2lvbi5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uY3Bw
CkBAIC0zMiw3ICszMiw2IEBACiAjaW5jbHVkZSAiV2ViSW5wdXRFdmVudENvbnZlcnNpb24uaCIK
IAogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKLSNpbmNsdWRlICJHZXN0dXJlRXZlbnQuaCIKICNp
bmNsdWRlICJLZXlib2FyZENvZGVzLmgiCiAjaW5jbHVkZSAiS2V5Ym9hcmRFdmVudC5oIgogI2lu
Y2x1ZGUgIk1vdXNlRXZlbnQuaCIKQEAgLTUxMywzMSArNTEyLDQgQEAgV2ViVG91Y2hFdmVudEJ1
aWxkZXI6OldlYlRvdWNoRXZlbnRCdWlsZGVyKGNvbnN0IFdpZGdldCogd2lkZ2V0LCBjb25zdCBU
b3VjaEV2ZW4KIAogI2VuZGlmIC8vIEVOQUJMRShUT1VDSF9FVkVOVFMpCiAKLSNpZiBFTkFCTEUo
R0VTVFVSRV9FVkVOVFMpCi1XZWJHZXN0dXJlRXZlbnRCdWlsZGVyOjpXZWJHZXN0dXJlRXZlbnRC
dWlsZGVyKGNvbnN0IFdpZGdldCogd2lkZ2V0LCBjb25zdCBHZXN0dXJlRXZlbnQmIGV2ZW50KQot
ewotICAgIGlmIChldmVudC50eXBlKCkgPT0gZXZlbnROYW1lcygpLmdlc3R1cmV0YXBFdmVudCkK
LSAgICAgICAgdHlwZSA9IEdlc3R1cmVUYXA7Ci0gICAgZWxzZSBpZiAoZXZlbnQudHlwZSgpID09
IGV2ZW50TmFtZXMoKS5nZXN0dXJldGFwZG93bkV2ZW50KQotICAgICAgICB0eXBlID0gR2VzdHVy
ZVRhcERvd247Ci0gICAgZWxzZSBpZiAoZXZlbnQudHlwZSgpID09IGV2ZW50TmFtZXMoKS5nZXN0
dXJlc2Nyb2xsc3RhcnRFdmVudCkKLSAgICAgICAgdHlwZSA9IEdlc3R1cmVTY3JvbGxCZWdpbjsK
LSAgICBlbHNlIGlmIChldmVudC50eXBlKCkgPT0gZXZlbnROYW1lcygpLmdlc3R1cmVzY3JvbGxl
bmRFdmVudCkKLSAgICAgICAgdHlwZSA9IEdlc3R1cmVTY3JvbGxFbmQ7Ci0gICAgZWxzZSBpZiAo
ZXZlbnQudHlwZSgpID09IGV2ZW50TmFtZXMoKS5nZXN0dXJlc2Nyb2xsdXBkYXRlRXZlbnQpCi0g
ICAgICAgIHR5cGUgPSBHZXN0dXJlU2Nyb2xsVXBkYXRlOwotCi0gICAgdGltZVN0YW1wU2Vjb25k
cyA9IGV2ZW50LnRpbWVTdGFtcCgpIC8gbWlsbGlzUGVyU2Vjb25kOwotICAgIG1vZGlmaWVycyA9
IGdldFdlYklucHV0TW9kaWZpZXJzKGV2ZW50KTsKLQotICAgIGdsb2JhbFggPSBldmVudC5zY3Jl
ZW5YKCk7Ci0gICAgZ2xvYmFsWSA9IGV2ZW50LnNjcmVlblkoKTsKLSAgICB4ID0gZXZlbnQuYWJz
b2x1dGVMb2NhdGlvbigpLngoKSAtIHdpZGdldC0+bG9jYXRpb24oKS54KCk7Ci0gICAgeSA9IGV2
ZW50LmFic29sdXRlTG9jYXRpb24oKS55KCkgLSB3aWRnZXQtPmxvY2F0aW9uKCkueSgpOwotCi0g
ICAgZGVsdGFYID0gZXZlbnQuZGVsdGFYKCk7Ci0gICAgZGVsdGFZID0gZXZlbnQuZGVsdGFZKCk7
Ci19Ci0jZW5kaWYgLy8gRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQotCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZl
bnRDb252ZXJzaW9uLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJbnB1dEV2ZW50
Q29udmVyc2lvbi5oCmluZGV4IDQ4OTc1YTQwNDZiMjEyYjBmMmRiOTkyYmU2NGI4YzgzNDk3OTBl
OGIuLmQ0N2JkYTgxNDkyZjFiMDE5MTk2ZWQ2Mzk4YjU3YTY5OWY4NDAzMTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklucHV0RXZlbnRDb252ZXJzaW9uLmgKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSW5wdXRFdmVudENvbnZlcnNpb24uaApA
QCAtMzksNyArMzksNiBAQAogI2luY2x1ZGUgIldlYklucHV0RXZlbnQuaCIKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewotY2xhc3MgR2VzdHVyZUV2ZW50OwogY2xhc3MgS2V5Ym9hcmRFdmVudDsKIGNs
YXNzIE1vdXNlRXZlbnQ7CiBjbGFzcyBTY3JvbGxWaWV3OwpAQCAtMTMyLDE1ICsxMzEsNiBAQCBw
dWJsaWM6CiB9OwogI2VuZGlmIC8vIEVOQUJMRShUT1VDSF9FVkVOVFMpCiAKLSNpZiBFTkFCTEUo
R0VTVFVSRV9FVkVOVFMpCi0vLyBDb252ZXJ0cyBXZWJDb3JlOjpHZXN0dXJlRXZlbnQgdG8gYSBj
b3JyZXNwb25kaW5nIFdlYkdlc3R1cmVFdmVudC4KLS8vIE5PVEU6IElmIGV2ZW50IG1hcHBpbmcg
ZmFpbHMsIHRoZSB0eXBlIHdpbGwgYmUgc2V0IHRvIFVuZGVmaW5lZC4KLWNsYXNzIFdlYkdlc3R1
cmVFdmVudEJ1aWxkZXIgOiBwdWJsaWMgV2ViR2VzdHVyZUV2ZW50IHsKLXB1YmxpYzoKLSAgICBX
ZWJHZXN0dXJlRXZlbnRCdWlsZGVyKGNvbnN0IFdlYkNvcmU6OldpZGdldCosIGNvbnN0IFdlYkNv
cmU6Okdlc3R1cmVFdmVudCYpOwotfTsKLSNlbmRpZiAvLyBFTkFCTEUoR0VTVFVSRV9FVkVOVFMp
Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKaW5kZXggMWM1YzA1
ZjY2ZDIyZTkwNWI4NDkwZDZlZTUzMWEzZWFlYmE2OTZlMy4uMjk0ODllMjVhNTQ0YjEzNTcyNDZk
N2EzOWFhNGY5ZGZhOWNiZjc1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKQEAgLTU2LDcgKzU2LDYgQEAKICNpbmNs
dWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZFJlcXVlc3QuaCIKICNpbmNsdWRlICJG
cmFtZVZpZXcuaCIKLSNpbmNsdWRlICJHZXN0dXJlRXZlbnQuaCIKICNpbmNsdWRlICJHcmFwaGlj
c0NvbnRleHQuaCIKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCiAjaW5jbHVkZSAiSG9zdFdp
bmRvdy5oIgpAQCAtMTg5LDggKzE4OCw2IEBAIHZvaWQgV2ViUGx1Z2luQ29udGFpbmVySW1wbDo6
aGFuZGxlRXZlbnQoRXZlbnQqIGV2ZW50KQogICAgICAgICBoYW5kbGVLZXlib2FyZEV2ZW50KHN0
YXRpY19jYXN0PEtleWJvYXJkRXZlbnQqPihldmVudCkpOwogICAgIGVsc2UgaWYgKGV2ZW50TmFt
ZXMoKS5pc1RvdWNoRXZlbnRUeXBlKGV2ZW50LT50eXBlKCkpKQogICAgICAgICBoYW5kbGVUb3Vj
aEV2ZW50KHN0YXRpY19jYXN0PFRvdWNoRXZlbnQqPihldmVudCkpOwotICAgIGVsc2UgaWYgKGV2
ZW50TmFtZXMoKS5pc0dlc3R1cmVFdmVudFR5cGUoZXZlbnQtPnR5cGUoKSkpCi0gICAgICAgIGhh
bmRsZUdlc3R1cmVFdmVudChzdGF0aWNfY2FzdDxHZXN0dXJlRXZlbnQqPihldmVudCkpOwogCiAg
ICAgLy8gRklYTUU6IGl0IHdvdWxkIGJlIGNsZWFuZXIgaWYgV2lkZ2V0OjpoYW5kbGVFdmVudCBy
ZXR1cm5lZCB0cnVlL2ZhbHNlIGFuZAogICAgIC8vIEhUTUxQbHVnaW5FbGVtZW50IGNhbGxlZCBz
ZXREZWZhdWx0SGFuZGxlZCBvciBkZWZhdWx0RXZlbnRIYW5kbGVyLgpAQCAtNzM5LDE3ICs3MzYs
NiBAQCB2b2lkIFdlYlBsdWdpbkNvbnRhaW5lckltcGw6OmhhbmRsZVRvdWNoRXZlbnQoVG91Y2hF
dmVudCogZXZlbnQpCiAgICAgLy8gRklYTUU6IENhbiBhIHBsdWdpbiBjaGFuZ2UgdGhlIGN1cnNv
ciBmcm9tIGEgdG91Y2gtZXZlbnQgY2FsbGJhY2s/CiB9CiAKLXZvaWQgV2ViUGx1Z2luQ29udGFp
bmVySW1wbDo6aGFuZGxlR2VzdHVyZUV2ZW50KEdlc3R1cmVFdmVudCogZXZlbnQpCi17Ci0gICAg
V2ViR2VzdHVyZUV2ZW50QnVpbGRlciB3ZWJFdmVudCh0aGlzLCAqZXZlbnQpOwotICAgIGlmICh3
ZWJFdmVudC50eXBlID09IFdlYklucHV0RXZlbnQ6OlVuZGVmaW5lZCkKLSAgICAgICAgcmV0dXJu
OwotICAgIFdlYkN1cnNvckluZm8gY3Vyc29ySW5mbzsKLSAgICBpZiAobV93ZWJQbHVnaW4tPmhh
bmRsZUlucHV0RXZlbnQod2ViRXZlbnQsIGN1cnNvckluZm8pKQotICAgICAgICBldmVudC0+c2V0
RGVmYXVsdEhhbmRsZWQoKTsKLSAgICAvLyBGSVhNRTogQ2FuIGEgcGx1Z2luIGNoYW5nZSB0aGUg
Y3Vyc29yIGZyb20gYSB0b3VjaC1ldmVudCBjYWxsYmFjaz8KLX0KLQogdm9pZCBXZWJQbHVnaW5D
b250YWluZXJJbXBsOjpjYWxjdWxhdGVHZW9tZXRyeShjb25zdCBJbnRSZWN0JiBmcmFtZVJlY3Qs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludFJlY3Qm
IHdpbmRvd1JlY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEludFJlY3QmIGNsaXBSZWN0LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oCmluZGV4IDYxZjVjNWI3MTQ2ZjI5OTU3ZGI4OTE4
Zjk4ZGI0NWFmZDk0NTY5NzguLjRjMmFhZWI0YTA0ODQzNDBhZjY2MWE1YWRjYjJjMjM5ODdhOGM0
NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRh
aW5lckltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250
YWluZXJJbXBsLmgKQEAgLTQ1LDcgKzQ1LDYgQEAKIHN0cnVjdCBOUE9iamVjdDsKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewotY2xhc3MgR2VzdHVyZUV2ZW50OwogY2xhc3MgSFRNTFBsdWdJbkVsZW1l
bnQ7CiBjbGFzcyBJbnRSZWN0OwogY2xhc3MgS2V5Ym9hcmRFdmVudDsKQEAgLTE2OCw3ICsxNjcs
NiBAQCBwcml2YXRlOgogICAgIHZvaWQgaGFuZGxlV2hlZWxFdmVudChXZWJDb3JlOjpXaGVlbEV2
ZW50Kik7CiAgICAgdm9pZCBoYW5kbGVLZXlib2FyZEV2ZW50KFdlYkNvcmU6OktleWJvYXJkRXZl
bnQqKTsKICAgICB2b2lkIGhhbmRsZVRvdWNoRXZlbnQoV2ViQ29yZTo6VG91Y2hFdmVudCopOwot
ICAgIHZvaWQgaGFuZGxlR2VzdHVyZUV2ZW50KFdlYkNvcmU6Okdlc3R1cmVFdmVudCopOwogCiAg
ICAgdm9pZCBjYWxjdWxhdGVHZW9tZXRyeShjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBmcmFtZVJl
Y3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJDb3JlOjpJbnRSZWN0JiB3aW5kb3dS
ZWN0LApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4
IDU2YzM5N2EyM2U1NjZjMjQ4ODcyMGMzMWU3ZTMzOTM3NjgzMTFkNGYuLjEyOWRiZDk4MDNjZjg3
MzA2OTBkM2YzZGQyMTJiNTQ0MmEzOTIzNjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZwor
KysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0wNy0yNiAgU2hlcmlm
ZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjEyMzc5OS4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9j
aGFuZ2VzZXQvMTIzNzk5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05MjQzMQorCisgICAgICAgIGJyb2tlIHRoZSBBcHBsZSBNYWMgYnVpbGQgKFJlcXVl
c3RlZCBieSBid2VpbnN0ZWluIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAgICAgICogRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5jcHA6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5oOgorICAgICAgICAoVGVzdFdlYlBsdWdp
bjo6YWNjZXB0c0lucHV0RXZlbnRzKToKKyAgICAgICAgKFRlc3RXZWJQbHVnaW46OmhhbmRsZUlu
cHV0RXZlbnQpOgorCiAyMDEyLTA3LTI2ICBTYWRydWwgSGFiaWIgQ2hvd2RodXJ5ICA8c2FkcnVs
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBQcm9wYWdhdGUgZ2VzdHVyZSBldmVudHMgdG8gcGx1
Z2lucy4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RXZWJQ
bHVnaW4uY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5j
cHAKaW5kZXggYmJlYmE2ZjliNzFkNmU5ZmFlYzgzZDBlOTBhOWExMWFkZWI4MTViZS4uNTcwMTky
Y2JiMTJjMzYyMDU3MzliODZmZTkwZThiOThlZTFhM2ZhMyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5jcHAKKysrIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5jcHAKQEAgLTI3LDcgKzI3LDYgQEAKICNp
bmNsdWRlICJUZXN0V2ViUGx1Z2luLmgiCiAKICNpbmNsdWRlICJXZWJGcmFtZS5oIgotI2luY2x1
ZGUgIldlYklucHV0RXZlbnQuaCIKICNpbmNsdWRlICJwbGF0Zm9ybS9XZWJHcmFwaGljc0NvbnRl
eHQzRC5oIgogI2luY2x1ZGUgIldlYktpdC5oIgogI2luY2x1ZGUgInBsYXRmb3JtL1dlYktpdFBs
YXRmb3JtU3VwcG9ydC5oIgpAQCAtMzY1LDQ3ICszNjQsMyBAQCB1bnNpZ25lZCBUZXN0V2ViUGx1
Z2luOjpsb2FkUHJvZ3JhbShjb25zdCBDU3RyaW5nJiB2ZXJ0ZXhTb3VyY2UsCiAgICAgcmV0dXJu
IHByb2dyYW07CiB9CiAKLWJvb2wgVGVzdFdlYlBsdWdpbjo6aGFuZGxlSW5wdXRFdmVudChjb25z
dCBXZWJLaXQ6OldlYklucHV0RXZlbnQmIGV2ZW50LCBXZWJLaXQ6OldlYkN1cnNvckluZm8mIGlu
Zm8pCi17Ci0gICAgY29uc3QgY2hhciogZXZlbnROYW1lID0gMDsKLSAgICBzd2l0Y2ggKGV2ZW50
LnR5cGUpIHsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6VW5kZWZpbmVkOiAgICAg
ICAgICAgZXZlbnROYW1lID0gInVua25vd24iOyBicmVhazsKLQotICAgIGNhc2UgV2ViS2l0OjpX
ZWJJbnB1dEV2ZW50OjpNb3VzZURvd246ICAgICAgICAgICBldmVudE5hbWUgPSAiTW91c2VEb3du
IjsgYnJlYWs7Ci0gICAgY2FzZSBXZWJLaXQ6OldlYklucHV0RXZlbnQ6Ok1vdXNlVXA6ICAgICAg
ICAgICAgIGV2ZW50TmFtZSA9ICJNb3VzZVVwIjsgYnJlYWs7Ci0gICAgY2FzZSBXZWJLaXQ6Oldl
YklucHV0RXZlbnQ6Ok1vdXNlTW92ZTogICAgICAgICAgIGV2ZW50TmFtZSA9ICJNb3VzZU1vdmUi
OyBicmVhazsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6TW91c2VFbnRlcjogICAg
ICAgICAgZXZlbnROYW1lID0gIk1vdXNlRW50ZXIiOyBicmVhazsKLSAgICBjYXNlIFdlYktpdDo6
V2ViSW5wdXRFdmVudDo6TW91c2VMZWF2ZTogICAgICAgICAgZXZlbnROYW1lID0gIk1vdXNlTGVh
dmUiOyBicmVhazsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6Q29udGV4dE1lbnU6
ICAgICAgICAgZXZlbnROYW1lID0gIkNvbnRleHRNZW51IjsgYnJlYWs7Ci0KLSAgICBjYXNlIFdl
YktpdDo6V2ViSW5wdXRFdmVudDo6TW91c2VXaGVlbDogICAgICAgICAgZXZlbnROYW1lID0gIk1v
dXNlV2hlZWwiOyBicmVhazsKLQotICAgIGNhc2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpSYXdL
ZXlEb3duOiAgICAgICAgICBldmVudE5hbWUgPSAiUmF3S2V5RG93biI7IGJyZWFrOwotICAgIGNh
c2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpLZXlEb3duOiAgICAgICAgICAgICBldmVudE5hbWUg
PSAiS2V5RG93biI7IGJyZWFrOwotICAgIGNhc2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpLZXlV
cDogICAgICAgICAgICAgICBldmVudE5hbWUgPSAiS2V5VXAiOyBicmVhazsKLSAgICBjYXNlIFdl
YktpdDo6V2ViSW5wdXRFdmVudDo6Q2hhcjogICAgICAgICAgICAgICAgZXZlbnROYW1lID0gIkNo
YXIiOyBicmVhazsKLQotICAgIGNhc2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpHZXN0dXJlU2Ny
b2xsQmVnaW46ICBldmVudE5hbWUgPSAiR2VzdHVyZVNjcm9sbEJlZ2luIjsgYnJlYWs7Ci0gICAg
Y2FzZSBXZWJLaXQ6OldlYklucHV0RXZlbnQ6Okdlc3R1cmVTY3JvbGxFbmQ6ICAgIGV2ZW50TmFt
ZSA9ICJHZXN0dXJlU2Nyb2xsRW5kIjsgYnJlYWs7Ci0gICAgY2FzZSBXZWJLaXQ6OldlYklucHV0
RXZlbnQ6Okdlc3R1cmVTY3JvbGxVcGRhdGU6IGV2ZW50TmFtZSA9ICJHZXN0dXJlU2Nyb2xsVXBk
YXRlIjsgYnJlYWs7Ci0gICAgY2FzZSBXZWJLaXQ6OldlYklucHV0RXZlbnQ6Okdlc3R1cmVGbGlu
Z1N0YXJ0OiAgIGV2ZW50TmFtZSA9ICJHZXN0dXJlRmxpbmdTdGFydCI7IGJyZWFrOwotICAgIGNh
c2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpHZXN0dXJlRmxpbmdDYW5jZWw6ICBldmVudE5hbWUg
PSAiR2VzdHVyZUZsaW5nQ2FuY2VsIjsgYnJlYWs7Ci0gICAgY2FzZSBXZWJLaXQ6OldlYklucHV0
RXZlbnQ6Okdlc3R1cmVUYXA6ICAgICAgICAgIGV2ZW50TmFtZSA9ICJHZXN0dXJlVGFwIjsgYnJl
YWs7Ci0gICAgY2FzZSBXZWJLaXQ6OldlYklucHV0RXZlbnQ6Okdlc3R1cmVUYXBEb3duOiAgICAg
IGV2ZW50TmFtZSA9ICJHZXN0dXJlVGFwRG93biI7IGJyZWFrOwotICAgIGNhc2UgV2ViS2l0OjpX
ZWJJbnB1dEV2ZW50OjpHZXN0dXJlRG91YmxlVGFwOiAgICBldmVudE5hbWUgPSAiR2VzdHVyZURv
dWJsZVRhcCI7IGJyZWFrOwotICAgIGNhc2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpHZXN0dXJl
VHdvRmluZ2VyVGFwOiBldmVudE5hbWUgPSAiR2VzdHVyZVR3b0ZpbmdlclRhcCI7IGJyZWFrOwot
ICAgIGNhc2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpHZXN0dXJlTG9uZ1ByZXNzOiAgICBldmVu
dE5hbWUgPSAiR2VzdHVyZUxvbmdQcmVzcyI7IGJyZWFrOwotICAgIGNhc2UgV2ViS2l0OjpXZWJJ
bnB1dEV2ZW50OjpHZXN0dXJlUGluY2hCZWdpbjogICBldmVudE5hbWUgPSAiR2VzdHVyZVBpbmNo
QmVnaW4iOyBicmVhazsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6R2VzdHVyZVBp
bmNoRW5kOiAgICAgZXZlbnROYW1lID0gIkdlc3R1cmVQaW5jaEVuZCI7IGJyZWFrOwotICAgIGNh
c2UgV2ViS2l0OjpXZWJJbnB1dEV2ZW50OjpHZXN0dXJlUGluY2hVcGRhdGU6ICBldmVudE5hbWUg
PSAiR2VzdHVyZVBpbmNoVXBkYXRlIjsgYnJlYWs7Ci0KLSAgICBjYXNlIFdlYktpdDo6V2ViSW5w
dXRFdmVudDo6VG91Y2hTdGFydDogICAgICAgICAgZXZlbnROYW1lID0gIlRvdWNoU3RhcnQiOyBi
cmVhazsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6VG91Y2hNb3ZlOiAgICAgICAg
ICAgZXZlbnROYW1lID0gIlRvdWNoTW92ZSI7IGJyZWFrOwotICAgIGNhc2UgV2ViS2l0OjpXZWJJ
bnB1dEV2ZW50OjpUb3VjaEVuZDogICAgICAgICAgICBldmVudE5hbWUgPSAiVG91Y2hFbmQiOyBi
cmVhazsKLSAgICBjYXNlIFdlYktpdDo6V2ViSW5wdXRFdmVudDo6VG91Y2hDYW5jZWw6ICAgICAg
ICAgZXZlbnROYW1lID0gIlRvdWNoQ2FuY2VsIjsgYnJlYWs7Ci0gICAgfQotCi0gICAgcHJpbnRm
KCJQbHVnaW4gcmVjZWl2ZWQgZXZlbnQ6ICVzXG4iLCBldmVudE5hbWUgPyBldmVudE5hbWUgOiAi
dW5rbm93biIpOwotICAgIHJldHVybiBmYWxzZTsKLX0KLQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5oIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vVGVzdFdlYlBsdWdpbi5oCmluZGV4IDAyNWIxMTA5NTU1YTJjMGE4YTIyMjIy
ZjNlZTRiODE1NmY2YjM0ZTMuLjRjOWYyZjRkMjI4NTc5Y2NmNmExNjQ1NmJmMGFkMzQ0Y2FkODlm
NzAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RXZWJQbHVn
aW4uaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0V2ViUGx1Z2luLmgK
QEAgLTYwLDggKzYwLDggQEAgcHVibGljOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGlzVmlzaWJsZSk7CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUZvY3VzKGJvb2wpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVWaXNpYmlsaXR5KGJvb2wpIHsgfQotICAgIHZpcnR1
YWwgYm9vbCBhY2NlcHRzSW5wdXRFdmVudHMoKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVh
bCBib29sIGhhbmRsZUlucHV0RXZlbnQoY29uc3QgV2ViS2l0OjpXZWJJbnB1dEV2ZW50JiwgV2Vi
S2l0OjpXZWJDdXJzb3JJbmZvJik7CisgICAgdmlydHVhbCBib29sIGFjY2VwdHNJbnB1dEV2ZW50
cygpIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUlucHV0RXZlbnQo
Y29uc3QgV2ViS2l0OjpXZWJJbnB1dEV2ZW50JiwgV2ViS2l0OjpXZWJDdXJzb3JJbmZvJikgeyBy
ZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0
IFdlYktpdDo6V2ViVVJMUmVzcG9uc2UmKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2
ZURhdGEoY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpIHsgfQogICAgIHZpcnR1YWwg
dm9pZCBkaWRGaW5pc2hMb2FkaW5nKCkgeyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODQ1Nzg1NjU1MDAzNjA3OTcwZDA2
M2RkYTNlMjQzMjhhMDcxZDQ2NS4uZmJmYTk3MzJiN2Y0NWI2MTcyYTNmMzUxMDc4OTY3YTg2ZDEw
MzVjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEyLTA3LTI2ICBTaGVyaWZmIEJvdCAgPHdl
YmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMTIzNzk5LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8x
MjM3OTkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTky
NDMxCisKKyAgICAgICAgYnJva2UgdGhlIEFwcGxlIE1hYyBidWlsZCAoUmVxdWVzdGVkIGJ5IGJ3
ZWluc3RlaW4gb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9wbHVnaW5zL2dlc3R1cmUtZXZlbnRzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9wbHVnaW5zL2dlc3R1cmUtZXZlbnRzLmh0bWw6IFJlbW92
ZWQuCisKIDIwMTItMDctMjYgIEFubmEgQ2F2ZW5kZXIgIDxhbm5hY2NAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFtDaHJvbWl1bV0gUmVtb3ZpbmcgaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvdmlkZW8tbWVkaWEtc291cmNlLWFkZC1hbmQtcmVtb3ZlLWlkcy5odG1sIGZyb20gVGVzdEV4
cGVjdGF0aW9ucwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGx1
Z2lucy9nZXN0dXJlLWV2ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS9wbHVnaW5zL2dlc3R1cmUtZXZlbnRzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMmZkYTQyNmIxOGNiN2Q3NzM4NzE2MzllN2MwMDQ0YWY2NjdlMWRj
Mi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wbHVnaW5zL2dlc3R1cmUtZXZlbnRzLWV4cGVjdGVkLnR4
dAorKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAKLVBsdWdpbiByZWNlaXZlZCBldmVudDog
R2VzdHVyZVRhcAotUGx1Z2luIHJlY2VpdmVkIGV2ZW50OiBNb3VzZUVudGVyCi1QbHVnaW4gcmVj
ZWl2ZWQgZXZlbnQ6IE1vdXNlTW92ZQotUGx1Z2luIHJlY2VpdmVkIGV2ZW50OiBNb3VzZURvd24K
LVBsdWdpbiByZWNlaXZlZCBldmVudDogTW91c2VVcAotUGx1Z2luIHJlY2VpdmVkIGV2ZW50OiBH
ZXN0dXJlU2Nyb2xsQmVnaW4KLVBsdWdpbiByZWNlaXZlZCBldmVudDogR2VzdHVyZVNjcm9sbFVw
ZGF0ZQotUGx1Z2luIHJlY2VpdmVkIGV2ZW50OiBNb3VzZVdoZWVsCi1QbHVnaW4gcmVjZWl2ZWQg
ZXZlbnQ6IEdlc3R1cmVTY3JvbGxFbmQKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vY2hyb21pdW0vcGx1Z2lucy9nZXN0dXJlLWV2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vcGx1Z2lucy9nZXN0dXJlLWV2ZW50cy5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA0ZGQyYjM2NzRlMjJiYTQ1N2EwNWE3NzM0ZjExY2M0MzdkY2JiYzg5
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtL3BsdWdpbnMvZ2VzdHVyZS1ldmVudHMuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDMxICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c3R5bGU+Ci0gICNwbHVn
aW4gewotICAgIHdpZHRoOiAxNTBweDsKLSAgICBoZWlnaHQ6IDE1MHB4OwotICB9Ci08L3N0eWxl
PgotPC9oZWFkPgotCi08Ym9keT4KLTxlbWJlZCBpZD0icGx1Z2luIiB0eXBlPSJhcHBsaWNhdGlv
bi94LXdlYmtpdC10ZXN0LXdlYnBsdWdpbiIgcHJpbWl0aXZlPSJ0cmlhbmdsZSIgYmFja2dyb3Vu
ZC1jb2xvcj0iZ3JlZW4iIHByaW1pdGl2ZS1jb2xvcj0iYmx1ZSI+PC9lbWJlZD4KLTxzY3JpcHQ+
Ci0KLSAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIGRvY3VtZW50LndyaXRl
KCJUaGlzIHRlc3QgZG9lcyBub3Qgd29yayBpbiBtYW51YWwgbW9kZS4iKTsKLSAgICB9IGVsc2Ug
ewotICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLQotICAgICAgICAvLyBTZW5kIHNv
bWUgZ2VzdHVyZSBldmVudHMgdG8gdGhlIHBsdWdpbi4KLSAgICAgICAgdmFyIHBvc2l0aW9uWCA9
IHBsdWdpbi5vZmZzZXRMZWZ0ICsgMTA7Ci0gICAgICAgIHZhciBwb3NpdGlvblkgPSBwbHVnaW4u
b2Zmc2V0VG9wICsgMTA7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXAocG9zaXRpb25Y
LCBwb3NpdGlvblkpOwotICAgICAgICBldmVudFNlbmRlci5nZXN0dXJlU2Nyb2xsQmVnaW4ocG9z
aXRpb25YLCBwb3NpdGlvblkpOwotICAgICAgICBldmVudFNlbmRlci5nZXN0dXJlU2Nyb2xsVXBk
YXRlKDMwLCAwKTsKLSAgICAgICAgZXZlbnRTZW5kZXIuZ2VzdHVyZVNjcm9sbEVuZCgwLCAwKTsK
LSAgICB9Ci0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>