<?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>124724</bug_id>
          
          <creation_ts>2013-11-21 10:17:27 -0800</creation_ts>
          <short_desc>Make the ResourceRequest/Response primitives work in terms of platform agnostic CertificateInfo object</short_desc>
          <delta_ts>2013-12-22 01:57:56 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          <dependson>124150</dependson>
    
    <dependson>124720</dependson>
          <blocked>118520</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Andy Wingo">wingo</assigned_to>
          <cc>andersca</cc>
    
    <cc>cgarcia</cc>
    
    <cc>wingo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>953157</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-11-21 10:17:27 -0800</bug_when>
    <thetext>It is the 3rd step after 
- renaming PlatformCertificateInfo to CertificateInfo (bug124150)
- moving CertificateInfo from WebKit2 to WebCore (bug124720)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957623</commentid>
    <comment_count>1</comment_count>
      <attachid>218689</attachid>
    <who name="Andy Wingo">wingo</who>
    <bug_when>2013-12-08 08:12:14 -0800</bug_when>
    <thetext>Created attachment 218689
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957624</commentid>
    <comment_count>2</comment_count>
      <attachid>218689</attachid>
    <who name="Andy Wingo">wingo</who>
    <bug_when>2013-12-08 08:13:24 -0800</bug_when>
    <thetext>Comment on attachment 218689
Patch

Clearing review? flag, as I have no idea if this is actually the right patch to apply :)  However it does build and is the last part of bug 118520.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218689</attachid>
            <date>2013-12-08 08:12:14 -0800</date>
            <delta_ts>2013-12-08 08:13:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-124724-20131208171211.patch</filename>
            <type>text/plain</type>
            <size>43236</size>
            <attacher name="Andy Wingo">wingo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMjg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTk3OGU1MjMyNmUyMmEw
