<?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>80216</bug_id>
          
          <creation_ts>2012-03-03 17:02:53 -0800</creation_ts>
          <short_desc>Remove the redundant method KURL::protocolInHTTPFamily()</short_desc>
          <delta_ts>2012-03-03 19:26:47 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>EasyFix</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>abarth</cc>
    
    <cc>gustavo</cc>
    
    <cc>japhet</cc>
    
    <cc>menard</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>570184</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-03-03 17:02:53 -0800</bug_when>
    <thetext>Tsssss
    // FIXME: Remove this after changing all callers to use protocolIsInHTTPFamily.
    bool protocolInHTTPFamily() const { return protocolIsInHTTPFamily(); }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570188</commentid>
    <comment_count>1</comment_count>
      <attachid>130011</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-03-03 17:09:35 -0800</bug_when>
    <thetext>Created attachment 130011
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570201</commentid>
    <comment_count>2</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-03-03 19:26:47 -0800</bug_when>
    <thetext>Committed r109670: &lt;http://trac.webkit.org/changeset/109670&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130011</attachid>
            <date>2012-03-03 17:09:35 -0800</date>
            <delta_ts>2012-03-03 17:12:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80216-20120303170934.patch</filename>
            <type>text/plain</type>
            <size>29654</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NjY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI2MGRlMTY4YzU0NmM2
