<?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>233398</bug_id>
          
          <creation_ts>2021-11-20 10:48:23 -0800</creation_ts>
          <short_desc>CSP: Implement submitting samples in violation reports</short_desc>
          <delta_ts>2021-11-24 08:21:05 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</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>
          <dependson>233182</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Patrick Griffis">pgriffis</reporter>
          <assigned_to name="Patrick Griffis">pgriffis</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>katherine_cheney</cc>
    
    <cc>mkwst</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1817126</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-20 10:48:23 -0800</bug_when>
    <thetext>CSP: Implement submitting samples in violation reports</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817127</commentid>
    <comment_count>1</comment_count>
      <attachid>444901</attachid>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-20 10:49:35 -0800</bug_when>
    <thetext>Created attachment 444901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817128</commentid>
    <comment_count>2</comment_count>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-20 10:53:30 -0800</bug_when>
    <thetext>This won&apos;t apply or work until bug 233182 is merged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817491</commentid>
    <comment_count>3</comment_count>
      <attachid>445040</attachid>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-23 09:57:31 -0800</bug_when>
    <thetext>Created attachment 445040
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817494</commentid>
    <comment_count>4</comment_count>
      <attachid>445042</attachid>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-23 10:28:35 -0800</bug_when>
    <thetext>Created attachment 445042
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817497</commentid>
    <comment_count>5</comment_count>
      <attachid>445043</attachid>
    <who name="Patrick Griffis">pgriffis</who>
    <bug_when>2021-11-23 10:59:53 -0800</bug_when>
    <thetext>Created attachment 445043
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817643</commentid>
    <comment_count>6</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2021-11-24 07:25:48 -0800</bug_when>
    <thetext>rdar://83788774</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817650</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-11-24 08:21:04 -0800</bug_when>
    <thetext>Committed r286150 (244534@main): &lt;https://commits.webkit.org/244534@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 445043.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>444901</attachid>
            <date>2021-11-20 10:49:35 -0800</date>
            <delta_ts>2021-11-23 09:57:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233398-20211120124934.patch</filename>
            <type>text/plain</type>
            <size>35949</size>
            <attacher name="Patrick Griffis">pgriffis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGJlYTRmNmZmZDU1Yzk1
