<?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>72310</bug_id>
          
          <creation_ts>2011-11-14 14:26:03 -0800</creation_ts>
          <short_desc>REGRESSION(r100176): Broke Lion build (Requested by kbr_google on #webkit).</short_desc>
          <delta_ts>2022-03-01 03:10:09 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>72309</dup_id>
          
          <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>72086</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>gman</cc>
    
    <cc>kbr</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>502307</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-14 14:26:03 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/100176 broke the build:
Broke Lion build (Requested by kbr_google 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>502310</commentid>
    <comment_count>1</comment_count>
      <attachid>115031</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-14 14:26:38 -0800</bug_when>
    <thetext>Created attachment 115031
ROLLOUT of r100176

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>502314</commentid>
    <comment_count>2</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-11-14 14:28:00 -0800</bug_when>
    <thetext>jchaffraix beat me to this.

*** This bug has been marked as a duplicate of bug 72309 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115031</attachid>
            <date>2011-11-14 14:26:38 -0800</date>
            <delta_ts>2022-03-01 03:10:09 -0800</delta_ts>
            <desc>ROLLOUT of r100176</desc>
            <filename>bug-72310-20111114222715.patch</filename>
            <type>text/plain</type>
            <size>44986</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdhZjZiZmUwNjFmYjQ1
N2Q5NTcwZGM3ODgyNmNlMzUxNDY0YTUxNC4uYWIyMjFhNDg5ZTRmMDY5MzJmZWE3NzM0OTI0NTEx
MjZiMjcxMDNiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDExLTExLTE0ICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTAwMTc2LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xMDAxNzYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTcyMzEwCisKKyAgICAgICAgQnJva2UgTGlvbiBidWlsZCAoUmVxdWVzdGVkIGJ5
IGticl9nb29nbGUgb24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAg
ICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFRhcmdldC5wcmk6CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV2ViR0xSZW5kZXJp
bmdDb250ZXh0Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAq
IGJpbmRpbmdzL3Y4L2N1c3RvbS9WOFdlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjp0b1Y4T2JqZWN0KToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJH
TEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlcy5jcHA6IFJlbW92ZWQuCisgICAgICAgICog
aHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0
dXJlcy5pZGw6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24u
aDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRFeHRlbnNpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRQYXJhbWV0ZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNp
b25zKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9FeHRlbnNpb25zM0QuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2VmbC9HcmFwaGljc0NvbnRleHQzREVmbC5jcHA6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcDoKKwogMjAxMS0xMS0x
NCAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIHJlbW92ZSAtd2Fw
LW1hcnF1ZWUgY3NzIHByb3BlcnkgdmFsdWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
YjU5ZDFiYWI4MDc0ZmE3Njc4NTgwZmU1ODExN2M0MDZhNjVlMDg3Yy4uZDIxZjJiMDM0YjIwNDY5
NmM1YTRkMzRiNGQzMGRjNGJiZTczZjU5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAxMS0xMS0xNCAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJv
dEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEwMDE3Ni4K
KyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTAwMTc2CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjMxMAorCisgICAgICAg
IEJyb2tlIExpb24gYnVpbGQgKFJlcXVlc3RlZCBieSBrYnJfZ29vZ2xlIG9uICN3ZWJraXQpLgor
CisgICAgICAgICogcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgICogc3Jj
L0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwOgorICAgICAgICAqIHNyYy9HcmFwaGljc0Nv
bnRleHQzRFByaXZhdGUuaDoKKyAgICAgICAgKiB0ZXN0cy9Nb2NrV2ViR3JhcGhpY3NDb250ZXh0
M0QuaDoKKwogMjAxMS0xMS0xNCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFJlbW92ZSB0aGUgY29uY2VwdCBvZiBhbiBlbXB0eSBTZWN1cml0eU9yaWdpbgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAppbmRleCBkODRiN2I1Y2Y1OWY0MWMyYWE5OWM2ODgxMzJkYzhkYThiNzJk
NDI0Li5iMmI0YjEzNTA4NzU0MDE2Yzk4MzYxYTNlZjRhODhiOTc4NWM2ZWVlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMjEzOCw3ICsyMTM4LDYgQEAgSUYgKEVOQUJMRV9XRUJHTCkKICAgICAg
ICAgaHRtbC9jYW52YXMvV2ViR0xDb250ZXh0RXZlbnQuY3BwCiAgICAgICAgIGh0bWwvY2FudmFz
L1dlYkdMRGVidWdSZW5kZXJlckluZm8uY3BwCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMRGVi
dWdTaGFkZXJzLmNwcAotICAgICAgICBodG1sL2NhbnZhcy9XZWJHTEV4cGVyaW1lbnRhbENvbXBy
ZXNzZWRUZXh0dXJlcy5jcHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5j
cHAKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xHZXRJbmZvLmNwcAogICAgICAgICBodG1sL2Nh
bnZhcy9XZWJHTE9iamVjdC5jcHAKQEAgLTIxNzAsNyArMjE2OSw2IEBAIElGIChFTkFCTEVfV0VC
R0wpCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEV2ZW50LmlkbAogICAgICAgICBo
dG1sL2NhbnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmlkbAogICAgICAgICBodG1sL2NhbnZh
cy9XZWJHTERlYnVnU2hhZGVycy5pZGwKLSAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xFeHBlcmlt
ZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMRnJh
bWVidWZmZXIuaWRsCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMUHJvZ3JhbS5pZGwKICAgICAg
ICAgaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJidWZmZXIuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUu
bGlzdC5hbQppbmRleCAxNGU1Zjc0NTExOTFhYzUyYjlhNTc0ZGVmNmRhOWY1ZjkwOGQyNjdiLi5i
NzE4YzEwMjJjZmE2MWFmNWMwZmI4MDM1MTk1OTFjZDExMzI3MGIzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1h
a2VmaWxlLmxpc3QuYW0KQEAgLTQ5NzgsOCArNDk3OCw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBc
CiAJU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTERlYnVnU2hhZGVycy5jcHAgXAogCVNv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRGVidWdTaGFkZXJzLmggXAotCVNvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmNw
cCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21wcmVz
c2VkVGV4dHVyZXMuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1
ZmZlci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIu
aCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xHZXRJbmZvLmNwcCBcCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0
LnByaQppbmRleCA5OTVhMDliYjg0MDZhM2JmNTdkMzExNzgwYTYyMGYyYzFkNGYzNzkzLi5lNDg0
OWYwYzI1OTUzYmMyZjczZmE3YTFjYzBjZjBlMjM2YTgxNTBiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTM2
MjYsNyArMzYyNiw2IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAg
ICAgIGh0bWwvY2FudmFzL1dlYkdMQ29udGV4dEV2ZW50LmggXAogICAgICAgICBodG1sL2NhbnZh
cy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTERl
YnVnU2hhZGVycy5oIFwKLSAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21w
cmVzc2VkVGV4dHVyZXMuaCBcCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmgg
XAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTEZyYW1lYnVmZmVyLmggXAogICAgICAgICBodG1s
L2NhbnZhcy9XZWJHTEdldEluZm8uaCBcCkBAIC0zNjYwLDcgKzM2NTksNiBAQCBjb250YWlucyhE
RUZJTkVTLCBFTkFCTEVfV0VCR0w9MSkgewogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTENvbnRl
eHRFdmVudC5jcHAgXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZv
LmNwcCBcCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMRGVidWdTaGFkZXJzLmNwcCBcCi0gICAg
ICAgIGh0bWwvY2FudmFzL1dlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmNwcCBc
CiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMRXh0ZW5zaW9uLmNwcCBcCiAgICAgICAgIGh0bWwv
Y2FudmFzL1dlYkdMRnJhbWVidWZmZXIuY3BwIFwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xH
ZXRJbmZvLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggMjFkNGUyZDk4MTdjMTg1MDdkODVhMmNi
ODI2NWJjNDJkYTExY2RiMi4uZTgzMDYxZDJiNTk2ZjQxNTlmYTg3NjE3Nzk2ZTI5MmQzZGZmNzIy
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTM2Niw3ICsxMzY2LDYgQEAKICAgICAgICAgICAgICdo
dG1sL2NhbnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9jYW52YXMvV2ViR0xEZWJ1Z1NoYWRlcnMuaWRsJywKICAgICAgICAgICAgICdodG1sL2NhbnZh
cy9XZWJHTEZyYW1lYnVmZmVyLmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9jYW52YXMvV2ViR0xF
eHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaWRsJywKICAgICAgICAgICAgICdodG1sL2Nh
bnZhcy9XZWJHTFByb2dyYW0uaWRsJywKICAgICAgICAgICAgICdodG1sL2NhbnZhcy9XZWJHTFJl
bmRlcmJ1ZmZlci5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5n
Q29udGV4dC5pZGwnLApAQCAtNTcyMCw4ICs1NzE5LDYgQEAKICAgICAgICAgICAgICdodG1sL2Nh
bnZhcy9XZWJHTERlYnVnUmVuZGVyZXJJbmZvLmgnLAogICAgICAgICAgICAgJ2h0bWwvY2FudmFz
L1dlYkdMRGVidWdTaGFkZXJzLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9jYW52YXMvV2ViR0xE
ZWJ1Z1NoYWRlcnMuaCcsCi0gICAgICAgICAgICAnaHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50
YWxDb21wcmVzc2VkVGV4dHVyZXMuY3BwJywKLSAgICAgICAgICAgICdodG1sL2NhbnZhcy9XZWJH
TEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlcy5oJywKICAgICAgICAgICAgICdodG1sL2Nh
bnZhcy9XZWJHTEV4dGVuc2lvbi5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvY2FudmFzL1dlYkdM
RXh0ZW5zaW9uLmgnLAogICAgICAgICAgICAgJ2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIu
Y3BwJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2ViR0xSZW5k
ZXJpbmdDb250ZXh0Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2Vi
R0xSZW5kZXJpbmdDb250ZXh0Q3VzdG9tLmNwcAppbmRleCBkMjU5OWFiM2M5NTgwNWYwNTliZjRj
YzUyYmQyZmZkOTBkODBjMWJhLi4wMzc2MTBhNDkxZGI2N2EzZmJlZmQ4OWJiNTgzZDllYjI1ZGM1
MjE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dlYkdMUmVuZGVy
aW5nQ29udGV4dEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNX
ZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwCkBAIC02MCw3ICs2MCw2IEBACiAjaW5jbHVk
ZSAiV2ViR0xCdWZmZXIuaCIKICNpbmNsdWRlICJXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmgiCiAj
aW5jbHVkZSAiV2ViR0xEZWJ1Z1NoYWRlcnMuaCIKLSNpbmNsdWRlICJXZWJHTEV4cGVyaW1lbnRh
bENvbXByZXNzZWRUZXh0dXJlcy5oIgogI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgiCiAjaW5j
bHVkZSAiV2ViR0xGcmFtZWJ1ZmZlci5oIgogI2luY2x1ZGUgIldlYkdMR2V0SW5mby5oIgpAQCAt
MTk0LDggKzE5Myw2IEBAIHN0YXRpYyBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBXZWJHTEV4dGVuCiAgICAgICAgIHJldHVybiB0
b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgc3RhdGljX2Nhc3Q8V2ViR0xEZWJ1Z1JlbmRlcmVySW5m
byo+KGV4dGVuc2lvbikpOwogICAgIGNhc2UgV2ViR0xFeHRlbnNpb246OldlYkdMRGVidWdTaGFk
ZXJzTmFtZToKICAgICAgICAgcmV0dXJuIHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdGF0aWNf
Y2FzdDxXZWJHTERlYnVnU2hhZGVycyo+KGV4dGVuc2lvbikpOwotICAgIGNhc2UgV2ViR0xFeHRl
bnNpb246OldlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzTmFtZToKLSAgICAgICAg
cmV0dXJuIHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxXZWJHTEV4cGVyaW1l
bnRhbENvbXByZXNzZWRUZXh0dXJlcyo+KGV4dGVuc2lvbikpOwogICAgIH0KICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4ganNOdWxsKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2ViR0xSZW5kZXJpbmdD
b250ZXh0Q3VzdG9tLmNwcAppbmRleCAzN2FiNjkwNmE0ZTdkNDRlZmM5ZWZlZDdjZmZlMWZhMjBj
OTJmNTAzLi4zNTAyMTUyZjQ4OTAzYTU2MDI5MTA0NGMyMjkzN2YxNzIwZDgwYTJmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXZWJHTFJlbmRlcmluZ0Nv
bnRleHRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OFdlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHAKQEAgLTU4LDcgKzU4LDYgQEAKICNpbmNs
dWRlICJWOFdlYkdMQnVmZmVyLmgiCiAjaW5jbHVkZSAiVjhXZWJHTERlYnVnUmVuZGVyZXJJbmZv
LmgiCiAjaW5jbHVkZSAiVjhXZWJHTERlYnVnU2hhZGVycy5oIgotI2luY2x1ZGUgIlY4V2ViR0xF
eHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaCIKICNpbmNsdWRlICJWOFdlYkdMRnJhbWVi
dWZmZXIuaCIKICNpbmNsdWRlICJWOFdlYkdMUHJvZ3JhbS5oIgogI2luY2x1ZGUgIlY4V2ViR0xS
ZW5kZXJidWZmZXIuaCIKQEAgLTE5MywxMCArMTkyLDYgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiB0b1Y4T2JqZWN0KFdlYkdMRXh0ZW5zaW9uKiBleHRlbnNpb24sIHY4OjpIYW5kbGU8
djgKICAgICAgICAgZXh0ZW5zaW9uT2JqZWN0ID0gdG9WOChzdGF0aWNfY2FzdDxXZWJHTERlYnVn
U2hhZGVycyo+KGV4dGVuc2lvbikpOwogICAgICAgICByZWZlcmVuY2VOYW1lID0gIndlYkdMRGVi
dWdTaGFkZXJzTmFtZSI7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgV2ViR0xFeHRlbnNpb246
OldlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzTmFtZToKLSAgICAgICAgZXh0ZW5z
aW9uT2JqZWN0ID0gdG9WOChzdGF0aWNfY2FzdDxXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRU
ZXh0dXJlcyo+KGV4dGVuc2lvbikpOwotICAgICAgICByZWZlcmVuY2VOYW1lID0gIndlYkdMRXhw
ZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzTmFtZSI7Ci0gICAgICAgIGJyZWFrOwogICAgIH0K
ICAgICBBU1NFUlQoIWV4dGVuc2lvbk9iamVjdC5Jc0VtcHR5KCkpOwogICAgIFY4RE9NV3JhcHBl
cjo6c2V0TmFtZWRIaWRkZW5SZWZlcmVuY2UoY29udGV4dE9iamVjdCwgcmVmZXJlbmNlTmFtZSwg
ZXh0ZW5zaW9uT2JqZWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L1dlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL1dlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmNwcApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDllYzkzZDI0YmMzNGFjMzYxZjU2NDMyOTdiZjVi
MGIzYThmYTcxYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRU
ZXh0dXJlcy5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwyOTkgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElU
UyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwot
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShXRUJHTCkKLQotI2luY2x1ZGUgIldlYkdMRXhw
ZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmgiCi0KLSNpbmNsdWRlICJFeHRlbnNpb25zM0Qu
aCIKLSNpbmNsdWRlICJJbnQzMkFycmF5LmgiCi0jaW5jbHVkZSAiV2ViR0xSZW5kZXJpbmdDb250
ZXh0LmgiCi0KLSNpbmNsdWRlIDx3dGYvT3duQXJyYXlQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1XZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlczo6V2ViR0xFeHBlcmlt
ZW50YWxDb21wcmVzc2VkVGV4dHVyZXMoV2ViR0xSZW5kZXJpbmdDb250ZXh0KiBjb250ZXh0KQot
ICAgIDogV2ViR0xFeHRlbnNpb24oY29udGV4dCkKLSAgICAsIG1fc3VwcG9ydHNEeHQxKGZhbHNl
KQotICAgICwgbV9zdXBwb3J0c0R4dDUoZmFsc2UpCi0gICAgLCBtX3N1cHBvcnRzRXRjMShmYWxz
ZSkKLSAgICAsIG1fc3VwcG9ydHNQdnJ0YyhmYWxzZSkKLXsKLSAgICBFeHRlbnNpb25zM0QqIGV4
dGVuc2lvbnMgPSBjb250ZXh0LT5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCk7
Ci0gICAgaWYgKGV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9FWFRfdGV4dHVyZV9jb21wcmVzc2lv
bl9keHQxIikpIHsKLSAgICAgICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfRVhUX3Rl
eHR1cmVfY29tcHJlc3Npb25fZHh0MSIpOwotICAgICAgICBtX3N1cHBvcnRzRHh0MSA9IHRydWU7
Ci0gICAgfQotICAgIGlmIChleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfRVhUX3RleHR1cmVfY29t
cHJlc3Npb25fczN0YyIpKSB7Ci0gICAgICAgIGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdM
X0VYVF90ZXh0dXJlX2NvbXByZXNzaW9uX3MzdGMiKTsKLSAgICAgICAgbV9zdXBwb3J0c0R4dDEg
PSB0cnVlOwotICAgICAgICBtX3N1cHBvcnRzRHh0NSA9IHRydWU7Ci0gICAgfQotICAgIGlmIChl
eHRlbnNpb25zLT5zdXBwb3J0cygiR0xfQ0hST01JVU1fdGV4dHVyZV9jb21wcmVzc2lvbl9keHQ1
IikpIHsKLSAgICAgICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfQ0hST01JVU1fdGV4
dHVyZV9jb21wcmVzc2lvbl9keHQ1Iik7Ci0gICAgICAgIG1fc3VwcG9ydHNEeHQ1ID0gdHJ1ZTsK
LSAgICB9Ci0gICAgaWYgKGV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9PRVNfY29tcHJlc3NlZF9F
VEMxX1JHQjhfdGV4dHVyZSIpKSB7Ci0gICAgICAgIGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQo
IkdMX09FU19jb21wcmVzc2VkX0VUQzFfUkdCOF90ZXh0dXJlIik7Ci0gICAgICAgIG1fc3VwcG9y
dHNFdGMxID0gdHJ1ZTsKLSAgICB9Ci0gICAgaWYgKGV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9J
TUdfdGV4dHVyZV9jb21wcmVzc2lvbl9wdnJ0YyIpKSB7Ci0gICAgICAgIGV4dGVuc2lvbnMtPmVu
c3VyZUVuYWJsZWQoIkdMX0lNR190ZXh0dXJlX2NvbXByZXNzaW9uX3B2cnRjIik7Ci0gICAgICAg
IG1fc3VwcG9ydHNQdnJ0YyA9IHRydWU7Ci0gICAgfQotCi0gICAgaWYgKG1fc3VwcG9ydHNEeHQx
KSB7Ci0gICAgICAgIG1fZm9ybWF0cy5hcHBlbmQoRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JH
Ql9TM1RDX0RYVDFfRVhUKTsKLSAgICAgICAgbV9mb3JtYXRzLmFwcGVuZChFeHRlbnNpb25zM0Q6
OkNPTVBSRVNTRURfUkdCQV9TM1RDX0RYVDFfRVhUKTsKLSAgICB9Ci0KLSAgICBpZiAobV9zdXBw
b3J0c0R4dDUpCi0gICAgICAgIG1fZm9ybWF0cy5hcHBlbmQoRXh0ZW5zaW9uczNEOjpDT01QUkVT
U0VEX1JHQkFfUzNUQ19EWFQ1X0VYVCk7Ci0KLSAgICBpZiAobV9zdXBwb3J0c0V0YzEpCi0gICAg
ICAgIG1fZm9ybWF0cy5hcHBlbmQoRXh0ZW5zaW9uczNEOjpFVEMxX1JHQjhfT0VTKTsKLQotICAg
IGlmIChtX3N1cHBvcnRzUHZydGMpIHsKLSAgICAgICAgbV9mb3JtYXRzLmFwcGVuZChFeHRlbnNp
b25zM0Q6OkNPTVBSRVNTRURfUkdCX1BWUlRDXzRCUFBWMV9JTUcpOwotICAgICAgICBtX2Zvcm1h
dHMuYXBwZW5kKEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX1BWUlRDXzRCUFBWMV9JTUcp
OwotICAgIH0KLX0KLQotV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXM6On5XZWJH
TEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlcygpCi17Ci19Ci0KLVdlYkdMRXh0ZW5zaW9u
OjpFeHRlbnNpb25OYW1lIFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzOjpnZXRO
YW1lKCkgY29uc3QKLXsKLSAgICByZXR1cm4gV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4
dHVyZXNOYW1lOwotfQotCi1QYXNzT3duUHRyPFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRl
eHR1cmVzPiBXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlczo6Y3JlYXRlKFdlYkdM
UmVuZGVyaW5nQ29udGV4dCogY29udGV4dCkKLXsKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IFdl
YkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzKGNvbnRleHQpKTsKLX0KLQotYm9vbCBX
ZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlczo6c3VwcG9ydGVkKFdlYkdMUmVuZGVy
aW5nQ29udGV4dCogY29udGV4dCkKLXsKLSAgICBFeHRlbnNpb25zM0QqIGV4dGVuc2lvbnMgPSBj
b250ZXh0LT5ncmFwaGljc0NvbnRleHQzRCgpLT5nZXRFeHRlbnNpb25zKCk7Ci0gICAgcmV0dXJu
IGV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9FWFRfdGV4dHVyZV9jb21wcmVzc2lvbl9keHQxIikK
LSAgICAgICAgfHwgZXh0ZW5zaW9ucy0+c3VwcG9ydHMoIkdMX0VYVF90ZXh0dXJlX2NvbXByZXNz
aW9uX3MzdGMiKQotICAgICAgICB8fCBleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfQ0hST01JVU1f
dGV4dHVyZV9jb21wcmVzc2lvbl9keHQ1IikKLSAgICAgICAgfHwgZXh0ZW5zaW9ucy0+c3VwcG9y
dHMoIkdMX09FU19jb21wcmVzc2VkX0VUQzFfUkdCOF90ZXh0dXJlIikKLSAgICAgICAgfHwgZXh0
ZW5zaW9ucy0+c3VwcG9ydHMoIkdMX0lNR190ZXh0dXJlX2NvbXByZXNzaW9uX3B2cnRjIik7Ci19
Ci0KLWJvb2wgV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXM6OnZhbGlkYXRlQ29t
cHJlc3NlZFRleEZvcm1hdChHQzNEZW51bSBmb3JtYXQpCi17Ci0gICAgc3dpdGNoIChmb3JtYXQp
IHsKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JfUzNUQ19EWFQxX0VYVDoK
LSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX1MzVENfRFhUMV9FWFQ6Ci0g
ICAgICAgIHJldHVybiBtX3N1cHBvcnRzRHh0MTsKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6RVRD
MV9SR0I4X09FUzoKLSAgICAgICAgcmV0dXJuIG1fc3VwcG9ydHNFdGMxOwotICAgIGNhc2UgRXh0
ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQ1X0VYVDoKLSAgICAgICAgcmV0dXJu
IG1fc3VwcG9ydHNEeHQ1OwotICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQl9Q
VlJUQ180QlBQVjFfSU1HOgotICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01QUkVTU0VEX1JHQkFf
UFZSVENfNEJQUFYxX0lNRzoKLSAgICAgICAgcmV0dXJuIG1fc3VwcG9ydHNQdnJ0YzsKLSAgICB9
Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi1ib29sIFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3Nl
ZFRleHR1cmVzOjp2YWxpZGF0ZUNvbXByZXNzZWRUZXhGdW5jRGF0YShHQzNEc2l6ZWkgd2lkdGgs
IEdDM0RzaXplaSBoZWlnaHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQzNEZW51bSBmb3JtYXQsIEFycmF5
QnVmZmVyVmlldyogcGl4ZWxzKQotewotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0ID0g
bV9jb250ZXh0LT5ncmFwaGljc0NvbnRleHQzRCgpOwotICAgIGlmICghcGl4ZWxzKSB7Ci0gICAg
ICAgIGNvbnRleHQtPnN5bnRoZXNpemVHTEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJTlZBTElE
X1ZBTFVFKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICBpZiAod2lkdGggPCAw
IHx8IGhlaWdodCA8IDApIHsKLSAgICAgICAgY29udGV4dC0+c3ludGhlc2l6ZUdMRXJyb3IoR3Jh
cGhpY3NDb250ZXh0M0Q6OklOVkFMSURfVkFMVUUpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgfQotCi0gICAgdW5zaWduZWQgaW50IGJ5dGVzUmVxdWlyZWQgPSAwOwotCi0gICAgc3dpdGNo
IChmb3JtYXQpIHsKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JfUzNUQ19E
WFQxX0VYVDoKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX1MzVENfRFhU
MV9FWFQ6Ci0gICAgY2FzZSBFeHRlbnNpb25zM0Q6OkVUQzFfUkdCOF9PRVM6Ci0gICAgICAgIHsK
LSAgICAgICAgICAgIGNvbnN0IGludCBrQmxvY2tXaWR0aCA9IDQ7Ci0gICAgICAgICAgICBjb25z
dCBpbnQga0Jsb2NrSGVpZ2h0ID0gNDsKLSAgICAgICAgICAgIGNvbnN0IGludCBrQmxvY2tTaXpl
ID0gODsKLSAgICAgICAgICAgIGludCBudW1CbG9ja3NBY3Jvc3MgPSAod2lkdGggKyBrQmxvY2tX
aWR0aCAtIDEpIC8ga0Jsb2NrV2lkdGg7Ci0gICAgICAgICAgICBpbnQgbnVtQmxvY2tzRG93biA9
IChoZWlnaHQgKyBrQmxvY2tIZWlnaHQgLSAxKSAvIGtCbG9ja0hlaWdodDsKLSAgICAgICAgICAg
IGludCBudW1CbG9ja3MgPSBudW1CbG9ja3NBY3Jvc3MgKiBudW1CbG9ja3NEb3duOwotICAgICAg
ICAgICAgYnl0ZXNSZXF1aXJlZCA9IG51bUJsb2NrcyAqIGtCbG9ja1NpemU7Ci0gICAgICAgIH0K
LSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBFeHRlbnNpb25zM0Q6OkNPTVBSRVNTRURfUkdCQV9T
M1RDX0RYVDVfRVhUOgotICAgICAgICB7Ci0gICAgICAgICAgICBjb25zdCBpbnQga0Jsb2NrV2lk
dGggPSA0OwotICAgICAgICAgICAgY29uc3QgaW50IGtCbG9ja0hlaWdodCA9IDQ7Ci0gICAgICAg
ICAgICBjb25zdCBpbnQga0Jsb2NrU2l6ZSA9IDE2OwotICAgICAgICAgICAgaW50IG51bUJsb2Nr
c0Fjcm9zcyA9ICh3aWR0aCArIGtCbG9ja1dpZHRoIC0gMSkgLyBrQmxvY2tXaWR0aDsKLSAgICAg
ICAgICAgIGludCBudW1CbG9ja3NEb3duID0gKGhlaWdodCArIGtCbG9ja0hlaWdodCAtIDEpIC8g
a0Jsb2NrSGVpZ2h0OwotICAgICAgICAgICAgaW50IG51bUJsb2NrcyA9IG51bUJsb2Nrc0Fjcm9z
cyAqIG51bUJsb2Nrc0Rvd247Ci0gICAgICAgICAgICBieXRlc1JlcXVpcmVkID0gbnVtQmxvY2tz
ICoga0Jsb2NrU2l6ZTsKLSAgICAgICAgfQotICAgICAgICBicmVhazsKLSAgICBjYXNlIEV4dGVu
c2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JfUFZSVENfNEJQUFYxX0lNRzoKLSAgICBjYXNlIEV4dGVu
c2lvbnMzRDo6Q09NUFJFU1NFRF9SR0JBX1BWUlRDXzRCUFBWMV9JTUc6Ci0gICAgICAgIHsKLSAg
ICAgICAgICAgIGJ5dGVzUmVxdWlyZWQgPSAoc3RkOjptYXgod2lkdGgsIDgpICogc3RkOjptYXgo
aGVpZ2h0LCA4KSArIDcpIC8gODsKLSAgICAgICAgfQotICAgICAgICBicmVhazsKLSAgICBkZWZh
dWx0OgotICAgICAgICBjb250ZXh0LT5zeW50aGVzaXplR0xFcnJvcihHcmFwaGljc0NvbnRleHQz
RDo6SU5WQUxJRF9FTlVNKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIGlm
IChwaXhlbHMtPmJ5dGVMZW5ndGgoKSAhPSBieXRlc1JlcXVpcmVkKSB7Ci0gICAgICAgIGNvbnRl
eHQtPnN5bnRoZXNpemVHTEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJTlZBTElEX1ZBTFVFKTsK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCi1i
b29sIFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzOjp2YWxpZGF0ZUNvbXByZXNz
ZWRUZXhTdWJEaW1lbnNpb25zKEdDM0RlbnVtIHRhcmdldCwgR0MzRGludCBsZXZlbCwgR0MzRGlu
dCB4b2Zmc2V0LCBHQzNEaW50IHlvZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDM0RzaXpl
aSB3aWR0aCwgR0MzRHNpemVpIGhlaWdodCwgR0MzRGVudW0gZm9ybWF0LCBXZWJHTFRleHR1cmUq
IHRleCkKLXsKLSAgICBzd2l0Y2ggKGZvcm1hdCkgewotICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpD
T01QUkVTU0VEX1JHQl9TM1RDX0RYVDFfRVhUOgotICAgIGNhc2UgRXh0ZW5zaW9uczNEOjpDT01Q
UkVTU0VEX1JHQkFfUzNUQ19EWFQxX0VYVDoKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6Q09NUFJF
U1NFRF9SR0JBX1MzVENfRFhUNV9FWFQ6Ci0gICAgY2FzZSBFeHRlbnNpb25zM0Q6OkVUQzFfUkdC
OF9PRVM6Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGNvbnN0IGludCBrQmxvY2tXaWR0aCA9IDQ7
Ci0gICAgICAgICAgICBjb25zdCBpbnQga0Jsb2NrSGVpZ2h0ID0gNDsKLSAgICAgICAgICAgIGlm
ICgoeG9mZnNldCAlIGtCbG9ja1dpZHRoKSB8fCAoeW9mZnNldCAlIGtCbG9ja0hlaWdodCkpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgaWYgKCF4b2Zmc2V0KSB7
Ci0gICAgICAgICAgICAgICAgaWYgKHdpZHRoICE9IHRleC0+Z2V0V2lkdGgodGFyZ2V0LCBsZXZl
bCkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgICAgICAgICAgaWYgKHdpZHRoICUga0Jsb2NrV2lkdGgpCi0gICAgICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICgh
eW9mZnNldCkgewotICAgICAgICAgICAgICAgIGlmIChoZWlnaHQgIT0gdGV4LT5nZXRIZWlnaHQo
dGFyZ2V0LCBsZXZlbCkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYgKGhlaWdodCAlIGtCbG9ja0hlaWdo
dCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIH0KLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6
Q09NUFJFU1NFRF9SR0JfUFZSVENfNEJQUFYxX0lNRzoKLSAgICBjYXNlIEV4dGVuc2lvbnMzRDo6
Q09NUFJFU1NFRF9SR0JBX1BWUlRDXzRCUFBWMV9JTUc6Ci0gICAgICAgIHsKLSAgICAgICAgICAg
IGlmICh4b2Zmc2V0IHx8IHlvZmZzZXQKLSAgICAgICAgICAgICAgICB8fCB3aWR0aCAhPSB0ZXgt
PmdldFdpZHRoKHRhcmdldCwgbGV2ZWwpIHx8IGhlaWdodCAhPSB0ZXgtPmdldEhlaWdodCh0YXJn
ZXQsIGxldmVsKSkgewotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVy
biBmYWxzZTsKLX0KLQotdm9pZCBXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlczo6
Y29tcHJlc3NlZFRleEltYWdlMkQoR0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxldmVsLCBHQzNE
ZW51bSBpbnRlcm5hbGZvcm1hdCwgR0MzRHNpemVpIHdpZHRoLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0MzRHNpemVpIGhl
aWdodCwgR0MzRGludCBib3JkZXIsIEFycmF5QnVmZmVyVmlldyogZGF0YSkKLXsKLSAgICBHcmFw
aGljc0NvbnRleHQzRCogY29udGV4dCA9IG1fY29udGV4dC0+Z3JhcGhpY3NDb250ZXh0M0QoKTsK
LSAgICBpZiAobV9jb250ZXh0LT5pc0NvbnRleHRMb3N0KCkpCi0gICAgICAgIHJldHVybjsKLSAg
ICBpZiAoIXZhbGlkYXRlQ29tcHJlc3NlZFRleEZvcm1hdChpbnRlcm5hbGZvcm1hdCkpIHsKLSAg
ICAgICAgY29udGV4dC0+c3ludGhlc2l6ZUdMRXJyb3IoR3JhcGhpY3NDb250ZXh0M0Q6OklOVkFM
SURfRU5VTSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgaWYgKGJvcmRlcikgewotICAg
ICAgICBjb250ZXh0LT5zeW50aGVzaXplR0xFcnJvcihHcmFwaGljc0NvbnRleHQzRDo6SU5WQUxJ
RF9WQUxVRSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgaWYgKCF2YWxpZGF0ZUNvbXBy
ZXNzZWRUZXhGdW5jRGF0YSh3aWR0aCwgaGVpZ2h0LCBpbnRlcm5hbGZvcm1hdCwgZGF0YSkpCi0g
ICAgICAgIHJldHVybjsKLSAgICBXZWJHTFRleHR1cmUqIHRleCA9IG1fY29udGV4dC0+dmFsaWRh
dGVUZXh0dXJlQmluZGluZyh0YXJnZXQsIHRydWUpOwotICAgIGlmICghdGV4KQotICAgICAgICBy
ZXR1cm47Ci0gICAgaWYgKCFtX2NvbnRleHQtPmlzR0xFUzJOUE9UU3RyaWN0KCkpIHsKLSAgICAg
ICAgaWYgKGxldmVsICYmIFdlYkdMVGV4dHVyZTo6aXNOUE9UKHdpZHRoLCBoZWlnaHQpKSB7Ci0g
ICAgICAgICAgICBjb250ZXh0LT5zeW50aGVzaXplR0xFcnJvcihHcmFwaGljc0NvbnRleHQzRDo6
SU5WQUxJRF9WQUxVRSk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICB9Ci0g
ICAgY29udGV4dC0+Y29tcHJlc3NlZFRleEltYWdlMkQodGFyZ2V0LCBsZXZlbCwgaW50ZXJuYWxm
b3JtYXQsIHdpZHRoLCBoZWlnaHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9yZGVyLCBkYXRhLT5ieXRlTGVuZ3RoKCksIGRhdGEtPmJhc2VBZGRyZXNzKCkpOwotICAgIHRl
eC0+c2V0TGV2ZWxJbmZvKHRhcmdldCwgbGV2ZWwsIGludGVybmFsZm9ybWF0LCB3aWR0aCwgaGVp
Z2h0LCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfQllURSk7Ci0gICAgbV9jb250ZXh0LT5j
bGVhbnVwQWZ0ZXJHcmFwaGljc0NhbGwoZmFsc2UpOwotfQotCi12b2lkIFdlYkdMRXhwZXJpbWVu
dGFsQ29tcHJlc3NlZFRleHR1cmVzOjpjb21wcmVzc2VkVGV4U3ViSW1hZ2UyRChHQzNEZW51bSB0
YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RpbnQgeG9mZnNldCwgR0MzRGludCB5b2Zmc2V0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0LCBHQzNEZW51bSBmb3Jt
YXQsIEFycmF5QnVmZmVyVmlldyogZGF0YSkKLXsKLSAgICBHcmFwaGljc0NvbnRleHQzRCogY29u
dGV4dCA9IG1fY29udGV4dC0+Z3JhcGhpY3NDb250ZXh0M0QoKTsKLSAgICBpZiAobV9jb250ZXh0
LT5pc0NvbnRleHRMb3N0KCkpCi0gICAgICAgIHJldHVybjsKLSAgICBpZiAoIXZhbGlkYXRlQ29t
cHJlc3NlZFRleEZvcm1hdChmb3JtYXQpKSB7Ci0gICAgICAgIGNvbnRleHQtPnN5bnRoZXNpemVH
TEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJTlZBTElEX0VOVU0pOwotICAgICAgICByZXR1cm47
Ci0gICAgfQotICAgIGlmICghdmFsaWRhdGVDb21wcmVzc2VkVGV4RnVuY0RhdGEod2lkdGgsIGhl
aWdodCwgZm9ybWF0LCBkYXRhKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgV2ViR0xUZXh0dXJl
KiB0ZXggPSBtX2NvbnRleHQtPnZhbGlkYXRlVGV4dHVyZUJpbmRpbmcodGFyZ2V0LCB0cnVlKTsK
LSAgICBpZiAoIXRleCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGZvcm1hdCAhPSB0ZXgt
PmdldEludGVybmFsRm9ybWF0KHRhcmdldCwgbGV2ZWwpKSB7Ci0gICAgICAgIGNvbnRleHQtPnN5
bnRoZXNpemVHTEVycm9yKEdyYXBoaWNzQ29udGV4dDNEOjpJTlZBTElEX1ZBTFVFKTsKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KLQotICAgIGlmICghdmFsaWRhdGVDb21wcmVzc2VkVGV4U3ViRGlt
ZW5zaW9ucyh0YXJnZXQsIGxldmVsLCB4b2Zmc2V0LCB5b2Zmc2V0LCB3aWR0aCwgaGVpZ2h0LCBm
b3JtYXQsIHRleCkpIHsKLSAgICAgICAgY29udGV4dC0+c3ludGhlc2l6ZUdMRXJyb3IoR3JhcGhp
Y3NDb250ZXh0M0Q6OklOVkFMSURfT1BFUkFUSU9OKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0K
LQotICAgIGNvbnRleHQtPmNvbXByZXNzZWRUZXhTdWJJbWFnZTJEKHRhcmdldCwgbGV2ZWwsIHhv
ZmZzZXQsIHlvZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lk
dGgsIGhlaWdodCwgZm9ybWF0LCBkYXRhLT5ieXRlTGVuZ3RoKCksIGRhdGEtPmJhc2VBZGRyZXNz
KCkpOwotICAgIG1fY29udGV4dC0+Y2xlYW51cEFmdGVyR3JhcGhpY3NDYWxsKGZhbHNlKTsKLX0K
LQotV2ViR0xHZXRJbmZvIFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzOjpnZXRD
b21wcmVzc2VkVGV4dHVyZUZvcm1hdHMoKQotewotICAgIHJldHVybiBXZWJHTEdldEluZm8oSW50
MzJBcnJheTo6Y3JlYXRlKCZtX2Zvcm1hdHNbMF0sIG1fZm9ybWF0cy5zaXplKCkpKTsKLX0KLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21wcmVz
c2VkVGV4dHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXhwZXJpbWVu
dGFsQ29tcHJlc3NlZFRleHR1cmVzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJk
MjcwOGFjYzYzODY0OGNlZWRkZTZlOTFiZTI5N2Q0OTA2NGI1ZTcuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
V2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaAorKysgL2Rldi9udWxsCkBAIC0x
LDc1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgot
ICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRl
eHR1cmVzX2gKLSNkZWZpbmUgV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXNfaAot
Ci0jaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIldlYkdMRXh0ZW5zaW9uLmgi
Ci0jaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1j
bGFzcyBBcnJheUJ1ZmZlclZpZXc7Ci1jbGFzcyBXZWJHTFRleHR1cmU7Ci0KLWNsYXNzIFdlYkdM
RXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzIDogcHVibGljIFdlYkdMRXh0ZW5zaW9uIHsK
LXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc093blB0cjxXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNz
ZWRUZXh0dXJlcz4gY3JlYXRlKFdlYkdMUmVuZGVyaW5nQ29udGV4dCopOwotCi0gICAgc3RhdGlj
IGJvb2wgc3VwcG9ydGVkKFdlYkdMUmVuZGVyaW5nQ29udGV4dCopOwotCi0gICAgdmlydHVhbCB+
V2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMoKTsKLSAgICB2aXJ0dWFsIEV4dGVu
c2lvbk5hbWUgZ2V0TmFtZSgpIGNvbnN0OwotCi0gICAgdm9pZCBjb21wcmVzc2VkVGV4SW1hZ2Uy
RChHQzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVybmFsZm9ybWF0
LCBHQzNEc2l6ZWkgd2lkdGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQzNEc2l6
ZWkgaGVpZ2h0LCBHQzNEaW50IGJvcmRlciwgQXJyYXlCdWZmZXJWaWV3KiBkYXRhKTsKLSAgICB2
b2lkIGNvbXByZXNzZWRUZXhTdWJJbWFnZTJEKEdDM0RlbnVtIHRhcmdldCwgR0MzRGludCBsZXZl
bCwgR0MzRGludCB4b2Zmc2V0LCBHQzNEaW50IHlvZmZzZXQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHQzNEc2l6ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RlbnVt
IGZvcm1hdCwgQXJyYXlCdWZmZXJWaWV3KiBkYXRhKTsKLQotICAgIFdlYkdMR2V0SW5mbyBnZXRD
b21wcmVzc2VkVGV4dHVyZUZvcm1hdHMoKTsKLQotcHJpdmF0ZToKLSAgICBXZWJHTEV4cGVyaW1l
bnRhbENvbXByZXNzZWRUZXh0dXJlcyhXZWJHTFJlbmRlcmluZ0NvbnRleHQqKTsKLQotICAgIGJv
b2wgdmFsaWRhdGVDb21wcmVzc2VkVGV4RnVuY0RhdGEoR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6
ZWkgaGVpZ2h0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0MzRGVu
dW0gZm9ybWF0LCBBcnJheUJ1ZmZlclZpZXcqIHBpeGVscyk7Ci0KLSAgICBib29sIHZhbGlkYXRl
Q29tcHJlc3NlZFRleEZvcm1hdChHQzNEZW51bSBmb3JtYXQpOwotCi0gICAgYm9vbCB2YWxpZGF0
ZUNvbXByZXNzZWRUZXhTdWJEaW1lbnNpb25zKEdDM0RlbnVtIHRhcmdldCwgR0MzRGludCBsZXZl
bCwgR0MzRGludCB4b2Zmc2V0LCBHQzNEaW50IHlvZmZzZXQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdDM0RzaXplaSB3aWR0aCwgR0MzRHNpemVpIGhlaWdo
dCwgR0MzRGVudW0gZm9ybWF0LCBXZWJHTFRleHR1cmUqKTsKLQotICAgIGJvb2wgbV9zdXBwb3J0
c0R4dDE7Ci0gICAgYm9vbCBtX3N1cHBvcnRzRHh0NTsKLSAgICBib29sIG1fc3VwcG9ydHNFdGMx
OwotICAgIGJvb2wgbV9zdXBwb3J0c1B2cnRjOwotCi0gICAgVmVjdG9yPGludD4gbV9mb3JtYXRz
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gV2ViR0xFeHBlcmlt
ZW50YWxDb21wcmVzc2VkVGV4dHVyZXNfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMuaWRsIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMu
aWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNDRlODE1Njg1ZTk2ZDdiODUxMzkw
MDE0YzI4MmZjMTZhZjllYjQ3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRXhwZXJpbWVudGFsQ29t
cHJlc3NlZFRleHR1cmVzLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICog
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci1tb2R1bGUgaHRtbCB7Ci0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9V0VC
R0wsCi0gICAgICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbENvbnRleHQsCi0gICAgICAgIE9t
aXRDb25zdHJ1Y3RvciwKLSAgICAgICAgRG9udENoZWNrRW51bXMKLSAgICBdIFdlYkdMRXhwZXJp
bWVudGFsQ29tcHJlc3NlZFRleHR1cmVzIHsKLSAgICAgICAgLyogQ29tcHJlc3NlZCBUZXh0dXJl
IEZvcm1hdHMgKi8KLSAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IENPTVBSRVNTRURfUkdCX1Mz
VENfRFhUMV9FWFQgICAgICAgID0gMHg4M0YwOwotICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQg
Q09NUFJFU1NFRF9SR0JBX1MzVENfRFhUMV9FWFQgICAgICAgPSAweDgzRjE7Ci0gICAgICAgIGNv
bnN0IHVuc2lnbmVkIGludCBDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQ1X0VYVCAgICAgICA9IDB4
ODNGMzsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IEVUQzFfUkdCOF9PRVMgICAgICAgICAg
ICAgICAgICAgICAgID0gMHg4RDY0OwotICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgQ09NUFJF
U1NFRF9SR0JfUFZSVENfNEJQUFYxX0lNRyAgICAgPSAweDhDMDA7Ci0gICAgICAgIGNvbnN0IHVu
c2lnbmVkIGludCBDT01QUkVTU0VEX1JHQkFfUFZSVENfNEJQUFYxX0lNRyAgICA9IDB4OEMwMjsK
LQotICAgICAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSB2b2lkIGNvbXByZXNzZWRUZXhJbWFnZTJE
KGluIHVuc2lnbmVkIGxvbmcgdGFyZ2V0LCBpbiBsb25nIGxldmVsLCBpbiB1bnNpZ25lZCBsb25n
IGludGVybmFsZm9ybWF0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluIGxvbmcgd2lkdGgsIGluIGxvbmcgaGVpZ2h0LCBpbiBsb25nIGJv
cmRlciwgaW4gQXJyYXlCdWZmZXJWaWV3IGRhdGEpOwotICAgICAgICBbU3RyaWN0VHlwZUNoZWNr
aW5nXSB2b2lkIGNvbXByZXNzZWRUZXhTdWJJbWFnZTJEKGluIHVuc2lnbmVkIGxvbmcgdGFyZ2V0
LCBpbiBsb25nIGxldmVsLCBpbiBsb25nIHhvZmZzZXQsIGluIGxvbmcgeW9mZnNldCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBs
b25nIHdpZHRoLCBpbiBsb25nIGhlaWdodCwgaW4gdW5zaWduZWQgbG9uZyBmb3JtYXQsIGluIEFy
cmF5QnVmZmVyVmlldyBkYXRhKTsKLSAgICB9OwotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2Fu
dmFzL1dlYkdMRXh0ZW5zaW9uLmgKaW5kZXggNDRkMWJmNGI5NzU5Zjk2ZTdlMjI1YTdlODg1MThk
MzQ2MGNjZmFhNS4uNjdkNGQ0NzgzODUzODAyOGVhZGNkOTdlYmRlM2U2MTMxN2ZjN2Q3YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xFeHRlbnNpb24uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEV4dGVuc2lvbi5oCkBAIC00MCw3ICs0
MCw2IEBAIHB1YmxpYzoKICAgICAgICAgT0VTVmVydGV4QXJyYXlPYmplY3ROYW1lLAogICAgICAg
ICBXZWJHTERlYnVnUmVuZGVyZXJJbmZvTmFtZSwKICAgICAgICAgV2ViR0xEZWJ1Z1NoYWRlcnNO
YW1lLAotICAgICAgICBXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlc05hbWUsCiAg
ICAgfTsKIAogICAgIHZvaWQgcmVmKCkgeyBtX2NvbnRleHQtPnJlZigpOyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRl
eCA0NDY0MDZiYzYyYmRhMTRlMmU3MjRlOWQ0YTZkNTA0M2VjZjk1NDFiLi44YTRkZTkzZGZhNWVi
MjVkMmRjMTk3YmExY2Y2ZGRlMWZjYjE1MWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAKQEAgLTU5LDcgKzU5LDYgQEAK
ICNpbmNsdWRlICJXZWJHTENvbnRleHRFdmVudC5oIgogI2luY2x1ZGUgIldlYkdMRGVidWdSZW5k
ZXJlckluZm8uaCIKICNpbmNsdWRlICJXZWJHTERlYnVnU2hhZGVycy5oIgotI2luY2x1ZGUgIldl
YkdMRXhwZXJpbWVudGFsQ29tcHJlc3NlZFRleHR1cmVzLmgiCiAjaW5jbHVkZSAiV2ViR0xGcmFt
ZWJ1ZmZlci5oIgogI2luY2x1ZGUgIldlYkdMUHJvZ3JhbS5oIgogI2luY2x1ZGUgIldlYkdMUmVu
ZGVyYnVmZmVyLmgiCkBAIC0yMTI2LDExICsyMTI1LDYgQEAgV2ViR0xFeHRlbnNpb24qIFdlYkdM
UmVuZGVyaW5nQ29udGV4dDo6Z2V0RXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gbV9vZXNWZXJ0ZXhBcnJheU9iamVjdC5nZXQoKTsKICAgICB9
Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKG5hbWUsICJXRUJHTF9FWFBFUklNRU5UQUxfY29t
cHJlc3NlZF90ZXh0dXJlcyIpKSB7Ci0gICAgICAgIGlmICghbV93ZWJnbEV4cGVyaW1lbnRhbENv
bXByZXNzZWRUZXh0dXJlcykKLSAgICAgICAgICAgIG1fd2ViZ2xFeHBlcmltZW50YWxDb21wcmVz
c2VkVGV4dHVyZXMgPSBXZWJHTEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlczo6Y3JlYXRl
KHRoaXMpOwotICAgICAgICByZXR1cm4gbV93ZWJnbEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0
dXJlcy5nZXQoKTsKLSAgICB9CiAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKG5hbWUsICJXRUJL
SVRfbG9zZV9jb250ZXh0IikpIHsKICAgICAgICAgaWYgKCFtX3dlYmtpdExvc2VDb250ZXh0KQog
ICAgICAgICAgICAgbV93ZWJraXRMb3NlQ29udGV4dCA9IFdlYktpdExvc2VDb250ZXh0OjpjcmVh
dGUodGhpcyk7CkBAIC0yMjQ3LDggKzIyNDEsNiBAQCBXZWJHTEdldEluZm8gV2ViR0xSZW5kZXJp
bmdDb250ZXh0OjpnZXRQYXJhbWV0ZXIoR0MzRGVudW0gcG5hbWUsIEV4Y2VwdGlvbkNvZGUmCiAg
ICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfV1JJVEVNQVNLOgogICAgICAgICByZXR1
cm4gZ2V0Qm9vbGVhbkFycmF5UGFyYW1ldGVyKHBuYW1lKTsKICAgICBjYXNlIEdyYXBoaWNzQ29u
dGV4dDNEOjpDT01QUkVTU0VEX1RFWFRVUkVfRk9STUFUUzoKLSAgICAgICAgaWYgKG1fd2ViZ2xF
eHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXMpCi0gICAgICAgICAgICByZXR1cm4gbV93ZWJn
bEV4cGVyaW1lbnRhbENvbXByZXNzZWRUZXh0dXJlcy0+Z2V0Q29tcHJlc3NlZFRleHR1cmVGb3Jt
YXRzKCk7CiAgICAgICAgIC8vIERlZmluZWQgYXMgbnVsbCBpbiB0aGUgc3BlYwogICAgICAgICBy
ZXR1cm4gV2ViR0xHZXRJbmZvKCk7CiAgICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6Q1VMTF9G
QUNFOgpAQCAtMjU3OSw4ICsyNTcxLDYgQEAgVmVjdG9yPFN0cmluZz4gV2ViR0xSZW5kZXJpbmdD
b250ZXh0OjpnZXRTdXBwb3J0ZWRFeHRlbnNpb25zKCkKICAgICAgICAgcmVzdWx0LmFwcGVuZCgi
T0VTX3N0YW5kYXJkX2Rlcml2YXRpdmVzIik7CiAgICAgaWYgKG1fY29udGV4dC0+Z2V0RXh0ZW5z
aW9ucygpLT5zdXBwb3J0cygiR0xfT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiKSkKICAgICAgICAg
cmVzdWx0LmFwcGVuZCgiT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiKTsKLSAgICBpZiAoV2ViR0xF
eHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXM6OnN1cHBvcnRlZCh0aGlzKSkKLSAgICAgICAg
cmVzdWx0LmFwcGVuZCgiV0VCR0xfRVhQRVJJTUVOVEFMX2NvbXByZXNzZWRfdGV4dHVyZXMiKTsK
ICAgICByZXN1bHQuYXBwZW5kKCJXRUJLSVRfbG9zZV9jb250ZXh0Iik7CiAKICAgICBpZiAoYWxs
b3dQcml2aWxlZ2VkRXh0ZW5zaW9ucygpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oCmluZGV4IDRiNTViNWM2NmY5Y2Y4ODFkZTNh
ZTlmZDliODY2Nzg1ZWVlZDViMTEuLjE1Y2U0OTdiNDhjYTRhYWM2ODA3ZGNhZGM1NzIwZTk2ZWVj
OWNiOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5oCkBAIC02Miw3ICs2Miw2IEBAIGNsYXNzIFdlYkdMU2hhZGVyOwogY2xhc3Mg
V2ViR0xUZXh0dXJlOwogY2xhc3MgV2ViR0xVbmlmb3JtTG9jYXRpb247CiBjbGFzcyBXZWJHTFZl
cnRleEFycmF5T2JqZWN0T0VTOwotY2xhc3MgV2ViR0xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4
dHVyZXM7CiBjbGFzcyBXZWJLaXRMb3NlQ29udGV4dDsKIAogdHlwZWRlZiBpbnQgRXhjZXB0aW9u
Q29kZTsKQEAgLTMxMiw3ICszMTEsNiBAQCBwdWJsaWM6CiAgICAgZnJpZW5kIGNsYXNzIFdlYkdM
T2JqZWN0OwogICAgIGZyaWVuZCBjbGFzcyBPRVNWZXJ0ZXhBcnJheU9iamVjdDsKICAgICBmcmll
bmQgY2xhc3MgV2ViR0xEZWJ1Z1NoYWRlcnM7Ci0gICAgZnJpZW5kIGNsYXNzIFdlYkdMRXhwZXJp
bWVudGFsQ29tcHJlc3NlZFRleHR1cmVzOwogCiAgICAgV2ViR0xSZW5kZXJpbmdDb250ZXh0KEhU
TUxDYW52YXNFbGVtZW50KiwgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4sIEdyYXBoaWNz
Q29udGV4dDNEOjpBdHRyaWJ1dGVzKTsKICAgICB2b2lkIGluaXRpYWxpemVOZXdDb250ZXh0KCk7
CkBAIC00ODcsNyArNDg1LDYgQEAgcHVibGljOgogICAgIE93blB0cjxXZWJLaXRMb3NlQ29udGV4
dD4gbV93ZWJraXRMb3NlQ29udGV4dDsKICAgICBPd25QdHI8V2ViR0xEZWJ1Z1JlbmRlcmVySW5m
bz4gbV93ZWJnbERlYnVnUmVuZGVyZXJJbmZvOwogICAgIE93blB0cjxXZWJHTERlYnVnU2hhZGVy
cz4gbV93ZWJnbERlYnVnU2hhZGVyczsKLSAgICBPd25QdHI8V2ViR0xFeHBlcmltZW50YWxDb21w
cmVzc2VkVGV4dHVyZXM+IG1fd2ViZ2xFeHBlcmltZW50YWxDb21wcmVzc2VkVGV4dHVyZXM7CiAK
ICAgICAvLyBIZWxwZXJzIGZvciBnZXRQYXJhbWV0ZXIgYW5kIG90aGVycwogICAgIFdlYkdMR2V0
SW5mbyBnZXRCb29sZWFuUGFyYW1ldGVyKEdDM0RlbnVtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmgKaW5kZXggMmMyNGUwMzY1YjA4NzQ0OGY5
NDEwZjljNzA5MzBjZjIwNjQwZGFjNy4uNWMwNGUzODVlZDcwOTg4ZjEyMTI1NTNmZDdkNzVmMWZl
ZGExNzdlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRXh0
ZW5zaW9uczNELmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5z
aW9uczNELmgKQEAgLTU3LDEwICs1Nyw2IEBAIHB1YmxpYzoKICAgICAvLyAgIEdMX09FU19yZ2I4
X3JnYmE4CiAgICAgLy8gICBHTF9PRVNfdmVydGV4X2FycmF5X29iamVjdAogICAgIC8vICAgR0xf
QU5HTEVfdHJhbnNsYXRlZF9zaGFkZXJfc291cmNlCi0gICAgLy8gICBHTF9FWFRfdGV4dHVyZV9j
b21wcmVzc2lvbl9keHQxCi0gICAgLy8gICBHTF9FWFRfdGV4dHVyZV9jb21wcmVzc2lvbl9zM3Rj
Ci0gICAgLy8gICBHTF9PRVNfY29tcHJlc3NlZF9FVEMxX1JHQjhfdGV4dHVyZQotICAgIC8vICAg
R0xfSU1HX3RleHR1cmVfY29tcHJlc3Npb25fcHZydGMKIAogICAgIC8vIFRha2VzIGZ1bGwgbmFt
ZSBvZiBleHRlbnNpb247IGZvciBleGFtcGxlLAogICAgIC8vICJHTF9FWFRfdGV4dHVyZV9mb3Jt
YXRfQkdSQTg4ODgiLgpAQCAtMTExLDIyICsxMDcsNiBAQCBwdWJsaWM6CiAKICAgICAgICAgLy8g
R0xfQU5HTEVfdHJhbnNsYXRlZF9zaGFkZXJfc291cmNlCiAgICAgICAgIFRSQU5TTEFURURfU0hB
REVSX1NPVVJDRV9MRU5HVEhfQU5HTEUgPSAweDkzQTAsCi0KLSAgICAgICAgLy8gR0xfRVhUX3Rl
eHR1cmVfY29tcHJlc3Npb25fZHh0MQotICAgICAgICAvLyBHTF9FWFRfdGV4dHVyZV9jb21wcmVz
c2lvbl9zM3RjCi0gICAgICAgIENPTVBSRVNTRURfUkdCX1MzVENfRFhUMV9FWFQgPSAweDgzRjAs
Ci0gICAgICAgIENPTVBSRVNTRURfUkdCQV9TM1RDX0RYVDFfRVhUID0gMHg4M0YxLAotICAgICAg
ICBDT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQzX0VYVCA9IDB4ODNGMiwKLSAgICAgICAgQ09NUFJF
U1NFRF9SR0JBX1MzVENfRFhUNV9FWFQgPSAweDgzRjMsCi0KLSAgICAgICAgLy8gR0xfT0VTX2Nv
bXByZXNzZWRfRVRDMV9SR0I4X3RleHR1cmUKLSAgICAgICAgRVRDMV9SR0I4X09FUyA9IDB4OEQ2
NCwKLQotICAgICAgICAvLyBHTF9JTUdfdGV4dHVyZV9jb21wcmVzc2lvbl9wdnJ0YwotICAgICAg
ICBDT01QUkVTU0VEX1JHQl9QVlJUQ180QlBQVjFfSU1HID0gMHg4QzAwLAotICAgICAgICBDT01Q
UkVTU0VEX1JHQl9QVlJUQ18yQlBQVjFfSU1HID0gMHg4QzAxLAotICAgICAgICBDT01QUkVTU0VE
X1JHQkFfUFZSVENfNEJQUFYxX0lNRyA9IDB4OEMwMiwKLSAgICAgICAgQ09NUFJFU1NFRF9SR0JB
X1BWUlRDXzJCUFBWMV9JTUcgPSAweDhDMDMsCiAgICAgfTsKIAogICAgIC8vIEdMX0FSQl9yb2J1
c3RuZXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0M0QuaAppbmRleCBjNWE5NWE4OWYzMDU0OTNjZDUzY2JiODg2MTBmNWM0YjExZDVj
MmU4Li5lNzRjMDAyZWM1ZmM2ZTQyOTJlNGRmMTFjY2ZmMDEwYjkyZWUwZjdlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgK
QEAgLTY1MCw4ICs2NTAsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBjb2xvck1hc2soR0MzRGJvb2xl
YW4gcmVkLCBHQzNEYm9vbGVhbiBncmVlbiwgR0MzRGJvb2xlYW4gYmx1ZSwgR0MzRGJvb2xlYW4g
YWxwaGEpOwogICAgIHZvaWQgY29tcGlsZVNoYWRlcihQbGF0Zm9ybTNET2JqZWN0KTsKIAotICAg
IHZvaWQgY29tcHJlc3NlZFRleEltYWdlMkQoR0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxldmVs
LCBHQzNEZW51bSBpbnRlcm5hbGZvcm1hdCwgR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkgaGVp
Z2h0LCBHQzNEaW50IGJvcmRlciwgR0MzRHNpemVpIGltYWdlU2l6ZSwgY29uc3Qgdm9pZCogZGF0
YSk7Ci0gICAgdm9pZCBjb21wcmVzc2VkVGV4U3ViSW1hZ2UyRChHQzNEZW51bSB0YXJnZXQsIEdD
M0RpbnQgbGV2ZWwsIEdDM0RpbnQgeG9mZnNldCwgR0MzRGludCB5b2Zmc2V0LCBHQzNEc2l6ZWkg
d2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RlbnVtIGZvcm1hdCwgR0MzRHNpemVpIGltYWdl
U2l6ZSwgY29uc3Qgdm9pZCogZGF0YSk7CisgICAgLy8gdm9pZCBjb21wcmVzc2VkVGV4SW1hZ2Uy
RChHQzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVybmFsZm9ybWF0
LCBHQzNEc2l6ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RpbnQgYm9yZGVyLCBHQzNE
c2l6ZWkgaW1hZ2VTaXplLCBjb25zdCB2b2lkKiBkYXRhKTsKKyAgICAvLyB2b2lkIGNvbXByZXNz
ZWRUZXhTdWJJbWFnZTJEKEdDM0RlbnVtIHRhcmdldCwgR0MzRGludCBsZXZlbCwgR0MzRGludCB4
b2Zmc2V0LCBHQzNEaW50IHlvZmZzZXQsIEdDM0RzaXplaSB3aWR0aCwgR0MzRHNpemVpIGhlaWdo
dCwgR0MzRGVudW0gZm9ybWF0LCBHQzNEc2l6ZWkgaW1hZ2VTaXplLCBjb25zdCB2b2lkKiBkYXRh
KTsKKwogICAgIHZvaWQgY29weVRleEltYWdlMkQoR0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxl
dmVsLCBHQzNEZW51bSBpbnRlcm5hbGZvcm1hdCwgR0MzRGludCB4LCBHQzNEaW50IHksIEdDM0Rz
aXplaSB3aWR0aCwgR0MzRHNpemVpIGhlaWdodCwgR0MzRGludCBib3JkZXIpOwogICAgIHZvaWQg
Y29weVRleFN1YkltYWdlMkQoR0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxldmVsLCBHQzNEaW50
IHhvZmZzZXQsIEdDM0RpbnQgeW9mZnNldCwgR0MzRGludCB4LCBHQzNEaW50IHksIEdDM0RzaXpl
aSB3aWR0aCwgR0MzRHNpemVpIGhlaWdodCk7CiAgICAgdm9pZCBjdWxsRmFjZShHQzNEZW51bSBt
b2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VmbC9H
cmFwaGljc0NvbnRleHQzREVmbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9lZmwvR3JhcGhpY3NDb250ZXh0M0RFZmwuY3BwCmluZGV4IGQ0NTIzNWUxNGNhNWYyNWE2OGFl
ZDg0M2IwNzI3OGZlMTQxZjhmYTcuLjgxY2ExZDRkOWI1YjlkN2E1N2FiMTI2YjViMWYxNGIwODA3
ZTU5NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VmbC9H
cmFwaGljc0NvbnRleHQzREVmbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZWZsL0dyYXBoaWNzQ29udGV4dDNERWZsLmNwcApAQCAtMTk2LDE4ICsxOTYsNiBAQCB2
b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpjb3B5VGV4U3ViSW1hZ2UyRChHQzNEZW51bSB0YXJnZXQs
IEdDM0RpbnQgbGV2ZWwsIEdDM0RpbgogICAgIG1faW50ZXJuYWwtPmNvcHlUZXhTdWJJbWFnZTJE
KHRhcmdldCwgbGV2ZWwsIHhPZmZzZXQsIHlPZmZzZXQsIHgsIHksIHdpZHRoLCBoZWlnaHQpOwog
fQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpjb21wcmVzc2VkVGV4SW1hZ2UyRChHQzNEZW51
bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVybmFsZm9ybWF0LCBHQzNEc2l6
ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RpbnQgYm9yZGVyLCBHQzNEc2l6ZWkgaW1h
Z2VTaXplLCBjb25zdCB2b2lkKiBkYXRhKQotewotICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9ydCBm
b3IgY29tcHJlc3NlZFRleEltYWdlMkQuCi0gICAgLy8gbV9pbnRlcm5hbC0+Y29tcHJlc3NlZFRl
eEltYWdlMkQodGFyZ2V0LCBsZXZlbCwgaW50ZXJuYWxmb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGJv
cmRlciwgaW1hZ2VTaXplLCBkYXRhKTsKLX0KLQotdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6Y29t
cHJlc3NlZFRleFN1YkltYWdlMkQoR0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxldmVsLCBHQzNE
aW50IHhvZmZzZXQsIEdDM0RpbnQgeW9mZnNldCwgR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkg
aGVpZ2h0LCBHQzNEZW51bSBmb3JtYXQsIEdDM0RzaXplaSBpbWFnZVNpemUsIGNvbnN0IHZvaWQq
IGRhdGEpCi17Ci0gICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBjb21wcmVzc2VkVGV4U3Vi
SW1hZ2UyRC4KLSAgICAvLyBtX2ludGVybmFsLT5jb21wcmVzc2VkVGV4U3ViSW1hZ2UyRCh0YXJn
ZXQsIGxldmVsLCB4b2Zmc2V0LCB5b2Zmc2V0LCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIGltYWdl
U2l6ZSwgZGF0YSk7Ci19Ci0KIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OmN1bGxGYWNlKEdDM0Rl
bnVtIG1vZGUpCiB7CiAgICAgbV9pbnRlcm5hbC0+Y3VsbEZhY2UobW9kZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dy
YXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAppbmRleCAwYjc5Y2MyNWU3M2U5MWIwMGM4ZDU0ZjEy
YmU5MDQyNDg5MzUxZjNkLi5hMjczMmNhZjE3ZTVkODY0YjkwZGIyN2Y0OGQxM2QzYzliZThmNTU0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3Jh
cGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKQEAgLTE0MzQsMTggKzE0
MzQsNiBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjp0ZXhTdWJJbWFnZTJEKEdDM0RlbnVtIHRh
cmdldCwgR0MzRGludCBsZXZlbCwgR0MzRGludCB4bwogICAgIDo6Z2xUZXhTdWJJbWFnZTJEKHRh
cmdldCwgbGV2ZWwsIHhvZmYsIHlvZmYsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgdHlwZSwgcGl4
ZWxzKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6Y29tcHJlc3NlZFRleEltYWdlMkQo
R0MzRGVudW0gdGFyZ2V0LCBHQzNEaW50IGxldmVsLCBHQzNEZW51bSBpbnRlcm5hbGZvcm1hdCwg
R0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0LCBHQzNEaW50IGJvcmRlciwgR0MzRHNp
emVpIGltYWdlU2l6ZSwgY29uc3Qgdm9pZCogZGF0YSkKLXsKLSAgICBtYWtlQ29udGV4dEN1cnJl
bnQoKTsKLSAgICA6OmdsQ29tcHJlc3NlZFRleEltYWdlMkQodGFyZ2V0LCBsZXZlbCwgaW50ZXJu
YWxmb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGJvcmRlciwgaW1hZ2VTaXplLCBkYXRhKTsKLX0KLQot
dm9pZCBHcmFwaGljc0NvbnRleHQzRDo6Y29tcHJlc3NlZFRleFN1YkltYWdlMkQoR0MzRGVudW0g
dGFyZ2V0LCBHQzNEaW50IGxldmVsLCBHQzNEaW50IHhvZmZzZXQsIEdDM0RpbnQgeW9mZnNldCwg
R0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0LCBHQzNEZW51bSBmb3JtYXQsIEdDM0Rz
aXplaSBpbWFnZVNpemUsIGNvbnN0IHZvaWQqIGRhdGEpCi17Ci0gICAgbWFrZUNvbnRleHRDdXJy
ZW50KCk7Ci0gICAgOjpnbENvbXByZXNzZWRUZXhTdWJJbWFnZTJEKHRhcmdldCwgbGV2ZWwsIHhv
ZmZzZXQsIHlvZmZzZXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgaW1hZ2VTaXplLCBkYXRhKTsK
LX0KLQogUGxhdGZvcm0zRE9iamVjdCBHcmFwaGljc0NvbnRleHQzRDo6Y3JlYXRlQnVmZmVyKCkK
IHsKICAgICBtYWtlQ29udGV4dEN1cnJlbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKaW5kZXgg
MzdlOTE1ZWEwNzYyMDI2N2EwYzI1NzgwMzNkMGZhNTM5MzBkNzg0Ni4uMzE4NTM2OTM1MWExNDBm
ZjlkMTEzMDEwN2ZjNjM4NGZjMzExOGQ3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKQEAgLTY1
MywxOCArNjUzLDYgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6Y29tcGlsZVNoYWRlcihQbGF0
Zm9ybTNET2JqZWN0IHNoYWRlcikKICAgICBnbENvbXBpbGVTaGFkZXIoc2hhZGVyKTsKIH0KIAot
dm9pZCBHcmFwaGljc0NvbnRleHQzRDo6Y29tcHJlc3NlZFRleEltYWdlMkQoR0MzRGVudW0gdGFy
Z2V0LCBHQzNEaW50IGxldmVsLCBHQzNEZW51bSBpbnRlcm5hbGZvcm1hdCwgR0MzRHNpemVpIHdp
ZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0LCBHQzNEaW50IGJvcmRlciwgR0MzRHNpemVpIGltYWdlU2l6
ZSwgY29uc3Qgdm9pZCogZGF0YSkKLXsKLSAgICBtX3ByaXZhdGUtPm1fZ2xXaWRnZXQtPm1ha2VD
dXJyZW50KCk7Ci0gICAgZ2xDb21wcmVzc2VkVGV4SW1hZ2UyRCh0YXJnZXQsIGxldmVsLCBpbnRl
cm5hbGZvcm1hdCwgd2lkdGgsIGhlaWdodCwgYm9yZGVyLCBpbWFnZVNpemUsIGRhdGEpOwotfQot
Ci12b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpjb21wcmVzc2VkVGV4U3ViSW1hZ2UyRChHQzNEZW51
bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RpbnQgeG9mZnNldCwgR0MzRGludCB5b2Zmc2V0
LCBHQzNEc2l6ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RlbnVtIGZvcm1hdCwgR0Mz
RHNpemVpIGltYWdlU2l6ZSwgY29uc3Qgdm9pZCogZGF0YSkKLXsKLSAgICBtX3ByaXZhdGUtPm1f
Z2xXaWRnZXQtPm1ha2VDdXJyZW50KCk7Ci0gICAgZ2xDb21wcmVzc2VkVGV4U3ViSW1hZ2UyRCh0
YXJnZXQsIGxldmVsLCB4b2Zmc2V0LCB5b2Zmc2V0LCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIGlt
YWdlU2l6ZSwgZGF0YSk7Ci19Ci0KIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OmNvcHlUZXhJbWFn
ZTJEKEdDM0RlbnVtIHRhcmdldCwgR0MzRGludCBsZXZlbCwgR0MzRGVudW0gaW50ZXJuYWxmb3Jt
YXQsIEdDM0RpbnQgeCwgR0MzRGludCB5LCBHQzNEc2l6ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWln
aHQsIEdDM0RpbnQgYm9yZGVyKQogewogICAgIG1fcHJpdmF0ZS0+bV9nbFdpZGdldC0+bWFrZUN1
cnJlbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdy
YXBoaWNzQ29udGV4dDNELmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJHcmFw
aGljc0NvbnRleHQzRC5oCmluZGV4IGRkM2JjNWJkMTljZGNiZWZjZjc5OTk0MTdmNjZiYjdkMmIy
NjdmNWQuLjQ1MDc1OTg4MzI0NjE3NTg0ZGI5NDBhNjMxNjYzMmVjYzBiMTI5MDkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0Qu
aApAQCAtMjI1LDggKzIyNSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgY29sb3JNYXNr
KFdHQzNEYm9vbGVhbiByZWQsIFdHQzNEYm9vbGVhbiBncmVlbiwgV0dDM0Rib29sZWFuIGJsdWUs
IFdHQzNEYm9vbGVhbiBhbHBoYSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjb21waWxlU2hhZGVy
KFdlYkdMSWQgc2hhZGVyKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZvaWQgY29tcHJlc3NlZFRleElt
YWdlMkQoV0dDM0RlbnVtIHRhcmdldCwgV0dDM0RpbnQgbGV2ZWwsIFdHQzNEZW51bSBpbnRlcm5h
bGZvcm1hdCwgV0dDM0RzaXplaSB3aWR0aCwgV0dDM0RzaXplaSBoZWlnaHQsIFdHQzNEaW50IGJv
cmRlciwgV0dDM0RzaXplaSBpbWFnZVNpemUsIGNvbnN0IHZvaWQqIGRhdGEpID0gMDsKLSAgICB2
aXJ0dWFsIHZvaWQgY29tcHJlc3NlZFRleFN1YkltYWdlMkQoV0dDM0RlbnVtIHRhcmdldCwgV0dD
M0RpbnQgbGV2ZWwsIFdHQzNEaW50IHhvZmZzZXQsIFdHQzNEaW50IHlvZmZzZXQsIFdHQzNEc2l6
ZWkgd2lkdGgsIFdHQzNEc2l6ZWkgaGVpZ2h0LCBXR0MzRGVudW0gZm9ybWF0LCBXR0MzRHNpemVp
IGltYWdlU2l6ZSwgY29uc3Qgdm9pZCogZGF0YSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjb3B5
VGV4SW1hZ2UyRChXR0MzRGVudW0gdGFyZ2V0LCBXR0MzRGludCBsZXZlbCwgV0dDM0RlbnVtIGlu
dGVybmFsZm9ybWF0LCBXR0MzRGludCB4LCBXR0MzRGludCB5LCBXR0MzRHNpemVpIHdpZHRoLCBX
R0MzRHNpemVpIGhlaWdodCwgV0dDM0RpbnQgYm9yZGVyKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IGNvcHlUZXhTdWJJbWFnZTJEKFdHQzNEZW51bSB0YXJnZXQsIFdHQzNEaW50IGxldmVsLCBXR0Mz
RGludCB4b2Zmc2V0LCBXR0MzRGludCB5b2Zmc2V0LCBXR0MzRGludCB4LCBXR0MzRGludCB5LCBX
R0MzRHNpemVpIHdpZHRoLCBXR0MzRHNpemVpIGhlaWdodCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBjdWxsRmFjZShXR0MzRGVudW0gbW9kZSkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcAppbmRleCAwNTIw
OTA2NzVhMjhkNWIzNjYwN2YxZWYxNmUyZTlhM2MwODAzZDYxLi5mODI3ZjE3YjA2NWZmZDkxOTgw
YmUxNDM1MTU0Yzk3ZWFlNWEyNTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcApAQCAtNDczLDEyICs0NzMs
NiBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6bmFtZSh0MSBhMSwgdDIgYTIsIHQz
IGEzLCB0NCBhNCwgdDUgYTUsIHQ2IGE2LCB0NwogICAgIG1faW1wbC0+bmFtZShhMSwgYTIsIGEz
LCBhNCwgYTUsIGE2LCBhNywgYTgpOyAgICAgIFwKIH0KIAotI2RlZmluZSBERUxFR0FURV9UT19J
TVBMXzkobmFtZSwgdDEsIHQyLCB0MywgdDQsIHQ1LCB0NiwgdDcsIHQ4LCB0OSkgICAgICAgXAot
dm9pZCBHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6Om5hbWUodDEgYTEsIHQyIGEyLCB0MyBhMywg
dDQgYTQsIHQ1IGE1LCB0NiBhNiwgdDcgYTcsIHQ4IGE4LCB0OSBhOSkgXAoteyBcCi0gICAgbV9p
bXBsLT5uYW1lKGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3LCBhOCwgYTkpOyAgICAgIFwKLX0K
LQogI2RlZmluZSBERUxFR0FURV9UT19JTVBMXzlSKG5hbWUsIHQxLCB0MiwgdDMsIHQ0LCB0NSwg
dDYsIHQ3LCB0OCwgdDksIHJ0KSBcCiBydCBHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6Om5hbWUo
dDEgYTEsIHQyIGEyLCB0MyBhMywgdDQgYTQsIHQ1IGE1LCB0NiBhNiwgdDcgYTcsIHQ4IGE4LCB0
OSBhOSkgXAogeyBcCkBAIC01MzksOCArNTMzLDYgQEAgREVMRUdBVEVfVE9fSU1QTF8xKGNsZWFy
U3RlbmNpbCwgR0MzRGludCkKIERFTEVHQVRFX1RPX0lNUExfNChjb2xvck1hc2ssIEdDM0Rib29s
ZWFuLCBHQzNEYm9vbGVhbiwgR0MzRGJvb2xlYW4sIEdDM0Rib29sZWFuKQogREVMRUdBVEVfVE9f
SU1QTF8xKGNvbXBpbGVTaGFkZXIsIFBsYXRmb3JtM0RPYmplY3QpCiAKLURFTEVHQVRFX1RPX0lN
UExfOChjb21wcmVzc2VkVGV4SW1hZ2UyRCwgR0MzRGVudW0sIEdDM0RpbnQsIEdDM0RlbnVtLCBH
QzNEaW50LCBHQzNEaW50LCBHQzNEc2l6ZWksIEdDM0RzaXplaSwgY29uc3Qgdm9pZCopCi1ERUxF
R0FURV9UT19JTVBMXzkoY29tcHJlc3NlZFRleFN1YkltYWdlMkQsIEdDM0RlbnVtLCBHQzNEaW50
LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEZW51bSwgR0MzRHNpemVp
LCBjb25zdCB2b2lkKikKIERFTEVHQVRFX1RPX0lNUExfOChjb3B5VGV4SW1hZ2UyRCwgR0MzRGVu
dW0sIEdDM0RpbnQsIEdDM0RlbnVtLCBHQzNEaW50LCBHQzNEaW50LCBHQzNEc2l6ZWksIEdDM0Rz
aXplaSwgR0MzRGludCkKIERFTEVHQVRFX1RPX0lNUExfOChjb3B5VGV4U3ViSW1hZ2UyRCwgR0Mz
RGVudW0sIEdDM0RpbnQsIEdDM0RpbnQsIEdDM0RpbnQsIEdDM0RpbnQsIEdDM0RpbnQsIEdDM0Rz
aXplaSwgR0MzRHNpemVpKQogREVMRUdBVEVfVE9fSU1QTF8xKGN1bGxGYWNlLCBHQzNEZW51bSkK
QEAgLTExMDUsOCArMTA5Nyw2IEBAIERFTEVHQVRFX1RPX0lOVEVSTkFMXzEoY2xlYXJTdGVuY2ls
LCBHQzNEaW50KQogREVMRUdBVEVfVE9fSU5URVJOQUxfNChjb2xvck1hc2ssIEdDM0Rib29sZWFu
LCBHQzNEYm9vbGVhbiwgR0MzRGJvb2xlYW4sIEdDM0Rib29sZWFuKQogREVMRUdBVEVfVE9fSU5U
RVJOQUxfMShjb21waWxlU2hhZGVyLCBQbGF0Zm9ybTNET2JqZWN0KQogCi1ERUxFR0FURV9UT19J
TlRFUk5BTF84KGNvbXByZXNzZWRUZXhJbWFnZTJELCBHQzNEZW51bSwgR0MzRGludCwgR0MzRGVu
dW0sIEdDM0RpbnQsIEdDM0RpbnQsIEdDM0RzaXplaSwgR0MzRHNpemVpLCBjb25zdCB2b2lkKikK
LURFTEVHQVRFX1RPX0lOVEVSTkFMXzkoY29tcHJlc3NlZFRleFN1YkltYWdlMkQsIEdDM0RlbnVt
LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEZW51bSwg
R0MzRHNpemVpLCBjb25zdCB2b2lkKikKIERFTEVHQVRFX1RPX0lOVEVSTkFMXzgoY29weVRleElt
YWdlMkQsIEdDM0RlbnVtLCBHQzNEaW50LCBHQzNEZW51bSwgR0MzRGludCwgR0MzRGludCwgR0Mz
RHNpemVpLCBHQzNEc2l6ZWksIEdDM0RpbnQpCiBERUxFR0FURV9UT19JTlRFUk5BTF84KGNvcHlU
ZXhTdWJJbWFnZTJELCBHQzNEZW51bSwgR0MzRGludCwgR0MzRGludCwgR0MzRGludCwgR0MzRGlu
dCwgR0MzRGludCwgR0MzRHNpemVpLCBHQzNEc2l6ZWkpCiBERUxFR0FURV9UT19JTlRFUk5BTF8x
KGN1bGxGYWNlLCBHQzNEZW51bSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmgKaW5kZXggOTNmODFhMzkyMWM1YmExNDYzN2Q2
NTAyMDA1Y2U0ODQxZWI1ZDZhZi4uMGUzODRjNDg5NmJiNjUxZDVjODBkYzBjMGM2OTA3OTZlOGM4
Y2QzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250
ZXh0M0RQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3ND
b250ZXh0M0RQcml2YXRlLmgKQEAgLTEzNyw4ICsxMzcsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBj
b2xvck1hc2soR0MzRGJvb2xlYW4gcmVkLCBHQzNEYm9vbGVhbiBncmVlbiwgR0MzRGJvb2xlYW4g
Ymx1ZSwgR0MzRGJvb2xlYW4gYWxwaGEpOwogICAgIHZvaWQgY29tcGlsZVNoYWRlcihQbGF0Zm9y
bTNET2JqZWN0KTsKIAotICAgIHZvaWQgY29tcHJlc3NlZFRleEltYWdlMkQoR0MzRGVudW0gdGFy
Z2V0LCBHQzNEaW50IGxldmVsLCBHQzNEZW51bSBpbnRlcm5hbGZvcm1hdCwgR0MzRHNpemVpIHdp
ZHRoLCBHQzNEc2l6ZWkgaGVpZ2h0LCBHQzNEaW50IGJvcmRlciwgR0MzRHNpemVpIGltYWdlU2l6
ZSwgY29uc3Qgdm9pZCogZGF0YSk7Ci0gICAgdm9pZCBjb21wcmVzc2VkVGV4U3ViSW1hZ2UyRChH
QzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RpbnQgeG9mZnNldCwgR0MzRGludCB5
b2Zmc2V0LCBHQzNEc2l6ZWkgd2lkdGgsIEdDM0RzaXplaSBoZWlnaHQsIEdDM0RlbnVtIGZvcm1h
dCwgR0MzRHNpemVpIGltYWdlU2l6ZSwgY29uc3Qgdm9pZCogZGF0YSk7CiAgICAgdm9pZCBjb3B5
VGV4SW1hZ2UyRChHQzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVy
bmFsZm9ybWF0LCBHQzNEaW50IHgsIEdDM0RpbnQgeSwgR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6
ZWkgaGVpZ2h0LCBHQzNEaW50IGJvcmRlcik7CiAgICAgdm9pZCBjb3B5VGV4U3ViSW1hZ2UyRChH
QzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RpbnQgeG9mZnNldCwgR0MzRGludCB5
b2Zmc2V0LCBHQzNEaW50IHgsIEdDM0RpbnQgeSwgR0MzRHNpemVpIHdpZHRoLCBHQzNEc2l6ZWkg
aGVpZ2h0KTsKICAgICB2b2lkIGN1bGxGYWNlKEdDM0RlbnVtIG1vZGUpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9Nb2NrV2ViR3JhcGhpY3NDb250ZXh0M0QuaCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTW9ja1dlYkdyYXBoaWNzQ29udGV4dDNELmgK
aW5kZXggOWVhZGI5M2ZjY2E0MzAxNzQzNzgyMjFiZDE4Nzc0MWVhMjRlMDI4ZC4uYzE0MDEwZjc3
MzMwYzc2MzY4NzExNmRjNzIwYzgwZjBjMDVmNjZkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS90ZXN0cy9Nb2NrV2ViR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL01vY2tXZWJHcmFwaGljc0NvbnRleHQzRC5oCkBAIC05OSw4
ICs5OSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgY29sb3JNYXNrKFdHQzNEYm9vbGVh
biByZWQsIFdHQzNEYm9vbGVhbiBncmVlbiwgV0dDM0Rib29sZWFuIGJsdWUsIFdHQzNEYm9vbGVh
biBhbHBoYSkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNvbXBpbGVTaGFkZXIoV2ViR0xJZCBzaGFk
ZXIpIHsgfQogCi0gICAgdmlydHVhbCB2b2lkIGNvbXByZXNzZWRUZXhJbWFnZTJEKFdHQzNEZW51
bSB0YXJnZXQsIFdHQzNEaW50IGxldmVsLCBXR0MzRGVudW0gaW50ZXJuYWxmb3JtYXQsIFdHQzNE
c2l6ZWkgd2lkdGgsIFdHQzNEc2l6ZWkgaGVpZ2h0LCBXR0MzRGludCBib3JkZXIsIFdHQzNEc2l6
ZWkgaW1hZ2VTaXplLCBjb25zdCB2b2lkKiBkYXRhKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgY29t
cHJlc3NlZFRleFN1YkltYWdlMkQoV0dDM0RlbnVtIHRhcmdldCwgV0dDM0RpbnQgbGV2ZWwsIFdH
QzNEaW50IHhvZmZzZXQsIFdHQzNEaW50IHlvZmZzZXQsIFdHQzNEc2l6ZWkgd2lkdGgsIFdHQzNE
c2l6ZWkgaGVpZ2h0LCBXR0MzRGVudW0gZm9ybWF0LCBXR0MzRHNpemVpIGltYWdlU2l6ZSwgY29u
c3Qgdm9pZCogZGF0YSkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNvcHlUZXhJbWFnZTJEKFdHQzNE
ZW51bSB0YXJnZXQsIFdHQzNEaW50IGxldmVsLCBXR0MzRGVudW0gaW50ZXJuYWxmb3JtYXQsIFdH
QzNEaW50IHgsIFdHQzNEaW50IHksIFdHQzNEc2l6ZWkgd2lkdGgsIFdHQzNEc2l6ZWkgaGVpZ2h0
LCBXR0MzRGludCBib3JkZXIpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBjb3B5VGV4U3ViSW1hZ2Uy
RChXR0MzRGVudW0gdGFyZ2V0LCBXR0MzRGludCBsZXZlbCwgV0dDM0RpbnQgeG9mZnNldCwgV0dD
M0RpbnQgeW9mZnNldCwgV0dDM0RpbnQgeCwgV0dDM0RpbnQgeSwgV0dDM0RzaXplaSB3aWR0aCwg
V0dDM0RzaXplaSBoZWlnaHQpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBjdWxsRmFjZShXR0MzRGVu
dW0gbW9kZSkgeyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>