NmNlOWFjZjhhZjMzYTFmMDU5NjU3NjJhMC4uODNkNDJhOTgyZDJkNzJhMmM0NjA4OWRiNDlkOGE5
OWNhMzQ1MTYxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDEyLTAzLTAzICBCZW5q
YW1pbiBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZW1vdmUgdGhl
IHJlZHVuZGFudCBtZXRob2QgS1VSTDo6cHJvdG9jb2xJbkhUVFBGYW1pbHkoKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyMTYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6b3Blbik6CisgICAgICAgIChX
ZWJDb3JlOjpGcmFtZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QpOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkU2NoZWR1bGVyOjpob3N0Rm9yVVJMKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlTG9hZFNjaGVkdWxlcjo6c2NoZWR1bGVMb2FkKToKKyAgICAgICAgKiBsb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dldCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpmcmVz
aG5lc3NMaWZldGltZSk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUNhY2hlOjpyZW1vdmVGcmFnbWVudElkZW50aWZpZXJJ
Zk5lZWRlZCk6CisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SWNvbkNvbnRyb2xsZXI6OmRlZmF1bHRVUkwpOgorICAgICAgICAqIHBs
YXRmb3JtL0tVUkwuaDoKKyAgICAgICAgKEtVUkwpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwOgorICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q3JlZGVudGlhbFN0b3JhZ2U6OnNldCk6CisgICAgICAgIChXZWJDb3JlOjpmaW5kRGVmYXVsdFBy
b3RlY3Rpb25TcGFjZUZvclVSTCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZVJlcXVlc3RCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJhc2U6
OnNldENhY2hlUG9saWN5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJhc2U6
OnNldFRpbWVvdXRJbnRlcnZhbCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RC
YXNlOjpzZXRIVFRQTWV0aG9kKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJh
c2U6OnNldEhUVFBIZWFkZXJGaWVsZCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3RCYXNlOjpjbGVhckhUVFBBdXRob3JpemF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdEJhc2U6OmNsZWFySFRUUFJlZmVycmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdEJhc2U6OmNsZWFySFRUUE9yaWdpbik6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3RCYXNlOjpzZXRSZXNwb25zZUNvbnRlbnREaXNwb3NpdGlvbkVuY29kaW5n
RmFsbGJhY2tBcnJheSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RCYXNlOjpz
ZXRIVFRQQm9keSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RCYXNlOjpzZXRB
bGxvd0Nvb2tpZXMpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0QmFzZTo6c2V0
UHJpb3JpdHkpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0QmFzZTo6YWRkSFRU
UEhlYWRlckZpZWxkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0
d29ya01hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya01hbmFnZXI6OnN0YXJ0
Sm9iKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZOZXQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGU6OmNyZWF0ZUNGVVJMQ29ubmVj
dGlvbik6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMu
bW06CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6Y3JlYXRlTlNVUkxDb25uZWN0
aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlFOZXR3b3JrUmVwbHlIYW5kbGVyOjpzZW5kUmVzcG9u
c2VJZk5lZWRlZCk6CisgICAgICAgICogeG1sL1hNTEh0dHBSZXF1ZXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0OjpzZW5kKToKKwogMjAxMi0wMy0wMyAgUmF5bW9uZCBU
b3kgIDxydG95QGdvb2dsZS5jb20+CiAKICAgICAgICAgRGVsYXlOb2RlIGhhcyBhIGZpeGVkIG9u
ZSBzZWNvbmQgbWF4IGRlbGF5IHRpbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMGFm
ODM0NmFlMThhZjI1ZTQyNDNjZTJhMDkwZDhjMDc0MmZlMDczOS4uNTE3NjNhYzU0NDJjYWEyOTk1
MzY4Y2MwNTVkMzBkMDNiMWRiYTg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAxMi0wMy0wMyAgQmVuamFtaW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIHRoZSByZWR1bmRhbnQgbWV0aG9kIEtVUkw6OnByb3Rv
Y29sSW5IVFRQRmFtaWx5KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTgwMjE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6RnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaXNwYXRjaFdpbGxQZXJmb3JtQ2xpZW50UmVkaXJl
Y3QpOgorICAgICAgICAqIHNyYy9XZWJQYWdlU2VyaWFsaXplci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpyZXRyaWV2ZVJlc291cmNlc0ZvckVsZW1lbnQpOgorCiAyMDEyLTAzLTAzICBCaWxsIEJ1
ZGdlICA8YmJ1ZGdlQGNocm9taXVtLm9yZz4KIAogICAgICAgICBGaXhlcyBBc3NvY2lhdGVkVVJM
TG9hZGVyIHN1cHBvcnQgZm9yIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzIGZpZWxkIGlu
IHJlc3BvbnNlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGE0NTk2OTBjNDJkZTRjOTFmN2RmODc4OTJk
ZWRkNTI3NmFiMTgzMTguLmE1Zjg2MzJjNTcwNjhhODQxYzJiNDQ5NzdkOGY3NzJiMTIxMjEwMmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wMy0wMyAgQmVuamFtaW4g
UG91bGFpbiAgPGJlbmphbWluQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIHRoZSByZWR1
bmRhbnQgbWV0aG9kIEtVUkw6OnByb3RvY29sSW5IVFRQRmFtaWx5KCkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMjE2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQ
bHVnaW4pOgorCiAyMDEyLTAzLTAzICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5j
b20+CiAKICAgICAgICAgRml4IGJ1aWxkIHdpdGggbmV3ZXIgdmVyc2lvbnMgb2YgY2xhbmcuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKaW5kZXggZDYzNjUxMDY1YWIyYTU2NGY2MTQ3NDBmZDBjM2NiNGI1YTM1YmNh
Zi4uMzg3OWQzYzhmMjBlMTNlMDlmNGFlZjBkMzEzYjE2YmJmNmMzMWRlMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEyLTAzLTAzICBCZW5qYW1pbiBQb3VsYWluICA8YmVu
amFtaW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZW1vdmUgdGhlIHJlZHVuZGFudCBtZXRob2Qg
S1VSTDo6cHJvdG9jb2xJbkhUVFBGYW1pbHkoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyMTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
LmNwcDoKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxUb1N0
YXJ0UGx1Z2luKToKKyAgICAgICAgKiBXZWJIaXN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkhpc3Rv
cnk6OnZpc2l0ZWRVUkwpOgorCiAyMDEyLTAyLTI2ICBIYWppbWUgTW9ycml0YSAgPG1vcnJpdGFA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIE1vdmUgQ2hyb21lQ2xpZW50OjpzaG93Q29udGV4dE1l
bnUoKSB0byBDb250ZXh0TWVudUNsaWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5j
cHAKaW5kZXggNzU4Y2EyMGU5Mjg2ZTU2NGVmYzRiNjhkY2Y4OGIxNzZlNjg1MmMwNi4uNjc3NmFk
NzkzZWE4NjY1YjMwYTE5OTczYjM5ZjY3OTg2OTZjNzFjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXIuY3BwCkBAIC0yMDI2LDcgKzIwMjYsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpv
cGVuKENhY2hlZEZyYW1lQmFzZSYgY2FjaGVkRnJhbWUpCiAgICAgS1VSTCB1cmwgPSBjYWNoZWRG
cmFtZS51cmwoKTsKIAogICAgIC8vIEZJWE1FOiBJIHN1c3BlY3QgdGhpcyBibG9jayBvZiBjb2Rl
IGRvZXNuJ3QgZG8gYW55dGhpbmcuCi0gICAgaWYgKHVybC5wcm90b2NvbEluSFRUUEZhbWlseSgp
ICYmICF1cmwuaG9zdCgpLmlzRW1wdHkoKSAmJiB1cmwucGF0aCgpLmlzRW1wdHkoKSkKKyAgICBp
ZiAodXJsLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSAmJiAhdXJsLmhvc3QoKS5pc0VtcHR5KCkg
JiYgdXJsLnBhdGgoKS5pc0VtcHR5KCkpCiAgICAgICAgIHVybC5zZXRQYXRoKCIvIik7CiAKICAg
ICBtX2hhc1JlY2VpdmVkRmlyc3REYXRhID0gZmFsc2U7CkBAIC0yNTU1LDcgKzI1NTUsNyBAQCB2
b2lkIEZyYW1lTG9hZGVyOjphZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIEZyYW1lTG9hZFR5cAogICAgIH0KIAogICAgIC8vIFRoZSByZW1haW5pbmcgbW9k
aWZpY2F0aW9ucyBhcmUgb25seSBuZWNlc3NhcnkgZm9yIEhUVFAgYW5kIEhUVFBTLgotICAgIGlm
ICghcmVxdWVzdC51cmwoKS5pc0VtcHR5KCkgJiYgIXJlcXVlc3QudXJsKCkucHJvdG9jb2xJbkhU
VFBGYW1pbHkoKSkKKyAgICBpZiAoIXJlcXVlc3QudXJsKCkuaXNFbXB0eSgpICYmICFyZXF1ZXN0
LnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAg
YXBwbHlVc2VyQWdlbnQocmVxdWVzdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRTY2hlZHVsZXIuY3BwCmluZGV4IDg2Y2YwYTFhMmQ1M2RhNzk3NGQ5ZTA3NjY3YWNk
YzNjNGFlN2M1NDAuLjgwMDRkOGYyZWIyZDhiYzM2MDZhMDY5ZmM3ZWVhMzUxYWZjZmNkYWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCkBA
IC01NCw3ICs1NCw3IEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBtYXhSZXF1ZXN0c0luRmxpZ2h0
UGVySG9zdCA9IDEwMDAwOwogCiBSZXNvdXJjZUxvYWRTY2hlZHVsZXI6Okhvc3RJbmZvcm1hdGlv
biogUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpob3N0Rm9yVVJMKGNvbnN0IEtVUkwmIHVybCwgQ3Jl
YXRlSG9zdFBvbGljeSBjcmVhdGVIb3N0UG9saWN5KQogewotICAgIGlmICghdXJsLnByb3RvY29s
SW5IVFRQRmFtaWx5KCkpCisgICAgaWYgKCF1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQog
ICAgICAgICByZXR1cm4gbV9ub25IVFRQUHJvdG9jb2xIb3N0OwogCiAgICAgbV9ob3N0cy5jaGVj
a0NvbnNpc3RlbmN5KCk7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRTY2hl
ZHVsZXI6OnNjaGVkdWxlTG9hZChSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIsIFJlc291
cmMKICAgICBib29sIGhhZFJlcXVlc3RzID0gaG9zdC0+aGFzUmVxdWVzdHMoKTsKICAgICBob3N0
LT5zY2hlZHVsZShyZXNvdXJjZUxvYWRlciwgcHJpb3JpdHkpOwogCi0gICAgaWYgKHByaW9yaXR5
ID4gUmVzb3VyY2VMb2FkUHJpb3JpdHlMb3cgfHwgIXJlc291cmNlTG9hZGVyLT51cmwoKS5wcm90
b2NvbEluSFRUUEZhbWlseSgpIHx8IChwcmlvcml0eSA9PSBSZXNvdXJjZUxvYWRQcmlvcml0eUxv
dyAmJiAhaGFkUmVxdWVzdHMpKSB7CisgICAgaWYgKHByaW9yaXR5ID4gUmVzb3VyY2VMb2FkUHJp
b3JpdHlMb3cgfHwgIXJlc291cmNlTG9hZGVyLT51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5
KCkgfHwgKHByaW9yaXR5ID09IFJlc291cmNlTG9hZFByaW9yaXR5TG93ICYmICFoYWRSZXF1ZXN0
cykpIHsKICAgICAgICAgLy8gVHJ5IHRvIHJlcXVlc3QgaW1wb3J0YW50IHJlc291cmNlcyBpbW1l
ZGlhdGVseS4KICAgICAgICAgc2VydmVQZW5kaW5nUmVxdWVzdHMoaG9zdCwgcHJpb3JpdHkpOwog
ICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZS5jcHAKaW5kZXggNTg5NTg3ZDMwYTkwOGI1MmM1ZjJjMzkxNTNiZTg3
MjRmYWM3ZjUwYS4uNjNjZDdiYmJmYTg3ODlmNGFkYjNkZjUyY2I0ZTljMTdkZDcxNTk0NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
LmNwcApAQCAtMTE3LDcgKzExNyw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogQXBwbGlj
YXRpb25DYWNoZTo6cmVzb3VyY2VGb3JVUkwoY29uc3QgU3RyaW5nJiB1cmwpCiAKIGJvb2wgQXBw
bGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0KQogewotICAgIGlmICghcmVxdWVzdC51cmwoKS5wcm90b2NvbEluSFRUUEZh
bWlseSgpKQorICAgIGlmICghcmVxdWVzdC51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKICAgICBpZiAoIWVxdWFsSWdub3JpbmdDYXNl
KHJlcXVlc3QuaHR0cE1ldGhvZCgpLCAiR0VUIikpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRleCA3OGE3MWMxODczZTA0MmYxOWY2MzMwOTdi
ZmJiZTRjZDgzNzllNThhLi5lOWM2MTk4MDQwYjQxMzcxZDllOWFhZmQ1OGJkN2Q5MjIyYTg0YWNk
IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAK
QEAgLTI5OSw3ICsyOTksNyBAQCBkb3VibGUgQ2FjaGVkUmVzb3VyY2U6OmN1cnJlbnRBZ2UoKSBj
b25zdAogZG91YmxlIENhY2hlZFJlc291cmNlOjpmcmVzaG5lc3NMaWZldGltZSgpIGNvbnN0CiB7
CiAgICAgLy8gQ2FjaGUgbm9uLWh0dHAgcmVzb3VyY2VzIGxpYmVyYWxseQotICAgIGlmICghbV9y
ZXNwb25zZS51cmwoKS5wcm90b2NvbEluSFRUUEZhbWlseSgpKQorICAgIGlmICghbV9yZXNwb25z
ZS51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpCiAgICAgICAgIHJldHVybiBzdGQ6Om51
bWVyaWNfbGltaXRzPGRvdWJsZT46Om1heCgpOwogCiAgICAgLy8gUkZDMjYxNiAxMy4yLjQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvTWVtb3J5Q2FjaGUuY3BwCmluZGV4IGY0Njg4OWZk
MGE5NzUxNjM2ZDgyNjllMWNjNDk1MzViNmM2OGFlNDYuLjY3OTZjMTJmYjg2ZGIyODg3OGJkYjU3
OTUyYTY2YWRhOTFjNjcxZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9NZW1vcnlDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL01lbW9y
eUNhY2hlLmNwcApAQCAtNzcsNyArNzcsNyBAQCBLVVJMIE1lbW9yeUNhY2hlOjpyZW1vdmVGcmFn
bWVudElkZW50aWZpZXJJZk5lZWRlZChjb25zdCBLVVJMJiBvcmlnaW5hbFVSTCkKICAgICAvLyBT
dHJpcCBhd2F5IGZyYWdtZW50IGlkZW50aWZpZXIgZnJvbSBIVFRQIFVSTHMuCiAgICAgLy8gRGF0
YSBVUkxzIG11c3QgYmUgdW5tb2RpZmllZC4gRm9yIGZpbGUgYW5kIGN1c3RvbSBVUkxzIGNsaWVu
dHMgbWF5IGV4cGVjdCByZXNvdXJjZXMgCiAgICAgLy8gdG8gYmUgdW5pcXVlIGV2ZW4gd2hlbiB0
aGV5IGRpZmZlciBieSB0aGUgZnJhZ21lbnQgaWRlbnRpZmllciBvbmx5LgotICAgIGlmICghb3Jp
Z2luYWxVUkwucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkKKyAgICBpZiAoIW9yaWdpbmFsVVJMLnBy
b3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgcmV0dXJuIG9yaWdpbmFsVVJMOwogICAg
IEtVUkwgdXJsID0gb3JpZ2luYWxVUkw7CiAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmll
cigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkNvbnRyb2xs
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkNvbnRyb2xsZXIuY3BwCmlu
ZGV4IDJlNTYzOGNiMDQ5MWY5ZTJkMzE1NTAxY2E0ZTQzMDFlZDRkMTRiY2UuLmI0YTcyYzYzYmY3
NjE2NDZjMGIyMWI2MmI5YzQ5MjY3YzM1YjUwOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL0ljb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvaWNvbi9JY29uQ29udHJvbGxlci5jcHAKQEAgLTI1Nyw3ICsyNTcsNyBAQCBJY29uVVJMIElj
b25Db250cm9sbGVyOjpkZWZhdWx0VVJMKEljb25UeXBlIGljb25UeXBlKQogewogICAgIC8vIERv
bid0IHJldHVybiBhIGZhdmljb24gaWNvblVSTCB1bmxlc3Mgd2UncmUgaHR0cCBvciBodHRwcwog
ICAgIEtVUkwgZG9jdW1lbnRVUkwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsKLSAgICBp
ZiAoIWRvY3VtZW50VVJMLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpCisgICAgaWYgKCFkb2N1bWVu
dFVSTC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpCiAgICAgICAgIHJldHVybiBJY29uVVJMKCk7
CiAKICAgICBLVVJMIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0tV
UkwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0tVUkwuaAppbmRleCAyYjNkYjExYzJiYmE3
ZjAxN2Q0NDk2YmVhZTMyN2QyYmI3YTc0NzE0Li4yNjc1YjQ4OWVmNjg4ODE2OGIzZGY0ZTllOTky
NmQxZGVmMGQ5YWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9LVVJMLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vS1VSTC5oCkBAIC0yMjgsOSArMjI4LDYgQEAg
cHVibGljOgogICAgIHZvaWQgcHJpbnQoKSBjb25zdDsKICNlbmRpZgogCi0gICAgLy8gRklYTUU6
IFJlbW92ZSB0aGlzIGFmdGVyIGNoYW5naW5nIGFsbCBjYWxsZXJzIHRvIHVzZSBwcm90b2NvbElz
SW5IVFRQRmFtaWx5LgotICAgIGJvb2wgcHJvdG9jb2xJbkhUVFBGYW1pbHkoKSBjb25zdCB7IHJl
dHVybiBwcm90b2NvbElzSW5IVFRQRmFtaWx5KCk7IH0KLQogcHJpdmF0ZToKICAgICB2b2lkIGlu
dmFsaWRhdGUoKTsKICAgICBib29sIGlzSGllcmFyY2hpY2FsKCkgY29uc3Q7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291
cmNlR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwCmluZGV4IDJmYzAwNTgxYTIwMjRhN2Q0
NmZkY2FlMmViN2RhODU0NjFmMjExNGUuLjJhMGFmMGM4NjczOTY3YmZmYjU2NWQ2ZDkyNTg5YTc5
ZWU0MTc1MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRXZWJTb3VyY2VHU3RyZWFtZXIuY3Bw
CkBAIC01ODAsNyArNTgwLDcgQEAgc3RhdGljIGdib29sZWFuIHdlYktpdFdlYlNyY1NldFVyaShH
c3RVUklIYW5kbGVyKiBoYW5kbGVyLCBjb25zdCBnY2hhciogdXJpLCBHRXIKIAogICAgIEtVUkwg
dXJsKEtVUkwoKSwgdXJpKTsKIAotICAgIGlmICghdXJsLmlzVmFsaWQoKSB8fCAhdXJsLnByb3Rv
Y29sSW5IVFRQRmFtaWx5KCkpIHsKKyAgICBpZiAoIXVybC5pc1ZhbGlkKCkgfHwgIXVybC5wcm90
b2NvbElzSW5IVFRQRmFtaWx5KCkpIHsKICAgICAgICAgZ19zZXRfZXJyb3IoZXJyb3IsIEdTVF9V
UklfRVJST1IsIEdTVF9VUklfRVJST1JfQkFEX1VSSSwgIkludmFsaWQgVVJJICclcyciLCB1cmkp
OwogICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgfQpAQCAtNjI0LDcgKzYyNCw3IEBAIHN0YXRp
YyBnYm9vbGVhbiB3ZWJLaXRXZWJTcmNTZXRVcmkoR3N0VVJJSGFuZGxlciogaGFuZGxlciwgY29u
c3QgZ2NoYXIqIHVyaSkKIAogICAgIEtVUkwgdXJsKEtVUkwoKSwgdXJpKTsKIAotICAgIGlmICgh
dXJsLmlzVmFsaWQoKSB8fCAhdXJsLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpIHsKKyAgICBpZiAo
IXVybC5pc1ZhbGlkKCkgfHwgIXVybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpIHsKICAgICAg
ICAgR1NUX0VSUk9SX09CSkVDVChzcmMsICJJbnZhbGlkIFVSSSAnJXMnIiwgdXJpKTsKICAgICAg
ICAgcmV0dXJuIEZBTFNFOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9DcmVkZW50aWFsU3RvcmFnZS5jcHAKaW5kZXggMzYxYzc4NDc3ZjBjZTkyZDdm
NzZkZjYxYzk3N2E5MTA0MWJlNzIxZi4uZjA5ODRmODg1NThkNWM3OWUyODM0ZTFhY2IyODZkOGE3
OTdhMjVlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9DcmVk
ZW50aWFsU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9D
cmVkZW50aWFsU3RvcmFnZS5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgc3RhdGljIFN0cmluZyBwcm90
ZWN0aW9uU3BhY2VNYXBLZXlGcm9tVVJMKGNvbnN0IEtVUkwmIHVybCkKIAogdm9pZCBDcmVkZW50
aWFsU3RvcmFnZTo6c2V0KGNvbnN0IENyZWRlbnRpYWwmIGNyZWRlbnRpYWwsIGNvbnN0IFByb3Rl
Y3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlLCBjb25zdCBLVVJMJiB1cmwpCiB7Ci0gICAgQVNT
RVJUKHByb3RlY3Rpb25TcGFjZS5pc1Byb3h5KCkgfHwgdXJsLnByb3RvY29sSW5IVFRQRmFtaWx5
KCkpOworICAgIEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgpIHx8IHVybC5wcm90b2Nv
bElzSW5IVFRQRmFtaWx5KCkpOwogICAgIEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgp
IHx8IHVybC5pc1ZhbGlkKCkpOwogCiAgICAgcHJvdGVjdGlvblNwYWNlVG9DcmVkZW50aWFsTWFw
KCkuc2V0KHByb3RlY3Rpb25TcGFjZSwgY3JlZGVudGlhbCk7CkBAIC0xMTIsNyArMTEyLDcgQEAg
dm9pZCBDcmVkZW50aWFsU3RvcmFnZTo6cmVtb3ZlKGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJv
dGVjdGlvblNwYWNlKQogCiBzdGF0aWMgUGF0aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcDo6
aXRlcmF0b3IgZmluZERlZmF1bHRQcm90ZWN0aW9uU3BhY2VGb3JVUkwoY29uc3QgS1VSTCYgdXJs
KQogewotICAgIEFTU0VSVCh1cmwucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJU
KHVybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpOwogICAgIEFTU0VSVCh1cmwuaXNWYWxpZCgp
KTsKIAogICAgIFBhdGhUb0RlZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXAmIG1hcCA9IHBhdGhUb0Rl
ZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXAoKTsKQEAgLTE0MSw3ICsxNDEsNyBAQCBzdGF0aWMgUGF0
aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcDo6aXRlcmF0b3IgZmluZERlZmF1bHRQcm90ZWN0
aW9uU3BhY2VGb3JVUgogCiBib29sIENyZWRlbnRpYWxTdG9yYWdlOjpzZXQoY29uc3QgQ3JlZGVu
dGlhbCYgY3JlZGVudGlhbCwgY29uc3QgS1VSTCYgdXJsKQogewotICAgIEFTU0VSVCh1cmwucHJv
dG9jb2xJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJUKHVybC5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkpOwogICAgIEFTU0VSVCh1cmwuaXNWYWxpZCgpKTsKICAgICBQYXRoVG9EZWZhdWx0UHJv
dGVjdGlvblNwYWNlTWFwOjppdGVyYXRvciBpdGVyID0gZmluZERlZmF1bHRQcm90ZWN0aW9uU3Bh
Y2VGb3JVUkwodXJsKTsKICAgICBpZiAoaXRlciA9PSBwYXRoVG9EZWZhdWx0UHJvdGVjdGlvblNw
YWNlTWFwKCkuZW5kKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlUmVxdWVzdEJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlcXVlc3RCYXNlLmNwcAppbmRleCBlMWU5NmM0MDkyNmEzNzI3ZjhkMDdl
ZjAwZGZlZTQ0MGZkZmY0NTNmLi4yM2VjZTI0ZGM3OGVlNTFhNzg1ZjkyNzg5NzU4NjA5NzU4ZmM4
NTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
UmVxdWVzdEJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXF1ZXN0QmFzZS5jcHAKQEAgLTE1MSw3ICsxNTEsNyBAQCB2b2lkIFJlc291cmNlUmVx
dWVzdEJhc2U6OnNldENhY2hlUG9saWN5KFJlc291cmNlUmVxdWVzdENhY2hlUG9saWN5IGNhY2hl
UG9saWN5KQogICAgIAogICAgIG1fY2FjaGVQb2xpY3kgPSBjYWNoZVBvbGljeTsKICAgICAKLSAg
ICBpZiAodXJsKCkucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkKKyAgICBpZiAodXJsKCkucHJvdG9j
b2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQgPSBm
YWxzZTsKIH0KIApAQCAtMTY4LDcgKzE2OCw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0QmFzZTo6
c2V0VGltZW91dEludGVydmFsKGRvdWJsZSB0aW1lb3V0SW50ZXJ2YWwpCiAgICAgCiAgICAgbV90
aW1lb3V0SW50ZXJ2YWwgPSB0aW1lb3V0SW50ZXJ2YWw7IAogICAgIAotICAgIGlmICh1cmwoKS5w
cm90b2NvbEluSFRUUEZhbWlseSgpKQorICAgIGlmICh1cmwoKS5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkpCiAgICAgICAgIG1fcGxhdGZvcm1SZXF1ZXN0VXBkYXRlZCA9IGZhbHNlOwogfQogCkBA
IC0yMDEsNyArMjAxLDcgQEAgdm9pZCBSZXNvdXJjZVJlcXVlc3RCYXNlOjpzZXRIVFRQTWV0aG9k
KGNvbnN0IFN0cmluZyYgaHR0cE1ldGhvZCkKIAogICAgIG1faHR0cE1ldGhvZCA9IGh0dHBNZXRo
b2Q7CiAgICAgCi0gICAgaWYgKHVybCgpLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpCisgICAgaWYg
KHVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgbV9wbGF0Zm9ybVJlcXVl
c3RVcGRhdGVkID0gZmFsc2U7CiB9CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCB2b2lkIFJlc291cmNl
UmVxdWVzdEJhc2U6OnNldEhUVFBIZWFkZXJGaWVsZChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUs
IGNvbnN0IFN0cgogICAgIAogICAgIG1faHR0cEhlYWRlckZpZWxkcy5zZXQobmFtZSwgdmFsdWUp
OyAKICAgICAKLSAgICBpZiAodXJsKCkucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkKKyAgICBpZiAo
dXJsKCkucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBtX3BsYXRmb3JtUmVxdWVz
dFVwZGF0ZWQgPSBmYWxzZTsKIH0KIApAQCAtMjQ3LDcgKzI0Nyw3IEBAIHZvaWQgUmVzb3VyY2VS
ZXF1ZXN0QmFzZTo6Y2xlYXJIVFRQQXV0aG9yaXphdGlvbigpCiAKICAgICBtX2h0dHBIZWFkZXJG
aWVsZHMucmVtb3ZlKCJBdXRob3JpemF0aW9uIik7CiAKLSAgICBpZiAodXJsKCkucHJvdG9jb2xJ
bkhUVFBGYW1pbHkoKSkKKyAgICBpZiAodXJsKCkucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQog
ICAgICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQgPSBmYWxzZTsKIH0KIApAQCAtMjU3LDcg
KzI1Nyw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0QmFzZTo6Y2xlYXJIVFRQUmVmZXJyZXIoKQog
CiAgICAgbV9odHRwSGVhZGVyRmllbGRzLnJlbW92ZSgiUmVmZXJlciIpOwogCi0gICAgaWYgKHVy
bCgpLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpCisgICAgaWYgKHVybCgpLnByb3RvY29sSXNJbkhU
VFBGYW1pbHkoKSkKICAgICAgICAgbV9wbGF0Zm9ybVJlcXVlc3RVcGRhdGVkID0gZmFsc2U7CiB9
CiAKQEAgLTI2Nyw3ICsyNjcsNyBAQCB2b2lkIFJlc291cmNlUmVxdWVzdEJhc2U6OmNsZWFySFRU
UE9yaWdpbigpCiAKICAgICBtX2h0dHBIZWFkZXJGaWVsZHMucmVtb3ZlKCJPcmlnaW4iKTsKIAot
ICAgIGlmICh1cmwoKS5wcm90b2NvbEluSFRUUEZhbWlseSgpKQorICAgIGlmICh1cmwoKS5wcm90
b2NvbElzSW5IVFRQRmFtaWx5KCkpCiAgICAgICAgIG1fcGxhdGZvcm1SZXF1ZXN0VXBkYXRlZCA9
IGZhbHNlOwogfQogCkBAIC0yODMsNyArMjgzLDcgQEAgdm9pZCBSZXNvdXJjZVJlcXVlc3RCYXNl
OjpzZXRSZXNwb25zZUNvbnRlbnREaXNwb3NpdGlvbkVuY29kaW5nRmFsbGJhY2tBcnJheShjb24K
ICAgICBpZiAoIWVuY29kaW5nMy5pc051bGwoKSkKICAgICAgICAgbV9yZXNwb25zZUNvbnRlbnRE
aXNwb3NpdGlvbkVuY29kaW5nRmFsbGJhY2tBcnJheS5hcHBlbmQoZW5jb2RpbmczKTsKICAgICAK
LSAgICBpZiAodXJsKCkucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkKKyAgICBpZiAodXJsKCkucHJv
dG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQg
PSBmYWxzZTsKIH0KIApAQCAtMzAwLDcgKzMwMCw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0QmFz
ZTo6c2V0SFRUUEJvZHkoUGFzc1JlZlB0cjxGb3JtRGF0YT4gaHR0cEJvZHkpCiAgICAgCiAgICAg
bV9odHRwQm9keSA9IGh0dHBCb2R5OyAKICAgICAKLSAgICBpZiAodXJsKCkucHJvdG9jb2xJbkhU
VFBGYW1pbHkoKSkKKyAgICBpZiAodXJsKCkucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAg
ICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQgPSBmYWxzZTsKIH0gCiAKQEAgLTMxNyw3ICsz
MTcsNyBAQCB2b2lkIFJlc291cmNlUmVxdWVzdEJhc2U6OnNldEFsbG93Q29va2llcyhib29sIGFs
bG93Q29va2llcykKICAgICAKICAgICBtX2FsbG93Q29va2llcyA9IGFsbG93Q29va2llczsKICAg
ICAKLSAgICBpZiAodXJsKCkucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkKKyAgICBpZiAodXJsKCku
cHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0
ZWQgPSBmYWxzZTsKIH0KIApAQCAtMzM0LDcgKzMzNCw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0
QmFzZTo6c2V0UHJpb3JpdHkoUmVzb3VyY2VMb2FkUHJpb3JpdHkgcHJpb3JpdHkpCiAKICAgICBt
X3ByaW9yaXR5ID0gcHJpb3JpdHk7CiAKLSAgICBpZiAodXJsKCkucHJvdG9jb2xJbkhUVFBGYW1p
bHkoKSkKKyAgICBpZiAodXJsKCkucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBt
X3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQgPSBmYWxzZTsKIH0KIApAQCAtMzQ1LDcgKzM0NSw3IEBA
IHZvaWQgUmVzb3VyY2VSZXF1ZXN0QmFzZTo6YWRkSFRUUEhlYWRlckZpZWxkKGNvbnN0IEF0b21p
Y1N0cmluZyYgbmFtZSwgY29uc3QgU3RyCiAgICAgaWYgKCFyZXN1bHQuc2Vjb25kKQogICAgICAg
ICByZXN1bHQuZmlyc3QtPnNlY29uZCArPSAiLCIgKyB2YWx1ZTsKIAotICAgIGlmICh1cmwoKS5w
cm90b2NvbEluSFRUUEZhbWlseSgpKQorICAgIGlmICh1cmwoKS5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkpCiAgICAgICAgIG1fcGxhdGZvcm1SZXF1ZXN0VXBkYXRlZCA9IGZhbHNlOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0
d29ya01hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2Jl
cnJ5L05ldHdvcmtNYW5hZ2VyLmNwcAppbmRleCAzODhkNmQ4ZmQ1MDdjOWI5MjNiMTU5MjIwYjM4
YjM2Zjk2NjY5MzRhLi44NjM3YTFlYWIyM2I2NTIxMjI3OTIwM2Y0NDk0MzU1OTlmMmZiODA5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0
d29ya01hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxh
Y2tiZXJyeS9OZXR3b3JrTWFuYWdlci5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBib29sIE5ldHdv
cmtNYW5hZ2VyOjpzdGFydEpvYihpbnQgcGxheWVySWQsIGNvbnN0IFN0cmluZyYgcGFnZUdyb3Vw
TmFtZSwgUGFzc1JlZgogCiAgICAgICAgIGlmIChhdXRoVHlwZSAhPSBCbGFja0JlcnJ5OjpQbGF0
Zm9ybTo6TmV0d29ya1JlcXVlc3Q6OkF1dGhOb25lKQogICAgICAgICAgICAgcGxhdGZvcm1SZXF1
ZXN0LnNldENyZWRlbnRpYWxzKHVzZXJuYW1lLnV0ZjgoKS5kYXRhKCksIHBhc3N3b3JkLnV0Zjgo
KS5kYXRhKCksIGF1dGhUeXBlKTsKLSAgICB9IGVsc2UgaWYgKHVybC5wcm90b2NvbEluSFRUUEZh
bWlseSgpKSB7CisgICAgfSBlbHNlIGlmICh1cmwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKSB7
CiAgICAgICAgIC8vIEZvciBVUkxzIHRoYXQgbWF0Y2ggdGhlIHBhdGhzIG9mIHRob3NlIHByZXZp
b3VzbHkgY2hhbGxlbmdlZCBmb3IgSFRUUCBCYXNpYyBhdXRoZW50aWNhdGlvbiwKICAgICAgICAg
Ly8gdHJ5IGFuZCByZXVzZSB0aGUgY3JlZGVudGlhbCBwcmVlbXB0aXZlbHksIGFzIGFsbG93ZWQg
YnkgUkZDIDI2MTcuCiAgICAgICAgIENyZWRlbnRpYWwgY3JlZGVudGlhbCA9IENyZWRlbnRpYWxT
dG9yYWdlOjpnZXQodXJsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRk5ldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZOZXQuY3BwCmluZGV4IGZiZmI5MDJjODA5NWYz
YzA5OGEwMWRhZTVhOWQ3Zjg2ZmY5MjE3ZWQuLjBmMzllYjBiZDhjNzZkNTExMDNkYWZiZWMzZmIx
MWE1YWQ2ZDQ0ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y2YvUmVzb3VyY2VIYW5kbGVDRk5ldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGTmV0LmNwcApAQCAtNDYwLDcgKzQ2MCw3IEBAIHN0
YXRpYyBDRkRpY3Rpb25hcnlSZWYgY3JlYXRlQ29ubmVjdGlvblByb3BlcnRpZXMoYm9vbCBzaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnCiAKIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0ZUNGVVJM
Q29ubmVjdGlvbihib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlLCBib29sIHNob3VsZENv
bnRlbnRTbmlmZikKIHsKLSAgICBpZiAoKCFkLT5tX3VzZXIuaXNFbXB0eSgpIHx8ICFkLT5tX3Bh
c3MuaXNFbXB0eSgpKSAmJiAhZmlyc3RSZXF1ZXN0KCkudXJsKCkucHJvdG9jb2xJbkhUVFBGYW1p
bHkoKSkgeworICAgIGlmICgoIWQtPm1fdXNlci5pc0VtcHR5KCkgfHwgIWQtPm1fcGFzcy5pc0Vt
cHR5KCkpICYmICFmaXJzdFJlcXVlc3QoKS51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkp
IHsKICAgICAgICAgLy8gQ3JlZGVudGlhbHMgZm9yIGZ0cCBjYW4gb25seSBiZSBwYXNzZWQgaW4g
VVJMLCB0aGUgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIGRlbGVnYXRlIGNhbGwg
d29uJ3QgYmUgbWFkZS4KICAgICAgICAgS1VSTCB1cmxXaXRoQ3JlZGVudGlhbHMoZmlyc3RSZXF1
ZXN0KCkudXJsKCkpOwogICAgICAgICB1cmxXaXRoQ3JlZGVudGlhbHMuc2V0VXNlcihkLT5tX3Vz
ZXIpOwpAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0ZUNGVVJM
Q29ubmVjdGlvbihib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlLCBib29sCiAKICAgICAv
LyA8cmRhcjovL3Byb2JsZW0vNzE3NDA1MD4gLSBGb3IgVVJMcyB0aGF0IG1hdGNoIHRoZSBwYXRo
cyBvZiB0aG9zZSBwcmV2aW91c2x5IGNoYWxsZW5nZWQgZm9yIEhUVFAgQmFzaWMgYXV0aGVudGlj
YXRpb24sIAogICAgIC8vIHRyeSBhbmQgcmV1c2UgdGhlIGNyZWRlbnRpYWwgcHJlZW1wdGl2ZWx5
LCBhcyBhbGxvd2VkIGJ5IFJGQyAyNjE3LgotICAgIGlmIChzaG91bGRVc2VDcmVkZW50aWFsU3Rv
cmFnZSAmJiBmaXJzdFJlcXVlc3QoKS51cmwoKS5wcm90b2NvbEluSFRUUEZhbWlseSgpKSB7Cisg
ICAgaWYgKHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlICYmIGZpcnN0UmVxdWVzdCgpLnVybCgp
LnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkgewogICAgICAgICBpZiAoZC0+bV91c2VyLmlzRW1w
dHkoKSAmJiBkLT5tX3Bhc3MuaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICAvLyA8cmRhcjovL3By
b2JsZW0vNzE3NDA1MD4gLSBGb3IgVVJMcyB0aGF0IG1hdGNoIHRoZSBwYXRocyBvZiB0aG9zZSBw
cmV2aW91c2x5IGNoYWxsZW5nZWQgZm9yIEhUVFAgQmFzaWMgYXV0aGVudGljYXRpb24sIAogICAg
ICAgICAgICAgLy8gdHJ5IGFuZCByZXVzZSB0aGUgY3JlZGVudGlhbCBwcmVlbXB0aXZlbHksIGFz
IGFsbG93ZWQgYnkgUkZDIDI2MTcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL21hYy9SZXNvdXJjZUhhbmRsZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCmluZGV4IDA2YTgxYzU5YTYyNzRk
OWY0Zjc5M2U0ZGQyODdlOTZkZDY4NGZjNDcuLjU5NGRiOGU5MTUyZWY5NjQ0NTZmYWZkMTc3NjM1
NmJlNzZiMGVmOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
bWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCkBAIC0xODUsNyArMTg1LDcgQEAgc3RhdGlj
IGJvb2wgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llUG9saWN5KGNvbnN0IEtVUkwmIHVybCkK
IHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0ZU5TVVJMQ29ubmVjdGlvbihpZCBkZWxlZ2F0ZSwg
Ym9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSwgYm9vbCBzaG91bGRDb250ZW50U25pZmYp
CiB7CiAgICAgLy8gQ3JlZGVudGlhbHMgZm9yIGZ0cCBjYW4gb25seSBiZSBwYXNzZWQgaW4gVVJM
LCB0aGUgY29ubmVjdGlvbjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2U6IGRlbGVn
YXRlIGNhbGwgd29uJ3QgYmUgbWFkZS4KLSAgICBpZiAoKCFkLT5tX3VzZXIuaXNFbXB0eSgpIHx8
ICFkLT5tX3Bhc3MuaXNFbXB0eSgpKSAmJiAhZmlyc3RSZXF1ZXN0KCkudXJsKCkucHJvdG9jb2xJ
bkhUVFBGYW1pbHkoKSkgeworICAgIGlmICgoIWQtPm1fdXNlci5pc0VtcHR5KCkgfHwgIWQtPm1f
cGFzcy5pc0VtcHR5KCkpICYmICFmaXJzdFJlcXVlc3QoKS51cmwoKS5wcm90b2NvbElzSW5IVFRQ
RmFtaWx5KCkpIHsKICAgICAgICAgS1VSTCB1cmxXaXRoQ3JlZGVudGlhbHMoZmlyc3RSZXF1ZXN0
KCkudXJsKCkpOwogICAgICAgICB1cmxXaXRoQ3JlZGVudGlhbHMuc2V0VXNlcihkLT5tX3VzZXIp
OwogICAgICAgICB1cmxXaXRoQ3JlZGVudGlhbHMuc2V0UGFzcyhkLT5tX3Bhc3MpOwpAQCAtMTk1
LDcgKzE5NSw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0ZU5TVVJMQ29ubmVjdGlvbihp
ZCBkZWxlZ2F0ZSwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsCiAgICAgaWYgKHNob3VsZFJlbGF4
VGhpcmRQYXJ0eUNvb2tpZVBvbGljeShmaXJzdFJlcXVlc3QoKS51cmwoKSkpCiAgICAgICAgIGZp
cnN0UmVxdWVzdCgpLnNldEZpcnN0UGFydHlGb3JDb29raWVzKGZpcnN0UmVxdWVzdCgpLnVybCgp
KTsKIAotICAgIGlmIChzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSAmJiBmaXJzdFJlcXVlc3Qo
KS51cmwoKS5wcm90b2NvbEluSFRUUEZhbWlseSgpKSB7CisgICAgaWYgKHNob3VsZFVzZUNyZWRl
bnRpYWxTdG9yYWdlICYmIGZpcnN0UmVxdWVzdCgpLnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1p
bHkoKSkgewogICAgICAgICBpZiAoZC0+bV91c2VyLmlzRW1wdHkoKSAmJiBkLT5tX3Bhc3MuaXNF
bXB0eSgpKSB7CiAgICAgICAgICAgICAvLyA8cmRhcjovL3Byb2JsZW0vNzE3NDA1MD4gLSBGb3Ig
VVJMcyB0aGF0IG1hdGNoIHRoZSBwYXRocyBvZiB0aG9zZSBwcmV2aW91c2x5IGNoYWxsZW5nZWQg
Zm9yIEhUVFAgQmFzaWMgYXV0aGVudGljYXRpb24sIAogICAgICAgICAgICAgLy8gdHJ5IGFuZCBy
ZXVzZSB0aGUgY3JlZGVudGlhbCBwcmVlbXB0aXZlbHksIGFzIGFsbG93ZWQgYnkgUkZDIDI2MTcu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3Jr
UmVwbHlIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5l
dHdvcmtSZXBseUhhbmRsZXIuY3BwCmluZGV4IGU3OTg0YzRkY2JlMWU2NjllNzNiNGM5YWNlMDI2
YTdlMWY1YmZkYWMuLmQzMGZmY2U5MjY0OGI2MDA0MjE2NTMwYjIxMjg1NWEzZDM0ZjRhZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5ldHdvcmtSZXBs
eUhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5l
dHdvcmtSZXBseUhhbmRsZXIuY3BwCkBAIC00ODYsNyArNDg2LDcgQEAgdm9pZCBRTmV0d29ya1Jl
cGx5SGFuZGxlcjo6c2VuZFJlc3BvbnNlSWZOZWVkZWQoKQogICAgIC8vIFRoZSBzdGF0dXMgY29k
ZSBpcyBlcXVhbCB0byAwIGZvciBwcm90b2NvbHMgbm90IGluIHRoZSBIVFRQIGZhbWlseS4KICAg
ICBpbnQgc3RhdHVzQ29kZSA9IG1fcmVwbHlXcmFwcGVyLT5yZXBseSgpLT5hdHRyaWJ1dGUoUU5l
dHdvcmtSZXF1ZXN0OjpIdHRwU3RhdHVzQ29kZUF0dHJpYnV0ZSkudG9JbnQoKTsKIAotICAgIGlm
ICh1cmwucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkgeworICAgIGlmICh1cmwucHJvdG9jb2xJc0lu
SFRUUEZhbWlseSgpKSB7CiAgICAgICAgIFN0cmluZyBzdWdnZXN0ZWRGaWxlbmFtZSA9IGZpbGVu
YW1lRnJvbUhUVFBDb250ZW50RGlzcG9zaXRpb24oUVN0cmluZzo6ZnJvbUxhdGluMShtX3JlcGx5
V3JhcHBlci0+cmVwbHkoKS0+cmF3SGVhZGVyKCJDb250ZW50LURpc3Bvc2l0aW9uIikpKTsKIAog
ICAgICAgICBpZiAoIXN1Z2dlc3RlZEZpbGVuYW1lLmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDU3ZTczY2U4MWMzYmExMDFmMjQ0YzJhZGNhZjFjZmRl
ODUxMmEzZDYuLmUzZmI5ZDFjMDAzYTYzZTA1M2YyODBlZGY4MTU5OWY5YjExOWE4OTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcApAQCAtNTUzLDcgKzU1Myw3IEBAIHZvaWQg
WE1MSHR0cFJlcXVlc3Q6OnNlbmQoRG9jdW1lbnQqIGRvY3VtZW50LCBFeGNlcHRpb25Db2RlJiBl
YykKICAgICBpZiAoIWluaXRTZW5kKGVjKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1f
bWV0aG9kICE9ICJHRVQiICYmIG1fbWV0aG9kICE9ICJIRUFEIiAmJiBtX3VybC5wcm90b2NvbElu
SFRUUEZhbWlseSgpKSB7CisgICAgaWYgKG1fbWV0aG9kICE9ICJHRVQiICYmIG1fbWV0aG9kICE9
ICJIRUFEIiAmJiBtX3VybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpIHsKICAgICAgICAgU3Ry
aW5nIGNvbnRlbnRUeXBlID0gZ2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIik7CiAgICAg
ICAgIGlmIChjb250ZW50VHlwZS5pc0VtcHR5KCkpIHsKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NV
UFBPUlQpCkBAIC01ODQsNyArNTg0LDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6c2VuZChjb25z
dCBTdHJpbmcmIGJvZHksIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgIGlmICghaW5pdFNlbmQoZWMp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIWJvZHkuaXNOdWxsKCkgJiYgbV9tZXRob2Qg
IT0gIkdFVCIgJiYgbV9tZXRob2QgIT0gIkhFQUQiICYmIG1fdXJsLnByb3RvY29sSW5IVFRQRmFt
aWx5KCkpIHsKKyAgICBpZiAoIWJvZHkuaXNOdWxsKCkgJiYgbV9tZXRob2QgIT0gIkdFVCIgJiYg
bV9tZXRob2QgIT0gIkhFQUQiICYmIG1fdXJsLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkgewog
ICAgICAgICBTdHJpbmcgY29udGVudFR5cGUgPSBnZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5
cGUiKTsKICAgICAgICAgaWYgKGNvbnRlbnRUeXBlLmlzRW1wdHkoKSkgewogI2lmIEVOQUJMRShE
QVNIQk9BUkRfU1VQUE9SVCkKQEAgLTYxMSw3ICs2MTEsNyBAQCB2b2lkIFhNTEh0dHBSZXF1ZXN0
OjpzZW5kKEJsb2IqIGJvZHksIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgIGlmICghaW5pdFNlbmQo
ZWMpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAobV9tZXRob2QgIT0gIkdFVCIgJiYgbV9t
ZXRob2QgIT0gIkhFQUQiICYmIG1fdXJsLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpIHsKKyAgICBp
ZiAobV9tZXRob2QgIT0gIkdFVCIgJiYgbV9tZXRob2QgIT0gIkhFQUQiICYmIG1fdXJsLnByb3Rv
Y29sSXNJbkhUVFBGYW1pbHkoKSkgewogICAgICAgICAvLyBGSVhNRTogU2hvdWxkIHdlIHNldCBh
IENvbnRlbnQtVHlwZSBpZiBvbmUgaXMgbm90IHNldC4KICAgICAgICAgLy8gRklYTUU6IGFkZCBz
dXBwb3J0IGZvciB1cGxvYWRpbmcgYnVuZGxlcy4KICAgICAgICAgbV9yZXF1ZXN0RW50aXR5Qm9k
eSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTYzMSw3ICs2MzEsNyBAQCB2b2lkIFhNTEh0dHBS
ZXF1ZXN0OjpzZW5kKERPTUZvcm1EYXRhKiBib2R5LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBp
ZiAoIWluaXRTZW5kKGVjKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fbWV0aG9kICE9
ICJHRVQiICYmIG1fbWV0aG9kICE9ICJIRUFEIiAmJiBtX3VybC5wcm90b2NvbEluSFRUUEZhbWls
eSgpKSB7CisgICAgaWYgKG1fbWV0aG9kICE9ICJHRVQiICYmIG1fbWV0aG9kICE9ICJIRUFEIiAm
JiBtX3VybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpIHsKICAgICAgICAgbV9yZXF1ZXN0RW50
aXR5Qm9keSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQoKihzdGF0aWNfY2FzdDxGb3JtRGF0
YUxpc3QqPihib2R5KSksIGJvZHktPmVuY29kaW5nKCksIGRvY3VtZW50KCkpOwogCiAgICAgICAg
IC8vIFdlIG5lZWQgdG8gYXNrIHRoZSBjbGllbnQgdG8gcHJvdmlkZSB0aGUgZ2VuZXJhdGVkIGZp
bGUgbmFtZXMgaWYgbmVlZGVkLiBXaGVuIEZvcm1EYXRhIGZpbGxzIHRoZSBlbGVtZW50CkBAIC02
NTQsNyArNjU0LDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6c2VuZChBcnJheUJ1ZmZlciogYm9k
eSwgRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAgaWYgKCFpbml0U2VuZChlYykpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIGlmIChtX21ldGhvZCAhPSAiR0VUIiAmJiBtX21ldGhvZCAhPSAiSEVBRCIg
JiYgbV91cmwucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkgeworICAgIGlmIChtX21ldGhvZCAhPSAi
R0VUIiAmJiBtX21ldGhvZCAhPSAiSEVBRCIgJiYgbV91cmwucHJvdG9jb2xJc0luSFRUUEZhbWls
eSgpKSB7CiAgICAgICAgIG1fcmVxdWVzdEVudGl0eUJvZHkgPSBGb3JtRGF0YTo6Y3JlYXRlKGJv
ZHktPmRhdGEoKSwgYm9keS0+Ynl0ZUxlbmd0aCgpKTsKICAgICAgICAgaWYgKG1fdXBsb2FkKQog
ICAgICAgICAgICAgbV9yZXF1ZXN0RW50aXR5Qm9keS0+c2V0QWx3YXlzU3RyZWFtKHRydWUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJ
bXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1w
bC5jcHAKaW5kZXggN2NlNzc4MWJiMDBhYmYwNTZlN2JlODJiOWM2YzJkNjk0YTU1Zjc0YS4uZDU4
Njg5NmNmNmFlMzEyNWEzYzgxMjA2OTVjNDNiN2E2M2RjNzVhNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCkBAIC02MTIs
NyArNjEyLDcgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoV2lsbFBlcmZv
cm1DbGllbnRSZWRpcmVjdCgKICAgICAvLyBjYXJyeSBvdXQgc3VjaCBhIG5hdmlnYXRpb24gYW55
d2F5LCB0aGUgYmVzdCB0aGluZyB3ZSBjYW4gZG8gZm9yIG5vdyB0bwogICAgIC8vIG5vdCBnZXQg
Y29uZnVzZWQgaXMgaWdub3JlIHRoaXMgbm90aWZpY2F0aW9uLgogICAgIGlmIChtX2V4cGVjdGVk
Q2xpZW50UmVkaXJlY3REZXN0LmlzTG9jYWxGaWxlKCkKLSAgICAgICAgJiYgbV9leHBlY3RlZENs
aWVudFJlZGlyZWN0U3JjLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpIHsKKyAgICAgICAgJiYgbV9l
eHBlY3RlZENsaWVudFJlZGlyZWN0U3JjLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkgewogICAg
ICAgICBtX2V4cGVjdGVkQ2xpZW50UmVkaXJlY3RTcmMgPSBLVVJMKCk7CiAgICAgICAgIG1fZXhw
ZWN0ZWRDbGllbnRSZWRpcmVjdERlc3QgPSBLVVJMKCk7CiAgICAgICAgIHJldHVybjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhZ2VTZXJpYWxpemVyLmNwcCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhZ2VTZXJpYWxpemVyLmNwcAppbmRleCBk
YzJiYzk5ZTMwYTZhZjY3MDhjMzc1MWUzMTU1MjIxNWE0NjZjZTFiLi4xYWQ3MGIxYjQ4YjgwYjJi
MjQ3Y2I0OGEzMDA4NGVlYmVhZWVmMTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJQYWdlU2VyaWFsaXplci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViUGFnZVNlcmlhbGl6ZXIuY3BwCkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCByZXRy
aWV2ZVJlc291cmNlc0ZvckVsZW1lbnQoRWxlbWVudCogZWxlbWVudCwKIAogICAgIC8vIElnbm9y
ZSBVUkxzIHRoYXQgaGF2ZSBhIG5vbi1zdGFuZGFyZCBwcm90b2NvbHMuIFNpbmNlIHRoZSBGVFAg
cHJvdG9jb2wKICAgICAvLyBkb2VzIG5vIGhhdmUgYSBjYWNoZSBtZWNoYW5pc20sIHdlIHNraXAg
aXQgYXMgd2VsbC4KLSAgICBpZiAoIXVybC5wcm90b2NvbEluSFRUUEZhbWlseSgpICYmICF1cmwu
aXNMb2NhbEZpbGUoKSkKKyAgICBpZiAoIXVybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkgJiYg
IXVybC5pc0xvY2FsRmlsZSgpKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIXJlc291cmNl
VVJMcy0+Y29udGFpbnModXJsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggODE5ZGQxNmNlMjRhZWY5
MjA3YTZhOGZkNTEyZTc4MWFjYjE5NWQ0OS4uOGZmNDIwYzZhMDdiZmZiODQ5MDMwOTg5NDcwZDQy
ZjljODY4MmRjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTE3MTQsNyArMTcxNCw3IEBAIFBhc3NS
ZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IElu
dFNpemUmIHNpemUsIEhUTUxQCiAgICAgICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRh
dGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdh
dGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CiAgICAgICAgIGlmIChpbXBsZW1lbnRhdGlvbnMt
PnBsdWdJbkZhaWxlZFdpdGhFcnJvckZ1bmMpIHsKICAgICAgICAgICAgIEtVUkwgcGx1Z2luUGFn
ZVVSTCA9IGRvY3VtZW50LT5jb21wbGV0ZVVSTChzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxT
cGFjZXMocGFyYW1ldGVyVmFsdWUocGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJwbHVnaW5zcGFn
ZSIpKSk7Ci0gICAgICAgICAgICBpZiAoIXBsdWdpblBhZ2VVUkwucHJvdG9jb2xJbkhUVFBGYW1p
bHkoKSkKKyAgICAgICAgICAgIGlmICghcGx1Z2luUGFnZVVSTC5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkpCiAgICAgICAgICAgICAgICAgcGx1Z2luUGFnZVVSTCA9IEtVUkwoKTsKICAgICAgICAg
ICAgIE5TU3RyaW5nICpwbHVnaW5OYW1lID0gcGx1Z2luUGFja2FnZSA/IChOU1N0cmluZyAqKVtw
bHVnaW5QYWNrYWdlIHBsdWdpbkluZm9dLm5hbWUgOiBuaWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApp
bmRleCBkYWFmMjZhN2MwOGI5YjQ2YzNiZDBkZWM3ZWIzZTVhYzQ0ZDRmYWZiLi5mMmU4MWFjYTQ0
MWNhM2QxZDE2NjQ2MTBmNDQ3NzI5YjBmOGY4MWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNl
L1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC04
MjYsNyArODI2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWls
VG9TdGFydFBsdWdpbihjb25zdCBQbHVnaW5WaWV3KiBwbHVnaW4KIAogICAgIGlmICghcGx1Z2lu
Vmlldy0+cGx1Z2luc1BhZ2UoKS5pc051bGwoKSkgewogICAgICAgICBLVVJMIHBsdWdpblBhZ2VV
UkwgPSBmcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoc3RyaXBMZWFkaW5nQW5kVHJhaWxp
bmdIVE1MU3BhY2VzKHBsdWdpblZpZXctPnBsdWdpbnNQYWdlKCkpKTsKLSAgICAgICAgaWYgKHBs
dWdpblBhZ2VVUkwucHJvdG9jb2xJbkhUVFBGYW1pbHkoKSkgeworICAgICAgICBpZiAocGx1Z2lu
UGFnZVVSTC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpIHsKICAgICAgICAgICAgIHN0YXRpYyBD
RlN0cmluZ1JlZiBrZXkgPSBNYXJzaGFsbGluZ0hlbHBlcnM6OkxQQ09MRVNUUlRvQ0ZTdHJpbmdS
ZWYoV2ViS2l0RXJyb3JQbHVnSW5QYWdlVVJMU3RyaW5nS2V5KTsKICAgICAgICAgICAgIFJldGFp
blB0cjxDRlN0cmluZ1JlZj4gc3RyKEFkb3B0Q0YsIHBsdWdpblBhZ2VVUkwuc3RyaW5nKCkuY3Jl
YXRlQ0ZTdHJpbmcoKSk7CiAgICAgICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZSh1c2VySW5m
by5nZXQoKSwga2V5LCBzdHIuZ2V0KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4v
V2ViSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJIaXN0b3J5LmNwcAppbmRleCA2
OWRhYjVjNjdjOTZhODkzZjM0NzZlMzZhNjQ3NGEyNTRiYjlkYTQzLi5lODQyYzE0MDczNWM3MTk5
MWE1ZDExZThiOWQzYjU3ZjdkNWNkMjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJIaXN0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJIaXN0b3J5LmNwcApAQCAt
NzM1LDcgKzczNSw3IEBAIHZvaWQgV2ViSGlzdG9yeTo6dmlzaXRlZFVSTChjb25zdCBLVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYKIAogICAgIGVudHJ5UHJpdmF0
ZS0+c2V0TGFzdFZpc2l0V2FzRmFpbHVyZSh3YXNGYWlsdXJlKTsKICAgICBpZiAoIWh0dHBNZXRo
b2QuaXNFbXB0eSgpKQotICAgICAgICBlbnRyeVByaXZhdGUtPnNldExhc3RWaXNpdFdhc0hUVFBO
b25HZXQoIWVxdWFsSWdub3JpbmdDYXNlKGh0dHBNZXRob2QsICJHRVQiKSAmJiB1cmwucHJvdG9j
b2xJbkhUVFBGYW1pbHkoKSk7CisgICAgICAgIGVudHJ5UHJpdmF0ZS0+c2V0TGFzdFZpc2l0V2Fz
SFRUUE5vbkdldCghZXF1YWxJZ25vcmluZ0Nhc2UoaHR0cE1ldGhvZCwgIkdFVCIpICYmIHVybC5w
cm90b2NvbElzSW5IVFRQRmFtaWx5KCkpOwogCiAgICAgQ09NUHRyPFdlYkhpc3RvcnlJdGVtPiBp
dGVtKFF1ZXJ5LCBlbnRyeSk7CiAgICAgaXRlbS0+aGlzdG9yeUl0ZW0oKS0+c2V0UmVkaXJlY3RV
UkxzKG51bGxwdHIpOwo=
</data>
<flag name="review"
          id="132880"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>