NjFlZWQ3YTJiMTdhOThmMjRlMTA4MDA4YS4uNjUwNjk4ODAxMDY0ZTJmOTg0OGFlOWQ5ZjJlMzFm
YWZkOTE3YzIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTExLTIwICBQYXRy
aWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIENTUDogSW1wbGVt
ZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24gcmVwb3J0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMzk4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpbXBsZW1lbnRzIGhhbmRs
aW5nICdyZXBvcnQtc2FtcGxlJyBkaXJlY3RpdmUgYW5kIHN1Ym1pdHMgYSBzYW1wbGUKKyAgICAg
ICAgZm9yIHN0eWxlLXNyYyBhbmQgc2NyaXB0LXNyYy4gSXQgZG9lc24ndCBjdXJyZW50bHkgZXh0
cmFjdCB0aGUgc291cmNlCisgICAgICAgIGZyb20gZXZhbCgpIHlldC4KKworICAgICAgICAqIHBh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd05v
blBhcnNlckluc2VydGVkU2NyaXB0cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RnJhbWVBbmNlc3RvcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Bs
dWdpblR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvd09iamVjdEZyb21Tb3VyY2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVu
dFNlY3VyaXR5UG9saWN5OjphbGxvd0NoaWxkRnJhbWVGcm9tU291cmNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dSZXNvdXJjZUZyb21Tb3Vy
Y2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0Nvbm5lY3RUb1NvdXJjZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3k6OmFsbG93QmFzZVVSSSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5Q2xpZW50Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0OjpzaG91bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAg
ICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaDoKKyAgICAg
ICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OnBhcnNlU291cmNl
KToKKyAgICAgICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0OjpzaG91
bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAgICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRT
ZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmU6OnNob3VsZFJlcG9ydFNhbXBsZSBjb25z
dCk6CisKIDIwMjEtMTEtMTkgIEtpZXQgSG8gIDx0aG8yMkBhcHBsZS5jb20+CiAKICAgICAgICAg
SW1wbGVtZW50IHBhcnNpbmcgYW5kIGFuaW1hdGlvbiBzdXBwb3J0IGZvciByYXkoKSBzaGFwZSBh
Y2NlcHRlZCBieSBvZmZzZXQtcGF0aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeS5jcHAKaW5kZXggZjk2ZTE1OWQ0ODRlODJmNjZjZjNiNmExZDRi
MTU4ODdiYzU5N2NhMC4uZWE1ZGRmNzhmMjc5ZWU0YTJiNjY3YzU1YmY3MTYyYjAwODY4NGQ0NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3ku
Y3BwCkBAIC00MDYsNyArNDA2LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93
SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdAogICAgIGF1dG8g
aGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVN
ZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIFVSTCgpLCAiUmVm
dXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IiwgIml0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNh
ZmUtaW5saW5lJyIpOwogICAgICAgICAvLyBGSVhNRSAocmRhcjovLzgzMzMyODc0KSBpbXBsZW1l
bnQgc2NyaXB0U3JjRWxlbSBwcm9wZXJseS4KLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRl
bnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmNFbGVtLCB2aW9sYXRlZERp
cmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQb3Np
dGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSk7CisgICAgICAgIHJlcG9ydFZpb2xh
dGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjRWxlbSwg
dmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJM
LCBzb3VyY2UsIFRleHRQb3NpdGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSk7CiAg
ICAgICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmIHZpb2xhdGVkRGlyZWN0aXZlLmRpcmVj
dGl2ZUxpc3QoKS5pc1JlcG9ydE9ubHkoKSkgewogICAgICAgICAgICAgcmVwb3J0QmxvY2tlZFNj
cmlwdEV4ZWN1dGlvblRvSW5zcGVjdG9yKHZpb2xhdGVkRGlyZWN0aXZlLnRleHQoKSk7CiAgICAg
ICAgICAgICBkaWROb3RpZnlJbnNwZWN0b3IgPSB0cnVlOwpAQCAtNDIzLDcgKzQyMyw3IEBAIGJv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3Qg
U3RyaW5nJiBjb250ZXh0VVJMLCBjCiAgICAgYm9vbCBkaWROb3RpZnlJbnNwZWN0b3IgPSBmYWxz
ZTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBDb250ZW50
U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAgICAgIFN0
cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRT
ZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZl
LCBVUkwoKSwgIlJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBmb3IgYW4gaW5saW5lIGV2ZW50
IGhhbmRsZXIiLCAiJ3Vuc2FmZS1pbmxpbmUnIik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlvbihD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERp
cmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQb3Np
dGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsIGVsZW1l
bnQpOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNv
bGVNZXNzYWdlLCBjb250ZXh0VVJMLCBzb3VyY2UsIFRleHRQb3NpdGlvbihjb250ZXh0TGluZSwg
T3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsIGVsZW1lbnQpOwogICAgICAgICBpZiAo
IWRpZE5vdGlmeUluc3BlY3RvciAmJiAhdmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlzdCgp
LmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRCbG9ja2VkU2NyaXB0RXhlY3V0
aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgpKTsKICAgICAgICAgICAgIGRp
ZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC00NzQsNyArNDc0LDcgQEAgYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93Tm9uUGFyc2VySW5zZXJ0ZWRTY3JpcHRzKGNvbnN0IFVSTCYg
dXJsLCBjb25zdAogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAg
ICAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9yZUZp
cnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9
IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2
ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxv
YWQiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZU5hbWVzOjpzY3JpcHRTcmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygp
LCBjb25zb2xlTWVzc2FnZSwgU3RyaW5nKCksIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRT
cmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwg
U3RyaW5nKCksIHNjcmlwdENvbnRlbnQsIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9OwogCiAgICAg
cmV0dXJuIGFsbFNjcmlwdFBvbGljaWVzQWxsb3coaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUsIHVy
bCwgbm9uY2UsIHNjcmlwdENvbnRlbnQsIHBhcnNlckluc2VydGVkKTsKQEAgLTQ4Nyw3ICs0ODcs
NyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoY29uc3Qg
U3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBPcgogICAgIGJvb2wgZGlkTm90aWZ5SW5zcGVjdG9y
ID0gZmFsc2U7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAg
ICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERp
cmVjdGl2ZSwgVVJMKCksICJSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQiLCAiaXRzIGhhc2gs
IGl0cyBub25jZSwgb3IgJ3Vuc2FmZS1pbmxpbmUnIik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlv
bihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRl
ZERpcmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQ
b3NpdGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsICZl
bGVtZW50KTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBj
b25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgc2NyaXB0Q29udGVudCwgVGV4dFBvc2l0aW9uKGNv
bnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOwog
ICAgICAgICBpZiAoIWRpZE5vdGlmeUluc3BlY3RvciAmJiAhdmlvbGF0ZWREaXJlY3RpdmUuZGly
ZWN0aXZlTGlzdCgpLmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRCbG9ja2Vk
U2NyaXB0RXhlY3V0aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgpKTsKICAg
ICAgICAgICAgIGRpZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC01MDcsNyArNTA3LDcgQEAg
Ym9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5n
JiBjb250ZXh0VVJMLCBjb25zdCBPcmQKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZl
ID0gWyZdIChjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGly
ZWN0aXZlKSB7CiAgICAgICAgIGF1dG8gbmFtZSA9IHNob3VsZENoZWNrVW5zYWZlSGFzaGVzID09
IENoZWNrVW5zYWZlSGFzaGVzOjpZZXMgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lczo6c3R5bGVTcmNBdHRyIDogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OnN0eWxlU3JjRWxlbTsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1l
c3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnN0
eWxlU3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgVVJMKCksICJSZWZ1c2VkIHRvIGFwcGx5IGEgc3R5
bGVzaGVldCIsICJpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZSciKTsKLSAg
ICAgICAgcmVwb3J0VmlvbGF0aW9uKG5hbWUsIHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9z
LCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBP
cmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOworICAgICAgICByZXBv
cnRWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNvbGVN
ZXNzYWdlLCBjb250ZXh0VVJMLCBzdHlsZUNvbnRlbnQsIFRleHRQb3NpdGlvbihjb250ZXh0TGlu
ZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsICZlbGVtZW50KTsKICAgICB9Owog
CiAgICAgaWYgKHNob3VsZENoZWNrVW5zYWZlSGFzaGVzID09IENoZWNrVW5zYWZlSGFzaGVzOjpZ
ZXMpCkBAIC01NDUsNyArNTQ1LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93
RnJhbWVBbmNlc3RvcnMoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHUKICAgICBUZXh0
UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3Jk
aW5hbE51bWJlcigpKTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7
CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFuY2VzdG9ycywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBv
cnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5j
ZXN0b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwg
c291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250
ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJhbWVBbmNlc3RvcnMsIHZpb2xhdGVk
RGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmlu
ZygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxv
dyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yRnJhbWVBbmNlc3RvciwgZnJhbWUp
OwogfQpAQCAtNTczLDcgKzU3Myw3IEBAIGJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0ZyYW1lQW5jZXN0b3JzKGNvbnN0IFZlY3RvcjxSZWZQdHI8U2VjdXJpdHlPcmlnCiAgICAgVGV4
dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9y
ZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAo
Y29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkg
ewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xh
dGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJhbWVBbmNlc3RvcnMs
IHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQiKTsKLSAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFu
Y2VzdG9ycywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2Us
IHNvdXJjZVVSTCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5jZXN0b3JzLCB2aW9sYXRl
ZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBTdHJp
bmcoKSwgc291cmNlUG9zaXRpb24pOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGljaWVzQWxs
b3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckZyYW1lQW5jZXN0b3JPcmlnaW5z
LCBhbmNlc3Rvck9yaWdpbnMpOwogfQpAQCAtNTg2LDcgKzU4Niw3IEBAIGJvb2wgQ29udGVudFNl
Y3VyaXR5UG9saWN5OjphbGxvd1BsdWdpblR5cGUoY29uc3QgU3RyaW5nJiB0eXBlLCBjb25zdCBT
dHJpbmcmIHR5CiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6
OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRl
ZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2
aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25z
b2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1l
czo6cGx1Z2luVHlwZXMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQi
LCAiaXRzIE1JTUUgdHlwZSIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnBsdWdpblR5cGVzLCB2aW9sYXRlZERpcmVjdGl2ZSwg
dXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7
CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lczo6cGx1Z2luVHlwZXMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNv
bGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmluZygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsK
ICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0
aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0
aXZlRm9yUGx1Z2luVHlwZSwgdHlwZSwgdHlwZUF0dHJpYnV0ZSk7CiB9CkBAIC02MDIsNyArNjAy
LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93T2JqZWN0RnJvbVNvdXJjZShj
b25zdCBVUkwmIHVybCwgUmVkaXJlY3RSZXNwb24KICAgICBUZXh0UG9zaXRpb24gc291cmNlUG9z
aXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcigpKTsKICAg
ICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAgICAgIFN0cmluZyBj
b25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRTZWN1cml0
eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpvYmplY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmws
ICJSZWZ1c2VkIHRvIGxvYWQiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1
cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpvYmplY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1
cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsK
KyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5h
bWVzOjpvYmplY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVN
ZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmluZygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAg
ICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZl
KSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZl
Rm9yT2JqZWN0U291cmNlLCB1cmwsIHJlZGlyZWN0UmVzcG9uc2VSZWNlaXZlZCA9PSBSZWRpcmVj
dFJlc3BvbnNlUmVjZWl2ZWQ6OlllcywgQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERp
cmVjdGl2ZTo6U2hvdWxkQWxsb3dFbXB0eVVSTElmU291cmNlTGlzdElzTm90Tm9uZTo6WWVzKTsK
IH0KQEAgLTYxNiw3ICs2MTYsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dD
aGlsZEZyYW1lRnJvbVNvdXJjZShjb25zdCBVUkwmIHVybCwgUmVkaXJlY3RSZQogICAgIGF1dG8g
aGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgY29uc3QgY2hhciogZWZm
ZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUgPSB2aW9sYXRlZERpcmVjdGl2ZS5uYW1lKCkgPT0gQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lU3JjID8gQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lU3JjIDogQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTmFtZXM6OmNoaWxkU3JjOwogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2Ug
PSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBv
cnRWaW9sYXRpb24oZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZl
LCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9u
KTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2
aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJM
LCBTdHJpbmcoKSwgc291cmNlUG9zaXRpb24pOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGlj
aWVzQWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckZyYW1lLCB1cmwsIHJl
ZGlyZWN0UmVzcG9uc2VSZWNlaXZlZCA9PSBSZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQ6Olllcyk7
CiB9CkBAIC02MzAsNyArNjMwLDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93
UmVzb3VyY2VGcm9tU291cmNlKGNvbnN0IFVSTCYgdXJsLCBSZWRpcmVjdFJlc3AKICAgICBUZXh0
UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3Jk
aW5hbE51bWJlcigpKTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7
CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0
aW9uKG5hbWUsIHZpb2xhdGVkRGlyZWN0aXZlLCBibG9ja2VkVVJMLCAiUmVmdXNlZCB0byBsb2Fk
Iik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlvbihuYW1lLCB2aW9sYXRlZERpcmVjdGl2ZSwgYmxv
Y2tlZFVSTC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNlUG9zaXRp
b24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsIGJs
b2NrZWRVUkwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmluZygpLCBz
b3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZN
b3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgcmVzb3VyY2VQcmVkaWNhdGUsIHVybCwgcmVk
aXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGlyZWN0UmVzcG9uc2VSZWNlaXZlZDo6WWVzKTsK
IH0KQEAgLTY4Myw3ICs2ODMsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dD
b25uZWN0VG9Tb3VyY2UoY29uc3QgVVJMJiB1cmwsIFJlZGlyZWN0UmVzcG9ucwogICAgIFRleHRQ
b3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRp
bmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsK
ICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRp
b24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNvbm5lY3RTcmMsIHZpb2xh
dGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGNvbm5lY3QgdG8iKTsKLSAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpjb25uZWN0
U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291
cmNlVVJMLCBzb3VyY2VQb3NpdGlvbiwgcHJlUmVkaXJlY3RVUkwpOworICAgICAgICByZXBvcnRW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNvbm5lY3RTcmMs
IHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VV
UkwsIFN0cmluZygpLCBzb3VyY2VQb3NpdGlvbiwgcHJlUmVkaXJlY3RVUkwpOwogICAgIH07CiAg
ICAgcmV0dXJuIGFsbFBvbGljaWVzQWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2
ZSksICZDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2
ZUZvckNvbm5lY3RTb3VyY2UsIHVybCwgcmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGly
ZWN0UmVzcG9uc2VSZWNlaXZlZDo6WWVzKTsKIH0KQEAgLTcwMyw3ICs3MDMsNyBAQCBib29sIENv
bnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dCYXNlVVJJKGNvbnN0IFVSTCYgdXJsLCBib29sIG92
ZXJyaWRlQ29udGVudFNlYwogICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFs
TnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxl
VmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdl
ID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTmFtZXM6OmJhc2VVUkksIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGNo
YW5nZSB0aGUgZG9jdW1lbnQgYmFzZSBVUkwgdG8iKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9u
KENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpiYXNlVVJJLCB2aW9sYXRlZERp
cmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQ
b3NpdGlvbik7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmVOYW1lczo6YmFzZVVSSSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwg
Y29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nKCksIHNvdXJjZVBvc2l0aW9uKTsKICAg
ICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0ZWRE
aXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6dmlvbGF0ZWRE
aXJlY3RpdmVGb3JCYXNlVVJJLCB1cmwpOwogfQpAQCAtNzM1LDIyICs3MzUsMjIgQEAgU3RyaW5n
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6Y3JlYXRlVVJMRm9yUmVwb3J0aW5nKGNvbnN0IFVSTCYg
dXJsLCBjb25zdCBTdHJpbmcKIAogdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZp
b2xhdGlvbihjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2Vj
dXJpdHlQb2xpY3lEaXJlY3RpdmUmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBT
dHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIEpTQzo6SlNH
bG9iYWxPYmplY3QqIHN0YXRlKSBjb25zdAogewotICAgIC8vIEZJWE1FOiBFeHRyYWN0IHNvdXJj
ZSBmaWxlIGFuZCBzb3VyY2UgcG9zaXRpb24gZnJvbSBKU0M6OkV4ZWNTdGF0ZS4KLSAgICByZXR1
cm4gcmVwb3J0VmlvbGF0aW9uKHZpb2xhdGVkRGlyZWN0aXZlLCBlZmZlY3RpdmVWaW9sYXRlZERp
cmVjdGl2ZS5uYW1lRm9yUmVwb3J0aW5nKCkuY29udmVydFRvQVNDSUlMb3dlcmNhc2UoKSwgZWZm
ZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlzdCgpLCBibG9ja2VkVVJMLCBjb25z
b2xlTWVzc2FnZSwgU3RyaW5nKCksIFRleHRQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVG
aXJzdCgpLCBPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3RhdGUpOworICAgIC8vIEZJ
WE1FOiBFeHRyYWN0IHNvdXJjZSBmaWxlLCBjb250ZW50LCBhbmQgcG9zaXRpb24gZnJvbSBKU0M6
OkV4ZWNTdGF0ZS4KKyAgICByZXR1cm4gcmVwb3J0VmlvbGF0aW9uKHZpb2xhdGVkRGlyZWN0aXZl
LCBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZS5uYW1lRm9yUmVwb3J0aW5nKCkuY29udmVydFRv
QVNDSUlMb3dlcmNhc2UoKSwgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlz
dCgpLCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgU3RyaW5nKCksIFN0cmluZ1ZpZXcoKSwg
VGV4dFBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXI6
OmJlZm9yZUZpcnN0KCkpLCBzdGF0ZSk7CiB9CiAKIHZvaWQgQ29udGVudFNlY3VyaXR5UG9saWN5
OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2
ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBjb25zdCBTdHJpbmcm
IGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIEpTQzo6SlNHbG9iYWxP
YmplY3QqIHN0YXRlKSBjb25zdAogewotICAgIC8vIEZJWE1FOiBFeHRyYWN0IHNvdXJjZSBmaWxl
IGFuZCBzb3VyY2UgcG9zaXRpb24gZnJvbSBKU0M6OkV4ZWNTdGF0ZS4KLSAgICByZXR1cm4gcmVw
b3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2
ZSwgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgU3Ry
aW5nKCksIFRleHRQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFs
TnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3RhdGUpOworICAgIC8vIEZJWE1FOiBFeHRyYWN0IHNv
dXJjZSBmaWxlLCBjb250ZW50LCBhbmQgcG9zaXRpb24gZnJvbSBKU0M6OkV4ZWNTdGF0ZS4KKyAg
ICByZXR1cm4gcmVwb3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9s
YXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBibG9ja2VkVVJMLCBjb25zb2xl
TWVzc2FnZSwgU3RyaW5nKCksIFN0cmluZ1ZpZXcoKSwgVGV4dFBvc2l0aW9uKE9yZGluYWxOdW1i
ZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCkpLCBzdGF0ZSk7
CiB9CiAKLXZvaWQgQ29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3Qg
U3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2Vk
VVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVS
TCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwgY29uc3QgVVJMJiBwcmVSZWRp
cmVjdFVSTCwgSlNDOjpKU0dsb2JhbE9iamVjdCogc3RhdGUsIEVsZW1lbnQqIGVsZW1lbnQpIGNv
bnN0Cit2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0
cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVS
TCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkws
IGNvbnN0IFN0cmluZ1ZpZXcmIHNvdXJjZUNvbnRlbnQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291
cmNlUG9zaXRpb24sIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwsIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIHN0YXRlLCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAogewotICAgIHJldHVybiByZXBvcnRW
aW9sYXRpb24oZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLm5h
bWVGb3JSZXBvcnRpbmcoKS5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZSgpLCB2aW9sYXRlZERpcmVj
dGl2ZS5kaXJlY3RpdmVMaXN0KCksIGJsb2NrZWRVUkwsIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VV
UkwsIHNvdXJjZVBvc2l0aW9uLCBzdGF0ZSwgcHJlUmVkaXJlY3RVUkwsIGVsZW1lbnQpOworICAg
IHJldHVybiByZXBvcnRWaW9sYXRpb24oZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xh
dGVkRGlyZWN0aXZlLm5hbWVGb3JSZXBvcnRpbmcoKS5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZSgp
LCB2aW9sYXRlZERpcmVjdGl2ZS5kaXJlY3RpdmVMaXN0KCksIGJsb2NrZWRVUkwsIGNvbnNvbGVN
ZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZUNvbnRlbnQsIHNvdXJjZVBvc2l0aW9uLCBzdGF0ZSwg
cHJlUmVkaXJlY3RVUkwsIGVsZW1lbnQpOwogfQogCi12b2lkIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3Rp
dmUsIGNvbnN0IFN0cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0
eVBvbGljeURpcmVjdGl2ZUxpc3QmIHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5n
JiBibG9ja2VkVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBT
dHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwgSlND
OjpKU0dsb2JhbE9iamVjdCogc3RhdGUsIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwsIEVsZW1l
bnQqIGVsZW1lbnQpIGNvbnN0Cit2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0Vmlv
bGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0
cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZUxpc3QmIHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJM
U3RyaW5nLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJj
ZVVSTCwgY29uc3QgU3RyaW5nVmlldyYgc291cmNlQ29udGVudCwgY29uc3QgVGV4dFBvc2l0aW9u
JiBzb3VyY2VQb3NpdGlvbiwgSlNDOjpKU0dsb2JhbE9iamVjdCogc3RhdGUsIGNvbnN0IFVSTCYg
cHJlUmVkaXJlY3RVUkwsIEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiB7CiAgICAgbG9nVG9Db25z
b2xlKGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uLm1fbGluZSwgc291
cmNlUG9zaXRpb24ubV9jb2x1bW4sIHN0YXRlKTsKIApAQCAtNzcxLDYgKzc3MSw3IEBAIHZvaWQg
Q29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZl
Y3RpdmVWaW9sYXRlZERpcmVjCiAgICAgaW5mby5kb2N1bWVudFVSSSA9IG1fZG9jdW1lbnRVUkwg
PyBtX2RvY3VtZW50VVJMLnZhbHVlKCkuc3RyaXBwZWRGb3JVc2VBc1JlZmVycmVyKCkgOiBibG9j
a2VkVVJJOwogICAgIGluZm8ubGluZU51bWJlciA9IHNvdXJjZVBvc2l0aW9uLm1fbGluZS5vbmVC
YXNlZEludCgpOwogICAgIGluZm8uY29sdW1uTnVtYmVyID0gc291cmNlUG9zaXRpb24ubV9jb2x1
bW4ub25lQmFzZWRJbnQoKTsKKyAgICBpbmZvLnNhbXBsZSA9IHZpb2xhdGVkRGlyZWN0aXZlTGlz
dC5zaG91bGRSZXBvcnRTYW1wbGUoZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUpID8gc291cmNl
Q29udGVudC5sZWZ0KDQwKS50b1N0cmluZygpIDogU3RyaW5nKCk7CiAKICAgICBpZiAobV9jbGll
bnQpCiAgICAgICAgIG1fY2xpZW50LT53aWxsU2VuZENTUFZpb2xhdGlvblJlcG9ydChpbmZvKTsK
QEAgLTgxMSw2ICs4MTIsNyBAQCB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0Vmlv
bGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlYwogICAgIHZpb2xhdGlv
bkV2ZW50SW5pdC5zdGF0dXNDb2RlID0gaHR0cFN0YXR1c0NvZGU7CiAgICAgdmlvbGF0aW9uRXZl
bnRJbml0LmxpbmVOdW1iZXIgPSAgaW5mby5saW5lTnVtYmVyOwogICAgIHZpb2xhdGlvbkV2ZW50
SW5pdC5jb2x1bW5OdW1iZXIgPSBpbmZvLmNvbHVtbk51bWJlcjsKKyAgICB2aW9sYXRpb25FdmVu
dEluaXQuc2FtcGxlID0gaW5mby5zYW1wbGU7CiAgICAgdmlvbGF0aW9uRXZlbnRJbml0LmJ1YmJs
ZXMgPSB0cnVlOwogICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgbV9jbGllbnQtPmVucXVldWVT
ZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50KFdURk1vdmUodmlvbGF0aW9uRXZlbnRJbml0KSk7
CkBAIC04NDksNiArODUxLDcgQEAgdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZp
b2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWMKICAgICAgICAgY3Nw
UmVwb3J0LT5zZXRTdHJpbmcoInNvdXJjZS1maWxlIl9zLCBpbmZvLnNvdXJjZUZpbGUpOwogICAg
ICAgICBjc3BSZXBvcnQtPnNldEludGVnZXIoImxpbmUtbnVtYmVyIl9zLCBpbmZvLmxpbmVOdW1i
ZXIpOwogICAgICAgICBjc3BSZXBvcnQtPnNldEludGVnZXIoImNvbHVtbi1udW1iZXIiX3MsIGlu
Zm8uY29sdW1uTnVtYmVyKTsKKyAgICAgICAgY3NwUmVwb3J0LT5zZXRTdHJpbmcoInNhbXBsZSJf
cywgaW5mby5zYW1wbGUpOwogICAgIH0KIAogICAgIGF1dG8gcmVwb3J0T2JqZWN0ID0gSlNPTjo6
T2JqZWN0OjpjcmVhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5LmgKaW5kZXggOTkxZTRiMzFlZDE0MDc0ZTY3MjQ5OWRkMGUxYzc4OGJkNTBm
MjQ2Mi4uZWNmZTUyYTc1NGZjMDYzYmU2MDNkNTllMzIwN2MxM2JhNjU0NWRmYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKQEAgLTIyMiw4
ICsyMjIsOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3Ry
aW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJM
LCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0KikgY29u
c3Q7CiAgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9s
YXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVS
TCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgSlNDOjpKU0dsb2JhbE9iamVjdCogPSBu
dWxscHRyKSBjb25zdDsKLSAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVm
ZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJl
Y3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0
IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBU
ZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMID0g
VVJMKCksIEpTQzo6SlNHbG9iYWxPYmplY3QqID0gbnVsbHB0ciwgRWxlbWVudCogPSBudWxscHRy
KSBjb25zdDsKLSAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2
ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0aXZlLCBjb25z
dCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0JiB2aW9sYXRlZERpcmVjdGl2ZUxp
c3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2Fn
ZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9z
aXRpb24sIEpTQzo6SlNHbG9iYWxPYmplY3QqLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMID0g
VVJMKCksIEVsZW1lbnQqID0gbnVsbHB0cikgY29uc3Q7CisgICAgdm9pZCByZXBvcnRWaW9sYXRp
b24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVu
dFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5n
JiBibG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcm
IHNvdXJjZVVSTCwgY29uc3QgU3RyaW5nVmlldyYgc291cmNlQ29udGVudCwgY29uc3QgVGV4dFBv
c2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgp
LCBKU0M6OkpTR2xvYmFsT2JqZWN0KiA9IG51bGxwdHIsIEVsZW1lbnQqID0gbnVsbHB0cikgY29u
c3Q7CisgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9s
YXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBj
b25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNv
bnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBTdHJpbmdWaWV3JiBzb3VyY2VDb250ZW50LCBj
b25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kiwg
Y29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBFbGVtZW50KiA9IG51bGxwdHIpIGNv
bnN0OwogICAgIHZvaWQgcmVwb3J0QmxvY2tlZFNjcmlwdEV4ZWN1dGlvblRvSW5zcGVjdG9yKGNv
bnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCkgY29uc3Q7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBWaW9sYXRlZERpcmVjdGl2ZSwgdHlwZW5hbWUgSGFzaFNlYXJjaFBvbGljeT4gYm9vbCBjaGVj
a0hhc2hBbmRSZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiwgY29uc3QgVmlvbGF0ZWREaXJl
Y3RpdmUmLCBjb25zdCBIYXNoU2VhcmNoUG9saWN5JiwgT3B0aW9uU2V0PENvbnRlbnRTZWN1cml0
eVBvbGljeUhhc2hBbGdvcml0aG0+LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlZpb2xhdGVkRGly
ZWN0aXZlQ2FsbGJhY2smJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Y3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeUNsaWVudC5oCmluZGV4IGYyZmU2Mzg5NDY0OTZlZGJi
MzAzODQ1Mzk4ZmY5ZTczOTdjMzRiZDkuLmFmYWVjMjYzYjc3ZmQ4MjJiZDEwMTk1N2M3MWNkMmQz
MzkzOGQzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1
cml0eVBvbGljeUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRT
ZWN1cml0eVBvbGljeUNsaWVudC5oCkBAIC0zNiw2ICszNiw3IEBAIGNsYXNzIEZvcm1EYXRhOwog
c3RydWN0IENTUEluZm8gewogICAgIFN0cmluZyBkb2N1bWVudFVSSTsKICAgICBTdHJpbmcgc291
cmNlRmlsZTsKKyAgICBTdHJpbmcgc2FtcGxlOwogICAgIGludCBsaW5lTnVtYmVyIHsgMCB9Owog
ICAgIGludCBjb2x1bW5OdW1iZXIgeyAwIH07CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmNw
cAppbmRleCA5YThkZjI5MjUwZWJkMmM2N2IzMTRmMzllMjZjODI3NGNlNGIwNGQxLi4xMTExNzFj
ZTgzMTljNzFjZDQxYzYyNGY0OTc1M2M1YmNkYzlmODgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVM
aXN0LmNwcApAQCAtNjQyLDQgKzY0MiwxNSBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZUxpc3Q6OnN0cmljdER5bmFtaWNJbmNsdWRlZCgpCiAgICAgcmV0dXJuIGRpcmVjdGl2
ZSAmJiBkaXJlY3RpdmUtPmFsbG93Tm9uUGFyc2VySW5zZXJ0ZWRTY3JpcHRzKCk7CiB9CiAKK2Jv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6c2hvdWxkUmVwb3J0U2FtcGxl
KGNvbnN0IFN0cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUpIGNvbnN0Cit7CisgICAgQ29udGVudFNl
Y3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZSogZGlyZWN0aXZlID0gbnVsbHB0cjsKKyAg
ICBpZiAodmlvbGF0ZWREaXJlY3RpdmUuc3RhcnRzV2l0aChDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmVOYW1lczo6c3R5bGVTcmMpKQorICAgICAgICBkaXJlY3RpdmUgPSBtX3N0eWxlU3Jj
LmdldCgpOworICAgIGVsc2UgaWYgKHZpb2xhdGVkRGlyZWN0aXZlLnN0YXJ0c1dpdGgoQ29udGVu
dFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYykpCisgICAgICAgIGRpcmVj
dGl2ZSA9IG1fc2NyaXB0U3JjLmdldCgpOworCisgICAgcmV0dXJuIGRpcmVjdGl2ZSAmJiBkaXJl
Y3RpdmUtPnNob3VsZFJlcG9ydFNhbXBsZSgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0LmgKaW5kZXggM2VmOWYwY2RmMmRlODRlZWM1NzY5YjY1OWUy
ZGRmZjcwZDc1MmE1YS4uYzNlMjA4NDBkODZjMTBmYzAyMzRhZDRlOTY2ZjkwYjZkZDBkNWQ4OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1
cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaApAQCAtODYsNiArODYsNyBAQCBwdWJsaWM6CiAgICAg
Y29uc3QgU3RyaW5nJiBldmFsRGlzYWJsZWRFcnJvck1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBt
X2V2YWxEaXNhYmxlZEVycm9yTWVzc2FnZTsgfQogICAgIGNvbnN0IFN0cmluZyYgd2ViQXNzZW1i
bHlEaXNhYmxlZEVycm9yTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViQXNzZW1ibHlEaXNh
YmxlZEVycm9yTWVzc2FnZTsgfQogICAgIGJvb2wgaXNSZXBvcnRPbmx5KCkgY29uc3QgeyByZXR1
cm4gbV9yZXBvcnRPbmx5OyB9CisgICAgYm9vbCBzaG91bGRSZXBvcnRTYW1wbGUoY29uc3QgU3Ry
aW5nJikgY29uc3Q7CiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcG9ydFVSSXMoKSBjb25z
dCB7IHJldHVybiBtX3JlcG9ydFVSSXM7IH0KIAogICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBv
bmNlIHdlIHRlYWNoIENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QgaG93IHRvIGxv
ZyBhbiBhcmJpdHJhcnkgY29uc29sZSBtZXNzYWdlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcAppbmRl
eCAyZmIwZTFkMTFlOTBmY2Q4ZTdmMzk4ZTEyMWNkYjY5YmIwZmI4OWEzLi40OWRhNDRhOWRjYzJh
NGIzZmI4YmYxOThmZDlkN2E0NTg3N2EyZDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcApAQCAt
MjQ4LDYgKzI0OCwxMSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPiBzdGQ6Om9w
dGlvbmFsPENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OgogICAgICAgICByZXR1cm4g
c291cmNlOwogICAgIH0KIAorICAgIGlmIChza2lwRXhhY3RseUlnbm9yaW5nQVNDSUlDYXNlKGJ1
ZmZlciwgIidyZXBvcnQtc2FtcGxlJyIpKSB7CisgICAgICAgIG1fcmVwb3J0U2FtcGxlID0gdHJ1
ZTsKKyAgICAgICAgcmV0dXJuIHNvdXJjZTsKKyAgICB9CisKICAgICBhdXRvIGJlZ2luID0gYnVm
ZmVyLnBvc2l0aW9uKCk7CiAgICAgYXV0byBiZWdpbkhvc3QgPSBiZWdpbjsKICAgICBhdXRvIGJl
Z2luUGF0aCA9IGJ1ZmZlci5lbmQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Y3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaAppbmRleCA2MDkzYjg4MjZm
OTkwODk1MjFmYmY4MjI5NTdhMzM3OGRkMTg2YTM1Li4zNzk0NWU2Y2IwM2YzMWYzMDMxMzg2ODRh
YzIyODE5MjNiNmMzNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250
ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5oCkBAIC01NSw2ICs1NSw3IEBAIHB1
YmxpYzoKICAgICBib29sIGlzTm9uZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNOb25lOyB9CiAgICAg
Ym9vbCBhbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpIGNvbnN0IHsgcmV0dXJuIG1fYWxs
b3dOb25QYXJzZXJJbnNlcnRlZFNjcmlwdHM7IH0KICAgICBib29sIGFsbG93VW5zYWZlSGFzaGVz
KCkgY29uc3QgeyByZXR1cm4gbV9hbGxvd1Vuc2FmZUhhc2hlczsgfQorICAgIGJvb2wgc2hvdWxk
UmVwb3J0U2FtcGxlKCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRTYW1wbGU7IH0KIAogcHJpdmF0
ZToKICAgICBzdHJ1Y3QgSG9zdCB7CkBAIC05Niw2ICs5Nyw3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBtX2lzTm9uZSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2FsbG93Tm9uUGFyc2VySW5zZXJ0ZWRT
Y3JpcHRzIHsgZmFsc2UgfTsKICAgICBib29sIG1fYWxsb3dVbnNhZmVIYXNoZXMgeyBmYWxzZSB9
OworICAgIGJvb2wgbV9yZXBvcnRTYW1wbGUgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oCmluZGV4IDRhYWYx
OTkyNWYxOTY1OGRhODZhZmIzZjkyYzE2Zjc4NWU5OWNhMTkuLjc4YmE5NWE4MWQwMTM5MzY4ZDM4
N2YxZGRmMDQ1NWQ1ZGQ5Y2UzMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3Nw
L0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0RGlyZWN0aXZl
LmgKQEAgLTQ1LDYgKzQ1LDcgQEAgcHVibGljOgogICAgIGJvb2wgYWxsb3dJbmxpbmUoKSBjb25z
dCB7IHJldHVybiBtX3NvdXJjZUxpc3QuYWxsb3dJbmxpbmUoKTsgfQogICAgIGJvb2wgYWxsb3dF
dmFsKCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0LmFsbG93RXZhbCgpOyB9CiAgICAgYm9v
bCBhbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNl
TGlzdC5hbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpOyB9CisgICAgYm9vbCBzaG91bGRS
ZXBvcnRTYW1wbGUoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3Quc2hvdWxkUmVwb3J0U2Ft
cGxlKCk7IH0KIAogICAgIE9wdGlvblNldDxDb250ZW50U2VjdXJpdHlQb2xpY3lIYXNoQWxnb3Jp
dGhtPiBoYXNoQWxnb3JpdGhtc1VzZWQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3QuaGFz
aEFsZ29yaXRobXNVc2VkKCk7IH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXgg
NWQ4NTliNjRlMTJmNTgwNTNmMjNlNDZjNWU1NThlY2ZjNzAxYjExZi4uNTAwZDE1YTA0YTQ1NGY5
NmRhZmY5ZTI4ZjkzZjAxZTFhZDEwYzNkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMTEtMjAgIFBhdHJpY2sgR3JpZmZpcyAgPHBncmlmZmlz
QGlnYWxpYS5jb20+CisKKyAgICAgICAgQ1NQOiBJbXBsZW1lbnQgc3VibWl0dGluZyBzYW1wbGVz
IGluIHZpb2xhdGlvbiByZXBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzMzOTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBVcGRhdGUgZXhwZWN0YXRpb25zIHdpdGggbW9yZSBwYXNzZXMuCisKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJp
dHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5
dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xp
Y3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRp
b24vc3R5bGUtc2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQ6CisKIDIwMjEtMTEtMTkgIEtp
ZXQgSG8gIDx0aG8yMkBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IHBhcnNpbmcgYW5k
IGFuaW1hdGlvbiBzdXBwb3J0IGZvciByYXkoKSBzaGFwZSBhY2NlcHRlZCBieSBvZmZzZXQtcGF0
aApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQt
c2FtcGxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24v
c2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQKaW5kZXggMmRkMGExMzUwNDI2OWY0NjY0NmQxZjg4
NmE2ZWE1N2Y4ZTFjOWZmZS4uNjc4MDQ2NDZmY2UyZTNlNDdlYmNhZmYyNTQwZmIwNmQ3ZDY4MjRl
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQt
c2FtcGxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0
aW9uL3NjcmlwdC1zYW1wbGUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsNSBAQAotQ09OU09MRSBN
RVNTQUdFOiBUaGUgc291cmNlIGxpc3QgZm9yIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVj
dGl2ZSAnc2NyaXB0LXNyYycgY29udGFpbnMgYW4gaW52YWxpZCBzb3VyY2U6ICcncmVwb3J0LXNh
bXBsZScnLiBJdCB3aWxsIGJlIGlnbm9yZWQuCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUt
aW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRo
ZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBl
eGVjdXRlIGEgc2NyaXB0IGZvciBhbiBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlICd1bnNh
ZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9m
IHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogVGhlIHNvdXJj
ZSBsaXN0IGZvciBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmUgJ3NjcmlwdC1zcmMn
IGNvbnRhaW5zIGFuIGludmFsaWQgc291cmNlOiAnJ3JlcG9ydC1zYW1wbGUnJy4gSXQgd2lsbCBi
ZSBpZ25vcmVkLgotQ09OU09MRSBNRVNTQUdFOiBUaGUgc291cmNlIGxpc3QgZm9yIENvbnRlbnQg
U2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZSAnc2NyaXB0LXNyYycgY29udGFpbnMgYW4gaW52YWxp
ZCBzb3VyY2U6ICcncmVwb3J0LXNhbXBsZScnLiBJdCB3aWxsIGJlIGlnbm9yZWQuCiBDT05TT0xF
IE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlICd1bnNhZmUtZXZh
bCcgZG9lcyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kuCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBhIHNjcmlwdCBiZWNhdXNlICd1bnNhZmUtZXZhbCcgZG9lcyBub3QgYXBwZWFyIGluIHRoZSBz
Y3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCiBDT05T
T0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNo
LCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNj
cmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KQEAgLTEw
LDggKzcsOCBAQCBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBi
ZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bgogCiBIYXJuZXNzIEVycm9yIChUSU1F
T1VUKSwgbWVzc2FnZSA9IG51bGwKIAotVElNRU9VVCBJbmxpbmUgc2NyaXB0IHNob3VsZCBoYXZl
IGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBJbmxpbmUgZXZlbnQgaGFuZGxlcnMg
c2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CitQQVNTIElubGluZSBzY3JpcHQg
c2hvdWxkIGhhdmUgYSBzYW1wbGUuCitQQVNTIElubGluZSBldmVudCBoYW5kbGVycyBzaG91bGQg
aGF2ZSBhIHNhbXBsZS4KIFRJTUVPVVQgSmF2YVNjcmlwdCBVUkxzIGluIGlmcmFtZXMgc2hvdWxk
IGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CiBUSU1FT1VUIGV2YWwoKSBzaG91bGQgaGF2
ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKIFRJTUVPVVQgc2V0SW50ZXJ2YWwoKSBzaG91bGQg
aGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2Vj
dXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNl
Y3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLW5vLW9w
dC1pbi1leHBlY3RlZC50eHQKaW5kZXggZDg1YjI4MGY2ZTg3OTRhMTJlMTA1NzFkODc4YjNlZjE1
Nzk3ZjAyMi4uNWVjNmI1ZTViMjdkMDE3ODhjOWU1NTYzOTQyMzUyOTI5MGY1Nzg1MSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50
LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLW5v
LW9wdC1pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xh
dGlvbi9zY3JpcHQtc2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQKQEAgLTcsOCArNyw4IEBA
IENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2UgaXRz
IGhhc2gsIGl0cyBub25jZSwgb3IgJ3VuCiAKIEhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNz
YWdlID0gbnVsbAogCi1USU1FT1VUIElubGluZSBzY3JpcHQgc2hvdWxkIG5vdCBoYXZlIGEgc2Ft
cGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBJbmxpbmUgZXZlbnQgaGFuZGxlcnMgc2hvdWxk
IG5vdCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAorUEFTUyBJbmxpbmUgc2NyaXB0IHNo
b3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4KK1BBU1MgSW5saW5lIGV2ZW50IGhhbmRsZXJzIHNob3Vs
ZCBub3QgaGF2ZSBhIHNhbXBsZS4KIFRJTUVPVVQgSmF2YVNjcmlwdCBVUkxzIGluIGlmcmFtZXMg
c2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBldmFsKCkt
YWxpa2VzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKK1BBU1MgZXZh
bCgpLWFsaWtlcyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1w
b2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1
cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVk
LnR4dAppbmRleCAzZmYyMTljNTk1ZmEzZWNkMzMzMWFlOTU1MWU1YmRiNGEzNTg3OTQxLi43YzU5
NTllOTJhODliNjY5NmI2MTg4ZTVkNWM3NDdhZDNlODY5ODNkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9s
aWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNl
Y3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zdHlsZS1zYW1wbGUtZXhwZWN0
ZWQudHh0CkBAIC0xLDkgKzEsNiBAQAotQ09OU09MRSBNRVNTQUdFOiBUaGUgc291cmNlIGxpc3Qg
Zm9yIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZSAnc3R5bGUtc3JjJyBjb250YWlu
cyBhbiBpbnZhbGlkIHNvdXJjZTogJydyZXBvcnQtc2FtcGxlJycuIEl0IHdpbGwgYmUgaWdub3Jl
ZC4KIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBhIHN0eWxlc2hlZXQgYmVjYXVz
ZSBpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZScgZG9lcyBub3QgYXBwZWFy
IGluIHRoZSBzdHlsZS1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eS4KIENPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBhcHBseSBhIHN0eWxlc2hlZXQgYmVjYXVz
ZSBpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZScgZG9lcyBub3QgYXBwZWFy
IGluIHRoZSBzdHlsZS1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eS4KIAotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQg
SW5saW5lIHN0eWxlIGJsb2NrcyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQK
LVRJTUVPVVQgSW5saW5lIHN0eWxlIGF0dHJpYnV0ZXMgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRl
c3QgdGltZWQgb3V0CitQQVNTIElubGluZSBzdHlsZSBibG9ja3Mgc2hvdWxkIGhhdmUgYSBzYW1w
bGUuCitQQVNTIElubGluZSBzdHlsZSBhdHRyaWJ1dGVzIHNob3VsZCBoYXZlIGEgc2FtcGxlLgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNh
bXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZp
b2xhdGlvbi9zdHlsZS1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dAppbmRleCA1OTg3Y2Uw
MjI1OGZlZmQwNTdkODUxNzQ1M2JmZDg5MzE1MTc4ZTcwLi4yNTI0ZjUxYjc4NjdmNzcwZTcyZjE4
ODI1YjQ3NDlmODk1Mjg1OGE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5
dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1w
b2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLW5vLW9wdC1pbi1leHBl
Y3RlZC50eHQKQEAgLTEsOCArMSw2IEBACiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBw
bHkgYSBzdHlsZXNoZWV0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3IgJ3Vuc2FmZS1p
bmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc3R5bGUtc3JjIGRpcmVjdGl2ZSBvZiB0aGUg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kuCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gYXBw
bHkgYSBzdHlsZXNoZWV0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3IgJ3Vuc2FmZS1p
bmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc3R5bGUtc3JjIGRpcmVjdGl2ZSBvZiB0aGUg
Q29udGVudCBTZWN1cml0eSBQb2xpY3kuCiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNz
YWdlID0gbnVsbAotCi1USU1FT1VUIElubGluZSBzdHlsZSBibG9ja3Mgc2hvdWxkIG5vdCBoYXZl
IGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBJbmxpbmUgc3R5bGUgYXR0cmlidXRl
cyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CitQQVNTIElubGluZSBz
dHlsZSBibG9ja3Mgc2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLgorUEFTUyBJbmxpbmUgc3R5bGUg
YXR0cmlidXRlcyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445040</attachid>
            <date>2021-11-23 09:57:31 -0800</date>
            <delta_ts>2021-11-23 10:28:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233398-20211123115730.patch</filename>
            <type>text/plain</type>
            <size>35977</size>
            <attacher name="Patrick Griffis">pgriffis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2MDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGJlYTRmNmZmZDU1Yzk1
