<?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>154438</bug_id>
          
          <creation_ts>2016-02-18 22:50:39 -0800</creation_ts>
          <short_desc>REGRESSION(r196791): broke windows build (Requested by alexchristensen on #webkit).</short_desc>
          <delta_ts>2016-02-18 22:53:57 -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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>154352</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1166330</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-18 22:50:39 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/196791 broke the build:
broke windows build (Requested by alexchristensen on #webkit).

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1166332</commentid>
    <comment_count>1</comment_count>
      <attachid>271734</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-18 22:51:12 -0800</bug_when>
    <thetext>Created attachment 271734
ROLLOUT of r196791

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1166335</commentid>
    <comment_count>2</comment_count>
      <attachid>271734</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-18 22:53:53 -0800</bug_when>
    <thetext>Comment on attachment 271734
ROLLOUT of r196791

Clearing flags on attachment: 271734

Committed r196800: &lt;http://trac.webkit.org/changeset/196800&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1166336</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-18 22:53:57 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>271734</attachid>
            <date>2016-02-18 22:51:12 -0800</date>
            <delta_ts>2016-02-18 22:53:53 -0800</delta_ts>
            <desc>ROLLOUT of r196791</desc>
            <filename>bug-154438-20160218225053.patch</filename>
            <type>text/plain</type>
            <size>30253</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk2Nzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ2ZGJkYjU3Y2JjNjQzZTAwYjY4M2Nl
YTgxODA4NTczNDllOTgzNzIuLmEyNTU0MWI0YTNiZTJkOWQyMzAwZDBjN2MwMDU5MmU1YmYwYzJm
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTYtMDItMTggIENvbW1pdCBRdWV1ZSAgPGNvbW1p
dC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIx
OTY3OTEuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTQ0MzgKKworICAgICAgICBicm9rZSB3aW5kb3dzIGJ1aWxkIChSZXF1ZXN0ZWQgYnkgYWxleGNo
cmlzdGVuc2VuIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKwor
ICAgICAgICAiRXh0ZW5kIEhhc2hDb3VudGVkU2V0IHdpdGggYSBtZXRob2QgdG8gZWZmaWNpZW50
bHkgc2V0IHRoZQorICAgICAgICBjb3VudCBvZiBhbiBlbnRyeSIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDM1MgorICAgICAgICBodHRwOi8vdHJh
Yy53ZWJraXQub3JnL2NoYW5nZXNldC8xOTY3OTEKKwogMjAxNi0wMi0xOCAgQnJlbnQgRnVsZ2hh
bSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBFeHRlbmQgSGFzaENvdW50ZWRTZXQg
d2l0aCBhIG1ldGhvZCB0byBlZmZpY2llbnRseSBzZXQgdGhlIGNvdW50IG9mIGFuIGVudHJ5CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggYjFjNjc5YmVhMDQ4NjZiNzllZjE3MDYyYjY1YjMzZmFmYTNmY2JmYi4uYThj
YjkxNTk4NzMzMDY1ZWZmOGI5OTBlM2U5ZGEyOTQ0OTkxNjgyNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE3IEBACisyMDE2LTAyLTE4ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0
Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTk2NzkxLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU0NDM4CisKKyAgICAg
ICAgYnJva2Ugd2luZG93cyBidWlsZCAoUmVxdWVzdGVkIGJ5IGFsZXhjaHJpc3RlbnNlbiBvbiAj
d2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIkV4dGVu
ZCBIYXNoQ291bnRlZFNldCB3aXRoIGEgbWV0aG9kIHRvIGVmZmljaWVudGx5IHNldCB0aGUKKyAg
ICAgICAgY291bnQgb2YgYW4gZW50cnkiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNTQzNTIKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9j
aGFuZ2VzZXQvMTk2NzkxCisKIDIwMTYtMDItMTggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICB3aW5kb3cuaGlzdG9yeSAvIHdpbmRvdy5uYXZpZ2F0b3Igc2hvdWxk
IG5vdCBiZSByZXBsYWNlYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvSGFzaENvdW50
ZWRTZXQuaCBiL1NvdXJjZS9XVEYvd3RmL0hhc2hDb3VudGVkU2V0LmgKaW5kZXggMjgzYWJiZGRj
OTk3YzY4MDg3ZTE3MTA3NjM2Zjg5NTVhNGI0MWUzNy4uMDFhN2IxZGJjODA2NzRlNDc2YWEzN2Ux
MzU2MTExZTU5NGY0NjZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvSGFzaENvdW50ZWRT
ZXQuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9IYXNoQ291bnRlZFNldC5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAwOCwgMjAxMywgMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYs
IDIwMDgsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFRoaXMg
bGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IK
ICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljCkBAIC0yMSw3ICsyMSw2IEBACiAjaWZuZGVmIFdURl9IYXNoQ291bnRlZFNldF9oCiAj
ZGVmaW5lIFdURl9IYXNoQ291bnRlZFNldF9oCiAKLSNpbmNsdWRlIDxpbml0aWFsaXplcl9saXN0
PgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
ICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBAIC0zOCwyMiArMzcsNiBAQCBuYW1lc3BhY2UgV1RG
IHsKICAgICAgICAgdHlwZWRlZiB0eXBlbmFtZSBJbXBsVHlwZTo6aXRlcmF0b3IgaXRlcmF0b3I7
CiAgICAgICAgIHR5cGVkZWYgdHlwZW5hbWUgSW1wbFR5cGU6OmNvbnN0X2l0ZXJhdG9yIGNvbnN0
X2l0ZXJhdG9yOwogICAgICAgICB0eXBlZGVmIHR5cGVuYW1lIEltcGxUeXBlOjpBZGRSZXN1bHQg
QWRkUmVzdWx0OwotCi0gICAgICAgIEhhc2hDb3VudGVkU2V0KCkKLSAgICAgICAgewotICAgICAg
ICB9Ci0KLSAgICAgICAgSGFzaENvdW50ZWRTZXQoc3RkOjppbml0aWFsaXplcl9saXN0PHR5cGVu
YW1lIEltcGxUeXBlOjpLZXlWYWx1ZVBhaXJUeXBlPiBpbml0aWFsaXplckxpc3QpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYga2V5VmFsdWVQYWlyIDogaW5pdGlhbGl6
ZXJMaXN0KQotICAgICAgICAgICAgICAgIGFkZChrZXlWYWx1ZVBhaXIua2V5LCBrZXlWYWx1ZVBh
aXIudmFsdWUpOwotICAgICAgICB9Ci0KLSAgICAgICAgSGFzaENvdW50ZWRTZXQoc3RkOjppbml0
aWFsaXplcl9saXN0PHR5cGVuYW1lIEltcGxUeXBlOjpLZXlUeXBlPiBpbml0aWFsaXplckxpc3Qp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgdmFsdWUgOiBpbml0aWFs
aXplckxpc3QpCi0gICAgICAgICAgICAgICAgYWRkKHZhbHVlKTsKLSAgICAgICAgfQogICAgICAg
ICAKICAgICAgICAgdm9pZCBzd2FwKEhhc2hDb3VudGVkU2V0Jik7CiAgICAgICAgIApAQCAtNzYs
MTIgKzU5LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgIC8vIFRoZSByZXR1cm4gdmFsdWUg
aW5jbHVkZXMgYm90aCBhbiBpdGVyYXRvciB0byB0aGUgdmFsdWUncyBsb2NhdGlvbiwKICAgICAg
ICAgLy8gYW5kIGFuIGlzTmV3RW50cnkgYm9vbCB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGl0IGlz
IGEgbmV3IG9yIGV4aXN0aW5nIGVudHJ5LgogICAgICAgICBBZGRSZXN1bHQgYWRkKGNvbnN0IFZh
bHVlVHlwZSYpOwotICAgICAgICBBZGRSZXN1bHQgYWRkKFZhbHVlVHlwZSYmKTsKLQotICAgICAg
ICAvLyBJbmNyZW1lbnRzIHRoZSBjb3VudCBvZiBhIHZhbHVlIGJ5IHRoZSBwYXNzZWQgYW1vdW50
LgotICAgICAgICBBZGRSZXN1bHQgYWRkKGNvbnN0IFZhbHVlVHlwZSYsIHVuc2lnbmVkKTsKLSAg
ICAgICAgQWRkUmVzdWx0IGFkZChWYWx1ZVR5cGUmJiwgdW5zaWduZWQpOwotCisgICAgICAgIAog
ICAgICAgICAvLyBEZWNyZW1lbnRzIHRoZSBjb3VudCBvZiB0aGUgdmFsdWUsIGFuZCByZW1vdmVz
IGl0IGlmIGNvdW50IGdvZXMgZG93biB0byB6ZXJvLgogICAgICAgICAvLyBSZXR1cm5zIHRydWUg
aWYgdGhlIHZhbHVlIGlzIHJlbW92ZWQuCiAgICAgICAgIGJvb2wgcmVtb3ZlKGNvbnN0IFZhbHVl
VHlwZSYpOwpAQCAtOTUsMTggKzczLDEwIEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICAvLyBD
bGVhcnMgdGhlIHdob2xlIHNldC4KICAgICAgICAgdm9pZCBjbGVhcigpOwogCi0gICAgICAgIC8v
IE92ZXJsb2FkcyBmb3Igc21hcnQgcG9pbnRlciBrZXlzIHRoYXQgdGFrZSB0aGUgcmF3IHBvaW50
ZXIgdHlwZSBhcyB0aGUgcGFyYW1ldGVyLgotICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBWID0g
VmFsdWVUeXBlPiB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxJc1NtYXJ0UHRyPFY+Ojp2YWx1ZSwg
aXRlcmF0b3I+Ojp0eXBlIGZpbmQodHlwZW5hbWUgR2V0UHRySGVscGVyPFY+OjpQdHJUeXBlKTsK
LSAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgViA9IFZhbHVlVHlwZT4gdHlwZW5hbWUgc3RkOjpl
bmFibGVfaWY8SXNTbWFydFB0cjxWPjo6dmFsdWUsIGNvbnN0X2l0ZXJhdG9yPjo6dHlwZSBmaW5k
KHR5cGVuYW1lIEdldFB0ckhlbHBlcjxWPjo6UHRyVHlwZSkgY29uc3Q7Ci0gICAgICAgIHRlbXBs
YXRlPHR5cGVuYW1lIFYgPSBWYWx1ZVR5cGU+IHR5cGVuYW1lIHN0ZDo6ZW5hYmxlX2lmPElzU21h
cnRQdHI8Vj46OnZhbHVlLCBib29sPjo6dHlwZSBjb250YWlucyh0eXBlbmFtZSBHZXRQdHJIZWxw
ZXI8Vj46OlB0clR5cGUpIGNvbnN0OwotICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBWID0gVmFs
dWVUeXBlPiB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxJc1NtYXJ0UHRyPFY+Ojp2YWx1ZSwgdW5z
aWduZWQ+Ojp0eXBlIGNvdW50KHR5cGVuYW1lIEdldFB0ckhlbHBlcjxWPjo6UHRyVHlwZSkgY29u
c3Q7Ci0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFYgPSBWYWx1ZVR5cGU+IHR5cGVuYW1lIHN0
ZDo6ZW5hYmxlX2lmPElzU21hcnRQdHI8Vj46OnZhbHVlLCBib29sPjo6dHlwZSByZW1vdmUodHlw
ZW5hbWUgR2V0UHRySGVscGVyPFY+OjpQdHJUeXBlKTsKLQogICAgIHByaXZhdGU6CiAgICAgICAg
IEltcGxUeXBlIG1faW1wbDsKICAgICB9OwogCi0KICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBWYWx1
ZSwgdHlwZW5hbWUgSGFzaEZ1bmN0aW9ucywgdHlwZW5hbWUgVHJhaXRzPgogICAgIGlubGluZSB2
b2lkIEhhc2hDb3VudGVkU2V0PFZhbHVlLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHM+Ojpzd2FwKEhh
c2hDb3VudGVkU2V0JiBvdGhlcikKICAgICB7CkBAIC0xODYsMzAgKzE1Niw2IEBAIG5hbWVzcGFj
ZSBXVEYgewogICAgICAgICArK3Jlc3VsdC5pdGVyYXRvci0+dmFsdWU7CiAgICAgICAgIHJldHVy
biByZXN1bHQ7CiAgICAgfQotCi0gICAgdGVtcGxhdGU8dHlwZW5hbWUgVmFsdWUsIHR5cGVuYW1l
IEhhc2hGdW5jdGlvbnMsIHR5cGVuYW1lIFRyYWl0cz4KLSAgICBpbmxpbmUgdHlwZW5hbWUgSGFz
aENvdW50ZWRTZXQ8VmFsdWUsIEhhc2hGdW5jdGlvbnMsIFRyYWl0cz46OkFkZFJlc3VsdCBIYXNo
Q291bnRlZFNldDxWYWx1ZSwgSGFzaEZ1bmN0aW9ucywgVHJhaXRzPjo6YWRkKFZhbHVlVHlwZSYm
IHZhbHVlKQotICAgIHsKLSAgICAgICAgQWRkUmVzdWx0IHJlc3VsdCA9IG1faW1wbC5hZGQoc3Rk
Ojpmb3J3YXJkPFZhbHVlPih2YWx1ZSksIDApOwotICAgICAgICArK3Jlc3VsdC5pdGVyYXRvci0+
dmFsdWU7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAgfQotCi0gICAgdGVtcGxhdGU8dHlw
ZW5hbWUgVmFsdWUsIHR5cGVuYW1lIEhhc2hGdW5jdGlvbnMsIHR5cGVuYW1lIFRyYWl0cz4KLSAg
ICBpbmxpbmUgdHlwZW5hbWUgSGFzaENvdW50ZWRTZXQ8VmFsdWUsIEhhc2hGdW5jdGlvbnMsIFRy
YWl0cz46OkFkZFJlc3VsdCBIYXNoQ291bnRlZFNldDxWYWx1ZSwgSGFzaEZ1bmN0aW9ucywgVHJh
aXRzPjo6YWRkKGNvbnN0IFZhbHVlVHlwZSYgdmFsdWUsIHVuc2lnbmVkIGNvdW50KQotICAgIHsK
LSAgICAgICAgQWRkUmVzdWx0IHJlc3VsdCA9IG1faW1wbC5hZGQodmFsdWUsIDApOwotICAgICAg
ICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlICs9IGNvdW50OwotICAgICAgICByZXR1cm4gcmVzdWx0
OwotICAgIH0KLSAgICAKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgSGFz
aEZ1bmN0aW9ucywgdHlwZW5hbWUgVHJhaXRzPgotICAgIGlubGluZSB0eXBlbmFtZSBIYXNoQ291
bnRlZFNldDxWYWx1ZSwgSGFzaEZ1bmN0aW9ucywgVHJhaXRzPjo6QWRkUmVzdWx0IEhhc2hDb3Vu
dGVkU2V0PFZhbHVlLCBIYXNoRnVuY3Rpb25zLCBUcmFpdHM+OjphZGQoVmFsdWVUeXBlJiYgdmFs
dWUsIHVuc2lnbmVkIGNvdW50KQotICAgIHsKLSAgICAgICAgQWRkUmVzdWx0IHJlc3VsdCA9IG1f
aW1wbC5hZGQoc3RkOjpmb3J3YXJkPFZhbHVlPih2YWx1ZSksIDApOwotICAgICAgICByZXN1bHQu
aXRlcmF0b3ItPnZhbHVlICs9IGNvdW50OwotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIH0K
ICAgICAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBWYWx1ZSwgdHlwZW5hbWUgSGFzaEZ1bmN0aW9u
cywgdHlwZW5hbWUgVHJhaXRzPgogICAgIGlubGluZSBib29sIEhhc2hDb3VudGVkU2V0PFZhbHVl
LCBIYXNoRnVuY3Rpb25zLCBUcmFpdHM+OjpyZW1vdmUoY29uc3QgVmFsdWVUeXBlJiB2YWx1ZSkK
QEAgLTI4Myw0MiArMjI5LDggQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgICAgICB2ZWN0b3Jb
aV0gPSAoKml0KS5rZXk7CiAgICAgfQogCi0gICAgdGVtcGxhdGU8dHlwZW5hbWUgVmFsdWUsIHR5
cGVuYW1lIEhhc2hGdW5jdGlvbnMsIHR5cGVuYW1lIFRyYWl0cz4KLSAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBWPgotICAgIGlubGluZSBhdXRvIEhhc2hDb3VudGVkU2V0PFZhbHVlLCBIYXNoRnVuY3Rp
b25zLCBUcmFpdHM+OjpmaW5kKHR5cGVuYW1lIEdldFB0ckhlbHBlcjxWPjo6UHRyVHlwZSB2YWx1
ZSkgLT4gdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8SXNTbWFydFB0cjxWPjo6dmFsdWUsIGl0ZXJh
dG9yPjo6dHlwZQotICAgIHsKLSAgICAgICAgcmV0dXJuIG1faW1wbC50ZW1wbGF0ZSBmaW5kKHZh
bHVlKTsKLSAgICB9Ci0gICAgCi0gICAgdGVtcGxhdGU8dHlwZW5hbWUgVmFsdWUsIHR5cGVuYW1l
IEhhc2hGdW5jdGlvbnMsIHR5cGVuYW1lIFRyYWl0cz4KLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBW
PgotICAgIGlubGluZSBhdXRvIEhhc2hDb3VudGVkU2V0PFZhbHVlLCBIYXNoRnVuY3Rpb25zLCBU
cmFpdHM+OjpmaW5kKHR5cGVuYW1lIEdldFB0ckhlbHBlcjxWPjo6UHRyVHlwZSB2YWx1ZSkgY29u
c3QgLT4gdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8SXNTbWFydFB0cjxWPjo6dmFsdWUsIGNvbnN0
X2l0ZXJhdG9yPjo6dHlwZQotICAgIHsKLSAgICAgICAgcmV0dXJuIG1faW1wbC50ZW1wbGF0ZSBm
aW5kKHZhbHVlKTsKLSAgICB9Ci0gICAgCi0gICAgdGVtcGxhdGU8dHlwZW5hbWUgVmFsdWUsIHR5
cGVuYW1lIEhhc2hGdW5jdGlvbnMsIHR5cGVuYW1lIFRyYWl0cz4KLSAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBWPgotICAgIGlubGluZSBhdXRvIEhhc2hDb3VudGVkU2V0PFZhbHVlLCBIYXNoRnVuY3Rp
b25zLCBUcmFpdHM+Ojpjb250YWlucyh0eXBlbmFtZSBHZXRQdHJIZWxwZXI8Vj46OlB0clR5cGUg
dmFsdWUpIGNvbnN0IC0+IHR5cGVuYW1lIHN0ZDo6ZW5hYmxlX2lmPElzU21hcnRQdHI8Vj46OnZh
bHVlLCBib29sPjo6dHlwZQotICAgIHsKLSAgICAgICAgcmV0dXJuIG1faW1wbC50ZW1wbGF0ZSBj
b250YWlucyh2YWx1ZSk7Ci0gICAgfQotICAgIAotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFZhbHVl
LCB0eXBlbmFtZSBIYXNoRnVuY3Rpb25zLCB0eXBlbmFtZSBUcmFpdHM+Ci0gICAgdGVtcGxhdGU8
dHlwZW5hbWUgVj4KLSAgICBpbmxpbmUgYXV0byBIYXNoQ291bnRlZFNldDxWYWx1ZSwgSGFzaEZ1
bmN0aW9ucywgVHJhaXRzPjo6Y291bnQodHlwZW5hbWUgR2V0UHRySGVscGVyPFY+OjpQdHJUeXBl
IHZhbHVlKSBjb25zdCAtPiB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxJc1NtYXJ0UHRyPFY+Ojp2
YWx1ZSwgdW5zaWduZWQ+Ojp0eXBlCi0gICAgewotICAgICAgICByZXR1cm4gbV9pbXBsLnRlbXBs
YXRlIGdldCh2YWx1ZSk7Ci0gICAgfQotICAgIAotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFZhbHVl
LCB0eXBlbmFtZSBIYXNoRnVuY3Rpb25zLCB0eXBlbmFtZSBUcmFpdHM+Ci0gICAgdGVtcGxhdGU8
dHlwZW5hbWUgVj4KLSAgICBpbmxpbmUgYXV0byBIYXNoQ291bnRlZFNldDxWYWx1ZSwgSGFzaEZ1
bmN0aW9ucywgVHJhaXRzPjo6cmVtb3ZlKHR5cGVuYW1lIEdldFB0ckhlbHBlcjxWPjo6UHRyVHlw
ZSB2YWx1ZSkgLT4gdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8SXNTbWFydFB0cjxWPjo6dmFsdWUs
IGJvb2w+Ojp0eXBlCi0gICAgewotICAgICAgICByZXR1cm4gcmVtb3ZlKGZpbmQodmFsdWUpKTsK
LSAgICB9CiAKLX0gLy8gbmFtZXNwYWNlIFdURgorfSAvLyBuYW1lc3BhY2Uga2h0bWwKIAogdXNp
bmcgV1RGOjpIYXNoQ291bnRlZFNldDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3MuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jl
c291cmNlTG9hZFN0YXRpc3RpY3MuY3BwCmluZGV4IGRlMTNhNWY0N2U0NmEwZTY0MTIwYzM0NGU1
NWVlODE1ODVkNmI2YzEuLmFjOTUwMTNiZGJlODk5NzRhZDQ1YzBjN2Y3MWJiM2VjNmVkYzkyYzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5j
cHAKQEAgLTEyNCw4ICsxMjQsMTAgQEAgc3RhdGljIHZvaWQgZGVjb2RlSGFzaENvdW50ZWRTZXQo
S2V5ZWREZWNvZGVyJiBkZWNvZGVyLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBIYXMKICAgICAgICAg
dW5zaWduZWQgY291bnQ7CiAgICAgICAgIGlmICghZGVjb2RlcklubmVyLmRlY29kZVVJbnQzMigi
Y291bnQiLCBjb3VudCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgaGFz
aENvdW50ZWRTZXQuYWRkKG9yaWdpbiwgY291bnQpOworICAgICAgICAKKyAgICAgICAgLy8gRklY
TUU6IENyZWF0ZSBhIEhhc2hDb3VudGVkU2V0IG1ldGhvZCB0byBkbyB0aGlzIGVmZmljaWVudGx5
CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb3VudDsgKytpKQorICAgICAgICAg
ICAgaGFzaENvdW50ZWRTZXQuYWRkKG9yaWdpbik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAg
IH0pOwogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IDczM2YyODMxODAxZWY2OTJkYjE1ZjZmZWNjNDE2OTg5YzA2N2IxODIuLjYxYWM0MjVlODlh
ZTVhMDk5ZmU0ZmQxNTE2OTk1ZDM1N2EyYTA2OWQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNi0wMi0xOCAgQ29t
bWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjE5Njc5MS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE1NDQzOAorCisgICAgICAgIGJyb2tlIHdpbmRvd3MgYnVpbGQgKFJl
cXVlc3RlZCBieSBhbGV4Y2hyaXN0ZW5zZW4gb24gI3dlYmtpdCkuCisKKyAgICAgICAgUmV2ZXJ0
ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJFeHRlbmQgSGFzaENvdW50ZWRTZXQgd2l0aCBhIG1l
dGhvZCB0byBlZmZpY2llbnRseSBzZXQgdGhlCisgICAgICAgIGNvdW50IG9mIGFuIGVudHJ5Igor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU0MzUyCisg
ICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE5Njc5MQorCiAyMDE2LTAy
LTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIEV4dGVu
ZCBIYXNoQ291bnRlZFNldCB3aXRoIGEgbWV0aG9kIHRvIGVmZmljaWVudGx5IHNldCB0aGUgY291
bnQgb2YgYW4gZW50cnkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvQ01ha2VMaXN0
cy50eHQgYi9Ub29scy9UZXN0V2ViS2l0QVBJL0NNYWtlTGlzdHMudHh0CmluZGV4IGEyNTMyYjAx
ZDQ3YzQyOGFiNzhjMmVmOTQ0MGNjZTljZTQxOWY0MTkuLjRjYTA3MmNlNWYxMjZiYmE5ZDAwZTk0
OTg3NzhmMmYxZDBiOWM1ZTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvQ01ha2VM
aXN0cy50eHQKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9DTWFrZUxpc3RzLnR4dApAQCAtNDcs
NyArNDcsNiBAQCBzZXQoVGVzdFdURl9TT1VSQ0VTCiAgICAgJHtURVNUV0VCS0lUQVBJX0RJUn0v
VGVzdHMvV1RGL0RhdGVNYXRoLmNwcAogICAgICR7VEVTVFdFQktJVEFQSV9ESVJ9L1Rlc3RzL1dU
Ri9EZXF1ZS5jcHAKICAgICAke1RFU1RXRUJLSVRBUElfRElSfS9UZXN0cy9XVEYvRnVuY3Rpb25h
bC5jcHAKLSAgICAke1RFU1RXRUJLSVRBUElfRElSfS9UZXN0cy9XVEYvSGFzaENvdW50ZWRTZXQu
Y3BwCiAgICAgJHtURVNUV0VCS0lUQVBJX0RJUn0vVGVzdHMvV1RGL0hhc2hNYXAuY3BwCiAgICAg
JHtURVNUV0VCS0lUQVBJX0RJUn0vVGVzdHMvV1RGL0hhc2hTZXQuY3BwCiAgICAgJHtURVNUV0VC
S0lUQVBJX0RJUn0vVGVzdHMvV1RGL0ludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uY3BwCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDZlMmJmM2JjY2I0M2UyMzA2MWI1OTQ3NTdhNTRlYjU0OWFm
ZTI1NDkuLjEyNjRjMWU5ZDc4ZWNiODU5NWQyYTY4YzRhYzUzYTc0NjE5YzRhY2YgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC03OSw3ICs3OSw2IEBACiAJCTc2RTE4MkREMTU0NzU2OTEwMEYx
RkFERCAvKiBXaWxsU2VuZFN1Ym1pdEV2ZW50X0J1bmRsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3NkUxODJEQzE1NDc1NjkxMDBGMUZBREQgLyog
V2lsbFNlbmRTdWJtaXRFdmVudF9CdW5kbGUuY3BwICovOyB9OwogCQk3NkUxODJERjE1NDc2N0U2
MDBGMUZBREQgLyogYXV0by1zdWJtaXR0aW5nLWZvcm0uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3NkUxODJERTE1NDc1QTgzMDBGMUZB
REQgLyogYXV0by1zdWJtaXR0aW5nLWZvcm0uaHRtbCAqLzsgfTsKIAkJN0ExNDU4RkMxQUQ1QzA3
MDAwRTA2NzcyIC8qIG1vdXNlLWJ1dHRvbi1saXN0ZW5lci5odG1sIGluIENvcHkgUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBMTQ1OEZCMUFENUMwMzUwMEUw
Njc3MiAvKiBtb3VzZS1idXR0b24tbGlzdGVuZXIuaHRtbCAqLzsgfTsKLQkJN0EzOEQ3RTYxQzc1
MkQ1RjAwNEYxNTdEIC8qIEhhc2hDb3VudGVkU2V0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBMzhEN0U1MUM3NTJENUYwMDRGMTU3RCAvKiBIYXNo
Q291bnRlZFNldC5jcHAgKi87IH07CiAJCTdBNTYyMzExMUFENUFGM0UwMDk2QjkyMCAvKiBNZW51
VHlwZXNGb3JNb3VzZUV2ZW50cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QTU2MjMxMDFBRDVBRjNFMDA5NkI5MjAgLyogTWVudVR5cGVzRm9yTW91
c2VFdmVudHMuY3BwICovOyB9OwogCQk3QTk5RDk5NDFBRDRBMjlEMDAzNzMxNDEgLyogTWVudVR5
cGVzRm9yTW91c2VFdmVudHMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QTk5RDk5MzFBRDRBMjlEMDAzNzMxNDEgLyogTWVudVR5cGVzRm9yTW91c2VF
dmVudHMubW0gKi87IH07CiAJCTdBQTAyMUJCMUFCMDlFQTcwMDUyOTUzRiAvKiBEYXRlTWF0aC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEwMjFC
QTFBQjA5RUE3MDA1Mjk1M0YgLyogRGF0ZU1hdGguY3BwICovOyB9OwpAQCAtNjExLDcgKzYxMCw2
IEBACiAJCTc2RTE4MkRDMTU0NzU2OTEwMEYxRkFERCAvKiBXaWxsU2VuZFN1Ym1pdEV2ZW50X0J1
bmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXaWxsU2VuZFN1
Ym1pdEV2ZW50X0J1bmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTc2RTE4
MkRFMTU0NzVBODMwMEYxRkFERCAvKiBhdXRvLXN1Ym1pdHRpbmctZm9ybS5odG1sICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dC5odG1sOyBwYXRoID0gImF1dG8tc3VibWl0dGluZy1mb3JtLmh0bWwiOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk3QTE0NThGQjFBRDVDMDM1MDBFMDY3NzIgLyogbW91c2Ut
YnV0dG9uLWxpc3RlbmVyLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAibW91c2Ut
YnV0dG9uLWxpc3RlbmVyLmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3QTM4
RDdFNTFDNzUyRDVGMDA0RjE1N0QgLyogSGFzaENvdW50ZWRTZXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSGFzaENvdW50ZWRTZXQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3QTU2MjMxMDFBRDVBRjNFMDA5NkI5MjAgLyogTWVudVR5cGVzRm9y
TW91c2VFdmVudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVu
dVR5cGVzRm9yTW91c2VFdmVudHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3
QTk5RDk5MzFBRDRBMjlEMDAzNzMxNDEgLyogTWVudVR5cGVzRm9yTW91c2VFdmVudHMubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBNZW51VHlwZXNGb3JNb3VzZUV2
ZW50cy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBMDIxQkExQUIwOUVBNzAw
NTI5NTNGIC8qIERhdGVNYXRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IERhdGVNYXRoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEyMzAsNyAr
MTIyOCw2IEBACiAJCQkJN0FBMDIxQkExQUIwOUVBNzAwNTI5NTNGIC8qIERhdGVNYXRoLmNwcCAq
LywKIAkJCQlFNEE3NTdEMzE3OEFFQTVCMDBCNUQ3QTQgLyogRGVxdWUuY3BwICovLAogCQkJCTFB
QTlFNTU3MTQ5ODBBOTkwMDAwMUE4QSAvKiBGdW5jdGlvbmFsLmNwcCAqLywKLQkJCQk3QTM4RDdF
NTFDNzUyRDVGMDA0RjE1N0QgLyogSGFzaENvdW50ZWRTZXQuY3BwICovLAogCQkJCTBCQ0Q4MzM0
MTQ4NTdDRTQwMEVBMjAwMyAvKiBIYXNoTWFwLmNwcCAqLywKIAkJCQkyNkIyREZGODE1QkRFNTk5
MDA0RjY5MUQgLyogSGFzaFNldC5jcHAgKi8sCiAJCQkJMjY2RkFGRDIxNUU1Nzc1MjAwRjYxRDVC
IC8qIEludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uY3BwICovLApAQCAtMTg2Niw3ICsxODYzLDYg
QEAKIAkJCQk5QjA3ODZBMzFDNTg4MzBGMDBEMTU5RTMgLyogSW5qZWN0ZWRCdW5kbGVNYWtlQWxs
U2hhZG93Um9vdHNPcGVuLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBNEY4MUNDMUJERkZEMzcw
MDRFNjcyRSAvKiBSZW1vdGVPYmplY3RSZWdpc3RyeS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTUx
Q0I0QUQ4MUIzQTA3OUMwMEMxQjFDNiAvKiBNb2RhbEFsZXJ0c1NQSS5jcHAgaW4gU291cmNlcyAq
LywKLQkJCQk3QTM4RDdFNjFDNzUyRDVGMDA0RjE1N0QgLyogSGFzaENvdW50ZWRTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOUI3OTE2NTAxQkQ4OUQwRDAwRDUwQjhGIC8qIEZpcnN0UmVzcG9u
ZGVyU2Nyb2xsaW5nUG9zaXRpb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQkxQ0YwRDM3OTFCQkYy
RjNEMDBCNEVGNTQgLyogV0tSZXRhaW5QdHIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMjZGNkUx
RjAxQURDNzQ5QjAwREU2OTZCIC8qIERGQU1pbmltaXplci5jcHAgaW4gU291cmNlcyAqLywKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL0hhc2hDb3VudGVkU2V0LmNw
cCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL0hhc2hDb3VudGVkU2V0LmNwcApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGMxYWZkMTA1YmYxZjcwMjMwNzNmNjYyYzI2ZmFi
ODVjYjgzODVmMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9IYXNoQ291bnRlZFNldC5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSw0NjggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
Ci0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwot
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotCi0jaW5jbHVkZSAiQ291bnRlcnMuaCIKLSNpbmNsdWRlICJNb3ZlT25seS5oIgotI2luY2x1
ZGUgIlJlZkxvZ2dlci5oIgotI2luY2x1ZGUgPHN0cmluZz4KLSNpbmNsdWRlIDx3dGYvSGFzaENv
dW50ZWRTZXQuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0KLW5hbWVzcGFj
ZSBUZXN0V2ViS2l0QVBJIHsKLSAgICAKLXR5cGVkZWYgV1RGOjpIYXNoQ291bnRlZFNldDxpbnQ+
IEludEhhc2hDb3VudGVkU2V0OwotCi1URVNUKFdURl9IYXNoQ291bnRlZFNldCwgSGFzaFRhYmxl
SXRlcmF0b3JDb21wYXJpc29uKQotewotICAgIEludEhhc2hDb3VudGVkU2V0IGhhc2hDb3VudGVk
U2V0OwotICAgIGhhc2hDb3VudGVkU2V0LmFkZCgxKTsKLSAgICBBU1NFUlRfVFJVRShoYXNoQ291
bnRlZFNldC5iZWdpbigpICE9IGhhc2hDb3VudGVkU2V0LmVuZCgpKTsKLSAgICBBU1NFUlRfRkFM
U0UoaGFzaENvdW50ZWRTZXQuYmVnaW4oKSA9PSBoYXNoQ291bnRlZFNldC5lbmQoKSk7Ci0gICAg
Ci0gICAgSW50SGFzaENvdW50ZWRTZXQ6OmNvbnN0X2l0ZXJhdG9yIGJlZ2luID0gaGFzaENvdW50
ZWRTZXQuYmVnaW4oKTsKLSAgICBBU1NFUlRfVFJVRShiZWdpbiA9PSBoYXNoQ291bnRlZFNldC5i
ZWdpbigpKTsKLSAgICBBU1NFUlRfVFJVRShoYXNoQ291bnRlZFNldC5iZWdpbigpID09IGJlZ2lu
KTsKLSAgICBBU1NFUlRfVFJVRShiZWdpbiAhPSBoYXNoQ291bnRlZFNldC5lbmQoKSk7Ci0gICAg
QVNTRVJUX1RSVUUoaGFzaENvdW50ZWRTZXQuZW5kKCkgIT0gYmVnaW4pOwotICAgIEFTU0VSVF9G
QUxTRShiZWdpbiAhPSBoYXNoQ291bnRlZFNldC5iZWdpbigpKTsKLSAgICBBU1NFUlRfRkFMU0Uo
aGFzaENvdW50ZWRTZXQuYmVnaW4oKSAhPSBiZWdpbik7Ci0gICAgQVNTRVJUX0ZBTFNFKGJlZ2lu
ID09IGhhc2hDb3VudGVkU2V0LmVuZCgpKTsKLSAgICBBU1NFUlRfRkFMU0UoaGFzaENvdW50ZWRT
ZXQuZW5kKCkgPT0gYmVnaW4pOwotfQotCi1zdHJ1Y3QgVGVzdERvdWJsZUhhc2hUcmFpdHMgOiBI
YXNoVHJhaXRzPGRvdWJsZT4gewotICAgIHN0YXRpYyBjb25zdCBpbnQgbWluaW11bVRhYmxlU2l6
ZSA9IDg7Ci19OwotCi10eXBlZGVmIEhhc2hDb3VudGVkU2V0PGRvdWJsZSwgRGVmYXVsdEhhc2g8
ZG91YmxlPjo6SGFzaCwgVGVzdERvdWJsZUhhc2hUcmFpdHM+IERvdWJsZUhhc2hDb3VudGVkU2V0
OwotCi1zdGF0aWMgaW50IGJ1Y2tldEZvcktleShkb3VibGUga2V5KQotewotICAgIHJldHVybiBE
ZWZhdWx0SGFzaDxkb3VibGU+OjpIYXNoOjpoYXNoKGtleSkgJiAoVGVzdERvdWJsZUhhc2hUcmFp
dHM6Om1pbmltdW1UYWJsZVNpemUgLSAxKTsKLX0KLQotVEVTVChXVEZfSGFzaENvdW50ZWRTZXQs
IERvdWJsZUhhc2hDb2xsaXNpb25zKQotewotICAgIC8vIFRoZSAiY2xvYmJlciIga2V5IGhlcmUg
aXMgb25lIHRoYXQgZW5kcyB1cCBzdGVhbGluZyB0aGUgYnVja2V0IHRoYXQgdGhlIC0wIGtleQot
ICAgIC8vIG9yaWdpbmFsbHkgd2FudHMgdG8gYmUgaW4uIFRoaXMgbWFrZXMgdGhlIDAgYW5kIC0w
IGtleXMgY29sbGlkZSBhbmQgdGhlIHRlc3QgdGhlbgotICAgIC8vIGZhaWxzIHVubGVzcyB0aGUg
RmxvYXRIYXNoOjplcXVhbHMoKSBpbXBsZW1lbnRhdGlvbiBjYW4gZGlzdGluZ3Vpc2ggdGhlbS4K
LSAgICBjb25zdCBkb3VibGUgY2xvYmJlcktleSA9IDY7Ci0gICAgY29uc3QgZG91YmxlIHplcm9L
ZXkgPSAwOwotICAgIGNvbnN0IGRvdWJsZSBuZWdhdGl2ZVplcm9LZXkgPSAtemVyb0tleTsKLSAg
ICAKLSAgICBEb3VibGVIYXNoQ291bnRlZFNldCBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBo
YXNoQ291bnRlZFNldC5hZGQoY2xvYmJlcktleSk7Ci0KLSAgICBBU1NFUlRfRVEoaGFzaENvdW50
ZWRTZXQuY291bnQoY2xvYmJlcktleSksIDF1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRT
ZXQuY291bnQoemVyb0tleSksIDB1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291
bnQobmVnYXRpdmVaZXJvS2V5KSwgMHUpOwotCi0gICAgaGFzaENvdW50ZWRTZXQuYWRkKHplcm9L
ZXkpOwotICAgIGhhc2hDb3VudGVkU2V0LmFkZChuZWdhdGl2ZVplcm9LZXkpOwotICAgIAotICAg
IEFTU0VSVF9FUShidWNrZXRGb3JLZXkoY2xvYmJlcktleSksIGJ1Y2tldEZvcktleShuZWdhdGl2
ZVplcm9LZXkpKTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQoY2xvYmJlcktl
eSksIDF1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQoemVyb0tleSksIDF1
KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQobmVnYXRpdmVaZXJvS2V5KSwg
MXUpOwotCi0gICAgaGFzaENvdW50ZWRTZXQuYWRkKGNsb2JiZXJLZXkpOwotICAgIGhhc2hDb3Vu
dGVkU2V0LmFkZCh6ZXJvS2V5KTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQobmVnYXRpdmVaZXJv
S2V5KTsKLSAgICAKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQoY2xvYmJlcktl
eSksIDJ1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQoemVyb0tleSksIDJ1
KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291bnQobmVnYXRpdmVaZXJvS2V5KSwg
MnUpOwotCi0gICAgaGFzaENvdW50ZWRTZXQuYWRkKGNsb2JiZXJLZXksIDEyKTsKLSAgICBoYXNo
Q291bnRlZFNldC5hZGQoemVyb0tleSwgMTUpOwotICAgIGhhc2hDb3VudGVkU2V0LmFkZChuZWdh
dGl2ZVplcm9LZXksIDE3KTsKLSAgICAKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQuY291
bnQoY2xvYmJlcktleSksIDE0dSk7Ci0gICAgQVNTRVJUX0VRKGhhc2hDb3VudGVkU2V0LmNvdW50
KHplcm9LZXkpLCAxN3UpOwotICAgIEFTU0VSVF9FUShoYXNoQ291bnRlZFNldC5jb3VudChuZWdh
dGl2ZVplcm9LZXkpLCAxOXUpOwotfQotCi1URVNUKFdURl9IYXNoQ291bnRlZFNldCwgRG91Ymxl
SGFzaENvbGxpc2lvbnNJbml0aWFsQ291bnQpCi17Ci0gICAgLy8gVGhlICJjbG9iYmVyIiBrZXkg
aGVyZSBpcyBvbmUgdGhhdCBlbmRzIHVwIHN0ZWFsaW5nIHRoZSBidWNrZXQgdGhhdCB0aGUgLTAg
a2V5Ci0gICAgLy8gb3JpZ2luYWxseSB3YW50cyB0byBiZSBpbi4gVGhpcyBtYWtlcyB0aGUgMCBh
bmQgLTAga2V5cyBjb2xsaWRlIGFuZCB0aGUgdGVzdCB0aGVuCi0gICAgLy8gZmFpbHMgdW5sZXNz
IHRoZSBGbG9hdEhhc2g6OmVxdWFscygpIGltcGxlbWVudGF0aW9uIGNhbiBkaXN0aW5ndWlzaCB0
aGVtLgotICAgIGNvbnN0IGRvdWJsZSBjbG9iYmVyS2V5ID0gNjsKLSAgICBjb25zdCBkb3VibGUg
emVyb0tleSA9IDA7Ci0gICAgY29uc3QgZG91YmxlIG5lZ2F0aXZlWmVyb0tleSA9IC16ZXJvS2V5
OwotICAgIAotICAgIERvdWJsZUhhc2hDb3VudGVkU2V0IGhhc2hDb3VudGVkU2V0OwotICAgIAot
ICAgIGhhc2hDb3VudGVkU2V0LmFkZChjbG9iYmVyS2V5LCA1KTsKLSAgICAKLSAgICBBU1NFUlRf
RVEoaGFzaENvdW50ZWRTZXQuY291bnQoY2xvYmJlcktleSksIDV1KTsKLSAgICBBU1NFUlRfRVEo
aGFzaENvdW50ZWRTZXQuY291bnQoemVyb0tleSksIDB1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENv
dW50ZWRTZXQuY291bnQobmVnYXRpdmVaZXJvS2V5KSwgMHUpOwotICAgIAotICAgIGhhc2hDb3Vu
dGVkU2V0LmFkZCh6ZXJvS2V5LCAyMik7Ci0gICAgaGFzaENvdW50ZWRTZXQuYWRkKG5lZ2F0aXZl
WmVyb0tleSwgMCk7Ci0gICAgCi0gICAgQVNTRVJUX0VRKGJ1Y2tldEZvcktleShjbG9iYmVyS2V5
KSwgYnVja2V0Rm9yS2V5KG5lZ2F0aXZlWmVyb0tleSkpOwotICAgIEFTU0VSVF9FUShoYXNoQ291
bnRlZFNldC5jb3VudChjbG9iYmVyS2V5KSwgNXUpOwotICAgIEFTU0VSVF9FUShoYXNoQ291bnRl
ZFNldC5jb3VudCh6ZXJvS2V5KSwgMjJ1KTsKLSAgICBBU1NFUlRfRVEoaGFzaENvdW50ZWRTZXQu
Y291bnQobmVnYXRpdmVaZXJvS2V5KSwgMHUpOwotICAgIAotICAgIGhhc2hDb3VudGVkU2V0LmFk
ZChjbG9iYmVyS2V5KTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQoemVyb0tleSk7Ci0gICAgaGFz
aENvdW50ZWRTZXQuYWRkKG5lZ2F0aXZlWmVyb0tleSk7Ci0gICAgCi0gICAgQVNTRVJUX0VRKGhh
c2hDb3VudGVkU2V0LmNvdW50KGNsb2JiZXJLZXkpLCA2dSk7Ci0gICAgQVNTRVJUX0VRKGhhc2hD
b3VudGVkU2V0LmNvdW50KHplcm9LZXkpLCAyM3UpOwotICAgIEFTU0VSVF9FUShoYXNoQ291bnRl
ZFNldC5jb3VudChuZWdhdGl2ZVplcm9LZXkpLCAxdSk7Ci19Ci0KLQotVEVTVChXVEZfSGFzaENv
dW50ZWRTZXQsIE1vdmVPbmx5S2V5cykKLXsKLSAgICBIYXNoQ291bnRlZFNldDxNb3ZlT25seT4g
bW92ZU9ubHlLZXlzOwotICAgIAotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgMTAwOyArK2kp
IHsKLSAgICAgICAgTW92ZU9ubHkgbW92ZU9ubHkoaSArIDEpOwotICAgICAgICBtb3ZlT25seUtl
eXMuYWRkKFdURk1vdmUobW92ZU9ubHkpKTsKLSAgICB9Ci0gICAgCi0gICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCAxMDA7ICsraSkgewotICAgICAgICBhdXRvIGl0ID0gbW92ZU9ubHlLZXlzLmZp
bmQoTW92ZU9ubHkoaSArIDEpKTsKLSAgICAgICAgQVNTRVJUX0ZBTFNFKGl0ID09IG1vdmVPbmx5
S2V5cy5lbmQoKSk7Ci0gICAgICAgIEFTU0VSVF9FUShpdC0+dmFsdWUsIDF1KTsKLSAgICB9Ci0g
ICAgCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCAxMDA7ICsraSkKLSAgICAgICAgQVNTRVJU
X0ZBTFNFKG1vdmVPbmx5S2V5cy5hZGQoTW92ZU9ubHkoaSArIDEpKS5pc05ld0VudHJ5KTsKLSAg
ICAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IDEwMDsgKytpKQotICAgICAgICBBU1NFUlRf
RkFMU0UobW92ZU9ubHlLZXlzLnJlbW92ZShNb3ZlT25seShpICsgMSkpKTsKLQotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgMTAwOyArK2kpCi0gICAgICAgIEFTU0VSVF9UUlVFKG1vdmVPbmx5
S2V5cy5yZW1vdmUoTW92ZU9ubHkoaSArIDEpKSk7Ci0KLSAgICBBU1NFUlRfVFJVRShtb3ZlT25s
eUtleXMuaXNFbXB0eSgpKTsKLX0KLQotVEVTVChXVEZfSGFzaENvdW50ZWRTZXQsIE1vdmVPbmx5
S2V5c0luaXRpYWxDb3VudCkKLXsKLSAgICBIYXNoQ291bnRlZFNldDxNb3ZlT25seT4gbW92ZU9u
bHlLZXlzOwotICAgIAotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgMTAwOyArK2kpIHsKLSAg
ICAgICAgTW92ZU9ubHkgbW92ZU9ubHkoaSArIDEpOwotICAgICAgICBtb3ZlT25seUtleXMuYWRk
KFdURk1vdmUobW92ZU9ubHkpLCBpICsgMSk7Ci0gICAgfQotICAgIAotICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgMTAwOyArK2kpIHsKLSAgICAgICAgYXV0byBpdCA9IG1vdmVPbmx5S2V5cy5m
aW5kKE1vdmVPbmx5KGkgKyAxKSk7Ci0gICAgICAgIEFTU0VSVF9GQUxTRShpdCA9PSBtb3ZlT25s
eUtleXMuZW5kKCkpOwotICAgICAgICBBU1NFUlRfRVEoaXQtPnZhbHVlLCBpICsgMSk7Ci0gICAg
fQotICAgIAotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgMTAwOyArK2kpCi0gICAgICAgIEFT
U0VSVF9GQUxTRShtb3ZlT25seUtleXMuYWRkKE1vdmVPbmx5KGkgKyAxKSkuaXNOZXdFbnRyeSk7
Ci0gICAgCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCAxMDA7ICsraSkKLSAgICAgICAgQVNT
RVJUX0VRKG1vdmVPbmx5S2V5cy5jb3VudChNb3ZlT25seShpICsgMSkpLCBpICsgMik7Ci0gICAg
Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCAxMDA7ICsraSkKLSAgICAgICAgQVNTRVJUX0ZB
TFNFKG1vdmVPbmx5S2V5cy5yZW1vdmUoTW92ZU9ubHkoaSArIDEpKSk7Ci0KLSAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IDEwMDsgKytpKQotICAgICAgICBBU1NFUlRfRVEobW92ZU9ubHlLZXlz
LmNvdW50KE1vdmVPbmx5KGkgKyAxKSksIGkgKyAxKTsKLX0KLQotVEVTVChXVEZfSGFzaENvdW50
ZWRTZXQsIEluaXRpYWxpemVyTGlzdCkKLXsKLSAgICBIYXNoQ291bnRlZFNldDxTdHJpbmc+IGhh
c2hDb3VudGVkU2V0ID0gewotICAgICAgICAib25lIiwKLSAgICAgICAgInR3byIsCi0gICAgICAg
ICJ0aHJlZSIsCi0gICAgICAgICJmb3VyIiwKLSAgICAgICAgImZvdXIiLAotICAgICAgICAiZm91
ciIsCi0gICAgICAgICJmb3VyIiwKLSAgICB9OwotICAgIAotICAgIEVYUEVDVF9FUSg0dSwgaGFz
aENvdW50ZWRTZXQuc2l6ZSgpKTsKLSAgICAKLSAgICBFWFBFQ1RfRVEoaGFzaENvdW50ZWRTZXQu
Y291bnQoIm9uZSIpLCAxdSk7Ci0gICAgRVhQRUNUX0VRKGhhc2hDb3VudGVkU2V0LmNvdW50KCJ0
d28iKSwgMXUpOwotICAgIEVYUEVDVF9FUShoYXNoQ291bnRlZFNldC5jb3VudCgidGhyZWUiKSwg
MXUpOwotICAgIEVYUEVDVF9FUShoYXNoQ291bnRlZFNldC5jb3VudCgiZm91ciIpLCA0dSk7Ci19
Ci0KLVRFU1QoV1RGX0hhc2hDb3VudGVkU2V0LCBJbml0aWFsaXplckxpc3RJbml0aWFsQ291bnQp
Ci17Ci0gICAgSGFzaENvdW50ZWRTZXQ8U3RyaW5nPiBoYXNoQ291bnRlZFNldCA9IHsKLSAgICAg
ICAgeyBTdHJpbmcoIm9uZSIpLCAxdSB9LAotICAgICAgICB7IFN0cmluZygidHdvIiksIDJ1IH0s
Ci0gICAgICAgIHsgU3RyaW5nKCJ0aHJlZSIpLCAzdSB9LAotICAgICAgICB7IFN0cmluZygiZm91
ciIpLCA0dSB9LAotICAgIH07Ci0gICAgCi0gICAgRVhQRUNUX0VRKDR1LCBoYXNoQ291bnRlZFNl
dC5zaXplKCkpOwotICAgIAotICAgIEVYUEVDVF9FUShoYXNoQ291bnRlZFNldC5jb3VudCgib25l
IiksIDF1KTsKLSAgICBFWFBFQ1RfRVEoaGFzaENvdW50ZWRTZXQuY291bnQoInR3byIpLCAydSk7
Ci0gICAgRVhQRUNUX0VRKGhhc2hDb3VudGVkU2V0LmNvdW50KCJ0aHJlZSIpLCAzdSk7Ci0gICAg
RVhQRUNUX0VRKGhhc2hDb3VudGVkU2V0LmNvdW50KCJmb3VyIiksIDR1KTsKLX0KLQotVEVTVChX
VEZfSGFzaENvdW50ZWRTZXQsIFVuaXF1ZVB0cktleSkKLXsKLSAgICBDb25zdHJ1Y3RvckRlc3Ry
dWN0b3JDb3VudGVyOjpUZXN0aW5nU2NvcGUgc2NvcGU7Ci0gICAgCi0gICAgSGFzaENvdW50ZWRT
ZXQ8c3RkOjp1bmlxdWVfcHRyPENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI+PiBoYXNoQ291
bnRlZFNldDsKLSAgICAKLSAgICBhdXRvIHVuaXF1ZVB0ciA9IHN0ZDo6bWFrZV91bmlxdWU8Q29u
c3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj4oKTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQoV1RG
TW92ZSh1bmlxdWVQdHIpKTsKLSAgICAKLSAgICBFWFBFQ1RfRVEoMXUsIENvbnN0cnVjdG9yRGVz
dHJ1Y3RvckNvdW50ZXI6OmNvbnN0cnVjdGlvbkNvdW50KTsKLSAgICBFWFBFQ1RfRVEoMHUsIENv
bnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI6OmRlc3RydWN0aW9uQ291bnQpOwotICAgIAotICAg
IGhhc2hDb3VudGVkU2V0LmNsZWFyKCk7Ci0gICAgCi0gICAgRVhQRUNUX0VRKDF1LCBDb25zdHJ1
Y3RvckRlc3RydWN0b3JDb3VudGVyOjpjb25zdHJ1Y3Rpb25Db3VudCk7Ci0gICAgRVhQRUNUX0VR
KDF1LCBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyOjpkZXN0cnVjdGlvbkNvdW50KTsKLX0K
LQotVEVTVChXVEZfSGFzaENvdW50ZWRTZXQsIFVuaXF1ZVB0cktleUluaXRpYWxDb3VudCkKLXsK
LSAgICBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyOjpUZXN0aW5nU2NvcGUgc2NvcGU7Ci0g
ICAgCi0gICAgSGFzaENvdW50ZWRTZXQ8c3RkOjp1bmlxdWVfcHRyPENvbnN0cnVjdG9yRGVzdHJ1
Y3RvckNvdW50ZXI+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBhdXRvIHVuaXF1ZVB0ciA9
IHN0ZDo6bWFrZV91bmlxdWU8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj4oKTsKLSAgICBo
YXNoQ291bnRlZFNldC5hZGQoV1RGTW92ZSh1bmlxdWVQdHIpLCAxMik7Ci0gICAgCi0gICAgRVhQ
RUNUX0VRKDF1LCBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyOjpjb25zdHJ1Y3Rpb25Db3Vu
dCk7Ci0gICAgRVhQRUNUX0VRKDB1LCBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyOjpkZXN0
cnVjdGlvbkNvdW50KTsKLSAgICAKLSAgICBoYXNoQ291bnRlZFNldC5jbGVhcigpOwotICAgIAot
ICAgIEVYUEVDVF9FUSgxdSwgQ29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcjo6Y29uc3RydWN0
aW9uQ291bnQpOwotICAgIEVYUEVDVF9FUSgxdSwgQ29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRl
cjo6ZGVzdHJ1Y3Rpb25Db3VudCk7Ci19Ci0KLVRFU1QoV1RGX0hhc2hDb3VudGVkU2V0LCBVbmlx
dWVQdHJLZXlfQ3VzdG9tRGVsZXRlcikKLXsKLSAgICBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3Vu
dGVyOjpUZXN0aW5nU2NvcGUgY29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlclNjb3BlOwotICAg
IERlbGV0ZXJDb3VudGVyPENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI+OjpUZXN0aW5nU2Nv
cGUgZGVsZXRlckNvdW50ZXJTY29wZTsKLSAgICAKLSAgICBIYXNoQ291bnRlZFNldDxzdGQ6OnVu
aXF1ZV9wdHI8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlciwgRGVsZXRlckNvdW50ZXI8Q29u
c3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj4+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBz
dGQ6OnVuaXF1ZV9wdHI8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlciwgRGVsZXRlckNvdW50
ZXI8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj4+IHVuaXF1ZVB0cihuZXcgQ29uc3RydWN0
b3JEZXN0cnVjdG9yQ291bnRlcigpLCBEZWxldGVyQ291bnRlcjxDb25zdHJ1Y3RvckRlc3RydWN0
b3JDb3VudGVyPigpKTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQoV1RGTW92ZSh1bmlxdWVQdHIp
KTsKLSAgICAKLSAgICBFWFBFQ1RfRVEoMXUsIENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI6
OmNvbnN0cnVjdGlvbkNvdW50KTsKLSAgICBFWFBFQ1RfRVEoMHUsIENvbnN0cnVjdG9yRGVzdHJ1
Y3RvckNvdW50ZXI6OmRlc3RydWN0aW9uQ291bnQpOwotICAgIAotICAgIEVYUEVDVF9FUSgwdSwg
RGVsZXRlckNvdW50ZXI8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj46OmRlbGV0ZXJDb3Vu
dCk7Ci0gICAgCi0gICAgaGFzaENvdW50ZWRTZXQuY2xlYXIoKTsKLSAgICAKLSAgICBFWFBFQ1Rf
RVEoMXUsIENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI6OmNvbnN0cnVjdGlvbkNvdW50KTsK
LSAgICBFWFBFQ1RfRVEoMXUsIENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI6OmRlc3RydWN0
aW9uQ291bnQpOwotICAgIAotICAgIEVYUEVDVF9FUSgxdSwgRGVsZXRlckNvdW50ZXI8Q29uc3Ry
dWN0b3JEZXN0cnVjdG9yQ291bnRlcj46OmRlbGV0ZXJDb3VudCk7Ci19Ci0KLVRFU1QoV1RGX0hh
c2hDb3VudGVkU2V0LCBVbmlxdWVQdHJLZXlfRmluZFVzaW5nUmF3UG9pbnRlcikKLXsKLSAgICBI
YXNoQ291bnRlZFNldDxzdGQ6OnVuaXF1ZV9wdHI8aW50Pj4gaGFzaENvdW50ZWRTZXQ7Ci0gICAg
Ci0gICAgYXV0byB1bmlxdWVQdHIgPSBzdGQ6Om1ha2VfdW5pcXVlPGludD4oNSk7Ci0gICAgaW50
KiBwdHIgPSB1bmlxdWVQdHIuZ2V0KCk7Ci0gICAgaGFzaENvdW50ZWRTZXQuYWRkKFdURk1vdmUo
dW5pcXVlUHRyKSk7Ci0gICAgCi0gICAgYXV0byBpdCA9IGhhc2hDb3VudGVkU2V0LmZpbmQocHRy
KTsKLSAgICBBU1NFUlRfVFJVRShpdCAhPSBoYXNoQ291bnRlZFNldC5lbmQoKSk7Ci0gICAgRVhQ
RUNUX0VRKHB0ciwgaXQtPmtleS5nZXQoKSk7Ci0gICAgRVhQRUNUX0VRKDF1LCBpdC0+dmFsdWUp
OwotfQotCi1URVNUKFdURl9IYXNoQ291bnRlZFNldCwgVW5pcXVlUHRyS2V5X0NvbnRhaW5zVXNp
bmdSYXdQb2ludGVyKQotewotICAgIEhhc2hDb3VudGVkU2V0PHN0ZDo6dW5pcXVlX3B0cjxpbnQ+
PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBhdXRvIHVuaXF1ZVB0ciA9IHN0ZDo6bWFrZV91
bmlxdWU8aW50Pig1KTsKLSAgICBpbnQqIHB0ciA9IHVuaXF1ZVB0ci5nZXQoKTsKLSAgICBoYXNo
Q291bnRlZFNldC5hZGQoV1RGTW92ZSh1bmlxdWVQdHIpKTsKLSAgICAKLSAgICBFWFBFQ1RfRVEo
dHJ1ZSwgaGFzaENvdW50ZWRTZXQuY29udGFpbnMocHRyKSk7Ci19Ci0KLVRFU1QoV1RGX0hhc2hD
b3VudGVkU2V0LCBVbmlxdWVQdHJLZXlfR2V0VXNpbmdSYXdQb2ludGVyKQotewotICAgIEhhc2hD
b3VudGVkU2V0PHN0ZDo6dW5pcXVlX3B0cjxpbnQ+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAg
ICBhdXRvIHVuaXF1ZVB0ciA9IHN0ZDo6bWFrZV91bmlxdWU8aW50Pig1KTsKLSAgICBpbnQqIHB0
ciA9IHVuaXF1ZVB0ci5nZXQoKTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQoV1RGTW92ZSh1bmlx
dWVQdHIpKTsKLSAgICAKLSAgICBpbnQgdmFsdWUgPSBoYXNoQ291bnRlZFNldC5jb3VudChwdHIp
OwotICAgIEVYUEVDVF9FUSgxLCB2YWx1ZSk7Ci19Ci0KLVRFU1QoV1RGX0hhc2hDb3VudGVkU2V0
LCBVbmlxdWVQdHJLZXlfUmVtb3ZlVXNpbmdSYXdQb2ludGVyKQotewotICAgIENvbnN0cnVjdG9y
RGVzdHJ1Y3RvckNvdW50ZXI6OlRlc3RpbmdTY29wZSBzY29wZTsKLSAgICAKLSAgICBIYXNoQ291
bnRlZFNldDxzdGQ6OnVuaXF1ZV9wdHI8Q29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRlcj4+IGhh
c2hDb3VudGVkU2V0OwotICAgIAotICAgIGF1dG8gdW5pcXVlUHRyID0gc3RkOjptYWtlX3VuaXF1
ZTxDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyPigpOwotICAgIENvbnN0cnVjdG9yRGVzdHJ1
Y3RvckNvdW50ZXIqIHB0ciA9IHVuaXF1ZVB0ci5nZXQoKTsKLSAgICBoYXNoQ291bnRlZFNldC5h
ZGQoV1RGTW92ZSh1bmlxdWVQdHIpKTsKLSAgICAKLSAgICBFWFBFQ1RfRVEoMXUsIENvbnN0cnVj
dG9yRGVzdHJ1Y3RvckNvdW50ZXI6OmNvbnN0cnVjdGlvbkNvdW50KTsKLSAgICBFWFBFQ1RfRVEo
MHUsIENvbnN0cnVjdG9yRGVzdHJ1Y3RvckNvdW50ZXI6OmRlc3RydWN0aW9uQ291bnQpOwotICAg
IAotICAgIGJvb2wgcmVzdWx0ID0gaGFzaENvdW50ZWRTZXQucmVtb3ZlKHB0cik7Ci0gICAgRVhQ
RUNUX0VRKHRydWUsIHJlc3VsdCk7Ci0gICAgCi0gICAgRVhQRUNUX0VRKDF1LCBDb25zdHJ1Y3Rv
ckRlc3RydWN0b3JDb3VudGVyOjpjb25zdHJ1Y3Rpb25Db3VudCk7Ci0gICAgRVhQRUNUX0VRKDF1
LCBDb25zdHJ1Y3RvckRlc3RydWN0b3JDb3VudGVyOjpkZXN0cnVjdGlvbkNvdW50KTsKLX0KLQot
VEVTVChXVEZfSGFzaENvdW50ZWRTZXQsIFJlZlB0cktleV9BZGQpCi17Ci0gICAgSGFzaENvdW50
ZWRTZXQ8UmVmUHRyPFJlZkxvZ2dlcj4+IGhhc2hDb3VudGVkU2V0OwotICAgIAotICAgIERlcml2
ZWRSZWZMb2dnZXIgYSgiYSIpOwotICAgIFJlZlB0cjxSZWZMb2dnZXI+IHB0cigmYSk7Ci0gICAg
aGFzaENvdW50ZWRTZXQuYWRkKHB0cik7Ci0gICAgCi0gICAgQVNTRVJUX1NUUkVRKCJyZWYoYSkg
cmVmKGEpICIsIHRha2VMb2dTdHIoKS5jX3N0cigpKTsKLSAgICBFWFBFQ1RfRVEoMVUsIGhhc2hD
b3VudGVkU2V0LmNvdW50KHB0cikpOwotICAgIEVYUEVDVF9FUSgxVSwgaGFzaENvdW50ZWRTZXQu
Y291bnQocHRyLmdldCgpKSk7Ci19Ci0KLVRFU1QoV1RGX0hhc2hDb3VudGVkU2V0LCBSZWZQdHJL
ZXlfQWRkVXNpbmdSZWxlYXNlKQotewotICAgIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxSZWZMb2dn
ZXI+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBEZXJpdmVkUmVmTG9nZ2VyIGEoImEiKTsK
LSAgICBSZWZQdHI8UmVmTG9nZ2VyPiBwdHIoJmEpOwotICAgIGhhc2hDb3VudGVkU2V0LmFkZChw
dHIucmVsZWFzZSgpKTsKLSAgICAKLSAgICBFWFBFQ1RfU1RSRVEoInJlZihhKSAiLCB0YWtlTG9n
U3RyKCkuY19zdHIoKSk7Ci19Ci0KLVRFU1QoV1RGX0hhc2hDb3VudGVkU2V0LCBSZWZQdHJLZXlf
QWRkVXNpbmdNb3ZlKQotewotICAgIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxSZWZMb2dnZXI+PiBo
YXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBEZXJpdmVkUmVmTG9nZ2VyIGEoImEiKTsKLSAgICBS
ZWZQdHI8UmVmTG9nZ2VyPiBwdHIoJmEpOwotICAgIGhhc2hDb3VudGVkU2V0LmFkZChXVEZNb3Zl
KHB0cikpOwotICAgIAotICAgIEVYUEVDVF9TVFJFUSgicmVmKGEpICIsIHRha2VMb2dTdHIoKS5j
X3N0cigpKTsKLX0KLQotVEVTVChXVEZfSGFzaENvdW50ZWRTZXQsIFJlZlB0cktleV9BZGRVc2lu
Z1JhdykKLXsKLSAgICBIYXNoQ291bnRlZFNldDxSZWZQdHI8UmVmTG9nZ2VyPj4gaGFzaENvdW50
ZWRTZXQ7Ci0gICAgCi0gICAgRGVyaXZlZFJlZkxvZ2dlciBhKCJhIik7Ci0gICAgUmVmUHRyPFJl
ZkxvZ2dlcj4gcHRyKCZhKTsKLSAgICBoYXNoQ291bnRlZFNldC5hZGQocHRyLmdldCgpKTsKLSAg
ICAKLSAgICBFWFBFQ1RfU1RSRVEoInJlZihhKSByZWYoYSkgIiwgdGFrZUxvZ1N0cigpLmNfc3Ry
KCkpOwotICAgIEVYUEVDVF9FUSgxVSwgaGFzaENvdW50ZWRTZXQuY291bnQocHRyKSk7Ci0gICAg
RVhQRUNUX0VRKDFVLCBoYXNoQ291bnRlZFNldC5jb3VudChwdHIuZ2V0KCkpKTsKLX0KLQotVEVT
VChXVEZfSGFzaENvdW50ZWRTZXQsIFJlZlB0cktleV9BZGRLZXlBbHJlYWR5UHJlc2VudCkKLXsK
LSAgICBIYXNoQ291bnRlZFNldDxSZWZQdHI8UmVmTG9nZ2VyPj4gaGFzaENvdW50ZWRTZXQ7Ci0g
ICAgCi0gICAgRGVyaXZlZFJlZkxvZ2dlciBhKCJhIik7Ci0gICAgCi0gICAgewotICAgICAgICBS
ZWZQdHI8UmVmTG9nZ2VyPiBwdHIoJmEpOwotICAgICAgICBoYXNoQ291bnRlZFNldC5hZGQocHRy
KTsKLSAgICB9Ci0gICAgCi0gICAgRVhQRUNUX1NUUkVRKCJyZWYoYSkgcmVmKGEpIGRlcmVmKGEp
ICIsIHRha2VMb2dTdHIoKS5jX3N0cigpKTsKLSAgICAKLSAgICB7Ci0gICAgICAgIFJlZlB0cjxS
ZWZMb2dnZXI+IHB0cjIoJmEpOwotICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IGhhc2hDb3VudGVk
U2V0LmFkZChwdHIyKTsKLSAgICAgICAgRVhQRUNUX0ZBTFNFKGFkZFJlc3VsdC5pc05ld0VudHJ5
KTsKLSAgICB9Ci0gICAgCi0gICAgRVhQRUNUX1NUUkVRKCJyZWYoYSkgZGVyZWYoYSkgIiwgdGFr
ZUxvZ1N0cigpLmNfc3RyKCkpOwotfQotCi1URVNUKFdURl9IYXNoQ291bnRlZFNldCwgUmVmUHRy
S2V5X0FkZFVzaW5nUmVsZWFzZUtleUFscmVhZHlQcmVzZW50KQotewotICAgIEhhc2hDb3VudGVk
U2V0PFJlZlB0cjxSZWZMb2dnZXI+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBEZXJpdmVk
UmVmTG9nZ2VyIGEoImEiKTsKLSAgICAKLSAgICB7Ci0gICAgICAgIFJlZlB0cjxSZWZMb2dnZXI+
IHB0cigmYSk7Ci0gICAgICAgIGhhc2hDb3VudGVkU2V0LmFkZChwdHIpOwotICAgIH0KLSAgICAK
LSAgICBFWFBFQ1RfU1RSRVEoInJlZihhKSByZWYoYSkgZGVyZWYoYSkgIiwgdGFrZUxvZ1N0cigp
LmNfc3RyKCkpOwotICAgIAotICAgIHsKLSAgICAgICAgUmVmUHRyPFJlZkxvZ2dlcj4gcHRyMigm
YSk7Ci0gICAgICAgIGF1dG8gYWRkUmVzdWx0ID0gaGFzaENvdW50ZWRTZXQuYWRkKHB0cjIucmVs
ZWFzZSgpKTsKLSAgICAgICAgRVhQRUNUX0ZBTFNFKGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKLSAg
ICB9Ci0gICAgCi0gICAgRVhQRUNUX1NUUkVRKCJyZWYoYSkgZGVyZWYoYSkgIiwgdGFrZUxvZ1N0
cigpLmNfc3RyKCkpOwotfQotCi1URVNUKFdURl9IYXNoQ291bnRlZFNldCwgUmVmUHRyS2V5X0Fk
ZFVzaW5nTW92ZUtleUFscmVhZHlQcmVzZW50KQotewotICAgIEhhc2hDb3VudGVkU2V0PFJlZlB0
cjxSZWZMb2dnZXI+PiBoYXNoQ291bnRlZFNldDsKLSAgICAKLSAgICBEZXJpdmVkUmVmTG9nZ2Vy
IGEoImEiKTsKLSAgICAKLSAgICB7Ci0gICAgICAgIFJlZlB0cjxSZWZMb2dnZXI+IHB0cigmYSk7
Ci0gICAgICAgIGhhc2hDb3VudGVkU2V0LmFkZChwdHIpOwotICAgIH0KLSAgICAKLSAgICBFWFBF
Q1RfU1RSRVEoInJlZihhKSByZWYoYSkgZGVyZWYoYSkgIiwgdGFrZUxvZ1N0cigpLmNfc3RyKCkp
OwotICAgIAotICAgIHsKLSAgICAgICAgUmVmUHRyPFJlZkxvZ2dlcj4gcHRyMigmYSk7Ci0gICAg
ICAgIGF1dG8gYWRkUmVzdWx0ID0gaGFzaENvdW50ZWRTZXQuYWRkKFdURk1vdmUocHRyMikpOwot
ICAgICAgICBFWFBFQ1RfRkFMU0UoYWRkUmVzdWx0LmlzTmV3RW50cnkpOwotICAgIH0KLSAgICAK
LSAgICBFWFBFQ1RfU1RSRVEoInJlZihhKSBkZXJlZihhKSAiLCB0YWtlTG9nU3RyKCkuY19zdHIo
KSk7Ci19Ci0gICAgCi19IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>