<?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>104126</bug_id>
          
          <creation_ts>2012-12-05 08:08:30 -0800</creation_ts>
          <short_desc>Stop generating call stacks inside ContentSecurityPolicy</short_desc>
          <delta_ts>2012-12-05 11:19:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike West">mkwst</reporter>
          <assigned_to name="Mike West">mkwst</assigned_to>
          <cc>abarth</cc>
    
    <cc>ojan</cc>
    
    <cc>pfeldman</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>783759</commentid>
    <comment_count>0</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-05 08:08:30 -0800</bug_when>
    <thetext>Now that bug 100650 landed, we can stop generating calls stacks inside ContentSecurityPolicy::logToConsole.

This will require piping the ScriptState down into Inspector, but also means that we can slightly simplify the external addConsoleMessage interface.

I&apos;ll do my best to make this patch simpler to review than that one was. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783782</commentid>
    <comment_count>1</comment_count>
      <attachid>177759</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-05 08:31:40 -0800</bug_when>
    <thetext>Created attachment 177759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783911</commentid>
    <comment_count>2</comment_count>
      <attachid>177759</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-05 11:01:27 -0800</bug_when>
    <thetext>Comment on attachment 177759
Patch

Thanks Yury. Sorry if I&apos;m burying you in patches these days. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783925</commentid>
    <comment_count>3</comment_count>
      <attachid>177759</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-05 11:19:08 -0800</bug_when>
    <thetext>Comment on attachment 177759
Patch

Clearing flags on attachment: 177759

Committed r136719: &lt;http://trac.webkit.org/changeset/136719&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783926</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-05 11:19:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177759</attachid>
            <date>2012-12-05 08:31:40 -0800</date>
            <delta_ts>2012-12-05 11:19:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104126-20121205172904.patch</filename>
            <type>text/plain</type>
            <size>33908</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2NjczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZiZTY4YTI4OWNmNGE3
