<?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>209687</bug_id>
          
          <creation_ts>2020-03-27 15:40:34 -0700</creation_ts>
          <short_desc>Deprecate injected bundle page group SPI</short_desc>
          <delta_ts>2020-03-28 09:47:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1635038</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-03-27 15:40:34 -0700</bug_when>
    <thetext>Deprecate injected bundle page group SPI</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1635039</commentid>
    <comment_count>1</comment_count>
      <attachid>394766</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-03-27 15:41:40 -0700</bug_when>
    <thetext>Created attachment 394766
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1635086</commentid>
    <comment_count>2</comment_count>
      <attachid>394778</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-03-27 19:09:35 -0700</bug_when>
    <thetext>Created attachment 394778
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1635199</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-03-28 09:46:02 -0700</bug_when>
    <thetext>Committed r259159: &lt;https://trac.webkit.org/changeset/259159&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 394778.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1635200</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-28 09:47:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/61010162&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394766</attachid>
            <date>2020-03-27 15:41:40 -0700</date>
            <delta_ts>2020-03-27 19:09:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209687-20200327154139.patch</filename>
            <type>text/plain</type>
            <size>17395</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQxIEBACisyMDIwLTAzLTI3ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVwcmVjYXRlIGlu
amVjdGVkIGJ1bmRsZSBwYWdlIGdyb3VwIFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5Njg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBvbGQgY29kZSBpcyBwcm9ibGVtYXRpYywgYW5kIHRo
ZSB1c2Ugb2YgaXQgaXMgYmVpbmcgcmVtb3ZlZC4KKworICAgICAgICAqIFNoYXJlZC9XZWJQYWdl
R3JvdXBEYXRhLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUdyb3VwRGF0YTo6ZW5jb2Rl
IGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZUdyb3VwRGF0YTo6ZGVjb2RlKToKKyAg
ICAgICAgKiBTaGFyZWQvV2ViUGFnZUdyb3VwRGF0YS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQYWdlR3JvdXAuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlR3JvdXA6OldlYlBhZ2VH
cm91cCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRs
ZS5jcHA6CisgICAgICAgIChXS0J1bmRsZUFkZFVzZXJTY3JpcHQpOgorICAgICAgICAoV0tCdW5k
bGVBZGRVc2VyU3R5bGVTaGVldCk6CisgICAgICAgIChXS0J1bmRsZVJlbW92ZVVzZXJTY3JpcHQp
OgorICAgICAgICAoV0tCdW5kbGVSZW1vdmVVc2VyU3R5bGVTaGVldCk6CisgICAgICAgIChXS0J1
bmRsZVJlbW92ZVVzZXJTY3JpcHRzKToKKyAgICAgICAgKFdLQnVuZGxlUmVtb3ZlVXNlclN0eWxl
U2hlZXRzKToKKyAgICAgICAgKFdLQnVuZGxlUmVtb3ZlQWxsVXNlckNvbnRlbnQpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQcml2YXRlLmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjphZGRVc2VyU2NyaXB0KTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGU6OmFkZFVzZXJTdHlsZVNoZWV0KTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGU6OnJlbW92ZVVzZXJTY3JpcHQp
OiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlVXNlclN0
eWxlU2hlZXQpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6cmVt
b3ZlVXNlclNjcmlwdHMpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRs
ZTo6cmVtb3ZlVXNlclN0eWxlU2hlZXRzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6SW5q
ZWN0ZWRCdW5kbGU6OnJlbW92ZUFsbFVzZXJDb250ZW50KTogRGVsZXRlZC4KKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VHcm91cFByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZUdyb3VwUHJveHk6OldlYlBhZ2VHcm91cFByb3h5KToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZUdyb3VwUHJveHk6OnVzZXJDb250ZW50Q29udHJvbGxlcik6IERlbGV0ZWQuCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VHcm91cFByb3h5Lmg6CisKIDIwMjAtMDMt
MjcgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVnaXN0ZXJCbG9iVVJMT3B0aW9uYWxseUZpbGVCYWNr
ZWQgc2hvdWxkIHZhbGlkYXRlIGl0cyBwYXJhbWV0ZXJzCkluZGV4OiBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJQYWdlR3JvdXBEYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJQYWdlR3JvdXBEYXRhLmNwcAkocmV2aXNpb24gMjU4ODYxKQorKysgU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViUGFnZUdyb3VwRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0LDcg
KzM0LDYgQEAgdm9pZCBXZWJQYWdlR3JvdXBEYXRhOjplbmNvZGUoSVBDOjpFbmNvZAogewogICAg
IGVuY29kZXIgPDwgaWRlbnRpZmllcjsKICAgICBlbmNvZGVyIDw8IHBhZ2VHcm91cElEOwotICAg
IGVuY29kZXIgPDwgdXNlckNvbnRlbnRDb250cm9sbGVySWRlbnRpZmllcjsKIH0KIAogT3B0aW9u
YWw8V2ViUGFnZUdyb3VwRGF0YT4gV2ViUGFnZUdyb3VwRGF0YTo6ZGVjb2RlKElQQzo6RGVjb2Rl
ciYgZGVjb2RlcikKQEAgLTQ4LDEzICs0Nyw4IEBAIE9wdGlvbmFsPFdlYlBhZ2VHcm91cERhdGE+
IFdlYlBhZ2VHcm91cEQKICAgICBkZWNvZGVyID4+IHBhZ2VHcm91cElEOwogICAgIGlmICghcGFn
ZUdyb3VwSUQpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0gICAgCi0gICAgT3B0aW9u
YWw8VXNlckNvbnRlbnRDb250cm9sbGVySWRlbnRpZmllcj4gdXNlckNvbnRlbnRDb250cm9sbGVy
SWRlbnRpZmllcjsKLSAgICBkZWNvZGVyID4+IHVzZXJDb250ZW50Q29udHJvbGxlcklkZW50aWZp
ZXI7Ci0gICAgaWYgKCF1c2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyKQotICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OwotICAgIAotICAgIHJldHVybiB7eyBXVEZNb3ZlKCppZGVudGlm
aWVyKSwgKnBhZ2VHcm91cElELCAqdXNlckNvbnRlbnRDb250cm9sbGVySWRlbnRpZmllciB9fTsK
KyAgICAgICAgCisgICAgcmV0dXJuIHt7IFdURk1vdmUoKmlkZW50aWZpZXIpLCAqcGFnZUdyb3Vw
SUQgfX07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViUGFnZUdyb3VwRGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hh
cmVkL1dlYlBhZ2VHcm91cERhdGEuaAkocmV2aXNpb24gMjU4ODYxKQorKysgU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViUGFnZUdyb3VwRGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw4ICs0MSw2
IEBAIHN0cnVjdCBXZWJQYWdlR3JvdXBEYXRhIHsKIAogICAgIFN0cmluZyBpZGVudGlmaWVyOwog
ICAgIHVpbnQ2NF90IHBhZ2VHcm91cElEOwotCi0gICAgVXNlckNvbnRlbnRDb250cm9sbGVySWRl
bnRpZmllciB1c2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlR3JvdXAu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VHcm91cC5j
cHAJKHJldmlzaW9uIDI1ODg2MSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VH
cm91cC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg1LDggKzg1LDYgQEAgV2ViUGFnZUdyb3VwOjpX
ZWJQYWdlR3JvdXAoY29uc3QgU3RyaW5nJgogICAgICwgbV9wcmVmZXJlbmNlcyhXZWJQcmVmZXJl
bmNlczo6Y3JlYXRlV2l0aExlZ2FjeURlZmF1bHRzKG1fZGF0YS5pZGVudGlmaWVyLCAiLldlYktp
dDIiLCAiV2ViS2l0Mi4iKSkKICAgICAsIG1fdXNlckNvbnRlbnRDb250cm9sbGVyKFdlYlVzZXJD
b250ZW50Q29udHJvbGxlclByb3h5OjpjcmVhdGUoKSkKIHsKLSAgICBtX2RhdGEudXNlckNvbnRl
bnRDb250cm9sbGVySWRlbnRpZmllciA9IG1fdXNlckNvbnRlbnRDb250cm9sbGVyLT5pZGVudGlm
aWVyKCk7Ci0KICAgICB3ZWJQYWdlR3JvdXBNYXAoKS5zZXQobV9kYXRhLnBhZ2VHcm91cElELCB0
aGlzKTsKIH0KIApJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCShyZXZpc2lvbiAyNTg4NjEpCisr
KyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NzUsNDUgKzQ3NSw2IEBAIGJvb2wgSW5qZWN0ZWRCdW5k
bGU6OmlzUHJvY2Vzc2luZ1VzZXJHZXMKICAgICByZXR1cm4gVXNlckdlc3R1cmVJbmRpY2F0b3I6
OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpOwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlOjphZGRV
c2VyU2NyaXB0KFdlYlBhZ2VHcm91cFByb3h5KiBwYWdlR3JvdXAsIEluamVjdGVkQnVuZGxlU2Ny
aXB0V29ybGQqIHNjcmlwdFdvcmxkLCBTdHJpbmcmJiBzb3VyY2UsIFN0cmluZyYmIHVybCwgQVBJ
OjpBcnJheSogd2hpdGVsaXN0LCBBUEk6OkFycmF5KiBibGFja2xpc3QsIFdlYkNvcmU6OlVzZXJT
Y3JpcHRJbmplY3Rpb25UaW1lIGluamVjdGlvblRpbWUsIFdlYkNvcmU6OlVzZXJDb250ZW50SW5q
ZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpCi17Ci0gICAgVXNlclNjcmlwdCB1c2VyU2NyaXB0
IHsgV1RGTW92ZShzb3VyY2UpLCBVUkwoVVJMKCksIHVybCksIHdoaXRlbGlzdCA/IHdoaXRlbGlz
dC0+dG9TdHJpbmdWZWN0b3IoKSA6IFZlY3RvcjxTdHJpbmc+KCksIGJsYWNrbGlzdCA/IGJsYWNr
bGlzdC0+dG9TdHJpbmdWZWN0b3IoKSA6IFZlY3RvcjxTdHJpbmc+KCksIGluamVjdGlvblRpbWUs
IGluamVjdGVkRnJhbWVzIH07Ci0KLSAgICBwYWdlR3JvdXAtPnVzZXJDb250ZW50Q29udHJvbGxl
cigpLmFkZFVzZXJTY3JpcHQoKnNjcmlwdFdvcmxkLCBXVEZNb3ZlKHVzZXJTY3JpcHQpKTsKLX0K
LQotdm9pZCBJbmplY3RlZEJ1bmRsZTo6YWRkVXNlclN0eWxlU2hlZXQoV2ViUGFnZUdyb3VwUHJv
eHkqIHBhZ2VHcm91cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCogc2NyaXB0V29ybGQsIGNv
bnN0IFN0cmluZyYgc291cmNlLCBjb25zdCBTdHJpbmcmIHVybCwgQVBJOjpBcnJheSogd2hpdGVs
aXN0LCBBUEk6OkFycmF5KiBibGFja2xpc3QsIFdlYkNvcmU6OlVzZXJDb250ZW50SW5qZWN0ZWRG
cmFtZXMgaW5qZWN0ZWRGcmFtZXMpCi17Ci0gICAgVXNlclN0eWxlU2hlZXQgdXNlclN0eWxlU2hl
ZXR7IHNvdXJjZSwgVVJMKFVSTCgpLCB1cmwpLCB3aGl0ZWxpc3QgPyB3aGl0ZWxpc3QtPnRvU3Ry
aW5nVmVjdG9yKCkgOiBWZWN0b3I8U3RyaW5nPigpLCBibGFja2xpc3QgPyBibGFja2xpc3QtPnRv
U3RyaW5nVmVjdG9yKCkgOiBWZWN0b3I8U3RyaW5nPigpLCBpbmplY3RlZEZyYW1lcywgVXNlclN0
eWxlVXNlckxldmVsIH07Ci0KLSAgICBwYWdlR3JvdXAtPnVzZXJDb250ZW50Q29udHJvbGxlcigp
LmFkZFVzZXJTdHlsZVNoZWV0KCpzY3JpcHRXb3JsZCwgV1RGTW92ZSh1c2VyU3R5bGVTaGVldCkp
OwotfQotCi12b2lkIEluamVjdGVkQnVuZGxlOjpyZW1vdmVVc2VyU2NyaXB0KFdlYlBhZ2VHcm91
cFByb3h5KiBwYWdlR3JvdXAsIEluamVjdGVkQnVuZGxlU2NyaXB0V29ybGQqIHNjcmlwdFdvcmxk
LCBjb25zdCBTdHJpbmcmIHVybCkKLXsKLSAgICBwYWdlR3JvdXAtPnVzZXJDb250ZW50Q29udHJv
bGxlcigpLnJlbW92ZVVzZXJTY3JpcHRXaXRoVVJMKCpzY3JpcHRXb3JsZCwgVVJMKFVSTCgpLCB1
cmwpKTsKLX0KLQotdm9pZCBJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlVXNlclN0eWxlU2hlZXQoV2Vi
UGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCogc2Ny
aXB0V29ybGQsIGNvbnN0IFN0cmluZyYgdXJsKQotewotICAgIHBhZ2VHcm91cC0+dXNlckNvbnRl
bnRDb250cm9sbGVyKCkucmVtb3ZlVXNlclN0eWxlU2hlZXRXaXRoVVJMKCpzY3JpcHRXb3JsZCwg
VVJMKFVSTCgpLCB1cmwpKTsKLX0KLQotdm9pZCBJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlVXNlclNj
cmlwdHMoV2ViUGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRX
b3JsZCogc2NyaXB0V29ybGQpCi17Ci0gICAgcGFnZUdyb3VwLT51c2VyQ29udGVudENvbnRyb2xs
ZXIoKS5yZW1vdmVVc2VyU2NyaXB0cygqc2NyaXB0V29ybGQpOwotfQotCi12b2lkIEluamVjdGVk
QnVuZGxlOjpyZW1vdmVVc2VyU3R5bGVTaGVldHMoV2ViUGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91
cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCogc2NyaXB0V29ybGQpCi17Ci0gICAgcGFnZUdy
b3VwLT51c2VyQ29udGVudENvbnRyb2xsZXIoKS5yZW1vdmVVc2VyU3R5bGVTaGVldHMoKnNjcmlw
dFdvcmxkKTsKLX0KLQotdm9pZCBJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlQWxsVXNlckNvbnRlbnQo
V2ViUGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCkKLXsKLSAgICBwYWdlR3JvdXAtPnVzZXJDb250
ZW50Q29udHJvbGxlcigpLnJlbW92ZUFsbFVzZXJDb250ZW50KCk7Ci19Ci0KIHZvaWQgSW5qZWN0
ZWRCdW5kbGU6OmdhcmJhZ2VDb2xsZWN0SmF2YVNjcmlwdE9iamVjdHMoKQogewogICAgIEdDQ29u
dHJvbGxlcjo6c2luZ2xldG9uKCkuZ2FyYmFnZUNvbGxlY3ROb3coKTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1
bmRsZS5oCShyZXZpc2lvbiAyNTg4NjEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAkod29ya2luZyBjb3B5KQpAQCAtMTI0LDE1ICsx
MjQsNiBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBIYXNoTWFwPHVpbnQ2NF90LCBTdHJpbmc+IERv
Y3VtZW50SURUb1VSTE1hcDsKICAgICBEb2N1bWVudElEVG9VUkxNYXAgbGl2ZURvY3VtZW50VVJM
cyhXZWJQYWdlR3JvdXBQcm94eSosIGJvb2wgZXhjbHVkZURvY3VtZW50c0luUGFnZUdyb3VwUGFn
ZXMpOwogCi0gICAgLy8gVXNlckNvbnRlbnQgQVBJCi0gICAgdm9pZCBhZGRVc2VyU2NyaXB0KFdl
YlBhZ2VHcm91cFByb3h5KiwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCosIFN0cmluZyYmIHNv
dXJjZSwgU3RyaW5nJiYgdXJsLCBBUEk6OkFycmF5KiB3aGl0ZWxpc3QsIEFQSTo6QXJyYXkqIGJs
YWNrbGlzdCwgV2ViQ29yZTo6VXNlclNjcmlwdEluamVjdGlvblRpbWUsIFdlYkNvcmU6OlVzZXJD
b250ZW50SW5qZWN0ZWRGcmFtZXMpOwotICAgIHZvaWQgYWRkVXNlclN0eWxlU2hlZXQoV2ViUGFn
ZUdyb3VwUHJveHkqLCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiwgY29uc3QgU3RyaW5nJiBz
b3VyY2UsIGNvbnN0IFN0cmluZyYgdXJsLCBBUEk6OkFycmF5KiB3aGl0ZWxpc3QsIEFQSTo6QXJy
YXkqIGJsYWNrbGlzdCwgV2ViQ29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyk7Ci0gICAg
dm9pZCByZW1vdmVVc2VyU2NyaXB0KFdlYlBhZ2VHcm91cFByb3h5KiwgSW5qZWN0ZWRCdW5kbGVT
Y3JpcHRXb3JsZCosIGNvbnN0IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJlbW92ZVVzZXJTdHls
ZVNoZWV0KFdlYlBhZ2VHcm91cFByb3h5KiwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCosIGNv
bnN0IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJlbW92ZVVzZXJTY3JpcHRzKFdlYlBhZ2VHcm91
cFByb3h5KiwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCopOwotICAgIHZvaWQgcmVtb3ZlVXNl
clN0eWxlU2hlZXRzKFdlYlBhZ2VHcm91cFByb3h5KiwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3Js
ZCopOwotICAgIHZvaWQgcmVtb3ZlQWxsVXNlckNvbnRlbnQoV2ViUGFnZUdyb3VwUHJveHkqKTsK
LQogICAgIC8vIEdhcmJhZ2UgY29sbGVjdGlvbiBBUEkKICAgICB2b2lkIGdhcmJhZ2VDb2xsZWN0
SmF2YVNjcmlwdE9iamVjdHMoKTsKICAgICB2b2lkIGdhcmJhZ2VDb2xsZWN0SmF2YVNjcmlwdE9i
amVjdHNPbkFsdGVybmF0ZVRocmVhZEZvckRlYnVnZ2luZyhib29sIHdhaXRVbnRpbERvbmUpOwpJ
bmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2MvV0tCdW5kbGUuY3BwCShyZXZpc2lvbiAyNTg4NjEpCisrKyBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC05NiwzOSArOTYsMzIgQEAgc2l6ZV90IFdLQnVuZGxlR2V0SmF2YVNjcmlwdE9i
amVjdHNDb3VudAogICAgIHJldHVybiBXZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYpLT5qYXZhU2Ny
aXB0T2JqZWN0c0NvdW50KCk7CiB9CiAKLXZvaWQgV0tCdW5kbGVBZGRVc2VyU2NyaXB0KFdLQnVu
ZGxlUmVmIGJ1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwUmVmLCBXS0J1
bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkUmVmLCBXS1N0cmluZ1JlZiBzb3VyY2VSZWYs
IFdLVVJMUmVmIHVybFJlZiwgV0tBcnJheVJlZiB3aGl0ZWxpc3RSZWYsIFdLQXJyYXlSZWYgYmxh
Y2tsaXN0UmVmLCBfV0tVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSBpbmplY3Rpb25UaW1lUmVmLCBX
S1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXNSZWYpCit2b2lkIFdLQnVu
ZGxlQWRkVXNlclNjcmlwdChXS0J1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYsIFdLQnVu
ZGxlU2NyaXB0V29ybGRSZWYsIFdLU3RyaW5nUmVmLCBXS1VSTFJlZiwgV0tBcnJheVJlZiwgV0tB
cnJheVJlZiwgX1dLVXNlclNjcmlwdEluamVjdGlvblRpbWUsIFdLVXNlckNvbnRlbnRJbmplY3Rl
ZEZyYW1lcykKIHsKLSAgICBXZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYpLT5hZGRVc2VyU2NyaXB0
KFdlYktpdDo6dG9JbXBsKHBhZ2VHcm91cFJlZiksIFdlYktpdDo6dG9JbXBsKHNjcmlwdFdvcmxk
UmVmKSwgV2ViS2l0Ojp0b1dURlN0cmluZyhzb3VyY2VSZWYpLCBXZWJLaXQ6OnRvV1RGU3RyaW5n
KHVybFJlZiksIFdlYktpdDo6dG9JbXBsKHdoaXRlbGlzdFJlZiksIFdlYktpdDo6dG9JbXBsKGJs
YWNrbGlzdFJlZiksIFdlYktpdDo6dG9Vc2VyU2NyaXB0SW5qZWN0aW9uVGltZShpbmplY3Rpb25U
aW1lUmVmKSwgV2ViS2l0Ojp0b1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMoaW5qZWN0ZWRGcmFt
ZXNSZWYpKTsKIH0KIAotdm9pZCBXS0J1bmRsZUFkZFVzZXJTdHlsZVNoZWV0KFdLQnVuZGxlUmVm
IGJ1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwUmVmLCBXS0J1bmRsZVNj
cmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkUmVmLCBXS1N0cmluZ1JlZiBzb3VyY2VSZWYsIFdLVVJM
UmVmIHVybFJlZiwgV0tBcnJheVJlZiB3aGl0ZWxpc3RSZWYsIFdLQXJyYXlSZWYgYmxhY2tsaXN0
UmVmLCBXS1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXNSZWYpCit2b2lk
IFdLQnVuZGxlQWRkVXNlclN0eWxlU2hlZXQoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdyb3Vw
UmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmLCBXS1N0cmluZ1JlZiwgV0tVUkxSZWYsIFdLQXJy
YXlSZWYsIFdLQXJyYXlSZWYsIFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcykKIHsKLSAgICBX
ZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYpLT5hZGRVc2VyU3R5bGVTaGVldChXZWJLaXQ6OnRvSW1w
bChwYWdlR3JvdXBSZWYpLCBXZWJLaXQ6OnRvSW1wbChzY3JpcHRXb3JsZFJlZiksIFdlYktpdDo6
dG9XVEZTdHJpbmcoc291cmNlUmVmKSwgV2ViS2l0Ojp0b1dURlN0cmluZyh1cmxSZWYpLCBXZWJL
aXQ6OnRvSW1wbCh3aGl0ZWxpc3RSZWYpLCBXZWJLaXQ6OnRvSW1wbChibGFja2xpc3RSZWYpLCBX
ZWJLaXQ6OnRvVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyhpbmplY3RlZEZyYW1lc1JlZikpOwog
fQogCi12b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdChXS0J1bmRsZVJlZiBidW5kbGVSZWYs
IFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cFJlZiwgV0tCdW5kbGVTY3JpcHRXb3JsZFJl
ZiBzY3JpcHRXb3JsZFJlZiwgV0tVUkxSZWYgdXJsUmVmKQordm9pZCBXS0J1bmRsZVJlbW92ZVVz
ZXJTY3JpcHQoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmLCBXS0J1bmRsZVNjcmlw
dFdvcmxkUmVmLCBXS1VSTFJlZikKIHsKLSAgICBXZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYpLT5y
ZW1vdmVVc2VyU2NyaXB0KFdlYktpdDo6dG9JbXBsKHBhZ2VHcm91cFJlZiksIFdlYktpdDo6dG9J
bXBsKHNjcmlwdFdvcmxkUmVmKSwgV2ViS2l0Ojp0b1dURlN0cmluZyh1cmxSZWYpKTsKIH0KIAot
dm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTdHlsZVNoZWV0KFdLQnVuZGxlUmVmIGJ1bmRsZVJlZiwg
V0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVm
IHNjcmlwdFdvcmxkUmVmLCBXS1VSTFJlZiB1cmxSZWYpCit2b2lkIFdLQnVuZGxlUmVtb3ZlVXNl
clN0eWxlU2hlZXQoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmLCBXS0J1bmRsZVNj
cmlwdFdvcmxkUmVmLCBXS1VSTFJlZikKIHsKLSAgICBXZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYp
LT5yZW1vdmVVc2VyU3R5bGVTaGVldChXZWJLaXQ6OnRvSW1wbChwYWdlR3JvdXBSZWYpLCBXZWJL
aXQ6OnRvSW1wbChzY3JpcHRXb3JsZFJlZiksIFdlYktpdDo6dG9XVEZTdHJpbmcodXJsUmVmKSk7
CiB9CiAKLXZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU2NyaXB0cyhXS0J1bmRsZVJlZiBidW5kbGVS
ZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cFJlZiwgV0tCdW5kbGVTY3JpcHRXb3Js
ZFJlZiBzY3JpcHRXb3JsZFJlZikKK3ZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU2NyaXB0cyhXS0J1
bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYpCiB7
Ci0gICAgV2ViS2l0Ojp0b0ltcGwoYnVuZGxlUmVmKS0+cmVtb3ZlVXNlclNjcmlwdHMoV2ViS2l0
Ojp0b0ltcGwocGFnZUdyb3VwUmVmKSwgV2ViS2l0Ojp0b0ltcGwoc2NyaXB0V29ybGRSZWYpKTsK
IH0KIAotdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTdHlsZVNoZWV0cyhXS0J1bmRsZVJlZiBidW5k
bGVSZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cFJlZiwgV0tCdW5kbGVTY3JpcHRX
b3JsZFJlZiBzY3JpcHRXb3JsZFJlZikKK3ZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU3R5bGVTaGVl
dHMoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxk
UmVmKQogewotICAgIFdlYktpdDo6dG9JbXBsKGJ1bmRsZVJlZiktPnJlbW92ZVVzZXJTdHlsZVNo
ZWV0cyhXZWJLaXQ6OnRvSW1wbChwYWdlR3JvdXBSZWYpLCBXZWJLaXQ6OnRvSW1wbChzY3JpcHRX
b3JsZFJlZikpOwogfQogCi12b2lkIFdLQnVuZGxlUmVtb3ZlQWxsVXNlckNvbnRlbnQoV0tCdW5k
bGVSZWYgYnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXBSZWYpCit2b2lk
IFdLQnVuZGxlUmVtb3ZlQWxsVXNlckNvbnRlbnQoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdy
b3VwUmVmKQogewotICAgIFdlYktpdDo6dG9JbXBsKGJ1bmRsZVJlZiktPnJlbW92ZUFsbFVzZXJD
b250ZW50KFdlYktpdDo6dG9JbXBsKHBhZ2VHcm91cFJlZikpOwogfQogCiB2b2lkIFdLQnVuZGxl
T3ZlcnJpZGVCb29sUHJlZmVyZW5jZUZvclRlc3RSdW5uZXIoV0tCdW5kbGVSZWYgYnVuZGxlUmVm
LCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXBSZWYsIFdLU3RyaW5nUmVmIHByZWZlcmVu
Y2UsIGJvb2wgZW5hYmxlZCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQcml2YXRlLmgJKHJl
dmlzaW9uIDI1ODg2MSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9BUEkvYy9XS0J1bmRsZVByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBA
QAogI2VuZGlmCiAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2UuaD4KKyNpbmNsdWRl
IDxXZWJLaXQvV0tEZXByZWNhdGVkLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLVXNlckNvbnRlbnRJ
bmplY3RlZEZyYW1lcy5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1VzZXJTY3JpcHRJbmplY3Rpb25U
aW1lLmg+CiAKQEAgLTY5LDEzICs3MCwxMyBAQCBXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVNldEFz
eW5jaHJvbm91c1NwCiBXS19FWFBPUlQgV0tBcnJheVJlZiBXS0J1bmRsZUdldExpdmVEb2N1bWVu
dFVSTHMoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAs
IGJvb2wgZXhjbHVkZURvY3VtZW50c0luUGFnZUdyb3VwUGFnZXMpOwogCiAvLyBVc2VyQ29udGVu
dCBBUEkKLVdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlQWRkVXNlclNjcmlwdChXS0J1bmRsZVJlZiBi
dW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3Js
ZFJlZiBzY3JpcHRXb3JsZCwgV0tTdHJpbmdSZWYgc291cmNlLCBXS1VSTFJlZiB1cmwsIFdLQXJy
YXlSZWYgd2hpdGVsaXN0LCBXS0FycmF5UmVmIGJsYWNrbGlzdCwgX1dLVXNlclNjcmlwdEluamVj
dGlvblRpbWUgaW5qZWN0aW9uVGltZSwgV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGluamVj
dGVkRnJhbWVzKTsKLVdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlQWRkVXNlclN0eWxlU2hlZXQoV0tC
dW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxl
U2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGQsIFdLU3RyaW5nUmVmIHNvdXJjZSwgV0tVUkxSZWYg
dXJsLCBXS0FycmF5UmVmIHdoaXRlbGlzdCwgV0tBcnJheVJlZiBibGFja2xpc3QsIFdLVXNlckNv
bnRlbnRJbmplY3RlZEZyYW1lcyBpbmplY3RlZEZyYW1lcyk7Ci1XS19FWFBPUlQgdm9pZCBXS0J1
bmRsZVJlbW92ZVVzZXJTY3JpcHQoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VHcm91
cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGQsIFdLVVJM
UmVmIHVybCk7Ci1XS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTdHlsZVNoZWV0KFdL
QnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwLCBXS0J1bmRs
ZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkLCBXS1VSTFJlZiB1cmwpOwotV0tfRVhQT1JUIHZv
aWQgV0tCdW5kbGVSZW1vdmVVc2VyU2NyaXB0cyhXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxl
UGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3Js
ZCk7Ci1XS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTdHlsZVNoZWV0cyhXS0J1bmRs
ZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3Jp
cHRXb3JsZFJlZiBzY3JpcHRXb3JsZCk7Ci1XS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92ZUFs
bFVzZXJDb250ZW50KFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFn
ZUdyb3VwKTsKK1dLX0VYUE9SVCB2b2lkIFdLQnVuZGxlQWRkVXNlclNjcmlwdChXS0J1bmRsZVJl
ZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRX
b3JsZFJlZiBzY3JpcHRXb3JsZCwgV0tTdHJpbmdSZWYgc291cmNlLCBXS1VSTFJlZiB1cmwsIFdL
QXJyYXlSZWYgd2hpdGVsaXN0LCBXS0FycmF5UmVmIGJsYWNrbGlzdCwgX1dLVXNlclNjcmlwdElu
amVjdGlvblRpbWUgaW5qZWN0aW9uVGltZSwgV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGlu
amVjdGVkRnJhbWVzKSBXS19DX0FQSV9ERVBSRUNBVEVEX1dJVEhfUkVQTEFDRU1FTlQoV0tCdW5k
bGVQYWdlQWRkVXNlclNjcmlwdCk7CitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZUFkZFVzZXJTdHls
ZVNoZWV0KFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3Vw
LCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkLCBXS1N0cmluZ1JlZiBzb3VyY2Us
IFdLVVJMUmVmIHVybCwgV0tBcnJheVJlZiB3aGl0ZWxpc3QsIFdLQXJyYXlSZWYgYmxhY2tsaXN0
LCBXS1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpIFdLX0NfQVBJX0RF
UFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVChXS0J1bmRsZVBhZ2VBZGRVc2VyU3R5bGVTaGVldCk7
CitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTY3JpcHQoV0tCdW5kbGVSZWYgYnVu
ZGxlLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRS
ZWYgc2NyaXB0V29ybGQsIFdLVVJMUmVmIHVybCkgV0tfQ19BUElfREVQUkVDQVRFRDsKK1dLX0VY
UE9SVCB2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclN0eWxlU2hlZXQoV0tCdW5kbGVSZWYgYnVuZGxl
LCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYg
c2NyaXB0V29ybGQsIFdLVVJMUmVmIHVybCkgV0tfQ19BUElfREVQUkVDQVRFRDsKK1dLX0VYUE9S
VCB2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdHMoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1
bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0
V29ybGQpIFdLX0NfQVBJX0RFUFJFQ0FURUQ7CitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92
ZVVzZXJTdHlsZVNoZWV0cyhXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVm
IHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3JsZCkgV0tfQ19BUElf
REVQUkVDQVRFRDsKK1dLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUmVtb3ZlQWxsVXNlckNvbnRlbnQo
V0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXApIFdLX0Nf
QVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVChXS0J1bmRsZVBhZ2VSZW1vdmVBbGxVc2Vy
Q29udGVudCk7CiAKIC8vIExvY2FsIHN0b3JhZ2UgQVBJCiBXS19FWFBPUlQgdm9pZCBXS0J1bmRs
ZUNsZWFyQWxsRGF0YWJhc2VzKFdLQnVuZGxlUmVmIGJ1bmRsZSk7CkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlR3JvdXBQcm94eS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZUdyb3VwUHJveHkuY3Bw
CShyZXZpc2lvbiAyNTg4NjEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlR3JvdXBQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDcgKzQ4LDYgQEAgUmVm
PFdlYlBhZ2VHcm91cFByb3h5PiBXZWJQYWdlR3JvdXBQcm94eQogV2ViUGFnZUdyb3VwUHJveHk6
OldlYlBhZ2VHcm91cFByb3h5KGNvbnN0IFdlYlBhZ2VHcm91cERhdGEmIGRhdGEpCiAgICAgOiBt
X2RhdGEoZGF0YSkKICAgICAsIG1fcGFnZUdyb3VwKFdlYkNvcmU6OlBhZ2VHcm91cDo6cGFnZUdy
b3VwKG1fZGF0YS5pZGVudGlmaWVyKSkKLSAgICAsIG1fdXNlckNvbnRlbnRDb250cm9sbGVyKFdl
YlVzZXJDb250ZW50Q29udHJvbGxlcjo6Z2V0T3JDcmVhdGUobV9kYXRhLnVzZXJDb250ZW50Q29u
dHJvbGxlcklkZW50aWZpZXIpKQogewogfQogCkBAIC01Niw5ICs1NSw0IEBAIFdlYlBhZ2VHcm91
cFByb3h5Ojp+V2ViUGFnZUdyb3VwUHJveHkoKQogewogfQogCi1XZWJVc2VyQ29udGVudENvbnRy
b2xsZXImIFdlYlBhZ2VHcm91cFByb3h5Ojp1c2VyQ29udGVudENvbnRyb2xsZXIoKQotewotICAg
IHJldHVybiBtX3VzZXJDb250ZW50Q29udHJvbGxlcjsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlR3JvdXBQ
cm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2VHcm91cFByb3h5LmgJKHJldmlzaW9uIDI1ODg2MSkKKysrIFNvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VHcm91cFByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4
LDE0ICs0OCwxMSBAQCBwdWJsaWM6CiAgICAgU3RvcmFnZU5hbWVzcGFjZUlkZW50aWZpZXIgbG9j
YWxTdG9yYWdlTmFtZXNwYWNlSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1ha2VPYmplY3RJ
ZGVudGlmaWVyPFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyVHlwZT4ocGFnZUdyb3VwSUQoKSk7
IH0KICAgICBXZWJDb3JlOjpQYWdlR3JvdXAqIGNvcmVQYWdlR3JvdXAoKSBjb25zdCB7IHJldHVy
biBtX3BhZ2VHcm91cDsgfQogCi0gICAgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyJiB1c2VyQ29u
dGVudENvbnRyb2xsZXIoKTsKLQogcHJpdmF0ZToKICAgICBXZWJQYWdlR3JvdXBQcm94eShjb25z
dCBXZWJQYWdlR3JvdXBEYXRhJik7CiAKICAgICBXZWJQYWdlR3JvdXBEYXRhIG1fZGF0YTsKICAg
ICBXZWJDb3JlOjpQYWdlR3JvdXAqIG1fcGFnZUdyb3VwOwotICAgIFJlZjxXZWJVc2VyQ29udGVu
dENvbnRyb2xsZXI+IG1fdXNlckNvbnRlbnRDb250cm9sbGVyOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394778</attachid>
            <date>2020-03-27 19:09:35 -0700</date>
            <delta_ts>2020-03-28 09:46:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209687-20200327190934.patch</filename>
            <type>text/plain</type>
            <size>35248</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQxIEBACisyMDIwLTAzLTI3ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVwcmVjYXRlIGlu
