<?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>180965</bug_id>
          
          <creation_ts>2017-12-18 20:42:51 -0800</creation_ts>
          <short_desc>[Apple Pay] Stop maintaining a list of payment networks</short_desc>
          <delta_ts>2017-12-19 09:49:35 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy Estes">aestes</reporter>
          <assigned_to name="Andy Estes">aestes</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1383048</commentid>
    <comment_count>0</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-12-18 20:42:51 -0800</bug_when>
    <thetext>[Apple Pay] Stop maintaining a list of payment networks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383049</commentid>
    <comment_count>1</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-12-18 20:43:14 -0800</bug_when>
    <thetext>rdar://problem/34696560</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383061</commentid>
    <comment_count>2</comment_count>
      <attachid>329739</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-12-18 21:09:09 -0800</bug_when>
    <thetext>Created attachment 329739
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383063</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-18 21:11:27 -0800</bug_when>
    <thetext>Attachment 329739 did not pass style-queue:


ERROR: Source/WebCore/Modules/applepay/PaymentCoordinator.cpp:48:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 1 in 24 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383160</commentid>
    <comment_count>4</comment_count>
      <attachid>329739</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-19 09:49:33 -0800</bug_when>
    <thetext>Comment on attachment 329739
Patch

Clearing flags on attachment: 329739

Committed r226123: &lt;https://trac.webkit.org/changeset/226123&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383161</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-19 09:49:35 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329739</attachid>
            <date>2017-12-18 21:09:09 -0800</date>
            <delta_ts>2017-12-19 09:49:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180965-20171218210908.patch</filename>
            <type>text/plain</type>
            <size>33576</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjg0ODZmOTRiZjc1ODUx