NjFlZWQ3YTJiMTdhOThmMjRlMTA4MDA4YS4uNjUwNjk4ODAxMDY0ZTJmOTg0OGFlOWQ5ZjJlMzFm
YWZkOTE3YzIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTExLTIwICBQYXRy
aWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIENTUDogSW1wbGVt
ZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24gcmVwb3J0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMzk4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpbXBsZW1lbnRzIGhhbmRs
aW5nICdyZXBvcnQtc2FtcGxlJyBkaXJlY3RpdmUgYW5kIHN1Ym1pdHMgYSBzYW1wbGUKKyAgICAg
ICAgZm9yIHN0eWxlLXNyYyBhbmQgc2NyaXB0LXNyYy4gSXQgZG9lc24ndCBjdXJyZW50bHkgZXh0
cmFjdCB0aGUgc291cmNlCisgICAgICAgIGZyb20gZXZhbCgpIHlldC4KKworICAgICAgICAqIHBh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd05v
blBhcnNlckluc2VydGVkU2NyaXB0cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RnJhbWVBbmNlc3RvcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Bs
dWdpblR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvd09iamVjdEZyb21Tb3VyY2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVu
dFNlY3VyaXR5UG9saWN5OjphbGxvd0NoaWxkRnJhbWVGcm9tU291cmNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dSZXNvdXJjZUZyb21Tb3Vy
Y2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0Nvbm5lY3RUb1NvdXJjZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3k6OmFsbG93QmFzZVVSSSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5Q2xpZW50Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0OjpzaG91bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAg
ICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaDoKKyAgICAg
ICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OnBhcnNlU291cmNl
KToKKyAgICAgICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0OjpzaG91
bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAgICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRT
ZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmU6OnNob3VsZFJlcG9ydFNhbXBsZSBjb25z
dCk6CisKIDIwMjEtMTEtMTkgIEtpZXQgSG8gIDx0aG8yMkBhcHBsZS5jb20+CiAKICAgICAgICAg
SW1wbGVtZW50IHBhcnNpbmcgYW5kIGFuaW1hdGlvbiBzdXBwb3J0IGZvciByYXkoKSBzaGFwZSBh
Y2NlcHRlZCBieSBvZmZzZXQtcGF0aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeS5jcHAKaW5kZXggZjk2ZTE1OWQ0ODRlODJmNjZjZjNiNmExZDRi
MTU4ODdiYzU5N2NhMC4uNjFiZGRjNDgxMDEyZThiNjk0OTAxZTFiMWU1MjNkOTY2ZjQwZWY1YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3ku
Y3BwCkBAIC00MDYsNyArNDA2LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93
SmF2YVNjcmlwdFVSTHMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdAogICAgIGF1dG8g
aGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVN
ZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIFVSTCgpLCAiUmVm
dXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IiwgIml0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNh
ZmUtaW5saW5lJyIpOwogICAgICAgICAvLyBGSVhNRSAocmRhcjovLzgzMzMyODc0KSBpbXBsZW1l
bnQgc2NyaXB0U3JjRWxlbSBwcm9wZXJseS4KLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRl
bnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmNFbGVtLCB2aW9sYXRlZERp
cmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQb3Np
dGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSk7CisgICAgICAgIHJlcG9ydFZpb2xh
dGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjRWxlbSwg
dmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJM
LCBzb3VyY2UsIFRleHRQb3NpdGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSk7CiAg
ICAgICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmIHZpb2xhdGVkRGlyZWN0aXZlLmRpcmVj
dGl2ZUxpc3QoKS5pc1JlcG9ydE9ubHkoKSkgewogICAgICAgICAgICAgcmVwb3J0QmxvY2tlZFNj
cmlwdEV4ZWN1dGlvblRvSW5zcGVjdG9yKHZpb2xhdGVkRGlyZWN0aXZlLnRleHQoKSk7CiAgICAg
ICAgICAgICBkaWROb3RpZnlJbnNwZWN0b3IgPSB0cnVlOwpAQCAtNDIzLDcgKzQyMyw3IEBAIGJv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3Qg
U3RyaW5nJiBjb250ZXh0VVJMLCBjCiAgICAgYm9vbCBkaWROb3RpZnlJbnNwZWN0b3IgPSBmYWxz
ZTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBDb250ZW50
U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAgICAgIFN0
cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRT
ZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZl
LCBVUkwoKSwgIlJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBmb3IgYW4gaW5saW5lIGV2ZW50
IGhhbmRsZXIiLCAiJ3Vuc2FmZS1pbmxpbmUnIik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlvbihD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERp
cmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQb3Np
dGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsIGVsZW1l
bnQpOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNv
bGVNZXNzYWdlLCBjb250ZXh0VVJMLCBzb3VyY2UsIFRleHRQb3NpdGlvbihjb250ZXh0TGluZSwg
T3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsIGVsZW1lbnQpOwogICAgICAgICBpZiAo
IWRpZE5vdGlmeUluc3BlY3RvciAmJiAhdmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlzdCgp
LmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRCbG9ja2VkU2NyaXB0RXhlY3V0
aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgpKTsKICAgICAgICAgICAgIGRp
ZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC00NzQsNyArNDc0LDcgQEAgYm9vbCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93Tm9uUGFyc2VySW5zZXJ0ZWRTY3JpcHRzKGNvbnN0IFVSTCYg
dXJsLCBjb25zdAogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAg
ICAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9yZUZp
cnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9
IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2
ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxv
YWQiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZU5hbWVzOjpzY3JpcHRTcmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygp
LCBjb25zb2xlTWVzc2FnZSwgU3RyaW5nKCksIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRT
cmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwg
U3RyaW5nKCksIHNjcmlwdENvbnRlbnQsIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9OwogCiAgICAg
cmV0dXJuIGFsbFNjcmlwdFBvbGljaWVzQWxsb3coaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUsIHVy
bCwgbm9uY2UsIHNjcmlwdENvbnRlbnQsIHBhcnNlckluc2VydGVkKTsKQEAgLTQ4Nyw3ICs0ODcs
NyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTY3JpcHQoY29uc3Qg
U3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBPcgogICAgIGJvb2wgZGlkTm90aWZ5SW5zcGVjdG9y
ID0gZmFsc2U7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAg
ICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERp
cmVjdGl2ZSwgVVJMKCksICJSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQiLCAiaXRzIGhhc2gs
IGl0cyBub25jZSwgb3IgJ3Vuc2FmZS1pbmxpbmUnIik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlv
bihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRl
ZERpcmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIFRleHRQ
b3NpdGlvbihjb250ZXh0TGluZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsICZl
bGVtZW50KTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBj
b25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgc2NyaXB0Q29udGVudCwgVGV4dFBvc2l0aW9uKGNv
bnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOwog
ICAgICAgICBpZiAoIWRpZE5vdGlmeUluc3BlY3RvciAmJiAhdmlvbGF0ZWREaXJlY3RpdmUuZGly
ZWN0aXZlTGlzdCgpLmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRCbG9ja2Vk
U2NyaXB0RXhlY3V0aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgpKTsKICAg
ICAgICAgICAgIGRpZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC01MDcsNyArNTA3LDcgQEAg
Ym9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5n
JiBjb250ZXh0VVJMLCBjb25zdCBPcmQKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZl
ID0gWyZdIChjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGly
ZWN0aXZlKSB7CiAgICAgICAgIGF1dG8gbmFtZSA9IHNob3VsZENoZWNrVW5zYWZlSGFzaGVzID09
IENoZWNrVW5zYWZlSGFzaGVzOjpZZXMgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lczo6c3R5bGVTcmNBdHRyIDogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OnN0eWxlU3JjRWxlbTsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1l
c3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnN0
eWxlU3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgVVJMKCksICJSZWZ1c2VkIHRvIGFwcGx5IGEgc3R5
bGVzaGVldCIsICJpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZSciKTsKLSAg
ICAgICAgcmVwb3J0VmlvbGF0aW9uKG5hbWUsIHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9z
LCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBP
cmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOworICAgICAgICByZXBv
cnRWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxpbmUiX3MsIGNvbnNvbGVN
ZXNzYWdlLCBjb250ZXh0VVJMLCBzdHlsZUNvbnRlbnQsIFRleHRQb3NpdGlvbihjb250ZXh0TGlu
ZSwgT3JkaW5hbE51bWJlcigpKSwgVVJMKCksIG51bGxwdHIsICZlbGVtZW50KTsKICAgICB9Owog
CiAgICAgaWYgKHNob3VsZENoZWNrVW5zYWZlSGFzaGVzID09IENoZWNrVW5zYWZlSGFzaGVzOjpZ
ZXMpCkBAIC01NDUsNyArNTQ1LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93
RnJhbWVBbmNlc3RvcnMoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHUKICAgICBUZXh0
UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3Jk
aW5hbE51bWJlcigpKTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7
CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFuY2VzdG9ycywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBv
cnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5j
ZXN0b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwg
c291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250
ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJhbWVBbmNlc3RvcnMsIHZpb2xhdGVk
RGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmlu
Z1ZpZXcoKSwgc291cmNlUG9zaXRpb24pOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGljaWVz
QWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckZyYW1lQW5jZXN0b3IsIGZy
YW1lKTsKIH0KQEAgLTU3Myw3ICs1NzMsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
YWxsb3dGcmFtZUFuY2VzdG9ycyhjb25zdCBWZWN0b3I8UmVmUHRyPFNlY3VyaXR5T3JpZwogICAg
IFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgp
LCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBb
Jl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3Rp
dmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5jZXN0
b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLCAiUmVmdXNlZCB0byBsb2FkIik7Ci0gICAgICAg
IHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJh
bWVBbmNlc3RvcnMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNz
YWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9u
KENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFuY2VzdG9ycywgdmlv
bGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwg
U3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9s
aWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRTZWN1
cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yRnJhbWVBbmNlc3Rv
ck9yaWdpbnMsIGFuY2VzdG9yT3JpZ2lucyk7CiB9CkBAIC01ODYsNyArNTg2LDcgQEAgYm9vbCBD
b250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93UGx1Z2luVHlwZShjb25zdCBTdHJpbmcmIHR5cGUs
IGNvbnN0IFN0cmluZyYgdHkKICAgICBUZXh0UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5h
bE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcigpKTsKICAgICBhdXRvIGhhbmRs
ZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJl
Y3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2Fn
ZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZU5hbWVzOjpwbHVnaW5UeXBlcywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQg
dG8gbG9hZCIsICJpdHMgTUlNRSB0eXBlIik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250
ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6cGx1Z2luVHlwZXMsIHZpb2xhdGVkRGly
ZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBv
c2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzOjpwbHVnaW5UeXBlcywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmco
KSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlv
bik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZp
b2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZp
b2xhdGVkRGlyZWN0aXZlRm9yUGx1Z2luVHlwZSwgdHlwZSwgdHlwZUF0dHJpYnV0ZSk7CiB9CkBA
IC02MDIsNyArNjAyLDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93T2JqZWN0
RnJvbVNvdXJjZShjb25zdCBVUkwmIHVybCwgUmVkaXJlY3RSZXNwb24KICAgICBUZXh0UG9zaXRp
b24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51
bWJlcigpKTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAg
ICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9uKENv
bnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpvYmplY3RTcmMsIHZpb2xhdGVkRGly
ZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9u
KENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpvYmplY3RTcmMsIHZpb2xhdGVk
RGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJj
ZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzOjpvYmplY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5n
KCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmluZ1ZpZXcoKSwgc291cmNlUG9zaXRp
b24pOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGljaWVzQWxsb3coV1RGTW92ZShoYW5kbGVW
aW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0Ojp2
aW9sYXRlZERpcmVjdGl2ZUZvck9iamVjdFNvdXJjZSwgdXJsLCByZWRpcmVjdFJlc3BvbnNlUmVj
ZWl2ZWQgPT0gUmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkOjpZZXMsIENvbnRlbnRTZWN1cml0eVBv
bGljeVNvdXJjZUxpc3REaXJlY3RpdmU6OlNob3VsZEFsbG93RW1wdHlVUkxJZlNvdXJjZUxpc3RJ
c05vdE5vbmU6Olllcyk7CiB9CkBAIC02MTYsNyArNjE2LDcgQEAgYm9vbCBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OmFsbG93Q2hpbGRGcmFtZUZyb21Tb3VyY2UoY29uc3QgVVJMJiB1cmwsIFJlZGly
ZWN0UmUKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25zdCBDb250
ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAgICAgICAg
IGNvbnN0IGNoYXIqIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlID0gdmlvbGF0ZWREaXJlY3Rp
dmUubmFtZSgpID09IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZVNy
YyA/IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZVNyYyA6IENvbnRl
bnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpjaGlsZFNyYzsKICAgICAgICAgU3RyaW5n
IGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oZWZmZWN0aXZlVmlv
bGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQi
KTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2
aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJM
LCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihlZmZlY3RpdmVWaW9s
YXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1l
c3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsK
ICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0
aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0
aXZlRm9yRnJhbWUsIHVybCwgcmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGlyZWN0UmVz
cG9uc2VSZWNlaXZlZDo6WWVzKTsKIH0KQEAgLTYzMCw3ICs2MzAsNyBAQCBib29sIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6YWxsb3dSZXNvdXJjZUZyb21Tb3VyY2UoY29uc3QgVVJMJiB1cmwsIFJl
ZGlyZWN0UmVzcAogICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVy
OjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0
ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYg
dmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29u
c29sZU1lc3NhZ2VGb3JWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsIGJsb2NrZWRV
UkwsICJSZWZ1c2VkIHRvIGxvYWQiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKG5hbWUsIHZp
b2xhdGVkRGlyZWN0aXZlLCBibG9ja2VkVVJMLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291
cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihuYW1lLCB2
aW9sYXRlZERpcmVjdGl2ZSwgYmxvY2tlZFVSTC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNv
dXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1
cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgcmVz
b3VyY2VQcmVkaWNhdGUsIHVybCwgcmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGlyZWN0
UmVzcG9uc2VSZWNlaXZlZDo6WWVzKTsKIH0KQEAgLTY4Myw3ICs2ODMsNyBAQCBib29sIENvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dDb25uZWN0VG9Tb3VyY2UoY29uc3QgVVJMJiB1cmwsIFJl
ZGlyZWN0UmVzcG9ucwogICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVt
YmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlv
bGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2
ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0g
Y29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZl
TmFtZXM6OmNvbm5lY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGNv
bm5lY3QgdG8iKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzOjpjb25uZWN0U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmlu
ZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbiwgcHJlUmVkaXJl
Y3RVUkwpOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGly
ZWN0aXZlTmFtZXM6OmNvbm5lY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCks
IGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0cmluZ1ZpZXcoKSwgc291cmNlUG9zaXRpb24s
IHByZVJlZGlyZWN0VVJMKTsKICAgICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdU
Rk1vdmUoaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGly
ZWN0aXZlTGlzdDo6dmlvbGF0ZWREaXJlY3RpdmVGb3JDb25uZWN0U291cmNlLCB1cmwsIHJlZGly
ZWN0UmVzcG9uc2VSZWNlaXZlZCA9PSBSZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQ6Olllcyk7CiB9
CkBAIC03MDMsNyArNzAzLDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93QmFz
ZVVSSShjb25zdCBVUkwmIHVybCwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWMKICAgICBUZXh0UG9z
aXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5h
bE51bWJlcigpKTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZdIChjb25z
dCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlKSB7CiAg
ICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlvbGF0aW9u
KENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpiYXNlVVJJLCB2aW9sYXRlZERp
cmVjdGl2ZSwgdXJsLCAiUmVmdXNlZCB0byBjaGFuZ2UgdGhlIGRvY3VtZW50IGJhc2UgVVJMIHRv
Iik7Ci0gICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3Rp
dmVOYW1lczo6YmFzZVVSSSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29s
ZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9s
YXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmJhc2VVUkksIHZpb2xh
dGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIFN0
cmluZ1ZpZXcoKSwgc291cmNlUG9zaXRpb24pOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGlj
aWVzQWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckJhc2VVUkksIHVybCk7
CiB9CkBAIC03MzUsMjIgKzczNSwyMiBAQCBTdHJpbmcgQ29udGVudFNlY3VyaXR5UG9saWN5Ojpj
cmVhdGVVUkxGb3JSZXBvcnRpbmcoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZwogCiB2b2lk
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgZWZm
ZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3Qg
U3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgSlNDOjpKU0dsb2JhbE9iamVjdCogc3RhdGUpIGNvbnN0
CiB7Ci0gICAgLy8gRklYTUU6IEV4dHJhY3Qgc291cmNlIGZpbGUgYW5kIHNvdXJjZSBwb3NpdGlv
biBmcm9tIEpTQzo6RXhlY1N0YXRlLgotICAgIHJldHVybiByZXBvcnRWaW9sYXRpb24odmlvbGF0
ZWREaXJlY3RpdmUsIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLm5hbWVGb3JSZXBvcnRpbmco
KS5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZSgpLCBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZS5k
aXJlY3RpdmVMaXN0KCksIGJsb2NrZWRVUkwsIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgVGV4
dFBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXI6OmJl
Zm9yZUZpcnN0KCkpLCBzdGF0ZSk7CisgICAgLy8gRklYTUU6IEV4dHJhY3Qgc291cmNlIGZpbGUs
IGNvbnRlbnQsIGFuZCBwb3NpdGlvbiBmcm9tIEpTQzo6RXhlY1N0YXRlLgorICAgIHJldHVybiBy
ZXBvcnRWaW9sYXRpb24odmlvbGF0ZWREaXJlY3RpdmUsIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0
aXZlLm5hbWVGb3JSZXBvcnRpbmcoKS5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZSgpLCBlZmZlY3Rp
dmVWaW9sYXRlZERpcmVjdGl2ZS5kaXJlY3RpdmVMaXN0KCksIGJsb2NrZWRVUkwsIGNvbnNvbGVN
ZXNzYWdlLCBTdHJpbmcoKSwgU3RyaW5nVmlldygpLCBUZXh0UG9zaXRpb24oT3JkaW5hbE51bWJl
cjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSksIHN0YXRlKTsK
IH0KIAogdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBT
dHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZpb2xhdGVk
RGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0JiB2aW9s
YXRlZERpcmVjdGl2ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5n
JiBjb25zb2xlTWVzc2FnZSwgSlNDOjpKU0dsb2JhbE9iamVjdCogc3RhdGUpIGNvbnN0CiB7Ci0g
ICAgLy8gRklYTUU6IEV4dHJhY3Qgc291cmNlIGZpbGUgYW5kIHNvdXJjZSBwb3NpdGlvbiBmcm9t
IEpTQzo6RXhlY1N0YXRlLgotICAgIHJldHVybiByZXBvcnRWaW9sYXRpb24oZWZmZWN0aXZlVmlv
bGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZUxpc3Qs
IGJsb2NrZWRVUkwsIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgVGV4dFBvc2l0aW9uKE9yZGlu
YWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCkpLCBz
dGF0ZSk7CisgICAgLy8gRklYTUU6IEV4dHJhY3Qgc291cmNlIGZpbGUsIGNvbnRlbnQsIGFuZCBw
b3NpdGlvbiBmcm9tIEpTQzo6RXhlY1N0YXRlLgorICAgIHJldHVybiByZXBvcnRWaW9sYXRpb24o
ZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERp
cmVjdGl2ZUxpc3QsIGJsb2NrZWRVUkwsIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgU3RyaW5n
VmlldygpLCBUZXh0UG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5h
bE51bWJlcjo6YmVmb3JlRmlyc3QoKSksIHN0YXRlKTsKIH0KIAotdm9pZCBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVk
RGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVk
RGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29s
ZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBUZXh0UG9zaXRpb24mIHNv
dXJjZVBvc2l0aW9uLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMLCBKU0M6OkpTR2xvYmFsT2Jq
ZWN0KiBzdGF0ZSwgRWxlbWVudCogZWxlbWVudCkgY29uc3QKK3ZvaWQgQ29udGVudFNlY3VyaXR5
UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERp
cmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERp
cmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVN
ZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgU3RyaW5nVmlldyYgc291cmNl
Q29udGVudCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwgY29uc3QgVVJMJiBw
cmVSZWRpcmVjdFVSTCwgSlNDOjpKU0dsb2JhbE9iamVjdCogc3RhdGUsIEVsZW1lbnQqIGVsZW1l
bnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbihlZmZlY3RpdmVWaW9sYXRl
ZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUubmFtZUZvclJlcG9ydGluZygpLmNvbnZlcnRU
b0FTQ0lJTG93ZXJjYXNlKCksIHZpb2xhdGVkRGlyZWN0aXZlLmRpcmVjdGl2ZUxpc3QoKSwgYmxv
Y2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNlUG9zaXRpb24sIHN0YXRl
LCBwcmVSZWRpcmVjdFVSTCwgZWxlbWVudCk7CisgICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbihl
ZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUubmFtZUZvclJlcG9y
dGluZygpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCksIHZpb2xhdGVkRGlyZWN0aXZlLmRpcmVj
dGl2ZUxpc3QoKSwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNl
Q29udGVudCwgc291cmNlUG9zaXRpb24sIHN0YXRlLCBwcmVSZWRpcmVjdFVSTCwgZWxlbWVudCk7
CiB9CiAKLXZvaWQgQ29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3Qg
U3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRl
ZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlv
bGF0ZWREaXJlY3RpdmVMaXN0LCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkxTdHJpbmcsIGNvbnN0
IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBU
ZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSwg
Y29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCwgRWxlbWVudCogZWxlbWVudCkgY29uc3QKK3ZvaWQg
Q29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZl
Y3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwg
Y29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3Rp
dmVMaXN0LCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgY29u
c29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBTdHJpbmdWaWV3JiBz
b3VyY2VDb250ZW50LCBjb25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBzdGF0ZSwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCwgRWxlbWVudCog
ZWxlbWVudCkgY29uc3QKIHsKICAgICBsb2dUb0NvbnNvbGUoY29uc29sZU1lc3NhZ2UsIHNvdXJj
ZVVSTCwgc291cmNlUG9zaXRpb24ubV9saW5lLCBzb3VyY2VQb3NpdGlvbi5tX2NvbHVtbiwgc3Rh
dGUpOwogCkBAIC03NzEsNiArNzcxLDcgQEAgdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJl
cG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWMKICAgICBp
bmZvLmRvY3VtZW50VVJJID0gbV9kb2N1bWVudFVSTCA/IG1fZG9jdW1lbnRVUkwudmFsdWUoKS5z
dHJpcHBlZEZvclVzZUFzUmVmZXJyZXIoKSA6IGJsb2NrZWRVUkk7CiAgICAgaW5mby5saW5lTnVt
YmVyID0gc291cmNlUG9zaXRpb24ubV9saW5lLm9uZUJhc2VkSW50KCk7CiAgICAgaW5mby5jb2x1
bW5OdW1iZXIgPSBzb3VyY2VQb3NpdGlvbi5tX2NvbHVtbi5vbmVCYXNlZEludCgpOworICAgIGlu
Zm8uc2FtcGxlID0gdmlvbGF0ZWREaXJlY3RpdmVMaXN0LnNob3VsZFJlcG9ydFNhbXBsZSh2aW9s
YXRlZERpcmVjdGl2ZSkgPyBzb3VyY2VDb250ZW50LmxlZnQoNDApLnRvU3RyaW5nKCkgOiBlbXB0
eVN0cmluZygpOwogCiAgICAgaWYgKG1fY2xpZW50KQogICAgICAgICBtX2NsaWVudC0+d2lsbFNl
bmRDU1BWaW9sYXRpb25SZXBvcnQoaW5mbyk7CkBAIC04MTEsNiArODEyLDcgQEAgdm9pZCBDb250
ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2
ZVZpb2xhdGVkRGlyZWMKICAgICB2aW9sYXRpb25FdmVudEluaXQuc3RhdHVzQ29kZSA9IGh0dHBT
dGF0dXNDb2RlOwogICAgIHZpb2xhdGlvbkV2ZW50SW5pdC5saW5lTnVtYmVyID0gIGluZm8ubGlu
ZU51bWJlcjsKICAgICB2aW9sYXRpb25FdmVudEluaXQuY29sdW1uTnVtYmVyID0gaW5mby5jb2x1
bW5OdW1iZXI7CisgICAgdmlvbGF0aW9uRXZlbnRJbml0LnNhbXBsZSA9IGluZm8uc2FtcGxlOwog
ICAgIHZpb2xhdGlvbkV2ZW50SW5pdC5idWJibGVzID0gdHJ1ZTsKICAgICBpZiAobV9jbGllbnQp
CiAgICAgICAgIG1fY2xpZW50LT5lbnF1ZXVlU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChX
VEZNb3ZlKHZpb2xhdGlvbkV2ZW50SW5pdCkpOwpAQCAtODQ5LDYgKzg1MSw3IEBAIHZvaWQgQ29u
dGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3Rp
dmVWaW9sYXRlZERpcmVjCiAgICAgICAgIGNzcFJlcG9ydC0+c2V0U3RyaW5nKCJzb3VyY2UtZmls
ZSJfcywgaW5mby5zb3VyY2VGaWxlKTsKICAgICAgICAgY3NwUmVwb3J0LT5zZXRJbnRlZ2VyKCJs
aW5lLW51bWJlciJfcywgaW5mby5saW5lTnVtYmVyKTsKICAgICAgICAgY3NwUmVwb3J0LT5zZXRJ
bnRlZ2VyKCJjb2x1bW4tbnVtYmVyIl9zLCBpbmZvLmNvbHVtbk51bWJlcik7CisgICAgICAgIGNz
cFJlcG9ydC0+c2V0U3RyaW5nKCJzYW1wbGUiX3MsIGluZm8uc2FtcGxlKTsKICAgICB9CiAKICAg
ICBhdXRvIHJlcG9ydE9iamVjdCA9IEpTT046Ok9iamVjdDo6Y3JlYXRlKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3kuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCmluZGV4IDk5MWU0YjMx
ZWQxNDA3NGU2NzI0OTlkZDBlMWM3ODhiZDUwZjI0NjIuLmVjZmU1MmE3NTRmYzA2M2JlNjAzZDU5
ZTMyMDdjMTNiYTY1NDVkZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRl
bnRTZWN1cml0eVBvbGljeS5oCkBAIC0yMjIsOCArMjIyLDggQEAgcHJpdmF0ZToKIAogICAgIHZv
aWQgcmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3Rp
dmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3Rp
dmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2Fn
ZSwgSlNDOjpKU0dsb2JhbE9iamVjdCopIGNvbnN0OwogICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9u
KGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYg
dmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxp
c3QmLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3Nh
Z2UsIEpTQzo6SlNHbG9iYWxPYmplY3QqID0gbnVsbHB0cikgY29uc3Q7Ci0gICAgdm9pZCByZXBv
cnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29u
c3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29u
c3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25z
dCBTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwg
Y29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiA9
IG51bGxwdHIsIEVsZW1lbnQqID0gbnVsbHB0cikgY29uc3Q7Ci0gICAgdm9pZCByZXBvcnRWaW9s
YXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3Ry
aW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkws
IGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBj
b25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kiwg
Y29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBFbGVtZW50KiA9IG51bGxwdHIpIGNv
bnN0OworICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFN0cmluZ1ZpZXcm
IHNvdXJjZUNvbnRlbnQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9zaXRpb24sIGNvbnN0
IFVSTCYgcHJlUmVkaXJlY3RVUkwgPSBVUkwoKSwgSlNDOjpKU0dsb2JhbE9iamVjdCogPSBudWxs
cHRyLCBFbGVtZW50KiA9IG51bGxwdHIpIGNvbnN0OworICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9u
KGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYg
dmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxp
c3QmIHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25z
dCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3Qg
U3RyaW5nVmlldyYgc291cmNlQ29udGVudCwgY29uc3QgVGV4dFBvc2l0aW9uJiBzb3VyY2VQb3Np
dGlvbiwgSlNDOjpKU0dsb2JhbE9iamVjdCosIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwgPSBV
UkwoKSwgRWxlbWVudCogPSBudWxscHRyKSBjb25zdDsKICAgICB2b2lkIHJlcG9ydEJsb2NrZWRT
Y3JpcHRFeGVjdXRpb25Ub0luc3BlY3Rvcihjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQpIGNv
bnN0OwogCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVmlvbGF0ZWREaXJlY3RpdmUsIHR5cGVuYW1l
IEhhc2hTZWFyY2hQb2xpY3k+IGJvb2wgY2hlY2tIYXNoQW5kUmVwb3J0VmlvbGF0aW9uKGNvbnN0
IFN0cmluZyYsIGNvbnN0IFZpb2xhdGVkRGlyZWN0aXZlJiwgY29uc3QgSGFzaFNlYXJjaFBvbGlj
eSYsIE9wdGlvblNldDxDb250ZW50U2VjdXJpdHlQb2xpY3lIYXNoQWxnb3JpdGhtPiwgQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpWaW9sYXRlZERpcmVjdGl2ZUNhbGxiYWNrJiYpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5Q2xp
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGll
bnQuaAppbmRleCBmMmZlNjM4OTQ2NDk2ZWRiYjMwMzg0NTM5OGZmOWU3Mzk3YzM0YmQ5Li5hZmFl
YzI2M2I3N2ZkODIyYmQxMDE5NTdjNzFjZDJkMzM5MzhkMzhhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQuaApAQCAtMzYs
NiArMzYsNyBAQCBjbGFzcyBGb3JtRGF0YTsKIHN0cnVjdCBDU1BJbmZvIHsKICAgICBTdHJpbmcg
ZG9jdW1lbnRVUkk7CiAgICAgU3RyaW5nIHNvdXJjZUZpbGU7CisgICAgU3RyaW5nIHNhbXBsZTsK
ICAgICBpbnQgbGluZU51bWJlciB7IDAgfTsKICAgICBpbnQgY29sdW1uTnVtYmVyIHsgMCB9Owog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKaW5kZXggOWE4ZGYyOTI1MGViZDJjNjdiMzE0
ZjM5ZTI2YzgyNzRjZTRiMDRkMS4uMTExMTcxY2U4MzE5YzcxY2Q0MWM2MjRmNDk3NTNjNWJjZGM5
Zjg4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKQEAgLTY0Miw0ICs2NDIsMTUgQEAg
Ym9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0OjpzdHJpY3REeW5hbWljSW5j
bHVkZWQoKQogICAgIHJldHVybiBkaXJlY3RpdmUgJiYgZGlyZWN0aXZlLT5hbGxvd05vblBhcnNl
ckluc2VydGVkU2NyaXB0cygpOwogfQogCitib29sIENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZUxpc3Q6OnNob3VsZFJlcG9ydFNhbXBsZShjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0
aXZlKSBjb25zdAoreworICAgIENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3Rp
dmUqIGRpcmVjdGl2ZSA9IG51bGxwdHI7CisgICAgaWYgKHZpb2xhdGVkRGlyZWN0aXZlLnN0YXJ0
c1dpdGgoQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnN0eWxlU3JjKSkKKyAg
ICAgICAgZGlyZWN0aXZlID0gbV9zdHlsZVNyYy5nZXQoKTsKKyAgICBlbHNlIGlmICh2aW9sYXRl
ZERpcmVjdGl2ZS5zdGFydHNXaXRoKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVz
OjpzY3JpcHRTcmMpKQorICAgICAgICBkaXJlY3RpdmUgPSBtX3NjcmlwdFNyYy5nZXQoKTsKKwor
ICAgIHJldHVybiBkaXJlY3RpdmUgJiYgZGlyZWN0aXZlLT5zaG91bGRSZXBvcnRTYW1wbGUoKTsK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5oCmluZGV4
IDNlZjlmMGNkZjJkZTg0ZWVjNTc2OWI2NTllMmRkZmY3MGQ3NTJhNWEuLmMzZTIwODQwZDg2YzEw
ZmMwMjM0YWQ0ZTk2NmY5MGI2ZGQwZDVkODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmgKQEAg
LTg2LDYgKzg2LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgZXZhbERpc2FibGVkRXJy
b3JNZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbV9ldmFsRGlzYWJsZWRFcnJvck1lc3NhZ2U7IH0K
ICAgICBjb25zdCBTdHJpbmcmIHdlYkFzc2VtYmx5RGlzYWJsZWRFcnJvck1lc3NhZ2UoKSBjb25z
dCB7IHJldHVybiBtX3dlYkFzc2VtYmx5RGlzYWJsZWRFcnJvck1lc3NhZ2U7IH0KICAgICBib29s
IGlzUmVwb3J0T25seSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVwb3J0T25seTsgfQorICAgIGJvb2wg
c2hvdWxkUmVwb3J0U2FtcGxlKGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiByZXBvcnRVUklzKCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRVUklzOyB9CiAK
ICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgb25jZSB3ZSB0ZWFjaCBDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVMaXN0IGhvdyB0byBsb2cgYW4gYXJiaXRyYXJ5IGNvbnNvbGUgbWVzc2Fn
ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBv
bGljeVNvdXJjZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3Vy
aXR5UG9saWN5U291cmNlTGlzdC5jcHAKaW5kZXggMmZiMGUxZDExZTkwZmNkOGU3ZjM5OGUxMjFj
ZGI2OWJiMGZiODlhMy4uNDlkYTQ0YTlkY2MyYTRiM2ZiOGJmMTk4ZmQ5ZDdhNDU4NzdhMmQwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5
U291cmNlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3Vy
aXR5UG9saWN5U291cmNlTGlzdC5jcHAKQEAgLTI0OCw2ICsyNDgsMTEgQEAgdGVtcGxhdGU8dHlw
ZW5hbWUgQ2hhcmFjdGVyVHlwZT4gc3RkOjpvcHRpb25hbDxDb250ZW50U2VjdXJpdHlQb2xpY3lT
b3VyY2VMaXN0OjoKICAgICAgICAgcmV0dXJuIHNvdXJjZTsKICAgICB9CiAKKyAgICBpZiAoc2tp
cEV4YWN0bHlJZ25vcmluZ0FTQ0lJQ2FzZShidWZmZXIsICIncmVwb3J0LXNhbXBsZSciKSkgewor
ICAgICAgICBtX3JlcG9ydFNhbXBsZSA9IHRydWU7CisgICAgICAgIHJldHVybiBzb3VyY2U7Cisg
ICAgfQorCiAgICAgYXV0byBiZWdpbiA9IGJ1ZmZlci5wb3NpdGlvbigpOwogICAgIGF1dG8gYmVn
aW5Ib3N0ID0gYmVnaW47CiAgICAgYXV0byBiZWdpblBhdGggPSBidWZmZXIuZW5kKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3Vy
Y2VMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lT
b3VyY2VMaXN0LmgKaW5kZXggNjA5M2I4ODI2Zjk5MDg5NTIxZmJmODIyOTU3YTMzNzhkZDE4NmEz
NS4uMzc5NDVlNmNiMDNmMzFmMzAzMTM4Njg0YWMyMjgxOTIzYjZjMzZkNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJj
ZUxpc3QuaApAQCAtNTUsNiArNTUsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc05vbmUoKSBjb25z
dCB7IHJldHVybiBtX2lzTm9uZTsgfQogICAgIGJvb2wgYWxsb3dOb25QYXJzZXJJbnNlcnRlZFNj
cmlwdHMoKSBjb25zdCB7IHJldHVybiBtX2FsbG93Tm9uUGFyc2VySW5zZXJ0ZWRTY3JpcHRzOyB9
CiAgICAgYm9vbCBhbGxvd1Vuc2FmZUhhc2hlcygpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dVbnNh
ZmVIYXNoZXM7IH0KKyAgICBib29sIHNob3VsZFJlcG9ydFNhbXBsZSgpIGNvbnN0IHsgcmV0dXJu
IG1fcmVwb3J0U2FtcGxlOyB9CiAKIHByaXZhdGU6CiAgICAgc3RydWN0IEhvc3QgewpAQCAtOTYs
NiArOTcsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc05vbmUgeyBmYWxzZSB9OwogICAgIGJv
b2wgbV9hbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cyB7IGZhbHNlIH07CiAgICAgYm9vbCBt
X2FsbG93VW5zYWZlSGFzaGVzIHsgZmFsc2UgfTsKKyAgICBib29sIG1fcmVwb3J0U2FtcGxlIHsg
ZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3Rp
dmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJj
ZUxpc3REaXJlY3RpdmUuaAppbmRleCA0YWFmMTk5MjVmMTk2NThkYTg2YWZiM2Y5MmMxNmY3ODVl
OTljYTE5Li43OGJhOTVhODFkMDEzOTM2OGQzODdmMWRkZjA0NTVkNWRkOWNlMzBkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VM
aXN0RGlyZWN0aXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3Vy
aXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oCkBAIC00NSw2ICs0NSw3IEBAIHB1YmxpYzoK
ICAgICBib29sIGFsbG93SW5saW5lKCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0LmFsbG93
SW5saW5lKCk7IH0KICAgICBib29sIGFsbG93RXZhbCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNl
TGlzdC5hbGxvd0V2YWwoKTsgfQogICAgIGJvb2wgYWxsb3dOb25QYXJzZXJJbnNlcnRlZFNjcmlw
dHMoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3QuYWxsb3dOb25QYXJzZXJJbnNlcnRlZFNj
cmlwdHMoKTsgfQorICAgIGJvb2wgc2hvdWxkUmVwb3J0U2FtcGxlKCkgY29uc3QgeyByZXR1cm4g
bV9zb3VyY2VMaXN0LnNob3VsZFJlcG9ydFNhbXBsZSgpOyB9CiAKICAgICBPcHRpb25TZXQ8Q29u
dGVudFNlY3VyaXR5UG9saWN5SGFzaEFsZ29yaXRobT4gaGFzaEFsZ29yaXRobXNVc2VkKCkgY29u
c3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0Lmhhc2hBbGdvcml0aG1zVXNlZCgpOyB9CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDVkODU5YjY0ZTEyZjU4MDUzZjIzZTQ2YzVlNTU4
ZWNmYzcwMWIxMWYuLjUwMGQxNWEwNGE0NTRmOTZkYWZmOWUyOGY5M2YwMWUxYWQxMGMzZDEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTExLTIw
ICBQYXRyaWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIENTUDog
SW1wbGVtZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24gcmVwb3J0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMzk4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGV4cGVjdGF0
aW9ucyB3aXRoIG1vcmUgcGFzc2VzLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nv
bnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1w
bGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNl
Y3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLW5vLW9w
dC1pbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQt
c2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHkt
cG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1uby1vcHQtaW4tZXhw
ZWN0ZWQudHh0OgorCiAyMDIxLTExLTE5ICBLaWV0IEhvICA8dGhvMjJAYXBwbGUuY29tPgogCiAg
ICAgICAgIEltcGxlbWVudCBwYXJzaW5nIGFuZCBhbmltYXRpb24gc3VwcG9ydCBmb3IgcmF5KCkg
c2hhcGUgYWNjZXB0ZWQgYnkgb2Zmc2V0LXBhdGgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2Vj
dXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9s
aWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDJkZDBhMTM1MDQyNjlmNDY2NDZkMWY4ODZhNmVhNTdmOGUxYzlmZmUuLjY3ODA0NjQ2ZmNl
MmUzZTQ3ZWJjYWZmMjU0MGZiMDZkN2Q2ODI0ZTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2Vj
dXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5
LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLWV4cGVjdGVkLnR4
dApAQCAtMSw4ICsxLDUgQEAKLUNPTlNPTEUgTUVTU0FHRTogVGhlIHNvdXJjZSBsaXN0IGZvciBD
b250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmUgJ3NjcmlwdC1zcmMnIGNvbnRhaW5zIGFu
IGludmFsaWQgc291cmNlOiAnJ3JlcG9ydC1zYW1wbGUnJy4gSXQgd2lsbCBiZSBpZ25vcmVkLgog
Q09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQgYmVjYXVzZSBpdHMg
aGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZScgZG9lcyBub3QgYXBwZWFyIGluIHRo
ZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCiBD
T05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBmb3IgYW4gaW5saW5l
IGV2ZW50IGhhbmRsZXIgYmVjYXVzZSAndW5zYWZlLWlubGluZScgZG9lcyBub3QgYXBwZWFyIGlu
IHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3ku
Ci1DT05TT0xFIE1FU1NBR0U6IFRoZSBzb3VyY2UgbGlzdCBmb3IgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlICdzY3JpcHQtc3JjJyBjb250YWlucyBhbiBpbnZhbGlkIHNvdXJjZTog
JydyZXBvcnQtc2FtcGxlJycuIEl0IHdpbGwgYmUgaWdub3JlZC4KLUNPTlNPTEUgTUVTU0FHRTog
VGhlIHNvdXJjZSBsaXN0IGZvciBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmUgJ3Nj
cmlwdC1zcmMnIGNvbnRhaW5zIGFuIGludmFsaWQgc291cmNlOiAnJ3JlcG9ydC1zYW1wbGUnJy4g
SXQgd2lsbCBiZSBpZ25vcmVkLgogQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUg
YSBzY3JpcHQgYmVjYXVzZSAndW5zYWZlLWV2YWwnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc2Ny
aXB0LXNyYyBkaXJlY3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgogQ09OU09M
RSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQgYmVjYXVzZSAndW5zYWZlLWV2
YWwnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc2NyaXB0LXNyYyBkaXJlY3RpdmUgb2YgdGhlIENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5LgogQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1
dGUgYSBzY3JpcHQgYmVjYXVzZSBpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGlu
ZScgZG9lcyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kuCkBAIC0xMCw4ICs3LDggQEAgQ09OU09MRSBNRVNTQUdFOiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQgYmVjYXVzZSBpdHMgaGFzaCwgaXRzIG5vbmNlLCBv
ciAndW4KIAogSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCiAKLVRJTUVP
VVQgSW5saW5lIHNjcmlwdCBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKLVRJ
TUVPVVQgSW5saW5lIGV2ZW50IGhhbmRsZXJzIHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRp
bWVkIG91dAorUEFTUyBJbmxpbmUgc2NyaXB0IHNob3VsZCBoYXZlIGEgc2FtcGxlLgorUEFTUyBJ
bmxpbmUgZXZlbnQgaGFuZGxlcnMgc2hvdWxkIGhhdmUgYSBzYW1wbGUuCiBUSU1FT1VUIEphdmFT
Y3JpcHQgVVJMcyBpbiBpZnJhbWVzIHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91
dAogVElNRU9VVCBldmFsKCkgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CiBU
SU1FT1VUIHNldEludGVydmFsKCkgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1z
YW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2
aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0CmluZGV4IGQ4NWIy
ODBmNmU4Nzk0YTEyZTEwNTcxZDg3OGIzZWYxNTc5N2YwMjIuLjVlYzZiNWU1YjI3ZDAxNzg4Yzll
NTU2Mzk0MjM1MjkyOTBmNTc4NTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xp
Y3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0
eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1uby1vcHQtaW4t
ZXhwZWN0ZWQudHh0CkBAIC03LDggKzcsOCBAQCBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8g
ZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bgogCiBI
YXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKIAotVElNRU9VVCBJbmxpbmUg
c2NyaXB0IHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKLVRJTUVPVVQg
SW5saW5lIGV2ZW50IGhhbmRsZXJzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1l
ZCBvdXQKK1BBU1MgSW5saW5lIHNjcmlwdCBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuCitQQVNT
IElubGluZSBldmVudCBoYW5kbGVycyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuCiBUSU1FT1VU
IEphdmFTY3JpcHQgVVJMcyBpbiBpZnJhbWVzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVz
dCB0aW1lZCBvdXQKLVRJTUVPVVQgZXZhbCgpLWFsaWtlcyBzaG91bGQgbm90IGhhdmUgYSBzYW1w
bGUuIFRlc3QgdGltZWQgb3V0CitQQVNTIGV2YWwoKS1hbGlrZXMgc2hvdWxkIG5vdCBoYXZlIGEg
c2FtcGxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9u
L3N0eWxlLXNhbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlv
bGF0aW9uL3N0eWxlLXNhbXBsZS1leHBlY3RlZC50eHQKaW5kZXggM2ZmMjE5YzU5NWZhM2VjZDMz
MzFhZTk1NTFlNWJkYjRhMzU4Nzk0MS4uN2M1OTU5ZTkyYTg5YjY2OTZiNjE4OGU1ZDVjNzQ3YWQz
ZTg2OTgzZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9z
dHlsZS1zYW1wbGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2
aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDYgQEAKLUNPTlNP
TEUgTUVTU0FHRTogVGhlIHNvdXJjZSBsaXN0IGZvciBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBk
aXJlY3RpdmUgJ3N0eWxlLXNyYycgY29udGFpbnMgYW4gaW52YWxpZCBzb3VyY2U6ICcncmVwb3J0
LXNhbXBsZScnLiBJdCB3aWxsIGJlIGlnbm9yZWQuCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQg
dG8gYXBwbHkgYSBzdHlsZXNoZWV0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3IgJ3Vu
c2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc3R5bGUtc3JjIGRpcmVjdGl2ZSBv
ZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCiBDT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQg
dG8gYXBwbHkgYSBzdHlsZXNoZWV0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3IgJ3Vu
c2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc3R5bGUtc3JjIGRpcmVjdGl2ZSBv
ZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQp
LCBtZXNzYWdlID0gbnVsbAotCi1USU1FT1VUIElubGluZSBzdHlsZSBibG9ja3Mgc2hvdWxkIGhh
dmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0Ci1USU1FT1VUIElubGluZSBzdHlsZSBhdHRyaWJ1
dGVzIHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAorUEFTUyBJbmxpbmUgc3R5
bGUgYmxvY2tzIHNob3VsZCBoYXZlIGEgc2FtcGxlLgorUEFTUyBJbmxpbmUgc3R5bGUgYXR0cmli
dXRlcyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1
cml0eXBvbGljeXZpb2xhdGlvbi9zdHlsZS1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1
cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLW5vLW9wdC1p
bi1leHBlY3RlZC50eHQKaW5kZXggNTk4N2NlMDIyNThmZWZkMDU3ZDg1MTc0NTNiZmQ4OTMxNTE3
OGU3MC4uMjUyNGY1MWI3ODY3Zjc3MGU3MmYxODgyNWI0NzQ5Zjg5NTI4NThhNSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNl
Y3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zdHlsZS1zYW1wbGUtbm8tb3B0
LWluLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9u
L3N0eWxlLXNhbXBsZS1uby1vcHQtaW4tZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsNiBAQAogQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGEgc3R5bGVzaGVldCBiZWNhdXNlIGl0cyBo
YXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhl
IHN0eWxlLXNyYyBkaXJlY3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgogQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGFwcGx5IGEgc3R5bGVzaGVldCBiZWNhdXNlIGl0cyBo
YXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhl
IHN0eWxlLXNyYyBkaXJlY3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgogCi1I
YXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotVElNRU9VVCBJbmxpbmUg
c3R5bGUgYmxvY2tzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKLVRJ
TUVPVVQgSW5saW5lIHN0eWxlIGF0dHJpYnV0ZXMgc2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLiBU
ZXN0IHRpbWVkIG91dAorUEFTUyBJbmxpbmUgc3R5bGUgYmxvY2tzIHNob3VsZCBub3QgaGF2ZSBh
IHNhbXBsZS4KK1BBU1MgSW5saW5lIHN0eWxlIGF0dHJpYnV0ZXMgc2hvdWxkIG5vdCBoYXZlIGEg
c2FtcGxlLgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445042</attachid>
            <date>2021-11-23 10:28:35 -0800</date>
            <delta_ts>2021-11-23 10:59:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233398-20211123122834.patch</filename>
            <type>text/plain</type>
            <size>34789</size>
            <attacher name="Patrick Griffis">pgriffis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2MTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTk2ZDM3OWQ0NGIzOGVi
