<?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>88892</bug_id>
          
          <creation_ts>2012-06-12 11:12:25 -0700</creation_ts>
          <short_desc>Remove old Pointer Lock API.</short_desc>
          <delta_ts>2012-08-02 16:58:30 -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>84402</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Vincent Scheib">scheib</reporter>
          <assigned_to name="Vincent Scheib">scheib</assigned_to>
          <cc>abarth</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>enne</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>647100</commentid>
    <comment_count>0</comment_count>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2012-06-12 11:12:25 -0700</bug_when>
    <thetext>Remove navigator.webkitPointer, webkitpointerlocklost event, and callbacks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>685604</commentid>
    <comment_count>1</comment_count>
      <attachid>156128</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2012-08-02 11:20:12 -0700</bug_when>
    <thetext>Created attachment 156128
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>685996</commentid>
    <comment_count>2</comment_count>
      <attachid>156128</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-02 16:58:26 -0700</bug_when>
    <thetext>Comment on attachment 156128
Patch

Clearing flags on attachment: 156128

Committed r124535: &lt;http://trac.webkit.org/changeset/124535&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>685998</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-02 16:58:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156128</attachid>
            <date>2012-08-02 11:20:12 -0700</date>
            <delta_ts>2012-08-02 16:58:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88892-20120802111953.patch</filename>
            <type>text/plain</type>
            <size>42322</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0MzQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzE2ZmVkZDMyMGFhNDJj