ZTU5NjE4NGJlZGNhZjZmYTczODZlODYyMC4uNGQ3YjFlNDkyNWY4MTViODcxMTlkOTA3Y2NkNTdl
NjE5NjM2M2JhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcyIEBACisyMDEyLTEyLTA1ICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3RvcCBnZW5lcmF0aW5nIGNh
bGwgc3RhY2tzIGluc2lkZSBDb250ZW50U2VjdXJpdHlQb2xpY3kKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDEyNgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vdyB0aGF0IGJ1ZyAxMDA2NTAgaGFzIG1h
ZGUgaXQgcG9zc2libGUgZm9yIENvbnNvbGVNZXNzYWdlIHRvIGdlbmVyYXRlCisgICAgICAgIGNh
bGwgc3RhY2tzLCB3ZSBjYW4gcmVtb3ZlIHRoZSBzdGFjayBiZWluZyBnZW5lcmF0ZWQgaW4KKyAg
ICAgICAgQ29udGVudFNlY3VyaXR5UG9saWN5Ojpsb2dUb0NvbnNvbGUuIFdlIG5lZWQgdGhlIFNj
cmlwdFN0YXRlKiwgaG93ZXZlciwKKyAgICAgICAgc28gdGhpcyBwYXRjaCBtYWtlcyBpdCBwb3Nz
aWJsZSB0byBwaXBlIGl0IHRocm91Z2ggYWRkQ29uc29sZU1lc3NhZ2UKKyAgICAgICAgZG93biBp
bnRvIHRoZSBndXRzIG9mIHRoZSBpbnNwZWN0b3IuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNv
IHJlbW92ZXMgYW4gdW51c2VkIGFkZENvbnNvbGVNZXNzYWdlIHZhcmlhbnQgZnJvbQorICAgICAg
ICBTY3JpcHRFeGVjdXRpb25Db250ZXh0LCB3aGljaCBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQg
ZnJvbSB0aGUgcGF0Y2ggdG8KKyAgICAgICAgMTAwNjUwIGJlZm9yZSBsYW5kaW5nIGl0LiBNeSBi
YWQuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OmFkZE1lc3NhZ2UpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAgICAo
RG9jdW1lbnQpOgorICAgICAgICAgICAgQWNjZXB0IGEgU2NyaXB0U3RhdGUqIHBhcmFtZXRlciBp
biBEb2N1bWVudDo6YWRkTWVzc2FnZSwgYW5kIHBhc3MgaXQKKyAgICAgICAgICAgIHRocm91Z2gg
dG8gQ29uc29sZTo6YWRkTWVzc2FnZS4KKyAgICAgICAgKiBkb20vU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0OjphZGRD
b25zb2xlTWVzc2FnZSk6CisgICAgICAgICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoK
KyAgICAgICAgKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpOgorICAgICAgICAgICAgQWNjZXB0IGEg
U2NyaXB0U3RhdGUqIHBhcmFtZXRlciBpbiBEb2N1bWVudDo6YWRkTWVzc2FnZSwgYW5kIHBhc3Mg
aXQKKyAgICAgICAgICAgIHRocm91Z2ggdG8gU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6YWRkTWVz
c2FnZS4gQWxzbywgcmVtb3ZlIGFuIHVudXNlZAorICAgICAgICAgICAgdmFyaWFudCBvZiBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0OjphZGRDb25zb2xlTWVzc2FnZSB0aGF0IGFjY2VwdGVkCisgICAg
ICAgICAgICBvbmx5IGEgY2FsbCBzdGFjayBpbiBhZGRpdGlvbiB0byB0aGUgYmFzaWNzLgorICAg
ICAgICAqIGluc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
b25zb2xlTWVzc2FnZTo6Q29uc29sZU1lc3NhZ2UpOgorICAgICAgICAqIGluc3BlY3Rvci9Db25z
b2xlTWVzc2FnZS5oOgorICAgICAgICAoQ29uc29sZU1lc3NhZ2UpOgorICAgICAgICAgICAgQWNj
ZXB0IGEgU2NyaXB0U3RhdGUqIGFuZCBwYXNzIGl0IGludG8gYXV0b2dlbmVyYXRlTWV0YWRhdGEg
Zm9yCisgICAgICAgICAgICBjYWxsIHN0YWNrIGdlbmVyYXRpb25hbCBnb29kbmVzcy4KKyAgICAg
ICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3RvckNvbnNvbGVBZ2VudDo6YWRkTWVzc2FnZVRvQ29uc29sZSk6CisgICAgICAg
ICAgICBBY2NlcHQgYSBTY3JpcHRTdGF0ZSogYW5kIHBhc3MgaXQgaW50byBhZGRDb25zb2xlTWVz
c2FnZS4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnNvbGVBZ2VudDo6ZGlkRmluaXNo
WEhSTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb25zb2xlQWdl
bnQ6OmRpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgICAgIEFkZCBhbiBlbXB0eSBTY3JpcHRTdGF0
ZSBwYXJhbWV0ZXIgdG8gdGhlIGFkZENvbnNvbGVNZXNzYWdlIGNhbGwuCisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5oOgorICAgICAgICAoSW5zcGVjdG9yQ29uc29s
ZUFnZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUluc3RydW1lbnRh
dGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRN
ZXNzYWdlVG9Db25zb2xlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xlSW1wbCk6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uKToKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q29uc29sZTo6YWRkTWVzc2FnZSk6CisgICAgICAgICogcGFnZS9Db25zb2xlLmg6
CisgICAgICAgIChDb25zb2xlKToKKyAgICAgICAgICAgIFBpcGUgU2NyaXB0U3RhdGUgdGhyb3Vn
aCB0aGUgaW50ZXJtZWRpYXRlIGNsYXNzZXMuCisgICAgICAgICogcGFnZS9Db250ZW50U2VjdXJp
dHlQb2xpY3kuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9saWN5Ojps
b2dUb0NvbnNvbGUpOgorICAgICAgICAgICAgRHJvcCBjYWxsIHN0YWNrIGdlbmVyYXRpb24sIGFu
ZCBwYXNzIFNjcmlwdFN0YXRlKiBpbnRvIGFkZENvbnNvbGVNZXNzYWdlLgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJDb250ZXh0
OjphZGRDb25zb2xlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJDb250ZXh0Ojph
ZGRNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckNvbnRleHQ6OmFkZE1lc3NhZ2VU
b1dvcmtlckNvbnNvbGUpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5oOgorICAg
ICAgICAoV29ya2VyQ29udGV4dCk6CisgICAgICAgICAgICBBY2NlcHQgU2NyaXB0U3RhdGUqIGFu
ZCBwYXNzIGl0IGludG8gYWRkTWVzc2FnZVRvQ29uc29sZS4KKwogMjAxMi0xMi0wNSAgS2Vpc2hp
IEhhdHRvcmkgIDxrZWlzaGlAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggZmxpY2tlcmluZyB3
aGVuIGhpZGluZyBwYWdlIHBvcHVwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBjZDc0Yjkx
N2ZmZGZjZDAwNTgyZjNhNzMwMDk0ZTBjNzNlNTJmYjc2Li45ZmQ0MWYxMDhkYzA2N2M5MTAxYmIy
OGQyMjAyZTgyNTE5NzJhOTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTQ3NTYsNyAr
NDc1Niw3IEBAIHZvaWQgRG9jdW1lbnQ6OmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2Ug
c291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBNZXNzYWdlCiAgICAgfQogfQogCi12b2lkIERvY3Vt
ZW50OjphZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBN
ZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBz
b3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNr
PiBjYWxsU3RhY2ssIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCit2b2lkIERvY3Vt
ZW50OjphZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBN
ZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBz
b3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNr
PiBjYWxsU3RhY2ssIFNjcmlwdFN0YXRlKiBzdGF0ZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRl
bnRpZmllcikKIHsKICAgICBpZiAoIWlzQ29udGV4dFRocmVhZCgpKSB7CiAgICAgICAgIHBvc3RU
YXNrKEFkZENvbnNvbGVNZXNzYWdlVGFzazo6Y3JlYXRlKHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1l
c3NhZ2UpKTsKQEAgLTQ3NjUsNyArNDc2NSw3IEBAIHZvaWQgRG9jdW1lbnQ6OmFkZE1lc3NhZ2Uo
TWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VUeXBlIHR5cGUsIE1lc3NhZ2VMZXZlbCBsCiAK
ICAgICBpZiAoRE9NV2luZG93KiB3aW5kb3cgPSBkb21XaW5kb3coKSkgewogICAgICAgICBpZiAo
Q29uc29sZSogY29uc29sZSA9IHdpbmRvdy0+Y29uc29sZSgpKQotICAgICAgICAgICAgY29uc29s
ZS0+YWRkTWVzc2FnZShzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzb3VyY2VVUkwsIGxp
bmVOdW1iZXIsIGNhbGxTdGFjaywgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICAgICAgY29u
c29sZS0+YWRkTWVzc2FnZShzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzb3VyY2VVUkws
IGxpbmVOdW1iZXIsIGNhbGxTdGFjaywgc3RhdGUsIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggMWVlYWE2ODI5NDQ2MTM3NTgzZmFlMWEzY2Qz
ODYwNjUxYmFkYzZhZi4uNzEzZDllNWNkZGMwYzYzODdkNzYyNGIxODVmYWNhMzAyMzAwMzVkZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTEyMTEsNyArMTIxMSw3IEBAIHByaXZhdGU6CiAgICAg
dmlydHVhbCBjb25zdCBLVVJMJiB2aXJ0dWFsVVJMKCkgY29uc3Q7IC8vIFNhbWUgYXMgdXJsKCks
IGJ1dCBuZWVkZWQgZm9yIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgdG8gaW1wbGVtZW50IGl0IHdp
dGhvdXQgYSBwZXJmb3JtYW5jZSBsb3NzIGZvciBkaXJlY3QgY2FsbHMuCiAgICAgdmlydHVhbCBL
VVJMIHZpcnR1YWxDb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsgLy8gU2FtZSBhcyBj
b21wbGV0ZVVSTCgpIGZvciB0aGUgc2FtZSByZWFzb24gYXMgYWJvdmUuCiAKLSAgICB2aXJ0dWFs
IHZvaWQgYWRkTWVzc2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNpZ25l
ZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4sIHVuc2lnbmVkIGxvbmcg
cmVxdWVzdElkZW50aWZpZXIgPSAwKTsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkTWVzc2FnZShNZXNz
YWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBQYXNzUmVm
UHRyPFNjcmlwdENhbGxTdGFjaz4sIFNjcmlwdFN0YXRlKiA9IDAsIHVuc2lnbmVkIGxvbmcgcmVx
dWVzdElkZW50aWZpZXIgPSAwKTsKIAogICAgIHZpcnR1YWwgZG91YmxlIG1pbmltdW1UaW1lcklu
dGVydmFsKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRF
eGVjdXRpb25Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25D
b250ZXh0LmNwcAppbmRleCAwMjFjNmU1ZTQ1ZGUxYmRhYTkzOTdjNWRkNzAxMjgzMTM2OTY1YmVl
Li44ODE0NjBkNjIwZGQ3MzY2YmNhYjBjODE2MzBmYjY5Njc3YWUxYjM0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuY3BwCkBAIC0zMjEsMTcgKzMyMSwx
MSBAQCB2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnJlcG9ydEV4Y2VwdGlvbihjb25zdCBT
dHJpbmcmIGVycm9yTWVzc2FnZSwgaW50IGxpbgogICAgIG1fcGVuZGluZ0V4Y2VwdGlvbnMuY2xl
YXIoKTsKIH0KIAotdm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjphZGRDb25zb2xlTWVzc2Fn
ZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxl
dmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNp
Z25lZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0YWNrLCB1
bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKQordm9pZCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0OjphZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUg
dHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0
cmluZyYgc291cmNlVVJMLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBTY3JpcHRTdGF0ZSogc3RhdGUs
IHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCiB7Ci0gICAgYWRkTWVzc2FnZShzb3Vy
Y2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzb3VyY2VVUkwsIGxpbmVOdW1iZXIsIGNhbGxTdGFj
aywgcmVxdWVzdElkZW50aWZpZXIpOworICAgIGFkZE1lc3NhZ2Uoc291cmNlLCB0eXBlLCBsZXZl
bCwgbWVzc2FnZSwgc291cmNlVVJMLCBsaW5lTnVtYmVyLCAwLCBzdGF0ZSwgcmVxdWVzdElkZW50
aWZpZXIpOwogfQogCi12b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OmFkZENvbnNvbGVNZXNz
YWdlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwg
bGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+
IGNhbGxTdGFjaywgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKLXsKLSAgICBhZGRN
ZXNzYWdlKHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIFN0cmluZygpLCAwLCBjYWxsU3Rh
Y2ssIHJlcXVlc3RJZGVudGlmaWVyKTsKLX0KLQotCiBib29sIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ6OmRpc3BhdGNoRXJyb3JFdmVudChjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSwgaW50IGxp
bmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBDYWNoZWRTY3JpcHQqIGNhY2hlZFNj
cmlwdCkKIHsKICAgICBFdmVudFRhcmdldCogdGFyZ2V0ID0gZXJyb3JFdmVudFRhcmdldCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKaW5kZXggYTJkZmNl
NzE2NmUxY2QwMzZlNDZmMzg2Y2Y1ZmIzZjYxYWIzZTc3NS4uYjBiOGRiZjNlNDE3Y2MwMzcxZGI4
ZmIyYmIyZWQwZmU4ZTc3ZGY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Njcmlw
dEV4ZWN1dGlvbkNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0
aW9uQ29udGV4dC5oCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQ29uc29sZVR5cGVzLmgi
CiAjaW5jbHVkZSAiS1VSTC5oIgogI2luY2x1ZGUgIlNjcmlwdENhbGxTdGFjay5oIgorI2luY2x1
ZGUgIlNjcmlwdFN0YXRlLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlDb250ZXh0LmgiCiAjaW5jbHVk
ZSAiU3VwcGxlbWVudGFibGUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpAQCAtODQsOCAr
ODUsOCBAQCBwdWJsaWM6CiAKICAgICBib29sIHNhbml0aXplU2NyaXB0RXJyb3IoU3RyaW5nJiBl
cnJvck1lc3NhZ2UsIGludCYgbGluZU51bWJlciwgU3RyaW5nJiBzb3VyY2VVUkwsIENhY2hlZFNj
cmlwdCogPSAwKTsKICAgICB2b2lkIHJlcG9ydEV4Y2VwdGlvbihjb25zdCBTdHJpbmcmIGVycm9y
TWVzc2FnZSwgaW50IGxpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBQYXNzUmVm
UHRyPFNjcmlwdENhbGxTdGFjaz4sIENhY2hlZFNjcmlwdCogPSAwKTsKLSAgICB2b2lkIGFkZENv
bnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxp
bmVOdW1iZXIsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiA9IDAsIHVuc2lnbmVkIGxvbmcg
cmVxdWVzdElkZW50aWZpZXIgPSAwKTsKLSAgICB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVu
dGlmaWVyID0gMCk7CisKKyAgICB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2Us
IE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFNjcmlwdFN0YXRlKiA9IDAs
IHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKTsKICAgICB2aXJ0dWFsIHZvaWQg
YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZl
bCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVy
ID0gMCkgPSAwOwogCiAjaWYgRU5BQkxFKEJMT0IpCkBAIC0xOTQsNyArMTk1LDcgQEAgcHJpdmF0
ZToKICAgICB2aXJ0dWFsIGNvbnN0IEtVUkwmIHZpcnR1YWxVUkwoKSBjb25zdCA9IDA7CiAgICAg
dmlydHVhbCBLVVJMIHZpcnR1YWxDb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdCA9IDA7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgYWRkTWVzc2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlw
ZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291
cmNlVVJMLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4s
IHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIGFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgdW5zaWduZWQg
bGluZU51bWJlciwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCBTY3JpcHRTdGF0ZSogPSAw
LCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCkgPSAwOwogICAgIHZpcnR1YWwg
RXZlbnRUYXJnZXQqIGVycm9yRXZlbnRUYXJnZXQoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGxv
Z0V4Y2VwdGlvblRvQ29uc29sZShjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VVUkwsIGludCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFj
az4pID0gMDsKICAgICBib29sIGRpc3BhdGNoRXJyb3JFdmVudChjb25zdCBTdHJpbmcmIGVycm9y
TWVzc2FnZSwgaW50IGxpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBDYWNoZWRT
Y3JpcHQqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db25zb2xlTWVz
c2FnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29uc29sZU1lc3NhZ2UuY3BwCmlu
ZGV4IGQyZDhmMWIwOTIzZGQ4NzkxOTY0M2Q0M2RhMDUwNWJjMDU2NjRlYjYuLjg0YTkzZDZlNDRh
NmEzYmQ4MjI2MjU1NjZkMWJhMzM5M2FiNWZkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0NvbnNvbGVNZXNzYWdlLmNwcApAQCAtNjIsNyArNjIsNyBAQCBDb25zb2xlTWVzc2FnZTo6
Q29uc29sZU1lc3NhZ2UoYm9vbCBjYW5HZW5lcmF0ZUNhbGxTdGFjaywgTWVzc2FnZVNvdXJjZSBz
b3VyY2UsCiAgICAgYXV0b2dlbmVyYXRlTWV0YWRhdGEoY2FuR2VuZXJhdGVDYWxsU3RhY2spOwog
fQogCi1Db25zb2xlTWVzc2FnZTo6Q29uc29sZU1lc3NhZ2UoYm9vbCBjYW5HZW5lcmF0ZUNhbGxT
dGFjaywgTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VUeXBlIHR5cGUsIE1lc3NhZ2VMZXZl
bCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHVybCwgdW5zaWdu
ZWQgbGluZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKK0NvbnNvbGVNZXNzYWdl
OjpDb25zb2xlTWVzc2FnZShib29sIGNhbkdlbmVyYXRlQ2FsbFN0YWNrLCBNZXNzYWdlU291cmNl
IHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgdXJsLCB1bnNpZ25lZCBsaW5lLCBTY3JpcHRTdGF0
ZSogc3RhdGUsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCiAgICAgOiBtX3NvdXJj
ZShzb3VyY2UpCiAgICAgLCBtX3R5cGUodHlwZSkKICAgICAsIG1fbGV2ZWwobGV2ZWwpCkBAIC03
Miw3ICs3Miw3IEBAIENvbnNvbGVNZXNzYWdlOjpDb25zb2xlTWVzc2FnZShib29sIGNhbkdlbmVy
YXRlQ2FsbFN0YWNrLCBNZXNzYWdlU291cmNlIHNvdXJjZSwKICAgICAsIG1fcmVwZWF0Q291bnQo
MSkKICAgICAsIG1fcmVxdWVzdElkKElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKHJlcXVl
c3RJZGVudGlmaWVyKSkKIHsKLSAgICBhdXRvZ2VuZXJhdGVNZXRhZGF0YShjYW5HZW5lcmF0ZUNh
bGxTdGFjayk7CisgICAgYXV0b2dlbmVyYXRlTWV0YWRhdGEoY2FuR2VuZXJhdGVDYWxsU3RhY2ss
IHN0YXRlKTsKIH0KIAogQ29uc29sZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKGJvb2wsIE1lc3Nh
Z2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFj
aywgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9Db25zb2xlTWVzc2FnZS5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0NvbnNvbGVNZXNzYWdlLmgKaW5kZXggMGE0ZTQ3ZGFhZDllNWFlMWY4Y2M2NWY0NjM5YWEx
YjgyZjE3OTFiZi4uZGU5YzAzZWQwMzJhNGI2MTFhNzExODM4ZThjNzY3OGExMjBmODM3NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvbnNvbGVNZXNzYWdlLmgKQEAgLTUyLDcgKzUyLDcg
QEAgY2xhc3MgQ29uc29sZU1lc3NhZ2UgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENvbnNv
bGVNZXNzYWdlKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgQ29uc29s
ZU1lc3NhZ2UoYm9vbCBjYW5HZW5lcmF0ZUNhbGxTdGFjaywgTWVzc2FnZVNvdXJjZSwgTWVzc2Fn
ZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25n
IHJlcXVlc3RJZGVudGlmaWVyID0gMCk7Ci0gICAgQ29uc29sZU1lc3NhZ2UoYm9vbCBjYW5HZW5l
cmF0ZUNhbGxTdGFjaywgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHUsIHVuc2lnbmVkIGxpLCB1bnNp
Z25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CisgICAgQ29uc29sZU1lc3NhZ2UoYm9v
bCBjYW5HZW5lcmF0ZUNhbGxTdGFjaywgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3Nh
Z2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHVybCwgdW5zaWdu
ZWQgbGluZSwgU2NyaXB0U3RhdGUqID0gMCwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmll
ciA9IDApOwogICAgIENvbnNvbGVNZXNzYWdlKGJvb2wgY2FuR2VuZXJhdGVDYWxsU3RhY2ssIE1l
c3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVz
c2FnZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJ
ZGVudGlmaWVyID0gMCk7CiAgICAgQ29uc29sZU1lc3NhZ2UoYm9vbCBjYW5HZW5lcmF0ZUNhbGxT
dGFjaywgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3Ry
aW5nJiBtZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdEFyZ3VtZW50cz4sIFNjcmlwdFN0YXRlKiwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApOwogICAgIH5Db25zb2xlTWVzc2Fn
ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnNv
bGVBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUFn
ZW50LmNwcAppbmRleCBiMzlhYmIyMDM0N2E1MWI0N2U1Yjk5OWVmZWZmNThlNjI4ODMzM2YwLi45
ODNjNzBiNzkxZDYyMGEzNjZkN2JlYjFhNzlkNmY0ZjdkYzgyMjI1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUFnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUFnZW50LmNwcApAQCAtMTc4LDcg
KzE3OCw3IEBAIHZvaWQgSW5zcGVjdG9yQ29uc29sZUFnZW50OjphZGRNZXNzYWdlVG9Db25zb2xl
KE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwCiAgICAgYWRkQ29uc29sZU1lc3NhZ2Uo
YWRvcHRQdHIobmV3IENvbnNvbGVNZXNzYWdlKCFpc1dvcmtlckFnZW50KCksIHNvdXJjZSwgdHlw
ZSwgbGV2ZWwsIG1lc3NhZ2UsIGFyZ3VtZW50cywgc3RhdGUsIHJlcXVlc3RJZGVudGlmaWVyKSkp
OwogfQogCi12b2lkIEluc3BlY3RvckNvbnNvbGVBZ2VudDo6YWRkTWVzc2FnZVRvQ29uc29sZShN
ZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc2NyaXB0SWQsIHVuc2lnbmVk
IGxpbmVOdW1iZXIsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCit2b2lkIEluc3Bl
Y3RvckNvbnNvbGVBZ2VudDo6YWRkTWVzc2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNlIHNvdXJj
ZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIGNvbnN0IFN0cmluZyYgc2NyaXB0SWQsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFNjcmlw
dFN0YXRlKiBzdGF0ZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKIHsKICAgICBp
ZiAoIWRldmVsb3BlckV4dHJhc0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTg4LDcg
KzE4OCw3IEBAIHZvaWQgSW5zcGVjdG9yQ29uc29sZUFnZW50OjphZGRNZXNzYWdlVG9Db25zb2xl
KE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlVHlwCiAgICAgICAgIGNsZWFyTWVzc2FnZXMo
JmVycm9yKTsKICAgICB9CiAKLSAgICBhZGRDb25zb2xlTWVzc2FnZShhZG9wdFB0cihuZXcgQ29u
c29sZU1lc3NhZ2UoIWlzV29ya2VyQWdlbnQoKSwgc291cmNlLCB0eXBlLCBsZXZlbCwgbWVzc2Fn
ZSwgc2NyaXB0SWQsIGxpbmVOdW1iZXIsIHJlcXVlc3RJZGVudGlmaWVyKSkpOworICAgIGFkZENv
bnNvbGVNZXNzYWdlKGFkb3B0UHRyKG5ldyBDb25zb2xlTWVzc2FnZSghaXNXb3JrZXJBZ2VudCgp
LCBzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzY3JpcHRJZCwgbGluZU51bWJlciwgc3Rh
dGUsIHJlcXVlc3RJZGVudGlmaWVyKSkpOwogfQogCiBWZWN0b3I8dW5zaWduZWQ+IEluc3BlY3Rv
ckNvbnNvbGVBZ2VudDo6Y29uc29sZU1lc3NhZ2VBcmd1bWVudENvdW50cygpCkBAIC0yNjgsNyAr
MjY4LDcgQEAgdm9pZCBJbnNwZWN0b3JDb25zb2xlQWdlbnQ6OmRpZEZpbmlzaFhIUkxvYWRpbmco
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciwKICAgICAgICAgcmV0dXJuOwogICAgIGlm
IChtX2Zyb250ZW5kICYmIG1fc3RhdGUtPmdldEJvb2xlYW4oQ29uc29sZUFnZW50U3RhdGU6Om1v
bml0b3JpbmdYSFIpKSB7CiAgICAgICAgIFN0cmluZyBtZXNzYWdlID0gIlhIUiBmaW5pc2hlZCBs
b2FkaW5nOiBcIiIgKyB1cmwgKyAiXCIuIjsKLSAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShO
ZXR3b3JrTWVzc2FnZVNvdXJjZSwgTG9nTWVzc2FnZVR5cGUsIExvZ01lc3NhZ2VMZXZlbCwgbWVz
c2FnZSwgc2VuZFVSTCwgc2VuZExpbmVOdW1iZXIsIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICAg
ICAgYWRkTWVzc2FnZVRvQ29uc29sZShOZXR3b3JrTWVzc2FnZVNvdXJjZSwgTG9nTWVzc2FnZVR5
cGUsIExvZ01lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgc2VuZFVSTCwgc2VuZExpbmVOdW1iZXIsIDAs
IHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICB9CiAKIApAQCAtMjgxLDcgKzI4MSw3IEBAIHZvaWQg
SW5zcGVjdG9yQ29uc29sZUFnZW50OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciwKIAogICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID49
IDQwMCkgewogICAgICAgICBTdHJpbmcgbWVzc2FnZSA9ICJGYWlsZWQgdG8gbG9hZCByZXNvdXJj
ZTogdGhlIHNlcnZlciByZXNwb25kZWQgd2l0aCBhIHN0YXR1cyBvZiAiICsgU3RyaW5nOjpudW1i
ZXIocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSkgKyAiICgiICsgcmVzcG9uc2UuaHR0cFN0YXR1
c1RleHQoKSArICcpJzsKLSAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShOZXR3b3JrTWVzc2Fn
ZVNvdXJjZSwgTG9nTWVzc2FnZVR5cGUsIEVycm9yTWVzc2FnZUxldmVsLCBtZXNzYWdlLCByZXNw
b25zZS51cmwoKS5zdHJpbmcoKSwgMCwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBhZGRN
ZXNzYWdlVG9Db25zb2xlKE5ldHdvcmtNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJy
b3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIHJlc3BvbnNlLnVybCgpLnN0cmluZygpLCAwLCAwLCBy
ZXF1ZXN0SWRlbnRpZmllcik7CiAgICAgfQogfQogCkBAIC0yOTcsNyArMjk3LDcgQEAgdm9pZCBJ
bnNwZWN0b3JDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgcmVxdWVz
dElkZW50aWZpZXIsIGNvbnMKICAgICAgICAgbWVzc2FnZS5hcHBlbmRMaXRlcmFsKCI6ICIpOwog
ICAgICAgICBtZXNzYWdlLmFwcGVuZChlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbigpKTsKICAg
ICB9Ci0gICAgYWRkTWVzc2FnZVRvQ29uc29sZShOZXR3b3JrTWVzc2FnZVNvdXJjZSwgTG9nTWVz
c2FnZVR5cGUsIEVycm9yTWVzc2FnZUxldmVsLCBtZXNzYWdlLnRvU3RyaW5nKCksIGVycm9yLmZh
aWxpbmdVUkwoKSwgMCwgcmVxdWVzdElkZW50aWZpZXIpOworICAgIGFkZE1lc3NhZ2VUb0NvbnNv
bGUoTmV0d29ya01lc3NhZ2VTb3VyY2UsIExvZ01lc3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZl
bCwgbWVzc2FnZS50b1N0cmluZygpLCBlcnJvci5mYWlsaW5nVVJMKCksIDAsIDAsIHJlcXVlc3RJ
ZGVudGlmaWVyKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb25zb2xlQWdlbnQ6OnNldE1vbml0b3Jp
bmdYSFJFbmFibGVkKEVycm9yU3RyaW5nKiwgYm9vbCBlbmFibGVkKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5oIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5oCmluZGV4IDNjNDY3ODAxN2Uw
ODZhN2M0ZTBkODEyMzVkZDUwNDlkNGViNjc1MmIuLjk3ZjMzZTVjMDVkMDc3ZGE3NzQ0ODkzYTc3
OWQyYjA2ODFiMTc4MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JDb25zb2xlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ29uc29sZUFnZW50LmgKQEAgLTcwLDcgKzcwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCByZXN0b3JlKCk7CiAKICAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2FnZVNv
dXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBT
Y3JpcHRTdGF0ZSosIFBhc3NSZWZQdHI8U2NyaXB0QXJndW1lbnRzPiwgdW5zaWduZWQgbG9uZyBy
ZXF1ZXN0SWRlbnRpZmllciA9IDApOwotICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShNZXNz
YWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UsIGNvbnN0IFN0cmluZyYgc2NyaXB0SWQsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVk
IGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKTsKKyAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNv
bGUoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNjcmlwdElkLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBT
Y3JpcHRTdGF0ZSogPSAwLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CiAK
ICAgICAvLyBGSVhNRTogUmVtb3ZlIG9uY2Ugd2Ugbm8gbG9uZ2VyIGdlbmVyYXRlIHN0YWNrcyBv
dXRzaWRlIG9mIEluc3BlY3Rvci4KICAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2Fn
ZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4sIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50
aWZpZXIgPSAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JDb25zb2xlSW5zdHJ1bWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQ29uc29sZUluc3RydW1lbnRhdGlvbi5oCmluZGV4IDQ5MGY3NWUxMWFlMmFkMDRkMmYy
ZGY5OTM5Y2Y2M2Q3ZjVjZmE3MjQuLjVmZmM0OGFhYjViMDczN2FhZWE3ZWRhN2RjMWI4ZDZlNzZm
NjAyMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb25z
b2xlSW5zdHJ1bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckNvbnNvbGVJbnN0cnVtZW50YXRpb24uaApAQCAtNTUsMTEgKzU1LDExIEBAIGlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShQYWdlKiBw
YWdlLCBNZXNzYWdlU291CiAjZW5kaWYKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xlKFBhZ2UqIHBhZ2UsIE1lc3NhZ2VTb3VyY2Ug
c291cmNlLCBNZXNzYWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzY3JpcHRJZCwgdW5zaWduZWQgbGluZU51bWJlciwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKK2lubGluZSB2b2lkIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShQYWdlKiBwYWdlLCBNZXNzYWdlU291
cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc2NyaXB0SWQsIHVuc2lnbmVkIGxpbmVOdW1i
ZXIsIFNjcmlwdFN0YXRlKiBzdGF0ZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikK
IHsKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQogICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBp
bnN0cnVtZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50c0ZvclBhZ2UocGFnZSkpCi0g
ICAgICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGVJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMsIHNvdXJj
ZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIHNjcmlwdElkLCBsaW5lTnVtYmVyLCByZXF1ZXN0SWRl
bnRpZmllcik7CisgICAgICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGVJbXBsKGluc3RydW1lbnRpbmdB
Z2VudHMsIHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIHNjcmlwdElkLCBsaW5lTnVtYmVy
LCBzdGF0ZSwgcmVxdWVzdElkZW50aWZpZXIpOwogI2VuZGlmCiB9CiAKQEAgLTcyLDExICs3Miwx
MSBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0Nv
bnNvbGUoV29ya2VyQ29udGV4dCogd29ya2VyQwogI2VuZGlmCiB9CiAKLWlubGluZSB2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShXb3JrZXJDb250ZXh0
KiB3b3JrZXJDb250ZXh0LCBNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwg
TWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYg
c2NyaXB0SWQsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50
aWZpZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFkZE1lc3NhZ2VU
b0NvbnNvbGUoV29ya2VyQ29udGV4dCogd29ya2VyQ29udGV4dCwgTWVzc2FnZVNvdXJjZSBzb3Vy
Y2UsIE1lc3NhZ2VUeXBlIHR5cGUsIE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBt
ZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNjcmlwdElkLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBTY3Jp
cHRTdGF0ZSogc3RhdGUsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCiB7CiAjaWYg
RU5BQkxFKElOU1BFQ1RPUikKICAgICBpZiAoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVu
dGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHNGb3JXb3JrZXJDb250ZXh0KHdvcmtlckNv
bnRleHQpKQotICAgICAgICBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChpbnN0cnVtZW50aW5nQWdl
bnRzLCBzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzY3JpcHRJZCwgbGluZU51bWJlciwg
cmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChpbnN0
cnVtZW50aW5nQWdlbnRzLCBzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzY3JpcHRJZCwg
bGluZU51bWJlciwgc3RhdGUsIHJlcXVlc3RJZGVudGlmaWVyKTsKICNlbmRpZgogfQogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb24uY3BwCmluZGV4IDZmNmE5YWI2ZWYyMWM2MWIwYTdiMDYwYjI2OGFmOTM4MzJjMDY2OTYu
LjRmMjQzNmZiNDQ2YjE1N2M1ODIxODhmYjljZTA0MTI1MTY3MmIyZTUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCkBA
IC05NjgsMTAgKzk2OCwxMCBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVz
c2FnZVRvQ29uc29sZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdAogI2VuZGlmCiB9CiAK
LXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xlSW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzLCBNZXNzYWdlU291cmNlIHNv
dXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc2NyaXB0SWQsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVu
c2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1
bWVudGluZ0FnZW50cywgTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VUeXBlIHR5cGUsIE1l
c3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNj
cmlwdElkLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBTY3JpcHRTdGF0ZSogc3RhdGUsIHVuc2lnbmVk
IGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCiB7CiAgICAgaWYgKEluc3BlY3RvckNvbnNvbGVBZ2Vu
dCogY29uc29sZUFnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy0+aW5zcGVjdG9yQ29uc29sZUFn
ZW50KCkpCi0gICAgICAgIGNvbnNvbGVBZ2VudC0+YWRkTWVzc2FnZVRvQ29uc29sZShzb3VyY2Us
IHR5cGUsIGxldmVsLCBtZXNzYWdlLCBzY3JpcHRJZCwgbGluZU51bWJlciwgcmVxdWVzdElkZW50
aWZpZXIpOworICAgICAgICBjb25zb2xlQWdlbnQtPmFkZE1lc3NhZ2VUb0NvbnNvbGUoc291cmNl
LCB0eXBlLCBsZXZlbCwgbWVzc2FnZSwgc2NyaXB0SWQsIGxpbmVOdW1iZXIsIHN0YXRlLCByZXF1
ZXN0SWRlbnRpZmllcik7CiB9CiAKIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb25z
b2xlQ291bnRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIFNj
cmlwdFN0YXRlKiBzdGF0ZSwgUGFzc1JlZlB0cjxTY3JpcHRBcmd1bWVudHM+IGFyZ3VtZW50cykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24uaAppbmRleCAyYzZkMmE5MjhmZmVjOGJlY2NlZjVkOWMwZjc3NDY3NGViZmI1MGYyLi4zMmRk
YTRkMjBiNTJhOWU3M2JjY2M3ZWVhMTEzZDdmMzc2NWVlNzc5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBAIC0xOTgsMTEg
KzE5OCwxMSBAQCBwdWJsaWM6CiAgICAgLy8gRklYTUU6IFJlbW92ZSBvbmNlIHdlIG5vIGxvbmdl
ciBnZW5lcmF0ZSBzdGFja3Mgb3V0c2lkZSBvZiBJbnNwZWN0b3IuCiAgICAgc3RhdGljIHZvaWQg
YWRkTWVzc2FnZVRvQ29uc29sZShQYWdlKiwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1l
c3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxT
dGFjaz4sIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKTsKICAgICBzdGF0aWMg
dm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKFBhZ2UqLCBNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlw
ZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFNjcmlwdFN0YXRlKiwgUGFz
c1JlZlB0cjxTY3JpcHRBcmd1bWVudHM+LCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVy
ID0gMCk7Ci0gICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShQYWdlKiwgTWVzc2Fn
ZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBjb25zdCBTdHJpbmcmLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyID0gMCk7CisgICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShQ
YWdlKiwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3Ry
aW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBTY3JpcHRT
dGF0ZSogPSAwLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CiAjaWYgRU5B
QkxFKFdPUktFUlMpCiAgICAgLy8gRklYTUU6IENvbnZlcnQgdG8gU2NyaXB0QXJndW1lbnRzIHRv
IG1hdGNoIG5vbi13b3JrZXIgY29udGV4dC4KICAgICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9D
b25zb2xlKFdvcmtlckNvbnRleHQqLCBNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2Fn
ZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNr
PiwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApOwotICAgIHN0YXRpYyB2b2lk
IGFkZE1lc3NhZ2VUb0NvbnNvbGUoV29ya2VyQ29udGV4dCosIE1lc3NhZ2VTb3VyY2UsIE1lc3Nh
Z2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5n
JiwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9
IDApOworICAgIHN0YXRpYyB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoV29ya2VyQ29udGV4dCos
IE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgY29uc3QgU3RyaW5nJiwgdW5zaWduZWQgbGluZU51bWJlciwgU2NyaXB0U3RhdGUq
ID0gMCwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApOwogI2VuZGlmCiAgICAg
c3RhdGljIHZvaWQgY29uc29sZUNvdW50KFBhZ2UqLCBTY3JpcHRTdGF0ZSosIFBhc3NSZWZQdHI8
U2NyaXB0QXJndW1lbnRzPik7CiAgICAgc3RhdGljIHZvaWQgc3RhcnRDb25zb2xlVGltaW5nKEZy
YW1lKiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7CkBAIC0zOTAsNyArMzkwLDcgQEAgcHJpdmF0ZToK
ICAgICBzdGF0aWMgdm9pZCBkaWRXcml0ZUhUTUxJbXBsKGNvbnN0IEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbkNvb2tpZSYsIHVuc2lnbmVkIGludCBlbmRMaW5lKTsKIAogICAgIHN0YXRpYyB2b2lk
IGFkZE1lc3NhZ2VUb0NvbnNvbGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqLCBNZXNzYWdlU291
cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFNj
cmlwdFN0YXRlKiwgUGFzc1JlZlB0cjxTY3JpcHRBcmd1bWVudHM+LCB1bnNpZ25lZCBsb25nIHJl
cXVlc3RJZGVudGlmaWVyKTsKLSAgICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzKiwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3Nh
Z2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNjcmlwdElkLCB1
bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAg
ICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRz
KiwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNjcmlwdElkLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBT
Y3JpcHRTdGF0ZSosIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpOwogCiAgICAgLy8g
RklYTUU6IFJlbW92ZSBvbmNlIHdlIG5vIGxvbmdlciBnZW5lcmF0ZSBzdGFja3Mgb3V0c2lkZSBv
ZiBJbnNwZWN0b3IuCiAgICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyosIE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2
ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCB1
bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ29uc29sZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCmlu
ZGV4IDYwNmIwM2Q5ODRkMTcxMTI0ODI0NjJkNWY4NjZlODdkYmE5YzViMzEuLjk2YzNjZTNkZGY0
ODczMDI0ZmJjOGJlMjY3NDM3NmY5NzIwNGNkZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ29uc29sZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db25zb2xlLmNwcApA
QCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgQ29uc29sZTo6YWRkTWVzc2FnZShNZXNzYWdlU291cmNl
IHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxlCiAgICAgICAgIGlmICgh
cGFyc2VyLT5pc1dhaXRpbmdGb3JTY3JpcHRzKCkgJiYgIXBhcnNlci0+aXNFeGVjdXRpbmdTY3Jp
cHQoKSkKICAgICAgICAgICAgIGxpbmUgPSBwYXJzZXItPmxpbmVOdW1iZXIoKS5vbmVCYXNlZElu
dCgpOwogICAgIH0KLSAgICBhZGRNZXNzYWdlKHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2Us
IHVybCwgbGluZSwgMCwgcmVxdWVzdElkZW50aWZpZXIpOworICAgIGFkZE1lc3NhZ2Uoc291cmNl
LCB0eXBlLCBsZXZlbCwgbWVzc2FnZSwgdXJsLCBsaW5lLCAwLCAwLCByZXF1ZXN0SWRlbnRpZmll
cik7CiB9CiAKIHZvaWQgQ29uc29sZTo6YWRkTWVzc2FnZShNZXNzYWdlU291cmNlIHNvdXJjZSwg
TWVzc2FnZVR5cGUgdHlwZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UsIFBhc3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2spCkBAIC0xNTQsNyArMTU0
LDcgQEAgdm9pZCBDb25zb2xlOjphZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNz
YWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwgbGUKICAgICBhZGRNZXNzYWdlKHNvdXJjZSwgdHlw
ZSwgbGV2ZWwsIG1lc3NhZ2UsIFN0cmluZygpLCAwLCBjYWxsU3RhY2ssIDApOwogfQogCi12b2lk
IENvbnNvbGU6OmFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VUeXBlIHR5
cGUsIE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJp
bmcmIHVybCwgdW5zaWduZWQgbGluZU51bWJlciwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+
IGNhbGxTdGFjaywgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKK3ZvaWQgQ29uc29s
ZTo6YWRkTWVzc2FnZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVz
c2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgdXJs
LCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2FsbFN0
YWNrLCBTY3JpcHRTdGF0ZSogc3RhdGUsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIp
CiB7CiAgICAgaWYgKG11dGVDb3VudCAmJiBzb3VyY2UgIT0gQ29uc29sZUFQSU1lc3NhZ2VTb3Vy
Y2UpCiAgICAgICAgIHJldHVybjsKQEAgLTE2OCw3ICsxNjgsNyBAQCB2b2lkIENvbnNvbGU6OmFk
ZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VUeXBlIHR5cGUsIE1lc3NhZ2VM
ZXZlbCBsZQogICAgIGlmIChjYWxsU3RhY2spCiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShwYWdlLCBzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNz
YWdlLCBjYWxsU3RhY2ssIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICBlbHNlCi0gICAgICAgIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShwYWdlLCBzb3VyY2Us
IHR5cGUsIGxldmVsLCBtZXNzYWdlLCB1cmwsIGxpbmVOdW1iZXIsIHJlcXVlc3RJZGVudGlmaWVy
KTsKKyAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xl
KHBhZ2UsIHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIHVybCwgbGluZU51bWJlciwgc3Rh
dGUsIHJlcXVlc3RJZGVudGlmaWVyKTsKIAogICAgIGlmICghQ29uc29sZTo6c2hvdWxkUHJpbnRF
eGNlcHRpb25zKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ29uc29sZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db25zb2xlLmgKaW5kZXggNWMz
ZmM2ZmYwNDcyNTViZmNlODk1MjgxMmM5YWJlNDMzYWFmYjFkYS4uMTY2NzQ2ZTUxZjg1Mjc5ODFi
MmQzZDllYTYyYWFjNWVmZjlkYmViYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9D
b25zb2xlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db25zb2xlLmgKQEAgLTU3LDcgKzU3
LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvbnNvbGU+IGNyZWF0ZShGcmFt
ZSogZnJhbWUpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb25zb2xlKGZyYW1lKSk7IH0KICAgICB2
aXJ0dWFsIH5Db25zb2xlKCk7CiAKLSAgICB2b2lkIGFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwg
TWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBT
dHJpbmcmIHNvdXJjZVVSTCwgdW5zaWduZWQgbGluZU51bWJlciwgUGFzc1JlZlB0cjxTY3JpcHRD
YWxsU3RhY2s+ID0gMCwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApOworICAg
IHZvaWQgYWRkTWVzc2FnZShNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNpZ25l
ZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gPSAwLCBTY3JpcHRTdGF0
ZSogPSAwLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CiAgICAgdm9pZCBh
ZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+KTsKICAgICB2b2lk
IGFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29u
c3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCwg
RG9jdW1lbnQqID0gMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVu
dFNlY3VyaXR5UG9saWN5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5
UG9saWN5LmNwcAppbmRleCA0OTk2MzAyZTZhMDExOTFkMjNlZmFhYmJhMDZjNDM1MzMzNWU1M2Q5
Li5iMDU2MGUzMzI4YmU2MDZjMzM4MDgzMDg4ZGI3YTNiNjhmMGExODAzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwCkBAIC0zOSw4ICszOSw2IEBA
CiAjaW5jbHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCIKICNpbmNsdWRlICJTY2hlbWVSZWdpc3RyeS5oIgotI2luY2x1ZGUgIlNjcmlwdENhbGxT
dGFjay5oIgotI2luY2x1ZGUgIlNjcmlwdENhbGxTdGFja0ZhY3RvcnkuaCIKICNpbmNsdWRlICJT
Y3JpcHRTdGF0ZS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVGV4
dEVuY29kaW5nLmgiCkBAIC0xNjk0LDE2ICsxNjkyLDcgQEAgdm9pZCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OnJlcG9ydEludmFsaWRTb3VyY2VFeHByZXNzaW9uKGNvbnN0IFN0cmluZyYgZGlyZWN0
aXYKIAogdm9pZCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OmxvZ1RvQ29uc29sZShjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFs
TnVtYmVyJiBjb250ZXh0TGluZSwgU2NyaXB0U3RhdGUqIHN0YXRlKSBjb25zdAogewotICAgIFJl
ZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjazsKLSAgICBpZiAoSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpjb25zb2xlQWdlbnRFbmFibGVkKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkp
IHsKLSAgICAgICAgaWYgKHN0YXRlKQotICAgICAgICAgICAgY2FsbFN0YWNrID0gY3JlYXRlU2Ny
aXB0Q2FsbFN0YWNrRm9yQ29uc29sZShzdGF0ZSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAg
IGNhbGxTdGFjayA9IGNyZWF0ZVNjcmlwdENhbGxTdGFjayhTY3JpcHRDYWxsU3RhY2s6Om1heENh
bGxTdGFja1NpemVUb0NhcHR1cmUsIHRydWUpOwotICAgICAgICBpZiAoY2FsbFN0YWNrICYmICFj
YWxsU3RhY2stPnNpemUoKSkKLSAgICAgICAgICAgIGNhbGxTdGFjayA9IDA7Ci0gICAgfQotICAg
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291
cmNlLCBMb2dNZXNzYWdlVHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIGNvbnRleHRV
UkwsIGNvbnRleHRMaW5lLm9uZUJhc2VkSW50KCksIGNhbGxTdGFjayk7CisgICAgbV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5hZGRDb25zb2xlTWVzc2FnZShKU01lc3NhZ2VTb3VyY2UsIExvZ01l
c3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4
dExpbmUub25lQmFzZWRJbnQoKSwgc3RhdGUpOwogfQogCiB2b2lkIENvbnRlbnRTZWN1cml0eVBv
bGljeTo6cmVwb3J0QmxvY2tlZFNjcmlwdEV4ZWN1dGlvblRvSW5zcGVjdG9yKGNvbnN0IFN0cmlu
ZyYgZGlyZWN0aXZlVGV4dCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRl
eHQuY3BwCmluZGV4IGJiODA0MTIwMWM0M2JlYjllMGJlZGJjN2E3YWEzOWZmMzQ3YTFlMDMuLmM2
OTdjMDA3MDk4YWI0MjRlZTJiZGI1Yjg0ZmE5NTljZGNiOGZmM2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJDb250ZXh0LmNwcApAQCAtMjg3LDI2ICsyODcsMjYgQEAgdm9pZCBXb3Jr
ZXJDb250ZXh0OjphZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2Fn
ZVR5cGUgdHlwZSwgTWUKICAgICB9CiAgICAgdGhyZWFkKCktPndvcmtlclJlcG9ydGluZ1Byb3h5
KCkucG9zdENvbnNvbGVNZXNzYWdlVG9Xb3JrZXJPYmplY3Qoc291cmNlLCB0eXBlLCBsZXZlbCwg
bWVzc2FnZSwgMCwgU3RyaW5nKCkpOwogCi0gICAgYWRkTWVzc2FnZVRvV29ya2VyQ29uc29sZShz
b3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBTdHJpbmcoKSwgMCwgMCwgcmVxdWVzdElkZW50
aWZpZXIpOworICAgIGFkZE1lc3NhZ2VUb1dvcmtlckNvbnNvbGUoc291cmNlLCB0eXBlLCBsZXZl
bCwgbWVzc2FnZSwgU3RyaW5nKCksIDAsIDAsIDAsIHJlcXVlc3RJZGVudGlmaWVyKTsKIH0KIAot
dm9pZCBXb3JrZXJDb250ZXh0OjphZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNz
YWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFBhc3NSZWZQdHI8
U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2ssIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZp
ZXIpCit2b2lkIFdvcmtlckNvbnRleHQ6OmFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzb3VyY2Us
IE1lc3NhZ2VUeXBlIHR5cGUsIE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNz
YWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgdW5zaWduZWQgbGluZU51bWJlciwgUGFzc1Jl
ZlB0cjxTY3JpcHRDYWxsU3RhY2s+IGNhbGxTdGFjaywgU2NyaXB0U3RhdGUqIHN0YXRlLCB1bnNp
Z25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKQogewogICAgIGlmICghaXNDb250ZXh0VGhyZWFk
KCkpIHsKICAgICAgICAgcG9zdFRhc2soQWRkQ29uc29sZU1lc3NhZ2VUYXNrOjpjcmVhdGUoc291
cmNlLCB0eXBlLCBsZXZlbCwgbWVzc2FnZSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogICAg
IHRocmVhZCgpLT53b3JrZXJSZXBvcnRpbmdQcm94eSgpLnBvc3RDb25zb2xlTWVzc2FnZVRvV29y
a2VyT2JqZWN0KHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJj
ZVVSTCk7Ci0gICAgYWRkTWVzc2FnZVRvV29ya2VyQ29uc29sZShzb3VyY2UsIHR5cGUsIGxldmVs
LCBtZXNzYWdlLCBzb3VyY2VVUkwsIGxpbmVOdW1iZXIsIGNhbGxTdGFjaywgcmVxdWVzdElkZW50
aWZpZXIpOworICAgIGFkZE1lc3NhZ2VUb1dvcmtlckNvbnNvbGUoc291cmNlLCB0eXBlLCBsZXZl
bCwgbWVzc2FnZSwgc291cmNlVVJMLCBsaW5lTnVtYmVyLCBjYWxsU3RhY2ssIHN0YXRlLCByZXF1
ZXN0SWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV29ya2VyQ29udGV4dDo6YWRkTWVzc2FnZVRvV29y
a2VyQ29uc29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZVR5cGUgdHlwZSwgTWVzc2Fn
ZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNl
VVJMLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4gY2Fs
bFN0YWNrLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKQordm9pZCBXb3JrZXJDb250
ZXh0OjphZGRNZXNzYWdlVG9Xb3JrZXJDb25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNz
YWdlVHlwZSB0eXBlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFBhc3NSZWZQdHI8
U2NyaXB0Q2FsbFN0YWNrPiBjYWxsU3RhY2ssIFNjcmlwdFN0YXRlKiBzdGF0ZSwgdW5zaWduZWQg
bG9uZyByZXF1ZXN0SWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQoaXNDb250ZXh0VGhyZWFkKCkp
OwogICAgIGlmIChjYWxsU3RhY2spCiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
YWRkTWVzc2FnZVRvQ29uc29sZSh0aGlzLCBzb3VyY2UsIHR5cGUsIGxldmVsLCBtZXNzYWdlLCBj
YWxsU3RhY2ssIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICBlbHNlCi0gICAgICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZSh0aGlzLCBzb3VyY2UsIHR5cGUs
IGxldmVsLCBtZXNzYWdlLCBzb3VyY2VVUkwsIGxpbmVOdW1iZXIsIHJlcXVlc3RJZGVudGlmaWVy
KTsKKyAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xl
KHRoaXMsIHNvdXJjZSwgdHlwZSwgbGV2ZWwsIG1lc3NhZ2UsIHNvdXJjZVVSTCwgbGluZU51bWJl
ciwgc3RhdGUsIHJlcXVlc3RJZGVudGlmaWVyKTsKIH0KIAogYm9vbCBXb3JrZXJDb250ZXh0Ojpp
c0NvbnRleHRUaHJlYWQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQu
aAppbmRleCA3N2UxYmU5ODkxM2NjZDdhODU3NGQzOTI2YzZlNmUxZWYzOGFhZmM5Li40OTZkNzM1
ODU2M2M0OGQ5ZmNlYjBlYTg2OTYzMjBmN2Q0M2FiZGUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckNvbnRleHQuaApAQCAtMTQ1LDcgKzE0NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgdm9pZCBhcHBseUNvbnRlbnRTZWN1cml0eVBvbGljeUZyb21TdHJpbmcoY29uc3Qg
U3RyaW5nJiBjb250ZW50U2VjdXJpdHlQb2xpY3ksIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SGVh
ZGVyVHlwZSk7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIGxvZ0V4Y2VwdGlvblRvQ29uc29sZShj
b25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIGludCBs
aW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4pOwotICAgICAgICB2b2lkIGFk
ZE1lc3NhZ2VUb1dvcmtlckNvbnNvbGUoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3Nh
Z2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwg
dW5zaWduZWQgbGluZU51bWJlciwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCB1bnNpZ25l
ZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CisgICAgICAgIHZvaWQgYWRkTWVzc2FnZVRv
V29ya2VyQ29uc29sZShNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxldmVsLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNpZ25lZCBs
aW5lTnVtYmVyLCBQYXNzUmVmUHRyPFNjcmlwdENhbGxTdGFjaz4sIFNjcmlwdFN0YXRlKiA9IDAs
IHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKTsKIAogICAgIHByaXZhdGU6CiAg
ICAgICAgIHZpcnR1YWwgdm9pZCByZWZTY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgeyByZWYoKTsg
fQpAQCAtMTU5LDcgKzE1OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVh
bCBjb25zdCBLVVJMJiB2aXJ0dWFsVVJMKCkgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgS1VSTCB2
aXJ0dWFsQ29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKLSAgICAgICAgdmlydHVh
bCB2b2lkIGFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZl
bCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCwgdW5zaWdu
ZWQgbGluZU51bWJlciwgUGFzc1JlZlB0cjxTY3JpcHRDYWxsU3RhY2s+LCB1bnNpZ25lZCBsb25n
IHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBhZGRNZXNzYWdl
KE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIFBh
c3NSZWZQdHI8U2NyaXB0Q2FsbFN0YWNrPiwgU2NyaXB0U3RhdGUqID0gMCwgdW5zaWduZWQgbG9u
ZyByZXF1ZXN0SWRlbnRpZmllciA9IDApOwogICAgICAgICB2aXJ0dWFsIHZvaWQgYWRkQ29uc29s
ZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3Qg
U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMCk7CiAK
ICAgICAgICAgdmlydHVhbCBFdmVudFRhcmdldCogZXJyb3JFdmVudFRhcmdldCgpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>