amVjdGVkIGJ1bmRsZSBwYWdlIGdyb3VwIFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5Njg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBvbGQgY29kZSBpcyBwcm9ibGVtYXRpYywgYW5kIHRo
ZSB1c2Ugb2YgaXQgaXMgYmVpbmcgcmVtb3ZlZCBpbiByZGFyOi8vcHJvYmxlbS82MDk4NzI2NQor
CisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VHcm91cERhdGEuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlR3JvdXBEYXRhOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlR3JvdXBEYXRhOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlR3JvdXBEYXRh
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VHcm91cC5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VHcm91cDo6V2ViUGFnZUdyb3VwKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmNwcDoKKyAgICAgICAgKFdLQnVuZGxlQWRkVXNl
clNjcmlwdCk6CisgICAgICAgIChXS0J1bmRsZUFkZFVzZXJTdHlsZVNoZWV0KToKKyAgICAgICAg
KFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdCk6CisgICAgICAgIChXS0J1bmRsZVJlbW92ZVVzZXJT
dHlsZVNoZWV0KToKKyAgICAgICAgKFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdHMpOgorICAgICAg
ICAoV0tCdW5kbGVSZW1vdmVVc2VyU3R5bGVTaGVldHMpOgorICAgICAgICAoV0tCdW5kbGVSZW1v
dmVBbGxVc2VyQ29udGVudCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZVByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGU6
OmFkZFVzZXJTY3JpcHQpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRs
ZTo6YWRkVXNlclN0eWxlU2hlZXQpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3Rl
ZEJ1bmRsZTo6cmVtb3ZlVXNlclNjcmlwdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Oklu
amVjdGVkQnVuZGxlOjpyZW1vdmVVc2VyU3R5bGVTaGVldCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJLaXQ6OkluamVjdGVkQnVuZGxlOjpyZW1vdmVVc2VyU2NyaXB0cyk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjpyZW1vdmVVc2VyU3R5bGVTaGVldHMpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6cmVtb3ZlQWxsVXNlckNvbnRl
bnQpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZUdyb3VwUHJv
eHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlR3JvdXBQcm94eTo6V2ViUGFnZUdyb3Vw
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlR3JvdXBQcm94eTo6dXNlckNvbnRlbnRD
b250cm9sbGVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZUdyb3VwUHJveHkuaDoKKwogMjAyMC0wMy0yNyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZWdpc3Rl
ckJsb2JVUkxPcHRpb25hbGx5RmlsZUJhY2tlZCBzaG91bGQgdmFsaWRhdGUgaXRzIHBhcmFtZXRl
cnMKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VHcm91cERhdGEuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VHcm91cERhdGEuY3BwCShyZXZp
c2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlR3JvdXBEYXRhLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzQsNyArMzQsNiBAQCB2b2lkIFdlYlBhZ2VHcm91cERhdGE6
OmVuY29kZShJUEM6OkVuY29kCiB7CiAgICAgZW5jb2RlciA8PCBpZGVudGlmaWVyOwogICAgIGVu
Y29kZXIgPDwgcGFnZUdyb3VwSUQ7Ci0gICAgZW5jb2RlciA8PCB1c2VyQ29udGVudENvbnRyb2xs
ZXJJZGVudGlmaWVyOwogfQogCiBPcHRpb25hbDxXZWJQYWdlR3JvdXBEYXRhPiBXZWJQYWdlR3Jv
dXBEYXRhOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQpAQCAtNDgsMTMgKzQ3LDggQEAg
T3B0aW9uYWw8V2ViUGFnZUdyb3VwRGF0YT4gV2ViUGFnZUdyb3VwRAogICAgIGRlY29kZXIgPj4g
cGFnZUdyb3VwSUQ7CiAgICAgaWYgKCFwYWdlR3JvdXBJRCkKICAgICAgICAgcmV0dXJuIFdURjo6
bnVsbG9wdDsKLSAgICAKLSAgICBPcHRpb25hbDxVc2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlm
aWVyPiB1c2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyOwotICAgIGRlY29kZXIgPj4gdXNl
ckNvbnRlbnRDb250cm9sbGVySWRlbnRpZmllcjsKLSAgICBpZiAoIXVzZXJDb250ZW50Q29udHJv
bGxlcklkZW50aWZpZXIpCi0gICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0gICAgCi0gICAg
cmV0dXJuIHt7IFdURk1vdmUoKmlkZW50aWZpZXIpLCAqcGFnZUdyb3VwSUQsICp1c2VyQ29udGVu
dENvbnRyb2xsZXJJZGVudGlmaWVyIH19OworICAgICAgICAKKyAgICByZXR1cm4ge3sgV1RGTW92
ZSgqaWRlbnRpZmllciksICpwYWdlR3JvdXBJRCB9fTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlR3JvdXBEYXRhLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUdyb3VwRGF0YS5oCShyZXZpc2lv
biAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlR3JvdXBEYXRhLmgJKHdv
cmtpbmcgY29weSkKQEAgLTQxLDggKzQxLDYgQEAgc3RydWN0IFdlYlBhZ2VHcm91cERhdGEgewog
CiAgICAgU3RyaW5nIGlkZW50aWZpZXI7CiAgICAgdWludDY0X3QgcGFnZUdyb3VwSUQ7Ci0KLSAg
ICBVc2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyIHVzZXJDb250ZW50Q29udHJvbGxlcklk
ZW50aWZpZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VHcm91cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZUdyb3VwLmNwcAkocmV2aXNpb24gMjU5MTQzKQorKysgU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZUdyb3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODUs
OCArODUsNiBAQCBXZWJQYWdlR3JvdXA6OldlYlBhZ2VHcm91cChjb25zdCBTdHJpbmcmCiAgICAg
LCBtX3ByZWZlcmVuY2VzKFdlYlByZWZlcmVuY2VzOjpjcmVhdGVXaXRoTGVnYWN5RGVmYXVsdHMo
bV9kYXRhLmlkZW50aWZpZXIsICIuV2ViS2l0MiIsICJXZWJLaXQyLiIpKQogICAgICwgbV91c2Vy
Q29udGVudENvbnRyb2xsZXIoV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk6OmNyZWF0ZSgp
KQogewotICAgIG1fZGF0YS51c2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyID0gbV91c2Vy
Q29udGVudENvbnRyb2xsZXItPmlkZW50aWZpZXIoKTsKLQogICAgIHdlYlBhZ2VHcm91cE1hcCgp
LnNldChtX2RhdGEucGFnZUdyb3VwSUQsIHRoaXMpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZS5jcHAJKHJldmlzaW9uIDI1OTE0MykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ3NSw0NSAr
NDc1LDYgQEAgYm9vbCBJbmplY3RlZEJ1bmRsZTo6aXNQcm9jZXNzaW5nVXNlckdlcwogICAgIHJl
dHVybiBVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCk7CiB9CiAK
LXZvaWQgSW5qZWN0ZWRCdW5kbGU6OmFkZFVzZXJTY3JpcHQoV2ViUGFnZUdyb3VwUHJveHkqIHBh
Z2VHcm91cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCogc2NyaXB0V29ybGQsIFN0cmluZyYm
IHNvdXJjZSwgU3RyaW5nJiYgdXJsLCBBUEk6OkFycmF5KiB3aGl0ZWxpc3QsIEFQSTo6QXJyYXkq
IGJsYWNrbGlzdCwgV2ViQ29yZTo6VXNlclNjcmlwdEluamVjdGlvblRpbWUgaW5qZWN0aW9uVGlt
ZSwgV2ViQ29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmplY3RlZEZyYW1lcykKLXsK
LSAgICBVc2VyU2NyaXB0IHVzZXJTY3JpcHQgeyBXVEZNb3ZlKHNvdXJjZSksIFVSTChVUkwoKSwg
dXJsKSwgd2hpdGVsaXN0ID8gd2hpdGVsaXN0LT50b1N0cmluZ1ZlY3RvcigpIDogVmVjdG9yPFN0
cmluZz4oKSwgYmxhY2tsaXN0ID8gYmxhY2tsaXN0LT50b1N0cmluZ1ZlY3RvcigpIDogVmVjdG9y
PFN0cmluZz4oKSwgaW5qZWN0aW9uVGltZSwgaW5qZWN0ZWRGcmFtZXMgfTsKLQotICAgIHBhZ2VH
cm91cC0+dXNlckNvbnRlbnRDb250cm9sbGVyKCkuYWRkVXNlclNjcmlwdCgqc2NyaXB0V29ybGQs
IFdURk1vdmUodXNlclNjcmlwdCkpOwotfQotCi12b2lkIEluamVjdGVkQnVuZGxlOjphZGRVc2Vy
U3R5bGVTaGVldChXZWJQYWdlR3JvdXBQcm94eSogcGFnZUdyb3VwLCBJbmplY3RlZEJ1bmRsZVNj
cmlwdFdvcmxkKiBzY3JpcHRXb3JsZCwgY29uc3QgU3RyaW5nJiBzb3VyY2UsIGNvbnN0IFN0cmlu
ZyYgdXJsLCBBUEk6OkFycmF5KiB3aGl0ZWxpc3QsIEFQSTo6QXJyYXkqIGJsYWNrbGlzdCwgV2Vi
Q29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmplY3RlZEZyYW1lcykKLXsKLSAgICBV
c2VyU3R5bGVTaGVldCB1c2VyU3R5bGVTaGVldHsgc291cmNlLCBVUkwoVVJMKCksIHVybCksIHdo
aXRlbGlzdCA/IHdoaXRlbGlzdC0+dG9TdHJpbmdWZWN0b3IoKSA6IFZlY3RvcjxTdHJpbmc+KCks
IGJsYWNrbGlzdCA/IGJsYWNrbGlzdC0+dG9TdHJpbmdWZWN0b3IoKSA6IFZlY3RvcjxTdHJpbmc+
KCksIGluamVjdGVkRnJhbWVzLCBVc2VyU3R5bGVVc2VyTGV2ZWwgfTsKLQotICAgIHBhZ2VHcm91
cC0+dXNlckNvbnRlbnRDb250cm9sbGVyKCkuYWRkVXNlclN0eWxlU2hlZXQoKnNjcmlwdFdvcmxk
LCBXVEZNb3ZlKHVzZXJTdHlsZVNoZWV0KSk7Ci19Ci0KLXZvaWQgSW5qZWN0ZWRCdW5kbGU6OnJl
bW92ZVVzZXJTY3JpcHQoV2ViUGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCwgSW5qZWN0ZWRCdW5k
bGVTY3JpcHRXb3JsZCogc2NyaXB0V29ybGQsIGNvbnN0IFN0cmluZyYgdXJsKQotewotICAgIHBh
Z2VHcm91cC0+dXNlckNvbnRlbnRDb250cm9sbGVyKCkucmVtb3ZlVXNlclNjcmlwdFdpdGhVUkwo
KnNjcmlwdFdvcmxkLCBVUkwoVVJMKCksIHVybCkpOwotfQotCi12b2lkIEluamVjdGVkQnVuZGxl
OjpyZW1vdmVVc2VyU3R5bGVTaGVldChXZWJQYWdlR3JvdXBQcm94eSogcGFnZUdyb3VwLCBJbmpl
Y3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiBzY3JpcHRXb3JsZCwgY29uc3QgU3RyaW5nJiB1cmwpCi17
Ci0gICAgcGFnZUdyb3VwLT51c2VyQ29udGVudENvbnRyb2xsZXIoKS5yZW1vdmVVc2VyU3R5bGVT
aGVldFdpdGhVUkwoKnNjcmlwdFdvcmxkLCBVUkwoVVJMKCksIHVybCkpOwotfQotCi12b2lkIElu
amVjdGVkQnVuZGxlOjpyZW1vdmVVc2VyU2NyaXB0cyhXZWJQYWdlR3JvdXBQcm94eSogcGFnZUdy
b3VwLCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiBzY3JpcHRXb3JsZCkKLXsKLSAgICBwYWdl
R3JvdXAtPnVzZXJDb250ZW50Q29udHJvbGxlcigpLnJlbW92ZVVzZXJTY3JpcHRzKCpzY3JpcHRX
b3JsZCk7Ci19Ci0KLXZvaWQgSW5qZWN0ZWRCdW5kbGU6OnJlbW92ZVVzZXJTdHlsZVNoZWV0cyhX
ZWJQYWdlR3JvdXBQcm94eSogcGFnZUdyb3VwLCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiBz
Y3JpcHRXb3JsZCkKLXsKLSAgICBwYWdlR3JvdXAtPnVzZXJDb250ZW50Q29udHJvbGxlcigpLnJl
bW92ZVVzZXJTdHlsZVNoZWV0cygqc2NyaXB0V29ybGQpOwotfQotCi12b2lkIEluamVjdGVkQnVu
ZGxlOjpyZW1vdmVBbGxVc2VyQ29udGVudChXZWJQYWdlR3JvdXBQcm94eSogcGFnZUdyb3VwKQot
ewotICAgIHBhZ2VHcm91cC0+dXNlckNvbnRlbnRDb250cm9sbGVyKCkucmVtb3ZlQWxsVXNlckNv
bnRlbnQoKTsKLX0KLQogdm9pZCBJbmplY3RlZEJ1bmRsZTo6Z2FyYmFnZUNvbGxlY3RKYXZhU2Ny
aXB0T2JqZWN0cygpCiB7CiAgICAgR0NDb250cm9sbGVyOjpzaW5nbGV0b24oKS5nYXJiYWdlQ29s
bGVjdE5vdygpOwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgJKHJldmlzaW9uIDI1OTE0MykKKysrIFNv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjQsMTUgKzEyNCw2IEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIEhh
c2hNYXA8dWludDY0X3QsIFN0cmluZz4gRG9jdW1lbnRJRFRvVVJMTWFwOwogICAgIERvY3VtZW50
SURUb1VSTE1hcCBsaXZlRG9jdW1lbnRVUkxzKFdlYlBhZ2VHcm91cFByb3h5KiwgYm9vbCBleGNs
dWRlRG9jdW1lbnRzSW5QYWdlR3JvdXBQYWdlcyk7CiAKLSAgICAvLyBVc2VyQ29udGVudCBBUEkK
LSAgICB2b2lkIGFkZFVzZXJTY3JpcHQoV2ViUGFnZUdyb3VwUHJveHkqLCBJbmplY3RlZEJ1bmRs
ZVNjcmlwdFdvcmxkKiwgU3RyaW5nJiYgc291cmNlLCBTdHJpbmcmJiB1cmwsIEFQSTo6QXJyYXkq
IHdoaXRlbGlzdCwgQVBJOjpBcnJheSogYmxhY2tsaXN0LCBXZWJDb3JlOjpVc2VyU2NyaXB0SW5q
ZWN0aW9uVGltZSwgV2ViQ29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyk7Ci0gICAgdm9p
ZCBhZGRVc2VyU3R5bGVTaGVldChXZWJQYWdlR3JvdXBQcm94eSosIEluamVjdGVkQnVuZGxlU2Ny
aXB0V29ybGQqLCBjb25zdCBTdHJpbmcmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiB1cmwsIEFQSTo6
QXJyYXkqIHdoaXRlbGlzdCwgQVBJOjpBcnJheSogYmxhY2tsaXN0LCBXZWJDb3JlOjpVc2VyQ29u
dGVudEluamVjdGVkRnJhbWVzKTsKLSAgICB2b2lkIHJlbW92ZVVzZXJTY3JpcHQoV2ViUGFnZUdy
b3VwUHJveHkqLCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiwgY29uc3QgU3RyaW5nJiB1cmwp
OwotICAgIHZvaWQgcmVtb3ZlVXNlclN0eWxlU2hlZXQoV2ViUGFnZUdyb3VwUHJveHkqLCBJbmpl
Y3RlZEJ1bmRsZVNjcmlwdFdvcmxkKiwgY29uc3QgU3RyaW5nJiB1cmwpOwotICAgIHZvaWQgcmVt
b3ZlVXNlclNjcmlwdHMoV2ViUGFnZUdyb3VwUHJveHkqLCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdv
cmxkKik7Ci0gICAgdm9pZCByZW1vdmVVc2VyU3R5bGVTaGVldHMoV2ViUGFnZUdyb3VwUHJveHkq
LCBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkKik7Ci0gICAgdm9pZCByZW1vdmVBbGxVc2VyQ29u
dGVudChXZWJQYWdlR3JvdXBQcm94eSopOwotCiAgICAgLy8gR2FyYmFnZSBjb2xsZWN0aW9uIEFQ
SQogICAgIHZvaWQgZ2FyYmFnZUNvbGxlY3RKYXZhU2NyaXB0T2JqZWN0cygpOwogICAgIHZvaWQg
Z2FyYmFnZUNvbGxlY3RKYXZhU2NyaXB0T2JqZWN0c09uQWx0ZXJuYXRlVGhyZWFkRm9yRGVidWdn
aW5nKGJvb2wgd2FpdFVudGlsRG9uZSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5jcHAJKHJldmlz
aW9uIDI1OTE0MykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk2LDM5ICs5NiwzMiBAQCBzaXpl
X3QgV0tCdW5kbGVHZXRKYXZhU2NyaXB0T2JqZWN0c0NvdW50CiAgICAgcmV0dXJuIFdlYktpdDo6
dG9JbXBsKGJ1bmRsZVJlZiktPmphdmFTY3JpcHRPYmplY3RzQ291bnQoKTsKIH0KIAotdm9pZCBX
S0J1bmRsZUFkZFVzZXJTY3JpcHQoV0tCdW5kbGVSZWYgYnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VH
cm91cFJlZiBwYWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGRS
ZWYsIFdLU3RyaW5nUmVmIHNvdXJjZVJlZiwgV0tVUkxSZWYgdXJsUmVmLCBXS0FycmF5UmVmIHdo
aXRlbGlzdFJlZiwgV0tBcnJheVJlZiBibGFja2xpc3RSZWYsIF9XS1VzZXJTY3JpcHRJbmplY3Rp
b25UaW1lIGluamVjdGlvblRpbWVSZWYsIFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmpl
Y3RlZEZyYW1lc1JlZikKK3ZvaWQgV0tCdW5kbGVBZGRVc2VyU2NyaXB0KFdLQnVuZGxlUmVmLCBX
S0J1bmRsZVBhZ2VHcm91cFJlZiwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiwgV0tTdHJpbmdSZWYs
IFdLVVJMUmVmLCBXS0FycmF5UmVmLCBXS0FycmF5UmVmLCBfV0tVc2VyU2NyaXB0SW5qZWN0aW9u
VGltZSwgV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzKQogewotICAgIFdlYktpdDo6dG9JbXBs
KGJ1bmRsZVJlZiktPmFkZFVzZXJTY3JpcHQoV2ViS2l0Ojp0b0ltcGwocGFnZUdyb3VwUmVmKSwg
V2ViS2l0Ojp0b0ltcGwoc2NyaXB0V29ybGRSZWYpLCBXZWJLaXQ6OnRvV1RGU3RyaW5nKHNvdXJj
ZVJlZiksIFdlYktpdDo6dG9XVEZTdHJpbmcodXJsUmVmKSwgV2ViS2l0Ojp0b0ltcGwod2hpdGVs
aXN0UmVmKSwgV2ViS2l0Ojp0b0ltcGwoYmxhY2tsaXN0UmVmKSwgV2ViS2l0Ojp0b1VzZXJTY3Jp
cHRJbmplY3Rpb25UaW1lKGluamVjdGlvblRpbWVSZWYpLCBXZWJLaXQ6OnRvVXNlckNvbnRlbnRJ
bmplY3RlZEZyYW1lcyhpbmplY3RlZEZyYW1lc1JlZikpOwogfQogCi12b2lkIFdLQnVuZGxlQWRk
VXNlclN0eWxlU2hlZXQoV0tCdW5kbGVSZWYgYnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VHcm91cFJl
ZiBwYWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGRSZWYsIFdL
U3RyaW5nUmVmIHNvdXJjZVJlZiwgV0tVUkxSZWYgdXJsUmVmLCBXS0FycmF5UmVmIHdoaXRlbGlz
dFJlZiwgV0tBcnJheVJlZiBibGFja2xpc3RSZWYsIFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1l
cyBpbmplY3RlZEZyYW1lc1JlZikKK3ZvaWQgV0tCdW5kbGVBZGRVc2VyU3R5bGVTaGVldChXS0J1
bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYsIFdL
U3RyaW5nUmVmLCBXS1VSTFJlZiwgV0tBcnJheVJlZiwgV0tBcnJheVJlZiwgV0tVc2VyQ29udGVu
dEluamVjdGVkRnJhbWVzKQogewotICAgIFdlYktpdDo6dG9JbXBsKGJ1bmRsZVJlZiktPmFkZFVz
ZXJTdHlsZVNoZWV0KFdlYktpdDo6dG9JbXBsKHBhZ2VHcm91cFJlZiksIFdlYktpdDo6dG9JbXBs
KHNjcmlwdFdvcmxkUmVmKSwgV2ViS2l0Ojp0b1dURlN0cmluZyhzb3VyY2VSZWYpLCBXZWJLaXQ6
OnRvV1RGU3RyaW5nKHVybFJlZiksIFdlYktpdDo6dG9JbXBsKHdoaXRlbGlzdFJlZiksIFdlYktp
dDo6dG9JbXBsKGJsYWNrbGlzdFJlZiksIFdlYktpdDo6dG9Vc2VyQ29udGVudEluamVjdGVkRnJh
bWVzKGluamVjdGVkRnJhbWVzUmVmKSk7CiB9CiAKLXZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU2Ny
aXB0KFdLQnVuZGxlUmVmIGJ1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3Vw
UmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkUmVmLCBXS1VSTFJlZiB1cmxS
ZWYpCit2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdChXS0J1bmRsZVJlZiwgV0tCdW5kbGVQ
YWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYsIFdLVVJMUmVmKQogewotICAgIFdl
YktpdDo6dG9JbXBsKGJ1bmRsZVJlZiktPnJlbW92ZVVzZXJTY3JpcHQoV2ViS2l0Ojp0b0ltcGwo
cGFnZUdyb3VwUmVmKSwgV2ViS2l0Ojp0b0ltcGwoc2NyaXB0V29ybGRSZWYpLCBXZWJLaXQ6OnRv
V1RGU3RyaW5nKHVybFJlZikpOwogfQogCi12b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclN0eWxlU2hl
ZXQoV0tCdW5kbGVSZWYgYnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXBS
ZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGRSZWYsIFdLVVJMUmVmIHVybFJl
ZikKK3ZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU3R5bGVTaGVldChXS0J1bmRsZVJlZiwgV0tCdW5k
bGVQYWdlR3JvdXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYsIFdLVVJMUmVmKQogewotICAg
IFdlYktpdDo6dG9JbXBsKGJ1bmRsZVJlZiktPnJlbW92ZVVzZXJTdHlsZVNoZWV0KFdlYktpdDo6
dG9JbXBsKHBhZ2VHcm91cFJlZiksIFdlYktpdDo6dG9JbXBsKHNjcmlwdFdvcmxkUmVmKSwgV2Vi
S2l0Ojp0b1dURlN0cmluZyh1cmxSZWYpKTsKIH0KIAotdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJT
Y3JpcHRzKFdLQnVuZGxlUmVmIGJ1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdy
b3VwUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkUmVmKQordm9pZCBXS0J1
bmRsZVJlbW92ZVVzZXJTY3JpcHRzKFdLQnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiwg
V0tCdW5kbGVTY3JpcHRXb3JsZFJlZikKIHsKLSAgICBXZWJLaXQ6OnRvSW1wbChidW5kbGVSZWYp
LT5yZW1vdmVVc2VyU2NyaXB0cyhXZWJLaXQ6OnRvSW1wbChwYWdlR3JvdXBSZWYpLCBXZWJLaXQ6
OnRvSW1wbChzY3JpcHRXb3JsZFJlZikpOwogfQogCi12b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclN0
eWxlU2hlZXRzKFdLQnVuZGxlUmVmIGJ1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFn
ZUdyb3VwUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkUmVmKQordm9pZCBX
S0J1bmRsZVJlbW92ZVVzZXJTdHlsZVNoZWV0cyhXS0J1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3Jv
dXBSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYpCiB7Ci0gICAgV2ViS2l0Ojp0b0ltcGwoYnVu
ZGxlUmVmKS0+cmVtb3ZlVXNlclN0eWxlU2hlZXRzKFdlYktpdDo6dG9JbXBsKHBhZ2VHcm91cFJl
ZiksIFdlYktpdDo6dG9JbXBsKHNjcmlwdFdvcmxkUmVmKSk7CiB9CiAKLXZvaWQgV0tCdW5kbGVS
ZW1vdmVBbGxVc2VyQ29udGVudChXS0J1bmRsZVJlZiBidW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdy
b3VwUmVmIHBhZ2VHcm91cFJlZikKK3ZvaWQgV0tCdW5kbGVSZW1vdmVBbGxVc2VyQ29udGVudChX
S0J1bmRsZVJlZiwgV0tCdW5kbGVQYWdlR3JvdXBSZWYpCiB7Ci0gICAgV2ViS2l0Ojp0b0ltcGwo
YnVuZGxlUmVmKS0+cmVtb3ZlQWxsVXNlckNvbnRlbnQoV2ViS2l0Ojp0b0ltcGwocGFnZUdyb3Vw
UmVmKSk7CiB9CiAKIHZvaWQgV0tCdW5kbGVPdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1
bm5lcihXS0J1bmRsZVJlZiBidW5kbGVSZWYsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91
cFJlZiwgV0tTdHJpbmdSZWYgcHJlZmVyZW5jZSwgYm9vbCBlbmFibGVkKQpJbmRleDogU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9jL1dLQnVuZGxlUGFnZS5jcHAJKHJldmlzaW9uIDI1OTE0MykKKysrIFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC00MCw2ICs0MCw3IEBACiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlTG9h
ZGVyQ2xpZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuaCIKKyNpbmNsdWRl
ICJJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkLmgiCiAjaW5jbHVkZSAiUGFnZUJhbm5lci5oIgog
I2luY2x1ZGUgIldLQVBJQ2FzdC5oIgogI2luY2x1ZGUgIldLQXJyYXkuaCIKQEAgLTc4OCw3ICs3
ODksMTIgQEAgYm9vbCBXS0J1bmRsZVBhZ2VJc1N1c3BlbmRlZChXS0J1bmRsZVBhZwogCiB2b2lk
IFdLQnVuZGxlUGFnZUFkZFVzZXJTY3JpcHQoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYsIFdLU3Ry
aW5nUmVmIHNvdXJjZSwgX1dLVXNlclNjcmlwdEluamVjdGlvblRpbWUgaW5qZWN0aW9uVGltZSwg
V0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGluamVjdGVkRnJhbWVzKQogewotICAgIFdlYktp
dDo6dG9JbXBsKHBhZ2VSZWYpLT5hZGRVc2VyU2NyaXB0KFdlYktpdDo6dG9XVEZTdHJpbmcoc291
cmNlKSwgV2ViS2l0Ojp0b1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMoaW5qZWN0ZWRGcmFtZXMp
LCBXZWJLaXQ6OnRvVXNlclNjcmlwdEluamVjdGlvblRpbWUoaW5qZWN0aW9uVGltZSkpOworICAg
IFdlYktpdDo6dG9JbXBsKHBhZ2VSZWYpLT5hZGRVc2VyU2NyaXB0KFdlYktpdDo6dG9XVEZTdHJp
bmcoc291cmNlKSwgV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkOjpub3JtYWxXb3Js
ZCgpLCBXZWJLaXQ6OnRvVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyhpbmplY3RlZEZyYW1lcyks
IFdlYktpdDo6dG9Vc2VyU2NyaXB0SW5qZWN0aW9uVGltZShpbmplY3Rpb25UaW1lKSk7Cit9CisK
K3ZvaWQgV0tCdW5kbGVQYWdlQWRkVXNlclNjcmlwdEluV29ybGQoV0tCdW5kbGVQYWdlUmVmIHBh
Z2UsIFdLU3RyaW5nUmVmIHNvdXJjZSwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3Js
ZCwgX1dLVXNlclNjcmlwdEluamVjdGlvblRpbWUgaW5qZWN0aW9uVGltZSwgV0tVc2VyQ29udGVu
dEluamVjdGVkRnJhbWVzIGluamVjdGVkRnJhbWVzKQoreworICAgIFdlYktpdDo6dG9JbXBsKHBh
Z2UpLT5hZGRVc2VyU2NyaXB0KFdlYktpdDo6dG9XVEZTdHJpbmcoc291cmNlKSwgKldlYktpdDo6
dG9JbXBsKHNjcmlwdFdvcmxkKSwgV2ViS2l0Ojp0b1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMo
aW5qZWN0ZWRGcmFtZXMpLCBXZWJLaXQ6OnRvVXNlclNjcmlwdEluamVjdGlvblRpbWUoaW5qZWN0
aW9uVGltZSkpOwogfQogCiB2b2lkIFdLQnVuZGxlUGFnZUFkZFVzZXJTdHlsZVNoZWV0KFdLQnVu
ZGxlUGFnZVJlZiBwYWdlUmVmLCBXS1N0cmluZ1JlZiBzb3VyY2UsIFdLVXNlckNvbnRlbnRJbmpl
Y3RlZEZyYW1lcyBpbmplY3RlZEZyYW1lcykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VQcml2YXRlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxl
UGFnZVByaXZhdGUuaAkocmV2aXNpb24gMjU5MTQzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZVByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMTE2LDYgKzExNiw3IEBAIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUGFnZVN0b3BF
eHRlbmRpbmcKIAogLy8gVXNlckNvbnRlbnQgQVBJIChjb21wYXRpYmxlIHdpdGggTW9kZXJuIEFQ
SSwgZm9yIFdLVFIpCiBXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0KFdL
QnVuZGxlUGFnZVJlZiBwYWdlLCBXS1N0cmluZ1JlZiBzb3VyY2UsIF9XS1VzZXJTY3JpcHRJbmpl
Y3Rpb25UaW1lIGluamVjdGlvblRpbWUsIFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmpl
Y3RlZEZyYW1lcyk7CitXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0SW5X
b3JsZChXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgc291cmNlLCBXS0J1bmRsZVNj
cmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkLCBfV0tVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSBpbmpl
Y3Rpb25UaW1lLCBXS1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpOwog
V0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlQWRkVXNlclN0eWxlU2hlZXQoV0tCdW5kbGVQYWdl
UmVmIHBhZ2UsIFdLU3RyaW5nUmVmIHNvdXJjZSwgV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVz
IGluamVjdGVkRnJhbWVzKTsKIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUGFnZVJlbW92ZUFsbFVz
ZXJDb250ZW50KFdLQnVuZGxlUGFnZVJlZiBwYWdlKTsKIApJbmRleDogU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUHJpdmF0ZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1
bmRsZVByaXZhdGUuaAkocmV2aXNpb24gMjU5MTQzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zMyw2ICszMyw3IEBACiAjZW5kaWYKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
QmFzZS5oPgorI2luY2x1ZGUgPFdlYktpdC9XS0RlcHJlY2F0ZWQuaD4KICNpbmNsdWRlIDxXZWJL
aXQvV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLVXNl
clNjcmlwdEluamVjdGlvblRpbWUuaD4KIApAQCAtNjksMTMgKzcwLDEzIEBAIFdLX0VYUE9SVCB2
b2lkIFdLQnVuZGxlU2V0QXN5bmNocm9ub3VzU3AKIFdLX0VYUE9SVCBXS0FycmF5UmVmIFdLQnVu
ZGxlR2V0TGl2ZURvY3VtZW50VVJMcyhXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdy
b3VwUmVmIHBhZ2VHcm91cCwgYm9vbCBleGNsdWRlRG9jdW1lbnRzSW5QYWdlR3JvdXBQYWdlcyk7
CiAKIC8vIFVzZXJDb250ZW50IEFQSQotV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVBZGRVc2VyU2Ny
aXB0KFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwLCBX
S0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkLCBXS1N0cmluZ1JlZiBzb3VyY2UsIFdL
VVJMUmVmIHVybCwgV0tBcnJheVJlZiB3aGl0ZWxpc3QsIFdLQXJyYXlSZWYgYmxhY2tsaXN0LCBf
V0tVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSBpbmplY3Rpb25UaW1lLCBXS1VzZXJDb250ZW50SW5q
ZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpOwotV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVBZGRV
c2VyU3R5bGVTaGVldChXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBh
Z2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3JsZCwgV0tTdHJpbmdSZWYg
c291cmNlLCBXS1VSTFJlZiB1cmwsIFdLQXJyYXlSZWYgd2hpdGVsaXN0LCBXS0FycmF5UmVmIGJs
YWNrbGlzdCwgV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGluamVjdGVkRnJhbWVzKTsKLVdL
X0VYUE9SVCB2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlwdChXS0J1bmRsZVJlZiBidW5kbGUs
IFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiBz
Y3JpcHRXb3JsZCwgV0tVUkxSZWYgdXJsKTsKLVdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUmVtb3Zl
VXNlclN0eWxlU2hlZXQoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VHcm91cFJlZiBw
YWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGQsIFdLVVJMUmVmIHVy
bCk7Ci1XS19FWFBPUlQgdm9pZCBXS0J1bmRsZVJlbW92ZVVzZXJTY3JpcHRzKFdLQnVuZGxlUmVm
IGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwLCBXS0J1bmRsZVNjcmlwdFdv
cmxkUmVmIHNjcmlwdFdvcmxkKTsKLVdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclN0
eWxlU2hlZXRzKFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdy
b3VwLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkKTsKLVdLX0VYUE9SVCB2b2lk
IFdLQnVuZGxlUmVtb3ZlQWxsVXNlckNvbnRlbnQoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRs
ZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXApOworV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVBZGRVc2Vy
U2NyaXB0KFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3Vw
LCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlwdFdvcmxkLCBXS1N0cmluZ1JlZiBzb3VyY2Us
IFdLVVJMUmVmIHVybCwgV0tBcnJheVJlZiB3aGl0ZWxpc3QsIFdLQXJyYXlSZWYgYmxhY2tsaXN0
LCBfV0tVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSBpbmplY3Rpb25UaW1lLCBXS1VzZXJDb250ZW50
SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpIFdLX0NfQVBJX0RFUFJFQ0FURURfV0lUSF9S
RVBMQUNFTUVOVChXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0KTsKK1dLX0VYUE9SVCB2b2lkIFdL
QnVuZGxlQWRkVXNlclN0eWxlU2hlZXQoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VH
cm91cFJlZiBwYWdlR3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgc2NyaXB0V29ybGQsIFdL
U3RyaW5nUmVmIHNvdXJjZSwgV0tVUkxSZWYgdXJsLCBXS0FycmF5UmVmIHdoaXRlbGlzdCwgV0tB
cnJheVJlZiBibGFja2xpc3QsIFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmplY3RlZEZy
YW1lcykgV0tfQ19BUElfREVQUkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5UKFdLQnVuZGxlUGFnZUFk
ZFVzZXJTdHlsZVNoZWV0KTsKK1dLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclNjcmlw
dChXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tC
dW5kbGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3JsZCwgV0tVUkxSZWYgdXJsKSBXS19DX0FQSV9E
RVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU3R5bGVTaGVldChX
S0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5k
bGVTY3JpcHRXb3JsZFJlZiBzY3JpcHRXb3JsZCwgV0tVUkxSZWYgdXJsKSBXS19DX0FQSV9ERVBS
RUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVSZW1vdmVVc2VyU2NyaXB0cyhXS0J1bmRs
ZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3Jp
cHRXb3JsZFJlZiBzY3JpcHRXb3JsZCkgV0tfQ19BUElfREVQUkVDQVRFRDsKK1dLX0VYUE9SVCB2
b2lkIFdLQnVuZGxlUmVtb3ZlVXNlclN0eWxlU2hlZXRzKFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tC
dW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHNjcmlw
dFdvcmxkKSBXS19DX0FQSV9ERVBSRUNBVEVEOworV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVSZW1v
dmVBbGxVc2VyQ29udGVudChXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZUdyb3VwUmVm
IHBhZ2VHcm91cCkgV0tfQ19BUElfREVQUkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5UKFdLQnVuZGxl
UGFnZVJlbW92ZUFsbFVzZXJDb250ZW50KTsKIAogLy8gTG9jYWwgc3RvcmFnZSBBUEkKIFdLX0VY
UE9SVCB2b2lkIFdLQnVuZGxlQ2xlYXJBbGxEYXRhYmFzZXMoV0tCdW5kbGVSZWYgYnVuZGxlKTsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShy
ZXZpc2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQxMCwxMSArNjQxMCwxMSBAQCB2b2lkIFdlYlBh
Z2U6OmltYWdlT3JNZWRpYURvY3VtZW50U2l6ZUNoCiAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpJbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpKTsKIH0KIAot
dm9pZCBXZWJQYWdlOjphZGRVc2VyU2NyaXB0KFN0cmluZyYmIHNvdXJjZSwgV2ViQ29yZTo6VXNl
ckNvbnRlbnRJbmplY3RlZEZyYW1lcyBpbmplY3RlZEZyYW1lcywgV2ViQ29yZTo6VXNlclNjcmlw
dEluamVjdGlvblRpbWUgaW5qZWN0aW9uVGltZSkKK3ZvaWQgV2ViUGFnZTo6YWRkVXNlclNjcmlw
dChTdHJpbmcmJiBzb3VyY2UsIEluamVjdGVkQnVuZGxlU2NyaXB0V29ybGQmIHdvcmxkLCBXZWJD
b3JlOjpVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGluamVjdGVkRnJhbWVzLCBXZWJDb3JlOjpV
c2VyU2NyaXB0SW5qZWN0aW9uVGltZSBpbmplY3Rpb25UaW1lKQogewogICAgIFdlYkNvcmU6OlVz
ZXJTY3JpcHQgdXNlclNjcmlwdCB7IFdURk1vdmUoc291cmNlKSwgVVJMKGFib3V0QmxhbmtVUkwo
KSksIFZlY3RvcjxTdHJpbmc+KCksIFZlY3RvcjxTdHJpbmc+KCksIGluamVjdGlvblRpbWUsIGlu
amVjdGVkRnJhbWVzIH07CiAKLSAgICBtX3VzZXJDb250ZW50Q29udHJvbGxlci0+YWRkVXNlclNj
cmlwdChJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkOjpub3JtYWxXb3JsZCgpLCBXVEZNb3ZlKHVz
ZXJTY3JpcHQpKTsKKyAgICBtX3VzZXJDb250ZW50Q29udHJvbGxlci0+YWRkVXNlclNjcmlwdCh3
b3JsZCwgV1RGTW92ZSh1c2VyU2NyaXB0KSk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6YWRkVXNlclN0
eWxlU2hlZXQoY29uc3QgU3RyaW5nJiBzb3VyY2UsIFdlYkNvcmU6OlVzZXJDb250ZW50SW5qZWN0
ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5oCShyZXZpc2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTExMzMsNyArMTEz
Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lu
cyhjb25zdCBTdHJpbmcmIGRldGFpbHMsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNv
cmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJik7CiAj
ZW5kaWYKIAotICAgIHZvaWQgYWRkVXNlclNjcmlwdChTdHJpbmcmJiBzb3VyY2UsIFdlYkNvcmU6
OlVzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMsIFdlYkNvcmU6OlVzZXJTY3JpcHRJbmplY3Rpb25U
aW1lKTsKKyAgICB2b2lkIGFkZFVzZXJTY3JpcHQoU3RyaW5nJiYgc291cmNlLCBJbmplY3RlZEJ1
bmRsZVNjcmlwdFdvcmxkJiwgV2ViQ29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcywgV2Vi
Q29yZTo6VXNlclNjcmlwdEluamVjdGlvblRpbWUpOwogICAgIHZvaWQgYWRkVXNlclN0eWxlU2hl
ZXQoY29uc3QgU3RyaW5nJiBzb3VyY2UsIFdlYkNvcmU6OlVzZXJDb250ZW50SW5qZWN0ZWRGcmFt
ZXMpOwogICAgIHZvaWQgcmVtb3ZlQWxsVXNlckNvbnRlbnQoKTsKIApJbmRleDogU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZUdyb3VwUHJveHkuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VHcm91cFByb3h5LmNw
cAkocmV2aXNpb24gMjU5MTQzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZUdyb3VwUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCw3ICs0OCw2IEBAIFJl
ZjxXZWJQYWdlR3JvdXBQcm94eT4gV2ViUGFnZUdyb3VwUHJveHkKIFdlYlBhZ2VHcm91cFByb3h5
OjpXZWJQYWdlR3JvdXBQcm94eShjb25zdCBXZWJQYWdlR3JvdXBEYXRhJiBkYXRhKQogICAgIDog
bV9kYXRhKGRhdGEpCiAgICAgLCBtX3BhZ2VHcm91cChXZWJDb3JlOjpQYWdlR3JvdXA6OnBhZ2VH
cm91cChtX2RhdGEuaWRlbnRpZmllcikpCi0gICAgLCBtX3VzZXJDb250ZW50Q29udHJvbGxlcihX
ZWJVc2VyQ29udGVudENvbnRyb2xsZXI6OmdldE9yQ3JlYXRlKG1fZGF0YS51c2VyQ29udGVudENv
bnRyb2xsZXJJZGVudGlmaWVyKSkKIHsKIH0KIApAQCAtNTYsOSArNTUsNCBAQCBXZWJQYWdlR3Jv
dXBQcm94eTo6fldlYlBhZ2VHcm91cFByb3h5KCkKIHsKIH0KIAotV2ViVXNlckNvbnRlbnRDb250
cm9sbGVyJiBXZWJQYWdlR3JvdXBQcm94eTo6dXNlckNvbnRlbnRDb250cm9sbGVyKCkKLXsKLSAg
ICByZXR1cm4gbV91c2VyQ29udGVudENvbnRyb2xsZXI7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZUdyb3Vw
UHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlR3JvdXBQcm94eS5oCShyZXZpc2lvbiAyNTkxNDMpCisrKyBTb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlR3JvdXBQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC00
OCwxNCArNDgsMTEgQEAgcHVibGljOgogICAgIFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyIGxv
Y2FsU3RvcmFnZU5hbWVzcGFjZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtYWtlT2JqZWN0
SWRlbnRpZmllcjxTdG9yYWdlTmFtZXNwYWNlSWRlbnRpZmllclR5cGU+KHBhZ2VHcm91cElEKCkp
OyB9CiAgICAgV2ViQ29yZTo6UGFnZUdyb3VwKiBjb3JlUGFnZUdyb3VwKCkgY29uc3QgeyByZXR1
cm4gbV9wYWdlR3JvdXA7IH0KIAotICAgIFdlYlVzZXJDb250ZW50Q29udHJvbGxlciYgdXNlckNv
bnRlbnRDb250cm9sbGVyKCk7Ci0KIHByaXZhdGU6CiAgICAgV2ViUGFnZUdyb3VwUHJveHkoY29u
c3QgV2ViUGFnZUdyb3VwRGF0YSYpOwogCiAgICAgV2ViUGFnZUdyb3VwRGF0YSBtX2RhdGE7CiAg
ICAgV2ViQ29yZTo6UGFnZUdyb3VwKiBtX3BhZ2VHcm91cDsKLSAgICBSZWY8V2ViVXNlckNvbnRl
bnRDb250cm9sbGVyPiBtX3VzZXJDb250ZW50Q29udHJvbGxlcjsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdApJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0No
YW5nZUxvZwkocmV2aXNpb24gMjU5MTQ5KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMjcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBEZXByZWNhdGUgaW5qZWN0ZWQgYnVuZGxl
IHBhZ2UgZ3JvdXAgU1BJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDk2ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RPTVdpbmRvd0V4dGVuc2lvbkJh
c2ljX0J1bmRsZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpET01XaW5kb3dFeHRlbnNp
b25CYXNpYzo6ZGlkQ3JlYXRlUGFnZSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpET01XaW5k
b3dFeHRlbnNpb25CYXNpYzo6aW5pdGlhbGl6ZSk6IERlbGV0ZWQuCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQvRE9NV2luZG93RXh0ZW5zaW9uTm9DYWNoZV9CdW5kbGUuY3Bw
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6RE9NV2luZG93RXh0ZW5zaW9uTm9DYWNoZTo6ZGlk
Q3JlYXRlUGFnZSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpET01XaW5kb3dFeHRlbnNpb25O
b0NhY2hlOjppbml0aWFsaXplKTogRGVsZXRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdC9Eb2N1bWVudFN0YXJ0VXNlclNjcmlwdEFsZXJ0Q3Jhc2hfQnVuZGxlLmNwcDoK
KyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OkRvY3VtZW50U3RhcnRVc2VyU2NyaXB0QWxlcnRDcmFz
aFRlc3Q6OmRpZENyZWF0ZVBhZ2UpOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6RG9jdW1lbnRT
dGFydFVzZXJTY3JpcHRBbGVydENyYXNoVGVzdDo6aW5pdGlhbGl6ZSk6IERlbGV0ZWQuCisgICAg
ICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRCdW5kbGVEaXNhYmxlT3Zl
cnJpZGVCdWlsdGluc0JlaGF2aW9yX0J1bmRsZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJ
OjpJbmplY3RlZEJ1bmRsZU5vRGlzYWJsZU92ZXJyaWRlQnVpbHRpbnNCZWhhdmlvclRlc3Q6Omlu
aXRpYWxpemUpOiBEZWxldGVkLgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6SW5qZWN0ZWRCdW5k
bGVEaXNhYmxlT3ZlcnJpZGVCdWlsdGluc0JlaGF2aW9yVGVzdDo6aW5pdGlhbGl6ZSk6IERlbGV0
ZWQuCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRCdW5kbGVN
YWtlQWxsU2hhZG93Um9vdHNPcGVuX0J1bmRsZS5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJ
OjpJbmplY3RlZEJ1bmRsZU1ha2VBbGxTaGFkb3dSb290T3BlblRlc3Q6OmRpZENyZWF0ZVBhZ2Up
OgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6SW5qZWN0ZWRCdW5kbGVNYWtlQWxsU2hhZG93Um9v
dE9wZW5UZXN0Ojppbml0aWFsaXplKTogRGVsZXRlZC4KKwogMjAyMC0wMy0yNyAgUGhpbGlwcGUg
Tm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0ZsYXRwYWsgU0RLXSBB
bGxvdyBwYXNzaW5nIGdzdC1idWlsZCBNZXNvbiBvcHRpb25zCkluZGV4OiBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9ET01XaW5kb3dFeHRlbnNpb25CYXNpY19CdW5kbGUuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RPTVdpbmRvd0V4
dGVuc2lvbkJhc2ljX0J1bmRsZS5jcHAJKHJldmlzaW9uIDI1OTE0MykKKysrIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RPTVdpbmRvd0V4dGVuc2lvbkJhc2ljX0J1bmRsZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5k
bGVGcmFtZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2UuaD4KICNpbmNsdWRlIDxX
ZWJLaXQvV0tCdW5kbGVQYWdlR3JvdXAuaD4KKyNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdl
UHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVByaXZhdGUuaD4KICNpbmNsdWRl
IDxXZWJLaXQvV0tCdW5kbGVTY3JpcHRXb3JsZC5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1JldGFp
blB0ci5oPgpAQCAtNjgsOSArNjksOCBAQCBjbGFzcyBET01XaW5kb3dFeHRlbnNpb25CYXNpYyA6
IHB1YmxpYyBJCiBwdWJsaWM6CiAgICAgRE9NV2luZG93RXh0ZW5zaW9uQmFzaWMoY29uc3Qgc3Rk
OjpzdHJpbmcmIGlkZW50aWZpZXIpOwogICAgIAotICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXpl
KFdLQnVuZGxlUmVmLCBXS1R5cGVSZWYgdXNlckRhdGEpOwotICAgIHZpcnR1YWwgdm9pZCBkaWRD
cmVhdGVQYWdlKFdLQnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VSZWYpOwotICAgIHZpcnR1YWwgdm9p
ZCB3aWxsRGVzdHJveVBhZ2UoV0tCdW5kbGVSZWYsIFdLQnVuZGxlUGFnZVJlZik7CisgICAgdm9p
ZCBkaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VSZWYpIG92ZXJyaWRlOwor
ICAgIHZvaWQgd2lsbERlc3Ryb3lQYWdlKFdLQnVuZGxlUmVmLCBXS0J1bmRsZVBhZ2VSZWYpIG92
ZXJyaWRlOwogICAgIAogICAgIHZvaWQgZ2xvYmFsT2JqZWN0SXNBdmFpbGFibGVGb3JGcmFtZShX
S0J1bmRsZUZyYW1lUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmKTsKICAgICB2b2lkIHdpbGxE
aXNjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXS0J1bmRsZURPTVdp
bmRvd0V4dGVuc2lvblJlZik7CkBAIC0xNDIsMTkgKzE0MiwxMyBAQCB2b2lkIERPTVdpbmRvd0V4
dGVuc2lvbkJhc2ljOjpzZW5kRXh0ZW5zCiAgICAgV0tCdW5kbGVQb3N0TWVzc2FnZShtX2J1bmRs
ZSwgbWVzc2FnZU5hbWUuZ2V0KCksIG1lc3NhZ2VCb2R5LmdldCgpKTsKIH0KIAotdm9pZCBET01X
aW5kb3dFeHRlbnNpb25CYXNpYzo6aW5pdGlhbGl6ZShXS0J1bmRsZVJlZiBidW5kbGUsIFdLVHlw
ZVJlZiB1c2VyRGF0YSkKLXsKLSAgICBhc3NlcnQoV0tHZXRUeXBlSUQodXNlckRhdGEpID09IFdL
QnVuZGxlUGFnZUdyb3VwR2V0VHlwZUlEKCkpOwotICAgIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBh
Z2VHcm91cCA9IHN0YXRpY19jYXN0PFdLQnVuZGxlUGFnZUdyb3VwUmVmPih1c2VyRGF0YSk7Ci0K
LSAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gc291cmNlID0gYWRvcHRXSyhXS1N0cmluZ0Ny
ZWF0ZVdpdGhVVEY4Q1N0cmluZygiYWxlcnQoJ1VuaW1wb3J0YW50IGFsZXJ0Jyk7IikpOwotICAg
IFdLQnVuZGxlQWRkVXNlclNjcmlwdChidW5kbGUsIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRX
b3JsZENyZWF0ZVdvcmxkKCksIHNvdXJjZS5nZXQoKSwgMCwgMCwgMCwga1dLSW5qZWN0QXREb2N1
bWVudFN0YXJ0LCBrV0tJbmplY3RJbkFsbEZyYW1lcyk7Ci19Ci0KIHZvaWQgRE9NV2luZG93RXh0
ZW5zaW9uQmFzaWM6OmRpZENyZWF0ZVBhZ2UoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBh
Z2VSZWYgcGFnZSkKIHsgICAgCiAgICAgbV9idW5kbGUgPSBidW5kbGU7CiAKKyAgICBhdXRvIHNv
dXJjZSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoImFsZXJ0KCdVbmlt
cG9ydGFudCBhbGVydCcpOyIpKTsKKyAgICBXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0SW5Xb3Js
ZChwYWdlLCBzb3VyY2UuZ2V0KCksIFdLQnVuZGxlU2NyaXB0V29ybGRDcmVhdGVXb3JsZCgpLCBr
V0tJbmplY3RBdERvY3VtZW50U3RhcnQsIGtXS0luamVjdEluQWxsRnJhbWVzKTsKKyAgICAKICAg
ICBXS0J1bmRsZVBhZ2VMb2FkZXJDbGllbnRWMSBwYWdlTG9hZGVyQ2xpZW50OwogICAgIG1lbXNl
dCgmcGFnZUxvYWRlckNsaWVudCwgMCwgc2l6ZW9mKHBhZ2VMb2FkZXJDbGllbnQpKTsKICAgICAK
SW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RPTVdpbmRvd0V4dGVuc2lv
bk5vQ2FjaGVfQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdC9ET01XaW5kb3dFeHRlbnNpb25Ob0NhY2hlX0J1bmRsZS5jcHAJKHJldmlzaW9u
IDI1OTE0MykKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RPTVdpbmRvd0V4
dGVuc2lvbk5vQ2FjaGVfQnVuZGxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsNiArMzIsNyBA
QAogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZUZyYW1lLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dL
QnVuZGxlUGFnZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2VHcm91cC5oPgorI2lu
Y2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2VQcml2YXRlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dL
QnVuZGxlUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVNjcmlwdFdvcmxkLmg+
CiAjaW5jbHVkZSA8V2ViS2l0L1dLUmV0YWluUHRyLmg+CkBAIC02Nyw5ICs2OCw4IEBAIGNsYXNz
IERPTVdpbmRvd0V4dGVuc2lvbk5vQ2FjaGUgOiBwdWJsaWMKIHB1YmxpYzoKICAgICBET01XaW5k
b3dFeHRlbnNpb25Ob0NhY2hlKGNvbnN0IHN0ZDo6c3RyaW5nJiBpZGVudGlmaWVyKTsKIAotICAg
IHZpcnR1YWwgdm9pZCBpbml0aWFsaXplKFdLQnVuZGxlUmVmLCBXS1R5cGVSZWYgdXNlckRhdGEp
OwotICAgIHZpcnR1YWwgdm9pZCBkaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmLCBXS0J1bmRsZVBh
Z2VSZWYpOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsRGVzdHJveVBhZ2UoV0tCdW5kbGVSZWYsIFdL
QnVuZGxlUGFnZVJlZik7CisgICAgdm9pZCBkaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmLCBXS0J1
bmRsZVBhZ2VSZWYpIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbERlc3Ryb3lQYWdlKFdLQnVuZGxl
UmVmLCBXS0J1bmRsZVBhZ2VSZWYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBnbG9iYWxPYmplY3RJ
c0F2YWlsYWJsZUZvckZyYW1lKFdLQnVuZGxlRnJhbWVSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRS
ZWYpOwogICAgIHZvaWQgd2lsbERpc2Nvbm5lY3RET01XaW5kb3dFeHRlbnNpb25Gcm9tR2xvYmFs
T2JqZWN0KFdLQnVuZGxlRE9NV2luZG93RXh0ZW5zaW9uUmVmKTsKQEAgLTE0OSwxOSArMTQ5LDEz
IEBAIHZvaWQgRE9NV2luZG93RXh0ZW5zaW9uTm9DYWNoZTo6c2VuZEV4dGUKICAgICBXS0J1bmRs
ZVBvc3RNZXNzYWdlKG1fYnVuZGxlLCBtZXNzYWdlTmFtZS5nZXQoKSwgbWVzc2FnZUJvZHkuZ2V0
KCkpOwogfQogCi12b2lkIERPTVdpbmRvd0V4dGVuc2lvbk5vQ2FjaGU6OmluaXRpYWxpemUoV0tC
dW5kbGVSZWYgYnVuZGxlLCBXS1R5cGVSZWYgdXNlckRhdGEpCi17Ci0gICAgYXNzZXJ0KFdLR2V0
VHlwZUlEKHVzZXJEYXRhKSA9PSBXS0J1bmRsZVBhZ2VHcm91cEdldFR5cGVJRCgpKTsKLSAgICBX
S0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAgPSBzdGF0aWNfY2FzdDxXS0J1bmRsZVBhZ2VH
cm91cFJlZj4odXNlckRhdGEpOwotCi0gICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHNvdXJj
ZSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoImFsZXJ0KCdVbmltcG9y
dGFudCBhbGVydCcpOyIpKTsKLSAgICBXS0J1bmRsZUFkZFVzZXJTY3JpcHQoYnVuZGxlLCBwYWdl
R3JvdXAsIFdLQnVuZGxlU2NyaXB0V29ybGRDcmVhdGVXb3JsZCgpLCBzb3VyY2UuZ2V0KCksIDAs
IDAsIDAsIGtXS0luamVjdEF0RG9jdW1lbnRTdGFydCwga1dLSW5qZWN0SW5BbGxGcmFtZXMpOwot
fQotCiB2b2lkIERPTVdpbmRvd0V4dGVuc2lvbk5vQ2FjaGU6OmRpZENyZWF0ZVBhZ2UoV0tCdW5k
bGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VSZWYgcGFnZSkKIHsKICAgICBtX2J1bmRsZSA9IGJ1
bmRsZTsKIAorICAgIGF1dG8gc291cmNlID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4
Q1N0cmluZygiYWxlcnQoJ1VuaW1wb3J0YW50IGFsZXJ0Jyk7IikpOworICAgIFdLQnVuZGxlUGFn
ZUFkZFVzZXJTY3JpcHRJbldvcmxkKHBhZ2UsIHNvdXJjZS5nZXQoKSwgV0tCdW5kbGVTY3JpcHRX
b3JsZENyZWF0ZVdvcmxkKCksIGtXS0luamVjdEF0RG9jdW1lbnRTdGFydCwga1dLSW5qZWN0SW5B
bGxGcmFtZXMpOworCiAgICAgV0tCdW5kbGVQYWdlTG9hZGVyQ2xpZW50VjcgcGFnZUxvYWRlckNs
aWVudDsKICAgICBtZW1zZXQoJnBhZ2VMb2FkZXJDbGllbnQsIDAsIHNpemVvZihwYWdlTG9hZGVy
Q2xpZW50KSk7CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RvY3Vt
ZW50U3RhcnRVc2VyU2NyaXB0QWxlcnRDcmFzaF9CdW5kbGUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0RvY3VtZW50U3RhcnRVc2VyU2NyaXB0QWxl
cnRDcmFzaF9CdW5kbGUuY3BwCShyZXZpc2lvbiAyNTkxNDMpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdC9Eb2N1bWVudFN0YXJ0VXNlclNjcmlwdEFsZXJ0Q3Jhc2hfQnVuZGxl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogCiAjaW5jbHVkZSAiSW5qZWN0
ZWRCdW5kbGVUZXN0LmgiCiAjaW5jbHVkZSA8V2ViS2l0L1dLQnVuZGxlUGFnZUdyb3VwLmg+Cisj
aW5jbHVkZSA8V2ViS2l0L1dLQnVuZGxlUGFnZVByaXZhdGUuaD4KICNpbmNsdWRlIDxXZWJLaXQv
V0tCdW5kbGVQcml2YXRlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLQnVuZGxlU2NyaXB0V29ybGQu
aD4KICNpbmNsdWRlIDxXZWJLaXQvV0tSZXRhaW5QdHIuaD4KQEAgLTQzLDEzICs0NCwxMCBAQCBw
dWJsaWM6CiAgICAgewogICAgIH0KIAotICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXplKFdLQnVu
ZGxlUmVmIGJ1bmRsZSwgV0tUeXBlUmVmIHVzZXJEYXRhKQorICAgIHZvaWQgZGlkQ3JlYXRlUGFn
ZShXS0J1bmRsZVJlZiwgV0tCdW5kbGVQYWdlUmVmIHBhZ2UpIG92ZXJyaWRlCiAgICAgewotICAg
ICAgICBhc3NlcnQoV0tHZXRUeXBlSUQodXNlckRhdGEpID09IFdLQnVuZGxlUGFnZUdyb3VwR2V0
VHlwZUlEKCkpOwotICAgICAgICBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAgPSBzdGF0
aWNfY2FzdDxXS0J1bmRsZVBhZ2VHcm91cFJlZj4odXNlckRhdGEpOwotCiAgICAgICAgIFdLUmV0
YWluUHRyPFdLU3RyaW5nUmVmPiBzb3VyY2UgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVU
RjhDU3RyaW5nKCJhbGVydCgnYW4gYWxlcnQnKTsiKSk7Ci0gICAgICAgIFdLQnVuZGxlQWRkVXNl
clNjcmlwdChidW5kbGUsIHBhZ2VHcm91cCwgV0tCdW5kbGVTY3JpcHRXb3JsZE5vcm1hbFdvcmxk
KCksIHNvdXJjZS5nZXQoKSwgMCwgMCwgMCwga1dLSW5qZWN0QXREb2N1bWVudFN0YXJ0LCBrV0tJ
bmplY3RJbkFsbEZyYW1lcyk7CisgICAgICAgIFdLQnVuZGxlUGFnZUFkZFVzZXJTY3JpcHQocGFn
ZSwgc291cmNlLmdldCgpLCBrV0tJbmplY3RBdERvY3VtZW50U3RhcnQsIGtXS0luamVjdEluQWxs
RnJhbWVzKTsKICAgICB9CiB9OwogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9JbmplY3RlZEJ1bmRsZURpc2FibGVPdmVycmlkZUJ1aWx0aW5zQmVoYXZpb3JfQnVuZGxl
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9Jbmpl
Y3RlZEJ1bmRsZURpc2FibGVPdmVycmlkZUJ1aWx0aW5zQmVoYXZpb3JfQnVuZGxlLmNwcAkocmV2
aXNpb24gMjU5MTQzKQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0
ZWRCdW5kbGVEaXNhYmxlT3ZlcnJpZGVCdWlsdGluc0JlaGF2aW9yX0J1bmRsZS5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVGVz
dC5oIgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2VHcm91cC5oPgorI2luY2x1ZGUgPFdl
YktpdC9XS0J1bmRsZVBhZ2VQcml2YXRlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLQnVuZGxlUHJp
dmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVNjcmlwdFdvcmxkLmg+CiAjaW5jbHVk
ZSA8V2ViS2l0L1dLUmV0YWluUHRyLmg+CkBAIC00MiwyMiArNDMsMTkgQEAgcHVibGljOgogICAg
ICAgICA6IEluamVjdGVkQnVuZGxlVGVzdChpZGVudGlmaWVyKQogICAgIHsgfQogCi0gICAgdmly
dHVhbCB2b2lkIGluaXRpYWxpemUoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS1R5cGVSZWYgdXNlckRh
dGEpCisgICAgdm9pZCBkaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQ
YWdlUmVmIHBhZ2UpIG92ZXJyaWRlCiAgICAgewotICAgICAgICBhc3NlcnQoV0tHZXRUeXBlSUQo
dXNlckRhdGEpID09IFdLQnVuZGxlUGFnZUdyb3VwR2V0VHlwZUlEKCkpOwotICAgICAgICBXS0J1
bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAgPSBzdGF0aWNfY2FzdDxXS0J1bmRsZVBhZ2VHcm91
cFJlZj4odXNlckRhdGEpOwotCi0gICAgICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBzb3Vy
Y2UgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKAorICAgICAgICBhdXRv
IHNvdXJjZSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoCiAgICAgICAg
ICAgICAid2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgpIHtcbiIKICAgICAgICAgICAgICIgICAg
Y29uc3QgZm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0JykucGFyZW50Tm9kZTtc
biIKICAgICAgICAgICAgICIgICAgYWxlcnQoZm9ybS50YWdOYW1lICE9ICdGT1JNJyA/ICdQQVNT
OiBbT3ZlcnJpZGVCdWlsdGluc10gd2FzIG5vdCBkaXNhYmxlZCcgOiAnRkFJTDogW092ZXJyaWRl
QnVpbHRpbnNdIHdhcyBkaXNhYmxlZCcpO1xuIgogICAgICAgICAgICAgIn1cbiIpKTsKIAogICAg
ICAgICBhdXRvIG5vcm1hbFdvcmxkID0gV0tCdW5kbGVTY3JpcHRXb3JsZE5vcm1hbFdvcmxkKCk7
Ci0gICAgICAgIFdLQnVuZGxlQWRkVXNlclNjcmlwdChidW5kbGUsIHBhZ2VHcm91cCwgbm9ybWFs
V29ybGQsIHNvdXJjZS5nZXQoKSwgMCwgMCwgMCwga1dLSW5qZWN0QXREb2N1bWVudEVuZCwga1dL
SW5qZWN0SW5BbGxGcmFtZXMpOworICAgICAgICBXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0SW5X
b3JsZChwYWdlLCBzb3VyY2UuZ2V0KCksIG5vcm1hbFdvcmxkLCBrV0tJbmplY3RBdERvY3VtZW50
RW5kLCBrV0tJbmplY3RJbkFsbEZyYW1lcyk7CiAKICAgICAgICAgYXV0byBpc29sYXRlZFdvcmxk
ID0gV0tCdW5kbGVTY3JpcHRXb3JsZENyZWF0ZVdvcmxkKCk7Ci0gICAgICAgIFdLQnVuZGxlQWRk
VXNlclNjcmlwdChidW5kbGUsIHBhZ2VHcm91cCwgaXNvbGF0ZWRXb3JsZCwgc291cmNlLmdldCgp
LCAwLCAwLCAwLCBrV0tJbmplY3RBdERvY3VtZW50RW5kLCBrV0tJbmplY3RJbkFsbEZyYW1lcyk7
CisgICAgICAgIFdLQnVuZGxlUGFnZUFkZFVzZXJTY3JpcHRJbldvcmxkKHBhZ2UsIHNvdXJjZS5n
ZXQoKSwgaXNvbGF0ZWRXb3JsZCwga1dLSW5qZWN0QXREb2N1bWVudEVuZCwga1dLSW5qZWN0SW5B
bGxGcmFtZXMpOwogICAgIH0KIH07CiAKQEAgLTY3LDEyICs2NSw5IEBAIHB1YmxpYzoKICAgICAg
ICAgOiBJbmplY3RlZEJ1bmRsZVRlc3QoaWRlbnRpZmllcikKICAgICB7IH0KIAotICAgIHZpcnR1
YWwgdm9pZCBpbml0aWFsaXplKFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tUeXBlUmVmIHVzZXJEYXRh
KQorICAgIHZvaWQgZGlkQ3JlYXRlUGFnZShXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFn
ZVJlZiBwYWdlKSBvdmVycmlkZQogICAgIHsKLSAgICAgICAgYXNzZXJ0KFdLR2V0VHlwZUlEKHVz
ZXJEYXRhKSA9PSBXS0J1bmRsZVBhZ2VHcm91cEdldFR5cGVJRCgpKTsKLSAgICAgICAgV0tCdW5k
bGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwID0gc3RhdGljX2Nhc3Q8V0tCdW5kbGVQYWdlR3JvdXBS
ZWY+KHVzZXJEYXRhKTsKLQotICAgICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gc291cmNl
ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygKKyAgICAgICAgYXV0byBz
b3VyY2UgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKAogICAgICAgICAg
ICAgIndpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7XG4iCiAgICAgICAgICAgICAiICAgIGNv
bnN0IGZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdCcpLnBhcmVudE5vZGU7XG4i
CiAgICAgICAgICAgICAiICAgIGFsZXJ0KGZvcm0udGFnTmFtZSA9PT0gJ0ZPUk0nID8gJ1BBU1M6
IFtPdmVycmlkZUJ1aWx0aW5zXSB3YXMgZGlzYWJsZWQnIDogJ0ZBSUw6IFtPdmVycmlkZUJ1aWx0
aW5zXSB3YXMgbm90IGRpc2FibGVkJyk7XG4iCkBAIC04MCwxMSArNzUsMTEgQEAgcHVibGljOgog
CiAgICAgICAgIGF1dG8gbm9ybWFsV29ybGQgPSBXS0J1bmRsZVNjcmlwdFdvcmxkTm9ybWFsV29y
bGQoKTsKICAgICAgICAgV0tCdW5kbGVTY3JpcHRXb3JsZERpc2FibGVPdmVycmlkZUJ1aWx0aW5z
QmVoYXZpb3Iobm9ybWFsV29ybGQpOwotICAgICAgICBXS0J1bmRsZUFkZFVzZXJTY3JpcHQoYnVu
ZGxlLCBwYWdlR3JvdXAsIG5vcm1hbFdvcmxkLCBzb3VyY2UuZ2V0KCksIDAsIDAsIDAsIGtXS0lu
amVjdEF0RG9jdW1lbnRFbmQsIGtXS0luamVjdEluQWxsRnJhbWVzKTsKKyAgICAgICAgV0tCdW5k
bGVQYWdlQWRkVXNlclNjcmlwdEluV29ybGQocGFnZSwgc291cmNlLmdldCgpLCBub3JtYWxXb3Js
ZCwga1dLSW5qZWN0QXREb2N1bWVudEVuZCwga1dLSW5qZWN0SW5BbGxGcmFtZXMpOwogCiAgICAg
ICAgIGF1dG8gaXNvbGF0ZWRXb3JsZCA9IFdLQnVuZGxlU2NyaXB0V29ybGRDcmVhdGVXb3JsZCgp
OwogICAgICAgICBXS0J1bmRsZVNjcmlwdFdvcmxkRGlzYWJsZU92ZXJyaWRlQnVpbHRpbnNCZWhh
dmlvcihpc29sYXRlZFdvcmxkKTsKLSAgICAgICAgV0tCdW5kbGVBZGRVc2VyU2NyaXB0KGJ1bmRs
ZSwgcGFnZUdyb3VwLCBpc29sYXRlZFdvcmxkLCBzb3VyY2UuZ2V0KCksIDAsIDAsIDAsIGtXS0lu
amVjdEF0RG9jdW1lbnRFbmQsIGtXS0luamVjdEluQWxsRnJhbWVzKTsKKyAgICAgICAgV0tCdW5k
bGVQYWdlQWRkVXNlclNjcmlwdEluV29ybGQocGFnZSwgc291cmNlLmdldCgpLCBpc29sYXRlZFdv
cmxkLCBrV0tJbmplY3RBdERvY3VtZW50RW5kLCBrV0tJbmplY3RJbkFsbEZyYW1lcyk7CiAgICAg
fQogfTsKIApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRC
dW5kbGVNYWtlQWxsU2hhZG93Um9vdHNPcGVuX0J1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRCdW5kbGVNYWtlQWxsU2hhZG93
Um9vdHNPcGVuX0J1bmRsZS5jcHAJKHJldmlzaW9uIDI1OTE0MykKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0luamVjdGVkQnVuZGxlTWFrZUFsbFNoYWRvd1Jvb3RzT3Blbl9C
dW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2ICsyOSw3IEBACiAKICNpbmNsdWRlICJJ
bmplY3RlZEJ1bmRsZVRlc3QuaCIKICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlR3JvdXAu
aD4KKyNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdl
YktpdC9XS0J1bmRsZVByaXZhdGUuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVTY3JpcHRX
b3JsZC5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1JldGFpblB0ci5oPgpAQCAtNDIsMTEgKzQzLDgg
QEAgcHVibGljOgogICAgICAgICA6IEluamVjdGVkQnVuZGxlVGVzdChpZGVudGlmaWVyKQogICAg
IHsgfQogCi0gICAgdmlydHVhbCB2b2lkIGluaXRpYWxpemUoV0tCdW5kbGVSZWYgYnVuZGxlLCBX
S1R5cGVSZWYgdXNlckRhdGEpCisgICAgdm9pZCBkaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmLCBX
S0J1bmRsZVBhZ2VSZWYgcGFnZSkgb3ZlcnJpZGUKICAgICB7Ci0gICAgICAgIGFzc2VydChXS0dl
dFR5cGVJRCh1c2VyRGF0YSkgPT0gV0tCdW5kbGVQYWdlR3JvdXBHZXRUeXBlSUQoKSk7Ci0gICAg
ICAgIFdLQnVuZGxlUGFnZUdyb3VwUmVmIHBhZ2VHcm91cCA9IHN0YXRpY19jYXN0PFdLQnVuZGxl
UGFnZUdyb3VwUmVmPih1c2VyRGF0YSk7Ci0KICAgICAgICAgYXV0byB3b3JsZCA9IFdLQnVuZGxl
U2NyaXB0V29ybGRDcmVhdGVXb3JsZCgpOwogICAgICAgICBXS0J1bmRsZVNjcmlwdFdvcmxkTWFr
ZUFsbFNoYWRvd1Jvb3RzT3Blbih3b3JsZCk7CiAKQEAgLTg3LDcgKzg1LDcgQEAgcHVibGljOgog
ICAgICAgICAgICAgIiAgICBxdWVyeVJlc3VsdCA9IHdpbmRvdy5tYXRjaGluZ0VsZW1lbnRJbkZs
YXRUcmVlKGRvY3VtZW50LCAnZGl2Jyk7XG4iCiAgICAgICAgICAgICAiICAgIGFsZXJ0KGBGb3Vu
ZDokeyEhcXVlcnlSZXN1bHR9YCk7XG4iCiAgICAgICAgICAgICAifVxuIikpOwotICAgICAgICBX
S0J1bmRsZUFkZFVzZXJTY3JpcHQoYnVuZGxlLCBwYWdlR3JvdXAsIHdvcmxkLCBzb3VyY2UuZ2V0
KCksIDAsIDAsIDAsIGtXS0luamVjdEF0RG9jdW1lbnRTdGFydCwga1dLSW5qZWN0SW5BbGxGcmFt
ZXMpOworICAgICAgICBXS0J1bmRsZVBhZ2VBZGRVc2VyU2NyaXB0SW5Xb3JsZChwYWdlLCBzb3Vy
Y2UuZ2V0KCksIHdvcmxkLCBrV0tJbmplY3RBdERvY3VtZW50U3RhcnQsIGtXS0luamVjdEluQWxs
RnJhbWVzKTsKICAgICB9CiB9OwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>