NzdiMmU0OTA1NDNlMTljMzI4N2QxNGE2MC4uMDMwNmFjN2ZiOTMwNDEzMWU2MzNjNTI5NTc5NGFj
MGU2M2NmZjZkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEyLTA4LTAyICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVtb3ZlIG9sZCBQ
b2ludGVyIExvY2sgQVBJLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODg4OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBSZW1vdmluZyB0aGUgb2xkIFBvaW50ZXIgTG9jayBBUEkgYXMgb25lIG9mIHRoZSBm
aW5hbCBjbGVhbnVwCisgICAgICAgIGNoYW5nZXMgZm9yIHRoZSBVcGRhdGUgdG8gRnVsbHNjcmVl
biBzdHlsZSBsb2NraW5nIFNwZWMgbWV0YQorICAgICAgICBidWcgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg0NDAyLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHByaW1h
cmlseSByZW1vdmVzIGlkbCwgYWNjZXNzIGluIG5hdmlnYXRvciwKKyAgICAgICAgb25lIGV2ZW50
LCBhbmQgc3VwcG9ydGluZyBpbmZyYXN0cnVjdHVyZSBpbiBwYWdlL1BvaW50ZXJMb2NrLgorCisg
ICAgICAgIEluIFBvaW50ZXJMb2NrQ29udHJvbGxlciBjaGFuZ2VzIHdlcmUgYWxyZWFkeSBub3Rl
ZCBjbGVhcmx5IHdpdGgKKyAgICAgICAgVE9ET3MgZGlmZmVyZW50aWF0aW5nIG9sZCBhbmQgbmV3
IGFwaSBzZWN0aW9ucy4KKworICAgICAgICBUZXN0OiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tj
aGFuZ2UtZXZlbnQtb24tbG9jay1sb3N0Lmh0bWwKKworICAgICAgICAqIFdlYkNvcmUuZ3lwaToK
KyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojp3
ZWJraXRSZXF1ZXN0UG9pbnRlckxvY2spOgorICAgICAgICAqIGRvbS9FdmVudE5hbWVzLmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5jcHA6CisgICAgICAg
ICogcGFnZS9OYXZpZ2F0b3IuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoTmF2aWdh
dG9yKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5pZGw6CisgICAgICAgICogcGFnZS9Qb2lu
dGVyTG9jay5jcHA6IFJlbW92ZWQuCisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5oOiBSZW1v
dmVkLgorICAgICAgICAqIHBhZ2UvUG9pbnRlckxvY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAq
IHBhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50
ZXJMb2NrQ29udHJvbGxlcjo6cmVxdWVzdFBvaW50ZXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6
OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTm90QWNxdWlyZVBvaW50ZXJMb2Nr
KToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50
ZXJMb2NrKToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oOgorICAgICAg
ICAoUG9pbnRlckxvY2tDb250cm9sbGVyKToKKwogMjAxMi0wOC0wMSAgU2hlcmlmZiBCb3QgIDx3
ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjEyNDMzNC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggOWEwN2M0ZDkxMjQ0
NmZiMGU3YzBjZTZiNmQxNjZmNTFhYzE1ZTNmNS4uYTRjOGU5ZmQwNDc0YTRkMmY2OWJhYmRiYTg1
ZGZiZDQzMjZiM2RlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBA
QAorMjAxMi0wOC0wMiAgVmluY2VudCBTY2hlaWIgIDxzY2hlaWJAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJlbW92ZSBvbGQgUG9pbnRlciBMb2NrIEFQSS4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4ODkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAg
ICAgICAgUmVtb3ZlZCAjaW5jbHVkZSB0byBvbGQgQVBJIGhlYWRlci4KKwogMjAxMi0wOC0wMSAg
U2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyNDMzNC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA1NmIyYmIy
NmUyN2FkMjM4NGVhNzYzOTE3NmZhYTM1NDYwMGQ5MjIzLi40MTA3ODAwN2FjYTk3MDVlMTIxZDNm
ZWE5MWNkMzFmOWY1MDg3NGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xMTc4LDcgKzExNzgsNiBA
QAogICAgICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCcsCiAgICAgICAg
ICAgICAncGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbCcsCiAgICAgICAgICAgICAn
cGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxv
Y2suaWRsJywKICAgICAgICAgICAgICdwYWdlL1NjcmVlbi5pZGwnLAogICAgICAgICAgICAgJ3Bh
Z2UvU3BlZWNoSW5wdXRFdmVudC5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvU3BlZWNoSW5wdXRS
ZXN1bHQuaWRsJywKQEAgLTMxMTUsOCArMzExNCw2IEBACiAgICAgICAgICAgICAncGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgnLAogICAgICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VU
aW1pbmcuY3BwJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmgnLAotICAg
ICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suY3BwJywKLSAgICAgICAgICAgICdwYWdlL1BvaW50
ZXJMb2NrLmgnLAogICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcCcs
CiAgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaCcsCiAgICAgICAgICAg
ICAncGFnZS9QcmludENvbnRleHQuY3BwJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCAyOTRi
NDgzOTQyOGNjNDQzMDY0MDQxZGQ0YTAwZTc4NjY1OGY2ZDliLi4wNWJhZmZmODBmMGQ5NTQ1MTAx
ZmQ2N2U5MmFjM2U3YTFlZmYwZTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0xOTI3LDcg
KzE5MjcsNyBAQCB2b2lkIEVsZW1lbnQ6OnNldENvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnRPbkFu
Y2VzdG9yc0Nyb3NzaW5nRnJhbWVCb3VuZGFyaWVzKGJvbwogdm9pZCBFbGVtZW50Ojp3ZWJraXRS
ZXF1ZXN0UG9pbnRlckxvY2soKQogewogICAgIGlmIChkb2N1bWVudCgpLT5wYWdlKCkpCi0gICAg
ICAgIGRvY3VtZW50KCktPnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCktPnJlcXVlc3RQ
b2ludGVyTG9jayh0aGlzLCAwLCAwKTsKKyAgICAgICAgZG9jdW1lbnQoKS0+cGFnZSgpLT5wb2lu
dGVyTG9ja0NvbnRyb2xsZXIoKS0+cmVxdWVzdFBvaW50ZXJMb2NrKHRoaXMpOwogfQogI2VuZGlm
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCmluZGV4IDg5OGRhOTYyMjNmZDA3MWFkMDBiZDFhOTI1
NzRlMmFjMmZiNzVlNmUuLjA1YWM5ZjRjOWRiNjA2ZTAzOGYzZmQ3ZmVkNDNjNTc2MGI4Yjk2M2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaApAQCAtMjI5LDcgKzIyOSw2IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICBcCiAgICAgbWFjcm8oc2hvdykgXAogICAgIFwKLSAgICBtYWNybyh3ZWJr
aXRwb2ludGVybG9ja2xvc3QpIFwKICAgICBtYWNybyh3ZWJraXRwb2ludGVybG9ja2NoYW5nZSkg
XAogICAgIG1hY3JvKHdlYmtpdHBvaW50ZXJsb2NrZXJyb3IpIFwKICAgICBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L05hdmlnYXRvci5jcHAKaW5kZXggMWFmMTViZTQ5MzNlMjU0NzUwYTMyYjZlZjYxZDQ0ZGZhMDU5
NDNmZC4uN2JmMmI1YjRiNWY5ZTUyOTFmNDRkYzRlMWYxOTE4Njk1NGZiMTFlYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvTmF2aWdhdG9yLmNwcApAQCAtMzQsNyArMzQsNiBAQAogI2luY2x1ZGUgIkxhbmd1YWdl
LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsdWdpbkRhdGEuaCIKLSNpbmNsdWRl
ICJQb2ludGVyTG9jay5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
U2V0dGluZ3MuaCIKICNpbmNsdWRlICJTdG9yYWdlTmFtZXNwYWNlLmgiCkBAIC0xMzUsMTUgKzEz
NCw2IEBAIGJvb2wgTmF2aWdhdG9yOjpqYXZhRW5hYmxlZCgpIGNvbnN0CiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKLSNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQotUG9pbnRlckxvY2sqIE5hdmlnYXRv
cjo6d2Via2l0UG9pbnRlcigpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX3BvaW50ZXIgJiYgbV9mcmFt
ZSAmJiBtX2ZyYW1lLT5wYWdlKCkpCi0gICAgICAgIG1fcG9pbnRlciA9IFBvaW50ZXJMb2NrOjpj
cmVhdGUobV9mcmFtZSk7Ci0gICAgcmV0dXJuIG1fcG9pbnRlci5nZXQoKTsKLX0KLSNlbmRpZgot
CiB2b2lkIE5hdmlnYXRvcjo6Z2V0U3RvcmFnZVVwZGF0ZXMoKQogewogICAgIC8vIEZJWE1FOiBS
ZW1vdmUgdGhpcyBtZXRob2Qgb3IgcmVuYW1lIHRvIHlpZWxkRm9yU3RvcmFnZVVwZGF0ZXMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9OYXZpZ2F0b3IuaAppbmRleCBiMzYyYjE2Zjg0ZWE0NWVlOTZlYWE5MWM2ODM4MDEw
NGI2ZGZlZWM3Li44MWU0NThhOTc5MGY2Y2Y5ZWIxNTYxMTZlNmJkMjVkNWE0ZTU2YTU3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvTmF2aWdhdG9yLmgKQEAgLTM0LDcgKzM0LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogY2xhc3MgRE9NTWltZVR5cGVBcnJheTsKIGNsYXNzIERPTVBsdWdpbkFycmF5OwogY2xhc3Mg
RnJhbWU7Ci1jbGFzcyBQb2ludGVyTG9jazsKIGNsYXNzIFBsdWdpbkRhdGE7CiAKIHR5cGVkZWYg
aW50IEV4Y2VwdGlvbkNvZGU7CkBAIC01MywxMCArNTIsNiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0
dWFsIFN0cmluZyB1c2VyQWdlbnQoKSBjb25zdDsKIAotI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0sp
Ci0gICAgUG9pbnRlckxvY2sqIHdlYmtpdFBvaW50ZXIoKSBjb25zdDsKLSNlbmRpZgotCiAgICAg
Ly8gUmVsaW5xdWlzaGVzIHRoZSBzdG9yYWdlIGxvY2ssIGlmIG9uZSBleGlzdHMuCiAgICAgdm9p
ZCBnZXRTdG9yYWdlVXBkYXRlcygpOwogCkBAIC02NSw5ICs2MCw2IEBAIHByaXZhdGU6CiAKICAg
ICBtdXRhYmxlIFJlZlB0cjxET01QbHVnaW5BcnJheT4gbV9wbHVnaW5zOwogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwotI2lmIEVOQUJMRShQT0lOVEVS
X0xPQ0spCi0gICAgbXV0YWJsZSBSZWZQdHI8UG9pbnRlckxvY2s+IG1fcG9pbnRlcjsKLSNlbmRp
ZgogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaWRs
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaWRsCmluZGV4IDhmMzgwYTE4NzUzNDk3
YzNlNGU3ZTc1MTZkN2NkNzRlZmI1MTllMDcuLjNjMmFmMDFjOTI3MWM0M2M4YWRiYjY0YmE4NmQx
N2QyYzRjMzAyMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKQEAgLTQwLDEwICs0MCw2
IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFu
IG9uTGluZTsKIAotI2lmIGRlZmluZWQoRU5BQkxFX1BPSU5URVJfTE9DSykgJiYgRU5BQkxFX1BP
SU5URVJfTE9DSyAvLyBGSVhNRTogUmVtb3ZlIHJlbGlhbmNlIG9uIFBvaW50ZXJMb2NrLmlkbCB3
aGVuIHJlbW92aW5nIG9sZCBQb2ludGVyIExvY2sgQVBJLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg0NDAyKQotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0Nv
bmRpdGlvbmFsPVBPSU5URVJfTE9DSywgVjhFbmFibGVkQXRSdW50aW1lPXBvaW50ZXJMb2NrXSBQ
b2ludGVyTG9jayB3ZWJraXRQb2ludGVyOwotI2VuZGlmCi0KICAgICAgICAgdm9pZCBnZXRTdG9y
YWdlVXBkYXRlcygpOyAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgbWV0aG9kIG9yIHJlbmFtZSB0byB5
aWVsZEZvclN0b3JhZ2VVcGRhdGVzLgogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9j
ay5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDljZmY4ZWQwY2RhYzVhYTJkZjFh
MmRlMmQzZmY0N2RiMzhiMTE3ZDAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSw4MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiUG9pbnRlckxvY2suaCIKLQotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVk
ZSAiUGFnZS5oIgotI2luY2x1ZGUgIlBvaW50ZXJMb2NrQ29udHJvbGxlci5oIgotCi0jaWYgRU5B
QkxFKFBPSU5URVJfTE9DSykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1Qb2ludGVyTG9jazo6
UG9pbnRlckxvY2soRnJhbWUqIGZyYW1lKQotICAgIDogRE9NV2luZG93UHJvcGVydHkoZnJhbWUp
Ci0gICAgLCBtX2NvbnRyb2xsZXIoMCkKLXsKLSAgICBBU1NFUlQobV9mcmFtZSk7Ci0gICAgbV9j
b250cm9sbGVyID0gZnJhbWUtPnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCk7Ci19Ci0K
LVBvaW50ZXJMb2NrOjp+UG9pbnRlckxvY2soKQotewotICAgIEFTU0VSVCghbV9jb250cm9sbGVy
KTsKLX0KLQotdm9pZCBQb2ludGVyTG9jazo6ZGlzY29ubmVjdEZyYW1lRm9yUGFnZUNhY2hlKCkK
LXsKLSAgICBET01XaW5kb3dQcm9wZXJ0eTo6ZGlzY29ubmVjdEZyYW1lRm9yUGFnZUNhY2hlKCk7
Ci0gICAgbV9jb250cm9sbGVyID0gMDsKLX0KLQotdm9pZCBQb2ludGVyTG9jazo6d2lsbERlc3Ry
b3lHbG9iYWxPYmplY3RJbkZyYW1lKCkKLXsKLSAgICBET01XaW5kb3dQcm9wZXJ0eTo6d2lsbERl
c3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCk7Ci0gICAgbV9jb250cm9sbGVyID0gMDsKLX0KLQot
dm9pZCBQb2ludGVyTG9jazo6bG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENh
bGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJl
Q2FsbGJhY2spCi17Ci0gICAgaWYgKG1fY29udHJvbGxlcikKLSAgICAgICAgbV9jb250cm9sbGVy
LT5yZXF1ZXN0UG9pbnRlckxvY2sodGFyZ2V0LCBzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxs
YmFjayk7Ci19Ci0KLXZvaWQgUG9pbnRlckxvY2s6OnVubG9jaygpCi17Ci0gICAgaWYgKG1fY29u
dHJvbGxlcikKLSAgICAgICAgbV9jb250cm9sbGVyLT5yZXF1ZXN0UG9pbnRlclVubG9jaygpOwot
fQotCi1ib29sIFBvaW50ZXJMb2NrOjppc0xvY2tlZCgpCi17Ci0gICAgcmV0dXJuIG1fY29udHJv
bGxlciAmJiBtX2NvbnRyb2xsZXItPmlzTG9ja2VkKCk7Ci19Ci0KLX0KLQotI2VuZGlmIC8vIEVO
QUJMRShQT0lOVEVSX0xPQ0spCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGQxZTI1ZmI2NGIwZGM3NzM1YzdlZTg2N2ZhNWEyYjE5YWM2OTZi
NDYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5oCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
LSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBQb2ludGVyTG9ja19oCi0jZGVmaW5lIFBvaW50ZXJM
b2NrX2gKLQotI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0KLSNpbmNsdWRlICJET01XaW5kb3dQ
cm9wZXJ0eS5oIgotI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1jbGFzcyBFbGVtZW50OwotY2xhc3MgRnJhbWU7Ci1jbGFzcyBQb2ludGVyTG9ja0Nv
bnRyb2xsZXI7Ci0KLWNsYXNzIFBvaW50ZXJMb2NrIDogcHVibGljIFJlZkNvdW50ZWQ8UG9pbnRl
ckxvY2s+LCBwdWJsaWMgRE9NV2luZG93UHJvcGVydHkgewotcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPFBvaW50ZXJMb2NrPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBhZG9w
dFJlZihuZXcgUG9pbnRlckxvY2soZnJhbWUpKTsgfQotCi0gICAgflBvaW50ZXJMb2NrKCk7Ci0K
LSAgICAvLyBET01XaW5kb3dQcm9wZXJ0eSBJbnRlcmZhY2UKLSAgICB2aXJ0dWFsIHZvaWQgZGlz
Y29ubmVjdEZyYW1lRm9yUGFnZUNhY2hlKCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIHdp
bGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpIE9WRVJSSURFOwotCi0gICAgdm9pZCBsb2Nr
KEVsZW1lbnQqIHRhcmdldCwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFj
aywgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB1
bmxvY2soKTsKLSAgICBib29sIGlzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgZXhwbGljaXQg
UG9pbnRlckxvY2soRnJhbWUqKTsKLQotICAgIFBvaW50ZXJMb2NrQ29udHJvbGxlciogbV9jb250
cm9sbGVyOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KFBPSU5URVJfTE9DSykKLQotI2VuZGlmIC8vIFBvaW50ZXJMb2NrX2gKLQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzA1NGJjZjIw
ZjE3ZGQ3Nzc5ODY5ODc4MTZkNGY3ODk2YWUyMmZlNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmlk
bAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLW1vZHVsZSBj
b3JlIHsKLQotICAgIGludGVyZmFjZSBbCi0gICAgICAgIENvbmRpdGlvbmFsPVBPSU5URVJfTE9D
SywKLSAgICAgICAgT21pdENvbnN0cnVjdG9yCi0gICAgXSBQb2ludGVyTG9jayB7Ci0gICAgICAg
IHZvaWQgbG9jayhpbiBFbGVtZW50IHRhcmdldCwgaW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVm9p
ZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjaywgaW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVm9pZENh
bGxiYWNrIGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgICAgIHZvaWQgdW5sb2NrKCk7Ci0gICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzTG9ja2VkOwotICAgIH07Ci0KLX0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcAppbmRleCBmNDk2Njhk
NzI1ZGJlMmU2NzY5NWM3NGY3MzNjYjI4MmUyODIzNTAwLi4yZTUwNTI5N2QzMWE5NzM5ZTgyOGU3
ZGQxZTcxODU1ZGE1YTFiNjBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9j
a0NvbnRyb2xsZXIuY3BwCkBAIC00Niw3ICs0Niw3IEBAIFBhc3NPd25QdHI8UG9pbnRlckxvY2tD
b250cm9sbGVyPiBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmNyZWF0ZShQYWdlKiBwYWdlKQogICAg
IHJldHVybiBhZG9wdFB0cihuZXcgUG9pbnRlckxvY2tDb250cm9sbGVyKHBhZ2UpKTsKIH0KIAot
dm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJlcXVlc3RQb2ludGVyTG9jayhFbGVtZW50KiB0
YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQ
dHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJlQ2FsbGJhY2spCit2b2lkIFBvaW50ZXJMb2NrQ29udHJv
bGxlcjo6cmVxdWVzdFBvaW50ZXJMb2NrKEVsZW1lbnQqIHRhcmdldCkKIHsKICAgICBpZiAoIXRh
cmdldCB8fCAhdGFyZ2V0LT5pbkRvY3VtZW50KCkgfHwgbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1l
bnRXaGlsZVdhaXRpbmdGb3JVbmxvY2spIHsKICAgICAgICAgZW5xdWV1ZUV2ZW50KGV2ZW50TmFt
ZXMoKS53ZWJraXRwb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CkBAIC01OCwzMyArNTgs
MTIgQEAgdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJlcXVlc3RQb2ludGVyTG9jayhFbGVt
ZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZEMKICAgICAgICAgICAgIGVucXVldWVFdmVudChl
dmVudE5hbWVzKCkud2Via2l0cG9pbnRlcmxvY2tlcnJvckV2ZW50LCB0YXJnZXQpOwogICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICB9Ci0KLSAgICAgICAgLy8gRklYTUU6IEtlZXAgZW5xdWV1
ZUV2ZW50IHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0
NDAyKQogICAgICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLndlYmtpdHBvaW50ZXJsb2Nr
Y2hhbmdlRXZlbnQsIHRhcmdldCk7Ci0gICAgICAgIGlmIChtX2VsZW1lbnQtPmRvY3VtZW50KCkg
IT0gdGFyZ2V0LT5kb2N1bWVudCgpKQotICAgICAgICAgICAgZW5xdWV1ZUV2ZW50KGV2ZW50TmFt
ZXMoKS53ZWJraXRwb2ludGVybG9ja2NoYW5nZUV2ZW50LCBtX2VsZW1lbnQuZ2V0KCkpOwotCi0g
ICAgICAgIC8vIEZJWE1FOiBSZW1vdmUgY2FsbGJhY2sgdXNhZ2UsIGtlZXAgYXNzaWdubWVudCBv
ZiBtX2VsZW1lbnQgPSB0YXJnZXQuIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODQ0MDIpCi0gICAgICAgIGlmIChtX2VsZW1lbnQgPT0gdGFyZ2V0KSB7Ci0gICAgICAg
ICAgICBpZiAoc3VjY2Vzc0NhbGxiYWNrKQotICAgICAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFj
ay0+aGFuZGxlRXZlbnQoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGRpZExvc2VQ
b2ludGVyTG9jayhmYWxzZSk7Ci0gICAgICAgICAgICBtX2VsZW1lbnQgPSB0YXJnZXQ7Ci0gICAg
ICAgICAgICBpZiAoc3VjY2Vzc0NhbGxiYWNrKQotICAgICAgICAgICAgICAgIHN1Y2Nlc3NDYWxs
YmFjay0+aGFuZGxlRXZlbnQoKTsKLSAgICAgICAgfQorICAgICAgICBtX2VsZW1lbnQgPSB0YXJn
ZXQ7CiAgICAgfSBlbHNlIGlmIChtX3BhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+cmVxdWVzdFBv
aW50ZXJMb2NrKCkpIHsKICAgICAgICAgbV9lbGVtZW50ID0gdGFyZ2V0OwotICAgICAgICBtX3N1
Y2Nlc3NDYWxsYmFjayA9IHN1Y2Nlc3NDYWxsYmFjazsKLSAgICAgICAgbV9mYWlsdXJlQ2FsbGJh
Y2sgPSBmYWlsdXJlQ2FsbGJhY2s7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgLy8gRklYTUU6IEtl
ZXAgZW5xdWV1ZUV2ZW50IHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg0NDAyKQogICAgICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLndlYmtpdHBv
aW50ZXJsb2NrZXJyb3JFdmVudCwgdGFyZ2V0KTsKLQotICAgICAgICAvLyBGSVhNRTogUmVtb3Zl
IGNhbGxiYWNrIHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg0NDAyKQotICAgICAgICBpZiAoZmFpbHVyZUNhbGxiYWNrKQotICAgICAgICAgICAgZmFpbHVy
ZUNhbGxiYWNrLT5oYW5kbGVFdmVudCgpOwogICAgIH0KIH0KIApAQCAtMTEyLDExICs5MSw2IEBA
IHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpkb2N1bWVudERldGFjaGVkKERvY3VtZW50KiBk
b2N1bWVudCkKICAgICB9CiB9CiAKLWJvb2wgUG9pbnRlckxvY2tDb250cm9sbGVyOjppc0xvY2tl
ZCgpCi17Ci0gICAgcmV0dXJuIG1fcGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5pc1BvaW50ZXJM
b2NrZWQoKTsKLX0KLQogRWxlbWVudCogUG9pbnRlckxvY2tDb250cm9sbGVyOjplbGVtZW50KCkg
Y29uc3QKIHsKICAgICByZXR1cm4gbV9lbGVtZW50LmdldCgpOwpAQCAtMTI0LDQ5ICs5OCwyMCBA
QCBFbGVtZW50KiBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmVsZW1lbnQoKSBjb25zdAogCiB2b2lk
IFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKCkKIHsKLSAgICAv
LyBGSVhNRTogS2VlcCBlbnF1ZXVlRXZlbnQgdXNhZ2UuIChodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODQ0MDIpCiAgICAgZW5xdWV1ZUV2ZW50KGV2ZW50TmFtZXMoKS53
ZWJraXRwb2ludGVybG9ja2NoYW5nZUV2ZW50LCBtX2VsZW1lbnQuZ2V0KCkpOwotCi0gICAgLy8g
RklYTUU6IFJlbW92ZSBjYWxsYmFjayB1c2FnZS4gKGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD04NDQwMikKLSAgICBSZWZQdHI8RWxlbWVudD4gZWxlbWVudFRvTm90aWZ5
KG1fZWxlbWVudCk7Ci0gICAgUmVmUHRyPFZvaWRDYWxsYmFjaz4gY2FsbGJhY2tUb0lzc3VlKG1f
c3VjY2Vzc0NhbGxiYWNrKTsKLSAgICBtX3N1Y2Nlc3NDYWxsYmFjayA9IDA7Ci0gICAgbV9mYWls
dXJlQ2FsbGJhY2sgPSAwOwotCi0gICAgaWYgKGNhbGxiYWNrVG9Jc3N1ZSAmJiBlbGVtZW50VG9O
b3RpZnkgJiYgZWxlbWVudFRvTm90aWZ5LT5kb2N1bWVudCgpLT5mcmFtZSgpKQotICAgICAgICBj
YWxsYmFja1RvSXNzdWUtPmhhbmRsZUV2ZW50KCk7CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250
cm9sbGVyOjpkaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKQogewotICAgIC8vIEZJWE1FOiBLZWVw
IGVucXVldWVFdmVudCB1c2FnZS4gKGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04NDQwMikKICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLndlYmtpdHBvaW50ZXJs
b2NrZXJyb3JFdmVudCwgbV9lbGVtZW50LmdldCgpKTsKLQotICAgIC8vIEZJWE1FOiBSZW1vdmUg
Y2FsbGJhY2sgdXNhZ2UuIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQ0MDIpCi0gICAgUmVmUHRyPEVsZW1lbnQ+IGVsZW1lbnRUb05vdGlmeShtX2VsZW1lbnQpOwot
ICAgIFJlZlB0cjxWb2lkQ2FsbGJhY2s+IGNhbGxiYWNrVG9Jc3N1ZShtX2ZhaWx1cmVDYWxsYmFj
ayk7CiAgICAgbV9lbGVtZW50ID0gMDsKLSAgICBtX3N1Y2Nlc3NDYWxsYmFjayA9IDA7Ci0gICAg
bV9mYWlsdXJlQ2FsbGJhY2sgPSAwOwotCi0gICAgaWYgKGNhbGxiYWNrVG9Jc3N1ZSAmJiBlbGVt
ZW50VG9Ob3RpZnkgJiYgZWxlbWVudFRvTm90aWZ5LT5kb2N1bWVudCgpLT5mcmFtZSgpKQotICAg
ICAgICBjYWxsYmFja1RvSXNzdWUtPmhhbmRsZUV2ZW50KCk7CiB9CiAKLXZvaWQgUG9pbnRlckxv
Y2tDb250cm9sbGVyOjpkaWRMb3NlUG9pbnRlckxvY2soYm9vbCBzZW5kQ2hhbmdlRXZlbnQpCit2
b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJMb2NrKCkKIHsKLSAgICAv
LyBGSVhNRTogS2VlcCBlbnF1ZXVlRXZlbnQgdXNhZ2UuIChodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODQ0MDIpCi0gICAgaWYgKHNlbmRDaGFuZ2VFdmVudCkKLSAgICAg
ICAgZW5xdWV1ZUV2ZW50KGV2ZW50TmFtZXMoKS53ZWJraXRwb2ludGVybG9ja2NoYW5nZUV2ZW50
LCBtX2VsZW1lbnQgPyBtX2VsZW1lbnQtPmRvY3VtZW50KCkgOiBtX2RvY3VtZW50T2ZSZW1vdmVk
RWxlbWVudFdoaWxlV2FpdGluZ0ZvclVubG9jay5nZXQoKSk7Ci0KLSAgICAvLyBGSVhNRTogUmVt
b3ZlIGNhbGxiYWNrIHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0NDAyKQotICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50VG9Ob3RpZnkobV9lbGVtZW50
KTsKKyAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLndlYmtpdHBvaW50ZXJsb2NrY2hhbmdl
RXZlbnQsIG1fZWxlbWVudCA/IG1fZWxlbWVudC0+ZG9jdW1lbnQoKSA6IG1fZG9jdW1lbnRPZlJl
bW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5sb2NrLmdldCgpKTsKICAgICBtX2VsZW1lbnQg
PSAwOwogICAgIG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5sb2Nr
ID0gMDsKLSAgICBtX3N1Y2Nlc3NDYWxsYmFjayA9IDA7Ci0gICAgbV9mYWlsdXJlQ2FsbGJhY2sg
PSAwOwotICAgIGlmIChlbGVtZW50VG9Ob3RpZnkgJiYgZWxlbWVudFRvTm90aWZ5LT5kb2N1bWVu
dCgpLT5mcmFtZSgpKQotICAgICAgICBlbGVtZW50VG9Ob3RpZnktPmRpc3BhdGNoRXZlbnQoRXZl
bnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cG9pbnRlcmxvY2tsb3N0RXZlbnQsIHRydWUs
IGZhbHNlKSk7CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpkaXNwYXRjaExvY2tl
ZE1vdXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCwgY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRy
b2xsZXIuaAppbmRleCA5OTE3NTRlNDU0ZDQ1NDQ2NDBjNDQxMzJjMTFkMDJmOGZjN2UxOGRmLi5h
OTQyZjkzNjhjNDM4Y2M2YzI3MTM0MzU0MTViNmEwNGViOWFlNzIzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKQEAgLTQ0LDE2ICs0NCwxNSBAQCBjbGFz
cyBQb2ludGVyTG9ja0NvbnRyb2xsZXIgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzT3duUHRy
PFBvaW50ZXJMb2NrQ29udHJvbGxlcj4gY3JlYXRlKFBhZ2UqKTsKIAotICAgIHZvaWQgcmVxdWVz
dFBvaW50ZXJMb2NrKEVsZW1lbnQqIHRhcmdldCwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1
Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7
CisgICAgdm9pZCByZXF1ZXN0UG9pbnRlckxvY2soRWxlbWVudCogdGFyZ2V0KTsKICAgICB2b2lk
IHJlcXVlc3RQb2ludGVyVW5sb2NrKCk7CiAgICAgdm9pZCBlbGVtZW50UmVtb3ZlZChFbGVtZW50
Kik7CiAgICAgdm9pZCBkb2N1bWVudERldGFjaGVkKERvY3VtZW50Kik7Ci0gICAgYm9vbCBpc0xv
Y2tlZCgpOyAvLyBGSVhNRTogUmVuYW1lIHRvIGlzQ2xpZW50TG9ja2VkIGFuZCBtb3ZlIHRvIHBy
aXZhdGUgd2hlbiByZW1vdmluZyBvbGQgQVBJLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg0NDAyKQogICAgIEVsZW1lbnQqIGVsZW1lbnQoKSBjb25zdDsKIAogICAg
IHZvaWQgZGlkQWNxdWlyZVBvaW50ZXJMb2NrKCk7CiAgICAgdm9pZCBkaWROb3RBY3F1aXJlUG9p
bnRlckxvY2soKTsKLSAgICB2b2lkIGRpZExvc2VQb2ludGVyTG9jayhib29sIHNlbmRDaGFuZ2VF
dmVudCA9IHRydWUpOyAvLyBGSVhNRTogUmVtb3ZlIHNlbmRDaGFuZ2VFdmVudCBwYXJhbWV0ZXIg
d2hlbiByZW1vdmluZyBvbGQgQVBJLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg0NDAyKQorICAgIHZvaWQgZGlkTG9zZVBvaW50ZXJMb2NrKCk7CiAgICAgdm9pZCBk
aXNwYXRjaExvY2tlZE1vdXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiwgY29uc3Qg
QXRvbWljU3RyaW5nJiBldmVudFR5cGUpOwogCiBwcml2YXRlOgpAQCAtNjMsMTAgKzYyLDYgQEAg
cHJpdmF0ZToKICAgICBQYWdlKiBtX3BhZ2U7CiAgICAgUmVmUHRyPEVsZW1lbnQ+IG1fZWxlbWVu
dDsKICAgICBSZWZQdHI8RG9jdW1lbnQ+IG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVX
YWl0aW5nRm9yVW5sb2NrOwotCi0gICAgLy8gRklYTUU6IFJlbW92ZSBjYWxsYmFjayB1c2FnZS4g
KGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDQwMikKLSAgICBSZWZQ
dHI8Vm9pZENhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKLSAgICBSZWZQdHI8Vm9pZENhbGxi
YWNrPiBtX2ZhaWx1cmVDYWxsYmFjazsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCBkODc1MGUzOGEy
ODdlYjE5MDczNzQ0Y2MwMzllMmM0YTI0ZDRlYzk0Li5hNDQ4YTgzMDMxYjc1Yzg0M2RmOWJiOTUy
NTVlM2FjZGM3MmU2ODZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0lt
cGwuY3BwCkBAIC05Nyw3ICs5Nyw2IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2ZW50Lmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1UaGVtZUNocm9taXVtTGludXguaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVdoZWVsRXZlbnQuaCIKLSNpbmNsdWRlICJQb2ludGVyTG9jay5oIgogI2luY2x1ZGUgIlBv
aW50ZXJMb2NrQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIlBvcHVwQ29udGFpbmVyLmgiCiAjaW5j
bHVkZSAiUG9wdXBNZW51Q2xpZW50LmgiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjU2NDQ3ZmRkNjljYmMzYmU2ZWJjNjU3
ZDEwODljNDU1NzFmY2M0ZS4uMWNlYmRhNzM2MjA3N2Q2ZTMwMzkzMWE2NWMwMjMwYjE1ZWZjMDg4
ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA4LTAyICBWaW5jZW50IFNjaGVpYiAgPHNj
aGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVtb3ZlIG9sZCBQb2ludGVyIExvY2sgQVBJ
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg4OTIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0cyBm
b3Igb2xkIEFQSSByZW1vdmVkLCBhbmQgbW9zdCByZW1haW5pbmcgdGVzdHMgcmVxdWlyZWQgb25s
eSBzbWFsbAorICAgICAgICBjaGFuZ2VzLgorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0v
ZmFzdC9kb20vbmF2aWdhdG9yLWRldGFjaGVkLW5vLWNyYXNoLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBwb2ludGVyLWxvY2svbG9jay1hbHJlYWR5LWxvY2tlZC1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogcG9pbnRlci1sb2NrL2xvY2stYWxyZWFkeS1sb2NrZWQuaHRtbDoKKyAgICAgICAgKiBw
b2ludGVyLWxvY2svbG9jay1mYWlsLXJlc3BvbnNlcy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisg
ICAgICAgICogcG9pbnRlci1sb2NrL2xvY2stZmFpbC1yZXNwb25zZXMuaHRtbDogUmVtb3ZlZC4K
KyAgICAgICAgICAgIFRoaXMgdGVzdCBvbmx5IGNvdmVyZWQgdGhlIG9sZCBBUEkuIFRoZSByZWxh
dGVkIGNvbmNlcHQgaXMgdGVzdGVkCisgICAgICAgICAgICBmb3IgdGhlIG5ldyBhcGkgaW4gcG9p
bnRlcmxvY2tjaGFuZ2UtcG9pbnRlcmxvY2tlcnJvci1ldmVudHMuaHRtbC4KKyAgICAgICAgKiBw
b2ludGVyLWxvY2svcG9pbnRlci1sb2NrLWFwaS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcG9p
bnRlci1sb2NrL3BvaW50ZXItbG9jay1hcGkuaHRtbDoKKyAgICAgICAgKiBwb2ludGVyLWxvY2sv
cG9pbnRlcmxvY2tjaGFuZ2UtZXZlbnQtb24tbG9jay1sb3N0LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLWV2ZW50LW9uLWxvY2st
bG9zdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tsb3N0
LWV2ZW50LWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBwb2ludGVyLWxvY2svcG9p
bnRlcmxvY2tsb3N0LWV2ZW50Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICAgICBwb2ludGVybG9j
a2xvc3QtZXZlbnQuaHRtbCByZW5hbWVkIHRvIHBvaW50ZXJsb2NrY2hhbmdlLWV2ZW50LW9uLWxv
Y2stbG9zdC5odG1sLgorCiAyMDEyLTA4LTAxICBYaWFuemh1IFdhbmcgIDx3YW5neGlhbnpodUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgTGF5b3V0IFRlc3QgZmFzdC90ZXh0L2Rlc2NlbnQtY2xp
cC1pbi1zY2FsZWQtcGFnZS5odG1sIGlzIGZhaWxpbmcgb24gbGludXggc2luY2UgaXQgd2FzIGFk
ZGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9u
YXZpZ2F0b3ItZGV0YWNoZWQtbm8tY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vZmFzdC9kb20vbmF2aWdhdG9yLWRldGFjaGVkLW5vLWNyYXNoLWV4cGVj
dGVkLnR4dAppbmRleCA3ZjI1MjA5MGI2Mzg2NDJmZWVkMjdhMWNlZDY2ZTViY2RlMmZiYjZmLi40
NjU4ZDVlYWEyZjQ0OGNjNWVlN2U3MWMzOTFkYzM2NTg4ZGYwYjcyIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9uYXZpZ2F0b3ItZGV0YWNoZWQtbm8t
Y3Jhc2gtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zh
c3QvZG9tL25hdmlnYXRvci1kZXRhY2hlZC1uby1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTE4LDcg
KzE4LDYgQEAgbmF2aWdhdG9yLnVzZXJBZ2VudCBpcyBPSwogbmF2aWdhdG9yLnZlbmRvciBpcyBP
SwogbmF2aWdhdG9yLnZlbmRvclN1YiBpcyBPSwogbmF2aWdhdG9yLndlYmtpdEdldEdhbWVwYWRz
KCkgaXMgT0sKLW5hdmlnYXRvci53ZWJraXRQb2ludGVyIGlzIE9LCiBuYXZpZ2F0b3Iud2Via2l0
U3RhcnRBY3Rpdml0eSgpIHRocmV3IGVyciBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRz
CiBuYXZpZ2F0b3IuYXBwQ29kZU5hbWUgaXMgT0sKIG5hdmlnYXRvci5hcHBOYW1lIGlzIE9LCkBA
IC0zOCw2ICszNyw1IEBAIG5hdmlnYXRvci51c2VyQWdlbnQgaXMgT0sKIG5hdmlnYXRvci52ZW5k
b3IgaXMgT0sKIG5hdmlnYXRvci52ZW5kb3JTdWIgaXMgT0sKIG5hdmlnYXRvci53ZWJraXRHZXRH
YW1lcGFkcygpIGlzIE9LCi1uYXZpZ2F0b3Iud2Via2l0UG9pbnRlciBpcyBPSwogbmF2aWdhdG9y
LndlYmtpdFN0YXJ0QWN0aXZpdHkoKSB0aHJldyBlcnIgVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFy
Z3VtZW50cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbG9jay1hbHJl
YWR5LWxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbG9jay1h
bHJlYWR5LWxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggMTNkNzRjN2U4YmJmNWY3NzkyMmUwYzli
NzAwMDQ5MzlkYTM4MDEzZC4uNDc3YmU1MzE1ODA0ZmJlZTg0Y2QwNTViYTlmYTA2MTAyZTYyNTlj
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL2xvY2stYWxyZWFkeS1sb2Nr
ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWFscmVh
ZHktbG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMTEsMjEgKzExLDYgQEAgUEFTUyBkb2N1bWVudC53
ZWJraXRQb2ludGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MQogUEFTUyBkb2N1bWVudC5vbndl
YmtpdHBvaW50ZXJsb2NrY2hhbmdlIGV2ZW50IHJlY2VpdmVkLgogUEFTUyBkb2N1bWVudC53ZWJr
aXRQb2ludGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MQogICAgICBMb2NraW5nIHRhcmdldGRp
djIuCi1QQVNTIGV4cGVjdFRhcmdldDFVbmxvY2sgaXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5vbndl
YmtpdHBvaW50ZXJsb2NrY2hhbmdlIGV2ZW50IHJlY2VpdmVkLgotUEFTUyBkb2N1bWVudC53ZWJr
aXRQb2ludGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MgotUEFTUyBleHBlY3RUYXJnZXQyVW5s
b2NrIGlzIHRydWUKLVBBU1MgTG9jayB0YXJnZXQxIHN1Y2NlZWRlZC4KLVBBU1MgbmF2aWdhdG9y
LndlYmtpdFBvaW50ZXIuaXNMb2NrZWQgaXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5vbndlYmtpdHBv
aW50ZXJsb2NrY2hhbmdlIGV2ZW50IHJlY2VpdmVkLgotUEFTUyBkb2N1bWVudC53ZWJraXRQb2lu
dGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MQotUEFTUyBMb2NrIHRhcmdldDEgc3VjY2VlZGVk
IGFnYWluLgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCBpcyB0cnVlCi1Q
QVNTIGRvY3VtZW50Lm9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgZXZlbnQgcmVjZWl2ZWQuCi1Q
QVNTIGRvY3VtZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCBpcyB0YXJnZXRkaXYxCi1QQVNT
IGV4cGVjdFRhcmdldDFVbmxvY2sgaXMgdHJ1ZQotUEFTUyBMb2NrIHRhcmdldDIgc3VjY2VlZGVk
LgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCBpcyB0cnVlCiBQQVNTIGRv
Y3VtZW50Lm9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgZXZlbnQgcmVjZWl2ZWQuCiBQQVNTIGRv
Y3VtZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCBpcyB0YXJnZXRkaXYyCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxv
Y2svbG9jay1hbHJlYWR5LWxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL2xv
Y2stYWxyZWFkeS1sb2NrZWQuaHRtbAppbmRleCAyYTM0NDBlMThiN2E2YmQxYzAyYmJjMzE2Njk4
YmVjMDk2MTc0YjFjLi5kYmYxMTNlNDUyZmQ1MTc0OGEyNGI5MzdmMjA1M2E1NzdkZjA4ZDlkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbG9jay1hbHJlYWR5LWxvY2tlZC5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWFscmVhZHktbG9ja2VkLmh0
bWwKQEAgLTU2LDQ5ICs1Niw2IEBACiAgICAgICAgICAgICBleHBlY3RlZFRhcmdldFRvQmVMb2Nr
ZWRTdHJpbmcgPSAidGFyZ2V0ZGl2MiI7CiAgICAgICAgICAgICAvLyBkb05leHRTdGVwKCkgY2Fs
bGVkIGJ5IG9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgaGFuZGxlci4KICAgICAgICAgfSwKLSAg
ICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgZXhwZWN0VGFyZ2V0MVVubG9jayA9IGZh
bHNlOwotICAgICAgICAgICAgZXhwZWN0VGFyZ2V0MlVubG9jayA9IHRydWU7Ci0gICAgICAgICAg
ICBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5sb2NrKHRhcmdldGRpdjEsCi0gICAgICAgICAgICAg
ICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCJMb2NrIHRh
cmdldDEgc3VjY2VlZGVkLiIpOwotICAgICAgICAgICAgICAgICAgICBzaG91bGRCZSgibmF2aWdh
dG9yLndlYmtpdFBvaW50ZXIuaXNMb2NrZWQiLCAidHJ1ZSIpOwotICAgICAgICAgICAgICAgICAg
ICAvLyBkb05leHRTdGVwKCkgY2FsbGVkIGJ5IG9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgaGFu
ZGxlci4KLSAgICAgICAgICAgICAgICB9LAotICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHsK
LSAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiTG9jayBmYWlsZWQuIik7Ci0gICAgICAg
ICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAg
ICAgICAgZXhwZWN0ZWRUYXJnZXRUb0JlTG9ja2VkU3RyaW5nID0gInRhcmdldGRpdjEiOwotICAg
ICAgICB9LAotICAgICAgICBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBleHBlY3RUYXJnZXQy
VW5sb2NrID0gZmFsc2U7Ci0gICAgICAgICAgICBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5sb2Nr
KHRhcmdldGRpdjEsCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAg
ICAgICAgICB0ZXN0UGFzc2VkKCJMb2NrIHRhcmdldDEgc3VjY2VlZGVkIGFnYWluLiIpOwotICAg
ICAgICAgICAgICAgICAgICBzaG91bGRCZSgibmF2aWdhdG9yLndlYmtpdFBvaW50ZXIuaXNMb2Nr
ZWQiLCAidHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICAvLyBkb05leHRTdGVwKCkgY2FsbGVk
IGJ5IG9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgaGFuZGxlci4KLSAgICAgICAgICAgICAgICB9
LAotICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVz
dEZhaWxlZCgiTG9jayBmYWlsZWQuIik7Ci0gICAgICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVz
dCgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgZXhwZWN0ZWRUYXJnZXRUb0Jl
TG9ja2VkU3RyaW5nID0gInRhcmdldGRpdjEiOwotICAgICAgICB9LAotICAgICAgICBmdW5jdGlv
biAoKSB7Ci0gICAgICAgICAgICBleHBlY3RUYXJnZXQxVW5sb2NrID0gdHJ1ZTsKLSAgICAgICAg
ICAgIG5hdmlnYXRvci53ZWJraXRQb2ludGVyLmxvY2sodGFyZ2V0ZGl2MiwKLSAgICAgICAgICAg
ICAgICBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoIkxvY2sg
dGFyZ2V0MiBzdWNjZWVkZWQuIik7Ci0gICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJuYXZp
Z2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCIsICJ0cnVlIik7Ci0gICAgICAgICAgICAgICAg
ICAgIC8vIGRvTmV4dFN0ZXAoKSBjYWxsZWQgYnkgb253ZWJraXRwb2ludGVybG9ja2NoYW5nZSBo
YW5kbGVyLgotICAgICAgICAgICAgICAgIH0sCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkg
ewotICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJMb2NrIGZhaWxlZC4iKTsKLSAgICAg
ICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAg
ICAgICAgICBleHBlY3RlZFRhcmdldFRvQmVMb2NrZWRTdHJpbmcgPSAidGFyZ2V0ZGl2MiI7Ci0g
ICAgICAgIH0sCiAgICAgXTsKICAgICBkb05leHRTdGVwV2l0aFVzZXJHZXN0dXJlKCk7CiA8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWZhaWwtcmVz
cG9uc2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWZhaWwt
cmVzcG9uc2VzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUz
OGQ2OTBkNzVhZTA5YzAyZDgyNDI0NGM0MmJjMTM4ZWQ0MGEyNi4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbG9j
ay1mYWlsLXJlc3BvbnNlcy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCww
IEBACi1UZXN0IGFzeW5jaHJvbm91cyByZXN1bHRzIG9mIGNhbGxpbmcgbG9jay4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mgd2luZG93LnRlc3RSdW5uZXIgaXMgZGVmaW5l
ZC4KLVBBU1MgTG9jayBmYWlsZWQgKGFmdGVyIHdlIGNhbGxlZCB0ZXN0UnVubmVyLnNldFBvaW50
ZXJMb2NrV2lsbEZhaWxTeW5jaHJvbm91c2x5KQotUEFTUyBMb2NrIGZhaWxlZCAoYWZ0ZXIgd2Ug
Y2FsbGVkIHRlc3RSdW5uZXIuc2V0UG9pbnRlckxvY2tXaWxsRmFpbEFzeW5jaHJvbm91c2x5KQot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWZhaWwtcmVzcG9uc2VzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbG9jay1mYWlsLXJlc3BvbnNlcy5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiODgyMTMzMDMzMDA2ZDg0YmIyZjBiMzg0MjhiMjk3
ZThlNTA2MTg1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9sb2NrLWZhaWwtcmVzcG9uc2VzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSw0MyArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0IHNyYz0iLi4vaHR0cC90ZXN0cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvaW50ZXItbG9j
ay9wb2ludGVyLWxvY2stdGVzdC1oYXJuZXNzLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPHNjcmlwdD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdCBhc3luY2hyb25vdXMgcmVzdWx0cyBv
ZiBjYWxsaW5nIGxvY2suIikKLSAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAg
c2hvdWxkQmVEZWZpbmVkKCJ3aW5kb3cudGVzdFJ1bm5lciIpOwotCi0gICAgdG9kbyA9IFsKLSAg
ICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRQb2ludGVyTG9j
a1dpbGxGYWlsU3luY2hyb25vdXNseSgpOwotICAgICAgICAgICAgbmF2aWdhdG9yLndlYmtpdFBv
aW50ZXIubG9jayhkb2N1bWVudC5ib2R5LAotICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHsK
LSAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiTG9jayBzdWNjZWVkZWQgdW5leHBlY3Rl
ZGx5LiIpOwotICAgICAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgICAg
ICAgICB9LAotICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAg
ICAgdGVzdFBhc3NlZCgiTG9jayBmYWlsZWQgKGFmdGVyIHdlIGNhbGxlZCB0ZXN0UnVubmVyLnNl
dFBvaW50ZXJMb2NrV2lsbEZhaWxTeW5jaHJvbm91c2x5KSIpOwotICAgICAgICAgICAgICAgICAg
ICBkb05leHRTdGVwV2l0aFVzZXJHZXN0dXJlKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIH0sCi0gICAgICAgIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0
UG9pbnRlckxvY2tXaWxsRmFpbEFzeW5jaHJvbm91c2x5KCk7Ci0gICAgICAgICAgICBuYXZpZ2F0
b3Iud2Via2l0UG9pbnRlci5sb2NrKGRvY3VtZW50LmJvZHksCi0gICAgICAgICAgICAgICAgZnVu
Y3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJMb2NrIHN1Y2NlZWRl
ZCB1bmV4cGVjdGVkbHkuIik7Ci0gICAgICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwot
ICAgICAgICAgICAgICAgIH0sCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAg
ICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCJMb2NrIGZhaWxlZCAoYWZ0ZXIgd2UgY2FsbGVkIHRl
c3RSdW5uZXIuc2V0UG9pbnRlckxvY2tXaWxsRmFpbEFzeW5jaHJvbm91c2x5KSIpOwotICAgICAg
ICAgICAgICAgICAgICBkb05leHRTdGVwKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAg
IH0sCi0gICAgXTsKLSAgICBkb05leHRTdGVwV2l0aFVzZXJHZXN0dXJlKCk7Ci08L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi9odHRwL3Rlc3RzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcG9pbnRl
ci1sb2NrL3BvaW50ZXItbG9jay1hcGktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcG9pbnRl
ci1sb2NrL3BvaW50ZXItbG9jay1hcGktZXhwZWN0ZWQudHh0CmluZGV4IGViMmRjOTgwZWEyY2Jh
YWE0N2YzYTVhNWZjNWEwN2ExNGNhOGU5MGUuLjkzYTNiMjU5NTRiYWExNmNjODJlNWZiMzMzZWRm
OGUwZjdiYjkyMjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9wb2ludGVy
LWxvY2stYXBpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svcG9p
bnRlci1sb2NrLWFwaS1leHBlY3RlZC50eHQKQEAgLTMsMTIgKzMsNiBAQCBCYXNpYyBBUEkgZXhp
c3RlbmNlIHRlc3QgZm9yIFBvaW50ZXIgTG9jay4KIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
IAogCi1QQVNTIG5hdmlnYXRvci53ZWJraXRQb2ludGVyIGlzIGRlZmluZWQuCi1QQVNTIHR5cGVv
ZiBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCBpcyAnYm9vbGVhbicKLVBBU1MgbmF2
aWdhdG9yLndlYmtpdFBvaW50ZXIuaXNMb2NrZWQgaXMgZmFsc2UKLVBBU1MgbmF2aWdhdG9yLndl
YmtpdFBvaW50ZXIubG9jaygpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2gg
YXJndW1lbnRzLgotUEFTUyBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5sb2NrKGRvY3VtZW50LmJv
ZHkpIGlzIHVuZGVmaW5lZAotUEFTUyBuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci51bmxvY2soKSBp
cyB1bmRlZmluZWQKIFBBU1MgZG9jdW1lbnQub253ZWJraXRwb2ludGVybG9ja2NoYW5nZSBpcyBk
ZWZpbmVkLgogUEFTUyBkb2N1bWVudC5vbndlYmtpdHBvaW50ZXJsb2NrZXJyb3IgaXMgZGVmaW5l
ZC4KIFBBU1MgZG9jdW1lbnQud2Via2l0RXhpdFBvaW50ZXJMb2NrIGlzIGRlZmluZWQuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svcG9pbnRlci1sb2NrLWFwaS5odG1sIGIv
TGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL3BvaW50ZXItbG9jay1hcGkuaHRtbAppbmRleCA3MDc1
ZjRlZGNmZDAwODVlYjhhYjc2NDJmODEzYWIxYmYzMWU2Yjc4Li4wZmM1ZTRlNTM5OTkxN2RhYmYy
OTEwZGFlYWU5ZjNkMmQwYmQ1MzYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxv
Y2svcG9pbnRlci1sb2NrLWFwaS5odG1sCisrKyBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9w
b2ludGVyLWxvY2stYXBpLmh0bWwKQEAgLTIsMzggKzIsMTcgQEAKIDxodG1sPgogPGhlYWQ+CiA8
c2NyaXB0IHNyYz0iLi4vaHR0cC90ZXN0cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ii4uL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvaW50ZXItbG9jay9w
b2ludGVyLWxvY2stdGVzdC1oYXJuZXNzLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5Pgog
PHNjcmlwdD4KICAgICBkZXNjcmlwdGlvbigiQmFzaWMgQVBJIGV4aXN0ZW5jZSB0ZXN0IGZvciBQ
b2ludGVyIExvY2suIikKLSAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CiAKLSAgICB0
b2RvID0gWwotICAgICAgICBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBzaG91bGRCZURlZmlu
ZWQoIm5hdmlnYXRvci53ZWJraXRQb2ludGVyIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCIsIGZhbHNlKTsKLSAgICAgICAg
ICAgIHNob3VsZFRocm93KCJuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5sb2NrKCkiLCAiJ1R5cGVF
cnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMnIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5sb2NrKGRvY3VtZW50LmJvZHkpIiwgInVuZGVm
aW5lZCIpOwotICAgICAgICAgICAgLy8gRXhpdCBjYWxsIHN0YWNrIHRvIGFsbG93IGxvY2sgdG8g
dGFrZSBlZmZlY3QuCi0gICAgICAgICAgICBkb05leHRTdGVwKCk7Ci0gICAgICAgIH0sCi0gICAg
ICAgIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hdmlnYXRv
ci53ZWJraXRQb2ludGVyLnVubG9jaygpIiwgInVuZGVmaW5lZCIpOwotICAgICAgICAgICAgLy8g
RXhpdCBjYWxsIHN0YWNrIHRvIGFsbG93IHVubG9jayB0byB0YWtlIGVmZmVjdC4KLSAgICAgICAg
ICAgIGRvTmV4dFN0ZXAoKTsKLSAgICAgICAgfSwKLSAgICAgICAgZnVuY3Rpb24gKCkgewotICAg
ICAgICAgICAgc2hvdWxkQmVEZWZpbmVkKCJkb2N1bWVudC5vbndlYmtpdHBvaW50ZXJsb2NrY2hh
bmdlIik7Ci0gICAgICAgICAgICBzaG91bGRCZURlZmluZWQoImRvY3VtZW50Lm9ud2Via2l0cG9p
bnRlcmxvY2tlcnJvciIpOwotICAgICAgICAgICAgc2hvdWxkQmVEZWZpbmVkKCJkb2N1bWVudC53
ZWJraXRFeGl0UG9pbnRlckxvY2siKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImRv
Y3VtZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCIsIG51bGwpOwotICAgICAgICAgICAgZWxl
bWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoKTsKLSAgICAgICAgICAgIHNob3VsZEJlRGVm
aW5lZCgiZWxlbWVudC53ZWJraXRSZXF1ZXN0UG9pbnRlckxvY2siKTsKLSAgICAgICAgICAgIGRv
TmV4dFN0ZXAoKTsKLSAgICAgICAgfSwKLSAgICBdOwotICAgIGRvTmV4dFN0ZXBXaXRoVXNlckdl
c3R1cmUoKTsKKyAgICBzaG91bGRCZURlZmluZWQoImRvY3VtZW50Lm9ud2Via2l0cG9pbnRlcmxv
Y2tjaGFuZ2UiKTsKKyAgICBzaG91bGRCZURlZmluZWQoImRvY3VtZW50Lm9ud2Via2l0cG9pbnRl
cmxvY2tlcnJvciIpOworICAgIHNob3VsZEJlRGVmaW5lZCgiZG9jdW1lbnQud2Via2l0RXhpdFBv
aW50ZXJMb2NrIik7CisgICAgc2hvdWxkRXZhbHVhdGVUbygiZG9jdW1lbnQud2Via2l0UG9pbnRl
ckxvY2tFbGVtZW50IiwgbnVsbCk7CisgICAgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoKTsKKyAgICBzaG91bGRCZURlZmluZWQoImVsZW1lbnQud2Via2l0UmVxdWVzdFBvaW50ZXJM
b2NrIik7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9odHRwL3Rlc3RzL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLWV2ZW50LW9uLWxvY2stbG9zdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svcG9pbnRlcmxvY2tjaGFuZ2UtZXZl
bnQtb24tbG9jay1sb3N0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYjllZDQ3ZTI4MGZhZmNh
MTAxMTU0NmNlMmZlY2Y5YTUzOTIxOWRlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
cG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLWV2ZW50LW9uLWxvY2stbG9zdC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxNiBAQAorVGVzdCB0aGF0IHdlYmtpdHBvaW50ZXJsb2NrY2hhbmdl
IGV2ZW50IGlzIGRpc3BhdGNoZWQgd2hlbiBsb2NrIGlzIGxvc3QuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy50ZXN0UnVubmVyIGlzIGRlZmluZWQuCisgICAg
IExvY2sgdGFyZ2V0RGl2MS4KK1BBU1Mgb253ZWJraXRwb2ludGVybG9ja2NoYW5nZSByZWNlaXZl
ZCBhZnRlcjogTG9jayB0YXJnZXREaXYxLgorUEFTUyBkb2N1bWVudC53ZWJraXRQb2ludGVyTG9j
a0VsZW1lbnQgaXMgdGFyZ2V0RGl2MQorICAgICBIb3N0IGluaXRpYXRlZCB1bmxvY2suCitQQVNT
IG9ud2Via2l0cG9pbnRlcmxvY2tjaGFuZ2UgcmVjZWl2ZWQgYWZ0ZXI6IEhvc3QgaW5pdGlhdGVk
IHVubG9jay4KK1BBU1MgZG9jdW1lbnQud2Via2l0UG9pbnRlckxvY2tFbGVtZW50IGlzIG51bGwK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svcG9pbnRlcmxvY2tjaGFuZ2UtZXZlbnQt
b24tbG9jay1sb3N0Lmh0bWwgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svcG9pbnRlcmxvY2tj
aGFuZ2UtZXZlbnQtb24tbG9jay1sb3N0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDFkZjAxMGNhYzI4NTU5
MDNmMTExNTZhMWM1Yjk3NmY3ZGFmOGIxZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5nZS1ldmVudC1vbi1sb2NrLWxvc3QuaHRtbApA
QCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0
IHNyYz0iLi4vaHR0cC90ZXN0cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvaW50ZXItbG9jay9wb2ludGVy
LWxvY2stdGVzdC1oYXJuZXNzLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdj4K
KyAgPGRpdiBpZD0idGFyZ2V0MSI+PC9kaXY+Cis8L2Rpdj4KKzxzY3JpcHQ+CisgICAgZGVzY3Jp
cHRpb24oIlRlc3QgdGhhdCB3ZWJraXRwb2ludGVybG9ja2NoYW5nZSBldmVudCBpcyBkaXNwYXRj
aGVkIHdoZW4gbG9jayBpcyBsb3N0LiIpCisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OworICAgIHNob3VsZEJlRGVmaW5lZCgid2luZG93LnRlc3RSdW5uZXIiKTsKKworICAgIHRhcmdl
dERpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MSIpOworCisgICAgdG9kbyA9
IFsKKyAgICAgICAgZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgZXhwZWN0T25seUNoYW5nZUV2
ZW50KCJMb2NrIHRhcmdldERpdjEuIik7CisgICAgICAgICAgICB0YXJnZXREaXYxLndlYmtpdFJl
cXVlc3RQb2ludGVyTG9jaygpOworICAgICAgICAgICAgLy8gZG9OZXh0U3RlcCBjYWxsZWQgYnkg
ZXZlbnQgaGFuZGxlci4KKyAgICAgICAgfSwKKyAgICAgICAgZnVuY3Rpb24gKCkgeworICAgICAg
ICAgICAgc2hvdWxkQmUoImRvY3VtZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCIsICJ0YXJn
ZXREaXYxIik7CisgICAgICAgICAgICBleHBlY3RPbmx5Q2hhbmdlRXZlbnQoIkhvc3QgaW5pdGlh
dGVkIHVubG9jay4iKTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZGlkTG9zZVBvaW50ZXJMb2Nr
KCk7CisgICAgICAgICAgICAvLyBkb05leHRTdGVwIGNhbGxlZCBieSBldmVudCBoYW5kbGVyLgor
ICAgICAgICB9LAorICAgICAgICBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBzaG91bGRCZSgi
ZG9jdW1lbnQud2Via2l0UG9pbnRlckxvY2tFbGVtZW50IiwgIm51bGwiKTsKKyAgICAgICAgICAg
IGRvTmV4dFN0ZXAoKTsKKyAgICAgICAgfSwKKyAgICBdOworICAgIGRvTmV4dFN0ZXBXaXRoVXNl
ckdlc3R1cmUoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9wb2ludGVybG9ja2xvc3QtZXZlbnQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrbG9zdC1ldmVu
dC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFlZjBhZGM5ZWU5
YzJjMDEzYjJjNWZkYTEzNmQ0MDU1MzRmZmRlZDIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL3BvaW50ZXJsb2Nr
bG9zdC1ldmVudC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBACi1U
ZXN0IHRoYXQgcG9pbnRlcmxvY2tsb3N0IGV2ZW50IGlzIGRpc3BhdGNoZWQuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy50ZXN0UnVubmVyIGlzIGRlZmluZWQu
Ci1QQVNTIG5hdmlnYXRvci53ZWJraXRQb2ludGVyLmlzTG9ja2VkIGlzIHRydWUKLVBBU1MgZG9j
dW1lbnQud2Via2l0UG9pbnRlckxvY2tFbGVtZW50IGlzIHRhcmdldGRpdgotSmF2YVNjcmlwdCBp
bml0aWF0ZWQgdW5sb2NrLgotUEFTUyB3ZWJraXRwb2ludGVybG9ja2xvc3QgaGFuZGxlciBjYWxs
IDAKLVBBU1Mgd2Via2l0cG9pbnRlcmxvY2tsb3N0IGhhbmRsZXIgY2FsbCAxCi1QQVNTIEFsbCBl
eHBlY3RlZCB3ZWJraXRwb2ludGVybG9ja2xvc3QgZXZlbnRzIHJlY2VpdmVkLgotUEFTUyBvbndl
YmtpdHBvaW50ZXJsb2NrY2hhbmdlIHJlY2VpdmVkLgotUEFTUyBBbGwgZXhwZWN0ZWQgb253ZWJr
aXRwb2ludGVybG9ja2NoYW5nZSBldmVudHMgcmVjZWl2ZWQuCi1QQVNTIGRvY3VtZW50LndlYmtp
dFBvaW50ZXJMb2NrRWxlbWVudCBpcyBudWxsCi1QQVNTIG5hdmlnYXRvci53ZWJraXRQb2ludGVy
LmlzTG9ja2VkIGlzIGZhbHNlCi1QQVNTIG5hdmlnYXRvci53ZWJraXRQb2ludGVyLmlzTG9ja2Vk
IGlzIHRydWUKLVBBU1MgZG9jdW1lbnQud2Via2l0UG9pbnRlckxvY2tFbGVtZW50IGlzIHRhcmdl
dGRpdgotSG9zdCBpbml0aWF0ZWQgdW5sb2NrLgotUEFTUyB3ZWJraXRwb2ludGVybG9ja2xvc3Qg
aGFuZGxlciBjYWxsIDAKLVBBU1Mgd2Via2l0cG9pbnRlcmxvY2tsb3N0IGhhbmRsZXIgY2FsbCAx
Ci1QQVNTIEFsbCBleHBlY3RlZCB3ZWJraXRwb2ludGVybG9ja2xvc3QgZXZlbnRzIHJlY2VpdmVk
LgotUEFTUyBvbndlYmtpdHBvaW50ZXJsb2NrY2hhbmdlIHJlY2VpdmVkLgotUEFTUyBBbGwgZXhw
ZWN0ZWQgb253ZWJraXRwb2ludGVybG9ja2NoYW5nZSBldmVudHMgcmVjZWl2ZWQuCi1QQVNTIG5h
dmlnYXRvci53ZWJraXRQb2ludGVyLmlzTG9ja2VkIGlzIGZhbHNlCi1QQVNTIGRvY3VtZW50Lndl
YmtpdFBvaW50ZXJMb2NrRWxlbWVudCBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcG9pbnRl
ci1sb2NrL3BvaW50ZXJsb2NrbG9zdC1ldmVudC5odG1sIGIvTGF5b3V0VGVzdHMvcG9pbnRlci1s
b2NrL3BvaW50ZXJsb2NrbG9zdC1ldmVudC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmMDQ3MDg4YjgyZDU0YWQ3Zjk1ZmU5ZWFhODVmYzk2MGZiMTg2MzdjLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BvaW50ZXIt
bG9jay9wb2ludGVybG9ja2xvc3QtZXZlbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4v
aHR0cC90ZXN0cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9Ii4uL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvaW50ZXItbG9jay9wb2ludGVyLWxvY2stdGVz
dC1oYXJuZXNzLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdj4KLSAgPGRpdiBp
ZD0idGFyZ2V0Ij48L2Rpdj4KLTwvZGl2PgotPHNjcmlwdD4KLSAgICAvLyBGSVhNRTogUmVuYW1l
IHRoaXMgdGVzdCB0byBwb2ludGVybG9ja2NoYW5nZS1ldmVudC1vbi1sb2NrLWxvc3QuIChodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ0MDIpCi0KLSAgICBkZXNjcmlw
dGlvbigiVGVzdCB0aGF0IHBvaW50ZXJsb2NrbG9zdCBldmVudCBpcyBkaXNwYXRjaGVkLiIpCi0g
ICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotICAgIHNob3VsZEJlRGVmaW5lZCgid2lu
ZG93LnRlc3RSdW5uZXIiKTsKLQotICAgIHRhcmdldGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0YXJnZXQiKTsKLQotICAgIC8vIEZJWE1FOiBLZWVwIHBvaW50ZXJsb2NrY2hhbmdlIGFu
ZCBwb2ludGVybG9ja2Vycm9yIGV2ZW50IHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTg0NDAyKQotICAgIGRvY3VtZW50Lm9ud2Via2l0cG9pbnRlcmxvY2tj
aGFuZ2UgPSBsb2NrY2hhbmdlVG9VbmxvY2tlZEhhbmRsZXI7Ci0gICAgZG9jdW1lbnQub253ZWJr
aXRwb2ludGVybG9ja2Vycm9yID0KLSAgICAgICAgZnVuY3Rpb24gKCkgeyB0ZXN0RmFpbGVkKCJk
b2N1bWVudC5vbndlYmtpdHBvaW50ZXJsb2NrZXJyb3IgZGlzcGF0Y2hlZCIpOyBmaW5pc2hKU1Rl
c3QoKTsgfTsKLSAgICBsb2NrY2hhbmdlVG9VbmxvY2tlZEhhbmRsZXJzID0gMTsKLQotICAgIGxv
Y2tjaGFuZ2VUb1VubG9ja2VkUmVjZWlwdHMgPSAwOwotICAgIGZ1bmN0aW9uIGxvY2tjaGFuZ2VU
b1VubG9ja2VkSGFuZGxlcigpIHsKLSAgICAgICAgaWYgKG5hdmlnYXRvci53ZWJraXRQb2ludGVy
LmlzTG9ja2VkID09IGZhbHNlKSB7Ci0gICAgICAgICAgICB0ZXN0UGFzc2VkKCJvbndlYmtpdHBv
aW50ZXJsb2NrY2hhbmdlIHJlY2VpdmVkLiIpOwotICAgICAgICAgICAgbG9ja2NoYW5nZVRvVW5s
b2NrZWRSZWNlaXB0cysrOwotICAgICAgICAgICAgaWYgKGxvY2tjaGFuZ2VUb1VubG9ja2VkUmVj
ZWlwdHMgPT0gbG9ja2NoYW5nZVRvVW5sb2NrZWRIYW5kbGVycykgewotICAgICAgICAgICAgICAg
IHRlc3RQYXNzZWQoIkFsbCBleHBlY3RlZCBvbndlYmtpdHBvaW50ZXJsb2NrY2hhbmdlIGV2ZW50
cyByZWNlaXZlZC4iKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIC8v
IEZJWE1FOiBSZW1vdmUgcG9pbnRlcmxvY2tsb3N0IHVzYWdlLiAoaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg0NDAyKQotICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVu
ZXIoIndlYmtpdHBvaW50ZXJsb2NrbG9zdCIsIGxvY2tsb3N0SGFuZGxlcik7Ci0gICAgdGFyZ2V0
ZGl2LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHBvaW50ZXJsb2NrbG9zdCIsIGxvY2tsb3N0SGFu
ZGxlcik7Ci0gICAgbG9ja2xvc3RoYW5kbGVycyA9IDI7Ci0KLSAgICBsb2NrbG9zdHJlY2VpcHRz
ID0gMDsKLSAgICBmdW5jdGlvbiBsb2NrbG9zdEhhbmRsZXIoKSB7Ci0gICAgICAgIHRlc3RQYXNz
ZWQoIndlYmtpdHBvaW50ZXJsb2NrbG9zdCBoYW5kbGVyIGNhbGwgIiArIGxvY2tsb3N0cmVjZWlw
dHMpOwotICAgICAgICBsb2NrbG9zdHJlY2VpcHRzKys7Ci0gICAgICAgIGlmIChsb2NrbG9zdHJl
Y2VpcHRzID09IGxvY2tsb3N0aGFuZGxlcnMpIHsKLSAgICAgICAgICAgIHRlc3RQYXNzZWQoIkFs
bCBleHBlY3RlZCB3ZWJraXRwb2ludGVybG9ja2xvc3QgZXZlbnRzIHJlY2VpdmVkLiIpOwotICAg
ICAgICAgICAgZG9OZXh0U3RlcCgpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgdG9kbyA9IFsK
LSAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgbmF2aWdhdG9yLndlYmtpdFBvaW50
ZXIubG9jayh0YXJnZXRkaXYsCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAg
ICAgICAgICAgICAgICBzaG91bGRCZSgibmF2aWdhdG9yLndlYmtpdFBvaW50ZXIuaXNMb2NrZWQi
LCAidHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBkb05leHRTdGVwKCk7Ci0gICAgICAgICAg
ICAgICAgfSwKLSAgICAgICAgICAgICAgICBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIHRlc3RGYWlsZWQoIkxvY2sgZmFpbGVkLiIpOwotICAgICAgICAgICAgICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgfSwKLSAgICAgICAgZnVu
Y3Rpb24gKCkgewotICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LndlYmtpdFBvaW50ZXJM
b2NrRWxlbWVudCIsICJ0YXJnZXRkaXYiKTsKLSAgICAgICAgICAgIGRlYnVnKCJKYXZhU2NyaXB0
IGluaXRpYXRlZCB1bmxvY2suIikKLSAgICAgICAgICAgIGxvY2tsb3N0cmVjZWlwdHMgPSAwOwot
ICAgICAgICAgICAgbmF2aWdhdG9yLndlYmtpdFBvaW50ZXIudW5sb2NrKCk7Ci0gICAgICAgIH0s
Ci0gICAgICAgIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIC8vIGxvY2tsb3N0SGFuZGxlciB3
aWxsIGNhdGNoIHVubG9ja3MgYW5kIGNhbGwgZG9OZXh0U3RlcCB0byBicmluZyB1cyBoZXJlLgot
ICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCIs
ICJudWxsIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgibmF2aWdhdG9yLndlYmtpdFBvaW50ZXIu
aXNMb2NrZWQiLCAiZmFsc2UiKTsKLSAgICAgICAgICAgIGRvTmV4dFN0ZXBXaXRoVXNlckdlc3R1
cmUoKTsKLSAgICAgICAgfSwKLSAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgbmF2
aWdhdG9yLndlYmtpdFBvaW50ZXIubG9jayh0YXJnZXRkaXYsCi0gICAgICAgICAgICAgICAgZnVu
Y3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICBzaG91bGRCZSgibmF2aWdhdG9yLndlYmtp
dFBvaW50ZXIuaXNMb2NrZWQiLCAidHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBkb05leHRT
dGVwKCk7Ci0gICAgICAgICAgICAgICAgfSwKLSAgICAgICAgICAgICAgICBmdW5jdGlvbiAoKSB7
Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoIkxvY2sgZmFpbGVkLiIpOwotICAgICAg
ICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgfSwKLSAgICAgICAgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgc2hvdWxkQmUoImRvY3Vt
ZW50LndlYmtpdFBvaW50ZXJMb2NrRWxlbWVudCIsICJ0YXJnZXRkaXYiKTsKLSAgICAgICAgICAg
IGRlYnVnKCJIb3N0IGluaXRpYXRlZCB1bmxvY2suIikKLSAgICAgICAgICAgIGxvY2tjaGFuZ2VU
b1VubG9ja2VkUmVjZWlwdHMgPSAwOwotICAgICAgICAgICAgbG9ja2xvc3RyZWNlaXB0cyA9IDA7
Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLmRpZExvc2VQb2ludGVyTG9jaygpOwotICAgICAgICB9
LAotICAgICAgICBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAvLyBsb2NrbG9zdEhhbmRsZXIg
d2lsbCBjYXRjaCB1bmxvY2tzIGFuZCBjYWxsIGRvTmV4dFN0ZXAgdG8gYnJpbmcgdXMgaGVyZS4K
LSAgICAgICAgICAgIHNob3VsZEJlKCJuYXZpZ2F0b3Iud2Via2l0UG9pbnRlci5pc0xvY2tlZCIs
ICJmYWxzZSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LndlYmtpdFBvaW50ZXJM
b2NrRWxlbWVudCIsICJudWxsIik7Ci0gICAgICAgICAgICBkb05leHRTdGVwKCk7Ci0gICAgICAg
IH0sCi0gICAgXTsKLSAgICBkb05leHRTdGVwV2l0aFVzZXJHZXN0dXJlKCk7Ci08L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi9odHRwL3Rlc3RzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgotCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>