MDFlMzhlNjliMDU3ZTJkMWE3N2RjMzc0Yy4uMTgyNzc1Y2UxNDQzM2FhY2RlY2YxYjk4ZjRiZjUz
ODgyZTZhNjliNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDEzLTEyLTA4ICBBbmR5
IFdpbmdvICA8d2luZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBNYWtlIHRoZSBSZXNvdXJjZVJl
cXVlc3QvUmVzcG9uc2UgcHJpbWl0aXZlcyB3b3JrIGluIHRlcm1zIG9mIHBsYXRmb3JtIGFnbm9z
dGljIENlcnRpZmljYXRlSW5mbyBvYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyNDcyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE9yaWdpbmFsIHBhdGNoIGJ5IEt3YW5nIFl1bCBTZW8gPHNreXVs
QGNvbXBhbnkxMDAubmV0PiBhbmQgQ3NhYmEgT3N6dHJvZ29uw6FjIDxvc3N5QHdlYmtpdC5vcmc+
LgorCisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBQbGF0Zm9ybUVm
bC5jbWFrZToKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBXZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qOgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3Jl
LnZjeHByb2ouZmlsdGVyczoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9DZXJ0aWZpY2F0ZUluZm8uaDogUmVu
YW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0
ZUluZm8uaC4KKyAgICAgICAgKFdlYkNvcmU6OkNlcnRpZmljYXRlSW5mbzo6Y2VydGlmaWNhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjpzZXRDZXJ0aWZpY2F0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm86OnRsc0Vycm9ycyk6CisgICAgICAgIChX
ZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm86OnNldFRMU0Vycm9ycyk6CisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZUVycm9yQmFzZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvckJhc2U6OmNlcnRpZmljYXRlSW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yQmFzZTo6c2V0Q2VydGlmaWNhdGVJbmZvKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlQmFzZTo6Y2VydGlmaWNhdGVJbmZvKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2VCYXNlOjpzZXRDZXJ0aWZpY2F0ZUluZm8pOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvY2YvQ2VydGlmaWNhdGVJbmZvQ0ZOZXQuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ2VydGlmaWNhdGVJbmZvLmguCisgICAgICAgIChX
ZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmljYXRlSW5mbyk6CisgICAgICAgIChXZWJD
b3JlOjpDZXJ0aWZpY2F0ZUluZm86On5DZXJ0aWZpY2F0ZUluZm8pOgorICAgICAgICAqIHBsYXRm
b3JtL25ldHdvcmsvY2YvUmVzb3VyY2VSZXNwb25zZS5oOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvbWFjL1Jlc291cmNlUmVzcG9uc2VNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlOjpzZXRDZXJ0aWZpY2F0ZUNoYWluKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2U6OmNlcnRpZmljYXRlQ2hhaW4pOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm8uY3BwLgorICAgICAg
ICAoV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjpDZXJ0aWZpY2F0ZUluZm8pOgorICAgICAgICAo
V2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjp+Q2VydGlmaWNhdGVJbmZvKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvci5oOgorICAgICAgICAoV2ViQ29yZTo6
UmVzb3VyY2VFcnJvcjo6UmVzb3VyY2VFcnJvcik6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yOjp0bHNFcnJvcnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VFcnJvcjo6c2V0
VExTRXJyb3JzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlRXJyb3I6OmNlcnRpZmljYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlRXJyb3I6OnNldENlcnRpZmljYXRlKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvclNvdXAuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVzb3VyY2VFcnJvcjo6cGxhdGZvcm1Db3B5KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VSZXNwb25zZS5oOgorICAgICAgICAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZTo6UmVzb3VyY2VSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlOjpzb3VwTWVzc2FnZUNlcnRpZmljYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2U6OnNldFNvdXBNZXNzYWdlQ2VydGlmaWNhdGUpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6c291cE1lc3NhZ2VUTFNFcnJvcnMpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6c2V0U291cE1lc3NhZ2VUTFNFcnJv
cnMpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZVJlc3BvbnNlU291
cC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlOjp0b1NvdXBNZXNzYWdl
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2U6OnVwZGF0ZUZyb21Tb3VwTWVz
c2FnZSk6CisKIDIwMTMtMTItMDggIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBNb3ZlIENlcnRpZmljYXRlSW5mbyB0byBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5k
ZXggNjE0YTMyYzYzYzE1YWVjNzdhYzI0OWUyYTcwMzMyOWNhNWQyNWFkNC4uODJmMmE3ZjAyNDU1
MzQyNWU1YWUzM2E0YjgxN2M2ZWM2NDMzMDRlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBA
CisyMDEzLTEyLTA4ICBBbmR5IFdpbmdvICA8d2luZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBN
YWtlIHRoZSBSZXNvdXJjZVJlcXVlc3QvUmVzcG9uc2UgcHJpbWl0aXZlcyB3b3JrIGluIHRlcm1z
IG9mIHBsYXRmb3JtIGFnbm9zdGljIENlcnRpZmljYXRlSW5mbyBvYmplY3QKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDcyNAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE9yaWdpbmFsIHBhdGNoIGJ5IEt3
YW5nIFl1bCBTZW8gPHNreXVsQGNvbXBhbnkxMDAubmV0PiBhbmQgQ3NhYmEgT3N6dHJvZ29uw6Fj
IDxvc3N5QHdlYmtpdC5vcmc+LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQXN5bmNocm9u
b3VzTmV0d29ya0xvYWRlckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OkFzeW5jaHJvbm91
c05ldHdvcmtMb2FkZXJDbGllbnQ6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgICogU2hh
cmVkL21hYy9XZWJDb3JlQXJndW1lbnRDb2RlcnNNYWMubW06CisgICAgICAgICogU2hhcmVkL3Nv
dXAvV2ViQ29yZUFyZ3VtZW50Q29kZXJzU291cC5jcHA6CisgICAgICAgIChDb3JlSVBDOjo6OmVu
Y29kZVBsYXRmb3JtRGF0YSk6CisgICAgICAgIChDb3JlSVBDOjo6OmRlY29kZVBsYXRmb3JtRGF0
YSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Q2VydGlmaWNhdGVJbmZvUHJp
dmF0ZS5oOgorICAgICAgICAoX1dlYktpdENlcnRpZmljYXRlSW5mbzo6X1dlYktpdENlcnRpZmlj
YXRlSW5mbyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAq
IFdlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2VXaXRoQ2VydGlmaWNhdGVJ
bmZvKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkQ29tbWl0TG9hZCk6CisKIDIwMTMtMTItMDggIENzYWJhIE9zenRyb2dvbsOhYyAgPG9z
c3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIENlcnRpZmljYXRlSW5mbyB0byBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNl
L1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCA2MTNmNTAxMjhjMDNlZGI4YWI4M2E5
YzZkOWNiZDQ0NzAxMDc0NDIyLi5jNmQwZTkzMzViZDJjY2JmYjgzZGIyYzcwOGI3ODhlYWIzNTZh
NjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTU0NDgsNyArNTQ0OCw3IEBA
IHdlYmNvcmVfcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9CbG9iUmVnaXN0cnlJbXBsLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5oIFwKKwlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL0NlcnRpZmljYXRlSW5mby5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL0Jsb2JTdG9yYWdlRGF0YS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL0Zvcm1EYXRhQnVpbGRlci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvRm9ybURhdGFCdWlsZGVyLmggXApAQCAtNTQ2OCw3ICs1NDY4LDcgQEAgd2ViY29yZV9wbGF0
Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291
cmNlUmVzcG9uc2VCYXNlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVuZ2VTb3VwLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5jcHAgXAorCVNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcCBc
CiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3Bw
IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llU3RvcmFnZVNv
dXAuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtRWZsLmNtYWtlIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1FZmwuY21ha2UKaW5kZXggNjFkNzlkZGY0YjZiYzNkYTA1
YzlkMzk3NGY2Yjg1NTgxNjkwZWNmNS4uZTIwMDExOTcxYmNhY2I5YWZlMmRjOWU4MDAxNGJjNTli
YzY0MzQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1FZmwuY21ha2UKKysr
IGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1FZmwuY21ha2UKQEAgLTE1Miw3ICsxNTIsNyBAQCBs
aXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBwbGF0Zm9ybS9uZXR3b3JrL2VmbC9OZXR3
b3JrU3RhdGVOb3RpZmllckVmbC5jcHAKIAogICAgIHBsYXRmb3JtL25ldHdvcmsvc291cC9BdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZVNvdXAuY3BwCi0gICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nl
cnRpZmljYXRlSW5mby5jcHAKKyAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJ
bmZvU291cC5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5jcHAK
ICAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llU3RvcmFnZVNvdXAuY3BwCiAgICAgcGxh
dGZvcm0vbmV0d29yay9zb3VwL0NyZWRlbnRpYWxTdG9yYWdlU291cC5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4KaW5kZXggMGY4M2E5ODg3ODVjZWUzNDZhNGI1NDA1MmMyZDk1MzNkOTY1MDhmZi4uN2M4
NThmM2IxNTM0YTIyMWE4NWMxZWEwOGZhNTIzYTc5ZWU4ZTYyYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAu
aW4KQEAgLTg1MSw2ICs4NTEsMTEgQEAgX19aTjdXZWJDb3JlMjNBcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZTI2c3RvcmVVcGRhdGVkUXVvdGFGb3JPcmlnaW5FUEtOU18xNFNlY3VyaXQKIF9fWk43V2Vi
Q29yZTIzQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U1ZW1wdHlFdgogX19aTjdXZWJDb3JlMjNBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZTIzc2V0QXV0aGVudGljYXRpb25DbGllbnRFUE5TXzIwQXV0aGVu
dGljYXRpb25DbGllbnRFCiBfX1pON1dlYkNvcmUyM0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQzFF
UktOU18xNVByb3RlY3Rpb25TcGFjZUVSS05TXzEwQ3JlZGVudGlhbEVqUktOU18xNlJlc291cmNl
UmVzcG9uc2VFUktOU18xM1Jlc291cmNlRXJyb3JFCitfX1pON1dlYkNvcmUxNUNlcnRpZmljYXRl
SW5mbzE5c2V0Q2VydGlmaWNhdGVDaGFpbkVQSzlfX0NGQXJyYXkKK19fWk43V2ViQ29yZTE1Q2Vy
dGlmaWNhdGVJbmZvQzFFUEs5X19DRkFycmF5CitfX1pON1dlYkNvcmUxNUNlcnRpZmljYXRlSW5m
b0MxRXYKK19fWk43V2ViQ29yZTE1Q2VydGlmaWNhdGVJbmZvRDFFdgorX19aTks3V2ViQ29yZTE1
Q2VydGlmaWNhdGVJbmZvMTZjZXJ0aWZpY2F0ZUNoYWluRXYKIF9fWk43V2ViQ29yZTIzU3luY2hy
b25vdXNMb2FkZXJDbGllbnQyNHBsYXRmb3JtQmFkUmVzcG9uc2VFcnJvckV2CiBfX1pON1dlYkNv
cmUyM2RhdGFGb3JVUkxDb21wb25lbnRUeXBlRVA1TlNVUkxsCiBfX1pON1dlYkNvcmUyM2RlY29k
ZUhvc3ROYW1lV2l0aFJhbmdlRVA4TlNTdHJpbmc4X05TUmFuZ2UKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IGEzZjgwOTdhZWU1N2NjMWZj
YjBhYTI4YzJkYzVhNjJiYWVhODFlOWQuLmU4OGI3NTFkMThiNzAxZGRlZDI4NGM5YjFiMTc2NGJk
OTQyZDE1OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvagpAQCAtODIyMiw2ICs4MjIyLDEyIEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxl
PgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cbmV0d29ya1xjZlxDZXJ0aWZp
Y2F0ZUluZm9DRk5ldC5jcHAiPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0i
JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98V2luMzInIj50
cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KKyAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfHg2NCci
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRp
dGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3xX
aW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgorICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxk
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5D
YWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KKyAgICA8L0NsQ29tcGlsZT4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXG5ldHdvcmtcY2ZcQ29va2llSmFyQ0ZO
ZXQuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVk
ZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNs
dWRlZEZyb21CdWlsZD4KQEAgLTE5NDY1LDYgKzE5NDcxLDcgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXG5ldHdvcmtcQmxvYlJlZ2lzdHJ5SW1wbC5oIiAvPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cbmV0d29ya1xCbG9iUmVzb3VyY2VIYW5kbGUu
aCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXG5ldHdvcmtcQmxvYlN0
b3JhZ2VEYXRhLmgiIC8+CisgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxuZXR3
b3JrXENlcnRpZmljYXRlSW5mby5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cbmV0d29ya1xDb29raWVTdG9yYWdlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxuZXR3b3JrXENyZWRlbnRpYWwuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXG5ldHdvcmtcQ3JlZGVudGlhbFN0b3JhZ2UuaCIgLz4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmls
dGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmls
dGVycwppbmRleCBmMGIwMjY2MDI0NDJkZGRkMDFmYTAxMjgwZTE2NjZjZGU0N2U2MTIxLi42MTY3
NWM0NWRlZmYwYWU3MjRjMjNjMDMwYTlkNmE1YmFjMDcxNzgwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC04
NzI3LDYgKzg3MjcsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cbmV0
d29ya1xCbG9iU3RvcmFnZURhdGEuaCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXG5ldHdvcms8
L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXG5ldHdvcmtcQ2VydGlmaWNhdGVJbmZvLmgiPgorICAgICAgPEZpbHRlcj5wbGF0Zm9y
bVxuZXR3b3JrPC9GaWx0ZXI+CisgICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxuZXR3b3JrXENvb2tpZVN0b3JhZ2UuaCI+CiAgICAgICA8RmlsdGVy
PnBsYXRmb3JtXG5ldHdvcms8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlZTAzNzlm
MWRhOTcxNDhlNGY4YTA5ZmEyM2I2ODk4OWEyZDk0NWFiLi5hYWI5NWJiZGI0YWJiZTI1NGJiZTcy
YzI1ZmQzZTE1ZGNjZTE3MzVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNTQ2OSw2ICsxNTQ2OSw3IEBACiAJCQkJMkVCNEJD
RDAxMjFGMDNFMzAwRUM0ODg1IC8qIEJsb2JSZXNvdXJjZUhhbmRsZS5jcHAgKi8sCiAJCQkJMkVC
NEJDRDExMjFGMDNFMzAwRUM0ODg1IC8qIEJsb2JSZXNvdXJjZUhhbmRsZS5oICovLAogCQkJCTJF
REVGMUYyMTIxQjBFRkMwMDcyNkRCMiAvKiBCbG9iU3RvcmFnZURhdGEuaCAqLywKKwkJCQk1RjJE
QkJFODE3OEUzMzY5MDAxNDE0ODYgLyogQ2VydGlmaWNhdGVJbmZvLmggKi8sCiAJCQkJRTEzRjAx
RUExMjcwRTEwRDAwREZCQTcxIC8qIENvb2tpZVN0b3JhZ2UuaCAqLywKIAkJCQk1MTRDNzY1ODBD
RTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVudGlhbC5jcHAgKi8sCiAJCQkJNTE0Qzc2NTkwQ0U5MjNB
MTAwN0VGM0NEIC8qIENyZWRlbnRpYWwuaCAqLywKQEAgLTE1NTI5LDcgKzE1NTMwLDYgQEAKIAkJ
CWNoaWxkcmVuID0gKAogCQkJCTUxNEM3NjQyMENFOTIzNEUwMDdFRjNDRCAvKiBBdXRoZW50aWNh
dGlvbk1hYy5oICovLAogCQkJCTUxNEM3NjQzMENFOTIzNEUwMDdFRjNDRCAvKiBBdXRoZW50aWNh
dGlvbk1hYy5tbSAqLywKLQkJCQk1RjJEQkJFODE3OEUzMzY5MDAxNDE0ODYgLyogQ2VydGlmaWNh
dGVJbmZvLmggKi8sCiAJCQkJNUYyREJCRTcxNzhFMzMyRDAwMTQxNDg2IC8qIENlcnRpZmljYXRl
SW5mb01hYy5tbSAqLywKIAkJCQlFMTQyNEM4RjE2NEI0NjBCMDBGMzJENDAgLyogQ29va2llSmFy
TWFjLm1tICovLAogCQkJCUUxM0YwMUYwMTI3MEUxOTAwMERGQkE3MSAvKiBDb29raWVTdG9yYWdl
TWFjLm1tICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9D
ZXJ0aWZpY2F0ZUluZm8uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQ2VydGlm
aWNhdGVJbmZvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWM5OTMwZTg3NjFkYjkxYjE5NDU4MDMwNDFiN2YyMjUw
YTM1MzYyMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvQ2VydGlmaWNhdGVJbmZvLmgKQEAgLTAsMCArMSw3NyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBQb3J0aW9ucyBDb3B5
cmlnaHQgKGMpIDIwMTAgTW90b3JvbGEgTW9iaWxpdHksIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDIwMTMgQ29tcGFueSAxMDAgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIENlcnRpZmljYXRlSW5mb19oCisj
ZGVmaW5lIENlcnRpZmljYXRlSW5mb19oCisKKyNpZiBQTEFURk9STShNQUMpIHx8IFVTRShDRk5F
VFdPUkspCisjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgorI2VsaWYgVVNFKFNPVVApCisjaW5j
bHVkZSA8Z2lvL2dpby5oPgorI2luY2x1ZGUgPHd0Zi9nb2JqZWN0L0dSZWZQdHIuaD4KKyNlbmRp
ZgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENlcnRpZmljYXRlSW5mbyB7CitwdWJs
aWM6CisgICAgQ2VydGlmaWNhdGVJbmZvKCk7CisKKyNpZiBQTEFURk9STShNQUMpCisgICAgZXhw
bGljaXQgQ2VydGlmaWNhdGVJbmZvKENGQXJyYXlSZWYgY2VydGlmaWNhdGVDaGFpbik7CisjZW5k
aWYKKworICAgIH5DZXJ0aWZpY2F0ZUluZm8oKTsKKworI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNF
KENGTkVUV09SSykKKyAgICB2b2lkIHNldENlcnRpZmljYXRlQ2hhaW4oQ0ZBcnJheVJlZik7Cisg
ICAgQ0ZBcnJheVJlZiBjZXJ0aWZpY2F0ZUNoYWluKCkgY29uc3Q7CisjaWZuZGVmIE5ERUJVRwor
ICAgIHZvaWQgZHVtcCgpIGNvbnN0OworI2VuZGlmCisKKyNlbGlmIFVTRShTT1VQKQorICAgIEdU
bHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUoKSBjb25zdCB7IHJldHVybiBtX2NlcnRpZmljYXRl
LmdldCgpOyB9CisgICAgdm9pZCBzZXRDZXJ0aWZpY2F0ZShHVGxzQ2VydGlmaWNhdGUqIGNlcnRp
ZmljYXRlKSB7IG1fY2VydGlmaWNhdGUgPSBjZXJ0aWZpY2F0ZTsgfQorCisgICAgR1Rsc0NlcnRp
ZmljYXRlRmxhZ3MgdGxzRXJyb3JzKCkgY29uc3QgeyByZXR1cm4gbV90bHNFcnJvcnM7IH0KKyAg
ICB2b2lkIHNldFRMU0Vycm9ycyhHVGxzQ2VydGlmaWNhdGVGbGFncyB0bHNFcnJvcnMpIHsgbV90
bHNFcnJvcnMgPSB0bHNFcnJvcnM7IH0KKyNlbmRpZgorCitwcml2YXRlOgorI2lmIFBMQVRGT1JN
KE1BQykgfHwgVVNFKENGTkVUV09SSykKKyAgICAvLyBDZXJ0aWZpY2F0ZSBjaGFpbiBpcyBub3Jt
YWxseSBwYXJ0IG9mIE5TL0NGVVJMUmVzcG9uc2UsIGJ1dCB0aGVyZSBpcyBubyB3YXkgdG8gcmUt
YWRkIGl0IHRvIGEgZGVzZXJpYWxpemVkIHJlc3BvbnNlIGFmdGVyIElQQy4KKyAgICBSZXRhaW5Q
dHI8Q0ZBcnJheVJlZj4gbV9jZXJ0aWZpY2F0ZUNoYWluOworI2VsaWYgVVNFKFNPVVApCisgICAg
R1JlZlB0cjxHVGxzQ2VydGlmaWNhdGU+IG1fY2VydGlmaWNhdGU7CisgICAgR1Rsc0NlcnRpZmlj
YXRlRmxhZ3MgbV90bHNFcnJvcnM7CisjZW5kaWYKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIENlcnRpZmljYXRlSW5mb19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlRXJyb3JCYXNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlRXJyb3JCYXNlLmgKaW5kZXggNWI3OTA5ZmRiMWRl
MDFkNjUzMzFjNzU5OTRmOTM4YzM3M2YyNzA1Yy4uZmZkY2FiNjA1ZTc3ZWVmYmJmMTg2MThjNWY5
ZTcwYjQ0Njg3NjdhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZUVycm9yQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VFcnJvckJhc2UuaApAQCAtMjYsNiArMjYsNyBAQAogI2lmbmRlZiBSZXNvdXJj
ZUVycm9yQmFzZV9oCiAjZGVmaW5lIFJlc291cmNlRXJyb3JCYXNlX2gKIAorI2luY2x1ZGUgIkNl
cnRpZmljYXRlSW5mby5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC01Miw2ICs1Myw5IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldElz
VGltZW91dChib29sIGlzVGltZW91dCkgeyBtX2lzVGltZW91dCA9IGlzVGltZW91dDsgfQogICAg
IGJvb2wgaXNUaW1lb3V0KCkgY29uc3QgeyByZXR1cm4gbV9pc1RpbWVvdXQ7IH0KIAorICAgIGNv
bnN0IENlcnRpZmljYXRlSW5mbyYgY2VydGlmaWNhdGVJbmZvKCkgY29uc3QgeyByZXR1cm4gbV9j
ZXJ0aWZpY2F0ZUluZm87IH0KKyAgICB2b2lkIHNldENlcnRpZmljYXRlSW5mbyhjb25zdCBDZXJ0
aWZpY2F0ZUluZm8mIGNlcnRpZmljYXRlSW5mbykgeyBtX2NlcnRpZmljYXRlSW5mbyA9IGNlcnRp
ZmljYXRlSW5mbzsgfQorCiAgICAgc3RhdGljIGJvb2wgY29tcGFyZShjb25zdCBSZXNvdXJjZUVy
cm9yJiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiBwcm90ZWN0ZWQ6CkBAIC04OSw2ICs5Myw3
IEBAIHByb3RlY3RlZDoKICAgICBpbnQgbV9lcnJvckNvZGU7CiAgICAgU3RyaW5nIG1fZmFpbGlu
Z1VSTDsKICAgICBTdHJpbmcgbV9sb2NhbGl6ZWREZXNjcmlwdGlvbjsKKyAgICBDZXJ0aWZpY2F0
ZUluZm8gbV9jZXJ0aWZpY2F0ZUluZm87CiAgICAgYm9vbCBtX2lzTnVsbDsKICAgICBib29sIG1f
aXNDYW5jZWxsYXRpb247CiAgICAgYm9vbCBtX2lzVGltZW91dDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaAppbmRleCAy
Y2ZiNTNhOTM3ZmI0YWI3ZmE2Yjg2YjQ3OTZiYjg2ZTI0ZWI3ZWIzLi5kMzBjOGE0MjNkMWZhNTk0
MDM4OTkyNzRiNDBhNzJjNTQ2NzcwZjRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCkBAIC0yNyw5ICsyNywxMCBA
QAogI2lmbmRlZiBSZXNvdXJjZVJlc3BvbnNlQmFzZV9oCiAjZGVmaW5lIFJlc291cmNlUmVzcG9u
c2VCYXNlX2gKIAorI2luY2x1ZGUgIkNlcnRpZmljYXRlSW5mby5oIgogI2luY2x1ZGUgIkhUVFBI
ZWFkZXJNYXAuaCIKLSNpbmNsdWRlICJVUkwuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRUaW1p
bmcuaCIKKyNpbmNsdWRlICJVUkwuaCIKIAogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtMTEyLDYgKzExMyw5IEBAIHB1YmxpYzoKICAgICBS
ZXNvdXJjZUxvYWRUaW1pbmcqIHJlc291cmNlTG9hZFRpbWluZygpIGNvbnN0OwogICAgIHZvaWQg
c2V0UmVzb3VyY2VMb2FkVGltaW5nKFBhc3NSZWZQdHI8UmVzb3VyY2VMb2FkVGltaW5nPik7CiAK
KyAgICBjb25zdCBDZXJ0aWZpY2F0ZUluZm8mIGNlcnRpZmljYXRlSW5mbygpIGNvbnN0IHsgcmV0
dXJuIG1fY2VydGlmaWNhdGVJbmZvOyB9CisgICAgdm9pZCBzZXRDZXJ0aWZpY2F0ZUluZm8oY29u
c3QgQ2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8pIHsgbV9jZXJ0aWZpY2F0ZUluZm8g
PSBjZXJ0aWZpY2F0ZUluZm87IH0KKwogICAgIC8vIFRoZSBSZXNvdXJjZVJlc3BvbnNlIHN1YmNs
YXNzIG1heSAic2hhZG93IiB0aGlzIG1ldGhvZCB0byBwcm92aWRlIHBsYXRmb3JtLXNwZWNpZmlj
IG1lbW9yeSB1c2FnZSBpbmZvcm1hdGlvbgogICAgIHVuc2lnbmVkIG1lbW9yeVVzYWdlKCkgY29u
c3QKICAgICB7CkBAIC0xNTIsNiArMTU2LDcgQEAgcHJvdGVjdGVkOgogICAgIHVuc2lnbmVkIG1f
Y29ubmVjdGlvbklEOwogICAgIGJvb2wgbV9jb25uZWN0aW9uUmV1c2VkIDogMTsKICAgICBSZWZQ
dHI8UmVzb3VyY2VMb2FkVGltaW5nPiBtX3Jlc291cmNlTG9hZFRpbWluZzsKKyAgICBDZXJ0aWZp
Y2F0ZUluZm8gbV9jZXJ0aWZpY2F0ZUluZm87CiAKICAgICBib29sIG1faXNOdWxsIDogMTsKICAg
ICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvQ2VydGlm
aWNhdGVJbmZvQ0ZOZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9D
ZXJ0aWZpY2F0ZUluZm9DRk5ldC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWE0NjE5ZDAwNTcxNWNiMjM4YTQ1
Yjg0ZmExOTU2NWRlYjY4NjJkMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2YvQ2VydGlmaWNhdGVJbmZvQ0ZOZXQuY3BwCkBAIC0wLDAgKzEsMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQ29tcGFueSAxMDAgSW5jLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQ2VydGlmaWNhdGVJbmZvLmgiCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworQ2VydGlmaWNhdGVJbmZvOjpDZXJ0aWZpY2F0ZUluZm8oKQor
eworfQorCitDZXJ0aWZpY2F0ZUluZm86On5DZXJ0aWZpY2F0ZUluZm8oKQoreworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2NmL1Jlc291cmNlUmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY2YvUmVzb3VyY2VSZXNwb25zZS5oCmluZGV4IDEzYTU4MTE4MGVhNjg4ZGRlMzc2ZTM1
ZjA3ZTJlZTMxNjM4YWQzNWUuLjVhMzZhMGU5NDYyMWYxZDRjNjllMjNjZDJkYmQ0NzVlYTA3MjFi
M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3Vy
Y2VSZXNwb25zZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVz
b3VyY2VSZXNwb25zZS5oCkBAIC0xMTcsMTAgKzExNyw2IEBAIHByaXZhdGU6CiAjaWYgUExBVEZP
Uk0oTUFDKQogICAgIG11dGFibGUgUmV0YWluUHRyPE5TVVJMUmVzcG9uc2U+IG1fbnNSZXNwb25z
ZTsKICNlbmRpZgotI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKENGTkVUV09SSykKLSAgICAvLyBD
ZXJ0aWZpY2F0ZSBjaGFpbiBpcyBub3JtYWxseSBwYXJ0IG9mIE5TL0NGVVJMUmVzcG9uc2UsIGJ1
dCB0aGVyZSBpcyBubyB3YXkgdG8gcmUtYWRkIGl0IHRvIGEgZGVzZXJpYWxpemVkIHJlc3BvbnNl
IGFmdGVyIElQQy4KLSAgICBSZXRhaW5QdHI8Q0ZBcnJheVJlZj4gbV9leHRlcm5hbENlcnRpZmlj
YXRlQ2hhaW47Ci0jZW5kaWYKICAgICBJbml0TGV2ZWwgbV9pbml0TGV2ZWw7CiAgICAgYm9vbCBt
X3BsYXRmb3JtUmVzcG9uc2VJc1VwVG9EYXRlOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0NlcnRpZmljYXRlSW5mby5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ2VydGlmaWNhdGVJbmZvLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGM4YjNjZGFhYmQ2YjY4NTQ5YWI2MTg5OTE1M2U4M2IxYzQ5YjE0MmIu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ2VydGlmaWNhdGVJbmZvLmgKKysrIC9kZXYvbnVs
bApAQCAtMSw1MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDZXJ0aWZpY2F0ZUluZm9f
aAotI2RlZmluZSBDZXJ0aWZpY2F0ZUluZm9faAotCi0jaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZVJlc3BvbnNlLmg+Ci0jaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLWNsYXNzIENlcnRpZmljYXRlSW5mbyB7Ci1wdWJsaWM6Ci0gICAgQ2VydGlmaWNh
dGVJbmZvKCk7Ci0gICAgZXhwbGljaXQgQ2VydGlmaWNhdGVJbmZvKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKLSAgICBleHBsaWNpdCBDZXJ0aWZpY2F0ZUluZm8oQ0ZBcnJheVJlZiBjZXJ0aWZp
Y2F0ZUNoYWluKTsKLQotICAgIHZvaWQgc2V0Q2VydGlmaWNhdGVDaGFpbihDRkFycmF5UmVmIGNl
cnRpZmljYXRlQ2hhaW4pIHsgbV9jZXJ0aWZpY2F0ZUNoYWluID0gY2VydGlmaWNhdGVDaGFpbjsg
fQotICAgIENGQXJyYXlSZWYgY2VydGlmaWNhdGVDaGFpbigpIGNvbnN0IHsgcmV0dXJuIG1fY2Vy
dGlmaWNhdGVDaGFpbi5nZXQoKTsgfQotCi0jaWZuZGVmIE5ERUJVRwotICAgIHZvaWQgZHVtcCgp
IGNvbnN0OwotI2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgUmV0YWluUHRyPENGQXJyYXlSZWY+IG1f
Y2VydGlmaWNhdGVDaGFpbjsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYg
Ly8gQ2VydGlmaWNhdGVJbmZvX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvbWFjL1Jlc291cmNlUmVzcG9uc2VNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZVJlc3BvbnNlTWFjLm1tCmluZGV4IDk3NGRmZWMzZTll
ZGEyN2E2N2QzMWE2MjE5NWM0NmRjODkwM2JmZjQuLmMwM2ZiZGQzM2NiNDQyY2JkMzk4NGRlNzgw
MzM2Nzk5YjQ2ZWYwZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvbWFjL1Jlc291cmNlUmVzcG9uc2VNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9tYWMvUmVzb3VyY2VSZXNwb25zZU1hYy5tbQpAQCAtMTc5LDEzICsxNzksMTMg
QEAgYm9vbCBSZXNvdXJjZVJlc3BvbnNlOjpwbGF0Zm9ybUNvbXBhcmUoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgYSwgY29uc3QgUmVzb3VyY2UKIHZvaWQgUmVzb3VyY2VSZXNwb25zZTo6c2V0Q2Vy
dGlmaWNhdGVDaGFpbihDRkFycmF5UmVmIGNlcnRpZmljYXRlQ2hhaW4pCiB7CiAgICAgQVNTRVJU
KCF3a0NvcHlOU1VSTFJlc3BvbnNlQ2VydGlmaWNhdGVDaGFpbihuc1VSTFJlc3BvbnNlKCkpKTsK
LSAgICBtX2V4dGVybmFsQ2VydGlmaWNhdGVDaGFpbiA9IGNlcnRpZmljYXRlQ2hhaW47CisgICAg
bV9jZXJ0aWZpY2F0ZUluZm8uc2V0Q2VydGlmaWNhdGVDaGFpbihjZXJ0aWZpY2F0ZUNoYWluKTsK
IH0KIAogUmV0YWluUHRyPENGQXJyYXlSZWY+IFJlc291cmNlUmVzcG9uc2U6OmNlcnRpZmljYXRl
Q2hhaW4oKSBjb25zdAogewotICAgIGlmIChtX2V4dGVybmFsQ2VydGlmaWNhdGVDaGFpbikKLSAg
ICAgICAgcmV0dXJuIG1fZXh0ZXJuYWxDZXJ0aWZpY2F0ZUNoYWluOworICAgIGlmIChtX2NlcnRp
ZmljYXRlSW5mby5jZXJ0aWZpY2F0ZUNoYWluKCkpCisgICAgICAgIHJldHVybiBhZG9wdENGKG1f
Y2VydGlmaWNhdGVJbmZvLmNlcnRpZmljYXRlQ2hhaW4oKSk7CiAKICAgICByZXR1cm4gYWRvcHRD
Rih3a0NvcHlOU1VSTFJlc3BvbnNlQ2VydGlmaWNhdGVDaGFpbihuc1VSTFJlc3BvbnNlKCkpKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0
aWZpY2F0ZUluZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nl
cnRpZmljYXRlSW5mby5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZmFlNGRi
ZjMxMDI1YjE5NGJmNTgwOWRhZmFmYzM5MDJlZmU5ZDguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9z
b3VwL0NlcnRpZmljYXRlSW5mby5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2MiArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDEyIElnYWxpYSBTLkwuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJDZXJ0aWZpY2F0ZUluZm8uaCIKLQotI2luY2x1ZGUgPFJl
c291cmNlRXJyb3IuaD4KLSNpbmNsdWRlIDxSZXNvdXJjZVJlc3BvbnNlLmg+Ci0jaW5jbHVkZSA8
bGlic291cC9zb3VwLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ2VydGlmaWNhdGVJbmZv
OjpDZXJ0aWZpY2F0ZUluZm8oKQotICAgIDogbV90bHNFcnJvcnMoc3RhdGljX2Nhc3Q8R1Rsc0Nl
cnRpZmljYXRlRmxhZ3M+KDApKQotewotfQotCi1DZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmljYXRl
SW5mbyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKLSAgICA6IG1fY2VydGlmaWNh
dGUocmVzcG9uc2Uuc291cE1lc3NhZ2VDZXJ0aWZpY2F0ZSgpKQotICAgICwgbV90bHNFcnJvcnMo
cmVzcG9uc2Uuc291cE1lc3NhZ2VUTFNFcnJvcnMoKSkKLXsKLX0KLQotQ2VydGlmaWNhdGVJbmZv
OjpDZXJ0aWZpY2F0ZUluZm8oY29uc3QgUmVzb3VyY2VFcnJvciYgcmVzb3VyY2VFcnJvcikKLSAg
ICA6IG1fY2VydGlmaWNhdGUocmVzb3VyY2VFcnJvci5jZXJ0aWZpY2F0ZSgpKQotICAgICwgbV90
bHNFcnJvcnMoc3RhdGljX2Nhc3Q8R1Rsc0NlcnRpZmljYXRlRmxhZ3M+KHJlc291cmNlRXJyb3Iu
dGxzRXJyb3JzKCkpKQotewotfQotCi1DZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmljYXRlSW5mbyhH
VGxzQ2VydGlmaWNhdGUqIGNlcnRpZmljYXRlLCBHVGxzQ2VydGlmaWNhdGVGbGFncyB0bHNFcnJv
cnMpCi0gICAgOiBtX2NlcnRpZmljYXRlKGNlcnRpZmljYXRlKQotICAgICwgbV90bHNFcnJvcnMo
dGxzRXJyb3JzKQotewotfQotCi1DZXJ0aWZpY2F0ZUluZm86On5DZXJ0aWZpY2F0ZUluZm8oKQot
ewotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDk0ZTRmZjU4NTUwODc1OGU1MGJhOTI1ZjU3NWQxYjk1YjJkZmU4MGMu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5oCisrKyAvZGV2L251
bGwKQEAgLTEsNTggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDIwMTAgTW90
b3JvbGEgTW9iaWxpdHksIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
Zm5kZWYgQ2VydGlmaWNhdGVJbmZvX2gKLSNkZWZpbmUgQ2VydGlmaWNhdGVJbmZvX2gKLQotI2lu
Y2x1ZGUgPGxpYnNvdXAvc291cC5oPgotI2luY2x1ZGUgPHd0Zi9nb2JqZWN0L0dSZWZQdHIuaD4K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBSZXNvdXJjZUVycm9yOwotY2xhc3MgUmVz
b3VyY2VSZXNwb25zZTsKLQotY2xhc3MgQ2VydGlmaWNhdGVJbmZvIHsKLXB1YmxpYzoKLSAgICBD
ZXJ0aWZpY2F0ZUluZm8oKTsKLSAgICBleHBsaWNpdCBDZXJ0aWZpY2F0ZUluZm8oY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwotICAgIGV4cGxpY2l0IENlcnRpZmljYXRlSW5mbyhj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7Ci0gICAgZXhwbGljaXQgQ2VydGlmaWNhdGVJ
bmZvKEdUbHNDZXJ0aWZpY2F0ZSosIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzKTsKLSAgICB+Q2VydGlm
aWNhdGVJbmZvKCk7Ci0KLSAgICBHVGxzQ2VydGlmaWNhdGUqIGNlcnRpZmljYXRlKCkgY29uc3Qg
eyByZXR1cm4gbV9jZXJ0aWZpY2F0ZS5nZXQoKTsgfQotICAgIHZvaWQgc2V0Q2VydGlmaWNhdGUo
R1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZpY2F0ZSkgeyBtX2NlcnRpZmljYXRlID0gY2VydGlmaWNh
dGU7IH0KLSAgICBHVGxzQ2VydGlmaWNhdGVGbGFncyB0bHNFcnJvcnMoKSBjb25zdCB7IHJldHVy
biBtX3Rsc0Vycm9yczsgfQotICAgIHZvaWQgc2V0VExTRXJyb3JzKEdUbHNDZXJ0aWZpY2F0ZUZs
YWdzIHRsc0Vycm9ycykgeyBtX3Rsc0Vycm9ycyA9IHRsc0Vycm9yczsgfQotCi1wcml2YXRlOgot
ICAgIEdSZWZQdHI8R1Rsc0NlcnRpZmljYXRlPiBtX2NlcnRpZmljYXRlOwotICAgIEdUbHNDZXJ0
aWZpY2F0ZUZsYWdzIG1fdGxzRXJyb3JzOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gQ2VydGlmaWNhdGVJbmZvX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xNjJhNzc4MWFkMWY3YzA0NDUxNmU4ZjhmMDViNjE2NjJjZGU1MjlkCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmlj
YXRlSW5mb1NvdXAuY3BwCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTIgSWdhbGlhIFMuTC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBDb21wYW55IDEwMCBJbmMuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJDZXJ0aWZpY2F0ZUluZm8u
aCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitDZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmljYXRl
SW5mbygpCisgICAgOiBtX3Rsc0Vycm9ycyhzdGF0aWNfY2FzdDxHVGxzQ2VydGlmaWNhdGVGbGFn
cz4oMCkpCit7Cit9CisKK0NlcnRpZmljYXRlSW5mbzo6fkNlcnRpZmljYXRlSW5mbygpCit7Cit9
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUVycm9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvci5oCmluZGV4IDFhNzA1ZjE1ZWQ3ZjM4Zjhk
M2FmZWQ3MDExYTMwYzA0YmNjNzhmMTguLmExMGM2Y2I4N2EzZWMyZjZkNDJjZDVjM2ZkMjcxNDE0
Yzg5YTRlMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9SZXNvdXJjZUVycm9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9z
b3VwL1Jlc291cmNlRXJyb3IuaApAQCAtNDAsMTIgKzQwLDEwIEBAIGNsYXNzIFJlc291cmNlRXJy
b3IgOiBwdWJsaWMgUmVzb3VyY2VFcnJvckJhc2UKIHB1YmxpYzoKICAgICBSZXNvdXJjZUVycm9y
KGNvbnN0IFN0cmluZyYgZG9tYWluLCBpbnQgZXJyb3JDb2RlLCBjb25zdCBTdHJpbmcmIGZhaWxp
bmdVUkwsIGNvbnN0IFN0cmluZyYgbG9jYWxpemVkRGVzY3JpcHRpb24pCiAgICAgICAgIDogUmVz
b3VyY2VFcnJvckJhc2UoZG9tYWluLCBlcnJvckNvZGUsIGZhaWxpbmdVUkwsIGxvY2FsaXplZERl
c2NyaXB0aW9uKQotICAgICAgICAsIG1fdGxzRXJyb3JzKDApCiAgICAgewogICAgIH0KIAogICAg
IFJlc291cmNlRXJyb3IoKQotICAgICAgICA6IG1fdGxzRXJyb3JzKDApCiAgICAgewogICAgIH0K
IApAQCAtNTYsMTcgKzU0LDE0IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VFcnJvciB0
aW1lb3V0RXJyb3IoY29uc3QgU3RyaW5nJiBmYWlsaW5nVVJMKTsKICAgICBzdGF0aWMgUmVzb3Vy
Y2VFcnJvciBhdXRoZW50aWNhdGlvbkVycm9yKFNvdXBNZXNzYWdlKik7CiAKLSAgICB1bnNpZ25l
ZCB0bHNFcnJvcnMoKSBjb25zdCB7IHJldHVybiBtX3Rsc0Vycm9yczsgfQotICAgIHZvaWQgc2V0
VExTRXJyb3JzKHVuc2lnbmVkIHRsc0Vycm9ycykgeyBtX3Rsc0Vycm9ycyA9IHRsc0Vycm9yczsg
fQotICAgIEdUbHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUoKSBjb25zdCB7IHJldHVybiBtX2Nl
cnRpZmljYXRlLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRDZXJ0aWZpY2F0ZShHVGxzQ2VydGlmaWNh
dGUqIGNlcnRpZmljYXRlKSB7IG1fY2VydGlmaWNhdGUgPSBjZXJ0aWZpY2F0ZTsgfQorICAgIHVu
c2lnbmVkIHRsc0Vycm9ycygpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGVJbmZvLnRsc0Vy
cm9ycygpOyB9CisgICAgdm9pZCBzZXRUTFNFcnJvcnModW5zaWduZWQgdGxzRXJyb3JzKSB7IG1f
Y2VydGlmaWNhdGVJbmZvLnNldFRMU0Vycm9ycyhzdGF0aWNfY2FzdDxHVGxzQ2VydGlmaWNhdGVG
bGFncz4odGxzRXJyb3JzKSk7IH0KKyAgICBHVGxzQ2VydGlmaWNhdGUqIGNlcnRpZmljYXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9jZXJ0aWZpY2F0ZUluZm8uY2VydGlmaWNhdGUoKTsgfQorICAgIHZv
aWQgc2V0Q2VydGlmaWNhdGUoR1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZpY2F0ZSkgeyBtX2NlcnRp
ZmljYXRlSW5mby5zZXRDZXJ0aWZpY2F0ZShjZXJ0aWZpY2F0ZSk7IH0KIAogcHJpdmF0ZToKICAg
ICB2b2lkIHBsYXRmb3JtQ29weShSZXNvdXJjZUVycm9yJikgY29uc3Q7CiAgICAgc3RhdGljIGJv
b2wgcGxhdGZvcm1Db21wYXJlKGNvbnN0IFJlc291cmNlRXJyb3ImIGEsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGIpOwotCi0gICAgdW5zaWduZWQgbV90bHNFcnJvcnM7Ci0gICAgR1JlZlB0cjxHVGxz
Q2VydGlmaWNhdGU+IG1fY2VydGlmaWNhdGU7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvclNvdXAuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3JTb3VwLmNwcApp
bmRleCBiYTg2NTdiNTA1MDkwNTI1N2MxZGE0Y2E3OTlmNzM3NmFkY2RkYzUyLi4xYjg5Y2UyYzFj
YTkxZGE3NDMwOTVlMmM2NTEwMWIyYTE2MzYyYmVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvclNvdXAuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUVycm9yU291cC5jcHAKQEAg
LTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDEyIElnYWxpYSBTLkwuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQ29tcGFueSAxMDAgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC05OCw4ICs5OSw3IEBAIFJlc291cmNlRXJyb3IgUmVzb3VyY2VFcnJvcjo6
dGltZW91dEVycm9yKGNvbnN0IFN0cmluZyYgZmFpbGluZ1VSTCkKIAogdm9pZCBSZXNvdXJjZUVy
cm9yOjpwbGF0Zm9ybUNvcHkoUmVzb3VyY2VFcnJvciYgZXJyb3JDb3B5KSBjb25zdAogewotICAg
IGVycm9yQ29weS5tX2NlcnRpZmljYXRlID0gbV9jZXJ0aWZpY2F0ZTsKLSAgICBlcnJvckNvcHku
bV90bHNFcnJvcnMgPSBtX3Rsc0Vycm9yczsKKyAgICBlcnJvckNvcHkuc2V0Q2VydGlmaWNhdGVJ
bmZvKG1fY2VydGlmaWNhdGVJbmZvKTsKIH0KIAogYm9vbCBSZXNvdXJjZUVycm9yOjpwbGF0Zm9y
bUNvbXBhcmUoY29uc3QgUmVzb3VyY2VFcnJvciYgYSwgY29uc3QgUmVzb3VyY2VFcnJvciYgYikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJj
ZVJlc3BvbnNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3Vy
Y2VSZXNwb25zZS5oCmluZGV4IDQ4OTFmOTM1ZmNiYzdmNzcyM2E2NjE1N2VlMmVkOTMzY2Y1M2Uw
ZjcuLjM5ZTFkMzdmZWUzZTM0NmQxZjg4NGY4N2M4YTNlMDNhZTZmZjMxMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZVJlc3BvbnNlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlUmVzcG9u
c2UuaApAQCAtMzgsMjEgKzM4LDE4IEBAIHB1YmxpYzoKICAgICBSZXNvdXJjZVJlc3BvbnNlKCkK
ICAgICAgICAgOiBSZXNvdXJjZVJlc3BvbnNlQmFzZSgpCiAgICAgICAgICwgbV9zb3VwRmxhZ3Mo
c3RhdGljX2Nhc3Q8U291cE1lc3NhZ2VGbGFncz4oMCkpCi0gICAgICAgICwgbV90bHNFcnJvcnMo
c3RhdGljX2Nhc3Q8R1Rsc0NlcnRpZmljYXRlRmxhZ3M+KDApKQogICAgIHsKICAgICB9CiAKICAg
ICBSZXNvdXJjZVJlc3BvbnNlKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBl
LCBsb25nIGxvbmcgZXhwZWN0ZWRMZW5ndGgsIGNvbnN0IFN0cmluZyYgdGV4dEVuY29kaW5nTmFt
ZSwgY29uc3QgU3RyaW5nJiBmaWxlbmFtZSkKICAgICAgICAgOiBSZXNvdXJjZVJlc3BvbnNlQmFz
ZSh1cmwsIG1pbWVUeXBlLCBleHBlY3RlZExlbmd0aCwgdGV4dEVuY29kaW5nTmFtZSwgZmlsZW5h
bWUpCiAgICAgICAgICwgbV9zb3VwRmxhZ3Moc3RhdGljX2Nhc3Q8U291cE1lc3NhZ2VGbGFncz4o
MCkpCi0gICAgICAgICwgbV90bHNFcnJvcnMoc3RhdGljX2Nhc3Q8R1Rsc0NlcnRpZmljYXRlRmxh
Z3M+KDApKQogICAgIHsKICAgICB9CiAKICAgICBSZXNvdXJjZVJlc3BvbnNlKFNvdXBNZXNzYWdl
KiBzb3VwTWVzc2FnZSkKICAgICAgICAgOiBSZXNvdXJjZVJlc3BvbnNlQmFzZSgpCiAgICAgICAg
ICwgbV9zb3VwRmxhZ3Moc3RhdGljX2Nhc3Q8U291cE1lc3NhZ2VGbGFncz4oMCkpCi0gICAgICAg
ICwgbV90bHNFcnJvcnMoc3RhdGljX2Nhc3Q8R1Rsc0NlcnRpZmljYXRlRmxhZ3M+KDApKQogICAg
IHsKICAgICAgICAgdXBkYXRlRnJvbVNvdXBNZXNzYWdlKHNvdXBNZXNzYWdlKTsKICAgICB9CkBA
IC02NywxMSArNjQsMTEgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgc25pZmZlZENvbnRl
bnRUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9zbmlmZmVkQ29udGVudFR5cGU7IH0KICAgICB2b2lk
IHNldFNuaWZmZWRDb250ZW50VHlwZShjb25zdCBTdHJpbmcmIHZhbHVlKSB7IG1fc25pZmZlZENv
bnRlbnRUeXBlID0gdmFsdWU7IH0KIAotICAgIEdUbHNDZXJ0aWZpY2F0ZSogc291cE1lc3NhZ2VD
ZXJ0aWZpY2F0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGUuZ2V0KCk7IH0KLSAgICB2
b2lkIHNldFNvdXBNZXNzYWdlQ2VydGlmaWNhdGUoR1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZpY2F0
ZSkgeyBtX2NlcnRpZmljYXRlID0gY2VydGlmaWNhdGU7IH0KKyAgICBHVGxzQ2VydGlmaWNhdGUq
IHNvdXBNZXNzYWdlQ2VydGlmaWNhdGUoKSBjb25zdCB7IHJldHVybiBtX2NlcnRpZmljYXRlSW5m
by5jZXJ0aWZpY2F0ZSgpOyB9CisgICAgdm9pZCBzZXRTb3VwTWVzc2FnZUNlcnRpZmljYXRlKEdU
bHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUpIHsgbV9jZXJ0aWZpY2F0ZUluZm8uc2V0Q2VydGlm
aWNhdGUoY2VydGlmaWNhdGUpOyB9CiAKLSAgICBHVGxzQ2VydGlmaWNhdGVGbGFncyBzb3VwTWVz
c2FnZVRMU0Vycm9ycygpIGNvbnN0IHsgcmV0dXJuIG1fdGxzRXJyb3JzOyB9Ci0gICAgdm9pZCBz
ZXRTb3VwTWVzc2FnZVRMU0Vycm9ycyhHVGxzQ2VydGlmaWNhdGVGbGFncyB0bHNFcnJvcnMpIHsg
bV90bHNFcnJvcnMgPSB0bHNFcnJvcnM7IH0KKyAgICBHVGxzQ2VydGlmaWNhdGVGbGFncyBzb3Vw
TWVzc2FnZVRMU0Vycm9ycygpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGVJbmZvLnRsc0Vy
cm9ycygpOyB9CisgICAgdm9pZCBzZXRTb3VwTWVzc2FnZVRMU0Vycm9ycyhHVGxzQ2VydGlmaWNh
dGVGbGFncyB0bHNFcnJvcnMpIHsgbV9jZXJ0aWZpY2F0ZUluZm8uc2V0VExTRXJyb3JzKHRsc0Vy
cm9ycyk7IH0KIAogICAgIGJvb2wgcGxhdGZvcm1SZXNwb25zZUlzVXBUb0RhdGUoKSBjb25zdCB7
IHJldHVybiBmYWxzZTsgfQogCkBAIC04MCw4ICs3Nyw2IEBAIHByaXZhdGU6CiAKICAgICBTb3Vw
TWVzc2FnZUZsYWdzIG1fc291cEZsYWdzOwogICAgIFN0cmluZyBtX3NuaWZmZWRDb250ZW50VHlw
ZTsKLSAgICBHUmVmUHRyPEdUbHNDZXJ0aWZpY2F0ZT4gbV9jZXJ0aWZpY2F0ZTsKLSAgICBHVGxz
Q2VydGlmaWNhdGVGbGFncyBtX3Rsc0Vycm9yczsKIAogICAgIHZvaWQgZG9VcGRhdGVSZXNvdXJj
ZVJlc3BvbnNlKCkgeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvc291cC9SZXNvdXJjZVJlc3BvbnNlU291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VSZXNwb25zZVNvdXAuY3BwCmluZGV4IDljM2IwZWRi
ZDlmZDNjYjY3MDhhMGY5OWZlNDJkN2IyNDU1ZDI2ZjAuLjk4ZDE4Y2YyMjViNzhmNmQwMDdhMzJh
MDgxNWZlOWY3ZDQ4MmY3N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvc291cC9SZXNvdXJjZVJlc3BvbnNlU291cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlUmVzcG9uc2VTb3VwLmNwcApAQCAtNTIsNyAr
NTIsNyBAQCBTb3VwTWVzc2FnZSogUmVzb3VyY2VSZXNwb25zZTo6dG9Tb3VwTWVzc2FnZSgpIGNv
bnN0CiAKICAgICBzb3VwX21lc3NhZ2Vfc2V0X2ZsYWdzKHNvdXBNZXNzYWdlLCBtX3NvdXBGbGFn
cyk7CiAKLSAgICBnX29iamVjdF9zZXQoR19PQkpFQ1Qoc291cE1lc3NhZ2UpLCAidGxzLWNlcnRp
ZmljYXRlIiwgbV9jZXJ0aWZpY2F0ZS5nZXQoKSwgInRscy1lcnJvcnMiLCBtX3Rsc0Vycm9ycywg
TlVMTCk7CisgICAgZ19vYmplY3Rfc2V0KEdfT0JKRUNUKHNvdXBNZXNzYWdlKSwgInRscy1jZXJ0
aWZpY2F0ZSIsIG1fY2VydGlmaWNhdGVJbmZvLmNlcnRpZmljYXRlKCksICJ0bHMtZXJyb3JzIiwg
bV9jZXJ0aWZpY2F0ZUluZm8udGxzRXJyb3JzKCksIE5VTEwpOwogCiAgICAgLy8gQm9keSBkYXRh
IGlzIG5vdCBpbiB0aGUgbWVzc2FnZS4KICAgICByZXR1cm4gc291cE1lc3NhZ2U7CkBAIC02OCw4
ICs2OCwxMCBAQCB2b2lkIFJlc291cmNlUmVzcG9uc2U6OnVwZGF0ZUZyb21Tb3VwTWVzc2FnZShT
b3VwTWVzc2FnZSogc291cE1lc3NhZ2UpCiAgICAgbV9zb3VwRmxhZ3MgPSBzb3VwX21lc3NhZ2Vf
Z2V0X2ZsYWdzKHNvdXBNZXNzYWdlKTsKIAogICAgIEdUbHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNh
dGUgPSAwOwotICAgIHNvdXBfbWVzc2FnZV9nZXRfaHR0cHNfc3RhdHVzKHNvdXBNZXNzYWdlLCAm
Y2VydGlmaWNhdGUsICZtX3Rsc0Vycm9ycyk7Ci0gICAgbV9jZXJ0aWZpY2F0ZSA9IGNlcnRpZmlj
YXRlOworICAgIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzIHRsc0Vycm9yczsKKyAgICBzb3VwX21lc3Nh
Z2VfZ2V0X2h0dHBzX3N0YXR1cyhzb3VwTWVzc2FnZSwgJmNlcnRpZmljYXRlLCAmdGxzRXJyb3Jz
KTsKKyAgICBtX2NlcnRpZmljYXRlSW5mby5zZXRUTFNFcnJvcnModGxzRXJyb3JzKTsKKyAgICBt
X2NlcnRpZmljYXRlSW5mby5zZXRDZXJ0aWZpY2F0ZShjZXJ0aWZpY2F0ZSk7CiAKICAgICB1cGRh
dGVGcm9tU291cE1lc3NhZ2VIZWFkZXJzKHNvdXBNZXNzYWdlLT5yZXNwb25zZV9oZWFkZXJzKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL0FzeW5jaHJvbm91
c05ldHdvcmtMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3Mv
QXN5bmNocm9ub3VzTmV0d29ya0xvYWRlckNsaWVudC5jcHAKaW5kZXggZDFjOTNkNDNkYzM5NzQ2
NjA4ZjIwNGU3ZGNmOWM4MjljYThjZjNjZS4uMjFhYWQ4M2Q2OGIxZmYxZWM2MzQ3YmI4MzhjNmYy
YmYzOWU3MjlkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvQXN5
bmNocm9ub3VzTmV0d29ya0xvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvQXN5bmNocm9ub3VzTmV0d29ya0xvYWRlckNsaWVudC5jcHAKQEAgLTMyLDYg
KzMyLDcgQEAKICNpbmNsdWRlICJXZWJSZXNvdXJjZUxvYWRlck1lc3NhZ2VzLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9DZXJ0aWZpY2F0ZUluZm8uaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNl
RXJyb3IuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlUmVzcG9uc2UuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL1NoYXJlZEJ1ZmZlci5oPgogI2luY2x1ZGUgPHd0Zi9DdXJyZW50VGltZS5oPgog
CkBAIC02Myw3ICs2NCw3IEBAIHZvaWQgQXN5bmNocm9ub3VzTmV0d29ya0xvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShOZXR3CiAKIHZvaWQgQXN5bmNo
cm9ub3VzTmV0d29ya0xvYWRlckNsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKE5ldHdvcmtSZXNv
dXJjZUxvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsK
LSAgICBsb2FkZXItPnNlbmRBYm9ydGluZ09uRmFpbHVyZShNZXNzYWdlczo6V2ViUmVzb3VyY2VM
b2FkZXI6OkRpZFJlY2VpdmVSZXNwb25zZVdpdGhDZXJ0aWZpY2F0ZUluZm8ocmVzcG9uc2UsIENl
cnRpZmljYXRlSW5mbyhyZXNwb25zZSksIGxvYWRlci0+aXNMb2FkaW5nTWFpblJlc291cmNlKCkp
KTsKKyAgICBsb2FkZXItPnNlbmRBYm9ydGluZ09uRmFpbHVyZShNZXNzYWdlczo6V2ViUmVzb3Vy
Y2VMb2FkZXI6OkRpZFJlY2VpdmVSZXNwb25zZVdpdGhDZXJ0aWZpY2F0ZUluZm8ocmVzcG9uc2Us
IHJlc3BvbnNlLmNlcnRpZmljYXRlSW5mbygpLCBsb2FkZXItPmlzTG9hZGluZ01haW5SZXNvdXJj
ZSgpKSk7CiB9CiAKIHZvaWQgQXN5bmNocm9ub3VzTmV0d29ya0xvYWRlckNsaWVudDo6ZGlkUmVj
ZWl2ZUJ1ZmZlcihOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGxvYWRlciwgU2hhcmVkQnVmZmVyKiBi
dWZmZXIsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFjLm1tIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL21hYy9XZWJDb3JlQXJndW1lbnRDb2RlcnNNYWMubW0KaW5kZXggMDc3ZTNkODdhZmY3
Y2Y4NDJlY2Q1ZWMwMWVjMTU1ZjYzYzgwYjk1Ni4uZTU0MTQ4YTM3NGFlMDVmMjc4NzkwMGZmZmIw
M2ExYTIxYTkzYWQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJD
b3JlQXJndW1lbnRDb2RlcnNNYWMubW0KKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9X
ZWJDb3JlQXJndW1lbnRDb2RlcnNNYWMubW0KQEAgLTM0LDYgKzM0LDcgQEAKICNpbXBvcnQgPFdl
YkNvcmUvS2V5Ym9hcmRFdmVudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJjZUVycm9yLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgorI2ltcG9ydCA8V2ViQ29yZS9S
ZXNvdXJjZVJlc3BvbnNlLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvc291cC9XZWJDb3JlQXJndW1lbnRDb2RlcnNTb3Vw
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1Nv
dXAuY3BwCmluZGV4IDA3Y2QxMzY2NGM1MTFmYTlmODNhODMxMDgxZDc5ZmFkMTI5OGExNzEuLmFk
OTgwNzcyODJkZGFiZjZiODZlYzA5OTY4NmM0ZDI2NDdkMjYxMGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3Bw
CkBAIC0xMjAsNyArMTIwLDcgQEAgYm9vbCBBcmd1bWVudENvZGVyPENlcnRpZmljYXRlSW5mbz46
OmRlY29kZVBsYXRmb3JtRGF0YShBcmd1bWVudERlY29kZXImIGRlY29kZXIKIAogdm9pZCBBcmd1
bWVudENvZGVyPFJlc291cmNlRXJyb3I+OjplbmNvZGVQbGF0Zm9ybURhdGEoQXJndW1lbnRFbmNv
ZGVyJiBlbmNvZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiByZXNvdXJjZUVycm9yKQogewotICAg
IGVuY29kZXIgPDwgQ2VydGlmaWNhdGVJbmZvKHJlc291cmNlRXJyb3IpOworICAgIGVuY29kZXIg
PDwgcmVzb3VyY2VFcnJvci5jZXJ0aWZpY2F0ZUluZm8oKTsKIH0KIAogYm9vbCBBcmd1bWVudENv
ZGVyPFJlc291cmNlRXJyb3I+OjpkZWNvZGVQbGF0Zm9ybURhdGEoQXJndW1lbnREZWNvZGVyJiBk
ZWNvZGVyLCBSZXNvdXJjZUVycm9yJiByZXNvdXJjZUVycm9yKQpAQCAtMTI5LDggKzEyOSw3IEBA
IGJvb2wgQXJndW1lbnRDb2RlcjxSZXNvdXJjZUVycm9yPjo6ZGVjb2RlUGxhdGZvcm1EYXRhKEFy
Z3VtZW50RGVjb2RlciYgZGVjb2RlciwKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGNlcnRpZmlj
YXRlSW5mbykpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHJlc291cmNlRXJyb3Iuc2V0
Q2VydGlmaWNhdGUoY2VydGlmaWNhdGVJbmZvLmNlcnRpZmljYXRlKCkpOwotICAgIHJlc291cmNl
RXJyb3Iuc2V0VExTRXJyb3JzKGNlcnRpZmljYXRlSW5mby50bHNFcnJvcnMoKSk7CisgICAgcmVz
b3VyY2VFcnJvci5zZXRDZXJ0aWZpY2F0ZUluZm8oY2VydGlmaWNhdGVJbmZvKTsKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0Q2VydGlmaWNhdGVJbmZvUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvV2ViS2l0Q2VydGlmaWNhdGVJbmZvUHJpdmF0ZS5oCmluZGV4IGFiM2YxZWYz
OTRjOGUyZGZiMTRkNTRiOWEwMTNmZjFjMzcwZTk1YzcuLmJjYzA2ZDIyOGZkNDE0ZjA5MjJhNGFl
NDE0MDM5Mzk4Y2QzNTNjNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZ3RrL1dlYktpdENlcnRpZmljYXRlSW5mb1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRDZXJ0aWZpY2F0ZUluZm9Qcml2YXRlLmgKQEAgLTI2
LDggKzI2LDkgQEAKIAogc3RydWN0IF9XZWJLaXRDZXJ0aWZpY2F0ZUluZm8gewogICAgIF9XZWJL
aXRDZXJ0aWZpY2F0ZUluZm8oR1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZpY2F0ZSwgR1Rsc0NlcnRp
ZmljYXRlRmxhZ3MgdGxzRXJyb3JzKQotICAgICAgICA6IGNlcnRpZmljYXRlSW5mbyhjZXJ0aWZp
Y2F0ZSwgdGxzRXJyb3JzKQogICAgIHsKKyAgICAgICAgY2VydGlmaWNhdGVJbmZvLnNldENlcnRp
ZmljYXRlKGNlcnRpZmljYXRlKTsKKyAgICAgICAgY2VydGlmaWNhdGVJbmZvLnNldFRMU0Vycm9y
cyh0bHNFcnJvcnMpOwogICAgIH0KIAogICAgIF9XZWJLaXRDZXJ0aWZpY2F0ZUluZm8oV2ViS2l0
Q2VydGlmaWNhdGVJbmZvKiBpbmZvKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5oCmluZGV4IDliYjdlMzlkMjRlN2Q1ZDY5NjMwNDUzZTc0NTUzYTAwZWJkZmRkOWYuLjM3Nzgw
NDJjYjE1ZGFkNjYwYmE3OWM2NjljMGY2MGViMGI2MzM5NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTEwMiw2ICsxMDIsNyBAQCBjbGFzcyBDb25uZWN0aW9u
OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTsK
K2NsYXNzIENlcnRpZmljYXRlSW5mbzsKIGNsYXNzIEN1cnNvcjsKIGNsYXNzIERyYWdEYXRhOwog
Y2xhc3MgRmxvYXRSZWN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9O
ZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggYzdmYjRkN2U2ODE1OTY2YTJmYzgy
MTFmMWQ1YjZjODljNjcxNmY0Zi4uYjE2YTAxNWU2YTE0NTQxNzdmNmM0YjViOTEwM2NhNTU5MTMz
ODlhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJl
c291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBXZWJSZXNvdXJj
ZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlV2l0aENlcnRpZmljYXRlSW5mbyhjb25zdCBSZXNv
dXJjZVJlc3AKICAgICBSZWY8V2ViUmVzb3VyY2VMb2FkZXI+IHByb3RlY3QoKnRoaXMpOwogCiAg
ICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZUNvcHkocmVzcG9uc2UpOwotICAgIHJlc3BvbnNl
Q29weS5zZXRDZXJ0aWZpY2F0ZUNoYWluKGNlcnRpZmljYXRlSW5mby5jZXJ0aWZpY2F0ZUNoYWlu
KCkpOworICAgIHJlc3BvbnNlQ29weS5zZXRDZXJ0aWZpY2F0ZUluZm8oY2VydGlmaWNhdGVJbmZv
KTsKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZUNvcHkpOwog
CiAgICAgLy8gSWYgbV9jb3JlTG9hZGVyIGJlY29tZXMgbnVsbCBhcyBhIHJlc3VsdCBvZiB0aGUg
ZGlkUmVjZWl2ZVJlc3BvbnNlIGNhbGxiYWNrLCB3ZSBjYW4ndCB1c2UgdGhlIHNlbmQgZnVuY3Rp
b24oKS4gCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IGIxYTk5OWRjZjRl
YTM2MzAwYzU1MDEyYzk3MzBmYTE3OGRmNmVlOTcuLjg3ZjE0OTE2NjUzMjFmYzcxMTE3MTdmNjUw
NmIxODhiMzIzMTdmMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC00
NDIsNyArNDQyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRDb21t
aXRMb2FkKCkKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgogCi0gICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDb21taXRMb2FkRm9yRnJhbWUobV9mcmFt
ZS0+ZnJhbWVJRCgpLCByZXNwb25zZS5taW1lVHlwZSgpLCBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+
bG9hZGVyKCkubG9hZFR5cGUoKSwgQ2VydGlmaWNhdGVJbmZvKHJlc3BvbnNlKSwgSW5qZWN0ZWRC
dW5kbGVVc2VyTWVzc2FnZUVuY29kZXIodXNlckRhdGEuZ2V0KCkpKSk7CisgICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDb21taXRMb2FkRm9yRnJhbWUobV9mcmFt
ZS0+ZnJhbWVJRCgpLCByZXNwb25zZS5taW1lVHlwZSgpLCBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+
bG9hZGVyKCkubG9hZFR5cGUoKSwgcmVzcG9uc2UuY2VydGlmaWNhdGVJbmZvKCksIEluamVjdGVk
QnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyKHVzZXJEYXRhLmdldCgpKSkpOwogCiAgICAgd2ViUGFn
ZS0+ZGlkQ29tbWl0TG9hZChtX2ZyYW1lKTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>