ZTZhMWJlZTdhMmI4ZWJkMjYxZmMyZTA0MS4uMDBmZTZhNmM1OWI1MjJlYWJmY2IyZTgzYWNlMzRk
Y2IxOThiOGUyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTExLTIzICBQYXRy
aWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIENTUDogSW1wbGVt
ZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24gcmVwb3J0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMzk4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpbXBsZW1lbnRzIGhhbmRs
aW5nICdyZXBvcnQtc2FtcGxlJyBkaXJlY3RpdmUgYW5kIHN1Ym1pdHMgYSBzYW1wbGUKKyAgICAg
ICAgZm9yIHN0eWxlLXNyYyBhbmQgc2NyaXB0LXNyYy4gSXQgZG9lc24ndCBjdXJyZW50bHkgZXh0
cmFjdCB0aGUgc291cmNlCisgICAgICAgIGZyb20gZXZhbCgpIHlldC4KKworICAgICAgICAqIHBh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd05v
blBhcnNlckluc2VydGVkU2NyaXB0cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RnJhbWVBbmNlc3RvcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Bs
dWdpblR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvd09iamVjdEZyb21Tb3VyY2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVu
dFNlY3VyaXR5UG9saWN5OjphbGxvd0NoaWxkRnJhbWVGcm9tU291cmNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dSZXNvdXJjZUZyb21Tb3Vy
Y2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0Nvbm5lY3RUb1NvdXJjZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3k6OmFsbG93QmFzZVVSSSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5Q2xpZW50Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0OjpzaG91bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAg
ICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaDoKKyAgICAg
ICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OnBhcnNlU291cmNl
KToKKyAgICAgICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0OjpzaG91
bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAgICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRT
ZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmU6OnNob3VsZFJlcG9ydFNhbXBsZSBjb25z
dCk6CisKIDIwMjEtMTEtMjMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIENTUDogc2VjdXJpdHkgcG9saWN5IHZpb2xhdGlvbiBldmVudCBpcyBh
bHdheXMgdXNpbmcgZG9jdW1lbnQgYXMgdGFyZ2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcAppbmRleCA5NTczNWMwMGVjM2VkNjYyMjRi
ZWE2OTIxMWQxOGYyN2E4MDExNzk4Li5mYmQ1ZjdhNzEyMjk1NTlkZWRhZTg0NWNmNDc0N2Y1YTZk
ZDlhMDVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJp
dHlQb2xpY3kuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5jcHAKQEAgLTQwNiw3ICs0MDYsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0CiAg
ICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcg
Y29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgVVJM
KCksICJSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQiLCAiaXRzIGhhc2gsIGl0cyBub25jZSwg
b3IgJ3Vuc2FmZS1pbmxpbmUnIik7CiAgICAgICAgIC8vIEZJWE1FIChyZGFyOi8vODMzMzI4NzQp
IGltcGxlbWVudCBzY3JpcHRTcmNFbGVtIHByb3Blcmx5LgotICAgICAgICByZXBvcnRWaW9sYXRp
b24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyY0VsZW0sIHZp
b2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
VGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpKTsKKyAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRT
cmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNv
bnRleHRVUkwsIHNvdXJjZSwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVy
KCkpKTsKICAgICAgICAgaWYgKCFkaWROb3RpZnlJbnNwZWN0b3IgJiYgdmlvbGF0ZWREaXJlY3Rp
dmUuZGlyZWN0aXZlTGlzdCgpLmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRC
bG9ja2VkU2NyaXB0RXhlY3V0aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgp
KTsKICAgICAgICAgICAgIGRpZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC00MjMsNyArNDIz
LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVy
cyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGMKICAgICBib29sIGRpZE5vdGlmeUluc3BlY3Rv
ciA9IGZhbHNlOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAg
ICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24o
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWRE
aXJlY3RpdmUsIFVSTCgpLCAiUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGZvciBhbiBpbmxp
bmUgZXZlbnQgaGFuZGxlciIsICIndW5zYWZlLWlubGluZSciKTsKLSAgICAgICAgcmVwb3J0Vmlv
bGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZp
b2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
VGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0
ciwgZWxlbWVudCk7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJf
cywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIHNvdXJjZSwgVGV4dFBvc2l0aW9uKGNvbnRl
eHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgZWxlbWVudCk7CiAgICAg
ICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmICF2aW9sYXRlZERpcmVjdGl2ZS5kaXJlY3Rp
dmVMaXN0KCkuaXNSZXBvcnRPbmx5KCkpIHsKICAgICAgICAgICAgIHJlcG9ydEJsb2NrZWRTY3Jp
cHRFeGVjdXRpb25Ub0luc3BlY3Rvcih2aW9sYXRlZERpcmVjdGl2ZS50ZXh0KCkpOwogICAgICAg
ICAgICAgZGlkTm90aWZ5SW5zcGVjdG9yID0gdHJ1ZTsKQEAgLTQ3NCw3ICs0NzQsNyBAQCBib29s
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dOb25QYXJzZXJJbnNlcnRlZFNjcmlwdHMoY29u
c3QgVVJMJiB1cmwsIGNvbnN0CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsm
XSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2
ZSkgewogICAgICAgICBUZXh0UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6
YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcigpKTsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVN
ZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVz
ZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyY0VsZW0sIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwu
c3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgc291cmNlUG9zaXRpb24pOworICAg
ICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OnNjcmlwdFNyY0VsZW0sIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVN
ZXNzYWdlLCBTdHJpbmcoKSwgc2NyaXB0Q29udGVudCwgc291cmNlUG9zaXRpb24pOwogICAgIH07
CiAKICAgICByZXR1cm4gYWxsU2NyaXB0UG9saWNpZXNBbGxvdyhoYW5kbGVWaW9sYXRlZERpcmVj
dGl2ZSwgdXJsLCBub25jZSwgc2NyaXB0Q29udGVudCwgcGFyc2VySW5zZXJ0ZWQpOwpAQCAtNDg3
LDcgKzQ4Nyw3IEBAIGJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVNjcmlw
dChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IE9yCiAgICAgYm9vbCBkaWROb3RpZnlJ
bnNwZWN0b3IgPSBmYWxzZTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZd
IChjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZl
KSB7CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlv
bGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZp
b2xhdGVkRGlyZWN0aXZlLCBVUkwoKSwgIlJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCIsICJp
dHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZSciKTsKLSAgICAgICAgcmVwb3J0
VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMs
IHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVS
TCwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVs
bHB0ciwgJmVsZW1lbnQpOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxp
bmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBzY3JpcHRDb250ZW50LCBUZXh0UG9z
aXRpb24oY29udGV4dExpbmUsIE9yZGluYWxOdW1iZXIoKSksIFVSTCgpLCBudWxscHRyLCAmZWxl
bWVudCk7CiAgICAgICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmICF2aW9sYXRlZERpcmVj
dGl2ZS5kaXJlY3RpdmVMaXN0KCkuaXNSZXBvcnRPbmx5KCkpIHsKICAgICAgICAgICAgIHJlcG9y
dEJsb2NrZWRTY3JpcHRFeGVjdXRpb25Ub0luc3BlY3Rvcih2aW9sYXRlZERpcmVjdGl2ZS50ZXh0
KCkpOwogICAgICAgICAgICAgZGlkTm90aWZ5SW5zcGVjdG9yID0gdHJ1ZTsKQEAgLTUwNyw3ICs1
MDcsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZShjb25z
dCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IE9yZAogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWRE
aXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlv
bGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgYXV0byBuYW1lID0gc2hvdWxkQ2hlY2tVbnNhZmVI
YXNoZXMgPT0gQ2hlY2tVbnNhZmVIYXNoZXM6OlllcyA/IENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzOjpzdHlsZVNyY0F0dHIgOiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3Rp
dmVOYW1lczo6c3R5bGVTcmNFbGVtOwogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBj
b25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lczo6c3R5bGVTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCBVUkwoKSwgIlJlZnVzZWQgdG8gYXBw
bHkgYSBzdHlsZXNoZWV0IiwgIml0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5l
JyIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsICJp
bmxpbmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBUZXh0UG9zaXRpb24oY29udGV4
dExpbmUsIE9yZGluYWxOdW1iZXIoKSksIFVSTCgpLCBudWxscHRyLCAmZWxlbWVudCk7CisgICAg
ICAgIHJlcG9ydFZpb2xhdGlvbihuYW1lLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJfcywg
Y29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIHN0eWxlQ29udGVudCwgVGV4dFBvc2l0aW9uKGNv
bnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOwog
ICAgIH07CiAKICAgICBpZiAoc2hvdWxkQ2hlY2tVbnNhZmVIYXNoZXMgPT0gQ2hlY2tVbnNhZmVI
YXNoZXM6OlllcykKQEAgLTU0NSw3ICs1NDUsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6YWxsb3dGcmFtZUFuY2VzdG9ycyhjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgdQog
ICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJz
dCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUg
PSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJl
Y3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VG
b3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5j
ZXN0b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLCAiUmVmdXNlZCB0byBsb2FkIik7Ci0gICAg
ICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6
ZnJhbWVBbmNlc3RvcnMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVN
ZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFuY2VzdG9ycywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVS
TCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxs
UG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRT
ZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yRnJhbWVBbmNl
c3RvciwgZnJhbWUpOwogfQpAQCAtNTczLDcgKzU3Myw3IEBAIGJvb2wgQ29udGVudFNlY3VyaXR5
UG9saWN5OjphbGxvd0ZyYW1lQW5jZXN0b3JzKGNvbnN0IFZlY3RvcjxSZWZQdHI8U2VjdXJpdHlP
cmlnCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9y
ZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVj
dGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRl
ZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVz
c2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJh
bWVBbmNlc3RvcnMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQiKTsK
LSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5h
bWVzOjpmcmFtZUFuY2VzdG9ycywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29u
c29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5jZXN0
b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291
cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9OwogICAgIHJldHVy
biBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUpLCAmQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6dmlvbGF0ZWREaXJlY3RpdmVGb3JGcmFt
ZUFuY2VzdG9yT3JpZ2lucywgYW5jZXN0b3JPcmlnaW5zKTsKIH0KQEAgLTU4Niw3ICs1ODYsNyBA
QCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dQbHVnaW5UeXBlKGNvbnN0IFN0cmlu
ZyYgdHlwZSwgY29uc3QgU3RyaW5nJiB0eQogICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlv
bihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1
dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNv
bGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlTmFtZXM6OnBsdWdpblR5cGVzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLCAi
UmVmdXNlZCB0byBsb2FkIiwgIml0cyBNSU1FIHR5cGUiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpwbHVnaW5UeXBlcywgdmlv
bGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwg
c291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTmFtZXM6OnBsdWdpblR5cGVzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJs
LnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJj
ZVBvc2l0aW9uKTsKICAgICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUo
aGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZl
TGlzdDo6dmlvbGF0ZWREaXJlY3RpdmVGb3JQbHVnaW5UeXBlLCB0eXBlLCB0eXBlQXR0cmlidXRl
KTsKIH0KQEAgLTYwMiw3ICs2MDIsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxs
b3dPYmplY3RGcm9tU291cmNlKGNvbnN0IFVSTCYgdXJsLCBSZWRpcmVjdFJlc3BvbgogICAgIFRl
eHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBP
cmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0g
KGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUp
IHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9s
YXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywgdmlv
bGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVS
TCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVy
bC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3Vy
Y2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3Zl
KGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2
ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yT2JqZWN0U291cmNlLCB1cmwsIHJlZGlyZWN0UmVz
cG9uc2VSZWNlaXZlZCA9PSBSZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQ6OlllcywgQ29udGVudFNl
Y3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZTo6U2hvdWxkQWxsb3dFbXB0eVVSTElmU291
cmNlTGlzdElzTm90Tm9uZTo6WWVzKTsKIH0KQEAgLTYxNiw3ICs2MTYsNyBAQCBib29sIENvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dDaGlsZEZyYW1lRnJvbVNvdXJjZShjb25zdCBVUkwmIHVy
bCwgUmVkaXJlY3RSZQogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsK
ICAgICAgICAgY29uc3QgY2hhciogZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUgPSB2aW9sYXRl
ZERpcmVjdGl2ZS5uYW1lKCkgPT0gQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OmZyYW1lU3JjID8gQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lU3Jj
IDogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNoaWxkU3JjOwogICAgICAg
ICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihlZmZl
Y3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQg
dG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oZWZmZWN0aXZlVmlvbGF0ZWREaXJl
Y3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBz
b3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKGVmZmVj
dGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBj
b25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsK
ICAgICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0
ZWREaXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6dmlvbGF0
ZWREaXJlY3RpdmVGb3JGcmFtZSwgdXJsLCByZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQgPT0gUmVk
aXJlY3RSZXNwb25zZVJlY2VpdmVkOjpZZXMpOwogfQpAQCAtNjMwLDcgKzYzMCw3IEBAIGJvb2wg
Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Jlc291cmNlRnJvbVNvdXJjZShjb25zdCBVUkwm
IHVybCwgUmVkaXJlY3RSZXNwCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGlu
YWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5k
bGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGly
ZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3Nh
Z2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihuYW1lLCB2aW9sYXRlZERpcmVjdGl2ZSwg
YmxvY2tlZFVSTCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24o
bmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsIGJsb2NrZWRVUkwuc3RyaW5nKCksIGNvbnNvbGVNZXNz
YWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9u
KG5hbWUsIHZpb2xhdGVkRGlyZWN0aXZlLCBibG9ja2VkVVJMLnN0cmluZygpLCBjb25zb2xlTWVz
c2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9Owog
ICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0ZWREaXJlY3Rp
dmUpLCByZXNvdXJjZVByZWRpY2F0ZSwgdXJsLCByZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQgPT0g
UmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkOjpZZXMpOwogfQpAQCAtNjgzLDcgKzY4Myw3IEBAIGJv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0Nvbm5lY3RUb1NvdXJjZShjb25zdCBVUkwm
IHVybCwgUmVkaXJlY3RSZXNwb25zCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9y
ZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBo
YW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1l
c3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmVOYW1lczo6Y29ubmVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVz
ZWQgdG8gY29ubmVjdCB0byIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNvbm5lY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1
cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uLCBw
cmVSZWRpcmVjdFVSTCk7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVOYW1lczo6Y29ubmVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5z
dHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQ
b3NpdGlvbiwgcHJlUmVkaXJlY3RVUkwpOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGljaWVz
QWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckNvbm5lY3RTb3VyY2UsIHVy
bCwgcmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGlyZWN0UmVzcG9uc2VSZWNlaXZlZDo6
WWVzKTsKIH0KQEAgLTcwMyw3ICs3MDMsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
YWxsb3dCYXNlVVJJKGNvbnN0IFVSTCYgdXJsLCBib29sIG92ZXJyaWRlQ29udGVudFNlYwogICAg
IFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgp
LCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBb
Jl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3Rp
dmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmJhc2VVUkksIHZp
b2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGNoYW5nZSB0aGUgZG9jdW1lbnQgYmFz
ZSBVUkwgdG8iKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzOjpiYXNlVVJJLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygp
LCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJl
cG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6YmFzZVVS
SSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJj
ZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4g
YWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRl
bnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yQmFzZVVS
SSwgdXJsKTsKIH0KQEAgLTcyNCwyMiArNzI0LDIyIEBAIFN0cmluZyBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmRlcHJlY2F0ZWRVUkxGb3JSZXBvcnRpbmcoY29uc3QgVVJMJiB1cmwpIGNvbnN0CiAK
IHZvaWQgQ29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5n
JiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZl
JiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBj
b25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSkg
Y29uc3QKIHsKLSAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSBhbmQgc291cmNlIHBv
c2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCi0gICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbih2
aW9sYXRlZERpcmVjdGl2ZSwgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUubmFtZUZvclJlcG9y
dGluZygpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCksIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0
aXZlLmRpcmVjdGl2ZUxpc3QoKSwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygp
LCBUZXh0UG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJl
cjo6YmVmb3JlRmlyc3QoKSksIHN0YXRlKTsKKyAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2Ug
ZmlsZSwgY29udGVudCwgYW5kIHBvc2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCisgICAgcmV0
dXJuIHJlcG9ydFZpb2xhdGlvbih2aW9sYXRlZERpcmVjdGl2ZSwgZWZmZWN0aXZlVmlvbGF0ZWRE
aXJlY3RpdmUubmFtZUZvclJlcG9ydGluZygpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCksIGVm
ZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLmRpcmVjdGl2ZUxpc3QoKSwgYmxvY2tlZFVSTCwgY29u
c29sZU1lc3NhZ2UsIFN0cmluZygpLCBTdHJpbmdWaWV3KCksIFRleHRQb3NpdGlvbihPcmRpbmFs
TnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3Rh
dGUpOwogfQogCiB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNv
bnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Qm
IHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25zdCBT
dHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSkgY29uc3QK
IHsKLSAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSBhbmQgc291cmNlIHBvc2l0aW9u
IGZyb20gSlNDOjpFeGVjU3RhdGUuCi0gICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbihlZmZlY3Rp
dmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZl
TGlzdCwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygpLCBUZXh0UG9zaXRpb24o
T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3Qo
KSksIHN0YXRlKTsKKyAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSwgY29udGVudCwg
YW5kIHBvc2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCisgICAgcmV0dXJuIHJlcG9ydFZpb2xh
dGlvbihlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xh
dGVkRGlyZWN0aXZlTGlzdCwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygpLCBT
dHJpbmdWaWV3KCksIFRleHRQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBP
cmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3RhdGUpOwogfQogCi12b2lkIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFRleHRQb3NpdGlv
biYgc291cmNlUG9zaXRpb24sIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwsIEpTQzo6SlNHbG9i
YWxPYmplY3QqIHN0YXRlLCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAordm9pZCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xh
dGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xh
dGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29u
c29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBTdHJpbmdWaWV3JiBz
b3VyY2VDb250ZW50LCBjb25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBjb25zdCBV
UkwmIHByZVJlZGlyZWN0VVJMLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSwgRWxlbWVudCog
ZWxlbWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gcmVwb3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZp
b2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZS5uYW1lRm9yUmVwb3J0aW5nKCkuY29u
dmVydFRvQVNDSUlMb3dlcmNhc2UoKSwgdmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlzdCgp
LCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbiwg
c3RhdGUsIHByZVJlZGlyZWN0VVJMLCBlbGVtZW50KTsKKyAgICByZXR1cm4gcmVwb3J0VmlvbGF0
aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZS5uYW1lRm9y
UmVwb3J0aW5nKCkuY29udmVydFRvQVNDSUlMb3dlcmNhc2UoKSwgdmlvbGF0ZWREaXJlY3RpdmUu
ZGlyZWN0aXZlTGlzdCgpLCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBz
b3VyY2VDb250ZW50LCBzb3VyY2VQb3NpdGlvbiwgc3RhdGUsIHByZVJlZGlyZWN0VVJMLCBlbGVt
ZW50KTsKIH0KIAotdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihj
b25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZp
b2xhdGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0
JiB2aW9sYXRlZERpcmVjdGl2ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTFN0cmluZywg
Y29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNv
bnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9zaXRpb24sIEpTQzo6SlNHbG9iYWxPYmplY3QqIHN0
YXRlLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMLCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAor
dm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0
aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0JiB2aW9sYXRlZERp
cmVjdGl2ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTFN0cmluZywgY29uc3QgU3RyaW5n
JiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFN0cmluZ1Zp
ZXcmIHNvdXJjZUNvbnRlbnQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9zaXRpb24sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIHN0YXRlLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMLCBFbGVt
ZW50KiBlbGVtZW50KSBjb25zdAogewogICAgIGxvZ1RvQ29uc29sZShjb25zb2xlTWVzc2FnZSwg
c291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbi5tX2xpbmUsIHNvdXJjZVBvc2l0aW9uLm1fY29sdW1u
LCBzdGF0ZSk7CiAKQEAgLTc1Myw2ICs3NTMsNyBAQCB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlYwog
ICAgIGluZm8uZG9jdW1lbnRVUkkgPSBtX2RvY3VtZW50VVJMID8gbV9kb2N1bWVudFVSTC52YWx1
ZSgpLnN0cmlwcGVkRm9yVXNlQXNSZWZlcnJlcigpIDogZGVwcmVjYXRlZFVSTEZvclJlcG9ydGlu
ZyhibG9ja2VkVVJMKTsKICAgICBpbmZvLmxpbmVOdW1iZXIgPSBzb3VyY2VQb3NpdGlvbi5tX2xp
bmUub25lQmFzZWRJbnQoKTsKICAgICBpbmZvLmNvbHVtbk51bWJlciA9IHNvdXJjZVBvc2l0aW9u
Lm1fY29sdW1uLm9uZUJhc2VkSW50KCk7CisgICAgaW5mby5zYW1wbGUgPSB2aW9sYXRlZERpcmVj
dGl2ZUxpc3Quc2hvdWxkUmVwb3J0U2FtcGxlKHZpb2xhdGVkRGlyZWN0aXZlKSA/IHNvdXJjZUNv
bnRlbnQubGVmdCg0MCkudG9TdHJpbmcoKSA6IGVtcHR5U3RyaW5nKCk7CiAKICAgICBpZiAobV9j
bGllbnQpCiAgICAgICAgIG1fY2xpZW50LT53aWxsU2VuZENTUFZpb2xhdGlvblJlcG9ydChpbmZv
KTsKQEAgLTgwMSw2ICs4MDIsNyBAQCB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0
VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlYwogICAgIHZpb2xh
dGlvbkV2ZW50SW5pdC5zdGF0dXNDb2RlID0gaHR0cFN0YXR1c0NvZGU7CiAgICAgdmlvbGF0aW9u
RXZlbnRJbml0LmxpbmVOdW1iZXIgPSAgaW5mby5saW5lTnVtYmVyOwogICAgIHZpb2xhdGlvbkV2
ZW50SW5pdC5jb2x1bW5OdW1iZXIgPSBpbmZvLmNvbHVtbk51bWJlcjsKKyAgICB2aW9sYXRpb25F
dmVudEluaXQuc2FtcGxlID0gaW5mby5zYW1wbGU7CiAgICAgdmlvbGF0aW9uRXZlbnRJbml0LmJ1
YmJsZXMgPSB0cnVlOwogICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgbV9jbGllbnQtPmVucXVl
dWVTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50KFdURk1vdmUodmlvbGF0aW9uRXZlbnRJbml0
KSk7CkBAIC04MzksNiArODQxLDcgQEAgdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9y
dFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWMKICAgICAgICAg
Y3NwUmVwb3J0LT5zZXRTdHJpbmcoInNvdXJjZS1maWxlIl9zLCBpbmZvLnNvdXJjZUZpbGUpOwog
ICAgICAgICBjc3BSZXBvcnQtPnNldEludGVnZXIoImxpbmUtbnVtYmVyIl9zLCBpbmZvLmxpbmVO
dW1iZXIpOwogICAgICAgICBjc3BSZXBvcnQtPnNldEludGVnZXIoImNvbHVtbi1udW1iZXIiX3Ms
IGluZm8uY29sdW1uTnVtYmVyKTsKKyAgICAgICAgY3NwUmVwb3J0LT5zZXRTdHJpbmcoInNhbXBs
ZSJfcywgaW5mby5zYW1wbGUpOwogICAgIH0KIAogICAgIGF1dG8gcmVwb3J0T2JqZWN0ID0gSlNP
Tjo6T2JqZWN0OjpjcmVhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3Nw
L0NvbnRlbnRTZWN1cml0eVBvbGljeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVu
dFNlY3VyaXR5UG9saWN5LmgKaW5kZXggOTI1YWJkYTY2NjI5Yjg4NmI1Mzg2OTg1YjZjOTNhYjll
NzM1NjVjNS4uNzYwYzgxZTBkYTRlNGZlMWM2Y2FjYmYxOGU1YjI0ZjM5ZGM3Mjc5MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKQEAgLTIy
Myw4ICsyMjMsOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3Qg
U3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2Vk
VVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kikg
Y29uc3Q7CiAgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVW
aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYsIGNvbnN0IFN0cmluZyYgYmxvY2tl
ZFVSTCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
PSBudWxscHRyKSBjb25zdDsKLSAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNv
bnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25z
dCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJM
ID0gVVJMKCksIEpTQzo6SlNHbG9iYWxPYmplY3QqID0gbnVsbHB0ciwgRWxlbWVudCogPSBudWxs
cHRyKSBjb25zdDsKLSAgICB2b2lkIHJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVj
dGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0aXZlLCBj
b25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0JiB2aW9sYXRlZERpcmVjdGl2
ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBjb25zb2xlTWVz
c2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNl
UG9zaXRpb24sIEpTQzo6SlNHbG9iYWxPYmplY3QqLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJM
ID0gVVJMKCksIEVsZW1lbnQqID0gbnVsbHB0cikgY29uc3Q7CisgICAgdm9pZCByZXBvcnRWaW9s
YXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3Ry
aW5nJiBibG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJp
bmcmIHNvdXJjZVVSTCwgY29uc3QgU3RyaW5nVmlldyYgc291cmNlQ29udGVudCwgY29uc3QgVGV4
dFBvc2l0aW9uJiBzb3VyY2VQb3NpdGlvbiwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVS
TCgpLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiA9IG51bGxwdHIsIEVsZW1lbnQqID0gbnVsbHB0cikg
Y29uc3Q7CisgICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVW
aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3Qg
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3RpdmVMaXN0
LCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2Us
IGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBTdHJpbmdWaWV3JiBzb3VyY2VDb250ZW50
LCBjb25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBFbGVtZW50KiA9IG51bGxwdHIp
IGNvbnN0OwogICAgIHZvaWQgcmVwb3J0QmxvY2tlZFNjcmlwdEV4ZWN1dGlvblRvSW5zcGVjdG9y
KGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCkgY29uc3Q7CiAKICAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBWaW9sYXRlZERpcmVjdGl2ZSwgdHlwZW5hbWUgSGFzaFNlYXJjaFBvbGljeT4gYm9vbCBj
aGVja0hhc2hBbmRSZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiwgY29uc3QgVmlvbGF0ZWRE
aXJlY3RpdmUmLCBjb25zdCBIYXNoU2VhcmNoUG9saWN5JiwgT3B0aW9uU2V0PENvbnRlbnRTZWN1
cml0eVBvbGljeUhhc2hBbGdvcml0aG0+LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlZpb2xhdGVk
RGlyZWN0aXZlQ2FsbGJhY2smJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeUNsaWVudC5oCmluZGV4IGYyZmU2Mzg5NDY0OTZl
ZGJiMzAzODQ1Mzk4ZmY5ZTczOTdjMzRiZDkuLmFmYWVjMjYzYjc3ZmQ4MjJiZDEwMTk1N2M3MWNk
MmQzMzkzOGQzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRT
ZWN1cml0eVBvbGljeUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRl
bnRTZWN1cml0eVBvbGljeUNsaWVudC5oCkBAIC0zNiw2ICszNiw3IEBAIGNsYXNzIEZvcm1EYXRh
Owogc3RydWN0IENTUEluZm8gewogICAgIFN0cmluZyBkb2N1bWVudFVSSTsKICAgICBTdHJpbmcg
c291cmNlRmlsZTsKKyAgICBTdHJpbmcgc2FtcGxlOwogICAgIGludCBsaW5lTnVtYmVyIHsgMCB9
OwogICAgIGludCBjb2x1bW5OdW1iZXIgeyAwIH07CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0
LmNwcAppbmRleCA5YThkZjI5MjUwZWJkMmM2N2IzMTRmMzllMjZjODI3NGNlNGIwNGQxLi4xMTEx
NzFjZTgzMTljNzFjZDQxYzYyNGY0OTc1M2M1YmNkYzlmODgzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3Rp
dmVMaXN0LmNwcApAQCAtNjQyLDQgKzY0MiwxNSBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZUxpc3Q6OnN0cmljdER5bmFtaWNJbmNsdWRlZCgpCiAgICAgcmV0dXJuIGRpcmVj
dGl2ZSAmJiBkaXJlY3RpdmUtPmFsbG93Tm9uUGFyc2VySW5zZXJ0ZWRTY3JpcHRzKCk7CiB9CiAK
K2Jvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6c2hvdWxkUmVwb3J0U2Ft
cGxlKGNvbnN0IFN0cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUpIGNvbnN0Cit7CisgICAgQ29udGVu
dFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZSogZGlyZWN0aXZlID0gbnVsbHB0cjsK
KyAgICBpZiAodmlvbGF0ZWREaXJlY3RpdmUuc3RhcnRzV2l0aChDb250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVOYW1lczo6c3R5bGVTcmMpKQorICAgICAgICBkaXJlY3RpdmUgPSBtX3N0eWxl
U3JjLmdldCgpOworICAgIGVsc2UgaWYgKHZpb2xhdGVkRGlyZWN0aXZlLnN0YXJ0c1dpdGgoQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYykpCisgICAgICAgIGRp
cmVjdGl2ZSA9IG1fc2NyaXB0U3JjLmdldCgpOworCisgICAgcmV0dXJuIGRpcmVjdGl2ZSAmJiBk
aXJlY3RpdmUtPnNob3VsZFJlcG9ydFNhbXBsZSgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2Vj
dXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmgKaW5kZXggM2VmOWYwY2RmMmRlODRlZWM1NzY5YjY1
OWUyZGRmZjcwZDc1MmE1YS4uYzNlMjA4NDBkODZjMTBmYzAyMzRhZDRlOTY2ZjkwYjZkZDBkNWQ4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRT
ZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaApAQCAtODYsNiArODYsNyBAQCBwdWJsaWM6CiAg
ICAgY29uc3QgU3RyaW5nJiBldmFsRGlzYWJsZWRFcnJvck1lc3NhZ2UoKSBjb25zdCB7IHJldHVy
biBtX2V2YWxEaXNhYmxlZEVycm9yTWVzc2FnZTsgfQogICAgIGNvbnN0IFN0cmluZyYgd2ViQXNz
ZW1ibHlEaXNhYmxlZEVycm9yTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViQXNzZW1ibHlE
aXNhYmxlZEVycm9yTWVzc2FnZTsgfQogICAgIGJvb2wgaXNSZXBvcnRPbmx5KCkgY29uc3QgeyBy
ZXR1cm4gbV9yZXBvcnRPbmx5OyB9CisgICAgYm9vbCBzaG91bGRSZXBvcnRTYW1wbGUoY29uc3Qg
U3RyaW5nJikgY29uc3Q7CiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcG9ydFVSSXMoKSBj
b25zdCB7IHJldHVybiBtX3JlcG9ydFVSSXM7IH0KIAogICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhp
cyBvbmNlIHdlIHRlYWNoIENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QgaG93IHRv
IGxvZyBhbiBhcmJpdHJhcnkgY29uc29sZSBtZXNzYWdlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcApp
bmRleCAyZmIwZTFkMTFlOTBmY2Q4ZTdmMzk4ZTEyMWNkYjY5YmIwZmI4OWEzLi40OWRhNDRhOWRj
YzJhNGIzZmI4YmYxOThmZDlkN2E0NTg3N2EyZDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcApA
QCAtMjQ4LDYgKzI0OCwxMSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPiBzdGQ6
Om9wdGlvbmFsPENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OgogICAgICAgICByZXR1
cm4gc291cmNlOwogICAgIH0KIAorICAgIGlmIChza2lwRXhhY3RseUlnbm9yaW5nQVNDSUlDYXNl
KGJ1ZmZlciwgIidyZXBvcnQtc2FtcGxlJyIpKSB7CisgICAgICAgIG1fcmVwb3J0U2FtcGxlID0g
dHJ1ZTsKKyAgICAgICAgcmV0dXJuIHNvdXJjZTsKKyAgICB9CisKICAgICBhdXRvIGJlZ2luID0g
YnVmZmVyLnBvc2l0aW9uKCk7CiAgICAgYXV0byBiZWdpbkhvc3QgPSBiZWdpbjsKICAgICBhdXRv
IGJlZ2luUGF0aCA9IGJ1ZmZlci5lbmQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaAppbmRleCA2MDkzYjg4
MjZmOTkwODk1MjFmYmY4MjI5NTdhMzM3OGRkMTg2YTM1Li4zNzk0NWU2Y2IwM2YzMWYzMDMxMzg2
ODRhYzIyODE5MjNiNmMzNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9D
b250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5oCkBAIC01NSw2ICs1NSw3IEBA
IHB1YmxpYzoKICAgICBib29sIGlzTm9uZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNOb25lOyB9CiAg
ICAgYm9vbCBhbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpIGNvbnN0IHsgcmV0dXJuIG1f
YWxsb3dOb25QYXJzZXJJbnNlcnRlZFNjcmlwdHM7IH0KICAgICBib29sIGFsbG93VW5zYWZlSGFz
aGVzKCkgY29uc3QgeyByZXR1cm4gbV9hbGxvd1Vuc2FmZUhhc2hlczsgfQorICAgIGJvb2wgc2hv
dWxkUmVwb3J0U2FtcGxlKCkgY29uc3QgeyByZXR1cm4gbV9yZXBvcnRTYW1wbGU7IH0KIAogcHJp
dmF0ZToKICAgICBzdHJ1Y3QgSG9zdCB7CkBAIC05Niw2ICs5Nyw3IEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBtX2lzTm9uZSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2FsbG93Tm9uUGFyc2VySW5zZXJ0
ZWRTY3JpcHRzIHsgZmFsc2UgfTsKICAgICBib29sIG1fYWxsb3dVbnNhZmVIYXNoZXMgeyBmYWxz
ZSB9OworICAgIGJvb2wgbV9yZXBvcnRTYW1wbGUgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVu
dFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oCmluZGV4IDRh
YWYxOTkyNWYxOTY1OGRhODZhZmIzZjkyYzE2Zjc4NWU5OWNhMTkuLjc4YmE5NWE4MWQwMTM5MzY4
ZDM4N2YxZGRmMDQ1NWQ1ZGQ5Y2UzMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Y3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0RGlyZWN0
aXZlLmgKQEAgLTQ1LDYgKzQ1LDcgQEAgcHVibGljOgogICAgIGJvb2wgYWxsb3dJbmxpbmUoKSBj
b25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3QuYWxsb3dJbmxpbmUoKTsgfQogICAgIGJvb2wgYWxs
b3dFdmFsKCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0LmFsbG93RXZhbCgpOyB9CiAgICAg
Ym9vbCBhbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpIGNvbnN0IHsgcmV0dXJuIG1fc291
cmNlTGlzdC5hbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpOyB9CisgICAgYm9vbCBzaG91
bGRSZXBvcnRTYW1wbGUoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3Quc2hvdWxkUmVwb3J0
U2FtcGxlKCk7IH0KIAogICAgIE9wdGlvblNldDxDb250ZW50U2VjdXJpdHlQb2xpY3lIYXNoQWxn
b3JpdGhtPiBoYXNoQWxnb3JpdGhtc1VzZWQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3Qu
aGFzaEFsZ29yaXRobXNVc2VkKCk7IH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5k
ZXggNWEyMGE3MWYzZDY4MjRjYTFlZTljNzJkZmZkYTFiMzI2ZGE3YTJkZi4uMTQ0YWI2YmY5Njlk
MDA2ODk5MWYzYzRkZDk4NzM5Mjk5N2NjODNhMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMTEtMjMgIFBhdHJpY2sgR3JpZmZpcyAgPHBncmlm
ZmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgQ1NQOiBJbXBsZW1lbnQgc3VibWl0dGluZyBzYW1w
bGVzIGluIHZpb2xhdGlvbiByZXBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzMzOTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVcGRhdGUgZXhwZWN0YXRpb25zIHdpdGggbW9yZSBwYXNzZXMuCisK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2Vj
dXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9s
aWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlw
b2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0xMS0yMyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQ1NQ
OiBzZWN1cml0eSBwb2xpY3kgdmlvbGF0aW9uIGV2ZW50IGlzIGFsd2F5cyB1c2luZyBkb2N1bWVu
dCBhcyB0YXJnZXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRp
b24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5
dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtZXhwZWN0ZWQudHh0CmluZGV4IDJkZDBhMTM1MDQyNjlm
NDY2NDZkMWY4ODZhNmVhNTdmOGUxYzlmZmUuLmRlY2YwMTEyNTFkMzEwM2YxMDc4ZDlmMzRhN2U2
ZTFhNjQxY2ZjNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRp
b24vc2NyaXB0LXNhbXBsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBv
bGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLWV4cGVjdGVkLnR4dApAQCAtMSwxNyArMSw5IEBA
Ci1DT05TT0xFIE1FU1NBR0U6IFRoZSBzb3VyY2UgbGlzdCBmb3IgQ29udGVudCBTZWN1cml0eSBQ
b2xpY3kgZGlyZWN0aXZlICdzY3JpcHQtc3JjJyBjb250YWlucyBhbiBpbnZhbGlkIHNvdXJjZTog
JydyZXBvcnQtc2FtcGxlJycuIEl0IHdpbGwgYmUgaWdub3JlZC4KLUNPTlNPTEUgTUVTU0FHRTog
UmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwg
b3IgJ3Vuc2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc2NyaXB0LXNyYyBkaXJl
Y3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgotQ09OU09MRSBNRVNTQUdFOiBS
ZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQgZm9yIGFuIGlubGluZSBldmVudCBoYW5kbGVyIGJl
Y2F1c2UgJ3Vuc2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc2NyaXB0LXNyYyBk
aXJlY3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgotQ09OU09MRSBNRVNTQUdF
OiBUaGUgc291cmNlIGxpc3QgZm9yIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZSAn
c2NyaXB0LXNyYycgY29udGFpbnMgYW4gaW52YWxpZCBzb3VyY2U6ICcncmVwb3J0LXNhbXBsZScn
LiBJdCB3aWxsIGJlIGlnbm9yZWQuCi1DT05TT0xFIE1FU1NBR0U6IFRoZSBzb3VyY2UgbGlzdCBm
b3IgQ29udGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlICdzY3JpcHQtc3JjJyBjb250YWlu
cyBhbiBpbnZhbGlkIHNvdXJjZTogJydyZXBvcnQtc2FtcGxlJycuIEl0IHdpbGwgYmUgaWdub3Jl
ZC4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2Ug
J3Vuc2FmZS1ldmFsJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZl
IG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNl
ZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2UgJ3Vuc2FmZS1ldmFsJyBkb2VzIG5vdCBhcHBl
YXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBv
bGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1
c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3IgJ3Vuc2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVh
ciBpbiB0aGUgc2NyaXB0LXNyYyBkaXJlY3RpdmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9s
aWN5LgogCiAKIEhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAogCi1USU1F
T1VUIElubGluZSBzY3JpcHQgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0Ci1U
SU1FT1VUIElubGluZSBldmVudCBoYW5kbGVycyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0
aW1lZCBvdXQKK1BBU1MgSW5saW5lIHNjcmlwdCBzaG91bGQgaGF2ZSBhIHNhbXBsZS4KK1BBU1Mg
SW5saW5lIGV2ZW50IGhhbmRsZXJzIHNob3VsZCBoYXZlIGEgc2FtcGxlLgogVElNRU9VVCBKYXZh
U2NyaXB0IFVSTHMgaW4gaWZyYW1lcyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBv
dXQKIFRJTUVPVVQgZXZhbCgpIHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAog
VElNRU9VVCBzZXRJbnRlcnZhbCgpIHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91
dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQt
c2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5
dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dAppbmRleCBkODVi
MjgwZjZlODc5NGExMmUxMDU3MWQ4NzhiM2VmMTU3OTdmMDIyLi5kYjI5N2FmMzFjMWFlMzFiYzkx
NDI5YTIyMGY0NjFhZmJkODY5ODg1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9s
aWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtbm8tb3B0LWluLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJp
dHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUtbm8tb3B0LWlu
LWV4cGVjdGVkLnR4dApAQCAtMSwxNCArMSw5IEBACi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQg
dG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNh
ZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9m
IHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0
byBleGVjdXRlIGEgc2NyaXB0IGZvciBhbiBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlICd1
bnNhZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZl
IG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNl
ZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2UgJ3Vuc2FmZS1ldmFsJyBkb2VzIG5vdCBhcHBl
YXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBv
bGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1
c2UgJ3Vuc2FmZS1ldmFsJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0
aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVm
dXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGJlY2F1c2UgaXRzIGhhc2gsIGl0cyBub25jZSwgb3Ig
J3Vuc2FmZS1pbmxpbmUnIGRvZXMgbm90IGFwcGVhciBpbiB0aGUgc2NyaXB0LXNyYyBkaXJlY3Rp
dmUgb2YgdGhlIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LgogCiAKIEhhcm5lc3MgRXJyb3IgKFRJ
TUVPVVQpLCBtZXNzYWdlID0gbnVsbAogCi1USU1FT1VUIElubGluZSBzY3JpcHQgc2hvdWxkIG5v
dCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBJbmxpbmUgZXZlbnQgaGFu
ZGxlcnMgc2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAorUEFTUyBJbmxp
bmUgc2NyaXB0IHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4KK1BBU1MgSW5saW5lIGV2ZW50IGhh
bmRsZXJzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4KIFRJTUVPVVQgSmF2YVNjcmlwdCBVUkxz
IGluIGlmcmFtZXMgc2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElN
RU9VVCBldmFsKCktYWxpa2VzIHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBv
dXQKK1BBU1MgZXZhbCgpLWFsaWtlcyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVu
dC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2Ft
cGxlLWV4cGVjdGVkLnR4dAppbmRleCA4Njk5MWY2NzRjZjdjZWViNjdkZDZhZTk1NzA4ZGZhMTE2
NjgzZGE0Li4yYzc1NDEzZmNlOTQwYjBlMjE4OTk1ZmQ5NTY0MWI1ZTBjYjJhOWExIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQt
c2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zdHlsZS1z
YW1wbGUtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCi1GQUlMIElubGluZSBzdHlsZSBi
bG9ja3Mgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJwIHsg
b21nOiB5YXkgIWltcG9ydGFudDsgfSIgYnV0IGdvdCAiIgotRkFJTCBJbmxpbmUgc3R5bGUgYXR0
cmlidXRlcyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIm9t
ZzogeWF5ICFpbXBvcnRhbnQ7IiBidXQgZ290ICIiCitQQVNTIElubGluZSBzdHlsZSBibG9ja3Mg
c2hvdWxkIGhhdmUgYSBzYW1wbGUuCitQQVNTIElubGluZSBzdHlsZSBhdHRyaWJ1dGVzIHNob3Vs
ZCBoYXZlIGEgc2FtcGxlLgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445043</attachid>
            <date>2021-11-23 10:59:53 -0800</date>
            <delta_ts>2021-11-24 08:21:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233398-20211123125952.patch</filename>
            <type>text/plain</type>
            <size>34373</size>
            <attacher name="Patrick Griffis">pgriffis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2MTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTk2ZDM3OWQ0NGIzOGVi
