<?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>118821</bug_id>
          
          <creation_ts>2013-07-17 16:23:08 -0700</creation_ts>
          <short_desc>REGRESSION(r152701): this was a buggy fix and we&apos;re going to try something different (Requested by thorton on #webkit).</short_desc>
          <delta_ts>2013-07-17 16:31:26 -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>118347</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>sam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>909500</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-17 16:23:08 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/152701 broke the build:
this was a buggy fix and we&apos;re going to try something different (Requested by thorton 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>909502</commentid>
    <comment_count>1</comment_count>
      <attachid>206927</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-17 16:23:32 -0700</bug_when>
    <thetext>Created attachment 206927
ROLLOUT of r152701

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>909505</commentid>
    <comment_count>2</comment_count>
      <attachid>206927</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-17 16:31:24 -0700</bug_when>
    <thetext>Comment on attachment 206927
ROLLOUT of r152701

Clearing flags on attachment: 206927

Committed r152814: &lt;http://trac.webkit.org/changeset/152814&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>909506</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-17 16:31:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206927</attachid>
            <date>2013-07-17 16:23:32 -0700</date>
            <delta_ts>2013-07-17 16:31:24 -0700</delta_ts>
            <desc>ROLLOUT of r152701</desc>
            <filename>bug-118821-20130717162332.patch</filename>
            <type>text/plain</type>
            <size>82157</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUyODA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQ4NDNiZDkyZTliZDE4
NGRmY2JhYzVjZDk4MjNiZDY2MzRhYmYyMC4uZGI0NGIxMzViNzM2MThlZTg0N2IzMjBjZjA0Nzcy
MzllMTdhMDA4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDEzLTA3LTE3ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTUyNzAxLCByMTUyNzAzLCByMTUyNzM5LCByMTUyNzU0LAorICAgICAg
ICBhbmQgcjE1Mjc1Ni4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQv
MTUyNzAxCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1MjcwMwor
ICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNTI3MzkKKyAgICAgICAg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzU0CisgICAgICAgIGh0dHA6Ly90
cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1Mjc1NgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE4ODIxCisKKyAgICAgICAgdGhpcyB3YXMgYSBidWdn
eSBmaXggYW5kIHdlJ3JlIGdvaW5nIHRvIHRyeSBzb21ldGhpbmcKKyAgICAgICAgZGlmZmVyZW50
IChSZXF1ZXN0ZWQgYnkgdGhvcnRvbiBvbiAjd2Via2l0KS4KKworICAgICAgICAqIENNYWtlTGlz
dHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMucHJpOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAgICAgICAqIFdlYkNv
cmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6Cisg
ICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzOgorICAgICAg
ICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBjc3MvQ1NT
RGVmYXVsdFN0eWxlU2hlZXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0RlZmF1bHRTdHls
ZVNoZWV0czo6ZW5zdXJlRGVmYXVsdFN0eWxlU2hlZXRzRm9yRWxlbWVudCk6CisgICAgICAgICog
Y3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5jc3M6IFJlbW92ZWQuCisgICAgICAgICogZG9tL0V2ZW50
TGlzdGVuZXIuaDoKKyAgICAgICAgKiBodG1sL0hUTUxBcHBsZXRFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50Ojp1cGRhdGVXaWRnZXQpOgorICAgICAgICAq
IGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJ
bkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJ
bkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KToKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQpOgorICAgICAgICAqIHBhZ2UvQ2hyb21lQ2xpZW50Lmg6CisgICAgICAg
IChXZWJDb3JlOjpDaHJvbWVDbGllbnQ6OnNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJl
QnV0dG9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6cmVwbGFjZW1lbnRUZXh0Um91bmRlZFJlY3RQcmVzc2VkQ29sb3Ip
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlJlbmRlckVtYmVkZGVk
T2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpzZXRQbHVn
aW5VbmF2YWlsYWJpbGl0eVJlYXNvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRl
ZE9iamVjdDo6c2V0VW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3JJc1ByZXNzZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OnBhaW50KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpwYWludFJlcGxhY2VkKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpnZXRSZXBsYWNlbWVudFRleHRHZW9tZXRyeSk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6cmVwbGFjZW1lbnRUZXh0UmVj
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6aXNSZXBsYWNlbWVu
dE9ic2N1cmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpsYXlv
dXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OmlzSW5VbmF2YWls
YWJsZVBsdWdpbkluZGljYXRvcik6CisgICAgICAgIChXZWJDb3JlOjpzaG91bGRVbmF2YWlsYWJs
ZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRl
ZE9iamVjdDo6aGFuZGxlVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3JFdmVudCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6Z2V0Q3Vyc29yKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpjYW5IYXZlQ2hpbGRyZW4pOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJXaWRnZXQuaDoKKwogMjAxMy0wNy0xNyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBPcHRpbWl6ZSBSZW5kZXJMYXllckNvbXBvc2l0b3IncyBP
dmVybGFwTWFwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggYjYxMTQwYjZkYmZkODgzNmZjMTAyY2MxMzhj
OGZhMTlkNjczMzZhOS4uYjhkYmU0YWI5ZWE2Mzk4NjhkMmEyYTY0NGI5ZGFlMGRiMzIzMDljNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTA3LTE3ICBDb21taXQgUXVl
dWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xs
aW5nIG91dCByMTUyNzAxLCByMTUyNzAzLCByMTUyNzM5LCByMTUyNzU0LAorICAgICAgICBhbmQg
cjE1Mjc1Ni4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzAx
CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1MjcwMworICAgICAg
ICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNTI3MzkKKyAgICAgICAgaHR0cDov
L3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzU0CisgICAgICAgIGh0dHA6Ly90cmFjLndl
YmtpdC5vcmcvY2hhbmdlc2V0LzE1Mjc1NgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTE4ODIxCisKKyAgICAgICAgdGhpcyB3YXMgYSBidWdneSBmaXgg
YW5kIHdlJ3JlIGdvaW5nIHRvIHRyeSBzb21ldGhpbmcKKyAgICAgICAgZGlmZmVyZW50IChSZXF1
ZXN0ZWQgYnkgdGhvcnRvbiBvbiAjd2Via2l0KS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5tbToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVW5hdmFpbGFibGVQbHVn
aW5NZXNzYWdlQmVCdXR0b24pOgorCiAyMDEzLTA3LTE3ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhh
bkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBVc2UgdG9IVE1MTWVkaWFFbGVtZW50CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cK
aW5kZXggNTU0NjQ0NGZlMmE5ZjMxNDNmZWFjZDYyZTAzYjMyMTFlYjNhMTcwOC4uOTJiMGRhOTAy
NmUzOTI4NThmZmQ1NDUwMzdlNDBhYWEwNWVlNTY0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5
IEBACisyMDEzLTA3LTE3ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4K
KworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTUyNzAxLCByMTUyNzAzLCByMTUy
NzM5LCByMTUyNzU0LAorICAgICAgICBhbmQgcjE1Mjc1Ni4KKyAgICAgICAgaHR0cDovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzAxCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5v
cmcvY2hhbmdlc2V0LzE1MjcwMworICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5n
ZXNldC8xNTI3MzkKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUy
NzU0CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1Mjc1NgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE4ODIxCisKKyAg
ICAgICAgdGhpcyB3YXMgYSBidWdneSBmaXggYW5kIHdlJ3JlIGdvaW5nIHRvIHRyeSBzb21ldGhp
bmcKKyAgICAgICAgZGlmZmVyZW50IChSZXF1ZXN0ZWQgYnkgdGhvcnRvbiBvbiAjd2Via2l0KS4K
KworICAgICAgICAqIFBsYXRmb3JtL0NvcmVJUEMvSGFuZGxlTWVzc2FnZS5oOgorICAgICAgICAq
IFNoYXJlZC9BUElDbGllbnRUcmFpdHMuY3BwOgorICAgICAgICAqIFNoYXJlZC9BUElDbGllbnRU
cmFpdHMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmg6CisgICAgICAgICog
VUlQcm9jZXNzL1dlYkxvYWRlckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRl
ckNsaWVudDo6cGx1Z2luTG9hZFBvbGljeSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkxvYWRl
ckNsaWVudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmZpbmRQbHVnaW4pOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzQ29ubmVj
dGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NDb25uZWN0aW9uOjpkaWRD
bG9zZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpwbHVnaW5Qcm9jZXNzQ3Jhc2hlZCk6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2Fn
ZUJlQnV0dG9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y3JlYXRlUGx1Z2luKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6Y2FuUGx1Z2luSGFuZGxlUmVzcG9uc2UpOgorCiAyMDEzLTA3LTE3ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIENyYXNoZXMgaW4g
Q0ZVUkxHZXRCeXRlcyB1bmRlciBXZWJQcm9jZXNzOjp1cGRhdGVBY3RpdmVQYWdlcygpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IDQ4OGNmYjRmMzZhOWRiNzcyM2JlN2E0YjlmY2Q5NmQyNGU3MGU2
NzAuLjM5ZWUyZTk4YTA2YWMyNThmYTU3MDAyYjY5YmJlYTU5MzdmMzYxOTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0yNTg1LDcgKzI1ODUsNiBAQCBzZXQoV2ViQ29yZV9VU0VSX0FHRU5UX1NU
WUxFX1NIRUVUUwogICAgICR7V0VCQ09SRV9ESVJ9L2Nzcy9tYXRobWwuY3NzCiAgICAgJHtXRUJD
T1JFX0RJUn0vY3NzL21lZGlhQ29udHJvbHMuY3NzCiAgICAgJHtXRUJDT1JFX0RJUn0vY3NzL3Bs
dWdJbnMuY3NzCi0gICAgJHtXRUJDT1JFX0RJUn0vY3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5jc3MK
ICAgICAke1dFQkNPUkVfRElSfS9jc3MvcXVpcmtzLmNzcwogICAgICR7V0VCQ09SRV9ESVJ9L2Nz
cy9zdmcuY3NzCiAgICAgJHtXRUJDT1JFX0RJUn0vY3NzL3ZpZXctc291cmNlLmNzcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMDA5OGY1MzBhNzJlNDAxMjlhODgyYTFlMjkwOGQy
MDA0YjkyMWMyZC4uMWNmOTU5NzQ4M2FmMzQ5NDc3NzRkZWI0Y2FmYzhkZjlmMTQ5YmM1OSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC04MDksNyArODA5LDcgQEAgWFBhdGhHcmFt
bWFyLmNwcCA6IHhtbC9YUGF0aEdyYW1tYXIueSAkKFBST0pFQ1RfRklMRSkKIAogIyB1c2VyIGFn
ZW50IHN0eWxlIHNoZWV0cwogCi1VU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyA9ICQoV2ViQ29yZSkv
Y3NzL2h0bWwuY3NzICQoV2ViQ29yZSkvY3NzL3F1aXJrcy5jc3MgJChXZWJDb3JlKS9jc3Mvdmll
dy1zb3VyY2UuY3NzICQoV2ViQ29yZSkvY3NzL3RoZW1lV2luLmNzcyAkKFdlYkNvcmUpL2Nzcy90
aGVtZVdpblF1aXJrcy5jc3MgJChXZWJDb3JlKS9jc3MvcGx1Z0lucy5jc3MgJChXZWJDb3JlKS9j
c3MvdW5hdmFpbGFibGVQbHVnSW5zLmNzcworVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMgPSAkKFdl
YkNvcmUpL2Nzcy9odG1sLmNzcyAkKFdlYkNvcmUpL2Nzcy9xdWlya3MuY3NzICQoV2ViQ29yZSkv
Y3NzL3ZpZXctc291cmNlLmNzcyAkKFdlYkNvcmUpL2Nzcy90aGVtZVdpbi5jc3MgJChXZWJDb3Jl
KS9jc3MvdGhlbWVXaW5RdWlya3MuY3NzICQoV2ViQ29yZSkvY3NzL3BsdWdJbnMuY3NzCiAKIGlm
ZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfU1ZHLCQoRkVBVFVSRV9ERUZJTkVTKSksIEVOQUJMRV9T
VkcpCiAgICAgVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NI
RUVUUykgJChXZWJDb3JlKS9jc3Mvc3ZnLmNzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMucHJpIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMucHJpCmlu
ZGV4IDFlMTcyMmU4ZjQ0NTEwOGZkMjRiMGE2N2U5MWI5NjM3NzhlNjA3NzEuLmNmMmNlMTZiNWFm
NDdjM2UxZmIyYzMxOGQ3YjhlYjZhNmMwYzAzZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5w
cmkKQEAgLTgzLDcgKzgzLDYgQEAgU1RZTEVTSEVFVFNfRU1CRUQgPSBcCiAgICAgJCRQV0QvY3Nz
L21lZGlhQ29udHJvbHNRdC5jc3MgXAogICAgICQkUFdEL2Nzcy9tZWRpYUNvbnRyb2xzUXRGdWxs
c2NyZWVuLmNzcyBcCiAgICAgJCRQV0QvY3NzL3BsdWdJbnMuY3NzIFwKLSAgICAkJFBXRC9jc3Mv
dW5hdmFpbGFibGVQbHVnSW5zLmNzcyBcCiAgICAgJCRQV0QvY3NzL3RoZW1lUXROb0xpc3Rib3hl
cy5jc3MgXAogICAgICQkUFdEL2Nzcy9tb2JpbGVUaGVtZVF0LmNzcwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxl
LmFtCmluZGV4IDc4ZTMwMTgyYTg2ZmMwMDBmZjQ2ZWMxOWIxOGU1NzIyZDkzYjFhMzAuLmFjZjRj
NjNhZWI0YWViZjEyNGJmYzA1MTRhNzk4NTUzYzQ0ZTIxNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFt
CkBAIC0yNjYsOCArMjY2LDcgQEAgVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMgPSBcCiAJJChXZWJD
b3JlKS9jc3MvbWVkaWFDb250cm9scy5jc3MgXAogCSQoV2ViQ29yZSkvY3NzL21lZGlhQ29udHJv
bHNHdGsuY3NzIFwKIAkkKFdlYkNvcmUpL2Nzcy9mdWxsc2NyZWVuLmNzcyBcCi0JJChXZWJDb3Jl
KS9jc3MvcGx1Z0lucy5jc3MgXAotCSQoV2ViQ29yZSkvY3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5j
c3MKKwkkKFdlYkNvcmUpL2Nzcy9wbHVnSW5zLmNzcwogCiAjIHBsdWctaW4gcmVzb3VyY2VzCiBQ
TFVHX0lOU19SRVNPVVJDRVMgPSBcCkBAIC02NjEsNyArNjYwLDYgQEAgRVhUUkFfRElTVCArPSBc
CiAJU291cmNlL1dlYkNvcmUvY3NzL3N2Zy5jc3MgXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9TVkdD
U1NQcm9wZXJ0eU5hbWVzLmluIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvU1ZHQ1NTVmFsdWVLZXl3
b3Jkcy5pbiBcCi0JU291cmNlL1dlYkNvcmUvY3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5jc3MgXAog
CVNvdXJjZS9XZWJDb3JlL2Nzcy92aWV3LXNvdXJjZS5jc3MgXAogCVNvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRGb250RmFtaWx5TmFtZXMuaW4gXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5h
bWVzLmluIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KaW5kZXggNWNlODMxZTM1ODQ0ZDhlZmE4Yjg3Yzgz
N2IxYzdkODNiMmZkYmE4ZC4uYjNkYzliYWVhOTNiYjA4MmU2MGJiZGM2NDg1MDIxNDgzNjlhNmFl
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KQEAgLTY2OSw3ICs2NjksNiBAQCBfX1pON1dlYkNvcmUy
MERpc3BsYXlTbGVlcERpc2FibGVyRDFFdgogX19aTjdXZWJDb3JlMjBOb2RlUmVuZGVyaW5nQ29u
dGV4dEMxRVBOU180Tm9kZUUKIF9fWk43V2ViQ29yZTIwTm9kZVJlbmRlcmluZ0NvbnRleHREMUV2
CiBfX1pON1dlYkNvcmUyMFJlbmRlckVtYmVkZGVkT2JqZWN0MjlzZXRQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbkVOUzBfMjZQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbkUKLV9fWk43V2ViQ29y
ZTIwUmVuZGVyRW1iZWRkZWRPYmplY3Q0MHNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uRGVz
Y3JpcHRpb25FUktOM1dURjZTdHJpbmdFCiBfX1pOSzdXZWJDb3JlMjBSZW5kZXJFbWJlZGRlZE9i
amVjdDIxaXNSZXBsYWNlbWVudE9ic2N1cmVkRXYKIF9fWk43V2ViQ29yZTIwUmVzb3VyY2VIYW5k
bGVDbGllbnQxNmRpZFJlY2VpdmVCdWZmZXJFUE5TXzE0UmVzb3VyY2VIYW5kbGVFTjNXVEYxMFBh
c3NSZWZQdHJJTlNfMTJTaGFyZWRCdWZmZXJFRUVpCiBfX1pON1dlYkNvcmUyMFJlc291cmNlSGFu
ZGxlQ2xpZW50MjB3aWxsU2VuZFJlcXVlc3RBc3luY0VQTlNfMTRSZXNvdXJjZUhhbmRsZUVSS05T
XzE1UmVzb3VyY2VSZXF1ZXN0RVJLTlNfMTZSZXNvdXJjZVJlc3BvbnNlRQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggMTkzMTBmNWNlNjcz
N2Y5YTVmZWQ1ZmE0N2U1MjhmZWVkNDc5YjJkZS4uNzgxMGNiNDQ2Njc0MDAwMDIwZjViMGZlYzUw
M2UyYjljODc0YzY0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qCkBAIC0xMzY2Niw3ICsxMzY2Niw2IEBACiAgICAgPE5vbmUgSW5jbHVkZT0i
Li5cY3NzXG1lZGlhQ29udHJvbHMuY3NzIiAvPgogICAgIDxOb25lIEluY2x1ZGU9Ii4uXGNzc1xw
bHVnSW5zLmNzcyIgLz4KICAgICA8Tm9uZSBJbmNsdWRlPSIuLlxjc3NccXVpcmtzLmNzcyIgLz4K
LSAgICA8Tm9uZSBJbmNsdWRlPSIuLlxjc3NcdW5hdmFpbGFibGVQbHVnSW5zLmNzcyIgLz4KICAg
ICA8Tm9uZSBJbmNsdWRlPSIuLlx4bWxcWFBhdGhHcmFtbWFyLnkiIC8+CiAgICAgPE5vbmUgSW5j
bHVkZT0iLi5cYmluZGluZ3Ncc2NyaXB0c1xDb2RlR2VuZXJhdG9yLnBtIiAvPgogICAgIDxOb25l
IEluY2x1ZGU9Ii4uXGJpbmRpbmdzXHNjcmlwdHNcQ29kZUdlbmVyYXRvckpTLnBtIiAvPgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5m
aWx0ZXJzIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5m
aWx0ZXJzCmluZGV4IDBjYjUxOThmYTc5N2JlNmIwNTM2YjQzZDA4MGUyZGM3NmM2MzM2YWUuLjhi
MzcxYTA3OWUzMTQxYTA0YzczODg5ZTljYjUyMjg5MTZkNmVmZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycworKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKQEAg
LTE0ODQ4LDkgKzE0ODQ4LDYgQEAKICAgICA8Tm9uZSBJbmNsdWRlPSIuLlxjc3NccXVpcmtzLmNz
cyI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvTm9uZT4KLSAgICA8Tm9uZSBJ
bmNsdWRlPSIuLlxjc3NcdW5hdmFpbGFibGVQbHVnSW5zLmNzcyI+Ci0gICAgICA8RmlsdGVyPmNz
czwvRmlsdGVyPgotICAgIDwvTm9uZT4KICAgICA8Tm9uZSBJbmNsdWRlPSIuLlx4bWxcWFBhdGhH
cmFtbWFyLnkiPgogICAgICAgPEZpbHRlcj54bWw8L0ZpbHRlcj4KICAgICA8L05vbmU+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
MzI2NGM5MjViODliNDU5MjRmYTUyNjFjYjgyYjZmNWE4NWNmNjk1Ni4uNDY1YmNjYWY0ZDE0MDk2
NDhkNzQ5YzQ3ZGI2NDVlYzNlMTc2OGQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTk2Nyw3ICsxOTY3LDYgQEAKIAkJN0FG
MTFBNUExMkU3Mjc0OTAwNjFGMjNDIC8qIEluc3BlY3RvclJ1bnRpbWVBZ2VudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGMTFBNTkxMkU3Mjc0OTAw
NjFGMjNDIC8qIEluc3BlY3RvclJ1bnRpbWVBZ2VudC5oICovOyB9OwogCQk3QUZENEE4QjExMzFD
Mjc2MDAzNUI4ODMgLyogU2NyaXB0QnJlYWtwb2ludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRDRBOEExMTMxQzI3NjAwMzVCODgzIC8qIFNjcmlw
dEJyZWFrcG9pbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk3QUZENEZGNDExMzI3N0I2MDAzNUI4ODMgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRDRGRjMx
MTMyNzdCNjAwMzVCODgzIC8qIFNjcmlwdERlYnVnTGlzdGVuZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk3QkU3NDI3MzgxRkE5MDZGQkI0RjBG
MkMgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk1MEM0QzAyQkVEODkzNkY4MThFMkY5OSAvKiBKU1NWR0dyYXBo
aWNzRWxlbWVudC5oICovOyB9OwogCQk3QzUyMkQ0QjE1QjQ3N0U4MDA5QjdDOTUgLyogSW5zcGVj
dG9yT3ZlcmxheS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QzUyMkQ0OTE1QjQ3N0U4MDA5QjdDOTUgLyogSW5zcGVjdG9yT3ZlcmxheS5jcHAgKi87
IH07CiAJCTdDQzdFM0Q3MTcyMDhDMEYwMDNDNTI3NyAvKiBJRE5TY3JpcHRXaGl0ZUxpc3QudHh0
IGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0M3RTNE
NjE3MjA4QzBGMDAzQzUyNzcgLyogSUROU2NyaXB0V2hpdGVMaXN0LnR4dCAqLzsgfTsKIAkJN0NF
MzBEQTkxNzFCNjNEMjAwRUMzM0UxIC8qIEZyYW1lU25hcHNob3R0aW5nTWFjLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0NFMzBEQTcxNzFCNjNEMjAw
RUMzM0UxIC8qIEZyYW1lU25hcHNob3R0aW5nTWFjLm1tICovOyB9OwpAQCAtMjE5Niw3ICsyMTk1
LDYgQEAKIAkJODUxMzZDQTYwQUVENjY1OTAwRjkwQTNEIC8qIHNvdXRoV2VzdFJlc2l6ZUN1cnNv
ci5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1
MTM2Qzk2MEFFRDY2NTkwMEY5MEEzRCAvKiBzb3V0aFdlc3RSZXNpemVDdXJzb3IucG5nICovOyB9
OwogCQk4NTEzNkNBNzBBRUQ2NjU5MDBGOTBBM0QgLyogd2FpdEN1cnNvci5wbmcgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1MTM2Qzk3MEFFRDY2NTkw
MEY5MEEzRCAvKiB3YWl0Q3Vyc29yLnBuZyAqLzsgfTsKIAkJODUxMzZDQTgwQUVENjY1OTAwRjkw
QTNEIC8qIHdlc3RSZXNpemVDdXJzb3IucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4NTEzNkM5ODBBRUQ2NjU5MDBGOTBBM0QgLyogd2VzdFJlc2l6
ZUN1cnNvci5wbmcgKi87IH07Ci0JCTg1MTc0RUMyQkNDQUYxN0VBRTNGNDZGOCAvKiBKU1NWR0dy
YXBoaWNzRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1QTkxNDY5RThFOUY4NDg1QzM3QTI4NzYgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQu
Y3BwICovOyB9OwogCQk4NTE4M0I0MjBBQTY5MjYxMDBGMTlGQTMgLyogRE9NSFRNTEJSRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODUxODNC
MzgwQUE2OTI2MTAwRjE5RkEzIC8qIERPTUhUTUxCUkVsZW1lbnQuaCAqLzsgfTsKIAkJODUxODNC
NDMwQUE2OTI2MTAwRjE5RkEzIC8qIERPTUhUTUxCUkVsZW1lbnQubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTE4M0IzOTBBQTY5MjYxMDBGMTlGQTMg
LyogRE9NSFRNTEJSRWxlbWVudC5tbSAqLzsgfTsKIAkJODUxODNCNDQwQUE2OTI2MTAwRjE5RkEz
IC8qIERPTUhUTUxIZWFkaW5nRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODUxODNCM0EwQUE2OTI2MTAwRjE5RkEzIC8qIERPTUhUTUxIZWFk
aW5nRWxlbWVudC5oICovOyB9OwpAQCAtNDQxMCw2ICs0NDA4LDggQEAKIAkJQjJGQTNEOUIwQUI3
NUE2RjAwMEU1QUM0IC8qIEpTU1ZHR0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0IzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0dF
bGVtZW50LmggKi87IH07CiAJCUIyRkEzRDlDMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0dyYWRp
ZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMkZBM0NCNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdHcmFkaWVudEVsZW1lbnQuY3Bw
ICovOyB9OwogCQlCMkZBM0Q5RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdHcmFkaWVudEVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEz
Q0I1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0dyYWRpZW50RWxlbWVudC5oICovOyB9OworCQk4
NTE3NEVDMkJDQ0FGMTdFQUUzRjQ2RjggLyogSlNTVkdHcmFwaGljc0VsZW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUE5MTQ2OUU4RTlGODQ4
NUMzN0EyODc2IC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50LmNwcCAqLzsgfTsKKwkJN0JFNzQyNzM4
MUZBOTA2RkJCNEYwRjJDIC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NTBDNEMwMkJFRDg5MzZGODE4RTJGOTkg
LyogSlNTVkdHcmFwaGljc0VsZW1lbnQuaCAqLzsgfTsKIAkJQjJGQTNEOUUwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0I2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ltYWdl
RWxlbWVudC5jcHAgKi87IH07CiAJCUIyRkEzRDlGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0lt
YWdlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjJGQTNDQjcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmggKi87IH07
CiAJCUIyRkEzREEwMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NCODBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdMZW5ndGguY3BwICovOyB9OwpAQCAtODA5Nyw3ICs4MDk3LDYgQEAKIAkJ
NUE1NzRGMjMxMzFEQjkzOTAwNDcxQjg4IC8qIFJlbmRlclF1b3RlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclF1b3RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTVBNTc0RjI2MTMxREI5NkQwMDQ3MUI4OCAvKiBRdW90ZXNEYXRhLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFF1b3Rlc0RhdGEuY3BwOyBwYXRoID0gc3R5
bGUvUXVvdGVzRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVBNTc0RjI3
MTMxREI5NkQwMDQ3MUI4OCAvKiBRdW90ZXNEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IFF1b3Rlc0RhdGEuaDsgcGF0aCA9IHN0eWxlL1F1b3Rlc0RhdGEuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNUE5MTQ2OUU4RTlGODQ4NUMzN0EyODc2IC8qIEpTU1ZH
R3JhcGhpY3NFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR0dyYXBoaWNzRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTVEMjFBODAwMTNFQ0U1REYwMEJCNzA2NCAvKiBXZWJWVFRQYXJzZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViVlRUUGFyc2VyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNUQyMUE4MDExM0VDRTVERjAwQkI3MDY0IC8qIFdlYlZUVFBhcnNl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJWVFRQYXJzZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUQ0QjhDNTIxMUU1MkM4QjAwQkJCNjJGIC8qIFdl
YkNvcmUuZXhwLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkNvcmUuZXhwLmluOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODI3OSw3ICs4Mjc4LDYgQEAKIAkJNzExOEZFRDMx
NTY4NUNDNjAwMzBCNzlBIC8qIEpTU1ZHVmlld1NwZWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNTVkdWaWV3U3BlYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk3MTM0NDk2QjE0Njk0MUIzMDA3MjAzMTIgLyogU1ZHTGVuZ3RoQ29udGV4dC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdMZW5ndGhDb250ZXh0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzEzNDQ5NkMxNDY5NDFCMzAwNzIwMzEyIC8qIFNW
R0xlbmd0aENvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTGVu
Z3RoQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MTNCQ0MyNzE3ODQ0
QkUyMDA2RjFCMkUgLyogdW5hdmFpbGFibGVQbHVnSW5zLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gdW5hdmFpbGFi
bGVQbHVnSW5zLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzEzRTcwQUYxNzMz
RThCMzAwQTIyRDAwIC8qIHBsdWdJbnMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBwbHVnSW5z
LmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MTUzNzlGRTE0NkJEOUQ2MDA4QkQ2
MTUgLyogU1ZHUGF0aERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHUGF0aERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MTUzNzlG
RjE0NkJEOUQ2MDA4QkQ2MTUgLyogU1ZHUGF0aERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHUGF0aERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAg
LTk0MDMsNyArOTQwMSw2IEBACiAJCTkzRjlCNzlFMEJBNjAzMjYwMDg1NDA2NCAvKiBKU0NEQVRB
U2VjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NEQVRB
U2VjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzRjlCNzlGMEJBNjAz
MjYwMDg1NDA2NCAvKiBKU0NEQVRBU2VjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0NEQVRBU2VjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
M0ZEQUZDOTBCMTEzMDc0MDBFMjc0NkYgLyogRWRpdG9ySW5zZXJ0QWN0aW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZGl0b3JJbnNlcnRBY3Rpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJOTUwQzRDMDJCRUQ4OTM2RjgxOEUyRjk5IC8qIEpTU1ZHR3Jh
cGhpY3NFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0dy
YXBoaWNzRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NkFCQTQyMjE0
QkNCODBFMDBENTYyMDQgLyogR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xD
b21tb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NzA1OTk3MzEwN0Q5NzUy
MDBBNTBBN0MgLyogUG9saWN5Q2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUG9saWN5Q2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5NzA1OTk3NDEwN0Q5NzUyMDBBNTBBN0MgLyogUG9saWN5Q2FsbGJhY2suaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5Q2FsbGJhY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTExMTAxLDYgKzExMDk4LDggQEAKIAkJQjJGQTNDQjMwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHR0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTU1ZHR0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjJG
QTNDQjQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHR3JhZGllbnRFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0dyYWRpZW50RWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyRkEzQ0I1MEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0dyYWRpZW50RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNTVkdHcmFkaWVudEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUE5MTQ2OUU4RTlGODQ4NUMzN0EyODc2IC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0dyYXBoaWNzRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1MEM0QzAyQkVEODkzNkY4MThFMkY5
OSAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdHcmFwaGljc0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjJGQTNDQjYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ltYWdlRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIyRkEzQ0I3MEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0ltYWdlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNTVkdJbWFnZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjJGQTND
QjgwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHTGVuZ3RoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0xlbmd0aC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xOTkwMyw3ICsxOTkwMiw2IEBACiAJCQkJQjIyMjdCMDQwRDAwQkZGMTAwNzFC
NzgyIC8qIFNWR0NTU1ZhbHVlS2V5d29yZHMuaW4gKi8sCiAJCQkJRkI0ODRGNEExNzFGODIxRTAw
MDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0aW9ucy5jcHAgKi8sCiAJCQkJRkI0ODRGNEIxNzFGODIx
RTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0aW9ucy5oICovLAotCQkJCTcxM0JDQzI3MTc4NDRC
RTIwMDZGMUIyRSAvKiB1bmF2YWlsYWJsZVBsdWdJbnMuY3NzICovLAogCQkJCUJDNUVDMTc2MEE1
MDdFM0UwMDYwMDdGNSAvKiB2aWV3LXNvdXJjZS5jc3MgKi8sCiAJCQkJM0ZGRkY5QUIxNTlEOUIw
NjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgKi8sCiAJCQkJM0ZGRkY5QUMx
NTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5oICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0RlZmF1bHRTdHlsZVNoZWV0cy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRGVmYXVsdFN0eWxlU2hlZXRzLmNwcAppbmRleCBmYWI2ZDBkNDUyZGM1
MTc3ODc5Mzg1OTMzNmUyYzc3NTllNThlNWY4Li40ODczNWQ2NjdhNmI4NTM0OWE3NjEzMzc2YTgy
YTI5OWRlZTcyNmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRGVmYXVsdFN0
eWxlU2hlZXRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRGVmYXVsdFN0eWxlU2hl
ZXRzLmNwcApAQCAtMjA2LDcgKzIwNiw2IEBAIHZvaWQgQ1NTRGVmYXVsdFN0eWxlU2hlZXRzOjpl
bnN1cmVEZWZhdWx0U3R5bGVTaGVldHNGb3JFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsCiAgICAg
ICAgIFN0cmluZyBwbHVnSW5zUnVsZXMgPSBSZW5kZXJUaGVtZTo6dGhlbWVGb3JQYWdlKGVsZW1l
bnQtPmRvY3VtZW50KCktPnBhZ2UoKSktPmV4dHJhUGx1Z0luc1N0eWxlU2hlZXQoKSArIGVsZW1l
bnQtPmRvY3VtZW50KCktPnBhZ2UoKS0+Y2hyb21lKCkuY2xpZW50KCktPnBsdWdJbkV4dHJhU3R5
bGVTaGVldCgpOwogICAgICAgICBpZiAocGx1Z0luc1J1bGVzLmlzRW1wdHkoKSkKICAgICAgICAg
ICAgIHBsdWdJbnNSdWxlcyA9IFN0cmluZyhwbHVnSW5zVXNlckFnZW50U3R5bGVTaGVldCwgc2l6
ZW9mKHBsdWdJbnNVc2VyQWdlbnRTdHlsZVNoZWV0KSk7Ci0gICAgICAgIHBsdWdJbnNSdWxlcyA9
IHBsdWdJbnNSdWxlcyArIFN0cmluZyh1bmF2YWlsYWJsZVBsdWdJbnNVc2VyQWdlbnRTdHlsZVNo
ZWV0LCBzaXplb2YodW5hdmFpbGFibGVQbHVnSW5zVXNlckFnZW50U3R5bGVTaGVldCkpOwogICAg
ICAgICBwbHVnSW5zU3R5bGVTaGVldCA9IHBhcnNlVUFTaGVldChwbHVnSW5zUnVsZXMpOwogICAg
ICAgICBkZWZhdWx0U3R5bGUtPmFkZFJ1bGVzRnJvbVNoZWV0KHBsdWdJbnNTdHlsZVNoZWV0LCBz
Y3JlZW5FdmFsKCkpOwogICAgICAgICBjaGFuZ2VkRGVmYXVsdFN0eWxlID0gdHJ1ZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy91bmF2YWlsYWJsZVBsdWdJbnMuY3NzIGIvU291cmNl
L1dlYkNvcmUvY3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5jc3MKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDIyMzlhNmQ2MmIwNzA3MWI4YzljZTlmYWM3YTI4OGNmMWI0YTFkZmIuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL3VuYXZhaWxhYmxlUGx1Z0lucy5jc3MKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSwg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFLCBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLS8qCi0gKiBUaGlzIGlzIGEgVUEg
U3R5bGVTaGVldCBmb3IgPG9iamVjdD4gYW5kIDxlbWJlZD4gZWxlbWVudHMuCi0gKgotICogU3Vj
aCBlbGVtZW50cywgd2hlbiB0aGUgcGx1Zy1pbiBpcyBibG9ja2VkIG9yIG1pc3NpbmcsIHdpbGwg
Y29udGFpbiBhCi0gKiBTaGFkb3dSb290IHdpdGggdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6Ci0g
KgotICogPG9iamVjdD4KLSAqICAgICAjU2hhZG93Um9vdAotICogICAgICAgICA8ZGl2IHBzZXVk
bz0iLXdlYmtpdC11bmF2YWlsYWJsZS1wbHVnaW4tY29udGVudCI+Ci0gKiAgICAgICAgICAgICA8
ZGl2PgotICogICAgICAgICAgICAgICAgIDxzcGFuIHJvbGU9ImJ1dHRvbiI+TGFiZWw8L3NwYW4+
Ci0gKiAgICAgICAgICAgICAgICAgPGltZz4KLSAqICAgICAgICAgICAgIDwvZGl2PgotICogICAg
ICAgICA8L2Rpdj4KLSAqLwotCi1lbWJlZDo6LXdlYmtpdC11bmF2YWlsYWJsZS1wbHVnaW4tY29u
dGVudCwKLW9iamVjdDo6LXdlYmtpdC11bmF2YWlsYWJsZS1wbHVnaW4tY29udGVudAotewotICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICB3aWR0aDogMTAwJTsKLSAgICBoZWlnaHQ6IDEwMCU7
Ci0gICAgb3ZlcmZsb3c6IGhpZGRlbjsKLQotICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZs
ZXg7Ci0gICAgLXdlYmtpdC1mbGV4LWZsb3c6IGNvbHVtbjsKLSAgICAtd2Via2l0LWp1c3RpZnkt
Y29udGVudDogY2VudGVyOwotICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKLQotICAg
IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7Ci19Ci0KLWVtYmVkOjotd2Via2l0LXVuYXZhaWxh
YmxlLXBsdWdpbi1jb250ZW50ID4gZGl2LAotb2JqZWN0Ojotd2Via2l0LXVuYXZhaWxhYmxlLXBs
dWdpbi1jb250ZW50ID4gZGl2Ci17Ci0gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwotICAgIC13
ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKLQotICAgIG9wYWNpdHk6IDAuODsKLQotICAgIGN1
cnNvcjogcG9pbnRlcjsKLX0KLQotZW1iZWQ6Oi13ZWJraXQtdW5hdmFpbGFibGUtcGx1Z2luLWNv
bnRlbnQgPiBkaXYgPiBzcGFuLAotb2JqZWN0Ojotd2Via2l0LXVuYXZhaWxhYmxlLXBsdWdpbi1j
b250ZW50ID4gZGl2ID4gc3BhbgotewotICAgIGZvbnQ6IC13ZWJraXQtc21hbGwtY29udHJvbDsK
LSAgICBmb250LXdlaWdodDogYm9sZDsKLQotICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7Ci0KLSAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOwotICAgIGNvbG9yOiAjNjY2OwotCi0gICAgYm9yZGVy
LXJhZGl1czogNXB4OwotCi0gICAgcGFkZGluZzogMnB4IDRweCAzcHggNHB4OwotICAgIG1hcmdp
bi1ib3R0b206IDFweDsKLQotICAgIGN1cnNvcjogcG9pbnRlcjsKLX0KLQotZW1iZWQ6Oi13ZWJr
aXQtdW5hdmFpbGFibGUtcGx1Z2luLWNvbnRlbnQgPiBkaXYgPiBpbWcsCi1vYmplY3Q6Oi13ZWJr
aXQtdW5hdmFpbGFibGUtcGx1Z2luLWNvbnRlbnQgPiBkaXYgPiBpbWcKLXsKLSAgICBkaXNwbGF5
OiBpbmxpbmUtYmxvY2s7Ci0gICAgY29udGVudDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2
ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMCAxMCI+
PHBhdGggZD0iTTUsMEMyLjIzOSwwLDAsMi4yMzksMCw1YzAsMi43NjIsMi4yMzksNSw1LDVjMi43
NjIsMCw1LTIuMjM4LDUtNUMxMCwyLjIzOSw3Ljc2MiwwLDUsMCBNNSw4IFY2SDJWNGgzVjJsMywz
TDUsOHoiIGZpbGw9IiNkZGQiLz48L3N2Zz4nKTsKLQotICAgIHdpZHRoOiAxNnB4OwotICAgIGhl
aWdodDogMTZweDsKLQotICAgIG1hcmdpbi1sZWZ0OiA1cHg7Ci19CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnRMaXN0ZW5lci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
TGlzdGVuZXIuaAppbmRleCAyZTYyZWMzOTIwMDE0ZDNlZmYwMmNkZTY2ZWQ3MzEyZjdiMDI5ODZk
Li4yMjIwNjA5OGNkMDUxNjcyZjU3Y2FkNjA1ZjMxNWFmODUwNzE1Njc2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudExpc3RlbmVyLmgKQEAgLTQ0LDggKzQ0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICAgICAgR09iamVjdEV2ZW50TGlzdGVuZXJUeXBlLAogICAgICAgICAgICAgTmF0aXZl
RXZlbnRMaXN0ZW5lclR5cGUsCiAgICAgICAgICAgICBTVkdUUmVmVGFyZ2V0RXZlbnRMaXN0ZW5l
clR5cGUsCi0gICAgICAgICAgICBNZWRpYUNvbnRyb2xzQXBwbGVFdmVudExpc3RlbmVyVHlwZSwK
LSAgICAgICAgICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lclR5cGUKKyAgICAg
ICAgICAgIE1lZGlhQ29udHJvbHNBcHBsZUV2ZW50TGlzdGVuZXJUeXBlIAogICAgICAgICB9Owog
CiAgICAgICAgIHZpcnR1YWwgfkV2ZW50TGlzdGVuZXIoKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEFwcGxldEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MQXBwbGV0RWxlbWVudC5jcHAKaW5kZXggODk1MjgwMTIxYzEzNjI0MDVlODRjNzkxOWMw
YmVmOTgxODM4NWQzYi4uNTA4OTNjNjQyNTBhYWQ4NGEwOTdlZTA1ZjJjYmE5OTRiMDM4M2M3OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5jcHAKQEAgLTE1MywxMyAr
MTUzLDcgQEAgdm9pZCBIVE1MQXBwbGV0RWxlbWVudDo6dXBkYXRlV2lkZ2V0KFBsdWdpbkNyZWF0
aW9uT3B0aW9uKQogICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCk7CiAgICAg
QVNTRVJUKGZyYW1lKTsKIAotICAgIFJlZlB0cjxXaWRnZXQ+IHdpZGdldCA9IGZyYW1lLT5sb2Fk
ZXIoKS0+c3ViZnJhbWVMb2FkZXIoKS0+Y3JlYXRlSmF2YUFwcGxldFdpZGdldChyb3VuZGVkSW50
U2l6ZShMYXlvdXRTaXplKGNvbnRlbnRXaWR0aCwgY29udGVudEhlaWdodCkpLCB0aGlzLCBwYXJh
bU5hbWVzLCBwYXJhbVZhbHVlcyk7Ci0KLSAgICAvLyBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0IGNh
biBjYWxsIHNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uLCB3aGljaCBjYW4gY2F1c2UgcmVh
dHRhY2ggYW5kIGRlc3Ryb3kgb3VyIHJlbmRlcmVyLgotCi0gICAgcmVuZGVyZXIgPSByZW5kZXJF
bWJlZGRlZE9iamVjdCgpOwotICAgIGlmIChyZW5kZXJlcikKLSAgICAgICAgcmVuZGVyZXItPnNl
dFdpZGdldCh3aWRnZXQucmVsZWFzZSgpKTsKKyAgICByZW5kZXJlci0+c2V0V2lkZ2V0KGZyYW1l
LT5sb2FkZXIoKS0+c3ViZnJhbWVMb2FkZXIoKS0+Y3JlYXRlSmF2YUFwcGxldFdpZGdldChyb3Vu
ZGVkSW50U2l6ZShMYXlvdXRTaXplKGNvbnRlbnRXaWR0aCwgY29udGVudEhlaWdodCkpLCB0aGlz
LCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcykpOwogfQogCiBib29sIEhUTUxBcHBsZXRFbGVtZW50
OjpjYW5FbWJlZEphdmEoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MUGx1Z0luRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVt
ZW50LmNwcAppbmRleCA1NjgxNTg5N2NjM2Q4ODE5M2NlOTBmMmJjM2M1YmFkODNiZmJiZjVlLi5m
NTU1OWI1ODk0Nzk0ZmEzMjI1MmE0MGU3OGI3OWNjNTcyY2QzZDJiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcApAQCAtMjAwLDYgKzIwMCwxMSBAQCB2b2lkIEhU
TUxQbHVnSW5FbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkKIAogICAg
IFJlbmRlck9iamVjdCogciA9IHJlbmRlcmVyKCk7CiAgICAgaWYgKHIgJiYgci0+aXNFbWJlZGRl
ZE9iamVjdCgpKSB7CisgICAgICAgIGlmICh0b1JlbmRlckVtYmVkZGVkT2JqZWN0KHIpLT5zaG93
c1VuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKCkpIHsKKyAgICAgICAgICAgIHRvUmVuZGVyRW1i
ZWRkZWRPYmplY3QociktPmhhbmRsZVVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yRXZlbnQoZXZl
bnQpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKICAgICAgICAgaWYgKHItPmlz
U25hcHNob3R0ZWRQbHVnSW4oKSAmJiBkaXNwbGF5U3RhdGUoKSA8IFJlc3RhcnRpbmcpIHsKICAg
ICAgICAgICAgIHRvUmVuZGVyU25hcHNob3R0ZWRQbHVnSW4ociktPmhhbmRsZUV2ZW50KGV2ZW50
KTsKICAgICAgICAgICAgIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxl
cihldmVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50
LmNwcAppbmRleCBjNzY4YjE1NTAyYTQ0YzIyZjE4OWE3MDI4NGNhYzNiOGEyNjE3ZjgzLi4wMWEy
ZmEzZWVmOGI2NjhjNzIxMDE5YzM1NDgwZWM4ZjFmZTFmMzYwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKQEAgLTM2OCwxMiArMzY4LDcgQEAg
dm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KFNo
YWRvd1Jvb3QqIHJvb3QpCiAgICAgLy8gc3R5bGVzIGRlZmluZWQgaW4gdGhlIGluamVjdGVkIHVz
ZXIgYWdlbnRzIHN0eWxlc2hlZXRzIHRvIHNwZWNpZnkKICAgICAvLyB0aGUgbG9vay1hbmQtZmVl
bCBvZiB0aGUgc25hcHNob3R0ZWQgcGx1Zy1pbiBvdmVybGF5LiAKICAgICByb290LT5zZXRSZXNl
dFN0eWxlSW5oZXJpdGFuY2UodHJ1ZSk7Ci0KLSAgICAvLyBJZiB3ZSBkb24ndCBleHBlY3QgdG8g
YmUgZGlzcGxheWluZyBhIHNuYXBzaG90IHlldCwgdGhlIHNoYWRvdyByb290IGJlbG9uZ3MKLSAg
ICAvLyB0byB0aGUgdW5hdmFpbGFibGUgcGx1Zy1pbiBpbmRpY2F0b3IsIG5vdCB0byB1cywgc28g
d2Ugd29uJ3QgcG9wdWxhdGUgaXQuCi0gICAgaWYgKGRpc3BsYXlTdGF0ZSgpICE9IERpc3BsYXlp
bmdTbmFwc2hvdCkKLSAgICAgICAgcmV0dXJuOwotCisgICAgCiAgICAgU3RyaW5nIG1pbWVUeXBl
ID0gbG9hZGVkTWltZVR5cGUoKTsKIAogICAgIERFRklORV9TVEFUSUNfTE9DQUwoUmVmUHRyPERP
TVdyYXBwZXJXb3JsZD4sIGlzb2xhdGVkV29ybGQsIChET01XcmFwcGVyV29ybGQ6OmNyZWF0ZShK
U0RPTVdpbmRvdzo6Y29tbW9uVk0oKSkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9TdWJmcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVM
b2FkZXIuY3BwCmluZGV4IDg4Y2E1MzAxZTYwMGU4OTc1NTFmZDM2NzhlNGE5NmFlZjIyNDFhNWYu
LmY2ODJkMzdjNWVkYmNiMjhkM2UzNTJlMTZhZTk0NjNjNTkwYmRmNjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcApAQCAtMzI0LDcgKzMyNCw3IEBAIFBhc3NSZWZQ
dHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJ
bnRTaXplJiBzaXplLCBICiAgICAgaWYgKCF3aWRnZXQpIHsKICAgICAgICAgUmVuZGVyRW1iZWRk
ZWRPYmplY3QqIHJlbmRlcmVyID0gZWxlbWVudC0+cmVuZGVyRW1iZWRkZWRPYmplY3QoKTsKIAot
ICAgICAgICBpZiAocmVuZGVyZXIgJiYgIXJlbmRlcmVyLT5zaG93c1VuYXZhaWxhYmxlUGx1Z2lu
SW5kaWNhdG9yKCkpCisgICAgICAgIGlmICghcmVuZGVyZXItPnNob3dzVW5hdmFpbGFibGVQbHVn
aW5JbmRpY2F0b3IoKSkKICAgICAgICAgICAgIHJlbmRlcmVyLT5zZXRQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luTWlzc2luZyk7CiAgICAgICAg
IHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21l
Q2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCmluZGV4IGI0MzEw
OTA4ZjMwMjk2YzE3MGExODAxMzBlN2MyNWZhMGZkNzY1MDIuLjZmY2UyNDllYjdkN2NhOWUyOTU1
ODEwZTlhZDVmZDJjZWI2MjAwZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hy
b21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaApAQCAt
MTY5LDcgKzE2OSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgbGF5b3V0VXBkYXRlZChG
cmFtZSopIGNvbnN0IHsgfQogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29u
c3QgSW50UmVjdCYpIGNvbnN0IHsgfTsgLy8gQ3VycmVudGx5IG9ubHkgTWFjIGhhcyBhIG5vbiBl
bXB0eSBpbXBsZW1lbnRhdGlvbi4KIAotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVbmF2YWlsYWJs
ZVBsdWdpbk1lc3NhZ2VJbmNsdWRlQnV0dG9uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFs
IGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oUmVuZGVyRW1iZWRk
ZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQogICAgIHZpcnR1YWwgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQoRWxl
bWVudCosIFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikg
Y29uc3QgeyB9CiAgICAgdmlydHVhbCB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0
IEhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSA9IDA7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwCmluZGV4IDRm
N2QxZTU2OTNjNDU3ZjVhMmE1YmMxOGFlNTlkOTc3N2YyYzI0M2UuLmFiNjJiMmYzYjFhYzg2NmYz
Y2NjMzVkMGViMjI1OTMwMTY4OTUwNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcApAQCAtMjgsMjIgKzI4LDE4IEBACiAjaW5jbHVk
ZSAiQ2hyb21lLmgiCiAjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ3Vyc29y
LmgiCi0jaW5jbHVkZSAiRE9NVG9rZW5MaXN0LmgiCiAjaW5jbHVkZSAiRXZlbnRIYW5kbGVyLmgi
CiAjaW5jbHVkZSAiRm9udC5oIgogI2luY2x1ZGUgIkZvbnRTZWxlY3Rvci5oIgogI2luY2x1ZGUg
IkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKICNpbmNsdWRlICJHcmFw
aGljc0NvbnRleHQuaCIKLSNpbmNsdWRlICJIVE1MRGl2RWxlbWVudC5oIgogI2luY2x1ZGUgIkhU
TUxFbWJlZEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSUZyYW1lRWxlbWVudC5oIgotI2luY2x1
ZGUgIkhUTUxJbWFnZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRl
ICJIVE1MT2JqZWN0RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxQYXJhbUVsZW1lbnQuaCIKICNp
bmNsdWRlICJIVE1MUGx1Z0luRWxlbWVudC5oIgotI2luY2x1ZGUgIkhUTUxTcGFuRWxlbWVudC5o
IgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdz
LmgiCiAjaW5jbHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgpAQCAtNTgsNyArNTQsNiBAQAogI2lu
Y2x1ZGUgIlJlbmRlclZpZXcuaCIKICNpbmNsdWRlICJSZW5kZXJXaWRnZXRQcm90ZWN0b3IuaCIK
ICNpbmNsdWRlICJTZXR0aW5ncy5oIgotI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKICNpbmNsdWRl
ICJUZXh0LmgiCiAjaW5jbHVkZSAiVGV4dFJ1bi5oIgogI2luY2x1ZGUgPHd0Zi9TdGFja1N0YXRz
Lmg+CkBAIC03MCwxMSArNjUsMjcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFt
ZXNwYWNlIEhUTUxOYW1lczsKLQorICAgIAorc3RhdGljIGNvbnN0IGZsb2F0IHJlcGxhY2VtZW50
VGV4dFJvdW5kZWRSZWN0SGVpZ2h0ID0gMTg7CitzdGF0aWMgY29uc3QgZmxvYXQgcmVwbGFjZW1l
bnRUZXh0Um91bmRlZFJlY3RMZWZ0UmlnaHRUZXh0TWFyZ2luID0gNjsKK3N0YXRpYyBjb25zdCBm
bG9hdCByZXBsYWNlbWVudFRleHRSb3VuZGVkUmVjdE9wYWNpdHkgPSAwLjIwZjsKK3N0YXRpYyBj
b25zdCBmbG9hdCByZXBsYWNlbWVudFRleHRQcmVzc2VkUm91bmRlZFJlY3RPcGFjaXR5ID0gMC42
NWY7CitzdGF0aWMgY29uc3QgZmxvYXQgcmVwbGFjZW1lbnRUZXh0Um91bmRlZFJlY3RSYWRpdXMg
PSA1Oworc3RhdGljIGNvbnN0IGZsb2F0IHJlcGxhY2VtZW50VGV4dFRleHRPcGFjaXR5ID0gMC41
NWY7CitzdGF0aWMgY29uc3QgZmxvYXQgcmVwbGFjZW1lbnRUZXh0UHJlc3NlZFRleHRPcGFjaXR5
ID0gMC42NWY7CisKK3N0YXRpYyBjb25zdCBDb2xvciYgcmVwbGFjZW1lbnRUZXh0Um91bmRlZFJl
Y3RQcmVzc2VkQ29sb3IoKQoreworICAgIHN0YXRpYyBjb25zdCBDb2xvciBsaWdodEdyYXkoMjA1
LCAyMDUsIDIwNSk7CisgICAgcmV0dXJuIGxpZ2h0R3JheTsKK30KKyAgICAKIFJlbmRlckVtYmVk
ZGVkT2JqZWN0OjpSZW5kZXJFbWJlZGRlZE9iamVjdChFbGVtZW50KiBlbGVtZW50KQogICAgIDog
UmVuZGVyUGFydChlbGVtZW50KQogICAgICwgbV9oYXNGYWxsYmFja0NvbnRlbnQoZmFsc2UpCiAg
ICAgLCBtX3Nob3dzVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3IoZmFsc2UpCisgICAgLCBtX3Vu
YXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9ySXNQcmVzc2VkKGZhbHNlKQorICAgICwgbV9tb3VzZURv
d25XYXNJblVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKGZhbHNlKQogewogICAgIC8vIEFjdHVh
bCBzaXplIGlzIG5vdCBrbm93biB5ZXQsIHJlcG9ydCB0aGUgZGVmYXVsdCBpbnRyaW5zaWMgc2l6
ZS4KICAgICB2aWV3KCktPmZyYW1lVmlldygpLT5pbmNyZW1lbnRWaXN1YWxseU5vbkVtcHR5UGl4
ZWxDb3VudChyb3VuZGVkSW50U2l6ZShpbnRyaW5zaWNTaXplKCkpKTsKQEAgLTExOCw3MCArMTI5
LDEzIEBAIHN0YXRpYyBTdHJpbmcgdW5hdmFpbGFibGVQbHVnaW5SZXBsYWNlbWVudFRleHQoUmVu
ZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhCiAgICAgcmV0dXJuIFN0cmluZygpOwogfQog
Ci1zdGF0aWMgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VJbmNsdWRlQnV0dG9u
KERvY3VtZW50KiBkb2N1bWVudCwgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxh
YmlsaXR5UmVhc29uIHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKQotewotICAgIFBhZ2UqIHBh
Z2UgPSBkb2N1bWVudC0+cGFnZSgpOwotICAgIHJldHVybiBwYWdlICYmIHBhZ2UtPmNocm9tZSgp
LmNsaWVudCgpLT5zaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VJbmNsdWRlQnV0dG9uKHBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKLX0KLQotdm9pZCBSZW5kZXJFbWJlZGRlZE9iamVj
dDo6c2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb25EZXNjcmlwdGlvbihjb25zdCBTdHJpbmcm
IGRlc2NyaXB0aW9uKQotewotICAgIG1fdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbiA9IGRlc2Ny
aXB0aW9uOwotCi0gICAgaWYgKG1fc2hvd3NVbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcikgewot
ICAgICAgICBTdHJpbmcgdW5hdmFpbGFiaWxpdHlSZWFzb25UZXh0ID0gZGVzY3JpcHRpb247Ci0g
ICAgICAgIGlmICh1bmF2YWlsYWJpbGl0eVJlYXNvblRleHQuaXNFbXB0eSgpKQotICAgICAgICAg
ICAgdW5hdmFpbGFiaWxpdHlSZWFzb25UZXh0ID0gdW5hdmFpbGFibGVQbHVnaW5SZXBsYWNlbWVu
dFRleHQobV9wbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbik7Ci0KLSAgICAgICAgbV9pbmRpY2F0
b3JMYWJlbC0+c2V0VGV4dENvbnRlbnQodW5hdmFpbGFiaWxpdHlSZWFzb25UZXh0LCBBU1NFUlRf
Tk9fRVhDRVBUSU9OKTsKLSAgICB9Ci19Ci0KIHZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OnNl
dFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uIHBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKQogewogICAgIEFTU0VSVCghbV9zaG93c1VuYXZhaWxh
YmxlUGx1Z2luSW5kaWNhdG9yKTsKICAgICBtX3Nob3dzVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0
b3IgPSB0cnVlOwogICAgIG1fcGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24gPSBwbHVnaW5VbmF2
YWlsYWJpbGl0eVJlYXNvbjsKIAotICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0b0VsZW1lbnQobm9k
ZSgpKTsKLSAgICBTaGFkb3dSb290KiBzaGFkb3dSb290ID0gZWxlbWVudC0+dXNlckFnZW50U2hh
ZG93Um9vdCgpOwotICAgIGlmICghc2hhZG93Um9vdCkgewotICAgICAgICAvLyBUaGlzIGNhbiBj
YXVzZSB0aGUgUmVuZGVyRW1iZWRkZWRPYmplY3QgdG8gYmUgZGVzdHJveWVkIHZpYSBhIHJlYXR0
YWNoLgotICAgICAgICAvLyBDYWxsZXJzIHNob3VsZCBiZSB3YXJ5IHRoYXQgY2FsbGluZyB0aGlz
IGNhbiBkZXN0cm95IHRoZSBvYmplY3QgdGhleSBjYWxsIGl0IG9uLgotICAgICAgICBlbGVtZW50
LT5lbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0K
LSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgdW5hdmFpbGFibGVQbHVnaW5D
b250ZW50UHNldWRvQXR0cmlidXRlLCAoIi13ZWJraXQtdW5hdmFpbGFibGUtcGx1Z2luLWNvbnRl
bnQiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7Ci0gICAgUmVmUHRyPEhU
TUxEaXZFbGVtZW50PiBjb250YWluZXIgPSBIVE1MRGl2RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50
KCkpOwotICAgIGNvbnRhaW5lci0+c2V0UHNldWRvKHVuYXZhaWxhYmxlUGx1Z2luQ29udGVudFBz
ZXVkb0F0dHJpYnV0ZSk7Ci0KLSAgICBSZWZQdHI8SFRNTERpdkVsZW1lbnQ+IGluZGljYXRvciA9
IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSk7Ci0gICAgYm9vbCBpbmRpY2F0b3JT
aG91bGRJbmNsdWRlQnV0dG9uID0gc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlSW5jbHVk
ZUJ1dHRvbihkb2N1bWVudCgpLCBtX3BsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKLSAgICBp
ZiAoaW5kaWNhdG9yU2hvdWxkSW5jbHVkZUJ1dHRvbikKLSAgICAgICAgaW5kaWNhdG9yLT5hZGRF
dmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5jbGlja0V2ZW50LCBSZW5kZXJFbWJlZGRlZE9iamVj
dEV2ZW50TGlzdGVuZXI6OmNyZWF0ZSh0aGlzKSwgZmFsc2UpOwotCi0gICAgbV9pbmRpY2F0b3JM
YWJlbCA9IEhUTUxTcGFuRWxlbWVudDo6Y3JlYXRlKEhUTUxOYW1lczo6c3BhblRhZywgZG9jdW1l
bnQoKSk7Ci0gICAgbV9pbmRpY2F0b3JMYWJlbC0+c2V0QXR0cmlidXRlKHJvbGVBdHRyLCAiYnV0
dG9uIik7Ci0gICAgaW5kaWNhdG9yLT5hcHBlbmRDaGlsZChtX2luZGljYXRvckxhYmVsLmdldCgp
KTsKLQotICAgIHNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uRGVzY3JpcHRpb24obV91bmF2
YWlsYWJpbGl0eURlc2NyaXB0aW9uKTsKLQotICAgIGlmIChpbmRpY2F0b3JTaG91bGRJbmNsdWRl
QnV0dG9uKSB7Ci0gICAgICAgIFJlZlB0cjxIVE1MSW1hZ2VFbGVtZW50PiBhcnJvdyA9IEhUTUxJ
bWFnZUVsZW1lbnQ6OmNyZWF0ZShkb2N1bWVudCgpKTsKLSAgICAgICAgaW5kaWNhdG9yLT5hcHBl
bmRDaGlsZChhcnJvdy5yZWxlYXNlKCkpOwotICAgIH0KLQotICAgIGNvbnRhaW5lci0+YXBwZW5k
Q2hpbGQoaW5kaWNhdG9yKTsKLSAgICBzaGFkb3dSb290LT5hcHBlbmRDaGlsZChjb250YWluZXIp
OwotCi0gICAgbV9pbmRpY2F0b3IgPSBjb250YWluZXI7Ci19Ci0KLXZvaWQgUmVuZGVyRW1iZWRk
ZWRPYmplY3Q6OmhhbmRsZVVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tFdmVudChFdmVudCop
Ci17Ci0gICAgaWYgKFBhZ2UqIHBhZ2UgPSBkb2N1bWVudCgpLT5wYWdlKCkpCi0gICAgICAgIHBh
Z2UtPmNocm9tZSgpLmNsaWVudCgpLT51bmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQodG9F
bGVtZW50KG5vZGUoKSksIG1fcGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pOworICAgIG1fdW5h
dmFpbGFibGVQbHVnaW5SZXBsYWNlbWVudFRleHQgPSB1bmF2YWlsYWJsZVBsdWdpblJlcGxhY2Vt
ZW50VGV4dChwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbik7CiB9CiAKIGJvb2wgUmVuZGVyRW1i
ZWRkZWRPYmplY3Q6OnNob3dzVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3IoKSBjb25zdApAQCAt
MTg5LDEzICsxNDMsMTMgQEAgYm9vbCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6c2hvd3NVbmF2YWls
YWJsZVBsdWdpbkluZGljYXRvcigpIGNvbnN0CiAgICAgcmV0dXJuIG1fc2hvd3NVbmF2YWlsYWJs
ZVBsdWdpbkluZGljYXRvcjsKIH0KIAotdm9pZCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6d2lsbEJl
RGVzdHJveWVkKCkKK3ZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OnNldFVuYXZhaWxhYmxlUGx1
Z2luSW5kaWNhdG9ySXNQcmVzc2VkKGJvb2wgcHJlc3NlZCkKIHsKLSAgICBFbGVtZW50KiBlbGVt
ZW50ID0gdG9FbGVtZW50KG5vZGUoKSk7Ci0gICAgaWYgKFNoYWRvd1Jvb3QqIHNoYWRvd1Jvb3Qg
PSBlbGVtZW50LT51c2VyQWdlbnRTaGFkb3dSb290KCkpCi0gICAgICAgIHNoYWRvd1Jvb3QtPnJl
bW92ZUNoaWxkcmVuKCk7Ci0KLSAgICBSZW5kZXJQYXJ0Ojp3aWxsQmVEZXN0cm95ZWQoKTsKKyAg
ICBpZiAobV91bmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcklzUHJlc3NlZCA9PSBwcmVzc2VkKQor
ICAgICAgICByZXR1cm47CisgICAgCisgICAgbV91bmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcklz
UHJlc3NlZCA9IHByZXNzZWQ7CisgICAgcmVwYWludCgpOwogfQogCiB2b2lkIFJlbmRlckVtYmVk
ZGVkT2JqZWN0OjpwYWludFNuYXBzaG90SW1hZ2UoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0
IExheW91dFBvaW50JiBwYWludE9mZnNldCwgSW1hZ2UqIGltYWdlKQpAQCAtMjQzLDM3ICsxOTcs
MTAyIEBAIHZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OnBhaW50Q29udGVudHMoUGFpbnRJbmZv
JiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50CiAKIHZvaWQgUmVuZGVyRW1iZWRkZWRPYmpl
Y3Q6OnBhaW50KFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRP
ZmZzZXQpCiB7Ci0gICAgaWYgKEZyYW1lKiBmcmFtZSA9IHRoaXMtPmZyYW1lKCkpIHsKLSAgICAg
ICAgaWYgKFBhZ2UqIHBhZ2UgPSBmcmFtZS0+cGFnZSgpKSB7Ci0gICAgICAgICAgICBpZiAocGFp
bnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2VGb3JlZ3JvdW5kKQotICAgICAgICAgICAgICAgIHBh
Z2UtPmFkZFJlbGV2YW50UmVwYWludGVkT2JqZWN0KHRoaXMsIHZpc3VhbE92ZXJmbG93UmVjdCgp
KTsKLSAgICAgICAgfQorICAgIFBhZ2UqIHBhZ2UgPSAwOworICAgIGlmIChGcmFtZSogZnJhbWUg
PSB0aGlzLT5mcmFtZSgpKQorICAgICAgICBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKKworICAgIGlm
IChzaG93c1VuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKCkpIHsKKyAgICAgICAgaWYgKHBhZ2Ug
JiYgcGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2VGb3JlZ3JvdW5kKQorICAgICAgICAgICAg
cGFnZS0+YWRkUmVsZXZhbnRVbnBhaW50ZWRPYmplY3QodGhpcywgdmlzdWFsT3ZlcmZsb3dSZWN0
KCkpOworICAgICAgICBSZW5kZXJSZXBsYWNlZDo6cGFpbnQocGFpbnRJbmZvLCBwYWludE9mZnNl
dCk7CisgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBSZW5kZXJFbWJlZGRlZE9iamVj
dCBkb2Vzbid0IG5vcm1hbGx5IHBhaW50IGl0cyBjaGlsZHJlbiwgYnV0IGlmIHdlIGhhdmUgYSBz
aGFkb3cgcm9vdCB3ZSBuZWVkIHRvIHBhaW50IHRoYXQuCi0gICAgRWxlbWVudCogZWxlbWVudCA9
IHRvRWxlbWVudChub2RlKCkpOwotICAgIGlmIChTaGFkb3dSb290KiBzaGFkb3dSb290ID0gZWxl
bWVudC0+dXNlckFnZW50U2hhZG93Um9vdCgpKSB7Ci0gICAgICAgIFJlbmRlck9iamVjdCogc2hh
ZG93Um9vdFJlbmRlcmVyID0gc2hhZG93Um9vdC0+cmVuZGVyZXIoKTsKLSAgICAgICAgaWYgKHNo
YWRvd1Jvb3RSZW5kZXJlciAmJiBzaGFkb3dSb290UmVuZGVyZXItPmlzQm94KCkpIHsKLSAgICAg
ICAgICAgIFJlbmRlckJveCogc2hhZG93Um9vdEJveCA9IHRvUmVuZGVyQm94KHNoYWRvd1Jvb3RS
ZW5kZXJlcik7Ci0gICAgICAgICAgICBQYWludFBoYXNlIG5ld1BoYXNlID0gKHBhaW50SW5mby5w
aGFzZSA9PSBQYWludFBoYXNlQ2hpbGRPdXRsaW5lcykgPyBQYWludFBoYXNlT3V0bGluZSA6IHBh
aW50SW5mby5waGFzZTsKLSAgICAgICAgICAgIG5ld1BoYXNlID0gKG5ld1BoYXNlID09IFBhaW50
UGhhc2VDaGlsZEJsb2NrQmFja2dyb3VuZHMpID8gUGFpbnRQaGFzZUNoaWxkQmxvY2tCYWNrZ3Jv
dW5kIDogbmV3UGhhc2U7Ci0KLSAgICAgICAgICAgIFBhaW50SW5mbyBwYWludEluZm9Gb3JDaGls
ZChwYWludEluZm8pOwotICAgICAgICAgICAgcGFpbnRJbmZvRm9yQ2hpbGQucGhhc2UgPSBuZXdQ
aGFzZTsKLSAgICAgICAgICAgIHBhaW50SW5mb0ZvckNoaWxkLnVwZGF0ZVN1YnRyZWVQYWludFJv
b3RGb3JDaGlsZHJlbih0aGlzKTsKLQotICAgICAgICAgICAgZm9yIChSZW5kZXJCb3gqIGNoaWxk
ID0gc2hhZG93Um9vdEJveC0+Zmlyc3RDaGlsZEJveCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+
bmV4dFNpYmxpbmdCb3goKSkgewotICAgICAgICAgICAgICAgIExheW91dFBvaW50IGNoaWxkUG9p
bnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChjaGlsZCwgcGFpbnRPZmZzZXQpOwotICAg
ICAgICAgICAgICAgIGlmICghY2hpbGQtPmhhc1NlbGZQYWludGluZ0xheWVyKCkgJiYgIWNoaWxk
LT5pc0Zsb2F0aW5nKCkpCi0gICAgICAgICAgICAgICAgICAgIGNoaWxkLT5wYWludChwYWludElu
Zm9Gb3JDaGlsZCwgY2hpbGRQb2ludCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9
CisgICAgaWYgKHBhZ2UgJiYgcGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2VGb3JlZ3JvdW5k
KQorICAgICAgICBwYWdlLT5hZGRSZWxldmFudFJlcGFpbnRlZE9iamVjdCh0aGlzLCB2aXN1YWxP
dmVyZmxvd1JlY3QoKSk7CiAKICAgICBSZW5kZXJQYXJ0OjpwYWludChwYWludEluZm8sIHBhaW50
T2Zmc2V0KTsKIH0KIAordm9pZCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6cGFpbnRSZXBsYWNlZChQ
YWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQorewor
ICAgIGlmICghc2hvd3NVbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcigpKQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAocGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhhc2VTZWxlY3Rpb24pCisg
ICAgICAgIHJldHVybjsKKyAgICAKKyAgICBHcmFwaGljc0NvbnRleHQqIGNvbnRleHQgPSBwYWlu
dEluZm8uY29udGV4dDsKKyAgICBpZiAoY29udGV4dC0+cGFpbnRpbmdEaXNhYmxlZCgpKQorICAg
ICAgICByZXR1cm47CisgICAgCisgICAgRmxvYXRSZWN0IGNvbnRlbnRSZWN0OworICAgIFBhdGgg
cGF0aDsKKyAgICBGbG9hdFJlY3QgcmVwbGFjZW1lbnRUZXh0UmVjdDsKKyAgICBGb250IGZvbnQ7
CisgICAgVGV4dFJ1biBydW4oIiIpOworICAgIGZsb2F0IHRleHRXaWR0aDsKKyAgICBpZiAoIWdl
dFJlcGxhY2VtZW50VGV4dEdlb21ldHJ5KHBhaW50T2Zmc2V0LCBjb250ZW50UmVjdCwgcGF0aCwg
cmVwbGFjZW1lbnRUZXh0UmVjdCwgZm9udCwgcnVuLCB0ZXh0V2lkdGgpKQorICAgICAgICByZXR1
cm47CisgICAgCisgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVyKCpjb250
ZXh0KTsKKyAgICBjb250ZXh0LT5jbGlwKGNvbnRlbnRSZWN0KTsKKyAgICBjb250ZXh0LT5zZXRB
bHBoYShtX3VuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9ySXNQcmVzc2VkID8gcmVwbGFjZW1lbnRU
ZXh0UHJlc3NlZFJvdW5kZWRSZWN0T3BhY2l0eSA6IHJlcGxhY2VtZW50VGV4dFJvdW5kZWRSZWN0
T3BhY2l0eSk7CisgICAgY29udGV4dC0+c2V0RmlsbENvbG9yKG1fdW5hdmFpbGFibGVQbHVnaW5J
bmRpY2F0b3JJc1ByZXNzZWQgPyByZXBsYWNlbWVudFRleHRSb3VuZGVkUmVjdFByZXNzZWRDb2xv
cigpIDogQ29sb3I6OndoaXRlLCBzdHlsZSgpLT5jb2xvclNwYWNlKCkpOworICAgIGNvbnRleHQt
PmZpbGxQYXRoKHBhdGgpOworCisgICAgY29uc3QgRm9udE1ldHJpY3MmIGZvbnRNZXRyaWNzID0g
Zm9udC5mb250TWV0cmljcygpOworICAgIGZsb2F0IGxhYmVsWCA9IHJvdW5kZihyZXBsYWNlbWVu
dFRleHRSZWN0LmxvY2F0aW9uKCkueCgpICsgKHJlcGxhY2VtZW50VGV4dFJlY3Quc2l6ZSgpLndp
ZHRoKCkgLSB0ZXh0V2lkdGgpIC8gMik7CisgICAgZmxvYXQgbGFiZWxZID0gcm91bmRmKHJlcGxh
Y2VtZW50VGV4dFJlY3QubG9jYXRpb24oKS55KCkgKyAocmVwbGFjZW1lbnRUZXh0UmVjdC5zaXpl
KCkuaGVpZ2h0KCkgLSBmb250TWV0cmljcy5oZWlnaHQoKSkgLyAyICsgZm9udE1ldHJpY3MuYXNj
ZW50KCkpOworICAgIGNvbnRleHQtPnNldEFscGhhKG1fdW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0
b3JJc1ByZXNzZWQgPyByZXBsYWNlbWVudFRleHRQcmVzc2VkVGV4dE9wYWNpdHkgOiByZXBsYWNl
bWVudFRleHRUZXh0T3BhY2l0eSk7CisgICAgY29udGV4dC0+c2V0RmlsbENvbG9yKENvbG9yOjpi
bGFjaywgc3R5bGUoKS0+Y29sb3JTcGFjZSgpKTsKKyAgICBjb250ZXh0LT5kcmF3QmlkaVRleHQo
Zm9udCwgcnVuLCBGbG9hdFBvaW50KGxhYmVsWCwgbGFiZWxZKSk7Cit9CisKK2Jvb2wgUmVuZGVy
RW1iZWRkZWRPYmplY3Q6OmdldFJlcGxhY2VtZW50VGV4dEdlb21ldHJ5KGNvbnN0IExheW91dFBv
aW50JiBhY2N1bXVsYXRlZE9mZnNldCwgRmxvYXRSZWN0JiBjb250ZW50UmVjdCwgUGF0aCYgcGF0
aCwgRmxvYXRSZWN0JiByZXBsYWNlbWVudFRleHRSZWN0LCBGb250JiBmb250LCBUZXh0UnVuJiBy
dW4sIGZsb2F0JiB0ZXh0V2lkdGgpIGNvbnN0Cit7CisgICAgY29udGVudFJlY3QgPSBjb250ZW50
Qm94UmVjdCgpOworICAgIGNvbnRlbnRSZWN0Lm1vdmVCeShyb3VuZGVkSW50UG9pbnQoYWNjdW11
bGF0ZWRPZmZzZXQpKTsKKyAgICAKKyAgICBGb250RGVzY3JpcHRpb24gZm9udERlc2NyaXB0aW9u
OworICAgIFJlbmRlclRoZW1lOjpkZWZhdWx0VGhlbWUoKS0+c3lzdGVtRm9udChDU1NWYWx1ZVdl
YmtpdFNtYWxsQ29udHJvbCwgZm9udERlc2NyaXB0aW9uKTsKKyAgICBmb250RGVzY3JpcHRpb24u
c2V0V2VpZ2h0KEZvbnRXZWlnaHRCb2xkKTsKKyAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBkb2N1
bWVudCgpLT5zZXR0aW5ncygpOworICAgIEFTU0VSVChzZXR0aW5ncyk7CisgICAgaWYgKCFzZXR0
aW5ncykKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGZvbnREZXNjcmlwdGlvbi5zZXRSZW5k
ZXJpbmdNb2RlKHNldHRpbmdzLT5mb250UmVuZGVyaW5nTW9kZSgpKTsKKyAgICBmb250RGVzY3Jp
cHRpb24uc2V0Q29tcHV0ZWRTaXplKGZvbnREZXNjcmlwdGlvbi5zcGVjaWZpZWRTaXplKCkpOwor
ICAgIGZvbnQgPSBGb250KGZvbnREZXNjcmlwdGlvbiwgMCwgMCk7CisgICAgZm9udC51cGRhdGUo
MCk7CisKKyAgICBydW4gPSBUZXh0UnVuKG1fdW5hdmFpbGFibGVQbHVnaW5SZXBsYWNlbWVudFRl
eHQpOworICAgIHRleHRXaWR0aCA9IGZvbnQud2lkdGgocnVuKTsKKyAgICAKKyAgICByZXBsYWNl
bWVudFRleHRSZWN0LnNldFNpemUoRmxvYXRTaXplKHRleHRXaWR0aCArIHJlcGxhY2VtZW50VGV4
dFJvdW5kZWRSZWN0TGVmdFJpZ2h0VGV4dE1hcmdpbiAqIDIsIHJlcGxhY2VtZW50VGV4dFJvdW5k
ZWRSZWN0SGVpZ2h0KSk7CisgICAgZmxvYXQgeCA9IChjb250ZW50UmVjdC5zaXplKCkud2lkdGgo
KSAvIDIgLSByZXBsYWNlbWVudFRleHRSZWN0LnNpemUoKS53aWR0aCgpIC8gMikgKyBjb250ZW50
UmVjdC5sb2NhdGlvbigpLngoKTsKKyAgICBmbG9hdCB5ID0gKGNvbnRlbnRSZWN0LnNpemUoKS5o
ZWlnaHQoKSAvIDIgLSByZXBsYWNlbWVudFRleHRSZWN0LnNpemUoKS5oZWlnaHQoKSAvIDIpICsg
Y29udGVudFJlY3QubG9jYXRpb24oKS55KCk7CisgICAgcmVwbGFjZW1lbnRUZXh0UmVjdC5zZXRM
b2NhdGlvbihGbG9hdFBvaW50KHgsIHkpKTsKKyAgICAKKyAgICBwYXRoLmFkZFJvdW5kZWRSZWN0
KHJlcGxhY2VtZW50VGV4dFJlY3QsIEZsb2F0U2l6ZShyZXBsYWNlbWVudFRleHRSb3VuZGVkUmVj
dFJhZGl1cywgcmVwbGFjZW1lbnRUZXh0Um91bmRlZFJlY3RSYWRpdXMpKTsKKworICAgIHJldHVy
biB0cnVlOworfQorCitMYXlvdXRSZWN0IFJlbmRlckVtYmVkZGVkT2JqZWN0OjpyZXBsYWNlbWVu
dFRleHRSZWN0KGNvbnN0IExheW91dFBvaW50JiBhY2N1bXVsYXRlZE9mZnNldCkgY29uc3QKK3sK
KyAgICBGbG9hdFJlY3QgY29udGVudFJlY3Q7CisgICAgUGF0aCBwYXRoOworICAgIEZsb2F0UmVj
dCByZXBsYWNlbWVudFRleHRSZWN0OworICAgIEZvbnQgZm9udDsKKyAgICBUZXh0UnVuIHJ1bigi
IiwgMCk7CisgICAgZmxvYXQgdGV4dFdpZHRoOworICAgIGlmIChnZXRSZXBsYWNlbWVudFRleHRH
ZW9tZXRyeShhY2N1bXVsYXRlZE9mZnNldCwgY29udGVudFJlY3QsIHBhdGgsIHJlcGxhY2VtZW50
VGV4dFJlY3QsIGZvbnQsIHJ1biwgdGV4dFdpZHRoKSkKKyAgICAgICAgcmV0dXJuIExheW91dFJl
Y3QocmVwbGFjZW1lbnRUZXh0UmVjdCk7CisgICAgCisgICAgcmV0dXJuIExheW91dFJlY3QoKTsK
K30KKwogYm9vbCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6aXNSZXBsYWNlbWVudE9ic2N1cmVkKCkg
Y29uc3QKIHsKICAgICAvLyBSZXR1cm4gd2hldGhlciBvciBub3QgdGhlIHJlcGxhY2VtZW50IGNv
bnRlbnQgZm9yIGJsb2NrZWQgcGx1Z2lucyBpcyBhY2Nlc3NpYmxlIHRvIHRoZSB1c2VyLgpAQCAt
MjkxLDEwICszMTAsNyBAQCBib29sIFJlbmRlckVtYmVkZGVkT2JqZWN0Ojppc1JlcGxhY2VtZW50
T2JzY3VyZWQoKSBjb25zdAogICAgIC8vIENhbGN1bGF0ZSB0aGUgYWJzb2x1dGUgcmVjdCBmb3Ig
dGhlIGJsb2NrZWQgcGx1Z2luIHJlcGxhY2VtZW50IHRleHQuCiAgICAgSW50UmVjdCBhYnNvbHV0
ZUJvdW5kaW5nQm94ID0gYWJzb2x1dGVCb3VuZGluZ0JveFJlY3QoKTsKICAgICBMYXlvdXRQb2lu
dCBhYnNvbHV0ZUxvY2F0aW9uKGFic29sdXRlQm91bmRpbmdCb3gubG9jYXRpb24oKSk7Ci0gICAg
TGF5b3V0UmVjdCByZWN0OwotICAgIGlmIChtX2luZGljYXRvciAmJiBtX2luZGljYXRvci0+cmVu
ZGVyZXIoKSkKLSAgICAgICAgcmVjdCA9IG1faW5kaWNhdG9yLT5yZW5kZXJlcigpLT5hYnNvbHV0
ZUJvdW5kaW5nQm94UmVjdCgpOwotCisgICAgTGF5b3V0UmVjdCByZWN0ID0gcmVwbGFjZW1lbnRU
ZXh0UmVjdChhYnNvbHV0ZUxvY2F0aW9uKTsKICAgICBpZiAocmVjdC5pc0VtcHR5KCkpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogCkBAIC0zODQsMjEgKzQwMCwxNyBAQCB2b2lkIFJlbmRlckVtYmVk
ZGVkT2JqZWN0OjpsYXlvdXQoKQogICAgIGlmICghY2FuSGF2ZUNoaWxkcmVuKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0b0VsZW1lbnQobm9kZSgpKTsKLSAg
ICBTaGFkb3dSb290KiBzaGFkb3dSb290ID0gZWxlbWVudC0+dXNlckFnZW50U2hhZG93Um9vdCgp
OwotICAgIGlmICghc2hhZG93Um9vdCkKLSAgICAgICAgcmV0dXJuOworICAgIC8vIFRoaXMgY29k
ZSBjb3BpZWQgZnJvbSBSZW5kZXJNZWRpYTo6bGF5b3V0KCkuCisgICAgUmVuZGVyT2JqZWN0KiBj
aGlsZCA9IG1fY2hpbGRyZW4uZmlyc3RDaGlsZCgpOwogCi0gICAgTm9kZSogc2hhZG93Um9vdENo
aWxkID0gc2hhZG93Um9vdC0+Zmlyc3RDaGlsZCgpOwotICAgIGlmICghc2hhZG93Um9vdENoaWxk
KQorICAgIGlmICghY2hpbGQpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlbmRlck9iamVjdCog
c2hhZG93Um9vdFJlbmRlcmVyID0gc2hhZG93Um9vdENoaWxkLT5yZW5kZXJlcigpOwotICAgIGlm
ICghc2hhZG93Um9vdFJlbmRlcmVyIHx8ICFzaGFkb3dSb290UmVuZGVyZXItPmlzQm94KCkpCi0g
ICAgICAgIHJldHVybjsKLQotICAgIFJlbmRlckJveCogY2hpbGRCb3ggPSB0b1JlbmRlckJveChz
aGFkb3dSb290UmVuZGVyZXIpOworICAgIFJlbmRlckJveCogY2hpbGRCb3ggPSB0b1JlbmRlckJv
eChjaGlsZCk7CiAKKyAgICBpZiAoIWNoaWxkQm94KQorICAgICAgICByZXR1cm47CisgICAgCiAg
ICAgaWYgKG5ld1NpemUgPT0gb2xkU2l6ZSAmJiAhY2hpbGRCb3gtPm5lZWRzTGF5b3V0KCkpCiAg
ICAgICAgIHJldHVybjsKICAgICAKQEAgLTQ3OCwzMiArNDkwLDk0IEBAIGJvb2wgUmVuZGVyRW1i
ZWRkZWRPYmplY3Q6OmxvZ2ljYWxTY3JvbGwoU2Nyb2xsTG9naWNhbERpcmVjdGlvbiBkaXJlY3Rp
b24sIFNjcm9sCiAgICAgcmV0dXJuIHNjcm9sbChsb2dpY2FsVG9QaHlzaWNhbChkaXJlY3Rpb24s
IHRydWUsIGZhbHNlKSwgZ3JhbnVsYXJpdHksIG11bHRpcGxpZXIsIHN0b3BOb2RlKTsKIH0KIAot
Ym9vbCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6Y2FuSGF2ZUNoaWxkcmVuKCkgY29uc3QKKworYm9v
bCBSZW5kZXJFbWJlZGRlZE9iamVjdDo6aXNJblVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKGNv
bnN0IExheW91dFBvaW50JiBwb2ludCkgY29uc3QKIHsKLSAgICBpZiAoaXNTbmFwc2hvdHRlZFBs
dWdJbigpKQotICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBGbG9hdFJlY3QgY29udGVudFJlY3Q7
CisgICAgUGF0aCBwYXRoOworICAgIEZsb2F0UmVjdCByZXBsYWNlbWVudFRleHRSZWN0OworICAg
IEZvbnQgZm9udDsKKyAgICBUZXh0UnVuIHJ1bigiIik7CisgICAgZmxvYXQgdGV4dFdpZHRoOwor
ICAgIHJldHVybiBnZXRSZXBsYWNlbWVudFRleHRHZW9tZXRyeShJbnRQb2ludCgpLCBjb250ZW50
UmVjdCwgcGF0aCwgcmVwbGFjZW1lbnRUZXh0UmVjdCwgZm9udCwgcnVuLCB0ZXh0V2lkdGgpCisg
ICAgICAgICYmIHBhdGguY29udGFpbnMocG9pbnQpOworfQogCi0gICAgaWYgKCFub2RlKCkpCi0g
ICAgICAgIHJldHVybiBmYWxzZTsKK2Jvb2wgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OmlzSW5VbmF2
YWlsYWJsZVBsdWdpbkluZGljYXRvcihNb3VzZUV2ZW50KiBldmVudCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gaXNJblVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKHJvdW5kZWRMYXlvdXRQb2ludChh
YnNvbHV0ZVRvTG9jYWwoZXZlbnQtPmFic29sdXRlTG9jYXRpb24oKSwgVXNlVHJhbnNmb3Jtcykp
KTsKK30KIAotI2lmIEVOQUJMRShQTFVHSU5fUFJPWFlfRk9SX1ZJREVPKQotICAgIGlmICh0b0Vs
ZW1lbnQobm9kZSgpKS0+aXNNZWRpYUVsZW1lbnQoKSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0j
ZW5kaWYKK3N0YXRpYyBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9u
KERvY3VtZW50KiBkb2N1bWVudCwgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxh
YmlsaXR5UmVhc29uIHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKQoreworICAgIFBhZ2UqIHBh
Z2UgPSBkb2N1bWVudC0+cGFnZSgpOworICAgIHJldHVybiBwYWdlICYmIHBhZ2UtPmNocm9tZSgp
LmNsaWVudCgpLT5zaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihwbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvbik7Cit9CiAKLSAgICByZXR1cm4gdG9FbGVtZW50KG5vZGUoKSkt
PnVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKK3ZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OmhhbmRs
ZVVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yRXZlbnQoRXZlbnQqIGV2ZW50KQoreworICAgIGlm
ICghc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oZG9jdW1lbnQoKSwgbV9w
bHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBp
ZiAoIWV2ZW50LT5pc01vdXNlRXZlbnQoKSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIE1v
dXNlRXZlbnQqIG1vdXNlRXZlbnQgPSBzdGF0aWNfY2FzdDxNb3VzZUV2ZW50Kj4oZXZlbnQpOwor
ICAgIEhUTUxQbHVnSW5FbGVtZW50KiBlbGVtZW50ID0gdG9IVE1MUGx1Z0luRWxlbWVudChub2Rl
KCkpOworICAgIGlmIChldmVudC0+dHlwZSgpID09IGV2ZW50TmFtZXMoKS5tb3VzZWRvd25FdmVu
dCAmJiBzdGF0aWNfY2FzdDxNb3VzZUV2ZW50Kj4oZXZlbnQpLT5idXR0b24oKSA9PSBMZWZ0QnV0
dG9uKSB7CisgICAgICAgIG1fbW91c2VEb3duV2FzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRv
ciA9IGlzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcihtb3VzZUV2ZW50KTsKKyAgICAgICAg
aWYgKG1fbW91c2VEb3duV2FzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcikgeworICAgICAg
ICAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpIHsKKyAgICAgICAg
ICAgICAgICBmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPnNldENhcHR1cmluZ01vdXNlRXZlbnRzTm9k
ZShlbGVtZW50KTsKKyAgICAgICAgICAgICAgICBlbGVtZW50LT5zZXRJc0NhcHR1cmluZ01vdXNl
RXZlbnRzKHRydWUpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgc2V0VW5hdmFpbGFibGVQ
bHVnaW5JbmRpY2F0b3JJc1ByZXNzZWQodHJ1ZSk7CisgICAgICAgIH0KKyAgICAgICAgZXZlbnQt
PnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgfSAgICAgICAgCisgICAgaWYgKGV2ZW50LT50eXBl
KCkgPT0gZXZlbnROYW1lcygpLm1vdXNldXBFdmVudCAmJiBzdGF0aWNfY2FzdDxNb3VzZUV2ZW50
Kj4oZXZlbnQpLT5idXR0b24oKSA9PSBMZWZ0QnV0dG9uKSB7CisgICAgICAgIGlmIChtX3VuYXZh
aWxhYmxlUGx1Z2luSW5kaWNhdG9ySXNQcmVzc2VkKSB7CisgICAgICAgICAgICBpZiAoRnJhbWUq
IGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkgeworICAgICAgICAgICAgICAgIGZyYW1lLT5l
dmVudEhhbmRsZXIoKS0+c2V0Q2FwdHVyaW5nTW91c2VFdmVudHNOb2RlKDApOworICAgICAgICAg
ICAgICAgIGVsZW1lbnQtPnNldElzQ2FwdHVyaW5nTW91c2VFdmVudHMoZmFsc2UpOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgc2V0VW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3JJc1ByZXNz
ZWQoZmFsc2UpOworICAgICAgICB9CisgICAgICAgIGlmIChtX21vdXNlRG93bldhc0luVW5hdmFp
bGFibGVQbHVnaW5JbmRpY2F0b3IgJiYgaXNJblVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKG1v
dXNlRXZlbnQpKSB7CisgICAgICAgICAgICBpZiAoUGFnZSogcGFnZSA9IGRvY3VtZW50KCktPnBh
Z2UoKSkKKyAgICAgICAgICAgICAgICBwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS0+dW5hdmFpbGFi
bGVQbHVnaW5CdXR0b25DbGlja2VkKGVsZW1lbnQsIG1fcGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24pOworICAgICAgICB9CisgICAgICAgIG1fbW91c2VEb3duV2FzSW5VbmF2YWlsYWJsZVBsdWdp
bkluZGljYXRvciA9IGZhbHNlOworICAgICAgICBldmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsK
KyAgICB9CisgICAgaWYgKGV2ZW50LT50eXBlKCkgPT0gZXZlbnROYW1lcygpLm1vdXNlbW92ZUV2
ZW50KSB7CisgICAgICAgIHNldFVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9ySXNQcmVzc2VkKG1f
bW91c2VEb3duV2FzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvciAmJiBpc0luVW5hdmFpbGFi
bGVQbHVnaW5JbmRpY2F0b3IobW91c2VFdmVudCkpOworICAgICAgICBldmVudC0+c2V0RGVmYXVs
dEhhbmRsZWQoKTsKKyAgICB9CiB9CiAKLXZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3RFdmVudExp
c3RlbmVyOjpoYW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXZlbnQqIGV2ZW50
KQorQ3Vyc29yRGlyZWN0aXZlIFJlbmRlckVtYmVkZGVkT2JqZWN0OjpnZXRDdXJzb3IoY29uc3Qg
TGF5b3V0UG9pbnQmIHBvaW50LCBDdXJzb3ImIGN1cnNvcikgY29uc3QKIHsKLSAgICBpZiAoZXZl
bnQtPnR5cGUoKSA9PSBldmVudE5hbWVzKCkuY2xpY2tFdmVudCkKLSAgICAgICAgbV9yZW5kZXJF
bWJlZGRlZE9iamVjdC0+aGFuZGxlVW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja0V2ZW50KGV2
ZW50KTsKKyAgICBpZiAoc2hvd3NVbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcigpICYmIHNob3Vs
ZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9uKGRvY3VtZW50KCksIG1fcGx1Z2luVW5h
dmFpbGFiaWxpdHlSZWFzb24pICYmIGlzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcihwb2lu
dCkpIHsKKyAgICAgICAgY3Vyc29yID0gaGFuZEN1cnNvcigpOworICAgICAgICByZXR1cm4gU2V0
Q3Vyc29yOworICAgIH0KKyAgICByZXR1cm4gUmVuZGVyUGFydDo6Z2V0Q3Vyc29yKHBvaW50LCBj
dXJzb3IpOwogfQogCi1ib29sIFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lcjo6b3Bl
cmF0b3I9PShjb25zdCBFdmVudExpc3RlbmVyJiBsaXN0ZW5lcikKK2Jvb2wgUmVuZGVyRW1iZWRk
ZWRPYmplY3Q6OmNhbkhhdmVDaGlsZHJlbigpIGNvbnN0CiB7Ci0gICAgaWYgKGNvbnN0IFJlbmRl
ckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lciogcmVuZGVyRW1iZWRkZWRPYmplY3RFdmVudExp
c3RlbmVyID0gUmVuZGVyRW1iZWRkZWRPYmplY3RFdmVudExpc3RlbmVyOjpjYXN0KCZsaXN0ZW5l
cikpCi0gICAgICAgIHJldHVybiBtX3JlbmRlckVtYmVkZGVkT2JqZWN0ID09IHJlbmRlckVtYmVk
ZGVkT2JqZWN0RXZlbnRMaXN0ZW5lci0+bV9yZW5kZXJFbWJlZGRlZE9iamVjdDsKKyNpZiBFTkFC
TEUoUExVR0lOX1BST1hZX0ZPUl9WSURFTykKKyAgICBpZiAoIW5vZGUoKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgaWYgKHRvRWxlbWVudChub2RlKCkpLT5pc01lZGlhRWxlbWVudCgp
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyNlbmRpZgorCisgICAgaWYgKGlzU25hcHNob3R0ZWRQ
bHVnSW4oKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKICAgICByZXR1cm4gZmFsc2U7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVj
dC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmgKaW5k
ZXggN2ExZWRhNzFhNDg1MjAxNGFlMmY2YzZlZDI0N2NhN2UwZmNiN2I0MS4uMTU4YTNkMDA3YzRm
MGM4ZDQ0NWIwMmRmNGI0MWI0ZWU2Y2Y1MmY3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmgKQEAgLTMwLDMyICszMCw2IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIE1vdXNlRXZlbnQ7CiBjbGFzcyBUZXh0UnVuOwogCi1jbGFzcyBS
ZW5kZXJFbWJlZGRlZE9iamVjdDsKLQotY2xhc3MgUmVuZGVyRW1iZWRkZWRPYmplY3RFdmVudExp
c3RlbmVyIDogcHVibGljIEV2ZW50TGlzdGVuZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lcj4gY3JlYXRlKFJlbmRlckVt
YmVkZGVkT2JqZWN0KiByZW5kZXJFbWJlZGRlZE9iamVjdCkgeyByZXR1cm4gYWRvcHRSZWYobmV3
IFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lcihyZW5kZXJFbWJlZGRlZE9iamVjdCkp
OyB9Ci0gICAgc3RhdGljIGNvbnN0IFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lciog
Y2FzdChjb25zdCBFdmVudExpc3RlbmVyKiBsaXN0ZW5lcikKLSAgICB7Ci0gICAgICAgIHJldHVy
biBsaXN0ZW5lci0+dHlwZSgpID09IFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lclR5
cGUKLSAgICAgICAgICAgID8gc3RhdGljX2Nhc3Q8Y29uc3QgUmVuZGVyRW1iZWRkZWRPYmplY3RF
dmVudExpc3RlbmVyKj4obGlzdGVuZXIpCi0gICAgICAgICAgICA6IDA7Ci0gICAgfQotCi0gICAg
dmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgRXZlbnRMaXN0ZW5lciYgb3RoZXIpOwotCi1w
cml2YXRlOgotICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0RXZlbnRMaXN0ZW5lcihSZW5kZXJFbWJl
ZGRlZE9iamVjdCogcmVuZGVyRW1iZWRkZWRPYmplY3QpCi0gICAgICAgIDogRXZlbnRMaXN0ZW5l
cihSZW5kZXJFbWJlZGRlZE9iamVjdEV2ZW50TGlzdGVuZXJUeXBlKQotICAgICAgICAsIG1fcmVu
ZGVyRW1iZWRkZWRPYmplY3QocmVuZGVyRW1iZWRkZWRPYmplY3QpCi0gICAgewotICAgIH0KLQot
ICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXZl
bnQqKTsKLQotICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0KiBtX3JlbmRlckVtYmVkZGVkT2JqZWN0
OwotfTsKLQogLy8gUmVuZGVyZXIgZm9yIGVtYmVkcyBhbmQgb2JqZWN0cywgb2Z0ZW4sIGJ1dCBu
b3QgYWx3YXlzLCByZW5kZXJlZCB2aWEgcGx1Zy1pbnMuCiAvLyBGb3IgZXhhbXBsZSwgPGVtYmVk
IHNyYz0iZm9vLmh0bWwiPiBkb2VzIG5vdCBpbnZva2UgYSBwbHVnLWluLgogY2xhc3MgUmVuZGVy
RW1iZWRkZWRPYmplY3QgOiBwdWJsaWMgUmVuZGVyUGFydCB7CkBAIC03MiwxNCArNDYsMTEgQEAg
cHVibGljOgogICAgIHZvaWQgc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUGx1Z2luVW5h
dmFpbGFiaWxpdHlSZWFzb24pOwogICAgIGJvb2wgc2hvd3NVbmF2YWlsYWJsZVBsdWdpbkluZGlj
YXRvcigpIGNvbnN0OwogCi0gICAgdm9pZCBzZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbkRl
c2NyaXB0aW9uKGNvbnN0IFN0cmluZyYpOwotICAgIGNvbnN0IFN0cmluZyYgcGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb25EZXNjcmlwdGlvbigpIHsgcmV0dXJuIG1fdW5hdmFpbGFiaWxpdHlEZXNj
cmlwdGlvbjsgfQotCiAgICAgLy8gRklYTUU6IFRoaXMgYmVsb25ncyBvbiBIVE1MT2JqZWN0RWxl
bWVudC4KICAgICBib29sIGhhc0ZhbGxiYWNrQ29udGVudCgpIGNvbnN0IHsgcmV0dXJuIG1faGFz
RmFsbGJhY2tDb250ZW50OyB9CiAgICAgdm9pZCBzZXRIYXNGYWxsYmFja0NvbnRlbnQoYm9vbCBo
YXNGYWxsYmFja0NvbnRlbnQpIHsgbV9oYXNGYWxsYmFja0NvbnRlbnQgPSBoYXNGYWxsYmFja0Nv
bnRlbnQ7IH0KIAotICAgIHZvaWQgaGFuZGxlVW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja0V2
ZW50KEV2ZW50Kik7CisgICAgdm9pZCBoYW5kbGVVbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvckV2
ZW50KEV2ZW50Kik7CiAKICAgICBib29sIGlzUmVwbGFjZW1lbnRPYnNjdXJlZCgpIGNvbnN0Owog
CkBAIC04OCwxMCArNTksMTEgQEAgcHVibGljOgogI2VuZGlmCiAKIHByb3RlY3RlZDoKLSAgICB2
aXJ0dWFsIHZvaWQgd2lsbEJlRGVzdHJveWVkKCkgT1ZFUlJJREU7Ci0KKyAgICB2aXJ0dWFsIHZv
aWQgcGFpbnRSZXBsYWNlZChQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYpOwogICAgIHZp
cnR1YWwgdm9pZCBwYWludChQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYpOwogCisgICAg
dmlydHVhbCBDdXJzb3JEaXJlY3RpdmUgZ2V0Q3Vyc29yKGNvbnN0IExheW91dFBvaW50JiwgQ3Vy
c29yJikgY29uc3Q7CisKICAgICBjb25zdCBSZW5kZXJPYmplY3RDaGlsZExpc3QqIGNoaWxkcmVu
KCkgY29uc3QgeyByZXR1cm4gJm1fY2hpbGRyZW47IH0KICAgICBSZW5kZXJPYmplY3RDaGlsZExp
c3QqIGNoaWxkcmVuKCkgeyByZXR1cm4gJm1fY2hpbGRyZW47IH0KIApAQCAtMTE2LDYgKzg4LDEy
IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIHNjcm9sbChTY3JvbGxEaXJlY3Rpb24sIFNj
cm9sbEdyYW51bGFyaXR5LCBmbG9hdCBtdWx0aXBsaWVyLCBOb2RlKiogc3RvcE5vZGUpOwogICAg
IHZpcnR1YWwgYm9vbCBsb2dpY2FsU2Nyb2xsKFNjcm9sbExvZ2ljYWxEaXJlY3Rpb24sIFNjcm9s
bEdyYW51bGFyaXR5LCBmbG9hdCBtdWx0aXBsaWVyLCBOb2RlKiogc3RvcE5vZGUpOwogCisgICAg
dm9pZCBzZXRVbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcklzUHJlc3NlZChib29sKTsKKyAgICBi
b29sIGlzSW5VbmF2YWlsYWJsZVBsdWdpbkluZGljYXRvcihNb3VzZUV2ZW50KikgY29uc3Q7Cisg
ICAgYm9vbCBpc0luVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3IoY29uc3QgTGF5b3V0UG9pbnQm
KSBjb25zdDsKKyAgICBib29sIGdldFJlcGxhY2VtZW50VGV4dEdlb21ldHJ5KGNvbnN0IExheW91
dFBvaW50JiBhY2N1bXVsYXRlZE9mZnNldCwgRmxvYXRSZWN0JiBjb250ZW50UmVjdCwgUGF0aCYs
IEZsb2F0UmVjdCYgcmVwbGFjZW1lbnRUZXh0UmVjdCwgRm9udCYsIFRleHRSdW4mLCBmbG9hdCYg
dGV4dFdpZHRoKSBjb25zdDsKKyAgICBMYXlvdXRSZWN0IHJlcGxhY2VtZW50VGV4dFJlY3QoY29u
c3QgTGF5b3V0UG9pbnQmKSBjb25zdDsKKwogICAgIHZpcnR1YWwgYm9vbCBjYW5IYXZlQ2hpbGRy
ZW4oKSBjb25zdDsKICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdENoaWxkTGlzdCogdmlydHVhbENo
aWxkcmVuKCkgeyByZXR1cm4gY2hpbGRyZW4oKTsgfQogICAgIHZpcnR1YWwgY29uc3QgUmVuZGVy
T2JqZWN0Q2hpbGRMaXN0KiB2aXJ0dWFsQ2hpbGRyZW4oKSBjb25zdCB7IHJldHVybiBjaGlsZHJl
bigpOyB9CkBAIC0xMjYsMTAgKzEwNCwxMCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBtX3Nob3dz
VW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3I7CiAgICAgUGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24gbV9wbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbjsKKyAgICBTdHJpbmcgbV91bmF2YWlsYWJs
ZVBsdWdpblJlcGxhY2VtZW50VGV4dDsKKyAgICBib29sIG1fdW5hdmFpbGFibGVQbHVnaW5JbmRp
Y2F0b3JJc1ByZXNzZWQ7CisgICAgYm9vbCBtX21vdXNlRG93bldhc0luVW5hdmFpbGFibGVQbHVn
aW5JbmRpY2F0b3I7CiAgICAgUmVuZGVyT2JqZWN0Q2hpbGRMaXN0IG1fY2hpbGRyZW47Ci0gICAg
UmVmUHRyPEhUTUxFbGVtZW50PiBtX2luZGljYXRvcjsKLSAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+
IG1faW5kaWNhdG9yTGFiZWw7Ci0gICAgU3RyaW5nIG1fdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlv
bjsKIH07CiAKIGlubGluZSBSZW5kZXJFbWJlZGRlZE9iamVjdCogdG9SZW5kZXJFbWJlZGRlZE9i
amVjdChSZW5kZXJPYmplY3QqIG9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJXaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJX
aWRnZXQuaAppbmRleCAzY2JkN2RkOGM3Zjg2ZDc3YTQ0MzQyYjBiZWYwMzViYjhiY2I3ZjgxLi5l
ZjhmM2I3NDE3OWQ4YzU4MDRlOTBjZTc4N2M1NmZkNDU5ODZhZjU5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlcldpZGdldC5oCkBAIC04NiwxMSArODYsMTEgQEAgcHJvdGVjdGVkOgog
ICAgIHZpcnR1YWwgYm9vbCBub2RlQXRQb2ludChjb25zdCBIaXRUZXN0UmVxdWVzdCYsIEhpdFRl
c3RSZXN1bHQmLCBjb25zdCBIaXRUZXN0TG9jYXRpb24mIGxvY2F0aW9uSW5Db250YWluZXIsIGNv
bnN0IExheW91dFBvaW50JiBhY2N1bXVsYXRlZE9mZnNldCwgSGl0VGVzdEFjdGlvbikgT1ZFUlJJ
REU7CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRDb250ZW50cyhQYWludEluZm8mLCBjb25zdCBM
YXlvdXRQb2ludCYpOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsQmVEZXN0cm95ZWQoKTsKIAogcHJp
dmF0ZToKICAgICB2aXJ0dWFsIGJvb2wgaXNXaWRnZXQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9
CiAKKyAgICB2aXJ0dWFsIHZvaWQgd2lsbEJlRGVzdHJveWVkKCk7CiAgICAgdmlydHVhbCB2b2lk
IGRlc3Ryb3koKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0U2VsZWN0aW9uU3RhdGUoU2VsZWN0aW9u
U3RhdGUpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRPdmVybGFwVGVzdFJlc3VsdChib29sKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgK
aW5kZXggZGJkNjNlNjNiNjUzMjJmZGJlYzYwZDViN2M5MDE5MmJiYTJjOWVkZS4uYzMyYjNmNmQy
Y2QyMjQ1YjdhNmJhNjE2ODYzYWUzNzlkMTQwZThiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKQEAgLTEwMiw3ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpT
dHJpbmcmKSBPVkVSUklERTsKIAogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxiYXJzTW9kZURpZENo
YW5nZSgpIGNvbnN0IE9WRVJSSURFIHsgfQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVbmF2YWls
YWJsZVBsdWdpbk1lc3NhZ2VJbmNsdWRlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QgT1ZFUlJJREU7CisgICAgdmly
dHVhbCBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9uKFdlYkNvcmU6
OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tl
ZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQg
bW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVu
c2lnbmVkIG1vZGlmaWVyRmxhZ3MpIE9WRVJSSURFOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXggYzU2OTAzYjg2NjBi
NGEzNjFjMjhhMzUwOTUwNmFiNGI3MTY3OTBjMC4uM2YwYjA1Mzg1YmEzYTY5MzViY2ZmYTM1Yzc0
NjZkOWIxOTk4MTgxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5tbQpAQCAtNTg2LDcgKzU4Niw3IEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgSW50UmVjdCYgcikgY29uc3QKIAogLy8g
RW5kIGhvc3Qgd2luZG93IG1ldGhvZHMuCiAKLWJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzaG91bGRV
bmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VJbmNsdWRlQnV0dG9uKFJlbmRlckVtYmVkZGVkT2JqZWN0
OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbiBwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikg
Y29uc3QKK2Jvb2wgV2ViQ2hyb21lQ2xpZW50OjpzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3Nh
Z2VCZUJ1dHRvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24gcGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0CiB7CiAgICAgaWYgKHBsdWdpblVu
YXZhaWxhYmlsaXR5UmVhc29uID09IFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5NaXNzaW5n
KQogICAgICAgICByZXR1cm4gW1ttX3dlYlZpZXcgVUlEZWxlZ2F0ZV0gcmVzcG9uZHNUb1NlbGVj
dG9yOkBzZWxlY3Rvcih3ZWJWaWV3OmRpZFByZXNzTWlzc2luZ1BsdWdpbkJ1dHRvbjopXTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvSGFuZGxlTWVzc2FnZS5o
IGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy9IYW5kbGVNZXNzYWdlLmgKaW5kZXgg
MDZhMWQzNGQxMTg5ZjQ5ZWMxMTU4MzU2ODZlNTYzOGI4NDFlOTVjYy4uNDA5NWU5ZjViNmZkODYy
ZDdkNmIxYmM0ODFhODljMTg0YzkyMDgxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vQ29yZUlQQy9IYW5kbGVNZXNzYWdlLmgKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZv
cm0vQ29yZUlQQy9IYW5kbGVNZXNzYWdlLmgKQEAgLTIwOSwxMiArMjA5LDYgQEAgdm9pZCBjYWxs
TWVtYmVyRnVuY3Rpb24oY29uc3QgQXJndW1lbnRzNjxQMSwgUDIsIFAzLCBQNCwgUDUsIFA2PiYg
YXJncywgQXJndW1lbnQKICAgICAob2JqZWN0LT4qZnVuY3Rpb24pKGFyZ3MuYXJndW1lbnQxLCBh
cmdzLmFyZ3VtZW50MiwgYXJncy5hcmd1bWVudDMsIGFyZ3MuYXJndW1lbnQ0LCBhcmdzLmFyZ3Vt
ZW50NSwgYXJncy5hcmd1bWVudDYsIHJlcGx5QXJncy5hcmd1bWVudDEsIHJlcGx5QXJncy5hcmd1
bWVudDIsIHJlcGx5QXJncy5hcmd1bWVudDMpOwogfQogCi10ZW1wbGF0ZTx0eXBlbmFtZSBDLCB0
eXBlbmFtZSBNRiwgdHlwZW5hbWUgUDEsIHR5cGVuYW1lIFAyLCB0eXBlbmFtZSBQMywgdHlwZW5h
bWUgUDQsIHR5cGVuYW1lIFA1LCB0eXBlbmFtZSBQNiwgdHlwZW5hbWUgUjEsIHR5cGVuYW1lIFIy
LCB0eXBlbmFtZSBSMywgdHlwZW5hbWUgUjQ+Ci12b2lkIGNhbGxNZW1iZXJGdW5jdGlvbihjb25z
dCBBcmd1bWVudHM2PFAxLCBQMiwgUDMsIFA0LCBQNSwgUDY+JiBhcmdzLCBBcmd1bWVudHM0PFIx
LCBSMiwgUjMsIFI0PiYgcmVwbHlBcmdzLCBDKiBvYmplY3QsIE1GIGZ1bmN0aW9uKQotewotICAg
IChvYmplY3QtPipmdW5jdGlvbikoYXJncy5hcmd1bWVudDEsIGFyZ3MuYXJndW1lbnQyLCBhcmdz
LmFyZ3VtZW50MywgYXJncy5hcmd1bWVudDQsIGFyZ3MuYXJndW1lbnQ1LCBhcmdzLmFyZ3VtZW50
NiwgcmVwbHlBcmdzLmFyZ3VtZW50MSwgcmVwbHlBcmdzLmFyZ3VtZW50MiwgcmVwbHlBcmdzLmFy
Z3VtZW50MywgcmVwbHlBcmdzLmFyZ3VtZW50NCk7Ci19Ci0KIC8vIERpc3BhdGNoIGZ1bmN0aW9u
cyB3aXRoIGRlbGF5ZWQgcmVwbHkgYXJndW1lbnRzLgogdGVtcGxhdGU8dHlwZW5hbWUgQywgdHlw
ZW5hbWUgTUYsIHR5cGVuYW1lIFI+CiB2b2lkIGNhbGxNZW1iZXJGdW5jdGlvbihjb25zdCBBcmd1
bWVudHMwJiwgUGFzc1JlZlB0cjxSPiBkZWxheWVkUmVwbHksIEMqIG9iamVjdCwgTUYgZnVuY3Rp
b24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJQ2xpZW50VHJhaXRzLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElDbGllbnRUcmFpdHMuY3BwCmluZGV4IGZlNjhk
Njk2ZTM4ZDkzMWFjNzI1NmRkOTA3MjhmMTQ4NTUzMmEwYjguLjlhZjdjNzZlM2JkMjg0ZWNmZjk5
MGQ5YzMzZWMyNjg4NjJlOTUxM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UElDbGllbnRUcmFpdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElDbGllbnRU
cmFpdHMuY3BwCkBAIC02Niw3ICs2Niw2IEBAIGNvbnN0IHNpemVfdCBBUElDbGllbnRUcmFpdHM8
V0tQYWdlQ29udGV4dE1lbnVDbGllbnQ+OjppbnRlcmZhY2VTaXplc0J5VmVyc2lvbltdCiBjb25z
dCBzaXplX3QgQVBJQ2xpZW50VHJhaXRzPFdLUGFnZUxvYWRlckNsaWVudD46OmludGVyZmFjZVNp
emVzQnlWZXJzaW9uW10gPSB7CiAgICAgb2Zmc2V0b2YoV0tQYWdlTG9hZGVyQ2xpZW50LCBkaWRE
ZXRlY3RYU1NGb3JGcmFtZSksCiAgICAgb2Zmc2V0b2YoV0tQYWdlTG9hZGVyQ2xpZW50LCBkaWRS
ZWNlaXZlSW50ZW50Rm9yRnJhbWVfdW5hdmFpbGFibGUpLAotICAgIG9mZnNldG9mKFdLUGFnZUxv
YWRlckNsaWVudCwgcGx1Z2luTG9hZFBvbGljeSksCiAgICAgc2l6ZW9mKFdLUGFnZUxvYWRlckNs
aWVudCkKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElDbGllbnRU
cmFpdHMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElDbGllbnRUcmFpdHMuaAppbmRleCA0
NjIyOTc4Y2Q4NTcyYThiMjg5ZDdmMTRjZmQ5YWQ3N2Q2ZTJlYTJhLi40YTY2YTRlZTgwMjhlOWQ3
ZDc0ZTE0M2I2M2NjZTAxYjk0Mzk3ODY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvQVBJQ2xpZW50VHJhaXRzLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSUNsaWVu
dFRyYWl0cy5oCkBAIC02NCw3ICs2NCw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IEFQSUNsaWVudFRy
YWl0czxXS1BhZ2VDb250ZXh0TWVudUNsaWVudD4gewogfTsKIAogdGVtcGxhdGU8PiBzdHJ1Y3Qg
QVBJQ2xpZW50VHJhaXRzPFdLUGFnZUxvYWRlckNsaWVudD4gewotICAgIHN0YXRpYyBjb25zdCBz
aXplX3QgaW50ZXJmYWNlU2l6ZXNCeVZlcnNpb25bNF07CisgICAgc3RhdGljIGNvbnN0IHNpemVf
dCBpbnRlcmZhY2VTaXplc0J5VmVyc2lvblszXTsKIH07CiAKIHRlbXBsYXRlPD4gc3RydWN0IEFQ
SUNsaWVudFRyYWl0czxXS1BhZ2VVSUNsaWVudD4gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLUGFnZS5oCmluZGV4IGRjNTdjNTIzZGM2YmJhNDIzNjQ3ZWM0MzU0YjQ3Yjk0Njc4M2I2
OWUuLjE3NjU3OGZlZTk1MmQ1ZmU2YTE3NDVhNzM5Y2NjMDgyNTAwZjQzOGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmgKQEAgLTgyLDEzICs4MiwxMiBAQCB0eXBlZGVm
IGJvb2wgKCpXS1BhZ2VTaG91bGRHb1RvQmFja0ZvcndhcmRMaXN0SXRlbUNhbGxiYWNrKShXS1Bh
Z2VSZWYgcGFnZSwgV0tCYQogdHlwZWRlZiB2b2lkICgqV0tQYWdlRGlkTmV3Rmlyc3RWaXN1YWxs
eU5vbkVtcHR5TGF5b3V0Q2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBXS1R5cGVSZWYgdXNlckRh
dGEsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tQYWdlV2lsbEdv
VG9CYWNrRm9yd2FyZExpc3RJdGVtQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBXS0JhY2tGb3J3
YXJkTGlzdEl0ZW1SZWYgaXRlbSwgV0tUeXBlUmVmIHVzZXJEYXRhLCBjb25zdCB2b2lkICpjbGll
bnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLUGFnZURpZExheW91dENhbGxiYWNrKShXS1BhZ2VS
ZWYgcGFnZSwgV0tMYXlvdXRNaWxlc3RvbmVzIG1pbGVzdG9uZXMsIFdLVHlwZVJlZiB1c2VyRGF0
YSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Ci10eXBlZGVmIFdLUGx1Z2luTG9hZFBvbGljeSAo
KldLUGFnZVBsdWdpbkxvYWRQb2xpY3lDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdLUGx1Z2lu
TG9hZFBvbGljeSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeSwgV0tEaWN0aW9uYXJ5UmVmIHBsdWdp
bkluZm9EaWN0aW9uYXJ5LCBXS1N0cmluZ1JlZiogdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbiwg
Y29uc3Qgdm9pZCogY2xpZW50SW5mbyk7Cit0eXBlZGVmIFdLUGx1Z2luTG9hZFBvbGljeSAoKldL
UGFnZVBsdWdpbkxvYWRQb2xpY3lDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdLUGx1Z2luTG9h
ZFBvbGljeSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeSwgV0tEaWN0aW9uYXJ5UmVmIHBsdWdpbklu
Zm9EaWN0aW9uYXJ5LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldL
UGFnZVBsdWdpbkRpZEZhaWxDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdLRXJyb3JDb2RlIGVy
cm9yQ29kZSwgV0tEaWN0aW9uYXJ5UmVmIHBsdWdpbkluZm9EaWN0aW9uYXJ5LCBjb25zdCB2b2lk
KiBjbGllbnRJbmZvKTsKIAogLy8gRGVwcmVjYXRlZAogdHlwZWRlZiB2b2lkICgqV0tQYWdlRGlk
RmFpbFRvSW5pdGlhbGl6ZVBsdWdpbkNhbGxiYWNrX2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjApKFdL
UGFnZVJlZiBwYWdlLCBXS1N0cmluZ1JlZiBtaW1lVHlwZSwgY29uc3Qgdm9pZCogY2xpZW50SW5m
byk7CiB0eXBlZGVmIHZvaWQgKCpXS1BhZ2VQbHVnaW5EaWRGYWlsQ2FsbGJhY2tfZGVwcmVjYXRl
ZEZvclVzZVdpdGhWMSkoV0tQYWdlUmVmIHBhZ2UsIFdLRXJyb3JDb2RlIGVycm9yQ29kZSwgV0tT
dHJpbmdSZWYgbWltZVR5cGUsIFdLU3RyaW5nUmVmIHBsdWdpbklkZW50aWZpZXIsIFdLU3RyaW5n
UmVmIHBsdWdpblZlcnNpb24sIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwotdHlwZWRlZiBXS1Bs
dWdpbkxvYWRQb2xpY3kgKCpXS1BhZ2VQbHVnaW5Mb2FkUG9saWN5Q2FsbGJhY2tfZGVwcmVjYXRl
ZEZvclVzZVdpdGhWMikoV0tQYWdlUmVmIHBhZ2UsIFdLUGx1Z2luTG9hZFBvbGljeSBjdXJyZW50
UGx1Z2luTG9hZFBvbGljeSwgV0tEaWN0aW9uYXJ5UmVmIHBsdWdpbkluZm9EaWN0aW9uYXJ5LCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIAogc3RydWN0IFdLUGFnZUxvYWRlckNsaWVudCB7CiAg
ICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB2ZXJzaW9uOwpAQCAtMTQwLDE1ICsxMzksMTIgQEAgc3RydWN0IFdLUGFn
ZUxvYWRlckNsaWVudCB7CiAgICAgdm9pZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKnJlZ2lzdGVySW50ZW50U2VydmljZUZv
ckZyYW1lX3VuYXZhaWxhYmxlKSh2b2lkKTsKIAogICAgIFdLUGFnZURpZExheW91dENhbGxiYWNr
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlkTGF5b3V0Owot
ICAgIFdLUGFnZVBsdWdpbkxvYWRQb2xpY3lDYWxsYmFja19kZXByZWNhdGVkRm9yVXNlV2l0aFYy
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHVnaW5Mb2FkUG9saWN5X2Rl
cHJlY2F0ZWRGb3JVc2VXaXRoVjI7Ci0gICAgV0tQYWdlUGx1Z2luRGlkRmFpbENhbGxiYWNrICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHVnaW5EaWRGYWlsOwotCi0g
ICAgLy8gVmVyc2lvbiAzCiAgICAgV0tQYWdlUGx1Z2luTG9hZFBvbGljeUNhbGxiYWNrICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHVnaW5Mb2FkUG9saWN5OworICAgIFdL
UGFnZVBsdWdpbkRpZEZhaWxDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcGx1Z2luRGlkRmFpbDsKIH07CiB0eXBlZGVmIHN0cnVjdCBXS1BhZ2VMb2FkZXJD
bGllbnQgV0tQYWdlTG9hZGVyQ2xpZW50OwogCi1lbnVtIHsga1dLUGFnZUxvYWRlckNsaWVudEN1
cnJlbnRWZXJzaW9uID0gMyB9OworZW51bSB7IGtXS1BhZ2VMb2FkZXJDbGllbnRDdXJyZW50VmVy
c2lvbiA9IDIgfTsKIAogLy8gUG9saWN5IENsaWVudC4KIHR5cGVkZWYgdm9pZCAoKldLUGFnZURl
Y2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25DYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdL
RnJhbWVSZWYgZnJhbWUsIFdLRnJhbWVOYXZpZ2F0aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSwgV0tF
dmVudE1vZGlmaWVycyBtb2RpZmllcnMsIFdLRXZlbnRNb3VzZUJ1dHRvbiBtb3VzZUJ1dHRvbiwg
V0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIFdLRnJhbWVQb2xpY3lMaXN0ZW5lclJlZiBsaXN0ZW5l
ciwgV0tUeXBlUmVmIHVzZXJEYXRhLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJMb2FkZXJDbGllbnQuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkxvYWRlckNsaWVudC5jcHAKaW5kZXggODIxMjNmNGQ4ZmQz
ZTFjMDhjMjY0NjU5YTJjZWU0ZGNiZjhiZjNjYy4uZDdhM2E2ZDg5MzNmMzY3ZTZlMzkyNGY5OGNi
YmVjNmMyODQ5NDVjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkxv
YWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkxvYWRlckNs
aWVudC5jcHAKQEAgLTMxOSwyMiArMzE5LDEyIEBAIHZvaWQgV2ViTG9hZGVyQ2xpZW50OjpkaWRC
bG9ja0luc2VjdXJlUGx1Z2luVmVyc2lvbihXZWJQYWdlUHJveHkqIHBhZ2UsIEltbXV0YWJsCiAg
ICAgICAgICAgICBtX2NsaWVudC5jbGllbnRJbmZvKTsKIH0KIAotUGx1Z2luTW9kdWxlTG9hZFBv
bGljeSBXZWJMb2FkZXJDbGllbnQ6OnBsdWdpbkxvYWRQb2xpY3koV2ViUGFnZVByb3h5KiBwYWdl
LCBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBJbW11dGFi
bGVEaWN0aW9uYXJ5KiBwbHVnaW5JbmZvcm1hdGlvbiwgU3RyaW5nJiB1bmF2YWlsYWJpbGl0eURl
c2NyaXB0aW9uKQotewotICAgIFdLU3RyaW5nUmVmIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb25P
dXQgPSAwOwotICAgIFBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgbG9hZFBvbGljeSA9IGN1cnJlbnRQ
bHVnaW5Mb2FkUG9saWN5OwotCi0gICAgaWYgKG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVw
cmVjYXRlZEZvclVzZVdpdGhWMikKLSAgICAgICAgbG9hZFBvbGljeSA9IHRvUGx1Z2luTW9kdWxl
TG9hZFBvbGljeShtX2NsaWVudC5wbHVnaW5Mb2FkUG9saWN5X2RlcHJlY2F0ZWRGb3JVc2VXaXRo
VjIodG9BUEkocGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVnaW5Mb2FkUG9s
aWN5KSwgdG9BUEkocGx1Z2luSW5mb3JtYXRpb24pLCBtX2NsaWVudC5jbGllbnRJbmZvKSk7Ci0g
ICAgZWxzZSBpZiAobV9jbGllbnQucGx1Z2luTG9hZFBvbGljeSkKLSAgICAgICAgbG9hZFBvbGlj
eSA9IHRvUGx1Z2luTW9kdWxlTG9hZFBvbGljeShtX2NsaWVudC5wbHVnaW5Mb2FkUG9saWN5KHRv
QVBJKHBhZ2UpLCB0b1dLUGx1Z2luTG9hZFBvbGljeShjdXJyZW50UGx1Z2luTG9hZFBvbGljeSks
IHRvQVBJKHBsdWdpbkluZm9ybWF0aW9uKSwgJnVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb25PdXQs
IG1fY2xpZW50LmNsaWVudEluZm8pKTsKLQotICAgIGlmICh1bmF2YWlsYWJpbGl0eURlc2NyaXB0
aW9uT3V0KSB7Ci0gICAgICAgIFJlZlB0cjxXZWJTdHJpbmc+IHdlYlVuYXZhaWxhYmlsaXR5RGVz
Y3JpcHRpb24gPSBhZG9wdFJlZih0b0ltcGwodW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbk91dCkp
OwotICAgICAgICB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uID0gd2ViVW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbi0+c3RyaW5nKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBsb2FkUG9saWN5
OworUGx1Z2luTW9kdWxlTG9hZFBvbGljeSBXZWJMb2FkZXJDbGllbnQ6OnBsdWdpbkxvYWRQb2xp
Y3koV2ViUGFnZVByb3h5KiBwYWdlLCBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVn
aW5Mb2FkUG9saWN5LCBJbW11dGFibGVEaWN0aW9uYXJ5KiBwbHVnaW5JbmZvcm1hdGlvbikKK3sK
KyAgICBpZiAoIW1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3kpCisgICAgICAgIHJldHVybiBjdXJy
ZW50UGx1Z2luTG9hZFBvbGljeTsKKworICAgIHJldHVybiB0b1BsdWdpbk1vZHVsZUxvYWRQb2xp
Y3kobV9jbGllbnQucGx1Z2luTG9hZFBvbGljeSh0b0FQSShwYWdlKSwgdG9XS1BsdWdpbkxvYWRQ
b2xpY3koY3VycmVudFBsdWdpbkxvYWRQb2xpY3kpLCB0b0FQSShwbHVnaW5JbmZvcm1hdGlvbiks
IG1fY2xpZW50LmNsaWVudEluZm8pKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViTG9hZGVyQ2xpZW50LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViTG9hZGVyQ2xpZW50LmgKaW5kZXggY2U1YTMxY2IzOWU0
OTM0YzkyNDk3YTZmNGZjNDFhZTk2OGVlYTkxYS4uYzJhMDM4NDQ2MTQ4MWVhMzNlODI0YTU0YjFk
OTg0NmRiOGVlNzMyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkxv
YWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJMb2FkZXJDbGll
bnQuaApAQCAtOTAsNyArOTAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRHb1RvQmFja0Zv
cndhcmRMaXN0SXRlbShXZWJQYWdlUHJveHkqLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVtKik7CiAg
ICAgdm9pZCB3aWxsR29Ub0JhY2tGb3J3YXJkTGlzdEl0ZW0oV2ViUGFnZVByb3h5KiwgV2ViQmFj
a0ZvcndhcmRMaXN0SXRlbSosIEFQSU9iamVjdCopOwogCi0gICAgUGx1Z2luTW9kdWxlTG9hZFBv
bGljeSBwbHVnaW5Mb2FkUG9saWN5KFdlYlBhZ2VQcm94eSosIFBsdWdpbk1vZHVsZUxvYWRQb2xp
Y3kgY3VycmVudFBsdWdpbkxvYWRQb2xpY3ksIEltbXV0YWJsZURpY3Rpb25hcnkqLCBTdHJpbmcm
IHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb25PdXRQYXJhbWV0ZXIpOworICAgIFBsdWdpbk1vZHVs
ZUxvYWRQb2xpY3kgcGx1Z2luTG9hZFBvbGljeShXZWJQYWdlUHJveHkqLCBQbHVnaW5Nb2R1bGVM
b2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBJbW11dGFibGVEaWN0aW9uYXJ5Kik7
CiAgICAgdm9pZCBkaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKFdlYlBhZ2VQcm94eSosIEltbXV0
YWJsZURpY3Rpb25hcnkqKTsKICAgICB2b2lkIGRpZEJsb2NrSW5zZWN1cmVQbHVnaW5WZXJzaW9u
KFdlYlBhZ2VQcm94eSosIEltbXV0YWJsZURpY3Rpb25hcnkqKTsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDc1NWMwZmVhZDVhMjMzZjBlNDA4Y2Jj
OTlhOTRmZjVkY2VjYmE0NTguLjc0MGRmOTExYjgwMDViZjg5ZWU4NTc5MmIwZThkYTBiN2NkYzVi
MjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0xNDEz
LDcgKzE0MTMsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlS2V5Ym9hcmRFdmVudChjb25z
dCBOYXRpdmVXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKIH0KIAogI2lmIEVOQUJMRShORVRTQ0FQ
RV9QTFVHSU5fQVBJKQotdm9pZCBXZWJQYWdlUHJveHk6OmZpbmRQbHVnaW4oY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSwgdWludDMyX3QgcHJvY2Vzc1R5cGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5n
LCBjb25zdCBTdHJpbmcmIGZyYW1lVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkxTdHJp
bmcsIGJvb2wgYWxsb3dPbmx5QXBwbGljYXRpb25QbHVnaW5zLCB1aW50NjRfdCYgcGx1Z2luUHJv
Y2Vzc1Rva2VuLCBTdHJpbmcmIG5ld01pbWVUeXBlLCB1aW50MzJfdCYgcGx1Z2luTG9hZFBvbGlj
eSwgU3RyaW5nJiB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uKQordm9pZCBXZWJQYWdlUHJveHk6
OmZpbmRQbHVnaW4oY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgdWludDMyX3QgcHJvY2Vzc1R5cGUs
IGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lVVJMU3RyaW5nLCBj
b25zdCBTdHJpbmcmIHBhZ2VVUkxTdHJpbmcsIGJvb2wgYWxsb3dPbmx5QXBwbGljYXRpb25QbHVn
aW5zLCB1aW50NjRfdCYgcGx1Z2luUHJvY2Vzc1Rva2VuLCBTdHJpbmcmIG5ld01pbWVUeXBlLCB1
aW50MzJfdCYgcGx1Z2luTG9hZFBvbGljeSkKIHsKICAgICBNRVNTQUdFX0NIRUNLX1VSTCh1cmxT
dHJpbmcpOwogCkBAIC0xNDMxLDcgKzE0MzEsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZmluZFBs
dWdpbihjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCB1aW50MzJfdCBwcm9jZXNzVHlwZSwgY29ucwog
CiAjaWYgUExBVEZPUk0oTUFDKQogICAgIFJlZlB0cjxJbW11dGFibGVEaWN0aW9uYXJ5PiBwbHVn
aW5JbmZvcm1hdGlvbiA9IGNyZWF0ZVBsdWdpbkluZm9ybWF0aW9uRGljdGlvbmFyeShwbHVnaW4s
IGZyYW1lVVJMU3RyaW5nLCBTdHJpbmcoKSwgcGFnZVVSTFN0cmluZywgU3RyaW5nKCksIFN0cmlu
ZygpKTsKLSAgICBwbHVnaW5Mb2FkUG9saWN5ID0gbV9sb2FkZXJDbGllbnQucGx1Z2luTG9hZFBv
bGljeSh0aGlzLCBzdGF0aWNfY2FzdDxQbHVnaW5Nb2R1bGVMb2FkUG9saWN5PihwbHVnaW5Mb2Fk
UG9saWN5KSwgcGx1Z2luSW5mb3JtYXRpb24uZ2V0KCksIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRp
b24pOworICAgIHBsdWdpbkxvYWRQb2xpY3kgPSBtX2xvYWRlckNsaWVudC5wbHVnaW5Mb2FkUG9s
aWN5KHRoaXMsIHN0YXRpY19jYXN0PFBsdWdpbk1vZHVsZUxvYWRQb2xpY3k+KHBsdWdpbkxvYWRQ
b2xpY3kpLCBwbHVnaW5JbmZvcm1hdGlvbi5nZXQoKSk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJB
TShmcmFtZVVSTFN0cmluZyk7CiAgICAgVU5VU0VEX1BBUkFNKHBhZ2VVUkxTdHJpbmcpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDdlZTkzOWVhNzY3MDEwMGQ1
ZjBhOTI2ZjlkMWQwMjZjNjZlNjcyNzMuLmY1N2I2NTM3N2E1YmFmM2Q3MDQyMjFhNzhkYTkzOTMw
ZWYyNzk1MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTEw
NTQsNyArMTA1NCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZW5kV2hlZWxFdmVudChjb25zdCBX
ZWJXaGVlbEV2ZW50Jik7CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICB2
b2lkIGZpbmRQbHVnaW4oY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgdWludDMyX3QgcHJvY2Vzc1R5
cGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lVVJMU3RyaW5n
LCBjb25zdCBTdHJpbmcmIHBhZ2VVUkxTdHJpbmcsIGJvb2wgYWxsb3dPbmx5QXBwbGljYXRpb25Q
bHVnaW5zLCB1aW50NjRfdCYgcGx1Z2luUHJvY2Vzc1Rva2VuLCBTdHJpbmcmIG5ld01JTUVUeXBl
LCB1aW50MzJfdCYgcGx1Z2luTG9hZFBvbGljeSwgU3RyaW5nJiB1bmF2YWlsYWJpbGl0eURlc2Ny
aXB0aW9uKTsKKyAgICB2b2lkIGZpbmRQbHVnaW4oY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgdWlu
dDMyX3QgcHJvY2Vzc1R5cGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBTdHJpbmcm
IGZyYW1lVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkxTdHJpbmcsIGJvb2wgYWxsb3dP
bmx5QXBwbGljYXRpb25QbHVnaW5zLCB1aW50NjRfdCYgcGx1Z2luUHJvY2Vzc1Rva2VuLCBTdHJp
bmcmIG5ld01JTUVUeXBlLCB1aW50MzJfdCYgcGx1Z2luTG9hZFBvbGljeSk7CiAjZW5kaWYKIAog
ICAgIFBhZ2VDbGllbnQqIG1fcGFnZUNsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDFkODY5OWZlOWEyNDNmZTQ2ZGY3
YjEzNmU0YjNkMDY1YmI1M2NkNzYuLmZjMmZjM2U1NzUwYWNjOTAxNTExYTQ5YTNjZjU4MmI5NjNh
ZTJmNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
bWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5t
ZXNzYWdlcy5pbgpAQCAtMzE5LDcgKzMxOSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIEZpbmRQbHVn
aW4oV1RGOjpTdHJpbmcgbWltZVR5cGUsIHVpbnQzMl90IHByb2Nlc3NUeXBlLCBXVEY6OlN0cmlu
ZyB1cmxTdHJpbmcsIFdURjo6U3RyaW5nIGZyYW1lVVJMU3RyaW5nLCBXVEY6OlN0cmluZyBwYWdl
VVJMU3RyaW5nLCBib29sIGFsbG93T25seUFwcGxpY2F0aW9uUGx1Z2lucykgLT4gKHVpbnQ2NF90
IHBsdWdpblByb2Nlc3NUb2tlbiwgV1RGOjpTdHJpbmcgbmV3TUlNRVR5cGUsIHVpbnQzMl90IHBs
dWdpbkxvYWRQb2xpY3ksIFdURjo6U3RyaW5nIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pCisg
ICAgRmluZFBsdWdpbihXVEY6OlN0cmluZyBtaW1lVHlwZSwgdWludDMyX3QgcHJvY2Vzc1R5cGUs
IFdURjo6U3RyaW5nIHVybFN0cmluZywgV1RGOjpTdHJpbmcgZnJhbWVVUkxTdHJpbmcsIFdURjo6
U3RyaW5nIHBhZ2VVUkxTdHJpbmcsIGJvb2wgYWxsb3dPbmx5QXBwbGljYXRpb25QbHVnaW5zKSAt
PiAodWludDY0X3QgcGx1Z2luUHJvY2Vzc1Rva2VuLCBXVEY6OlN0cmluZyBuZXdNSU1FVHlwZSwg
dWludDMyX3QgcGx1Z2luTG9hZFBvbGljeSkKICNlbmRpZgogCiAgICAgRGlkVXBkYXRlSW5XaW5k
b3dTdGF0ZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMv
UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCBhZTk0Y2VmYWU5Y2MzYjE2
OGUwOWM3NTUwMWZmZWE5YTU3MzRhZTQ2Li4xNjJhYWJkZDgzNTNmOWJmOWFmZTY3ODkxYjY4MDU3
NGI4ZmJhNmQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMv
UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTEyMiwxNSArMTIyLDEy
IEBAIHZvaWQgUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVTeW5jTWVzc2FnZShD
b3JlSVBDOjpDb25uZWN0aW9uKiBjb25uZWN0CiAKIHZvaWQgUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rp
b246OmRpZENsb3NlKENvcmVJUEM6OkNvbm5lY3Rpb24qKQogewotICAgIC8vIE1ha2UgYSBjb3B5
LCBiZWNhdXNlIGNhbGxpbmcgcGx1Z2luUHJvY2Vzc0NyYXNoZWQgY2FuIGNhdXNlIGEgcmVhdHRh
Y2ggKGZvciB0aGUgdW5hdmFpbGFiaWxpdHkgaW5kaWNhdG9yKQotICAgIC8vIGFuZCBjYW4gZGVz
dHJveSB0aGUgd2lkZ2V0LCBtdXRhdGluZyB0aGUgSGFzaE1hcCB3aGlsZSB3ZSdyZSBpdGVyYXRp
bmcgaXQuCi0gICAgVmVjdG9yPFJlZlB0cjxQbHVnaW5Qcm94eT4gPiBwbHVnaW5Qcm94aWVzOwot
ICAgIGZvciAoY29uc3QgYXV0byYgcGx1Z2luUHJveHkgOiBtX3BsdWdpbnMudmFsdWVzKCkpCi0g
ICAgICAgIHBsdWdpblByb3hpZXMuYXBwZW5kKHBsdWdpblByb3h5KTsKLQogICAgIC8vIFRoZSBw
bHVnLWluIHByb2Nlc3MgbXVzdCBoYXZlIGNyYXNoZWQuCi0gICAgZm9yIChjb25zdCBhdXRvJiBw
bHVnaW5Qcm94eSA6IHBsdWdpblByb3hpZXMpCisgICAgZm9yIChIYXNoTWFwPHVpbnQ2NF90LCBQ
bHVnaW5Qcm94eSo+Ojpjb25zdF9pdGVyYXRvcjo6VmFsdWVzIGl0ID0gbV9wbHVnaW5zLmJlZ2lu
KCkudmFsdWVzKCksIGVuZCA9IG1fcGx1Z2lucy5lbmQoKS52YWx1ZXMoKTsgaXQgIT0gZW5kOyAr
K2l0KSB7CisgICAgICAgIFBsdWdpblByb3h5KiBwbHVnaW5Qcm94eSA9ICgqaXQpOworCiAgICAg
ICAgIHBsdWdpblByb3h5LT5wbHVnaW5Qcm9jZXNzQ3Jhc2hlZCgpOworICAgIH0KIH0KIAogdm9p
ZCBQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZUludmFsaWRNZXNzYWdlKENvcmVJ
UEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpTdHJpbmdSZWZlcmVuY2UsIENvcmVJUEM6OlN0cmlu
Z1JlZmVyZW5jZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW5WaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3LmNwcAppbmRleCBiYzM4NGNjYjQ5OTdhMzk1NzcyZDE4ZmEzODZhMzllNzg3ZDkyNTNj
Li4wYjcxNDMzYzBiYThkMDRkODVlOTliZGU0M2FmMjc0ZjAzOWU3NGJkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCkBAIC0xNDE5LDEx
ICsxNDE5LDExIEBAIHZvaWQgUGx1Z2luVmlldzo6cGx1Z2luUHJvY2Vzc0NyYXNoZWQoKQogICAg
IC8vIEZJWE1FOiBUaGUgcmVuZGVyZXIgY291bGQgYWxzbyBiZSBhIFJlbmRlckFwcGxldCwgd2Ug
c2hvdWxkIGhhbmRsZSB0aGF0LgogICAgIGlmICghbV9wbHVnaW5FbGVtZW50LT5yZW5kZXJlcigp
LT5pc0VtYmVkZGVkT2JqZWN0KCkpCiAgICAgICAgIHJldHVybjsKLQotICAgIFdpZGdldDo6aW52
YWxpZGF0ZSgpOwogICAgICAgICAKICAgICBSZW5kZXJFbWJlZGRlZE9iamVjdCogcmVuZGVyZXIg
PSB0b1JlbmRlckVtYmVkZGVkT2JqZWN0KG1fcGx1Z2luRWxlbWVudC0+cmVuZGVyZXIoKSk7CiAg
ICAgcmVuZGVyZXItPnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVk
T2JqZWN0OjpQbHVnaW5DcmFzaGVkKTsKKyAgICAKKyAgICBXaWRnZXQ6OmludmFsaWRhdGUoKTsK
IH0KIAogdm9pZCBQbHVnaW5WaWV3Ojp3aWxsU2VuZEV2ZW50VG9QbHVnaW4oKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwCmluZGV4IDUzMTE5ZGMwMjY1MDY4ZTYxMmY1MWEwMTY3NTYyMDRmYzc3NmNi
NGMuLmNlMTYwMDZkYjc0ZjIwZjk3Mjc0ZDRlYjNiNTRmZjhhZThiODBlOGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKQEAgLTUwNSw3ICs1MDUsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6
c2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IEludFJlY3QmKSBjb25zdAogICAgIG5vdEltcGxlbWVu
dGVkKCk7CiB9CiAKLWJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzaG91bGRVbmF2YWlsYWJsZVBsdWdp
bk1lc3NhZ2VJbmNsdWRlQnV0dG9uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbiBwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QKK2Jvb2wgV2Vi
Q2hyb21lQ2xpZW50OjpzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24gcGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb24pIGNvbnN0CiB7CiAgICAgc3dpdGNoIChwbHVnaW5VbmF2YWlsYWJpbGl0
eVJlYXNvbikgewogICAgIGNhc2UgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpbk1pc3Npbmc6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0OTIxNjYxYjAyNmZhNjg2NTIwN2FmZTExNWFkYmVm
MjgxMjg1OWE1Li40ZjI4YmIzNzQ3MmZhYzFiOGYzZDdiODBmOTk4M2ZiMjM3ZWU3ODcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmgKQEAgLTEyMSw3ICsxMjEsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1
YWwgdm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxSZWN0
SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IE9WRVJSSURFOyAvLyBDdXJy
ZW50bHkgb25seSBNYWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgdmly
dHVhbCBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUluY2x1ZGVCdXR0b24oV2Vi
Q29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBj
b25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5N
ZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZh
aWxhYmlsaXR5UmVhc29uKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgdW5hdmFp
bGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IE9WRVJS
SURFOwogCiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3Qg
T1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggOTU0NTZjZDFjNzRhYWE0NGU4N2QyMWQ4NmY5MWEzMzA3NDUwMDYxNi4uYTkwNDE1
YzU4MDYxMzllNmUwZDFlMTVlMDZlM2I3NDA4ZDBiOTU2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtNTQyLDggKzU0Miw3IEBAIFBhc3NS
ZWZQdHI8UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1lLCBIVE1M
UGx1Z0luRWxlbWVudCogcGx1CiAKICAgICB1aW50NjRfdCBwbHVnaW5Qcm9jZXNzVG9rZW47CiAg
ICAgdWludDMyX3QgcGx1Z2luTG9hZFBvbGljeTsKLSAgICBTdHJpbmcgdW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbjsKLSAgICBpZiAoIXNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZp
bmRQbHVnaW4ocGFyYW1ldGVycy5taW1lVHlwZSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHByb2Nl
c3NUeXBlKSwgcGFyYW1ldGVycy51cmwuc3RyaW5nKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJM
U3RyaW5nLCBhbGxvd09ubHlBcHBsaWNhdGlvblBsdWdpbnMpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpGaW5kUGx1Z2luOjpSZXBseShwbHVnaW5Qcm9jZXNzVG9rZW4sIG5ld01JTUVUeXBlLCBw
bHVnaW5Mb2FkUG9saWN5LCB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uKSkpIHsKKyAgICBpZiAo
IXNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZpbmRQbHVnaW4ocGFyYW1ldGVycy5t
aW1lVHlwZSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHByb2Nlc3NUeXBlKSwgcGFyYW1ldGVycy51
cmwuc3RyaW5nKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nLCBhbGxvd09ubHlBcHBs
aWNhdGlvblBsdWdpbnMpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGaW5kUGx1Z2luOjpSZXBs
eShwbHVnaW5Qcm9jZXNzVG9rZW4sIG5ld01JTUVUeXBlLCBwbHVnaW5Mb2FkUG9saWN5KSkpIHsK
ICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCkBAIC01NTYsMTEgKzU1NSw4IEBAIFBhc3NSZWZQ
dHI8UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1lLCBIVE1MUGx1
Z0luRWxlbWVudCogcGx1CiAgICAgICAgIGJvb2wgcmVwbGFjZW1lbnRPYnNjdXJlZCA9IGZhbHNl
OwogICAgICAgICBpZiAocGx1Z2luRWxlbWVudC0+cmVuZGVyZXIoKS0+aXNFbWJlZGRlZE9iamVj
dCgpKSB7CiAgICAgICAgICAgICBSZW5kZXJFbWJlZGRlZE9iamVjdCogcmVuZGVyT2JqZWN0ID0g
dG9SZW5kZXJFbWJlZGRlZE9iamVjdChwbHVnaW5FbGVtZW50LT5yZW5kZXJlcigpKTsKLSAgICAg
ICAgICAgIHJlcGxhY2VtZW50T2JzY3VyZWQgPSByZW5kZXJPYmplY3QtPmlzUmVwbGFjZW1lbnRP
YnNjdXJlZCgpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyBzZXRQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbiBjYW4gY2F1c2UgYSByZWF0dGFjaCwgd2hpY2ggbWVhbnMgdGhhdCBvdXIg
UmVuZGVyRW1iZWRkZWRPYmplY3QgbWlnaHQgZ2V0IGRlc3Ryb3llZCwgc28gaXQgaXMgaW1wb3J0
YW50IHRvIGNoZWNrIG9ic2N1cml0eSBmaXJzdAotICAgICAgICAgICAgcmVuZGVyT2JqZWN0LT5z
ZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbkRlc2NyaXB0aW9uKHVuYXZhaWxhYmlsaXR5RGVz
Y3JpcHRpb24pOwogICAgICAgICAgICAgcmVuZGVyT2JqZWN0LT5zZXRQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsK
KyAgICAgICAgICAgIHJlcGxhY2VtZW50T2JzY3VyZWQgPSByZW5kZXJPYmplY3QtPmlzUmVwbGFj
ZW1lbnRPYnNjdXJlZCgpOwogICAgICAgICB9CiAKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpEaWRCbG9ja0luc2VjdXJlUGx1Z2luVmVyc2lvbihwYXJhbWV0ZXJzLm1pbWVU
eXBlLCBwYXJhbWV0ZXJzLnVybC5zdHJpbmcoKSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJp
bmcsIHJlcGxhY2VtZW50T2JzY3VyZWQpKTsKQEAgLTM4NTEsOCArMzg0Nyw3IEBAIGJvb2wgV2Vi
UGFnZTo6Y2FuUGx1Z2luSGFuZGxlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCiAKICAgICB1aW50NjRfdCBwbHVnaW5Qcm9jZXNzVG9rZW47CiAgICAgU3RyaW5nIG5l
d01JTUVUeXBlOwotICAgIFN0cmluZyB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uOwotICAgIGlm
ICghc2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RmluZFBsdWdpbihyZXNwb25zZS5t
aW1lVHlwZSgpLCBQbHVnaW5Qcm9jZXNzVHlwZU5vcm1hbCwgcmVzcG9uc2UudXJsKCkuc3RyaW5n
KCksIHJlc3BvbnNlLnVybCgpLnN0cmluZygpLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgYWxs
b3dPbmx5QXBwbGljYXRpb25QbHVnaW5zKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RmluZFBs
dWdpbjo6UmVwbHkocGx1Z2luUHJvY2Vzc1Rva2VuLCBuZXdNSU1FVHlwZSwgcGx1Z2luTG9hZFBv
bGljeSwgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbikpKQorICAgIGlmICghc2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6RmluZFBsdWdpbihyZXNwb25zZS5taW1lVHlwZSgpLCBQbHVn
aW5Qcm9jZXNzVHlwZU5vcm1hbCwgcmVzcG9uc2UudXJsKCkuc3RyaW5nKCksIHJlc3BvbnNlLnVy
bCgpLnN0cmluZygpLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgYWxsb3dPbmx5QXBwbGljYXRp
b25QbHVnaW5zKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RmluZFBsdWdpbjo6UmVwbHkocGx1
Z2luUHJvY2Vzc1Rva2VuLCBuZXdNSU1FVHlwZSwgcGx1Z2luTG9hZFBvbGljeSkpKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcGx1Z2luTG9hZFBvbGljeSAhPSBQbHVnaW5N
b2R1bGVCbG9ja2VkICYmIHBsdWdpblByb2Nlc3NUb2tlbjsKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5N2MzMjZmYmVlMDhmZTFjNTFhNjQxYWI5
YjFlMzYwOGI3ZjAyMTI5Li43OTkyZDg4ODE3ZDI3YjcwMmU0OTQxNjBiMWY3ZTcxNjdmOWVjNDM4
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDUgKzEsMjQgQEAKIDIwMTMtMDctMTcgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJr
aXQub3JnPgogCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNTI3MDEsIHIxNTI3
MDMsIHIxNTI3MzksIHIxNTI3NTQsCisgICAgICAgIGFuZCByMTUyNzU2LgorICAgICAgICBodHRw
Oi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNTI3MDEKKyAgICAgICAgaHR0cDovL3RyYWMu
d2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzAzCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5v
cmcvY2hhbmdlc2V0LzE1MjczOQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5n
ZXNldC8xNTI3NTQKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUy
NzU2CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg4
MjEKKworICAgICAgICB0aGlzIHdhcyBhIGJ1Z2d5IGZpeCBhbmQgd2UncmUgZ29pbmcgdG8gdHJ5
IHNvbWV0aGluZworICAgICAgICBkaWZmZXJlbnQgKFJlcXVlc3RlZCBieSB0aG9ydG9uIG9uICN3
ZWJraXQpLgorCisgICAgICAgICogTWluaUJyb3dzZXIvbWFjL1dLMkJyb3dzZXJXaW5kb3dDb250
cm9sbGVyLm06CisgICAgICAgICgtW1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyIGF3YWtlRnJv
bU5pYl0pOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6Y3JlYXRlV2ViVmlld1dpdGhPcHRpb25zKToK
KworMjAxMy0wNy0xNyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1MTUzNS4KICAgICAgICAgaHR0cDov
L3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUxNTM1CiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg4MDQKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlC
cm93c2VyL21hYy9XSzJCcm93c2VyV2luZG93Q29udHJvbGxlci5tIGIvVG9vbHMvTWluaUJyb3dz
ZXIvbWFjL1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyLm0KaW5kZXggYmI0MGRiZjcwOWE0N2U2
ZGFkNmUxMGM1ZGIwNDMzYzQ4YjJiNjJhYi4uNzJhZThiMjRkZGU3YTY1OTJkN2MyNzBmMTlhYmQ1
MTIyMDdlODRjNiAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvbWFjL1dLMkJyb3dzZXJX
aW5kb3dDb250cm9sbGVyLm0KKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvbWFjL1dLMkJyb3dzZXJX
aW5kb3dDb250cm9sbGVyLm0KQEAgLTY2MCw5ICs2NjAsOCBAQCAtICh2b2lkKWF3YWtlRnJvbU5p
YgogICAgICAgICAwLCAvLyBkaWRSZWNlaXZlSW50ZW50Rm9yRnJhbWUKICAgICAgICAgMCwgLy8g
cmVnaXN0ZXJJbnRlbnRTZXJ2aWNlRm9yRnJhbWUKICAgICAgICAgMCwgLy8gZGlkTGF5b3V0Ci0g
ICAgICAgIDAsIC8vIHBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZvclVzZVdpdGhWMgotICAg
ICAgICAwLCAvLyBwbHVnaW5EaWRGYWlsCiAgICAgICAgIDAsIC8vIHBsdWdpbkxvYWRQb2xpY3kK
KyAgICAgICAgMCwgLy8gcGx1Z2luRGlkRmFpbAogICAgIH07CiAgICAgV0tQYWdlU2V0UGFnZUxv
YWRlckNsaWVudChfd2ViVmlldy5wYWdlUmVmLCAmbG9hZENsaWVudCk7CiAgICAgCmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IGMyMzQ1Njk4ZDNiMzdiOTdk
MGE4NGJmNGQ5M2U2NWVlNThlM2E0OTQuLjBkMzFjZmMyN2Y4MDcwMzQ0MTY5YTQyMTAyZDY2ODMy
OTE4M2EwY2QgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xs
ZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBA
IC00ODUsOSArNDg1LDggQEAgdm9pZCBUZXN0Q29udHJvbGxlcjo6Y3JlYXRlV2ViVmlld1dpdGhP
cHRpb25zKFdLRGljdGlvbmFyeVJlZiBvcHRpb25zKQogICAgICAgICAwLCAvLyBkaWRSZWNlaXZl
SW50ZW50Rm9yRnJhbWUKICAgICAgICAgMCwgLy8gcmVnaXN0ZXJJbnRlbnRTZXJ2aWNlRm9yRnJh
bWUKICAgICAgICAgMCwgLy8gZGlkTGF5b3V0Ci0gICAgICAgIDAsIC8vIHBsdWdpbkxvYWRQb2xp
Y3lfZGVwcmVjYXRlZEZvclVzZVdpdGhWMgotICAgICAgICAwLCAvLyBwbHVnaW5EaWRGYWlsCiAg
ICAgICAgIDAsIC8vIHBsdWdpbkxvYWRQb2xpY3kKKyAgICAgICAgMCwgLy8gcGx1Z2luRGlkRmFp
bAogICAgIH07CiAgICAgV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudChtX21haW5XZWJWaWV3LT5w
YWdlKCksICZwYWdlTG9hZGVyQ2xpZW50KTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc4YTY2ZjAxYjQ1YmI5NTk1OTFl
NGU1NmZmNjQ0OTU5YmY0YWQxYzEuLjU3NzBjMmNlOTAwYWRlZDE4MDMxMjQ0OGI0ZWJlNWI2OTVh
MWFhZWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMy0wNy0xNyAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjE1MjcwMSwgcjE1MjcwMywgcjE1MjczOSwgcjE1Mjc1NCwKKyAgICAgICAgYW5kIHIxNTI3
NTYuCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1MjcwMQorICAg
ICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNTI3MDMKKyAgICAgICAgaHR0
cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTUyNzM5CisgICAgICAgIGh0dHA6Ly90cmFj
LndlYmtpdC5vcmcvY2hhbmdlc2V0LzE1Mjc1NAorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQu
b3JnL2NoYW5nZXNldC8xNTI3NTYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExODgyMQorCisgICAgICAgIHRoaXMgd2FzIGEgYnVnZ3kgZml4IGFuZCB3
ZSdyZSBnb2luZyB0byB0cnkgc29tZXRoaW5nCisgICAgICAgIGRpZmZlcmVudCAoUmVxdWVzdGVk
IGJ5IHRob3J0b24gb24gI3dlYmtpdCkuCisKKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQv
cGFzdGUtbm9wbHVnaW4tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvY29udGVudFNlY3VyaXR5UG9saWN5L29iamVjdC1zcmMtdXJsLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3BsdWdpbi1leHBlY3Rl
ZC50eHQ6CisKIDIwMTMtMDctMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIFNraXAgbW9yZSBmYWlsaW5nIFdlYkdMIHRl
c3RzIG9uIE1hYy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1ub3BsdWdpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9h
cmQvcGFzdGUtbm9wbHVnaW4tZXhwZWN0ZWQudHh0CmluZGV4IDJlODM1N2JjMTNhOGVmNzE4ZTA5
NWM5MjViNjNlNjIzMWUzZDkyOGMuLmE0YWY2ZWJlOTc3NDlmMWNhMzBhODAxNDNiMGYxZDRkNzJi
YTA2NzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1u
b3BsdWdpbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJk
L3Bhc3RlLW5vcGx1Z2luLWV4cGVjdGVkLnR4dApAQCAtOSwxNSArOSw2IEBAIE9yaWdpbmFsIGNv
bnRlbnRzOgogIgogfCA8ZW1iZWQ+CiB8ICAgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvZXZp
bC5zd2YiCi18ICAgPHNoYWRvdzpyb290PgotfCAgICAgPGRpdj4KLXwgICAgICAgcHNldWRvPSIt
d2Via2l0LXVuYXZhaWxhYmxlLXBsdWdpbi1jb250ZW50IgotfCAgICAgICBzaGFkb3c6cHNldWRv
SWQ9Ii13ZWJraXQtdW5hdmFpbGFibGUtcGx1Z2luLWNvbnRlbnQiCi18ICAgICAgIDxkaXY+Ci18
ICAgICAgICAgPHNwYW4+Ci18ICAgICAgICAgICByb2xlPSJidXR0b24iCi18ICAgICAgICAgICAi
TWlzc2luZyBQbHVnLWluIgotfCAgICAgICAgIDxpbWc+CiB8ICIKICIKIHwgPG9iamVjdD4KQEAg
LTI3LDE1ICsxOCw2IEBAIE9yaWdpbmFsIGNvbnRlbnRzOgogfCAgICAgdmFsdWU9Imh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9ldmlsLnN3ZiIKIHwgICA8ZW1iZWQ+CiB8ICAgICBzcmM9Imh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9ldmlsLnN3ZiIKLXwgICAgIDxzaGFkb3c6cm9vdD4KLXwgICAgICAgPGRp
dj4KLXwgICAgICAgICBwc2V1ZG89Ii13ZWJraXQtdW5hdmFpbGFibGUtcGx1Z2luLWNvbnRlbnQi
Ci18ICAgICAgICAgc2hhZG93OnBzZXVkb0lkPSItd2Via2l0LXVuYXZhaWxhYmxlLXBsdWdpbi1j
b250ZW50IgotfCAgICAgICAgIDxkaXY+Ci18ICAgICAgICAgICA8c3Bhbj4KLXwgICAgICAgICAg
ICAgcm9sZT0iYnV0dG9uIgotfCAgICAgICAgICAgICAiTWlzc2luZyBQbHVnLWluIgotfCAgICAg
ICAgICAgPGltZz4KIHwgIgogIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9vYmplY3Qtc3JjLXVybC1ibG9ja2VkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L29iamVjdC1zcmMtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDg5MjI1
YTZjMzM2YTgzMGM1MzJhOWM4OTYzMzkxMTk3MzQ1OGQ2NGQuLmM1OTVmN2FhYmNjZWUwMDZkYTE4
NzhhYjhkNDNlNWJlZmQzNmM1YzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L29iamVjdC1zcmMtdXJsLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNl
Y3VyaXR5UG9saWN5L29iamVjdC1zcmMtdXJsLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDUg
KzEsMyBAQAogQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGxvYWQgcGx1Z2luIGRhdGEgZnJv
bSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3BsdWdpbnMvcmVzb3VyY2VzL21vY2stcGx1Z2luLnBs
JyBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29udGVudCBTZWN1cml0eSBQb2xp
Y3kgZGlyZWN0aXZlOiAib2JqZWN0LXNyYyAnbm9uZSciLgogCi1DT05TT0xFIE1FU1NBR0U6IFJl
ZnVzZWQgdG8gbG9hZCBwbHVnaW4gZGF0YSBmcm9tICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcGx1
Z2lucy9yZXNvdXJjZXMvbW9jay1wbHVnaW4ucGwnIGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZv
bGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmU6ICJvYmplY3Qtc3JjICdu
b25lJyIuCi0KIFRoaXMgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBjb25zb2xlIG1lc3NhZ2Ug
c2F5aW5nIHRoZSBwbHVnaW4gd2FzIGJsb2NrZWQuIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvcGx1Z2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3BsdWdpbi1leHBlY3RlZC50eHQKaW5kZXgg
ZDM5OTkzODUyYjYzOWE5YmFiNGExODNlNWRlYjlkYWQ0ZGYyZWIwYy4uM2NjYWIyYWVlMTZjMDU4
MjRjNmQyYThhZDVjZTk0ZTc2ZGFmM2QzZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvcGx1Z2luLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9wbHVnaW4tZXhwZWN0ZWQudHh0CkBAIC0yLDcg
KzIsNyBAQAogQVhSb2xlOiBBWEdyb3VwCiBBWFN1YnJvbGU6IChudWxsKQogQVhSb2xlRGVzY3Jp
cHRpb246IGdyb3VwCi1BWENoaWxkcmVuOiA8YXJyYXkgb2Ygc2l6ZSAxPgorQVhDaGlsZHJlbjog
PGFycmF5IG9mIHNpemUgMD4KIEFYSGVscDogCiBBWFBhcmVudDogPEFYR3JvdXA+CiBBWFNpemU6
IE5TU2l6ZTogezc4NCwgMTUwfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>