ZDg0NTEwYWY0N2M2MTAxNzdmZWU0OGQ5Ny4uYzRlNTMyZjUwMThjNjE3MzBiNWQ4ZDQ0ZDg4MzNi
Mjg5MmZhNDAzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE3LTEyLTE4ICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbQXBwbGUgUGF5XSBTdG9wIG1h
aW50YWluaW5nIGEgbGlzdCBvZiBwYXltZW50IG5ldHdvcmtzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NjUKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzM0Njk2NTYwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEluc3RlYWQgb2YgbWFpbnRhaW5pbmcgdGhlIGxpc3Qgb2YgdmFsaWQgcGF5bWVudCBu
ZXR3b3JrcyBpbiBXZWJDb3JlLCBhbGxvdyB0aGUgY2xpZW50IHRvCisgICAgICAgIHByb3ZpZGUg
dGhlIGxpc3Qgd2hlbiBjb25zdHJ1Y3RpbmcgYSBQYXltZW50Q29vcmRpbmF0b3IuIFRoZW4sIHVz
ZSBQYXltZW50Q29vcmRpbmF0b3IncyBsaXN0CisgICAgICAgIHRvIHZhbGlkYXRlIEFwcGxlUGF5
U2Vzc2lvblBheW1lbnRSZXF1ZXN0cy4KKworICAgICAgICBWYWxpZGF0aW9uIHdpbGwgbm93IGJl
IGRvbmUgY2FzZS1pbnNlbnNpdGl2ZWx5IHNpbmNlIENvY29hIGNsaWVudHMgd2lsbCBwcm92aWRl
IGEgbGlzdCBvZgorICAgICAgICBuZXR3b3JrIG5hbWVzIHRoYXQgZGlmZmVyIGluIGNhcGl0YWxp
emF0aW9uIGZyb20gdGhlIG5hbWVzIGZvcm1lcmx5IGFjY2VwdGVkIGJ5IFdlYkNvcmUuCisKKyAg
ICAgICAgQWRkZWQgbmV3IHRlc3QgY2FzZXMgdG8gaHR0cC90ZXN0cy9zc2wvYXBwbGVwYXkvQXBw
bGVQYXlTZXNzaW9uLmh0bWwuCisKKyAgICAgICAgKiBNb2R1bGVzL2FwcGxlcGF5L0FwcGxlUGF5
UmVxdWVzdEJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEFuZFZhbGlkYXRlKTog
Q2hhbmdlZCB0byByZXR1cm4gYSBWZWN0b3Igb2YgdmFsaWRhdGVkIHN0cmluZ3MuCisgICAgICAg
IChXZWJDb3JlOjp2YWxpZGF0ZSk6IFJlbmFtZWQgdG8gY29udmVydEFuZFZhbGlkYXRlLgorICAg
ICAgICAqIE1vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlSZXF1ZXN0QmFzZS5oOgorICAgICAgICAq
IE1vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmNvbnZlcnRBbmRWYWxpZGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpBcHBsZVBheVNlc3Npb246
OmNyZWF0ZSk6CisgICAgICAgICogTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVNlc3Npb25QYXlt
ZW50UmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsZVBheVNlc3Npb25QYXltZW50
UmVxdWVzdDo6aXNWYWxpZFN1cHBvcnRlZE5ldHdvcmspOiBEZWxldGVkLgorICAgICAgICAqIE1v
ZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3QuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2FwcGxlcGF5L1BheW1lbnRDb29yZGluYXRvci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjp0b0hhc2hTZXQpOgorICAgICAgICAoV2ViQ29yZTo6UGF5bWVudENvb3JkaW5hdG9yOjpQ
YXltZW50Q29vcmRpbmF0b3IpOiBDb252ZXJ0ZWQgYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzIHRv
IGEKKyAgICAgICAgY2FzZS1pbnNlbnNpdGl2ZSBIYXNoU2V0IGFuZCBzdG9yZWQgaW4gbV9hdmFp
bGFibGVQYXltZW50TmV0d29ya3MuCisgICAgICAgIChXZWJDb3JlOjpQYXltZW50Q29vcmRpbmF0
b3I6OnZhbGlkYXRlZFBheW1lbnROZXR3b3JrIGNvbnN0KTogQWRkZWQgc3BlY2lhbCBjYXNlcyBm
b3IgImpjYiIKKyAgICAgICAgYW5kICJjYXJ0ZUJhbmNhaXJlIiBmb3IgQVBJIGNvbXBhdGliaWxp
dHkuIEZvciBvdGhlciBuZXR3b3JrcywgY2hlY2tlZCBtX2F2YWlsYWJsZVBheW1lbnROZXR3b3Jr
cy4KKyAgICAgICAgKiBNb2R1bGVzL2FwcGxlcGF5L1BheW1lbnRDb29yZGluYXRvci5oOgorICAg
ICAgICAqIE1vZHVsZXMvYXBwbGVwYXkvcGF5bWVudHJlcXVlc3QvQXBwbGVQYXlQYXltZW50SGFu
ZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsZVBheVBheW1lbnRIYW5kbGVyOjpzaG93
KToKKyAgICAgICAgKiBwYWdlL01haW5GcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNYWlu
RnJhbWU6Ok1haW5GcmFtZSk6IENvbnN0cnVjdGVkIG1fcGF5bWVudENvb3JkaW5hdG9yIHdpdGgg
Y29uZmlndXJhdGlvbi5hdmFpbGFibGVQYXltZW50TmV0d29ya3MuCisgICAgICAgICogcGFnZS9Q
YWdlQ29uZmlndXJhdGlvbi5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6SW50ZXJuYWxzKToKKyAgICAgICAgKiB0ZXN0aW5n
L01vY2tQYXltZW50Q29vcmRpbmF0b3IuY3BwOgorICAgICAgICAqIHRlc3RpbmcvTW9ja1BheW1l
bnRDb29yZGluYXRvci5oOgorCiAyMDE3LTEyLTE4ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgU1BJIHRvIHF1ZXJ5IGZvciB0aGUgY3VycmVudCBhbmQg
bGFzdCBhdXRvIGZpbGwgYnV0dG9uIHR5cGUgYW5kIHBhc3MgdXNlciBkYXRhIG9iamVjdCB0byBf
d2ViVmlldzpmb2N1c1Nob3VsZFN0YXJ0SW5wdXRTZXNzaW9uOgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5k
ZXggY2JjZTA3YWMwMDViNjJmMTNjY2IwMzJmYjY1MjUxOGQzNzgzZDc2NS4uM2MyNmIzZDg0ZjFm
OWVlNDg0ZGMwZDhkNGJlZDdmZjlkOTQ4ODY3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTctMTItMTggIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgorCisg
ICAgICAgIFtBcHBsZSBQYXldIFN0b3AgbWFpbnRhaW5pbmcgYSBsaXN0IG9mIHBheW1lbnQgbmV0
d29ya3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
MDk2NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzQ2OTY1NjA+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29hL1Bhc3NLaXRT
UEkuaDogRGVmaW5lZCArW1BLUGF5bWVudFJlcXVlc3QgYXZhaWxhYmxlTmV0d29ya3NdLgorCiAy
MDE3LTEyLTE0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CiAKICAgICAgICAg
Rml4IDMyLWJpdCBidWlsZDogRW5hYmxlIC1Xc3RyaWN0LXByb3RvdHlwZXMgZm9yIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwppbmRleCA0MTkzYzk3NGRjN2JjYTc0ZWExZDUzN2U3MWEzMjY1NjFmNjA1MDRmLi43NWJl
MjcxYTAwY2NhMThiNjBmMzg1NGNkNTMxMzVkYjAxNmY0MTY4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI4IEBACisyMDE3LTEyLTE4ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAg
ICAgICBbQXBwbGUgUGF5XSBTdG9wIG1haW50YWluaW5nIGEgbGlzdCBvZiBwYXltZW50IG5ldHdv
cmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5
NjUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM0Njk2NTYwPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBh
cmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
OjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
Lmg6IERlZmluZWQgYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzLgorICAgICAgICAqIFVJUHJvY2Vz
cy9BcHBsZVBheS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BcHBsZVBheS9jb2NvYS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eUNvY29hLm1tOgor
ICAgICAgICAoV2ViS2l0Ojp0b1N1cHBvcnRlZE5ldHdvcmtzKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHk6OmF2YWlsYWJsZVBheW1lbnROZXR3b3Jrcyk6IENh
bGxlZAorICAgICAgICArW1BLUGF5bWVudFJlcXVlc3QgYXZhaWxhYmxlTmV0d29ya3NdLgorICAg
ICAgICAoV2ViS2l0Ojp0b1N1cHBvcnRlZE5ldHdvcmspOiBEZWxldGVkLgorICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6
OmNyZWF0aW9uUGFyYW1ldGVycyk6IFNldCBwYXJhbWV0ZXJzLmF2YWlsYWJsZVBheW1lbnROZXR3
b3JrcyBieQorICAgICAgICBjYWxsaW5nIFdlYlBheW1lbnRDb29yZGluYXRvclByb3h5OjphdmFp
bGFibGVQYXltZW50TmV0d29ya3MuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpXZWJQYWdlKTogU2V0IHBhZ2VDb25m
aWd1cmF0aW9uLmF2YWlsYWJsZVBheW1lbnROZXR3b3JrcyB0bworICAgICAgICBwYXJhbWV0ZXJz
LmF2YWlsYWJsZVBheW1lbnROZXR3b3Jrcy4KKwogMjAxNy0xMi0xOCAgRGFuaWVsIEJhdGVzICA8
ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIFNQSSB0byBxdWVyeSBmb3IgdGhlIGN1
cnJlbnQgYW5kIGxhc3QgYXV0byBmaWxsIGJ1dHRvbiB0eXBlIGFuZCBwYXNzIHVzZXIgZGF0YSBv
YmplY3QgdG8gX3dlYlZpZXc6Zm9jdXNTaG91bGRTdGFydElucHV0U2Vzc2lvbjoKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlSZXF1ZXN0QmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxlcGF5L0FwcGxlUGF5UmVxdWVzdEJhc2Uu
Y3BwCmluZGV4IGM3YmI3MGQ4NDM1YjA0MDI5Y2JmMDQwYmU0ZWVmYjY2YTdhMzJjZmUuLjRiNzcy
ZjIxNTBkZjkwMTE4NTgyYjE3YWY1ZjBkZDE0NGU3YjRjMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlSZXF1ZXN0QmFzZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVJlcXVlc3RCYXNlLmNwcApAQCAt
MjgsMjIgKzI4LDI4IEBACiAKICNpZiBFTkFCTEUoQVBQTEVfUEFZKQogCisjaW5jbHVkZSAiUGF5
bWVudENvb3JkaW5hdG9yLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RhdGljIEV4Y2Vw
dGlvbk9yPHZvaWQ+IHZhbGlkYXRlKHVuc2lnbmVkIHZlcnNpb24sIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBzdXBwb3J0ZWROZXR3b3JrcykKK3N0YXRpYyBFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5n
Pj4gY29udmVydEFuZFZhbGlkYXRlKHVuc2lnbmVkIHZlcnNpb24sIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBzdXBwb3J0ZWROZXR3b3JrcywgY29uc3QgUGF5bWVudENvb3JkaW5hdG9yJiBwYXltZW50
Q29vcmRpbmF0b3IpCiB7CiAgICAgaWYgKHN1cHBvcnRlZE5ldHdvcmtzLmlzRW1wdHkoKSkKICAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciwgIkF0IGxlYXN0IG9uZSBzdXBwb3J0
ZWQgbmV0d29yayBtdXN0IGJlIHByb3ZpZGVkLiIgfTsKIAorICAgIFZlY3RvcjxTdHJpbmc+IHJl
c3VsdDsKKyAgICByZXN1bHQucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShzdXBwb3J0ZWROZXR3b3Jr
cy5zaXplKCkpOwogICAgIGZvciAoYXV0byYgc3VwcG9ydGVkTmV0d29yayA6IHN1cHBvcnRlZE5l
dHdvcmtzKSB7Ci0gICAgICAgIGlmICghQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3Q6Omlz
VmFsaWRTdXBwb3J0ZWROZXR3b3JrKHZlcnNpb24sIHN1cHBvcnRlZE5ldHdvcmspKQotICAgICAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciwgbWFrZVN0cmluZygiXCIiICsgc3Vw
cG9ydGVkTmV0d29yaywgIlwiIGlzIG5vdCBhIHZhbGlkIHBheW1lbnQgbmV0d29yay4iKSB9Owor
ICAgICAgICBhdXRvIHZhbGlkYXRlZE5ldHdvcmsgPSBwYXltZW50Q29vcmRpbmF0b3IudmFsaWRh
dGVkUGF5bWVudE5ldHdvcmsodmVyc2lvbiwgc3VwcG9ydGVkTmV0d29yayk7CisgICAgICAgIGlm
ICghdmFsaWRhdGVkTmV0d29yaykKKyAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBl
RXJyb3IsIG1ha2VTdHJpbmcoIlwiIiwgc3VwcG9ydGVkTmV0d29yaywgIlwiIGlzIG5vdCBhIHZh
bGlkIHBheW1lbnQgbmV0d29yay4iKSB9OworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5k
KCp2YWxpZGF0ZWROZXR3b3JrKTsKICAgICB9CiAKLSAgICByZXR1cm4geyB9OworICAgIHJldHVy
biBXVEZNb3ZlKHJlc3VsdCk7CiB9CiAKLUV4Y2VwdGlvbk9yPEFwcGxlUGF5U2Vzc2lvblBheW1l
bnRSZXF1ZXN0PiBjb252ZXJ0QW5kVmFsaWRhdGUodW5zaWduZWQgdmVyc2lvbiwgQXBwbGVQYXlS
ZXF1ZXN0QmFzZSYgcmVxdWVzdCkKK0V4Y2VwdGlvbk9yPEFwcGxlUGF5U2Vzc2lvblBheW1lbnRS
ZXF1ZXN0PiBjb252ZXJ0QW5kVmFsaWRhdGUodW5zaWduZWQgdmVyc2lvbiwgQXBwbGVQYXlSZXF1
ZXN0QmFzZSYgcmVxdWVzdCwgY29uc3QgUGF5bWVudENvb3JkaW5hdG9yJiBwYXltZW50Q29vcmRp
bmF0b3IpCiB7CiAgICAgQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3QgcmVzdWx0OwogICAg
IHJlc3VsdC5zZXRDb3VudHJ5Q29kZShyZXF1ZXN0LmNvdW50cnlDb2RlKTsKQEAgLTUzLDEwICs1
OSwxMCBAQCBFeGNlcHRpb25PcjxBcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdD4gY29udmVy
dEFuZFZhbGlkYXRlKHVuc2lnbmVkIHZlcnNpb24sCiAgICAgICAgIHJldHVybiBtZXJjaGFudENh
cGFiaWxpdGllcy5yZWxlYXNlRXhjZXB0aW9uKCk7CiAgICAgcmVzdWx0LnNldE1lcmNoYW50Q2Fw
YWJpbGl0aWVzKG1lcmNoYW50Q2FwYWJpbGl0aWVzLnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKIAot
ICAgIGF1dG8gZXhjZXB0aW9uID0gdmFsaWRhdGUodmVyc2lvbiwgV1RGTW92ZShyZXF1ZXN0LnN1
cHBvcnRlZE5ldHdvcmtzKSk7Ci0gICAgaWYgKGV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKLSAg
ICAgICAgcmV0dXJuIGV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCk7Ci0gICAgcmVzdWx0LnNl
dFN1cHBvcnRlZE5ldHdvcmtzKHJlcXVlc3Quc3VwcG9ydGVkTmV0d29ya3MpOworICAgIGF1dG8g
c3VwcG9ydGVkTmV0d29ya3MgPSBjb252ZXJ0QW5kVmFsaWRhdGUodmVyc2lvbiwgcmVxdWVzdC5z
dXBwb3J0ZWROZXR3b3JrcywgcGF5bWVudENvb3JkaW5hdG9yKTsKKyAgICBpZiAoc3VwcG9ydGVk
TmV0d29ya3MuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBzdXBwb3J0ZWROZXR3b3Jr
cy5yZWxlYXNlRXhjZXB0aW9uKCk7CisgICAgcmVzdWx0LnNldFN1cHBvcnRlZE5ldHdvcmtzKHN1
cHBvcnRlZE5ldHdvcmtzLnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKIAogICAgIGlmIChyZXF1ZXN0
LnJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHMpIHsKICAgICAgICAgYXV0byByZXF1aXJlZEJp
bGxpbmdDb250YWN0RmllbGRzID0gY29udmVydEFuZFZhbGlkYXRlKHZlcnNpb24sICpyZXF1ZXN0
LnJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVJlcXVlc3RCYXNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2FwcGxlcGF5L0FwcGxlUGF5UmVxdWVzdEJhc2UuaAppbmRleCBkMTY0NDgyZjc0
N2IzNDIwNmRkZjlmNjk3MWVkYzE0MmQzMjA4NmM1Li5iYzg5Y2NkYTE1Y2U2NjljMjkxYjM0ODVj
MGUwMjcxNThhOGE1MjFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxl
cGF5L0FwcGxlUGF5UmVxdWVzdEJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Fw
cGxlcGF5L0FwcGxlUGF5UmVxdWVzdEJhc2UuaApAQCAtMzMsNiArMzMsOCBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKK2NsYXNzIFBheW1lbnRDb29yZGluYXRvcjsKKwogc3RydWN0IEFwcGxl
UGF5UmVxdWVzdEJhc2UgewogICAgIFZlY3RvcjxBcHBsZVBheU1lcmNoYW50Q2FwYWJpbGl0eT4g
bWVyY2hhbnRDYXBhYmlsaXRpZXM7CiAgICAgVmVjdG9yPFN0cmluZz4gc3VwcG9ydGVkTmV0d29y
a3M7CkBAIC00NSw3ICs0Nyw3IEBAIHN0cnVjdCBBcHBsZVBheVJlcXVlc3RCYXNlIHsKICAgICBW
ZWN0b3I8U3RyaW5nPiBzdXBwb3J0ZWRDb3VudHJpZXM7CiB9OwogCi1FeGNlcHRpb25PcjxBcHBs
ZVBheVNlc3Npb25QYXltZW50UmVxdWVzdD4gY29udmVydEFuZFZhbGlkYXRlKHVuc2lnbmVkIHZl
cnNpb24sIEFwcGxlUGF5UmVxdWVzdEJhc2UmKTsKK0V4Y2VwdGlvbk9yPEFwcGxlUGF5U2Vzc2lv
blBheW1lbnRSZXF1ZXN0PiBjb252ZXJ0QW5kVmFsaWRhdGUodW5zaWduZWQgdmVyc2lvbiwgQXBw
bGVQYXlSZXF1ZXN0QmFzZSYsIGNvbnN0IFBheW1lbnRDb29yZGluYXRvciYpOwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBw
bGVwYXkvQXBwbGVQYXlTZXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVw
YXkvQXBwbGVQYXlTZXNzaW9uLmNwcAppbmRleCA2MTE1ZjNlNjcxOGY5NWFkN2I0NzQ0MjlhNGEz
YjU1YTRhODMyZTM1Li4zNjY0ZDhjYmQwODMzNmY0M2UxOGE3MjQxOTc1ZjFhYjA1ZWExNzYyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxlcGF5L0FwcGxlUGF5U2Vzc2lv
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVNlc3Np
b24uY3BwCkBAIC0yMDcsOSArMjA3LDkgQEAgc3RhdGljIEV4Y2VwdGlvbk9yPFZlY3RvcjxBcHBs
ZVBheVNlc3Npb25QYXltZW50UmVxdWVzdDo6U2hpcHBpbmdNZXRob2Q+PiBjb252ZXIKICAgICBy
ZXR1cm4gV1RGTW92ZShyZXN1bHQpOwogfQogCi1zdGF0aWMgRXhjZXB0aW9uT3I8QXBwbGVQYXlT
ZXNzaW9uUGF5bWVudFJlcXVlc3Q+IGNvbnZlcnRBbmRWYWxpZGF0ZSh1bnNpZ25lZCB2ZXJzaW9u
LCBBcHBsZVBheVBheW1lbnRSZXF1ZXN0JiYgcGF5bWVudFJlcXVlc3QpCitzdGF0aWMgRXhjZXB0
aW9uT3I8QXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3Q+IGNvbnZlcnRBbmRWYWxpZGF0ZSh1
bnNpZ25lZCB2ZXJzaW9uLCBBcHBsZVBheVBheW1lbnRSZXF1ZXN0JiYgcGF5bWVudFJlcXVlc3Qs
IGNvbnN0IFBheW1lbnRDb29yZGluYXRvciYgcGF5bWVudENvb3JkaW5hdG9yKQogewotICAgIGF1
dG8gY29udmVydGVkUmVxdWVzdCA9IGNvbnZlcnRBbmRWYWxpZGF0ZSh2ZXJzaW9uLCBwYXltZW50
UmVxdWVzdCk7CisgICAgYXV0byBjb252ZXJ0ZWRSZXF1ZXN0ID0gY29udmVydEFuZFZhbGlkYXRl
KHZlcnNpb24sIHBheW1lbnRSZXF1ZXN0LCBwYXltZW50Q29vcmRpbmF0b3IpOwogICAgIGlmIChj
b252ZXJ0ZWRSZXF1ZXN0Lmhhc0V4Y2VwdGlvbigpKQogICAgICAgICByZXR1cm4gY29udmVydGVk
UmVxdWVzdC5yZWxlYXNlRXhjZXB0aW9uKCk7CiAKQEAgLTQxMyw3ICs0MTMsNyBAQCBFeGNlcHRp
b25PcjxSZWY8QXBwbGVQYXlTZXNzaW9uPj4gQXBwbGVQYXlTZXNzaW9uOjpjcmVhdGUoRG9jdW1l
bnQmIGRvY3VtZW50LCB1bgogICAgIGlmICghdmVyc2lvbiB8fCAhcGF5bWVudENvb3JkaW5hdG9y
LnN1cHBvcnRzVmVyc2lvbih2ZXJzaW9uKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IElu
dmFsaWRBY2Nlc3NFcnJvciwgbWFrZVN0cmluZygiXCIiICsgU3RyaW5nOjpudW1iZXIodmVyc2lv
biksICJcIiBpcyBub3QgYSBzdXBwb3J0ZWQgdmVyc2lvbi4iKSB9OwogCi0gICAgYXV0byBjb252
ZXJ0ZWRQYXltZW50UmVxdWVzdCA9IGNvbnZlcnRBbmRWYWxpZGF0ZSh2ZXJzaW9uLCBXVEZNb3Zl
KHBheW1lbnRSZXF1ZXN0KSk7CisgICAgYXV0byBjb252ZXJ0ZWRQYXltZW50UmVxdWVzdCA9IGNv
bnZlcnRBbmRWYWxpZGF0ZSh2ZXJzaW9uLCBXVEZNb3ZlKHBheW1lbnRSZXF1ZXN0KSwgcGF5bWVu
dENvb3JkaW5hdG9yKTsKICAgICBpZiAoY29udmVydGVkUGF5bWVudFJlcXVlc3QuaGFzRXhjZXB0
aW9uKCkpCiAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRQYXltZW50UmVxdWVzdC5yZWxlYXNlRXhj
ZXB0aW9uKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkv
QXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9hcHBsZXBheS9BcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdC5jcHAKaW5kZXggYWViZjg2
MWM1MGQzZjkzMDRlZTlkMjUxMWQyZGY0Y2ViNjM1ZGZhMy4uYWE3Yjg2OTAzNTNjOWMwZWJiMzIy
ZmUxOTJiMWMzNDBhZjI0NjA2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9h
cHBsZXBheS9BcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdC5jcHAK
QEAgLTM3LDMwICszNyw2IEBAIEFwcGxlUGF5U2Vzc2lvblBheW1lbnRSZXF1ZXN0OjpBcHBsZVBh
eVNlc3Npb25QYXltZW50UmVxdWVzdCgpID0gZGVmYXVsdDsKIAogQXBwbGVQYXlTZXNzaW9uUGF5
bWVudFJlcXVlc3Q6On5BcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdCgpID0gZGVmYXVsdDsK
IAotYm9vbCBBcHBsZVBheVNlc3Npb25QYXltZW50UmVxdWVzdDo6aXNWYWxpZFN1cHBvcnRlZE5l
dHdvcmsodW5zaWduZWQgdmVyc2lvbiwgY29uc3QgU3RyaW5nJiBzdXBwb3J0ZWROZXR3b3JrKQot
ewotICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJhbWV4IikKLSAgICAgICAgcmV0dXJuIHRy
dWU7Ci0gICAgaWYgKHN1cHBvcnRlZE5ldHdvcmsgPT0gImNoaW5hVW5pb25QYXkiKQotICAgICAg
ICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoc3VwcG9ydGVkTmV0d29yayA9PSAiZGlzY292ZXIiKQot
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoc3VwcG9ydGVkTmV0d29yayA9PSAiaW50ZXJh
YyIpCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJt
YXN0ZXJDYXJkIikKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgaWYgKHN1cHBvcnRlZE5ldHdv
cmsgPT0gInByaXZhdGVMYWJlbCIpCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIGlmIChzdXBw
b3J0ZWROZXR3b3JrID09ICJ2aXNhIikKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgaWYgKHZl
cnNpb24gPj0gMiAmJiBzdXBwb3J0ZWROZXR3b3JrID09ICJqY2IiKQotICAgICAgICByZXR1cm4g
dHJ1ZTsKLSAgICBpZiAodmVyc2lvbiA+PSAzICYmIHN1cHBvcnRlZE5ldHdvcmsgPT0gImNhcnRl
QmFuY2FpcmUiKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIHJldHVybiBmYWxzZTsKLX0K
LQogYm9vbCBpc0ZpbmFsU3RhdGVSZXN1bHQoY29uc3Qgc3RkOjpvcHRpb25hbDxQYXltZW50QXV0
aG9yaXphdGlvblJlc3VsdD4mIHJlc3VsdCkKIHsKICAgICBpZiAoIXJlc3VsdCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uUGF5bWVu
dFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNz
aW9uUGF5bWVudFJlcXVlc3QuaAppbmRleCAxYTYyYzEyOWUyNDVjM2FkZDY2YTZhNjZlYzczZWUz
YmM4NjE0YmFhLi5lY2Y0ZWQwOTk3MWJjZmI3MTQ0NjkxYjU3NWY3YmVhMmQ1YzZjNzE5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxlcGF5L0FwcGxlUGF5U2Vzc2lvblBh
eW1lbnRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9BcHBs
ZVBheVNlc3Npb25QYXltZW50UmVxdWVzdC5oCkBAIC02OCw4ICs2OCw2IEBAIHB1YmxpYzoKICAg
ICBjb25zdCBQYXltZW50Q29udGFjdCYgc2hpcHBpbmdDb250YWN0KCkgY29uc3QgeyByZXR1cm4g
bV9zaGlwcGluZ0NvbnRhY3Q7IH0KICAgICB2b2lkIHNldFNoaXBwaW5nQ29udGFjdChjb25zdCBQ
YXltZW50Q29udGFjdCYgc2hpcHBpbmdDb250YWN0KSB7IG1fc2hpcHBpbmdDb250YWN0ID0gc2hp
cHBpbmdDb250YWN0OyB9CiAKLSAgICBzdGF0aWMgYm9vbCBpc1ZhbGlkU3VwcG9ydGVkTmV0d29y
ayh1bnNpZ25lZCB2ZXJzaW9uLCBjb25zdCBTdHJpbmcmKTsKLQogICAgIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBzdXBwb3J0ZWROZXR3b3JrcygpIGNvbnN0IHsgcmV0dXJuIG1fc3VwcG9ydGVkTmV0
d29ya3M7IH0KICAgICB2b2lkIHNldFN1cHBvcnRlZE5ldHdvcmtzKGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBzdXBwb3J0ZWROZXR3b3JrcykgeyBtX3N1cHBvcnRlZE5ldHdvcmtzID0gc3VwcG9ydGVk
TmV0d29ya3M7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBh
eS9QYXltZW50Q29vcmRpbmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBh
eS9QYXltZW50Q29vcmRpbmF0b3IuY3BwCmluZGV4IGEyYzlkMDMzNGI5MjY4NDU5NTI1ZWU5Mjc5
Yzc0MzY4NmJhYjEwNGQuLjAxMmQ4ZDA5Yzk1MzljZjA2YjI1NDQyMzNlNzMwMjI3MGYzY2JiOTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvUGF5bWVudENvb3Jk
aW5hdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxlcGF5L1BheW1lbnRD
b29yZGluYXRvci5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE1
LCAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykg
MjAxNS0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwpAQCAtMzUsOCArMzUsMTcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1QYXltZW50Q29vcmRpbmF0b3I6OlBheW1lbnRDb29yZGluYXRvcihQYXltZW50Q29vcmRp
bmF0b3JDbGllbnQmIGNsaWVudCkKLSAgICA6IG1fY2xpZW50KGNsaWVudCkKK3N0YXRpYyBIYXNo
U2V0PFN0cmluZywgQVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPiB0b0hhc2hTZXQoY29uc3QgVmVj
dG9yPFN0cmluZz4mIHZhbHVlcykKK3sKKyAgICBIYXNoU2V0PFN0cmluZywgQVNDSUlDYXNlSW5z
ZW5zaXRpdmVIYXNoPiByZXN1bHQ7CisgICAgZm9yIChhdXRvJiB2YWx1ZSA6IHZhbHVlcykKKyAg
ICAgICAgcmVzdWx0LmFkZCh2YWx1ZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworUGF5bWVu
dENvb3JkaW5hdG9yOjpQYXltZW50Q29vcmRpbmF0b3IoUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50
JiBjbGllbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhdmFpbGFibGVQYXltZW50TmV0d29ya3Mp
CisgICAgOiBtX2NsaWVudCB7IGNsaWVudCB9CisgICAgLCBtX2F2YWlsYWJsZVBheW1lbnROZXR3
b3JrcyB7IHRvSGFzaFNldChhdmFpbGFibGVQYXltZW50TmV0d29ya3MpIH0KIHsKIH0KIApAQCAt
MTk0LDYgKzIwMywyMSBAQCB2b2lkIFBheW1lbnRDb29yZGluYXRvcjo6ZGlkQ2FuY2VsUGF5bWVu
dFNlc3Npb24oKQogICAgIG1fYWN0aXZlU2Vzc2lvbiA9IG51bGxwdHI7CiB9CiAKK3N0ZDo6b3B0
aW9uYWw8U3RyaW5nPiBQYXltZW50Q29vcmRpbmF0b3I6OnZhbGlkYXRlZFBheW1lbnROZXR3b3Jr
KHVuc2lnbmVkIHZlcnNpb24sIGNvbnN0IFN0cmluZyYgcGF5bWVudE5ldHdvcmspIGNvbnN0Cit7
CisgICAgaWYgKHZlcnNpb24gPCAyICYmIGVxdWFsSWdub3JpbmdBU0NJSUNhc2UocGF5bWVudE5l
dHdvcmssICJqY2IiKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIGlmICh2
ZXJzaW9uIDwgMyAmJiBlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHBheW1lbnROZXR3b3JrLCAiY2Fy
dGVCYW5jYWlyZSIpKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgYXV0byBy
ZXN1bHQgPSBtX2F2YWlsYWJsZVBheW1lbnROZXR3b3Jrcy5maW5kKHBheW1lbnROZXR3b3JrKTsK
KyAgICBpZiAocmVzdWx0ID09IG1fYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzLmVuZCgpKQorICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgcmV0dXJuICpyZXN1bHQ7CiB9CiAKLSNl
bmRpZgorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKEFQUExFX1BB
WSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvUGF5bWVudENv
b3JkaW5hdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FwcGxlcGF5L1BheW1lbnRDb29y
ZGluYXRvci5oCmluZGV4IDgwNjc3NDg1M2Y0M2RlNWQzNzZlYzBjNTA4YzMzYmU5ZTkyZWZiNmIu
LjcwZmVkZGI0Y2RmNjk2NTgwZTliZmE0MzU1OThjMWQ5NGYzYjllOWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvUGF5bWVudENvb3JkaW5hdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9QYXltZW50Q29vcmRpbmF0b3IuaApAQCAt
MjksNiArMjksNyBAQAogCiAjaW5jbHVkZSAiQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3Qu
aCIKICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdI
YXNoLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDcsNyArNDgsNyBAQCBzdHJ1Y3Qg
U2hpcHBpbmdNZXRob2RVcGRhdGU7CiAKIGNsYXNzIFBheW1lbnRDb29yZGluYXRvciB7CiBwdWJs
aWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgZXhwbGljaXQgUGF5bWVudENvb3JkaW5hdG9yKFBheW1l
bnRDb29yZGluYXRvckNsaWVudCYpOworICAgIFdFQkNPUkVfRVhQT1JUIFBheW1lbnRDb29yZGlu
YXRvcihQYXltZW50Q29vcmRpbmF0b3JDbGllbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYXZh
aWxhYmxlUGF5bWVudE5ldHdvcmtzKTsKICAgICBXRUJDT1JFX0VYUE9SVCB+UGF5bWVudENvb3Jk
aW5hdG9yKCk7CiAKICAgICBib29sIHN1cHBvcnRzVmVyc2lvbih1bnNpZ25lZCB2ZXJzaW9uKTsK
QEAgLTczLDEwICs3NCwxMyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWRT
ZWxlY3RTaGlwcGluZ0NvbnRhY3QoY29uc3QgUGF5bWVudENvbnRhY3QmKTsKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIGRpZENhbmNlbFBheW1lbnRTZXNzaW9uKCk7CiAKKyAgICBzdGQ6Om9wdGlv
bmFsPFN0cmluZz4gdmFsaWRhdGVkUGF5bWVudE5ldHdvcmsodW5zaWduZWQgdmVyc2lvbiwgY29u
c3QgU3RyaW5nJikgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgUGF5bWVudENvb3JkaW5hdG9yQ2xp
ZW50JiBtX2NsaWVudDsKIAogICAgIFJlZlB0cjxQYXltZW50U2Vzc2lvbj4gbV9hY3RpdmVTZXNz
aW9uOworICAgIEhhc2hTZXQ8U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+IG1fYXZh
aWxhYmxlUGF5bWVudE5ldHdvcmtzOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9hcHBsZXBheS9wYXltZW50cmVxdWVzdC9BcHBsZVBheVBheW1lbnRIYW5kbGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvcGF5bWVudHJlcXVlc3QvQXBw
bGVQYXlQYXltZW50SGFuZGxlci5jcHAKaW5kZXggMjkyNTA4Yzk5MWEzODE0NzU2ODdiYzM4YWQ5
NDE2ZDNlZDFhZGE5ZS4uMmFjYTE5Y2E3ZTkzNjczOWFlNDdkYTRkYThjZmYyZmUwZTM5NTVjNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9wYXltZW50cmVxdWVz
dC9BcHBsZVBheVBheW1lbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2FwcGxlcGF5L3BheW1lbnRyZXF1ZXN0L0FwcGxlUGF5UGF5bWVudEhhbmRsZXIuY3BwCkBAIC0x
NzQsNyArMTc0LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gQXBwbGVQYXlQYXltZW50SGFuZGxlcjo6
Y29udmVydERhdGEoSlNDOjpKU1ZhbHVlJiYgZGF0YSkKIAogRXhjZXB0aW9uT3I8dm9pZD4gQXBw
bGVQYXlQYXltZW50SGFuZGxlcjo6c2hvdygpCiB7Ci0gICAgYXV0byB2YWxpZGF0ZWRSZXF1ZXN0
ID0gY29udmVydEFuZFZhbGlkYXRlKG1fYXBwbGVQYXlSZXF1ZXN0LT52ZXJzaW9uLCAqbV9hcHBs
ZVBheVJlcXVlc3QpOworICAgIGF1dG8gdmFsaWRhdGVkUmVxdWVzdCA9IGNvbnZlcnRBbmRWYWxp
ZGF0ZShtX2FwcGxlUGF5UmVxdWVzdC0+dmVyc2lvbiwgKm1fYXBwbGVQYXlSZXF1ZXN0LCBwYXlt
ZW50Q29vcmRpbmF0b3IoKSk7CiAgICAgaWYgKHZhbGlkYXRlZFJlcXVlc3QuaGFzRXhjZXB0aW9u
KCkpCiAgICAgICAgIHJldHVybiB2YWxpZGF0ZWRSZXF1ZXN0LnJlbGVhc2VFeGNlcHRpb24oKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvUGFzc0tpdFNQ
SS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvUGFzc0tpdFNQSS5oCmluZGV4
IDgzY2VhNTQ0ZDM5YzhkMzc0MDBkZDEyMmQxYmM5NTc0ODU5NjhmZGMuLjhhYWQyMmZmMTk1NGNm
NjA2OWE2MzkwMDJmMTY1MTJkODNjNDI4MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL2NvY29hL1Bhc3NLaXRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L3NwaS9jb2NvYS9QYXNzS2l0U1BJLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAxNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMTc2LDYgKzE3Niw3IEBAIHR5cGVkZWYgTlNTdHJpbmcg
KiBQS1BheW1lbnROZXR3b3JrIE5TX0VYVEVOU0lCTEVfU1RSSU5HX0VOVU07CiBAZW5kCiAKIEBp
bnRlcmZhY2UgUEtQYXltZW50UmVxdWVzdCA6IE5TT2JqZWN0CisrIChOU0FycmF5PFBLUGF5bWVu
dE5ldHdvcms+ICopYXZhaWxhYmxlTmV0d29ya3M7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29w
eSkgTlNTdHJpbmcgKmNvdW50cnlDb2RlOwogQHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5T
QXJyYXk8UEtQYXltZW50TmV0d29yaz4gKnN1cHBvcnRlZE5ldHdvcmtzOwogQHByb3BlcnR5IChu
b25hdG9taWMsIGFzc2lnbikgUEtNZXJjaGFudENhcGFiaWxpdHkgbWVyY2hhbnRDYXBhYmlsaXRp
ZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01haW5GcmFtZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01haW5GcmFtZS5jcHAKaW5kZXggNTZmOTlkZWFiYTI1NGE4OTg2NmMx
YWZkNjA3NGIyM2JkNTQ4NDVlNC4uYzEyMmYyN2RkY2U3MzNhYzBiYzgxYTE3OWRjMTg0MDA3OTA5
NjJjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9NYWluRnJhbWUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTWFpbkZyYW1lLmNwcApAQCAtNDksNyArNDksNyBAQCBpbmxp
bmUgTWFpbkZyYW1lOjpNYWluRnJhbWUoUGFnZSYgcGFnZSwgUGFnZUNvbmZpZ3VyYXRpb24mIGNv
bmZpZ3VyYXRpb24pCiAgICAgLCBtX3JlY2VudFdoZWVsRXZlbnREZWx0YUZpbHRlcihXaGVlbEV2
ZW50RGVsdGFGaWx0ZXI6OmNyZWF0ZSgpKQogICAgICwgbV9wYWdlT3ZlcmxheUNvbnRyb2xsZXIo
c3RkOjptYWtlX3VuaXF1ZTxQYWdlT3ZlcmxheUNvbnRyb2xsZXI+KCp0aGlzKSkKICNpZiBFTkFC
TEUoQVBQTEVfUEFZKQotICAgICwgbV9wYXltZW50Q29vcmRpbmF0b3Ioc3RkOjptYWtlX3VuaXF1
ZTxQYXltZW50Q29vcmRpbmF0b3I+KCpjb25maWd1cmF0aW9uLnBheW1lbnRDb29yZGluYXRvckNs
aWVudCkpCisgICAgLCBtX3BheW1lbnRDb29yZGluYXRvcihzdGQ6Om1ha2VfdW5pcXVlPFBheW1l
bnRDb29yZGluYXRvcj4oKmNvbmZpZ3VyYXRpb24ucGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LCBj
b25maWd1cmF0aW9uLmF2YWlsYWJsZVBheW1lbnROZXR3b3JrcykpCiAjZW5kaWYKICNpZiBFTkFC
TEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCiAgICAgLCBtX2FwcGxpY2F0aW9uTWFuaWZlc3QoY29u
ZmlndXJhdGlvbi5hcHBsaWNhdGlvbk1hbmlmZXN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9QYWdlQ29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQ29u
ZmlndXJhdGlvbi5oCmluZGV4IGJkMDcxYjM5ZWVmOTcxYjRmMmY0ODRiNjRhOGYxMDJkYmZlODZh
Y2IuLjcxOGQ4YWVhMjk2YzE4ODNmOGYzZmRmNmM2ZTEzNDNkNzMyMGFlNjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZUNvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2VDb25maWd1cmF0aW9uLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNzgsNiArNzgsNyBAQCBwdWJsaWM6CiAgICAg
SW5zcGVjdG9yQ2xpZW50KiBpbnNwZWN0b3JDbGllbnQgeyBudWxscHRyIH07CiAjaWYgRU5BQkxF
KEFQUExFX1BBWSkKICAgICBQYXltZW50Q29vcmRpbmF0b3JDbGllbnQqIHBheW1lbnRDb29yZGlu
YXRvckNsaWVudCB7IG51bGxwdHIgfTsKKyAgICBWZWN0b3I8U3RyaW5nPiBhdmFpbGFibGVQYXlt
ZW50TmV0d29ya3M7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCA0NjdhYTQ1Njk0NTU0NDgxNzAx
NjM0NWU5M2JlMTAyNTY1MGY2ZWU5Li4xNzc0MzhhNDE2ZDZlZThhYmI4MTQzZjJkNGE2YmY3NjA2
YjU5MzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC01MjAsNyArNTIw
LDcgQEAgSW50ZXJuYWxzOjpJbnRlcm5hbHMoRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIGF1dG8q
IGZyYW1lID0gZG9jdW1lbnQuZnJhbWUoKTsKICAgICBpZiAoZnJhbWUgJiYgZnJhbWUtPmlzTWFp
bkZyYW1lKCkpIHsKICAgICAgICAgbV9tb2NrUGF5bWVudENvb3JkaW5hdG9yID0gbmV3IE1vY2tQ
YXltZW50Q29vcmRpbmF0b3IoZnJhbWUtPm1haW5GcmFtZSgpKTsKLSAgICAgICAgZnJhbWUtPm1h
aW5GcmFtZSgpLnNldFBheW1lbnRDb29yZGluYXRvcihzdGQ6Om1ha2VfdW5pcXVlPFBheW1lbnRD
b29yZGluYXRvcj4oKm1fbW9ja1BheW1lbnRDb29yZGluYXRvcikpOworICAgICAgICBmcmFtZS0+
bWFpbkZyYW1lKCkuc2V0UGF5bWVudENvb3JkaW5hdG9yKHN0ZDo6bWFrZV91bmlxdWU8UGF5bWVu
dENvb3JkaW5hdG9yPigqbV9tb2NrUGF5bWVudENvb3JkaW5hdG9yLCBtX21vY2tQYXltZW50Q29v
cmRpbmF0b3ItPmF2YWlsYWJsZVBheW1lbnROZXR3b3JrcygpKSk7CiAgICAgfQogI2VuZGlmCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tQYXltZW50Q29vcmRpbmF0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrUGF5bWVudENvb3JkaW5hdG9yLmNw
cAppbmRleCBhMjFjYjFmODU1OTQwYmM1OGE2NjEzMWUxZjM5YzUzMzQyODIwZjQ3Li40MDIyMWU5
NGUwODk4Njg3ZTIwMTQ1NzI1MTgzODBkNjg2NWFlMDM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL01vY2tQYXltZW50Q29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvTW9ja1BheW1lbnRDb29yZGluYXRvci5jcHAKQEAgLTQxLDYgKzQxLDE1IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIE1vY2tQYXltZW50Q29vcmRpbmF0b3I6Ok1vY2tQYXltZW50
Q29vcmRpbmF0b3IoTWFpbkZyYW1lJiBtYWluRnJhbWUpCiAgICAgOiBtX21haW5GcmFtZSB7IG1h
aW5GcmFtZSB9CiB7CisgICAgbV9hdmFpbGFibGVQYXltZW50TmV0d29ya3MuYXBwZW5kKCJhbWV4
Iik7CisgICAgbV9hdmFpbGFibGVQYXltZW50TmV0d29ya3MuYXBwZW5kKCJjYXJ0ZUJhbmNhaXJl
Iik7CisgICAgbV9hdmFpbGFibGVQYXltZW50TmV0d29ya3MuYXBwZW5kKCJjaGluYVVuaW9uUGF5
Iik7CisgICAgbV9hdmFpbGFibGVQYXltZW50TmV0d29ya3MuYXBwZW5kKCJkaXNjb3ZlciIpOwor
ICAgIG1fYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzLmFwcGVuZCgiaW50ZXJhYyIpOworICAgIG1f
YXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzLmFwcGVuZCgiamNiIik7CisgICAgbV9hdmFpbGFibGVQ
YXltZW50TmV0d29ya3MuYXBwZW5kKCJtYXN0ZXJDYXJkIik7CisgICAgbV9hdmFpbGFibGVQYXlt
ZW50TmV0d29ya3MuYXBwZW5kKCJwcml2YXRlTGFiZWwiKTsKKyAgICBtX2F2YWlsYWJsZVBheW1l
bnROZXR3b3Jrcy5hcHBlbmQoInZpc2EiKTsKIH0KIAogYm9vbCBNb2NrUGF5bWVudENvb3JkaW5h
dG9yOjpzdXBwb3J0c1ZlcnNpb24odW5zaWduZWQgdmVyc2lvbikKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja1BheW1lbnRDb29yZGluYXRvci5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9Nb2NrUGF5bWVudENvb3JkaW5hdG9yLmgKaW5kZXggMzIxNDYzMTllMjI2ZDVh
MjI3ZTMyZmFmZTkzNGY1MjJjNTZjYjFhNC4uZjE3NjQ5YjBiODBhZTg2MDBkMzdjYTc5NjQzNmU0
ODk3ZGIzMWU5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrUGF5bWVu
dENvb3JkaW5hdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrUGF5bWVudENv
b3JkaW5hdG9yLmgKQEAgLTQ4LDYgKzQ4LDcgQEAgcHVibGljOgogCiAgICAgY29uc3QgQXBwbGVQ
YXlMaW5lSXRlbSYgdG90YWwoKSBjb25zdCB7IHJldHVybiBtX3RvdGFsOyB9CiAgICAgY29uc3Qg
VmVjdG9yPEFwcGxlUGF5TGluZUl0ZW0+JiBsaW5lSXRlbXMoKSBjb25zdCB7IHJldHVybiBtX2xp
bmVJdGVtczsgfQorICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhdmFpbGFibGVQYXltZW50TmV0
d29ya3MoKSBjb25zdCB7IHJldHVybiBtX2F2YWlsYWJsZVBheW1lbnROZXR3b3JrczsgfQogCiAg
ICAgdm9pZCByZWYoKSBjb25zdCB7IH0KICAgICB2b2lkIGRlcmVmKCkgY29uc3QgeyB9CkBAIC03
Myw2ICs3NCw3IEBAIHByaXZhdGU6CiAgICAgTW9ja1BheW1lbnRBZGRyZXNzIG1fc2hpcHBpbmdB
ZGRyZXNzOwogICAgIEFwcGxlUGF5TGluZUl0ZW0gbV90b3RhbDsKICAgICBWZWN0b3I8QXBwbGVQ
YXlMaW5lSXRlbT4gbV9saW5lSXRlbXM7CisgICAgVmVjdG9yPFN0cmluZz4gbV9hdmFpbGFibGVQ
YXltZW50TmV0d29ya3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDZl
NGEwYWUyMjcxNzE5NDk4ZWUyNzIxYjg1NjVhYzk4Yjk2NzZlZTAuLmU1MzNhNGQyODc1NGU4Mjli
ZjU3ZDlkZjRkZWI0ZjI4MGJmNmY0YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMCwgMjAxMSwgMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTExMCw2ICsxMTAsOSBA
QCB2b2lkIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVu
Y29kZXIpIGNvbnN0CiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKICAgICBlbmNvZGVy
IDw8IGNvbnRlbnRSdWxlTGlzdHM7CiAjZW5kaWYKKyNpZiBFTkFCTEUoQVBQTEVfUEFZKQorICAg
IGVuY29kZXIgPDwgYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzOworI2VuZGlmCiB9CiAKIHN0ZDo6
b3B0aW9uYWw8V2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycz4gV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlcikKQEAgLTMxMSw2ICszMTQsMTUgQEAg
c3RkOjpvcHRpb25hbDxXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzPiBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjoKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKICAg
ICBwYXJhbWV0ZXJzLmNvbnRlbnRSdWxlTGlzdHMgPSBXVEZNb3ZlKCpjb250ZW50UnVsZUxpc3Rz
KTsKICNlbmRpZgorCisjaWYgRU5BQkxFKEFQUExFX1BBWSkKKyAgICBzdGQ6Om9wdGlvbmFsPFZl
Y3RvcjxTdHJpbmc+PiBhdmFpbGFibGVQYXltZW50TmV0d29ya3M7CisgICAgZGVjb2RlciA+PiBh
dmFpbGFibGVQYXltZW50TmV0d29ya3M7CisgICAgaWYgKCFhdmFpbGFibGVQYXltZW50TmV0d29y
a3MpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgcGFyYW1ldGVycy5hdmFpbGFi
bGVQYXltZW50TmV0d29ya3MgPSBXVEZNb3ZlKCphdmFpbGFibGVQYXltZW50TmV0d29ya3MpOwor
I2VuZGlmCisKICAgICByZXR1cm4gV1RGTW92ZShwYXJhbWV0ZXJzKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDAwYTc4
YTJkNWFiNjUyM2M3MGM1Y2QyY2NiNjQwNDFmNjZmMWFhOTcuLjcxNTAzNTJhY2VlN2E0MDMxNjI2
YjY4ZGZiODA4ZmQ5MWUxZThjYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDEwLCAyMDExLCAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMTc1LDYgKzE3NSwxMCBAQCBzdHJ1
Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7CiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5T
SU9OUykKICAgICBWZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgV2ViQ29tcGlsZWRDb250ZW50UnVs
ZUxpc3REYXRhPj4gY29udGVudFJ1bGVMaXN0czsKICNlbmRpZgorCisjaWYgRU5BQkxFKEFQUExF
X1BBWSkKKyAgICBWZWN0b3I8U3RyaW5nPiBhdmFpbGFibGVQYXltZW50TmV0d29ya3M7CisjZW5k
aWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQXBwbGVQYXkvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHkuaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FwcGxlUGF5L1dlYlBheW1lbnRDb29yZGluYXRvclByb3h5LmgK
aW5kZXggYmMwMmVmMzViNWQ2ODk4M2E3ZDA0NDhiOTg3ZjJhMGI3ZjY0Nzk0My4uNTIwZmIyMDAw
Yzc4NmZkMjY1NGJmNjE0MGUwNTJlOWJkYjYyNDgxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQXBwbGVQYXkvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHkuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BcHBsZVBheS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94
eS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUtMjAxNyBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTY5LDYgKzY5LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBoaWRlUGF5bWVudFVJKCk7CiAK
KyAgICBzdGF0aWMgVmVjdG9yPFN0cmluZz4gYXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzKCk7CisK
IHByaXZhdGU6CiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIuCiAgICAgdm9pZCBkaWRSZWNl
aXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBvdmVycmlkZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1l
bnRDb29yZGluYXRvclByb3h5Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BcHBs
ZVBheS9jb2NvYS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eUNvY29hLm1tCmluZGV4IGQzYzhj
YmVmN2M2NjViZmNmMDEyNzUxMmIyZmY0Yzk3MzlhNmEzNDYuLmNlODVlNTdiODIzMWU2OTQwNDM4
YjU2NGY4MDFkYzU5NTA3MTgxY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGluYXRvclByb3h5Q29jb2EubW0KKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBwbGVQYXkvY29jb2EvV2ViUGF5bWVudENvb3JkaW5h
dG9yUHJveHlDb2NvYS5tbQpAQCAtNTAsMTUgKzUwLDYgQEAgU09GVF9MSU5LX0NMQVNTKFBhc3NL
aXQsIFBLUGF5bWVudE1lcmNoYW50U2Vzc2lvbik7CiBTT0ZUX0xJTktfQ0xBU1MoUGFzc0tpdCwg
UEtQYXltZW50UmVxdWVzdCk7CiBTT0ZUX0xJTktfQ0xBU1MoUGFzc0tpdCwgUEtQYXltZW50U3Vt
bWFyeUl0ZW0pOwogU09GVF9MSU5LX0NMQVNTKFBhc3NLaXQsIFBLU2hpcHBpbmdNZXRob2QpOwot
U09GVF9MSU5LX0NPTlNUQU5UKFBhc3NLaXQsIFBLUGF5bWVudE5ldHdvcmtBbWV4LCBOU1N0cmlu
ZyAqKTsKLVNPRlRfTElOS19DT05TVEFOVChQYXNzS2l0LCBQS1BheW1lbnROZXR3b3JrQ2FydGVC
YW5jYWlyZSwgTlNTdHJpbmcgKik7Ci1TT0ZUX0xJTktfQ09OU1RBTlQoUGFzc0tpdCwgUEtQYXlt
ZW50TmV0d29ya0NoaW5hVW5pb25QYXksIE5TU3RyaW5nICopOwotU09GVF9MSU5LX0NPTlNUQU5U
KFBhc3NLaXQsIFBLUGF5bWVudE5ldHdvcmtEaXNjb3ZlciwgTlNTdHJpbmcgKik7Ci1TT0ZUX0xJ
TktfQ09OU1RBTlQoUGFzc0tpdCwgUEtQYXltZW50TmV0d29ya0ludGVyYWMsIE5TU3RyaW5nICop
OwotU09GVF9MSU5LX0NPTlNUQU5UKFBhc3NLaXQsIFBLUGF5bWVudE5ldHdvcmtKQ0IsIE5TU3Ry
aW5nICopOwotU09GVF9MSU5LX0NPTlNUQU5UKFBhc3NLaXQsIFBLUGF5bWVudE5ldHdvcmtNYXN0
ZXJDYXJkLCBOU1N0cmluZyAqKTsKLVNPRlRfTElOS19DT05TVEFOVChQYXNzS2l0LCBQS1BheW1l
bnROZXR3b3JrUHJpdmF0ZUxhYmVsLCBOU1N0cmluZyAqKTsKLVNPRlRfTElOS19DT05TVEFOVChQ
YXNzS2l0LCBQS1BheW1lbnROZXR3b3JrVmlzYSwgTlNTdHJpbmcgKik7CiAKICNpZiAoUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTMwMCkgfHwg
KFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTEw
MDAwKQogU09GVF9MSU5LX0ZSQU1FV09SSyhDb250YWN0cykKQEAgLTQ0MCwzOSArNDMxLDExIEBA
IHN0YXRpYyBQS01lcmNoYW50Q2FwYWJpbGl0eSB0b1BLTWVyY2hhbnRDYXBhYmlsaXRpZXMoY29u
c3QgV2ViQ29yZTo6QXBwbGVQYXlTZXNzCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGlj
IE5TU3RyaW5nICp0b1N1cHBvcnRlZE5ldHdvcmsoY29uc3QgU3RyaW5nJiBzdXBwb3J0ZWROZXR3
b3JrKQotewotICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJhbWV4IikKLSAgICAgICAgcmV0
dXJuIGdldFBLUGF5bWVudE5ldHdvcmtBbWV4KCk7Ci0gICAgaWYgKHN1cHBvcnRlZE5ldHdvcmsg
PT0gImNhcnRlQmFuY2FpcmUiKQotICAgICAgICByZXR1cm4gZ2V0UEtQYXltZW50TmV0d29ya0Nh
cnRlQmFuY2FpcmUoKTsKLSAgICBpZiAoc3VwcG9ydGVkTmV0d29yayA9PSAiY2hpbmFVbmlvblBh
eSIpCi0gICAgICAgIHJldHVybiBnZXRQS1BheW1lbnROZXR3b3JrQ2hpbmFVbmlvblBheSgpOwot
ICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJkaXNjb3ZlciIpCi0gICAgICAgIHJldHVybiBn
ZXRQS1BheW1lbnROZXR3b3JrRGlzY292ZXIoKTsKLSAgICBpZiAoc3VwcG9ydGVkTmV0d29yayA9
PSAiaW50ZXJhYyIpCi0gICAgICAgIHJldHVybiBnZXRQS1BheW1lbnROZXR3b3JrSW50ZXJhYygp
OwotICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJqY2IiKQotICAgICAgICByZXR1cm4gZ2V0
UEtQYXltZW50TmV0d29ya0pDQigpOwotICAgIGlmIChzdXBwb3J0ZWROZXR3b3JrID09ICJtYXN0
ZXJDYXJkIikKLSAgICAgICAgcmV0dXJuIGdldFBLUGF5bWVudE5ldHdvcmtNYXN0ZXJDYXJkKCk7
Ci0gICAgaWYgKHN1cHBvcnRlZE5ldHdvcmsgPT0gInByaXZhdGVMYWJlbCIpCi0gICAgICAgIHJl
dHVybiBnZXRQS1BheW1lbnROZXR3b3JrUHJpdmF0ZUxhYmVsKCk7Ci0gICAgaWYgKHN1cHBvcnRl
ZE5ldHdvcmsgPT0gInZpc2EiKQotICAgICAgICByZXR1cm4gZ2V0UEtQYXltZW50TmV0d29ya1Zp
c2EoKTsKLQotICAgIHJldHVybiBuaWw7Ci19Ci0KIHN0YXRpYyBSZXRhaW5QdHI8TlNBcnJheT4g
dG9TdXBwb3J0ZWROZXR3b3Jrcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgc3VwcG9ydGVkTmV0d29y
a3MpCiB7Ci0gICAgYXV0byByZXN1bHQgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2Nd
IGluaXRdKTsKLQotICAgIGZvciAoYXV0byYgc3VwcG9ydGVkTmV0d29yayA6IHN1cHBvcnRlZE5l
dHdvcmtzKSB7Ci0gICAgICAgIGlmIChhdXRvIG5ldHdvcmsgPSB0b1N1cHBvcnRlZE5ldHdvcmso
c3VwcG9ydGVkTmV0d29yaykpCi0gICAgICAgICAgICBbcmVzdWx0IGFkZE9iamVjdDpuZXR3b3Jr
XTsKLSAgICB9Ci0KKyAgICBhdXRvIHJlc3VsdCA9IGFkb3B0TlMoW1tOU011dGFibGVBcnJheSBh
bGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdXBwb3J0ZWROZXR3b3Jrcy5zaXplKCldKTsKKyAgICBm
b3IgKGF1dG8mIHN1cHBvcnRlZE5ldHdvcmsgOiBzdXBwb3J0ZWROZXR3b3JrcykKKyAgICAgICAg
W3Jlc3VsdCBhZGRPYmplY3Q6c3VwcG9ydGVkTmV0d29ya107CiAgICAgcmV0dXJuIHJlc3VsdDsK
IH0KIApAQCAtODY2LDcgKzgyOSwxNiBAQCB2b2lkIFdlYlBheW1lbnRDb29yZGluYXRvclByb3h5
OjpwbGF0Zm9ybUNvbXBsZXRlUGF5bWVudE1ldGhvZFNlbGVjdGlvbihjb25zdCBzdAogICAgIG1f
cGF5bWVudEF1dGhvcml6YXRpb25WaWV3Q29udHJvbGxlckRlbGVnYXRlLT5fZGlkU2VsZWN0UGF5
bWVudE1ldGhvZENvbXBsZXRpb24gPSBudWxscHRyOwogfQogCitWZWN0b3I8U3RyaW5nPiBXZWJQ
YXltZW50Q29vcmRpbmF0b3JQcm94eTo6YXZhaWxhYmxlUGF5bWVudE5ldHdvcmtzKCkKK3sKKyAg
ICBOU0FycmF5PFBLUGF5bWVudE5ldHdvcms+ICphdmFpbGFibGVOZXR3b3JrcyA9IFtnZXRQS1Bh
eW1lbnRSZXF1ZXN0Q2xhc3MoKSBhdmFpbGFibGVOZXR3b3Jrc107CisgICAgVmVjdG9yPFN0cmlu
Zz4gcmVzdWx0OworICAgIHJlc3VsdC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGF2YWlsYWJsZU5l
dHdvcmtzLmNvdW50KTsKKyAgICBmb3IgKFBLUGF5bWVudE5ldHdvcmsgbmV0d29yayBpbiBhdmFp
bGFibGVOZXR3b3JrcykKKyAgICAgICAgcmVzdWx0LnVuY2hlY2tlZEFwcGVuZChuZXR3b3JrKTsK
KyAgICByZXR1cm4gcmVzdWx0OwogfQogCi0jZW5kaWYKK30gLy8gbmFtZXNwYWNlIFdlYktpdAog
CisjZW5kaWYgLy8gRU5BQkxFKEFQUExFX1BBWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCmluZGV4IGE5YjQzYzI4OGY5NWY5MmRlZTZjMWVmZDNkNGE3YmQ1NGRlZTRk
NjcuLmUwMDYxZGM3MWQ1NzkyNTU5YTA1Y2I3ZDQxNDcxOTM0OWRjMjQ3OTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNTg0Niw2ICs1ODQ2LDEwIEBAIFdl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgV2ViUGFnZVByb3h5OjpjcmVhdGlvblBhcmFtZXRlcnMo
KQogICAgIHBhcmFtZXRlcnMuYXBwbGljYXRpb25NYW5pZmVzdCA9IG1fY29uZmlndXJhdGlvbi0+
YXBwbGljYXRpb25NYW5pZmVzdCgpID8gc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpBcHBsaWNhdGlv
bk1hbmlmZXN0PihtX2NvbmZpZ3VyYXRpb24tPmFwcGxpY2F0aW9uTWFuaWZlc3QoKS0+YXBwbGlj
YXRpb25NYW5pZmVzdCgpKSA6IHN0ZDo6bnVsbG9wdDsKICNlbmRpZgogCisjaWYgRU5BQkxFKEFQ
UExFX1BBWSkKKyAgICBwYXJhbWV0ZXJzLmF2YWlsYWJsZVBheW1lbnROZXR3b3JrcyA9IFdlYlBh
eW1lbnRDb29yZGluYXRvclByb3h5OjphdmFpbGFibGVQYXltZW50TmV0d29ya3MoKTsKKyNlbmRp
ZgorCiAgICAgbV9wcm9jZXNzLT5hZGRXZWJVc2VyQ29udGVudENvbnRyb2xsZXJQcm94eShtX3Vz
ZXJDb250ZW50Q29udHJvbGxlciwgcGFyYW1ldGVycyk7CiAKICAgICByZXR1cm4gcGFyYW1ldGVy
czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXgg
YjhiMGY5YTgyZjQxODI5Mzk1Njc4NzE3NDk0MGZlOGUzMTZjNmE1My4uYzMwMmM1OTQzZjdjMmRl
N2YwYzJmZjNmMzhmMjc5ZWIzYTRjNjU0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChD
KSAyMDEwLTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDEwLTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJp
Z2h0IChDKSAyMDEyIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICog
Q29weXJpZ2h0IChDKSAyMDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFy
eSgtaWVzKQogICoKQEAgLTQxOCw2ICs0MTgsNyBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90
IHBhZ2VJRCwgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQogICAgIHBhZ2VDb25maWd1cmF0aW9uLnBheW1lbnRDb29yZGluYXRv
ckNsaWVudCA9IG5ldyBXZWJQYXltZW50Q29vcmRpbmF0b3IoKnRoaXMpOworICAgIHBhZ2VDb25m
aWd1cmF0aW9uLmF2YWlsYWJsZVBheW1lbnROZXR3b3JrcyA9IFdURk1vdmUocGFyYW1ldGVycy5h
dmFpbGFibGVQYXltZW50TmV0d29ya3MpOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQVBQTElDQVRJ
T05fTUFOSUZFU1QpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTZkMTE4ZDUxMWJmMmFjMWI1YzY4NjczM2UyODIyN2EyZTlm
ZGI0OS4uNGJkZWUxZTZlMzExMjZiMWIwYTZhMGNkMjRjZmNlMDE5M2IwN2VjNSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE1IEBACisyMDE3LTEyLTE4ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4K
KworICAgICAgICBbQXBwbGUgUGF5XSBTdG9wIG1haW50YWluaW5nIGEgbGlzdCBvZiBwYXltZW50
IG5ldHdvcmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODA5NjUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM0Njk2NTYwPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9zc2wvYXBw
bGVwYXkvQXBwbGVQYXlTZXNzaW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb24uaHRtbDogQWRkZWQgYSB0ZXN0IGNhc2UgZm9y
IG5ldHdvcmsgbmFtZXMgd2l0aAorICAgICAgICB2YXJ5aW5nIGNhcGl0YWxpemF0aW9uLgorCiAy
MDE3LTEyLTE4ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBB
ZGQgYSB0ZXN0IHRvIGVuc3VyZSB0aGF0IG1hdGNoZWQgdGV4dCBtYXJrZXJzIGFyZSBub3QgaGln
aGxpZ2h0ZWQgd2hlbiBoaWdobGlnaHQgaXMgZGlzYWJsZWQKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc3NsL2FwcGxlcGF5L0FwcGxlUGF5U2Vzc2lvbi1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb24tZXhw
ZWN0ZWQudHh0CmluZGV4IDgwNWZlMDA4YjdkNzg4YWQ3NTZhZDhmOWU2OTIxOWEwMGQ0ZGU4MWMu
LjVjNjNiOWQzNDM0OTVjZDM0ZDE1YmMyOTczOGY5YjhiY2IwZjg3MzkgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc3NsL2FwcGxlcGF5L0FwcGxlUGF5U2Vzc2lvbi1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zc2wvYXBwbGVwYXkvQXBwbGVQYXlT
ZXNzaW9uLWV4cGVjdGVkLnR4dApAQCAtODIsNiArODIsOSBAQCBQQVNTIG5ldyBBcHBsZVBheVNl
c3Npb24oMiwgcmVxdWVzdCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogImNhcnRlQmFuY2Fp
cmUiCiBTRVRVUDogcmVxdWVzdCA9IHZhbGlkUmVxdWVzdCgpOyByZXF1ZXN0LnN1cHBvcnRlZE5l
dHdvcmtzID0gWyd2aXNhJywgJ3Zpc2EnXTsKIFBBU1MgbmV3IEFwcGxlUGF5U2Vzc2lvbigyLCBy
ZXF1ZXN0KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIAorU0VUVVA6IHJlcXVlc3QgPSB2YWxp
ZFJlcXVlc3QoKTsgcmVxdWVzdC5zdXBwb3J0ZWROZXR3b3JrcyA9IFsndklzYScsICdNYXN0ZXJD
YXJkJywgJ0pDQiddOworUEFTUyBuZXcgQXBwbGVQYXlTZXNzaW9uKDIsIHJlcXVlc3QpIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorCiBUZXN0aW5nIFBheW1lbnRSZXF1ZXN0Lm1lcmNoYW50Q2Fw
YWJpbGl0aWVzCiAKIFNFVFVQOiByZXF1ZXN0ID0gdmFsaWRSZXF1ZXN0KCk7IGRlbGV0ZSByZXF1
ZXN0Lm1lcmNoYW50Q2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zc2wvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb24uaHRtbAppbmRleCA5N2RmMjM0ODdl
YzMxNDk1MmQ4ZGU3YmVjMzU0MjVlYTViYmRiZDcyLi5lZmVjMDkxM2E4N2UwOTAzYWYyMjA1ZGIy
NmI4YjlhYjgyMzljYjc0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NzbC9h
cHBsZXBheS9BcHBsZVBheVNlc3Npb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NzbC9hcHBsZXBheS9BcHBsZVBheVNlc3Npb24uaHRtbApAQCAtNzUsNiArNzUsNyBAQCBmdW5j
dGlvbiBnbygpIHsKICAgICBsb2dBbmRTaG91bGRUaHJvdygicmVxdWVzdCA9IHZhbGlkUmVxdWVz
dCgpOyByZXF1ZXN0LnN1cHBvcnRlZE5ldHdvcmtzID0gWydjYXJ0ZUJhbmNhaXJlJ107IiwgIm5l
dyBBcHBsZVBheVNlc3Npb24oMiwgcmVxdWVzdCkiKQogICAgIC8vIEZJWE1FOiBTaG91bGQgZHVw
bGljYXRlIHN1cHBvcnRlZE5ldHdvcmtzIGJlIGFsbG93ZWQ/CiAgICAgbG9nQW5kU2hvdWxkTm90
VGhyb3coInJlcXVlc3QgPSB2YWxpZFJlcXVlc3QoKTsgcmVxdWVzdC5zdXBwb3J0ZWROZXR3b3Jr
cyA9IFsndmlzYScsICd2aXNhJ107IiwgIm5ldyBBcHBsZVBheVNlc3Npb24oMiwgcmVxdWVzdCki
KQorICAgIGxvZ0FuZFNob3VsZE5vdFRocm93KCJyZXF1ZXN0ID0gdmFsaWRSZXF1ZXN0KCk7IHJl
cXVlc3Quc3VwcG9ydGVkTmV0d29ya3MgPSBbJ3ZJc2EnLCAnTWFzdGVyQ2FyZCcsICdKQ0InXTsi
LCAibmV3IEFwcGxlUGF5U2Vzc2lvbigyLCByZXF1ZXN0KSIpCiAgICAgCiAgICAgZGVidWcoIlRl
c3RpbmcgUGF5bWVudFJlcXVlc3QubWVyY2hhbnRDYXBhYmlsaXRpZXMiKQogICAgIGRlYnVnKCIi
KTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>