ZTZhMWJlZTdhMmI4ZWJkMjYxZmMyZTA0MS4uMDBmZTZhNmM1OWI1MjJlYWJmY2IyZTgzYWNlMzRk
Y2IxOThiOGUyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTExLTIzICBQYXRy
aWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIENTUDogSW1wbGVt
ZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24gcmVwb3J0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzMzk4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpbXBsZW1lbnRzIGhhbmRs
aW5nICdyZXBvcnQtc2FtcGxlJyBkaXJlY3RpdmUgYW5kIHN1Ym1pdHMgYSBzYW1wbGUKKyAgICAg
ICAgZm9yIHN0eWxlLXNyYyBhbmQgc2NyaXB0LXNyYy4gSXQgZG9lc24ndCBjdXJyZW50bHkgZXh0
cmFjdCB0aGUgc291cmNlCisgICAgICAgIGZyb20gZXZhbCgpIHlldC4KKworICAgICAgICAqIHBh
Z2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SmF2YVNjcmlwdFVSTHMgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZUV2ZW50SGFuZGxlcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd05v
blBhcnNlckluc2VydGVkU2NyaXB0cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lU2NyaXB0IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93RnJhbWVBbmNlc3RvcnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Bs
dWdpblR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvd09iamVjdEZyb21Tb3VyY2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVu
dFNlY3VyaXR5UG9saWN5OjphbGxvd0NoaWxkRnJhbWVGcm9tU291cmNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dSZXNvdXJjZUZyb21Tb3Vy
Y2UgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxv
d0Nvbm5lY3RUb1NvdXJjZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3k6OmFsbG93QmFzZVVSSSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5Q2xpZW50Lmg6CisgICAgICAgICogcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVMaXN0OjpzaG91bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAg
ICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaDoKKyAgICAg
ICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3Q6OnBhcnNlU291cmNl
KToKKyAgICAgICAgKiBwYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0OjpzaG91
bGRSZXBvcnRTYW1wbGUgY29uc3QpOgorICAgICAgICAqIHBhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRT
ZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmU6OnNob3VsZFJlcG9ydFNhbXBsZSBjb25z
dCk6CisKIDIwMjEtMTEtMjMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIENTUDogc2VjdXJpdHkgcG9saWN5IHZpb2xhdGlvbiBldmVudCBpcyBh
bHdheXMgdXNpbmcgZG9jdW1lbnQgYXMgdGFyZ2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcAppbmRleCA5NTczNWMwMGVjM2VkNjYyMjRi
ZWE2OTIxMWQxOGYyN2E4MDExNzk4Li5mMTUzMDJiZjgzOTZiNDBmZjE1NzhjMGNhZDEyNDU4MWE3
NzM2NDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJp
dHlQb2xpY3kuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0
eVBvbGljeS5jcHAKQEAgLTQwNiw3ICs0MDYsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6YWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0CiAg
ICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcg
Y29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJp
dHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgVVJM
KCksICJSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3JpcHQiLCAiaXRzIGhhc2gsIGl0cyBub25jZSwg
b3IgJ3Vuc2FmZS1pbmxpbmUnIik7CiAgICAgICAgIC8vIEZJWE1FIChyZGFyOi8vODMzMzI4NzQp
IGltcGxlbWVudCBzY3JpcHRTcmNFbGVtIHByb3Blcmx5LgotICAgICAgICByZXBvcnRWaW9sYXRp
b24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyY0VsZW0sIHZp
b2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
VGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpKTsKKyAgICAgICAgcmVw
b3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRT
cmNFbGVtLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJfcywgY29uc29sZU1lc3NhZ2UsIGNv
bnRleHRVUkwsIHNvdXJjZSwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVy
KCkpKTsKICAgICAgICAgaWYgKCFkaWROb3RpZnlJbnNwZWN0b3IgJiYgdmlvbGF0ZWREaXJlY3Rp
dmUuZGlyZWN0aXZlTGlzdCgpLmlzUmVwb3J0T25seSgpKSB7CiAgICAgICAgICAgICByZXBvcnRC
bG9ja2VkU2NyaXB0RXhlY3V0aW9uVG9JbnNwZWN0b3IodmlvbGF0ZWREaXJlY3RpdmUudGV4dCgp
KTsKICAgICAgICAgICAgIGRpZE5vdGlmeUluc3BlY3RvciA9IHRydWU7CkBAIC00MjMsNyArNDIz
LDcgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVy
cyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGMKICAgICBib29sIGRpZE5vdGlmeUluc3BlY3Rv
ciA9IGZhbHNlOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0
IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAg
ICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24o
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWRE
aXJlY3RpdmUsIFVSTCgpLCAiUmVmdXNlZCB0byBleGVjdXRlIGEgc2NyaXB0IGZvciBhbiBpbmxp
bmUgZXZlbnQgaGFuZGxlciIsICIndW5zYWZlLWlubGluZSciKTsKLSAgICAgICAgcmVwb3J0Vmlv
bGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZp
b2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwg
VGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0
ciwgZWxlbWVudCk7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVOYW1lczo6c2NyaXB0U3JjLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJf
cywgY29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIHNvdXJjZSwgVGV4dFBvc2l0aW9uKGNvbnRl
eHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgZWxlbWVudCk7CiAgICAg
ICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmICF2aW9sYXRlZERpcmVjdGl2ZS5kaXJlY3Rp
dmVMaXN0KCkuaXNSZXBvcnRPbmx5KCkpIHsKICAgICAgICAgICAgIHJlcG9ydEJsb2NrZWRTY3Jp
cHRFeGVjdXRpb25Ub0luc3BlY3Rvcih2aW9sYXRlZERpcmVjdGl2ZS50ZXh0KCkpOwogICAgICAg
ICAgICAgZGlkTm90aWZ5SW5zcGVjdG9yID0gdHJ1ZTsKQEAgLTQ3NCw3ICs0NzQsNyBAQCBib29s
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dOb25QYXJzZXJJbnNlcnRlZFNjcmlwdHMoY29u
c3QgVVJMJiB1cmwsIGNvbnN0CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsm
XSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2
ZSkgewogICAgICAgICBUZXh0UG9zaXRpb24gc291cmNlUG9zaXRpb24oT3JkaW5hbE51bWJlcjo6
YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcigpKTsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVN
ZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVz
ZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyY0VsZW0sIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwu
c3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBTdHJpbmcoKSwgc291cmNlUG9zaXRpb24pOworICAg
ICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OnNjcmlwdFNyY0VsZW0sIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVN
ZXNzYWdlLCBTdHJpbmcoKSwgc2NyaXB0Q29udGVudCwgc291cmNlUG9zaXRpb24pOwogICAgIH07
CiAKICAgICByZXR1cm4gYWxsU2NyaXB0UG9saWNpZXNBbGxvdyhoYW5kbGVWaW9sYXRlZERpcmVj
dGl2ZSwgdXJsLCBub25jZSwgc2NyaXB0Q29udGVudCwgcGFyc2VySW5zZXJ0ZWQpOwpAQCAtNDg3
LDcgKzQ4Nyw3IEBAIGJvb2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0lubGluZVNjcmlw
dChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IE9yCiAgICAgYm9vbCBkaWROb3RpZnlJ
bnNwZWN0b3IgPSBmYWxzZTsKICAgICBhdXRvIGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlID0gWyZd
IChjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xhdGVkRGlyZWN0aXZl
KSB7CiAgICAgICAgIFN0cmluZyBjb25zb2xlTWVzc2FnZSA9IGNvbnNvbGVNZXNzYWdlRm9yVmlv
bGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMsIHZp
b2xhdGVkRGlyZWN0aXZlLCBVUkwoKSwgIlJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCIsICJp
dHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZSciKTsKLSAgICAgICAgcmVwb3J0
VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMs
IHZpb2xhdGVkRGlyZWN0aXZlLCAiaW5saW5lIl9zLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVS
TCwgVGV4dFBvc2l0aW9uKGNvbnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVs
bHB0ciwgJmVsZW1lbnQpOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTmFtZXM6OnNjcmlwdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsICJpbmxp
bmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBzY3JpcHRDb250ZW50LCBUZXh0UG9z
aXRpb24oY29udGV4dExpbmUsIE9yZGluYWxOdW1iZXIoKSksIFVSTCgpLCBudWxscHRyLCAmZWxl
bWVudCk7CiAgICAgICAgIGlmICghZGlkTm90aWZ5SW5zcGVjdG9yICYmICF2aW9sYXRlZERpcmVj
dGl2ZS5kaXJlY3RpdmVMaXN0KCkuaXNSZXBvcnRPbmx5KCkpIHsKICAgICAgICAgICAgIHJlcG9y
dEJsb2NrZWRTY3JpcHRFeGVjdXRpb25Ub0luc3BlY3Rvcih2aW9sYXRlZERpcmVjdGl2ZS50ZXh0
KCkpOwogICAgICAgICAgICAgZGlkTm90aWZ5SW5zcGVjdG9yID0gdHJ1ZTsKQEAgLTUwNyw3ICs1
MDcsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dJbmxpbmVTdHlsZShjb25z
dCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IE9yZAogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWRE
aXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlv
bGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgYXV0byBuYW1lID0gc2hvdWxkQ2hlY2tVbnNhZmVI
YXNoZXMgPT0gQ2hlY2tVbnNhZmVIYXNoZXM6OlllcyA/IENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzOjpzdHlsZVNyY0F0dHIgOiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3Rp
dmVOYW1lczo6c3R5bGVTcmNFbGVtOwogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBj
b25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lczo6c3R5bGVTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCBVUkwoKSwgIlJlZnVzZWQgdG8gYXBw
bHkgYSBzdHlsZXNoZWV0IiwgIml0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5l
JyIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24obmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsICJp
bmxpbmUiX3MsIGNvbnNvbGVNZXNzYWdlLCBjb250ZXh0VVJMLCBUZXh0UG9zaXRpb24oY29udGV4
dExpbmUsIE9yZGluYWxOdW1iZXIoKSksIFVSTCgpLCBudWxscHRyLCAmZWxlbWVudCk7CisgICAg
ICAgIHJlcG9ydFZpb2xhdGlvbihuYW1lLCB2aW9sYXRlZERpcmVjdGl2ZSwgImlubGluZSJfcywg
Y29uc29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIHN0eWxlQ29udGVudCwgVGV4dFBvc2l0aW9uKGNv
bnRleHRMaW5lLCBPcmRpbmFsTnVtYmVyKCkpLCBVUkwoKSwgbnVsbHB0ciwgJmVsZW1lbnQpOwog
ICAgIH07CiAKICAgICBpZiAoc2hvdWxkQ2hlY2tVbnNhZmVIYXNoZXMgPT0gQ2hlY2tVbnNhZmVI
YXNoZXM6OlllcykKQEAgLTU0NSw3ICs1NDUsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6YWxsb3dGcmFtZUFuY2VzdG9ycyhjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgdQog
ICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJz
dCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUg
PSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJl
Y3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VG
b3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5j
ZXN0b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLCAiUmVmdXNlZCB0byBsb2FkIik7Ci0gICAg
ICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6
ZnJhbWVBbmNlc3RvcnMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVN
ZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpmcmFtZUFuY2VzdG9ycywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVS
TCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxs
UG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRT
ZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yRnJhbWVBbmNl
c3RvciwgZnJhbWUpOwogfQpAQCAtNTczLDcgKzU3Myw3IEBAIGJvb2wgQ29udGVudFNlY3VyaXR5
UG9saWN5OjphbGxvd0ZyYW1lQW5jZXN0b3JzKGNvbnN0IFZlY3RvcjxSZWZQdHI8U2VjdXJpdHlP
cmlnCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGluYWxOdW1iZXI6OmJlZm9y
ZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5kbGVWaW9sYXRlZERpcmVj
dGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRl
ZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVz
c2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6ZnJh
bWVBbmNlc3RvcnMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGxvYWQiKTsK
LSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5h
bWVzOjpmcmFtZUFuY2VzdG9ycywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29u
c29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lQW5jZXN0
b3JzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291
cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9OwogICAgIHJldHVy
biBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUpLCAmQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6dmlvbGF0ZWREaXJlY3RpdmVGb3JGcmFt
ZUFuY2VzdG9yT3JpZ2lucywgYW5jZXN0b3JPcmlnaW5zKTsKIH0KQEAgLTU4Niw3ICs1ODYsNyBA
QCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxsb3dQbHVnaW5UeXBlKGNvbnN0IFN0cmlu
ZyYgdHlwZSwgY29uc3QgU3RyaW5nJiB0eQogICAgIFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlv
bihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1
dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNv
bGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9s
aWN5RGlyZWN0aXZlTmFtZXM6OnBsdWdpblR5cGVzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLCAi
UmVmdXNlZCB0byBsb2FkIiwgIml0cyBNSU1FIHR5cGUiKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0
aW9uKENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZU5hbWVzOjpwbHVnaW5UeXBlcywgdmlv
bGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwg
c291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTmFtZXM6OnBsdWdpblR5cGVzLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJs
LnN0cmluZygpLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJj
ZVBvc2l0aW9uKTsKICAgICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUo
aGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZl
TGlzdDo6dmlvbGF0ZWREaXJlY3RpdmVGb3JQbHVnaW5UeXBlLCB0eXBlLCB0eXBlQXR0cmlidXRl
KTsKIH0KQEAgLTYwMiw3ICs2MDIsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6YWxs
b3dPYmplY3RGcm9tU291cmNlKGNvbnN0IFVSTCYgdXJsLCBSZWRpcmVjdFJlc3BvbgogICAgIFRl
eHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBP
cmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0g
KGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUp
IHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JWaW9s
YXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywgdmlv
bGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywg
dmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVS
TCwgc291cmNlUG9zaXRpb24pOworICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6Om9iamVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVy
bC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3Vy
Y2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4gYWxsUG9saWNpZXNBbGxvdyhXVEZNb3Zl
KGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2
ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yT2JqZWN0U291cmNlLCB1cmwsIHJlZGlyZWN0UmVz
cG9uc2VSZWNlaXZlZCA9PSBSZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQ6OlllcywgQ29udGVudFNl
Y3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZTo6U2hvdWxkQWxsb3dFbXB0eVVSTElmU291
cmNlTGlzdElzTm90Tm9uZTo6WWVzKTsKIH0KQEAgLTYxNiw3ICs2MTYsNyBAQCBib29sIENvbnRl
bnRTZWN1cml0eVBvbGljeTo6YWxsb3dDaGlsZEZyYW1lRnJvbVNvdXJjZShjb25zdCBVUkwmIHVy
bCwgUmVkaXJlY3RSZQogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBbJl0gKGNv
bnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUpIHsK
ICAgICAgICAgY29uc3QgY2hhciogZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUgPSB2aW9sYXRl
ZERpcmVjdGl2ZS5uYW1lKCkgPT0gQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OmZyYW1lU3JjID8gQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmZyYW1lU3Jj
IDogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNoaWxkU3JjOwogICAgICAg
ICBTdHJpbmcgY29uc29sZU1lc3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihlZmZl
Y3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVzZWQg
dG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oZWZmZWN0aXZlVmlvbGF0ZWREaXJl
Y3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZlLCB1cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBz
b3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9uKGVmZmVj
dGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygpLCBj
b25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsK
ICAgICB9OwogICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0
ZWREaXJlY3RpdmUpLCAmQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdDo6dmlvbGF0
ZWREaXJlY3RpdmVGb3JGcmFtZSwgdXJsLCByZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQgPT0gUmVk
aXJlY3RSZXNwb25zZVJlY2VpdmVkOjpZZXMpOwogfQpAQCAtNjMwLDcgKzYzMCw3IEBAIGJvb2wg
Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd1Jlc291cmNlRnJvbVNvdXJjZShjb25zdCBVUkwm
IHVybCwgUmVkaXJlY3RSZXNwCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9yZGlu
YWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBoYW5k
bGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGly
ZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1lc3Nh
Z2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihuYW1lLCB2aW9sYXRlZERpcmVjdGl2ZSwg
YmxvY2tlZFVSTCwgIlJlZnVzZWQgdG8gbG9hZCIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24o
bmFtZSwgdmlvbGF0ZWREaXJlY3RpdmUsIGJsb2NrZWRVUkwuc3RyaW5nKCksIGNvbnNvbGVNZXNz
YWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uKTsKKyAgICAgICAgcmVwb3J0VmlvbGF0aW9u
KG5hbWUsIHZpb2xhdGVkRGlyZWN0aXZlLCBibG9ja2VkVVJMLnN0cmluZygpLCBjb25zb2xlTWVz
c2FnZSwgc291cmNlVVJMLCBTdHJpbmdWaWV3KCksIHNvdXJjZVBvc2l0aW9uKTsKICAgICB9Owog
ICAgIHJldHVybiBhbGxQb2xpY2llc0FsbG93KFdURk1vdmUoaGFuZGxlVmlvbGF0ZWREaXJlY3Rp
dmUpLCByZXNvdXJjZVByZWRpY2F0ZSwgdXJsLCByZWRpcmVjdFJlc3BvbnNlUmVjZWl2ZWQgPT0g
UmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkOjpZZXMpOwogfQpAQCAtNjgzLDcgKzY4Myw3IEBAIGJv
b2wgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0Nvbm5lY3RUb1NvdXJjZShjb25zdCBVUkwm
IHVybCwgUmVkaXJlY3RSZXNwb25zCiAgICAgVGV4dFBvc2l0aW9uIHNvdXJjZVBvc2l0aW9uKE9y
ZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCksIE9yZGluYWxOdW1iZXIoKSk7CiAgICAgYXV0byBo
YW5kbGVWaW9sYXRlZERpcmVjdGl2ZSA9IFsmXSAoY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlJiB2aW9sYXRlZERpcmVjdGl2ZSkgewogICAgICAgICBTdHJpbmcgY29uc29sZU1l
c3NhZ2UgPSBjb25zb2xlTWVzc2FnZUZvclZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmVOYW1lczo6Y29ubmVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybCwgIlJlZnVz
ZWQgdG8gY29ubmVjdCB0byIpOwotICAgICAgICByZXBvcnRWaW9sYXRpb24oQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmNvbm5lY3RTcmMsIHZpb2xhdGVkRGlyZWN0aXZlLCB1
cmwuc3RyaW5nKCksIGNvbnNvbGVNZXNzYWdlLCBzb3VyY2VVUkwsIHNvdXJjZVBvc2l0aW9uLCBw
cmVSZWRpcmVjdFVSTCk7CisgICAgICAgIHJlcG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVOYW1lczo6Y29ubmVjdFNyYywgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5z
dHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJjZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQ
b3NpdGlvbiwgcHJlUmVkaXJlY3RVUkwpOwogICAgIH07CiAgICAgcmV0dXJuIGFsbFBvbGljaWVz
QWxsb3coV1RGTW92ZShoYW5kbGVWaW9sYXRlZERpcmVjdGl2ZSksICZDb250ZW50U2VjdXJpdHlQ
b2xpY3lEaXJlY3RpdmVMaXN0Ojp2aW9sYXRlZERpcmVjdGl2ZUZvckNvbm5lY3RTb3VyY2UsIHVy
bCwgcmVkaXJlY3RSZXNwb25zZVJlY2VpdmVkID09IFJlZGlyZWN0UmVzcG9uc2VSZWNlaXZlZDo6
WWVzKTsKIH0KQEAgLTcwMyw3ICs3MDMsNyBAQCBib29sIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
YWxsb3dCYXNlVVJJKGNvbnN0IFVSTCYgdXJsLCBib29sIG92ZXJyaWRlQ29udGVudFNlYwogICAg
IFRleHRQb3NpdGlvbiBzb3VyY2VQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgp
LCBPcmRpbmFsTnVtYmVyKCkpOwogICAgIGF1dG8gaGFuZGxlVmlvbGF0ZWREaXJlY3RpdmUgPSBb
Jl0gKGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3Rp
dmUpIHsKICAgICAgICAgU3RyaW5nIGNvbnNvbGVNZXNzYWdlID0gY29uc29sZU1lc3NhZ2VGb3JW
aW9sYXRpb24oQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6OmJhc2VVUkksIHZp
b2xhdGVkRGlyZWN0aXZlLCB1cmwsICJSZWZ1c2VkIHRvIGNoYW5nZSB0aGUgZG9jdW1lbnQgYmFz
ZSBVUkwgdG8iKTsKLSAgICAgICAgcmVwb3J0VmlvbGF0aW9uKENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzOjpiYXNlVVJJLCB2aW9sYXRlZERpcmVjdGl2ZSwgdXJsLnN0cmluZygp
LCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbik7CisgICAgICAgIHJl
cG9ydFZpb2xhdGlvbihDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVOYW1lczo6YmFzZVVS
SSwgdmlvbGF0ZWREaXJlY3RpdmUsIHVybC5zdHJpbmcoKSwgY29uc29sZU1lc3NhZ2UsIHNvdXJj
ZVVSTCwgU3RyaW5nVmlldygpLCBzb3VyY2VQb3NpdGlvbik7CiAgICAgfTsKICAgICByZXR1cm4g
YWxsUG9saWNpZXNBbGxvdyhXVEZNb3ZlKGhhbmRsZVZpb2xhdGVkRGlyZWN0aXZlKSwgJkNvbnRl
bnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnZpb2xhdGVkRGlyZWN0aXZlRm9yQmFzZVVS
SSwgdXJsKTsKIH0KQEAgLTcyNCwyMiArNzI0LDIyIEBAIFN0cmluZyBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmRlcHJlY2F0ZWRVUkxGb3JSZXBvcnRpbmcoY29uc3QgVVJMJiB1cmwpIGNvbnN0CiAK
IHZvaWQgQ29udGVudFNlY3VyaXR5UG9saWN5OjpyZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5n
JiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZl
JiBlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBj
b25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSkg
Y29uc3QKIHsKLSAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSBhbmQgc291cmNlIHBv
c2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCi0gICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbih2
aW9sYXRlZERpcmVjdGl2ZSwgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUubmFtZUZvclJlcG9y
dGluZygpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCksIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0
aXZlLmRpcmVjdGl2ZUxpc3QoKSwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygp
LCBUZXh0UG9zaXRpb24oT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJl
cjo6YmVmb3JlRmlyc3QoKSksIHN0YXRlKTsKKyAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2Ug
ZmlsZSwgY29udGVudCwgYW5kIHBvc2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCisgICAgcmV0
dXJuIHJlcG9ydFZpb2xhdGlvbih2aW9sYXRlZERpcmVjdGl2ZSwgZWZmZWN0aXZlVmlvbGF0ZWRE
aXJlY3RpdmUubmFtZUZvclJlcG9ydGluZygpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCksIGVm
ZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLmRpcmVjdGl2ZUxpc3QoKSwgYmxvY2tlZFVSTCwgY29u
c29sZU1lc3NhZ2UsIFN0cmluZygpLCBTdHJpbmdWaWV3KCksIFRleHRQb3NpdGlvbihPcmRpbmFs
TnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3Rh
dGUpOwogfQogCiB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNv
bnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Qm
IHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25zdCBT
dHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSkgY29uc3QK
IHsKLSAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSBhbmQgc291cmNlIHBvc2l0aW9u
IGZyb20gSlNDOjpFeGVjU3RhdGUuCi0gICAgcmV0dXJuIHJlcG9ydFZpb2xhdGlvbihlZmZlY3Rp
dmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xhdGVkRGlyZWN0aXZl
TGlzdCwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygpLCBUZXh0UG9zaXRpb24o
T3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgT3JkaW5hbE51bWJlcjo6YmVmb3JlRmlyc3Qo
KSksIHN0YXRlKTsKKyAgICAvLyBGSVhNRTogRXh0cmFjdCBzb3VyY2UgZmlsZSwgY29udGVudCwg
YW5kIHBvc2l0aW9uIGZyb20gSlNDOjpFeGVjU3RhdGUuCisgICAgcmV0dXJuIHJlcG9ydFZpb2xh
dGlvbihlZmZlY3RpdmVWaW9sYXRlZERpcmVjdGl2ZSwgdmlvbGF0ZWREaXJlY3RpdmUsIHZpb2xh
dGVkRGlyZWN0aXZlTGlzdCwgYmxvY2tlZFVSTCwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygpLCBT
dHJpbmdWaWV3KCksIFRleHRQb3NpdGlvbihPcmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpLCBP
cmRpbmFsTnVtYmVyOjpiZWZvcmVGaXJzdCgpKSwgc3RhdGUpOwogfQogCi12b2lkIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYgdmlv
bGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5nJiBj
b25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFRleHRQb3NpdGlv
biYgc291cmNlUG9zaXRpb24sIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwsIEpTQzo6SlNHbG9i
YWxPYmplY3QqIHN0YXRlLCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAordm9pZCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xh
dGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUmIHZpb2xh
dGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29u
c29sZU1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBjb25zdCBTdHJpbmdWaWV3JiBz
b3VyY2VDb250ZW50LCBjb25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBjb25zdCBV
UkwmIHByZVJlZGlyZWN0VVJMLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSwgRWxlbWVudCog
ZWxlbWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gcmVwb3J0VmlvbGF0aW9uKGVmZmVjdGl2ZVZp
b2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZS5uYW1lRm9yUmVwb3J0aW5nKCkuY29u
dmVydFRvQVNDSUlMb3dlcmNhc2UoKSwgdmlvbGF0ZWREaXJlY3RpdmUuZGlyZWN0aXZlTGlzdCgp
LCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbiwg
c3RhdGUsIHByZVJlZGlyZWN0VVJMLCBlbGVtZW50KTsKKyAgICByZXR1cm4gcmVwb3J0VmlvbGF0
aW9uKGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCB2aW9sYXRlZERpcmVjdGl2ZS5uYW1lRm9y
UmVwb3J0aW5nKCkuY29udmVydFRvQVNDSUlMb3dlcmNhc2UoKSwgdmlvbGF0ZWREaXJlY3RpdmUu
ZGlyZWN0aXZlTGlzdCgpLCBibG9ja2VkVVJMLCBjb25zb2xlTWVzc2FnZSwgc291cmNlVVJMLCBz
b3VyY2VDb250ZW50LCBzb3VyY2VQb3NpdGlvbiwgc3RhdGUsIHByZVJlZGlyZWN0VVJMLCBlbGVt
ZW50KTsKIH0KIAotdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihj
b25zdCBTdHJpbmcmIGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZp
b2xhdGVkRGlyZWN0aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0
JiB2aW9sYXRlZERpcmVjdGl2ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTFN0cmluZywg
Y29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNv
bnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9zaXRpb24sIEpTQzo6SlNHbG9iYWxPYmplY3QqIHN0
YXRlLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMLCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAor
dm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OnJlcG9ydFZpb2xhdGlvbihjb25zdCBTdHJpbmcm
IGVmZmVjdGl2ZVZpb2xhdGVkRGlyZWN0aXZlLCBjb25zdCBTdHJpbmcmIHZpb2xhdGVkRGlyZWN0
aXZlLCBjb25zdCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0JiB2aW9sYXRlZERp
cmVjdGl2ZUxpc3QsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTFN0cmluZywgY29uc3QgU3RyaW5n
JiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNvbnN0IFN0cmluZ1Zp
ZXcmIHNvdXJjZUNvbnRlbnQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNlUG9zaXRpb24sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIHN0YXRlLCBjb25zdCBVUkwmIHByZVJlZGlyZWN0VVJMLCBFbGVt
ZW50KiBlbGVtZW50KSBjb25zdAogewogICAgIGxvZ1RvQ29uc29sZShjb25zb2xlTWVzc2FnZSwg
c291cmNlVVJMLCBzb3VyY2VQb3NpdGlvbi5tX2xpbmUsIHNvdXJjZVBvc2l0aW9uLm1fY29sdW1u
LCBzdGF0ZSk7CiAKQEAgLTc1Myw2ICs3NTMsNyBAQCB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlYwog
ICAgIGluZm8uZG9jdW1lbnRVUkkgPSBtX2RvY3VtZW50VVJMID8gbV9kb2N1bWVudFVSTC52YWx1
ZSgpLnN0cmlwcGVkRm9yVXNlQXNSZWZlcnJlcigpIDogZGVwcmVjYXRlZFVSTEZvclJlcG9ydGlu
ZyhibG9ja2VkVVJMKTsKICAgICBpbmZvLmxpbmVOdW1iZXIgPSBzb3VyY2VQb3NpdGlvbi5tX2xp
bmUub25lQmFzZWRJbnQoKTsKICAgICBpbmZvLmNvbHVtbk51bWJlciA9IHNvdXJjZVBvc2l0aW9u
Lm1fY29sdW1uLm9uZUJhc2VkSW50KCk7CisgICAgaW5mby5zYW1wbGUgPSB2aW9sYXRlZERpcmVj
dGl2ZUxpc3Quc2hvdWxkUmVwb3J0U2FtcGxlKHZpb2xhdGVkRGlyZWN0aXZlKSA/IHNvdXJjZUNv
bnRlbnQubGVmdCg0MCkudG9TdHJpbmcoKSA6IGVtcHR5U3RyaW5nKCk7CiAKICAgICBpZiAobV9j
bGllbnQpCiAgICAgICAgIG1fY2xpZW50LT53aWxsU2VuZENTUFZpb2xhdGlvblJlcG9ydChpbmZv
KTsKQEAgLTgwMSw2ICs4MDIsNyBAQCB2b2lkIENvbnRlbnRTZWN1cml0eVBvbGljeTo6cmVwb3J0
VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlYwogICAgIHZpb2xh
dGlvbkV2ZW50SW5pdC5zdGF0dXNDb2RlID0gaHR0cFN0YXR1c0NvZGU7CiAgICAgdmlvbGF0aW9u
RXZlbnRJbml0LmxpbmVOdW1iZXIgPSAgaW5mby5saW5lTnVtYmVyOwogICAgIHZpb2xhdGlvbkV2
ZW50SW5pdC5jb2x1bW5OdW1iZXIgPSBpbmZvLmNvbHVtbk51bWJlcjsKKyAgICB2aW9sYXRpb25F
dmVudEluaXQuc2FtcGxlID0gaW5mby5zYW1wbGU7CiAgICAgdmlvbGF0aW9uRXZlbnRJbml0LmJ1
YmJsZXMgPSB0cnVlOwogICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgbV9jbGllbnQtPmVucXVl
dWVTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50KFdURk1vdmUodmlvbGF0aW9uRXZlbnRJbml0
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQ
b2xpY3kuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5o
CmluZGV4IDkyNWFiZGE2NjYyOWI4ODZiNTM4Njk4NWI2YzkzYWI5ZTczNTY1YzUuLjc2MGM4MWUw
ZGE0ZTRmZTFjNmNhY2JmMThlNWIyNGYzOWRjNzI3OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oCkBAIC0yMjMsOCArMjIzLDggQEAgcHJp
dmF0ZToKIAogICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZl
VmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZSYg
dmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwgY29uc3QgU3RyaW5n
JiBjb25zb2xlTWVzc2FnZSwgSlNDOjpKU0dsb2JhbE9iamVjdCopIGNvbnN0OwogICAgIHZvaWQg
cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUs
IGNvbnN0IFN0cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZUxpc3QmLCBjb25zdCBTdHJpbmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmlu
ZyYgY29uc29sZU1lc3NhZ2UsIEpTQzo6SlNHbG9iYWxPYmplY3QqID0gbnVsbHB0cikgY29uc3Q7
Ci0gICAgdm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRl
ZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlJiB2aW9sYXRl
ZERpcmVjdGl2ZSwgY29uc3QgU3RyaW5nJiBibG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNv
bGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgY29uc3QgVGV4dFBvc2l0aW9uJiBz
b3VyY2VQb3NpdGlvbiwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiA9IG51bGxwdHIsIEVsZW1lbnQqID0gbnVsbHB0cikgY29uc3Q7Ci0gICAg
dm9pZCByZXBvcnRWaW9sYXRpb24oY29uc3QgU3RyaW5nJiBlZmZlY3RpdmVWaW9sYXRlZERpcmVj
dGl2ZSwgY29uc3QgU3RyaW5nJiB2aW9sYXRlZERpcmVjdGl2ZSwgY29uc3QgQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTGlzdCYgdmlvbGF0ZWREaXJlY3RpdmVMaXN0LCBjb25zdCBTdHJp
bmcmIGJsb2NrZWRVUkwsIGNvbnN0IFN0cmluZyYgY29uc29sZU1lc3NhZ2UsIGNvbnN0IFN0cmlu
ZyYgc291cmNlVVJMLCBjb25zdCBUZXh0UG9zaXRpb24mIHNvdXJjZVBvc2l0aW9uLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiwgY29uc3QgVVJMJiBwcmVSZWRpcmVjdFVSTCA9IFVSTCgpLCBFbGVtZW50
KiA9IG51bGxwdHIpIGNvbnN0OworICAgIHZvaWQgcmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmlu
ZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZSYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IFN0cmluZyYgYmxvY2tlZFVSTCwg
Y29uc3QgU3RyaW5nJiBjb25zb2xlTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGNv
bnN0IFN0cmluZ1ZpZXcmIHNvdXJjZUNvbnRlbnQsIGNvbnN0IFRleHRQb3NpdGlvbiYgc291cmNl
UG9zaXRpb24sIGNvbnN0IFVSTCYgcHJlUmVkaXJlY3RVUkwgPSBVUkwoKSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogPSBudWxscHRyLCBFbGVtZW50KiA9IG51bGxwdHIpIGNvbnN0OworICAgIHZvaWQg
cmVwb3J0VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYgZWZmZWN0aXZlVmlvbGF0ZWREaXJlY3RpdmUs
IGNvbnN0IFN0cmluZyYgdmlvbGF0ZWREaXJlY3RpdmUsIGNvbnN0IENvbnRlbnRTZWN1cml0eVBv
bGljeURpcmVjdGl2ZUxpc3QmIHZpb2xhdGVkRGlyZWN0aXZlTGlzdCwgY29uc3QgU3RyaW5nJiBi
bG9ja2VkVVJMLCBjb25zdCBTdHJpbmcmIGNvbnNvbGVNZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVVSTCwgY29uc3QgU3RyaW5nVmlldyYgc291cmNlQ29udGVudCwgY29uc3QgVGV4dFBvc2l0
aW9uJiBzb3VyY2VQb3NpdGlvbiwgSlNDOjpKU0dsb2JhbE9iamVjdCosIGNvbnN0IFVSTCYgcHJl
UmVkaXJlY3RVUkwgPSBVUkwoKSwgRWxlbWVudCogPSBudWxscHRyKSBjb25zdDsKICAgICB2b2lk
IHJlcG9ydEJsb2NrZWRTY3JpcHRFeGVjdXRpb25Ub0luc3BlY3Rvcihjb25zdCBTdHJpbmcmIGRp
cmVjdGl2ZVRleHQpIGNvbnN0OwogCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVmlvbGF0ZWREaXJl
Y3RpdmUsIHR5cGVuYW1lIEhhc2hTZWFyY2hQb2xpY3k+IGJvb2wgY2hlY2tIYXNoQW5kUmVwb3J0
VmlvbGF0aW9uKGNvbnN0IFN0cmluZyYsIGNvbnN0IFZpb2xhdGVkRGlyZWN0aXZlJiwgY29uc3Qg
SGFzaFNlYXJjaFBvbGljeSYsIE9wdGlvblNldDxDb250ZW50U2VjdXJpdHlQb2xpY3lIYXNoQWxn
b3JpdGhtPiwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpWaW9sYXRlZERpcmVjdGl2ZUNhbGxiYWNr
JiYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5Q2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2Vj
dXJpdHlQb2xpY3lDbGllbnQuaAppbmRleCBmMmZlNjM4OTQ2NDk2ZWRiYjMwMzg0NTM5OGZmOWU3
Mzk3YzM0YmQ5Li5hZmFlYzI2M2I3N2ZkODIyYmQxMDE5NTdjNzFjZDJkMzM5MzhkMzhhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lDbGll
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lD
bGllbnQuaApAQCAtMzYsNiArMzYsNyBAQCBjbGFzcyBGb3JtRGF0YTsKIHN0cnVjdCBDU1BJbmZv
IHsKICAgICBTdHJpbmcgZG9jdW1lbnRVUkk7CiAgICAgU3RyaW5nIHNvdXJjZUZpbGU7CisgICAg
U3RyaW5nIHNhbXBsZTsKICAgICBpbnQgbGluZU51bWJlciB7IDAgfTsKICAgICBpbnQgY29sdW1u
TnVtYmVyIHsgMCB9OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKaW5kZXggOWE4ZGYy
OTI1MGViZDJjNjdiMzE0ZjM5ZTI2YzgyNzRjZTRiMDRkMS4uMTExMTcxY2U4MzE5YzcxY2Q0MWM2
MjRmNDk3NTNjNWJjZGM5Zjg4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3Av
Q29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHAKQEAgLTY0
Miw0ICs2NDIsMTUgQEAgYm9vbCBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0Ojpz
dHJpY3REeW5hbWljSW5jbHVkZWQoKQogICAgIHJldHVybiBkaXJlY3RpdmUgJiYgZGlyZWN0aXZl
LT5hbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cygpOwogfQogCitib29sIENvbnRlbnRTZWN1
cml0eVBvbGljeURpcmVjdGl2ZUxpc3Q6OnNob3VsZFJlcG9ydFNhbXBsZShjb25zdCBTdHJpbmcm
IHZpb2xhdGVkRGlyZWN0aXZlKSBjb25zdAoreworICAgIENvbnRlbnRTZWN1cml0eVBvbGljeVNv
dXJjZUxpc3REaXJlY3RpdmUqIGRpcmVjdGl2ZSA9IG51bGxwdHI7CisgICAgaWYgKHZpb2xhdGVk
RGlyZWN0aXZlLnN0YXJ0c1dpdGgoQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXM6
OnN0eWxlU3JjKSkKKyAgICAgICAgZGlyZWN0aXZlID0gbV9zdHlsZVNyYy5nZXQoKTsKKyAgICBl
bHNlIGlmICh2aW9sYXRlZERpcmVjdGl2ZS5zdGFydHNXaXRoKENvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzOjpzY3JpcHRTcmMpKQorICAgICAgICBkaXJlY3RpdmUgPSBtX3Njcmlw
dFNyYy5nZXQoKTsKKworICAgIHJldHVybiBkaXJlY3RpdmUgJiYgZGlyZWN0aXZlLT5zaG91bGRS
ZXBvcnRTYW1wbGUoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlz
dC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTGlzdC5oCmluZGV4IDNlZjlmMGNkZjJkZTg0ZWVjNTc2OWI2NTllMmRkZmY3MGQ3NTJhNWEu
LmMzZTIwODQwZDg2YzEwZmMwMjM0YWQ0ZTk2NmY5MGI2ZGQwZDVkODkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJl
Y3RpdmVMaXN0LmgKQEAgLTg2LDYgKzg2LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYg
ZXZhbERpc2FibGVkRXJyb3JNZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbV9ldmFsRGlzYWJsZWRF
cnJvck1lc3NhZ2U7IH0KICAgICBjb25zdCBTdHJpbmcmIHdlYkFzc2VtYmx5RGlzYWJsZWRFcnJv
ck1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBtX3dlYkFzc2VtYmx5RGlzYWJsZWRFcnJvck1lc3Nh
Z2U7IH0KICAgICBib29sIGlzUmVwb3J0T25seSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVwb3J0T25s
eTsgfQorICAgIGJvb2wgc2hvdWxkUmVwb3J0U2FtcGxlKGNvbnN0IFN0cmluZyYpIGNvbnN0Owog
ICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXBvcnRVUklzKCkgY29uc3QgeyByZXR1cm4gbV9y
ZXBvcnRVUklzOyB9CiAKICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgb25jZSB3ZSB0ZWFjaCBD
b250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0IGhvdyB0byBsb2cgYW4gYXJiaXRyYXJ5
IGNvbnNvbGUgbWVzc2FnZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAKaW5kZXggMmZiMGUxZDExZTkw
ZmNkOGU3ZjM5OGUxMjFjZGI2OWJiMGZiODlhMy4uNDlkYTQ0YTlkY2MyYTRiM2ZiOGJmMTk4ZmQ5
ZDdhNDU4NzdhMmQwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVu
dFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAKQEAgLTI0OCw2ICsyNDgsMTEg
QEAgdGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4gc3RkOjpvcHRpb25hbDxDb250ZW50
U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0OjoKICAgICAgICAgcmV0dXJuIHNvdXJjZTsKICAgICB9
CiAKKyAgICBpZiAoc2tpcEV4YWN0bHlJZ25vcmluZ0FTQ0lJQ2FzZShidWZmZXIsICIncmVwb3J0
LXNhbXBsZSciKSkgeworICAgICAgICBtX3JlcG9ydFNhbXBsZSA9IHRydWU7CisgICAgICAgIHJl
dHVybiBzb3VyY2U7CisgICAgfQorCiAgICAgYXV0byBiZWdpbiA9IGJ1ZmZlci5wb3NpdGlvbigp
OwogICAgIGF1dG8gYmVnaW5Ib3N0ID0gYmVnaW47CiAgICAgYXV0byBiZWdpblBhdGggPSBidWZm
ZXIuZW5kKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2Vj
dXJpdHlQb2xpY3lTb3VyY2VMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50
U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmgKaW5kZXggNjA5M2I4ODI2Zjk5MDg5NTIxZmJmODIy
OTU3YTMzNzhkZDE4NmEzNS4uMzc5NDVlNmNiMDNmMzFmMzAzMTM4Njg0YWMyMjgxOTIzYjZjMzZk
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9jc3AvQ29udGVudFNlY3VyaXR5UG9s
aWN5U291cmNlTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1
cml0eVBvbGljeVNvdXJjZUxpc3QuaApAQCAtNTUsNiArNTUsNyBAQCBwdWJsaWM6CiAgICAgYm9v
bCBpc05vbmUoKSBjb25zdCB7IHJldHVybiBtX2lzTm9uZTsgfQogICAgIGJvb2wgYWxsb3dOb25Q
YXJzZXJJbnNlcnRlZFNjcmlwdHMoKSBjb25zdCB7IHJldHVybiBtX2FsbG93Tm9uUGFyc2VySW5z
ZXJ0ZWRTY3JpcHRzOyB9CiAgICAgYm9vbCBhbGxvd1Vuc2FmZUhhc2hlcygpIGNvbnN0IHsgcmV0
dXJuIG1fYWxsb3dVbnNhZmVIYXNoZXM7IH0KKyAgICBib29sIHNob3VsZFJlcG9ydFNhbXBsZSgp
IGNvbnN0IHsgcmV0dXJuIG1fcmVwb3J0U2FtcGxlOyB9CiAKIHByaXZhdGU6CiAgICAgc3RydWN0
IEhvc3QgewpAQCAtOTYsNiArOTcsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc05vbmUgeyBm
YWxzZSB9OwogICAgIGJvb2wgbV9hbGxvd05vblBhcnNlckluc2VydGVkU2NyaXB0cyB7IGZhbHNl
IH07CiAgICAgYm9vbCBtX2FsbG93VW5zYWZlSGFzaGVzIHsgZmFsc2UgfTsKKyAgICBib29sIG1f
cmVwb3J0U2FtcGxlIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVNv
dXJjZUxpc3REaXJlY3RpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY3NwL0NvbnRlbnRTZWN1
cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaAppbmRleCA0YWFmMTk5MjVmMTk2NThkYTg2
YWZiM2Y5MmMxNmY3ODVlOTljYTE5Li43OGJhOTVhODFkMDEzOTM2OGQzODdmMWRkZjA0NTVkNWRk
OWNlMzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2NzcC9Db250ZW50U2VjdXJp
dHlQb2xpY3lTb3VyY2VMaXN0RGlyZWN0aXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9j
c3AvQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oCkBAIC00NSw2ICs0
NSw3IEBAIHB1YmxpYzoKICAgICBib29sIGFsbG93SW5saW5lKCkgY29uc3QgeyByZXR1cm4gbV9z
b3VyY2VMaXN0LmFsbG93SW5saW5lKCk7IH0KICAgICBib29sIGFsbG93RXZhbCgpIGNvbnN0IHsg
cmV0dXJuIG1fc291cmNlTGlzdC5hbGxvd0V2YWwoKTsgfQogICAgIGJvb2wgYWxsb3dOb25QYXJz
ZXJJbnNlcnRlZFNjcmlwdHMoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUxpc3QuYWxsb3dOb25Q
YXJzZXJJbnNlcnRlZFNjcmlwdHMoKTsgfQorICAgIGJvb2wgc2hvdWxkUmVwb3J0U2FtcGxlKCkg
Y29uc3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0LnNob3VsZFJlcG9ydFNhbXBsZSgpOyB9CiAKICAg
ICBPcHRpb25TZXQ8Q29udGVudFNlY3VyaXR5UG9saWN5SGFzaEFsZ29yaXRobT4gaGFzaEFsZ29y
aXRobXNVc2VkKCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VMaXN0Lmhhc2hBbGdvcml0aG1zVXNl
ZCgpOyB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDVhMjBhNzFmM2Q2ODI0
Y2ExZWU5YzcyZGZmZGExYjMyNmRhN2EyZGYuLjE0NGFiNmJmOTY5ZDAwNjg5OTFmM2M0ZGQ5ODcz
OTI5OTdjYzgzYTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDIxLTExLTIzICBQYXRyaWNrIEdyaWZmaXMgIDxwZ3JpZmZpc0BpZ2FsaWEuY29tPgor
CisgICAgICAgIENTUDogSW1wbGVtZW50IHN1Ym1pdHRpbmcgc2FtcGxlcyBpbiB2aW9sYXRpb24g
cmVwb3J0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMzMzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VXBkYXRlIGV4cGVjdGF0aW9ucyB3aXRoIG1vcmUgcGFzc2VzLgorCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0
aW9uL3NjcmlwdC1zYW1wbGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3Jp
cHQtc2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0
eWxlLXNhbXBsZS1leHBlY3RlZC50eHQ6CisKIDIwMjEtMTEtMjMgIENhcmxvcyBHYXJjaWEgQ2Ft
cG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIENTUDogc2VjdXJpdHkgcG9saWN5
IHZpb2xhdGlvbiBldmVudCBpcyBhbHdheXMgdXNpbmcgZG9jdW1lbnQgYXMgdGFyZ2V0CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRl
bnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQt
c2FtcGxlLWV4cGVjdGVkLnR4dAppbmRleCAyZGQwYTEzNTA0MjY5ZjQ2NjQ2ZDFmODg2YTZlYTU3
ZjhlMWM5ZmZlLi5kZWNmMDExMjUxZDMxMDNmMTA3OGQ5ZjM0YTdlNmUxYTY0MWNmYzc4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRl
bnQtc2VjdXJpdHktcG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3NjcmlwdC1zYW1wbGUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY29udGVudC1zZWN1cml0eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc2Ny
aXB0LXNhbXBsZS1leHBlY3RlZC50eHQKQEAgLTEsMTcgKzEsOSBAQAotQ09OU09MRSBNRVNTQUdF
OiBUaGUgc291cmNlIGxpc3QgZm9yIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZSAn
c2NyaXB0LXNyYycgY29udGFpbnMgYW4gaW52YWxpZCBzb3VyY2U6ICcncmVwb3J0LXNhbXBsZScn
LiBJdCB3aWxsIGJlIGlnbm9yZWQuCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0
ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5l
JyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250
ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogUmVmdXNlZCB0byBleGVjdXRl
IGEgc2NyaXB0IGZvciBhbiBpbmxpbmUgZXZlbnQgaGFuZGxlciBiZWNhdXNlICd1bnNhZmUtaW5s
aW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBD
b250ZW50IFNlY3VyaXR5IFBvbGljeS4KLUNPTlNPTEUgTUVTU0FHRTogVGhlIHNvdXJjZSBsaXN0
IGZvciBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBkaXJlY3RpdmUgJ3NjcmlwdC1zcmMnIGNvbnRh
aW5zIGFuIGludmFsaWQgc291cmNlOiAnJ3JlcG9ydC1zYW1wbGUnJy4gSXQgd2lsbCBiZSBpZ25v
cmVkLgotQ09OU09MRSBNRVNTQUdFOiBUaGUgc291cmNlIGxpc3QgZm9yIENvbnRlbnQgU2VjdXJp
dHkgUG9saWN5IGRpcmVjdGl2ZSAnc2NyaXB0LXNyYycgY29udGFpbnMgYW4gaW52YWxpZCBzb3Vy
Y2U6ICcncmVwb3J0LXNhbXBsZScnLiBJdCB3aWxsIGJlIGlnbm9yZWQuCi1DT05TT0xFIE1FU1NB
R0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlICd1bnNhZmUtZXZhbCcgZG9l
cyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kuCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNj
cmlwdCBiZWNhdXNlICd1bnNhZmUtZXZhbCcgZG9lcyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQt
c3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCi1DT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMg
bm9uY2UsIG9yICd1bnNhZmUtaW5saW5lJyBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1z
cmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50IFNlY3VyaXR5IFBvbGljeS4KIAogCiBIYXJuZXNz
IEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKIAotVElNRU9VVCBJbmxpbmUgc2NyaXB0
IHNob3VsZCBoYXZlIGEgc2FtcGxlLiBUZXN0IHRpbWVkIG91dAotVElNRU9VVCBJbmxpbmUgZXZl
bnQgaGFuZGxlcnMgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CitQQVNTIElu
bGluZSBzY3JpcHQgc2hvdWxkIGhhdmUgYSBzYW1wbGUuCitQQVNTIElubGluZSBldmVudCBoYW5k
bGVycyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4KIFRJTUVPVVQgSmF2YVNjcmlwdCBVUkxzIGluIGlm
cmFtZXMgc2hvdWxkIGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CiBUSU1FT1VUIGV2YWwo
KSBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKIFRJTUVPVVQgc2V0SW50ZXJ2
YWwoKSBzaG91bGQgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0
eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc2NyaXB0LXNhbXBsZS1uby1vcHQtaW4t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQt
c2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQKaW5kZXggZDg1YjI4MGY2ZTg3OTRhMTJlMTA1
NzFkODc4YjNlZjE1Nzk3ZjAyMi4uZGIyOTdhZjMxYzFhZTMxYmM5MTQyOWEyMjBmNDYxYWZiZDg2
OTg4NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zY3Jp
cHQtc2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9zZWN1cml0
eXBvbGljeXZpb2xhdGlvbi9zY3JpcHQtc2FtcGxlLW5vLW9wdC1pbi1leHBlY3RlZC50eHQKQEAg
LTEsMTQgKzEsOSBAQAotQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGV4ZWN1dGUgYSBzY3Jp
cHQgYmVjYXVzZSBpdHMgaGFzaCwgaXRzIG5vbmNlLCBvciAndW5zYWZlLWlubGluZScgZG9lcyBu
b3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1
cml0eSBQb2xpY3kuCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlw
dCBmb3IgYW4gaW5saW5lIGV2ZW50IGhhbmRsZXIgYmVjYXVzZSAndW5zYWZlLWlubGluZScgZG9l
cyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBT
ZWN1cml0eSBQb2xpY3kuCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNj
cmlwdCBiZWNhdXNlICd1bnNhZmUtZXZhbCcgZG9lcyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQt
c3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVudCBTZWN1cml0eSBQb2xpY3kuCi1DT05TT0xFIE1F
U1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBhIHNjcmlwdCBiZWNhdXNlICd1bnNhZmUtZXZhbCcg
ZG9lcyBub3QgYXBwZWFyIGluIHRoZSBzY3JpcHQtc3JjIGRpcmVjdGl2ZSBvZiB0aGUgQ29udGVu
dCBTZWN1cml0eSBQb2xpY3kuCi1DT05TT0xFIE1FU1NBR0U6IFJlZnVzZWQgdG8gZXhlY3V0ZSBh
IHNjcmlwdCBiZWNhdXNlIGl0cyBoYXNoLCBpdHMgbm9uY2UsIG9yICd1bnNhZmUtaW5saW5lJyBk
b2VzIG5vdCBhcHBlYXIgaW4gdGhlIHNjcmlwdC1zcmMgZGlyZWN0aXZlIG9mIHRoZSBDb250ZW50
IFNlY3VyaXR5IFBvbGljeS4KIAogCiBIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9
IG51bGwKIAotVElNRU9VVCBJbmxpbmUgc2NyaXB0IHNob3VsZCBub3QgaGF2ZSBhIHNhbXBsZS4g
VGVzdCB0aW1lZCBvdXQKLVRJTUVPVVQgSW5saW5lIGV2ZW50IGhhbmRsZXJzIHNob3VsZCBub3Qg
aGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKK1BBU1MgSW5saW5lIHNjcmlwdCBzaG91bGQg
bm90IGhhdmUgYSBzYW1wbGUuCitQQVNTIElubGluZSBldmVudCBoYW5kbGVycyBzaG91bGQgbm90
IGhhdmUgYSBzYW1wbGUuCiBUSU1FT1VUIEphdmFTY3JpcHQgVVJMcyBpbiBpZnJhbWVzIHNob3Vs
ZCBub3QgaGF2ZSBhIHNhbXBsZS4gVGVzdCB0aW1lZCBvdXQKLVRJTUVPVVQgZXZhbCgpLWFsaWtl
cyBzaG91bGQgbm90IGhhdmUgYSBzYW1wbGUuIFRlc3QgdGltZWQgb3V0CitQQVNTIGV2YWwoKS1h
bGlrZXMgc2hvdWxkIG5vdCBoYXZlIGEgc2FtcGxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHktcG9saWN5
L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbnRlbnQtc2VjdXJpdHkt
cG9saWN5L3NlY3VyaXR5cG9saWN5dmlvbGF0aW9uL3N0eWxlLXNhbXBsZS1leHBlY3RlZC50eHQK
aW5kZXggODY5OTFmNjc0Y2Y3Y2VlYjY3ZGQ2YWU5NTcwOGRmYTExNjY4M2RhNC4uMmM3NTQxM2Zj
ZTk0MGIwZTIxODk5NWZkOTU2NDFiNWUwY2IyYTlhMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb250ZW50LXNlY3VyaXR5LXBvbGljeS9z
ZWN1cml0eXBvbGljeXZpb2xhdGlvbi9zdHlsZS1zYW1wbGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVudC1zZWN1cml0
eS1wb2xpY3kvc2VjdXJpdHlwb2xpY3l2aW9sYXRpb24vc3R5bGUtc2FtcGxlLWV4cGVjdGVkLnR4
dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCBJbmxpbmUgc3R5bGUgYmxvY2tzIHNob3VsZCBoYXZl
IGEgc2FtcGxlLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAicCB7IG9tZzogeWF5ICFpbXBvcnRh
bnQ7IH0iIGJ1dCBnb3QgIiIKLUZBSUwgSW5saW5lIHN0eWxlIGF0dHJpYnV0ZXMgc2hvdWxkIGhh
dmUgYSBzYW1wbGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJvbWc6IHlheSAhaW1wb3J0YW50
OyIgYnV0IGdvdCAiIgorUEFTUyBJbmxpbmUgc3R5bGUgYmxvY2tzIHNob3VsZCBoYXZlIGEgc2Ft
cGxlLgorUEFTUyBJbmxpbmUgc3R5bGUgYXR0cmlidXRlcyBzaG91bGQgaGF2ZSBhIHNhbXBsZS4K
IAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>