<?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>229694</bug_id>
          
          <creation_ts>2021-08-30 17:39:47 -0700</creation_ts>
          <short_desc>[JSC][Intl] Errors for .call({}) are too verbose</short_desc>
          <delta_ts>2021-08-30 19:58:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ross Kirsling">ross.kirsling</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1788745</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-08-30 17:39:47 -0700</bug_when>
    <thetext>[JSC][Intl] Errors for .call({}) are too verbose</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788746</commentid>
    <comment_count>1</comment_count>
      <attachid>436833</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-08-30 17:40:32 -0700</bug_when>
    <thetext>Created attachment 436833
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788751</commentid>
    <comment_count>2</comment_count>
      <attachid>436833</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-30 17:54:24 -0700</bug_when>
    <thetext>Comment on attachment 436833
Patch

r=me if EWS is green.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788772</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-30 19:57:51 -0700</bug_when>
    <thetext>Committed r281789 (241126@main): &lt;https://commits.webkit.org/241126@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 436833.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788773</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-30 19:58:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/82561397&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436833</attachid>
            <date>2021-08-30 17:40:32 -0700</date>
            <delta_ts>2021-08-30 19:57:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229694-20210830174031.patch</filename>
            <type>text/plain</type>
            <size>35543</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
YWQxZTQ3NmYwYjc1YmQ0ZTJjNjFkOTQwZTUwZmJiMDZhMmFlOGRkLi45MjM2YTRjMjVmZGNlMjJm
ZjEzOGM4MzVlYjMyZTNmYWY4YTA1NWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAyMS0wOC0zMCAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ11bSW50bF0gRXJyb3JzIGZvciAuY2FsbCh7fSkgYXJlIHRv
byB2ZXJib3NlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjk2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHJ1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRs
RGlzcGxheU5hbWVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxMaXN0Rm9y
bWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNl
Z21lbnRzUHJvdG90eXBlLmNwcDoKKwogMjAyMS0wOC0zMCAgUm9zcyBLaXJzbGluZyAgPHJvc3Mu
a2lyc2xpbmdAc29ueS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgYWRkIG1pc3NpbmcgaW5j
bHVkZSB0byBwcmUtZW1wdCB1bmlmaWVkIHNvdXJjZSBzaGlmdC4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCmluZGV4
IDgwZjE0ZDg3MGYyM2UyNGRiZTM5ZDRhYjc4NGJkMGM4NjIyMTliNjYuLmYyYmIzZmEwNmIwMzY0
NWQ5OThlMjZhZjc4YWU5ZTgzZGRkNTMzZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcApAQCAtMTE0LDcgKzEx
NCw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihJbnRsQ29sbGF0b3JQcm90b3R5cGVHZXR0
ZXJDb21wYXJlLCAoSlNHbG9iYWxPYmplY3QqIGdsCiAgICAgLy8gMS4gTGV0IGNvbGxhdG9yIGJl
IHRoaXMgQ29sbGF0b3Igb2JqZWN0LgogICAgIEludGxDb2xsYXRvciogY29sbGF0b3IgPSBqc0R5
bmFtaWNDYXN0PEludGxDb2xsYXRvcio+KHZtLCBKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKCFjb2xsYXRvcikKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJv
d1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Db2xsYXRvci5wcm90b3R5cGUu
Y29tcGFyZSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQg
YXMgYSBDb2xsYXRvciJfcykpOworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93
VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5j
b21wYXJlIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgQ29sbGF0b3IiX3MpKTsKIAogICAg
IEpTQm91bmRGdW5jdGlvbiogYm91bmRDb21wYXJlID0gY29sbGF0b3ItPmJvdW5kQ29tcGFyZSgp
OwogICAgIC8vIDIuIElmIGNvbGxhdG9yLltbYm91bmRDb21wYXJlXV0gaXMgdW5kZWZpbmVkLApA
QCAtMTQyLDcgKzE0Miw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsQ29sbGF0b3JQ
cm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zLCAoSlNHbG9iYWxPYmplCiAgICAgLy8gMTAuMy41
IEludGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQwMiAyLjAp
CiAgICAgSW50bENvbGxhdG9yKiBjb2xsYXRvciA9IGpzRHluYW1pY0Nhc3Q8SW50bENvbGxhdG9y
Kj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwogICAgIGlmICghY29sbGF0b3IpCi0gICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkludGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24g
dmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBDb2xsYXRvciJfcykp
OworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJJbnRsLkNvbGxhdG9yLnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2Fs
bGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBDb2xsYXRvciJfcykpOwogCiAgICAgUkVMRUFTRV9B
TkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY29sbGF0b3ItPnJlc29sdmVkT3B0aW9u
cyhnbG9iYWxPYmplY3QpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBlMWM0
MmE5Njg5MGRjNTM4MjlmZTA3YzU3MmE3YzQyNTg2N2I1MDIwLi5hNjY3NDBkMGQxZWY0ZDY4OTU5
OGQwZjQ2OGU5NWMzZGJiMDMzMDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTEy
Myw3ICsxMjMsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlR2V0dGVyRm9ybWF0LCAoSlNHbG9iYWxPYmplYwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIHsgfSk7CiAgICAgLy8gMi4gUmV0dXJuSWZBYnJ1cHQoZHRmKS4KICAgICBp
ZiAoVU5MSUtFTFkoIWR0ZikpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6
ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCJfcykpOworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBEYXRlVGlt
ZUZvcm1hdCJfcykpOwogCiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCA9IGR0Zi0+
Ym91bmRGb3JtYXQoKTsKICAgICAvLyAzLiBJZiB0aGUgW1tib3VuZEZvcm1hdF1dIGludGVybmFs
IHNsb3Qgb2YgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3QgaXMgdW5kZWZpbmVkLApAQCAtMTUz
LDcgKzE1Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGVGdW5jRm9ybWF0VG9QYXJ0cywgKEpTR2xvYmFsCiAgICAgLy8gRG8gbm90IHVzZSB1
bndyYXBGb3JPbGRGdW5jdGlvbnMuCiAgICAgYXV0byogZGF0ZVRpbWVGb3JtYXQgPSBqc0R5bmFt
aWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsK
ICAgICBpZiAoVU5MSUtFTFkoIWRhdGVUaW1lRm9ybWF0KSkKLSAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0VG9QYXJ0cyBjYWxsZWQgb24gdmFsdWUgdGhhdCdz
IG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCJfcykpOworICAg
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXRUb1BhcnRzIGNhbGxl
ZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgRGF0ZVRpbWVGb3JtYXQiX3MpKTsKIAogICAgIEpTVmFs
dWUgZGF0ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgZG91YmxlIHZhbHVlOwpAQCAt
MTc3LDcgKzE3Nyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVGdW5jRm9ybWF0UmFuZ2UsIChKU0dsb2JhbE9iCiAgICAgLy8gRG8gbm90IHVz
ZSB1bndyYXBGb3JPbGRGdW5jdGlvbnMuCiAgICAgYXV0byogZGF0ZVRpbWVGb3JtYXQgPSBqc0R5
bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgp
KTsKICAgICBpZiAoVU5MSUtFTFkoIWRhdGVUaW1lRm9ybWF0KSkKLSAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0UmFuZ2UgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQiX3MpKTsKKyAg
ICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0UmFuZ2UgY2FsbGVk
IG9uIHZhbHVlIHRoYXQncyBub3QgYSBEYXRlVGltZUZvcm1hdCJfcykpOwogCiAgICAgSlNWYWx1
ZSBzdGFydERhdGVWYWx1ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1ZSBl
bmREYXRlVmFsdWUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEpOwpAQCAtMjA0LDcgKzIwNCw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5j
Rm9ybWF0UmFuZ2VUb1BhcnRzLCAoSlNHCiAgICAgLy8gRG8gbm90IHVzZSB1bndyYXBGb3JPbGRG
dW5jdGlvbnMuCiAgICAgYXV0byogZGF0ZVRpbWVGb3JtYXQgPSBqc0R5bmFtaWNDYXN0PEludGxE
YXRlVGltZUZvcm1hdCo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKICAgICBpZiAoVU5M
SUtFTFkoIWRhdGVUaW1lRm9ybWF0KSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0
aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUuZm9ybWF0UmFuZ2VUb1BhcnRzIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFu
IG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0Il9zKSk7CisgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
IkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdFJhbmdlVG9QYXJ0cyBjYWxsZWQg
b24gdmFsdWUgdGhhdCdzIG5vdCBhIERhdGVUaW1lRm9ybWF0Il9zKSk7CiAKICAgICBKU1ZhbHVl
IHN0YXJ0RGF0ZVZhbHVlID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGVu
ZERhdGVWYWx1ZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7CkBAIC0yMzIsNyArMjMyLDcgQEAg
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNS
ZXNvbHZlZE9wdGlvbnMsIChKU0dsb2IKICAgICBhdXRvKiBkYXRlVGltZUZvcm1hdCA9IEludGxE
YXRlVGltZUZvcm1hdDo6dW53cmFwRm9yT2xkRnVuY3Rpb25zKGdsb2JhbE9iamVjdCwgY2FsbEZy
YW1lLT50aGlzVmFsdWUoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsK
ICAgICBpZiAoVU5MSUtFTFkoIWRhdGVUaW1lRm9ybWF0KSkKLSAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0
J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0Il9zKSk7Cisg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBj
YWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIERhdGVUaW1lRm9ybWF0Il9zKSk7CiAKICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShkYXRlVGltZUZvcm1hdC0+
cmVzb2x2ZWRPcHRpb25zKGdsb2JhbE9iamVjdCkpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAK
aW5kZXggOTVlNmRkOTc2ZTQ3NWU4YzJmZDNlM2UzYmMyOWQ5YjhiNTJlNGJkMS4uNzNlOGVhZDI5
NWY2ZWE4NDBlMTRhNTc4YjJlNDY0YTczNzY0MmQyMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAK
QEAgLTgxLDcgKzgxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxEaXNwbGF5TmFt
ZXNQcm90b3R5cGVGdW5jT2YsIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKIAogICAgIGF1dG8qIGRp
c3BsYXlOYW1lcyA9IGpzRHluYW1pY0Nhc3Q8SW50bERpc3BsYXlOYW1lcyo+KHZtLCBjYWxsRnJh
bWUtPnRoaXNWYWx1ZSgpKTsKICAgICBpZiAoIWRpc3BsYXlOYW1lcykKLSAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuRGlzcGxheU5hbWVz
LnByb3RvdHlwZS5vZiBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlh
bGl6ZWQgYXMgYSBEaXNwbGF5TmFtZXMiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EaXNwbGF5TmFtZXMucHJvdG90eXBlLm9m
IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgRGlzcGxheU5hbWVzIl9zKTsKIAogICAgIFJF
TEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKGRpc3BsYXlOYW1lcy0+b2Yo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKSkpOwogfQpAQCAtOTQsNyArOTQs
NyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZUZ1
bmNSZXNvbHZlZE9wdGlvbnMsIChKU0dsb2JhbAogCiAgICAgYXV0byogZGlzcGxheU5hbWVzID0g
anNEeW5hbWljQ2FzdDxJbnRsRGlzcGxheU5hbWVzKj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVl
KCkpOwogICAgIGlmICghZGlzcGxheU5hbWVzKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EaXNwbGF5TmFtZXMucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlh
bGl6ZWQgYXMgYSBEaXNwbGF5TmFtZXMiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5EaXNwbGF5TmFtZXMucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIERpc3BsYXlOYW1lcyJf
cyk7CiAKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShkaXNw
bGF5TmFtZXMtPnJlc29sdmVkT3B0aW9ucyhnbG9iYWxPYmplY3QpKSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlw
ZS5jcHAKaW5kZXggM2FmYTE0NThlZTk2M2I2ZWJhYmYxMTk0YjdlMGJjYmM2YTAzMzc0NS4uZGNh
ODJlOWZhNWNjZmJhYTk1NmNiMmRkNGRmZjEyODhkYWU4NmE3NyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0UHJvdG90eXBlLmNw
cApAQCAtODMsNyArODMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50bExpc3RGb3Jt
YXRQcm90b3R5cGVGdW5jRm9ybWF0LCAoSlNHbG9iYWxPYmplY3QqIGdsbwogCiAgICAgYXV0byog
bGlzdEZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bExpc3RGb3JtYXQqPih2bSwgY2FsbEZyYW1l
LT50aGlzVmFsdWUoKSk7CiAgICAgaWYgKCFsaXN0Rm9ybWF0KQotICAgICAgICByZXR1cm4gdGhy
b3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5MaXN0Rm9ybWF0LnByb3Rv
dHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxp
emVkIGFzIGEgTGlzdEZvcm1hdCJfcyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxpc3RGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBj
YWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIExpc3RGb3JtYXQiX3MpOwogCiAgICAgUkVMRUFT
RV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobGlzdEZvcm1hdC0+Zm9ybWF0KGds
b2JhbE9iamVjdCwgY2FsbEZyYW1lLT5hcmd1bWVudCgwKSkpKTsKIH0KQEAgLTk2LDcgKzk2LDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxMaXN0Rm9ybWF0UHJvdG90eXBlRnVuY0Zv
cm1hdFRvUGFydHMsIChKU0dsb2JhbE9iamUKIAogICAgIGF1dG8qIGxpc3RGb3JtYXQgPSBqc0R5
bmFtaWNDYXN0PEludGxMaXN0Rm9ybWF0Kj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwog
ICAgIGlmICghbGlzdEZvcm1hdCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIkludGwuTGlzdEZvcm1hdC5wcm90b3R5cGUuZm9ybWF0VG9QYXJ0
cyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBM
aXN0Rm9ybWF0Il9zKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkludGwuTGlzdEZvcm1hdC5wcm90b3R5cGUuZm9ybWF0VG9QYXJ0cyBjYWxs
ZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIExpc3RGb3JtYXQiX3MpOwogCiAgICAgUkVMRUFTRV9B
TkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobGlzdEZvcm1hdC0+Zm9ybWF0VG9QYXJ0
cyhnbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+YXJndW1lbnQoMCkpKSk7CiB9CkBAIC0xMDksNyAr
MTA5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxMaXN0Rm9ybWF0UHJvdG90eXBl
RnVuY1Jlc29sdmVkT3B0aW9ucywgKEpTR2xvYmFsT2IKIAogICAgIGF1dG8qIGxpc3RGb3JtYXQg
PSBqc0R5bmFtaWNDYXN0PEludGxMaXN0Rm9ybWF0Kj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVl
KCkpOwogICAgIGlmICghbGlzdEZvcm1hdCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuTGlzdEZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIExpc3RGb3JtYXQiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5MaXN0Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMaXN0Rm9ybWF0Il9zKTsKIAogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKGxpc3RGb3JtYXQtPnJl
c29sdmVkT3B0aW9ucyhnbG9iYWxPYmplY3QpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCmluZGV4IDhiZTMyZTcz
YWM2ZDM1YWZjYmIzMzMwNGVmODFhMTQ2MWJhNTM1MTcuLjc5MWI0ZGUwODBlYWI3YmYzOWQ1Nzgw
Yjk1ZTI1MTkwNDgxODZmZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCkBAIC0xMTcsNyArMTE3LDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKEludGxMb2NhbGVQcm90b3R5cGVGdW5jTWF4aW1pemUsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmEKIAogICAgIGF1dG8qIGxvY2FsZSA9IGpzRHluYW1pY0Nhc3Q8SW50
bExvY2FsZSo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKICAgICBpZiAoIWxvY2FsZSkK
LSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIklu
dGwuTG9jYWxlLnByb3RvdHlwZS5tYXhpbWl6ZSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBh
biBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICByZXR1cm4gdGhy
b3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBl
Lm1heGltaXplIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgTG9jYWxlIl9zKTsKIAogICAg
IEludGxMb2NhbGUqIG5ld0xvY2FsZSA9IEludGxMb2NhbGU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LT5sb2NhbGVTdHJ1Y3R1cmUoKSk7CiAgICAgc2NvcGUucmVsZWFzZSgpOwpAQCAtMTMzLDcg
KzEzMyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsTG9jYWxlUHJvdG90eXBlRnVu
Y01pbmltaXplLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhCiAKICAgICBhdXRvKiBsb2NhbGUgPSBq
c0R5bmFtaWNDYXN0PEludGxMb2NhbGUqPih2bSwgY2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CiAg
ICAgaWYgKCFsb2NhbGUpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUubWluaW1pemUgY2FsbGVkIG9uIHZh
bHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxlIl9zKTsKKyAg
ICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwu
TG9jYWxlLnByb3RvdHlwZS5taW5pbWl6ZSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIExv
Y2FsZSJfcyk7CiAKICAgICBJbnRsTG9jYWxlKiBuZXdMb2NhbGUgPSBJbnRsTG9jYWxlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdC0+bG9jYWxlU3RydWN0dXJlKCkpOwogICAgIHNjb3BlLnJlbGVh
c2UoKTsKQEAgLTE0OSw3ICsxNDksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50bExv
Y2FsZVByb3RvdHlwZUZ1bmNUb1N0cmluZywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAg
YXV0byogbG9jYWxlID0ganNEeW5hbWljQ2FzdDxJbnRsTG9jYWxlKj4odm0sIGNhbGxGcmFtZS0+
dGhpc1ZhbHVlKCkpOwogICAgIGlmICghbG9jYWxlKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLnRvU3Ry
aW5nIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBh
IExvY2FsZSJfcyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUudG9TdHJpbmcgY2FsbGVkIG9uIHZhbHVl
IHRoYXQncyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiBmdWxsU3RyaW5n
ID0gbG9jYWxlLT50b1N0cmluZygpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNW
YWx1ZTo6ZW5jb2RlKGZ1bGxTdHJpbmcuaXNFbXB0eSgpID8ganNVbmRlZmluZWQoKSA6IGpzU3Ry
aW5nKHZtLCBmdWxsU3RyaW5nKSkpOwpAQCAtMTYzLDcgKzE2Myw3IEBAIEpTQ19ERUZJTkVfQ1VT
VE9NX0dFVFRFUihJbnRsTG9jYWxlUHJvdG90eXBlR2V0dGVyQmFzZU5hbWUsIChKU0dsb2JhbE9i
amVjdCogZ2xvCiAKICAgICBhdXRvKiBsb2NhbGUgPSBqc0R5bmFtaWNDYXN0PEludGxMb2NhbGUq
Pih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghbG9jYWxlKQotICAg
ICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5M
b2NhbGUucHJvdG90eXBlLmJhc2VOYW1lIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9i
amVjdCBpbml0aWFsaXplZCBhcyBhIExvY2FsZSJfcyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZN
VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUuYmFz
ZU5hbWUgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAgY29u
c3QgU3RyaW5nJiBiYXNlTmFtZSA9IGxvY2FsZS0+YmFzZU5hbWUoKTsKICAgICBSRUxFQVNFX0FO
RF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShiYXNlTmFtZS5pc0VtcHR5KCkgPyBqc1Vu
ZGVmaW5lZCgpIDoganNTdHJpbmcodm0sIGJhc2VOYW1lKSkpOwpAQCAtMTc3LDcgKzE3Nyw3IEBA
IEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihJbnRsTG9jYWxlUHJvdG90eXBlR2V0dGVyQ2FsZW5k
YXIsIChKU0dsb2JhbE9iamVjdCogZ2xvCiAKICAgICBhdXRvKiBsb2NhbGUgPSBqc0R5bmFtaWND
YXN0PEludGxMb2NhbGUqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlm
ICghbG9jYWxlKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLmNhbGVuZGFyIGNhbGxlZCBvbiB2YWx1ZSB0
aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIExvY2FsZSJfcyk7CisgICAgICAg
IHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2Fs
ZS5wcm90b3R5cGUuY2FsZW5kYXIgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2NhbGUi
X3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiBjYWxlbmRhciA9IGxvY2FsZS0+Y2FsZW5kYXIoKTsK
ICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShjYWxlbmRhci5p
c051bGwoKSA/IGpzVW5kZWZpbmVkKCkgOiBqc1N0cmluZyh2bSwgY2FsZW5kYXIpKSk7CkBAIC0x
OTEsNyArMTkxLDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKEludGxMb2NhbGVQcm90b3R5
cGVHZXR0ZXJDYWxlbmRhcnMsIChKU0dsb2JhbE9iamVjdCogZ2wKIAogICAgIGF1dG8qIGxvY2Fs
ZSA9IGpzRHluYW1pY0Nhc3Q8SW50bExvY2FsZSo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUodGhpc1Zh
bHVlKSk7CiAgICAgaWYgKCFsb2NhbGUpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUuY2FsZW5kYXJzIGNh
bGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIExvY2Fs
ZSJfcyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUuY2FsZW5kYXJzIGNhbGxlZCBvbiB2YWx1ZSB0aGF0
J3Mgbm90IGEgTG9jYWxlIl9zKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNW
YWx1ZTo6ZW5jb2RlKGxvY2FsZS0+Y2FsZW5kYXJzKGdsb2JhbE9iamVjdCkpKTsKIH0KQEAgLTIw
NCw3ICsyMDQsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlw
ZUdldHRlckNhc2VGaXJzdCwgKEpTR2xvYmFsT2JqZWN0KiBnbAogCiAgICAgYXV0byogbG9jYWxl
ID0ganNEeW5hbWljQ2FzdDxJbnRsTG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFs
dWUpKTsKICAgICBpZiAoIWxvY2FsZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5jYXNlRmlyc3QgY2Fs
bGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxl
Il9zKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5jYXNlRmlyc3QgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiBjYXNlRmlyc3QgPSBsb2Nh
bGUtPmNhc2VGaXJzdCgpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6
ZW5jb2RlKGNhc2VGaXJzdC5pc051bGwoKSA/IGpzVW5kZWZpbmVkKCkgOiBqc1N0cmluZyh2bSwg
Y2FzZUZpcnN0KSkpOwpAQCAtMjE4LDcgKzIxOCw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRF
UihJbnRsTG9jYWxlUHJvdG90eXBlR2V0dGVyQ29sbGF0aW9uLCAoSlNHbG9iYWxPYmplY3QqIGds
CiAKICAgICBhdXRvKiBsb2NhbGUgPSBqc0R5bmFtaWNDYXN0PEludGxMb2NhbGUqPih2bSwgSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghbG9jYWxlKQotICAgICAgICByZXR1
cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJv
dG90eXBlLmNvbGxhdGlvbiBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5p
dGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLmNvbGxhdGlvbiBj
YWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIExvY2FsZSJfcyk7CiAKICAgICBjb25zdCBTdHJp
bmcmIGNvbGxhdGlvbiA9IGxvY2FsZS0+Y29sbGF0aW9uKCk7CiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY29sbGF0aW9uLmlzTnVsbCgpID8ganNVbmRlZmlu
ZWQoKSA6IGpzU3RyaW5nKHZtLCBjb2xsYXRpb24pKSk7CkBAIC0yMzIsNyArMjMyLDcgQEAgSlND
X0RFRklORV9DVVNUT01fR0VUVEVSKEludGxMb2NhbGVQcm90b3R5cGVHZXR0ZXJDb2xsYXRpb25z
LCAoSlNHbG9iYWxPYmplY3QqIGcKIAogICAgIGF1dG8qIGxvY2FsZSA9IGpzRHluYW1pY0Nhc3Q8
SW50bExvY2FsZSo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKCFs
b2NhbGUpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUuY29sbGF0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhh
dCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICBy
ZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUu
cHJvdG90eXBlLmNvbGxhdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2NhbGUi
X3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobG9j
YWxlLT5jb2xsYXRpb25zKGdsb2JhbE9iamVjdCkpKTsKIH0KQEAgLTI0NSw3ICsyNDUsNyBAQCBK
U0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlwZUdldHRlckhvdXJDeWNs
ZSwgKEpTR2xvYmFsT2JqZWN0KiBnbAogCiAgICAgYXV0byogbG9jYWxlID0ganNEeW5hbWljQ2Fz
dDxJbnRsTG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAo
IWxvY2FsZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5ob3VyQ3ljbGUgY2FsbGVkIG9uIHZhbHVlIHRo
YXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxlIl9zKTsKKyAgICAgICAg
cmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuTG9jYWxl
LnByb3RvdHlwZS5ob3VyQ3ljbGUgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2NhbGUi
X3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiBob3VyQ3ljbGUgPSBsb2NhbGUtPmhvdXJDeWNsZSgp
OwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKGhvdXJDeWNs
ZS5pc051bGwoKSA/IGpzVW5kZWZpbmVkKCkgOiBqc1N0cmluZyh2bSwgaG91ckN5Y2xlKSkpOwpA
QCAtMjU5LDcgKzI1OSw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihJbnRsTG9jYWxlUHJv
dG90eXBlR2V0dGVySG91ckN5Y2xlcywgKEpTR2xvYmFsT2JqZWN0KiBnCiAKICAgICBhdXRvKiBs
b2NhbGUgPSBqc0R5bmFtaWNDYXN0PEludGxMb2NhbGUqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRo
aXNWYWx1ZSkpOwogICAgIGlmICghbG9jYWxlKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLmhvdXJDeWNs
ZXMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEg
TG9jYWxlIl9zKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5ob3VyQ3ljbGVzIGNhbGxlZCBvbiB2YWx1
ZSB0aGF0J3Mgbm90IGEgTG9jYWxlIl9zKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29w
ZSwgSlNWYWx1ZTo6ZW5jb2RlKGxvY2FsZS0+aG91ckN5Y2xlcyhnbG9iYWxPYmplY3QpKSk7CiB9
CkBAIC0yNzIsNyArMjcyLDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKEludGxMb2NhbGVQ
cm90b3R5cGVHZXR0ZXJOdW1lcmljLCAoSlNHbG9iYWxPYmplY3QqIGdsb2IKIAogICAgIGF1dG8q
IGxvY2FsZSA9IGpzRHluYW1pY0Nhc3Q8SW50bExvY2FsZSo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKCFsb2NhbGUpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUubnVtZXJp
YyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBM
b2NhbGUiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLm51bWVyaWMgY2FsbGVkIG9uIHZhbHVlIHRo
YXQncyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBK
U1ZhbHVlOjplbmNvZGUoanNCb29sZWFuKGxvY2FsZS0+bnVtZXJpYygpID09IFRyaVN0YXRlOjpU
cnVlKSkpOwogfQpAQCAtMjg1LDcgKzI4NSw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihJ
bnRsTG9jYWxlUHJvdG90eXBlR2V0dGVyTnVtYmVyaW5nU3lzdGVtLCAoSlNHbG9iYWxPYmplCiAK
ICAgICBhdXRvKiBsb2NhbGUgPSBqc0R5bmFtaWNDYXN0PEludGxMb2NhbGUqPih2bSwgSlNWYWx1
ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghbG9jYWxlKQotICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90
eXBlLm51bWJlcmluZ1N5c3RlbSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3Qg
aW5pdGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLm51bWJlcmlu
Z1N5c3RlbSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIExvY2FsZSJfcyk7CiAKICAgICBj
b25zdCBTdHJpbmcmIG51bWJlcmluZ1N5c3RlbSA9IGxvY2FsZS0+bnVtYmVyaW5nU3lzdGVtKCk7
CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobnVtYmVyaW5n
U3lzdGVtLmlzTnVsbCgpID8ganNVbmRlZmluZWQoKSA6IGpzU3RyaW5nKHZtLCBudW1iZXJpbmdT
eXN0ZW0pKSk7CkBAIC0yOTksNyArMjk5LDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKElu
dGxMb2NhbGVQcm90b3R5cGVHZXR0ZXJOdW1iZXJpbmdTeXN0ZW1zLCAoSlNHbG9iYWxPYmoKIAog
ICAgIGF1dG8qIGxvY2FsZSA9IGpzRHluYW1pY0Nhc3Q8SW50bExvY2FsZSo+KHZtLCBKU1ZhbHVl
OjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKCFsb2NhbGUpCi0gICAgICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5
cGUubnVtYmVyaW5nU3lzdGVtcyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3Qg
aW5pdGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLm51bWJlcmlu
Z1N5c3RlbXMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAg
UkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobG9jYWxlLT5udW1iZXJp
bmdTeXN0ZW1zKGdsb2JhbE9iamVjdCkpKTsKIH0KQEAgLTMxMiw3ICszMTIsNyBAQCBKU0NfREVG
SU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlwZUdldHRlckxhbmd1YWdlLCAoSlNH
bG9iYWxPYmplY3QqIGdsbwogCiAgICAgYXV0byogbG9jYWxlID0ganNEeW5hbWljQ2FzdDxJbnRs
TG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoIWxvY2Fs
ZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
IkludGwuTG9jYWxlLnByb3RvdHlwZS5sYW5ndWFnZSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5v
dCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBMb2NhbGUiX3MpOworICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90
eXBlLmxhbmd1YWdlIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgTG9jYWxlIl9zKTsKIAog
ICAgIGNvbnN0IFN0cmluZyYgbGFuZ3VhZ2UgPSBsb2NhbGUtPmxhbmd1YWdlKCk7CiAgICAgUkVM
RUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobGFuZ3VhZ2UuaXNFbXB0eSgp
ID8ganNVbmRlZmluZWQoKSA6IGpzU3RyaW5nKHZtLCBsYW5ndWFnZSkpKTsKQEAgLTMyNiw3ICsz
MjYsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlwZUdldHRl
clNjcmlwdCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgYXV0byogbG9jYWxlID0ganNE
eW5hbWljQ2FzdDxJbnRsTG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsK
ICAgICBpZiAoIWxvY2FsZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5zY3JpcHQgY2FsbGVkIG9uIHZh
bHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxlIl9zKTsKKyAg
ICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwu
TG9jYWxlLnByb3RvdHlwZS5zY3JpcHQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBMb2Nh
bGUiX3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiBzY3JpcHQgPSBsb2NhbGUtPnNjcmlwdCgpOwog
ICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKHNjcmlwdC5pc0Vt
cHR5KCkgPyBqc1VuZGVmaW5lZCgpIDoganNTdHJpbmcodm0sIHNjcmlwdCkpKTsKQEAgLTM0MCw3
ICszNDAsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlwZUdl
dHRlclJlZ2lvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgYXV0byogbG9jYWxlID0g
anNEeW5hbWljQ2FzdDxJbnRsTG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUp
KTsKICAgICBpZiAoIWxvY2FsZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS5yZWdpb24gY2FsbGVkIG9u
IHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxlIl9zKTsK
KyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIklu
dGwuTG9jYWxlLnByb3RvdHlwZS5yZWdpb24gY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYSBM
b2NhbGUiX3MpOwogCiAgICAgY29uc3QgU3RyaW5nJiByZWdpb24gPSBsb2NhbGUtPnJlZ2lvbigp
OwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKHJlZ2lvbi5p
c0VtcHR5KCkgPyBqc1VuZGVmaW5lZCgpIDoganNTdHJpbmcodm0sIHJlZ2lvbikpKTsKQEAgLTM1
NCw3ICszNTQsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bExvY2FsZVByb3RvdHlw
ZUdldHRlclRpbWVab25lcywgKEpTR2xvYmFsT2JqZWN0KiBnbAogCiAgICAgYXV0byogbG9jYWxl
ID0ganNEeW5hbWljQ2FzdDxJbnRsTG9jYWxlKj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFs
dWUpKTsKICAgICBpZiAoIWxvY2FsZSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS50aW1lWm9uZXMgY2Fs
bGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxl
Il9zKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkludGwuTG9jYWxlLnByb3RvdHlwZS50aW1lWm9uZXMgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYSBMb2NhbGUiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1Zh
bHVlOjplbmNvZGUobG9jYWxlLT50aW1lWm9uZXMoZ2xvYmFsT2JqZWN0KSkpOwogfQpAQCAtMzY3
LDcgKzM2Nyw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihJbnRsTG9jYWxlUHJvdG90eXBl
R2V0dGVyVGV4dEluZm8sIChKU0dsb2JhbE9iamVjdCogZ2xvCiAKICAgICBhdXRvKiBsb2NhbGUg
PSBqc0R5bmFtaWNDYXN0PEludGxMb2NhbGUqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1
ZSkpOwogICAgIGlmICghbG9jYWxlKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5Mb2NhbGUucHJvdG90eXBlLnRleHRJbmZvIGNhbGxl
ZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIExvY2FsZSJf
cyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJJbnRsLkxvY2FsZS5wcm90b3R5cGUudGV4dEluZm8gY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBu
b3QgYSBMb2NhbGUiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVl
OjplbmNvZGUobG9jYWxlLT50ZXh0SW5mbyhnbG9iYWxPYmplY3QpKSk7CiB9CkBAIC0zODAsNyAr
MzgwLDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKEludGxMb2NhbGVQcm90b3R5cGVHZXR0
ZXJXZWVrSW5mbywgKEpTR2xvYmFsT2JqZWN0KiBnbG8KIAogICAgIGF1dG8qIGxvY2FsZSA9IGpz
RHluYW1pY0Nhc3Q8SW50bExvY2FsZSo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKCFsb2NhbGUpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJJbnRsLkxvY2FsZS5wcm90b3R5cGUud2Vla0luZm8gY2FsbGVkIG9u
IHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTG9jYWxlIl9zKTsK
KyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIklu
dGwuTG9jYWxlLnByb3RvdHlwZS53ZWVrSW5mbyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBh
IExvY2FsZSJfcyk7CiAKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVu
Y29kZShsb2NhbGUtPndlZWtJbmZvKGdsb2JhbE9iamVjdCkpKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZS5jcHAKaW5kZXggNDQzOTY4Y2NhODZkMTY2MDVlYjIxMzRlZjg2ZGYzNzYxZWY2M2NhYS4uYWRk
YWU3N2U0YjliOTVjNmEyZGFhMDIwYjFiMzgyMTE3MDYwZmUxZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZS5jcHAKQEAgLTExOCw3ICsxMTgsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoSW50bE51
bWJlckZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1hdCwgKEpTR2xvYmFsT2JqZWN0KgogICAgIGF1
dG8qIG5mID0gSW50bE51bWJlckZvcm1hdDo6dW53cmFwRm9yT2xkRnVuY3Rpb25zKGdsb2JhbE9i
amVjdCwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHsgfSk7CiAgICAgaWYgKFVOTElLRUxZKCFuZikpCi0gICAgICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwu
TnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3Qg
YW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTnVtYmVyRm9ybWF0Il9zKSk7CisgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
IkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYSBOdW1iZXJGb3JtYXQiX3MpKTsKIAogICAgIEpTQm91bmRGdW5jdGlvbiogYm91bmRG
b3JtYXQgPSBuZi0+Ym91bmRGb3JtYXQoKTsKICAgICAvLyAyLiBJZiBuZi5bW2JvdW5kRm9ybWF0
XV0gaXMgdW5kZWZpbmVkLApAQCAtMTQ4LDcgKzE0OCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTihJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlRnVuY0Zvcm1hdFRvUGFydHMsIChKU0dsb2Jh
bE9iCiAgICAgLy8gRG8gbm90IHVzZSB1bndyYXBGb3JPbGRGdW5jdGlvbnMuCiAgICAgYXV0byog
bnVtYmVyRm9ybWF0ID0ganNEeW5hbWljQ2FzdDxJbnRsTnVtYmVyRm9ybWF0Kj4odm0sIGNhbGxG
cmFtZS0+dGhpc1ZhbHVlKCkpOwogICAgIGlmIChVTkxJS0VMWSghbnVtYmVyRm9ybWF0KSkKLSAg
ICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLmZvcm1hdFRvUGFydHMgY2FsbGVk
IG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgTnVtYmVyRm9y
bWF0Il9zKSk7CisgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuTnVtYmVyRm9ybWF0LnByb3RvdHlwZS5mb3JtYXRU
b1BhcnRzIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgTnVtYmVyRm9ybWF0Il9zKSk7CiAK
ICAgICBkb3VibGUgdmFsdWUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvTnVtYmVyKGdsb2Jh
bE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUo
KSk7CkBAIC0xNjYsNyArMTY2LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxOdW1i
ZXJGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zLCAoSlNHbG9iYWwKICAgICBhdXRv
KiBudW1iZXJGb3JtYXQgPSBJbnRsTnVtYmVyRm9ybWF0Ojp1bndyYXBGb3JPbGRGdW5jdGlvbnMo
Z2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB7IH0pOwogICAgIGlmIChVTkxJS0VMWSghbnVtYmVyRm9ybWF0KSkKLSAg
ICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxs
ZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBOdW1iZXJG
b3JtYXQiX3MpKTsKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5OdW1iZXJGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIE51bWJlckZvcm1hdCJfcykp
OwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUobnVtYmVy
Rm9ybWF0LT5yZXNvbHZlZE9wdGlvbnMoZ2xvYmFsT2JqZWN0KSkpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc1Byb3RvdHlw
ZS5jcHAKaW5kZXggNTMyOTYxMDdmNDE0NDQ4ZjM2ZTc0MTI2ZjBjMDA4MDVlNmY5ZWYwYi4uMmJm
YzMxNTM5NmZhNGEyNGIxMGRlN2Y0MzI5MGUzNWRhMzEzYTBlYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUu
Y3BwCkBAIC04NCw3ICs4NCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihJbnRsUGx1cmFs
UnVsZXNQcm90b3R5cGVGdW5jU2VsZWN0LCAoSlNHbG9iYWxPYmplY3QqIGdsCiAgICAgSW50bFBs
dXJhbFJ1bGVzKiBwbHVyYWxSdWxlcyA9IGpzRHluYW1pY0Nhc3Q8SW50bFBsdXJhbFJ1bGVzKj4o
dm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwogCiAgICAgaWYgKCFwbHVyYWxSdWxlcykKLSAg
ICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSW50bC5QbHVyYWxSdWxlcy5wcm90b3R5cGUuc2VsZWN0IGNhbGxlZCBvbiB2YWx1
ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIFBsdXJhbFJ1bGVzIl9zKSk7
CisgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkludGwuUGx1cmFsUnVsZXMucHJvdG90eXBlLnNlbGVjdCBjYWxsZWQgb24g
dmFsdWUgdGhhdCdzIG5vdCBhIFBsdXJhbFJ1bGVzIl9zKSk7CiAKICAgICBkb3VibGUgdmFsdWUg
PSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvTnVtYmVyKGdsb2JhbE9iamVjdCk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CkBAIC0xMDIsNyArMTAy
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxQbHVyYWxSdWxlc1Byb3RvdHlwZUZ1
bmNSZXNvbHZlZE9wdGlvbnMsIChKU0dsb2JhbE8KICAgICBJbnRsUGx1cmFsUnVsZXMqIHBsdXJh
bFJ1bGVzID0ganNEeW5hbWljQ2FzdDxJbnRsUGx1cmFsUnVsZXMqPih2bSwgY2FsbEZyYW1lLT50
aGlzVmFsdWUoKSk7CiAKICAgICBpZiAoIXBsdXJhbFJ1bGVzKQotICAgICAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLlBs
dXJhbFJ1bGVzLnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgUGx1cmFsUnVsZXMiX3MpKTsKKyAgICAg
ICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAiSW50bC5QbHVyYWxSdWxlcy5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBv
biB2YWx1ZSB0aGF0J3Mgbm90IGEgUGx1cmFsUnVsZXMiX3MpKTsKIAogICAgIFJFTEVBU0VfQU5E
X1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKHBsdXJhbFJ1bGVzLT5yZXNvbHZlZE9wdGlv
bnMoZ2xvYmFsT2JqZWN0KSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcApp
bmRleCAyMDc4YWQyY2YzOWZiZGY5OWFjYjgwMTY0ZTIyM2E3ODMxN2QzZDY5Li40ZWFmNmFjZDEz
ZmYxODIzZTc4YWQ4Mjg0N2IzNjFkYjA1MGE3ZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJv
dG90eXBlLmNwcApAQCAtODMsNyArODMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50
bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNGb3JtYXQsIChKU0dsb2JhbE9iagogCiAg
ICAgYXV0byogcmVsYXRpdmVUaW1lRm9ybWF0ID0ganNEeW5hbWljQ2FzdDxJbnRsUmVsYXRpdmVU
aW1lRm9ybWF0Kj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwogICAgIGlmICghcmVsYXRp
dmVUaW1lRm9ybWF0KQotICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLlJlbGF0aXZlVGltZUZvcm1hdC5wcm90b3R5
cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIFJlbGF0aXZlVGltZUZvcm1hdCJfcykpOworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLlJlbGF0aXZl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEg
UmVsYXRpdmVUaW1lRm9ybWF0Il9zKSk7CiAKICAgICBkb3VibGUgdmFsdWUgPSBjYWxsRnJhbWUt
PmFyZ3VtZW50KDApLnRvTnVtYmVyKGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CkBAIC0xMDIsNyArMTAyLDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKEludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jRm9y
bWF0VG9QYXJ0cywgKEpTR2wKIAogICAgIGF1dG8qIHJlbGF0aXZlVGltZUZvcm1hdCA9IGpzRHlu
YW1pY0Nhc3Q8SW50bFJlbGF0aXZlVGltZUZvcm1hdCo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1
ZSgpKTsKICAgICBpZiAoIXJlbGF0aXZlVGltZUZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5SZWxh
dGl2ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdFRvUGFydHMgY2FsbGVkIG9uIHZhbHVlIHRo
YXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgUmVsYXRpdmVUaW1lRm9ybWF0Il9z
KSk7CisgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgIkludGwuUmVsYXRpdmVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXRU
b1BhcnRzIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGEgUmVsYXRpdmVUaW1lRm9ybWF0Il9z
KSk7CiAKICAgICBkb3VibGUgdmFsdWUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLnRvTnVtYmVy
KGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CkBAIC0xMjEsNyArMTIxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKElu
dGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zLCAoSlMKIAog
ICAgIGF1dG8qIHJlbGF0aXZlVGltZUZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bFJlbGF0aXZl
VGltZUZvcm1hdCo+KHZtLCBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKICAgICBpZiAoIXJlbGF0
aXZlVGltZUZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3Qg
aW5pdGlhbGl6ZWQgYXMgYSBSZWxhdGl2ZVRpbWVGb3JtYXQiX3MpKTsKKyAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50
bC5SZWxhdGl2ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24g
dmFsdWUgdGhhdCdzIG5vdCBhIFJlbGF0aXZlVGltZUZvcm1hdCJfcykpOwogCiAgICAgUkVMRUFT
RV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUocmVsYXRpdmVUaW1lRm9ybWF0LT5y
ZXNvbHZlZE9wdGlvbnMoZ2xvYmFsT2JqZWN0KSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBl
LmNwcAppbmRleCA4MjE3OGVjZGFmMTZhZWU0YWJlMmUwODUzODc1NzM0MDE5YzVkYTBkLi5iNTU2
ZDQzMGYyODcxYmQ5YWE4MWZlYTNhNzk3YzZhOTAwMzE4OTg1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJv
dG90eXBlLmNwcApAQCAtNzksNyArNzksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50
bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZUZ1bmNOZXh0LCAoSlNHbG9iYWxPYmplY3QqCiAKICAg
ICBhdXRvKiBzZWdtZW50SXRlcmF0b3IgPSBqc0R5bmFtaWNDYXN0PEludGxTZWdtZW50SXRlcmF0
b3IqPih2bSwgY2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CiAgICAgaWYgKCFzZWdtZW50SXRlcmF0
b3IpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJJbnRsLlNlZ21lbnRJdGVyYXRvci5wcm90b3R5cGUubmV4dCBjYWxsZWQgb24gdmFsdWUgdGhh
dCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBTZWdtZW50SXRlcmF0b3IiX3MpOwor
ICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW50
bC5TZWdtZW50SXRlcmF0b3IucHJvdG90eXBlLm5leHQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBu
b3QgYSBTZWdtZW50SXRlcmF0b3IiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3Bl
LCBKU1ZhbHVlOjplbmNvZGUoc2VnbWVudEl0ZXJhdG9yLT5uZXh0KGdsb2JhbE9iamVjdCkpKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50
ZXJQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21l
bnRlclByb3RvdHlwZS5jcHAKaW5kZXggMWNmNGQwZDI4NzllMmUxYWI5NTNhNGM5NTJhNTE2YWRk
N2VmMzI1OS4uYzFiMDNlMzI2NWE1NGMyZTFhMzRiNGFlMTdiZWQ4ZDk4NDU5ODk0NCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlclByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlclBy
b3RvdHlwZS5jcHAKQEAgLTgxLDcgKzgxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKElu
dGxTZWdtZW50ZXJQcm90b3R5cGVGdW5jU2VnbWVudCwgKEpTR2xvYmFsT2JqZWN0KiBnbG8KIAog
ICAgIGF1dG8qIHNlZ21lbnRlciA9IGpzRHluYW1pY0Nhc3Q8SW50bFNlZ21lbnRlcio+KHZtLCBj
YWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKICAgICBpZiAoIXNlZ21lbnRlcikKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkludGwuU2VnbWVudGVy
LnByb3RvdHlwZS5zZWdtZW50IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBp
bml0aWFsaXplZCBhcyBhIFNlZ21lbnRlciJfcyk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbnRsLlNlZ21lbnRlci5wcm90b3R5cGUuc2Vn
bWVudCBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIFNlZ21lbnRlciJfcyk7CiAKICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShzZWdtZW50ZXItPnNlZ21l
bnQoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKSkpOwogfQpAQCAtOTQsNyAr
OTQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oSW50bFNlZ21lbnRlclByb3RvdHlwZUZ1
bmNSZXNvbHZlZE9wdGlvbnMsIChKU0dsb2JhbE9iagogCiAgICAgYXV0byogc2VnbWVudGVyID0g
anNEeW5hbWljQ2FzdDxJbnRsU2VnbWVudGVyKj4odm0sIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkp
OwogICAgIGlmICghc2VnbWVudGVyKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiSW50bC5TZWdtZW50ZXIucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMg
YSBTZWdtZW50ZXIiX3MpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiSW50bC5TZWdtZW50ZXIucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBj
YWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIFNlZ21lbnRlciJfcyk7CiAKICAgICBSRUxFQVNF
X0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShzZWdtZW50ZXItPnJlc29sdmVkT3B0
aW9ucyhnbG9iYWxPYmplY3QpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcAppbmRleCA0YzkzZWQ1ZjAyZDJk
YjM1MWRiZDE4MzEyOTZkYjE2ZmE5NmY0YmRhLi5mYzkzMmY0MjE5MWQ4OTY3ZTNlOWI0ZThhMWFl
NDE3YTljYWQwNDZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKEludGxTZWdtZW50c1Byb3RvdHlwZUZ1bmNDb250YWluaW5nLCAoSlNH
bG9iYWxPYmplY3QqIGcKIAogICAgIGF1dG8qIHNlZ21lbnRzID0ganNEeW5hbWljQ2FzdDxJbnRs
U2VnbWVudHMqPih2bSwgY2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CiAgICAgaWYgKCFzZWdtZW50
cykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
IiVTZWdtZW50cy5wcm90b3R5cGUlLmNvbnRhaW5pbmcgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBu
b3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgU2VnbWVudHMiX3MpOworICAgICAgICByZXR1
cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiJVNlZ21lbnRzLnByb3Rv
dHlwZSUuY29udGFpbmluZyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhIFNlZ21lbnRzIl9z
KTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKHNlZ21l
bnRzLT5jb250YWluaW5nKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5hcmd1bWVudCgwKSkpKTsK
IH0KQEAgLTkzLDcgKzkzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKEludGxTZWdtZW50
c1Byb3RvdHlwZUZ1bmNJdGVyYXRvciwgKEpTR2xvYmFsT2JqZWN0KiBnbG8KIAogICAgIGF1dG8q
IHNlZ21lbnRzID0ganNEeW5hbWljQ2FzdDxJbnRsU2VnbWVudHMqPih2bSwgY2FsbEZyYW1lLT50
aGlzVmFsdWUoKSk7CiAgICAgaWYgKCFzZWdtZW50cykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1U
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIiVTZWdtZW50cy5wcm90b3R5cGUlW0BAaXRl
cmF0b3JdIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBh
cyBhIFNlZ21lbnRzIl9zKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgIiVTZWdtZW50cy5wcm90b3R5cGUlW0BAaXRlcmF0b3JdIGNhbGxlZCBv
biB2YWx1ZSB0aGF0J3Mgbm90IGEgU2VnbWVudHMiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoc2VnbWVudHMtPmNyZWF0ZVNlZ21lbnRJdGVyYXRv
cihnbG9iYWxPYmplY3QpKSk7CiB9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxvZyBiL0pT
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDA1MzIxM2Q0ZmQ5MTM0NjEwZGU4ODkwZDQyZTlhOWIxNDc4
YzMyODIuLjE0MzE0MDBmNGY4ZDVhNDI1MjUwMGM5NjdjMDA5NTI2MDkyNWYwZTMgMTAwNjQ0Ci0t
LSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTIgQEAKKzIwMjEtMDgtMzAgIFJvc3MgS2lyc2xpbmcgIDxyb3NzLmtpcnNsaW5nQHNvbnkuY29t
PgorCisgICAgICAgIFtKU0NdW0ludGxdIEVycm9ycyBmb3IgLmNhbGwoe30pIGFyZSB0b28gdmVy
Ym9zZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5
Njk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBz
dHJlc3MvaW50bC1kaXNwbGF5bmFtZXMuanM6CisKIDIwMjEtMDgtMjkgIFl1c3VrZSBTdXp1a2kg
IDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBVcGdyYWRlIHRlc3QyNjIKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL2ludGwtZGlzcGxheW5hbWVzLmpzIGIvSlNUZXN0cy9z
dHJlc3MvaW50bC1kaXNwbGF5bmFtZXMuanMKaW5kZXggYTU1MWM2MzkzNDdmNWUxMzA2ZDc2Njkz
ZTBiNDk4MWZkZmQxN2E0OC4uN2JlMDI5YTM0ZTNmNGUxZTAwMzZhOWQ1NzFiYjRkNmUwMDI5Mjkw
ZCAxMDA2NDQKLS0tIGEvSlNUZXN0cy9zdHJlc3MvaW50bC1kaXNwbGF5bmFtZXMuanMKKysrIGIv
SlNUZXN0cy9zdHJlc3MvaW50bC1kaXNwbGF5bmFtZXMuanMKQEAgLTE5NSw5ICsxOTUsOSBAQCBp
ZiAoJHZtLmljdVZlcnNpb24oKSA+PSA2MSkgewogCiAgICAgc2hvdWxkVGhyb3coKCkgPT4gewog
ICAgICAgICBJbnRsLkRpc3BsYXlOYW1lcy5wcm90b3R5cGUub2YuY2FsbCh7fSk7Ci0gICAgfSwg
YFR5cGVFcnJvcjogSW50bC5EaXNwbGF5TmFtZXMucHJvdG90eXBlLm9mIGNhbGxlZCBvbiB2YWx1
ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERpc3BsYXlOYW1lc2ApOwor
ICAgIH0sIGBUeXBlRXJyb3I6IEludGwuRGlzcGxheU5hbWVzLnByb3RvdHlwZS5vZiBjYWxsZWQg
b24gdmFsdWUgdGhhdCdzIG5vdCBhIERpc3BsYXlOYW1lc2ApOwogCiAgICAgc2hvdWxkVGhyb3co
KCkgPT4gewogICAgICAgICBJbnRsLkRpc3BsYXlOYW1lcy5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zLmNhbGwoe30pOwotICAgIH0sIGBUeXBlRXJyb3I6IEludGwuRGlzcGxheU5hbWVzLnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0
IGluaXRpYWxpemVkIGFzIGEgRGlzcGxheU5hbWVzYCk7CisgICAgfSwgYFR5cGVFcnJvcjogSW50
bC5EaXNwbGF5TmFtZXMucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUg
dGhhdCdzIG5vdCBhIERpc3BsYXlOYW1lc2ApOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>