<?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>212494</bug_id>
          
          <creation_ts>2020-05-28 15:05:16 -0700</creation_ts>
          <short_desc>Web Inspector: add missing condition guards when generating objc protocol files</short_desc>
          <delta_ts>2020-05-28 15:45:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          <dependson>210014</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>bburg</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>timothy</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1657036</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-05-28 15:05:16 -0700</bug_when>
    <thetext>fix internal build failures</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657042</commentid>
    <comment_count>1</comment_count>
      <attachid>400513</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-05-28 15:12:56 -0700</bug_when>
    <thetext>Created attachment 400513
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657044</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-05-28 15:13:58 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol generator. Please ensure that you have rebaselined any generator test results (i.e., by running `Tools/Scripts/run-inspector-generator-tests --reset-results`)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657058</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-28 15:44:44 -0700</bug_when>
    <thetext>Committed r262266: &lt;https://trac.webkit.org/changeset/262266&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 400513.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657059</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-28 15:45:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/63735824&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400513</attachid>
            <date>2020-05-28 15:12:56 -0700</date>
            <delta_ts>2020-05-28 15:44:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-212494-20200528161255.patch</filename>
            <type>text/plain</type>
            <size>30950</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDNjMjJiYmI3NmNkNjBlNTNjNjk0NmRjOGIwYzY3
NGQ2ZWVhOGQ1NTYuLjI2NzhkODU5MTk3Y2M5MGU4MThmODY3YTFmYzdkMWZjZWM4YTJjMjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIwLTA1LTI4ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBh
ZGQgbWlzc2luZyBjb25kaXRpb24gZ3VhcmRzIHdoZW4gZ2VuZXJhdGluZyBvYmpjIHByb3RvY29s
IGZpbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTI0OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGluc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19iYWNrZW5kX2Rpc3BhdGNo
ZXJfaGVhZGVyLnB5OgorICAgICAgICAoT2JqQ0JhY2tlbmREaXNwYXRjaGVySGVhZGVyR2VuZXJh
dG9yLl9nZW5lcmF0ZV9vYmpjX2ZvcndhcmRfZGVjbGFyYXRpb25zKToKKyAgICAgICAgKiBpbnNw
ZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX29iamNfY29uZmlndXJhdGlvbl9oZWFkZXIu
cHk6CisgICAgICAgIChPYmpDQ29uZmlndXJhdGlvbkhlYWRlckdlbmVyYXRvci5fZ2VuZXJhdGVf
cHJvcGVydGllc19mb3JfZG9tYWluKToKKyAgICAgICAgKiBpbnNwZWN0b3Ivc2NyaXB0cy9jb2Rl
Z2VuL2dlbmVyYXRlX29iamNfY29uZmlndXJhdGlvbl9pbXBsZW1lbnRhdGlvbi5weToKKyAgICAg
ICAgKE9iakNDb25maWd1cmF0aW9uSW1wbGVtZW50YXRpb25HZW5lcmF0b3IuX2dlbmVyYXRlX2Nv
bmZpZ3VyYXRpb25faW1wbGVtZW50YXRpb25fZm9yX2RvbWFpbnMpOgorICAgICAgICAoT2JqQ0Nv
bmZpZ3VyYXRpb25JbXBsZW1lbnRhdGlvbkdlbmVyYXRvci5fZ2VuZXJhdGVfaXZhcnMpOgorICAg
ICAgICAoT2JqQ0NvbmZpZ3VyYXRpb25JbXBsZW1lbnRhdGlvbkdlbmVyYXRvci5fZ2VuZXJhdGVf
ZGVhbGxvYyk6CisgICAgICAgIChPYmpDQ29uZmlndXJhdGlvbkltcGxlbWVudGF0aW9uR2VuZXJh
dG9yLl9nZW5lcmF0ZV9ldmVudF9kaXNwYXRjaGVyX2dldHRlcl9mb3JfZG9tYWluKToKKyAgICAg
ICAgKE9iakNDb25maWd1cmF0aW9uSW1wbGVtZW50YXRpb25HZW5lcmF0b3IuX3ZhcmlhYmxlX25h
bWVfcHJlZml4X2Zvcl9kb21haW4pOiBEZWxldGVkLgorICAgICAgICAqIGluc3BlY3Rvci9zY3Jp
cHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19mcm9udGVuZF9kaXNwYXRjaGVyX2ltcGxlbWVudGF0
aW9uLnB5OgorICAgICAgICAoT2JqQ0Zyb250ZW5kRGlzcGF0Y2hlckltcGxlbWVudGF0aW9uR2Vu
ZXJhdG9yLl9nZW5lcmF0ZV9ldmVudF9kaXNwYXRjaGVyX2ltcGxlbWVudGF0aW9ucyk6CisgICAg
ICAgIChPYmpDRnJvbnRlbmREaXNwYXRjaGVySW1wbGVtZW50YXRpb25HZW5lcmF0b3IuX2dlbmVy
YXRlX2V2ZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRl
X29iamNfaGVhZGVyLnB5OgorICAgICAgICAoT2JqQ0hlYWRlckdlbmVyYXRvci5fZ2VuZXJhdGVf
Zm9yd2FyZF9kZWNsYXJhdGlvbnMpOgorICAgICAgICAoT2JqQ0hlYWRlckdlbmVyYXRvci5fZ2Vu
ZXJhdGVfZW51bXMpOgorICAgICAgICAoT2JqQ0hlYWRlckdlbmVyYXRvci5fZ2VuZXJhdGVfdHlw
ZXMpOgorICAgICAgICAoT2JqQ0hlYWRlckdlbmVyYXRvci5fZ2VuZXJhdGVfY29tbWFuZF9wcm90
b2NvbHMpOgorICAgICAgICAoT2JqQ0hlYWRlckdlbmVyYXRvci5fZ2VuZXJhdGVfZXZlbnRfaW50
ZXJmYWNlcyk6CisgICAgICAgIChPYmpDSGVhZGVyR2VuZXJhdG9yLl9nZW5lcmF0ZV9zaW5nbGVf
ZXZlbnRfaW50ZXJmYWNlKToKKyAgICAgICAgKiBpbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dl
bmVyYXRlX29iamNfaW50ZXJuYWxfaGVhZGVyLnB5OgorICAgICAgICAoT2JqQ0ludGVybmFsSGVh
ZGVyR2VuZXJhdG9yLl9nZW5lcmF0ZV9ldmVudF9kaXNwYXRjaGVyX3ByaXZhdGVfaW50ZXJmYWNl
cyk6CisgICAgICAgICogaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX3By
b3RvY29sX3R5cGVfY29udmVyc2lvbnNfaGVhZGVyLnB5OgorICAgICAgICAoT2JqQ1Byb3RvY29s
VHlwZUNvbnZlcnNpb25zSGVhZGVyR2VuZXJhdG9yLl9nZW5lcmF0ZV9lbnVtX2NvbnZlcnNpb25f
ZnVuY3Rpb25zKToKKyAgICAgICAgKiBpbnNwZWN0b3Ivc2NyaXB0cy90ZXN0cy9kZWZpbml0aW9u
cy13aXRoLW1hYy1wbGF0Zm9ybS5qc29uOgorICAgICAgICAqIGluc3BlY3Rvci9zY3JpcHRzL3Rl
c3RzL2V4cGVjdGVkL2RlZmluaXRpb25zLXdpdGgtbWFjLXBsYXRmb3JtLmpzb24tcmVzdWx0Ogor
CiAyMDIwLTA1LTI3ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIGZvci1vZiBzaG91bGQgY2hlY2sgdGhlIGl0ZXJhYmxlIGlzIGEgSlNBcnJheSBmb3Ig
RmFzdEFycmF5IGluIERGRyBpdGVyYXRvcl9vcGVuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX2JhY2tlbmRf
ZGlzcGF0Y2hlcl9oZWFkZXIucHkgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Nj
cmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX2JhY2tlbmRfZGlzcGF0Y2hlcl9oZWFkZXIucHkK
aW5kZXggZWEyZmMxMTI3NGUyNTQ1YmQ1NzEyYjBmZTQ3ODEzNThhMTJmYjRiZS4uM2UxMzk3NGFi
MzYyMTNkYTc4YjcyY2EyMzJlNzdlMWE5OTRjNTVmNyAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19iYWNrZW5k
X2Rpc3BhdGNoZXJfaGVhZGVyLnB5CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0
b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX29iamNfYmFja2VuZF9kaXNwYXRjaGVyX2hlYWRl
ci5weQpAQCAtODEsNyArODEsNyBAQCBjbGFzcyBPYmpDQmFja2VuZERpc3BhdGNoZXJIZWFkZXJH
ZW5lcmF0b3IoT2JqQ0dlbmVyYXRvcik6CiAgICAgICAgIGxpbmVzID0gW10KICAgICAgICAgZm9y
IGRvbWFpbiBpbiBzZWxmLmRvbWFpbnNfdG9fZ2VuZXJhdGUoKToKICAgICAgICAgICAgIGlmIHNl
bGYuY29tbWFuZHNfZm9yX2RvbWFpbihkb21haW4pOgotICAgICAgICAgICAgICAgIGxpbmVzLmFw
cGVuZCgnQHByb3RvY29sICVzJXNEb21haW5IYW5kbGVyOycgJSAoc2VsZi5vYmpjX3ByZWZpeCgp
LCBkb21haW4uZG9tYWluX25hbWUpKQorICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZChzZWxm
LndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGRvbWFpbi5jb25kaXRpb24sICdAcHJvdG9j
b2wgJXMlc0RvbWFpbkhhbmRsZXI7JyAlIChzZWxmLm9iamNfcHJlZml4KCksIGRvbWFpbi5kb21h
aW5fbmFtZSkpKQogICAgICAgICByZXR1cm4gJ1xuJy5qb2luKGxpbmVzKQogCiAgICAgZGVmIF9n
ZW5lcmF0ZV9vYmpjX2hhbmRsZXJfZGVjbGFyYXRpb25zX2Zvcl9kb21haW4oc2VsZiwgZG9tYWlu
KToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9j
b2RlZ2VuL2dlbmVyYXRlX29iamNfY29uZmlndXJhdGlvbl9oZWFkZXIucHkgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX2NvbmZp
Z3VyYXRpb25faGVhZGVyLnB5CmluZGV4IDZjM2RkNzY1MjM4Nzk1ZTEzYWRjNzI4OGMzNWIyZGNh
M2IzYTIwYTMuLjYyNWJlMzNlYjc3ZmE4ZTVhZjJiMzAwNWM3NjJjY2IxYzZiMTNkYjMgMTAwNzU1
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dl
bmVyYXRlX29iamNfY29uZmlndXJhdGlvbl9oZWFkZXIucHkKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19jb25maWd1cmF0
aW9uX2hlYWRlci5weQpAQCAtODIsOSArODIsMTAgQEAgY2xhc3MgT2JqQ0NvbmZpZ3VyYXRpb25I
ZWFkZXJHZW5lcmF0b3IoT2JqQ0dlbmVyYXRvcik6CiAgICAgICAgIH0KIAogICAgICAgICBsaW5l
cyA9IFtdCi0KICAgICAgICAgaWYgc2VsZi5zaG91bGRfZ2VuZXJhdGVfY29tbWFuZHNfZm9yX2Rv
bWFpbihkb21haW4pOgogICAgICAgICAgICAgbGluZXMuYXBwZW5kKFRlbXBsYXRlKE9iakNUZW1w
bGF0ZXMuQ29uZmlndXJhdGlvbkNvbW1hbmRQcm9wZXJ0eSkuc3Vic3RpdHV0ZShOb25lLCAqKnBy
b3BlcnR5X2FyZ3MpKQogICAgICAgICBpZiBzZWxmLnNob3VsZF9nZW5lcmF0ZV9ldmVudHNfZm9y
X2RvbWFpbihkb21haW4pOgogICAgICAgICAgICAgbGluZXMuYXBwZW5kKFRlbXBsYXRlKE9iakNU
ZW1wbGF0ZXMuQ29uZmlndXJhdGlvbkV2ZW50UHJvcGVydHkpLnN1YnN0aXR1dGUoTm9uZSwgKipw
cm9wZXJ0eV9hcmdzKSkKLSAgICAgICAgcmV0dXJuIGxpbmVzCisgICAgICAgIGlmIG5vdCBsZW4o
bGluZXMpOgorICAgICAgICAgICAgcmV0dXJuIFtdCisgICAgICAgIHJldHVybiBbc2VsZi53cmFw
X3dpdGhfZ3VhcmRfZm9yX2NvbmRpdGlvbihkb21haW4uY29uZGl0aW9uLCAnXG4nLmpvaW4obGlu
ZXMpKV0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0
cy9jb2RlZ2VuL2dlbmVyYXRlX29iamNfY29uZmlndXJhdGlvbl9pbXBsZW1lbnRhdGlvbi5weSBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRl
X29iamNfY29uZmlndXJhdGlvbl9pbXBsZW1lbnRhdGlvbi5weQppbmRleCA5MjJiNjA4MWY2N2Q4
ZDU4MDAzNzhkM2JjOThiNmY5NjlkNWM3MTBkLi4xMmM3NTRjM2QwOGM1ZTcxNjQwMmRjOTkwYWVi
NWFhMzJhZTE3YzAxIDEwMDc1NQotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX2NvbmZpZ3VyYXRpb25faW1wbGVtZW50YXRp
b24ucHkKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVn
ZW4vZ2VuZXJhdGVfb2JqY19jb25maWd1cmF0aW9uX2ltcGxlbWVudGF0aW9uLnB5CkBAIC05Miwy
NiArOTIsMzIgQEAgY2xhc3MgT2JqQ0NvbmZpZ3VyYXRpb25JbXBsZW1lbnRhdGlvbkdlbmVyYXRv
cihPYmpDR2VuZXJhdG9yKToKICAgICAgICAgbGluZXMuZXh0ZW5kKHNlbGYuX2dlbmVyYXRlX2Rl
YWxsb2MoZG9tYWlucykpCiAgICAgICAgIGxpbmVzLmFwcGVuZCgnJykKICAgICAgICAgZm9yIGRv
bWFpbiBpbiBkb21haW5zOgorICAgICAgICAgICAgZG9tYWluX2xpbmVzID0gW10KICAgICAgICAg
ICAgIGlmIHNlbGYuc2hvdWxkX2dlbmVyYXRlX2NvbW1hbmRzX2Zvcl9kb21haW4oZG9tYWluKToK
LSAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoc2VsZi5fZ2VuZXJhdGVfaGFuZGxlcl9zZXR0
ZXJfZm9yX2RvbWFpbihkb21haW4pKQotICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgnJykK
KyAgICAgICAgICAgICAgICBkb21haW5fbGluZXMuYXBwZW5kKHNlbGYuX2dlbmVyYXRlX2hhbmRs
ZXJfc2V0dGVyX2Zvcl9kb21haW4oZG9tYWluKSkKKyAgICAgICAgICAgICAgICBkb21haW5fbGlu
ZXMuYXBwZW5kKCcnKQogICAgICAgICAgICAgaWYgc2VsZi5zaG91bGRfZ2VuZXJhdGVfZXZlbnRz
X2Zvcl9kb21haW4oZG9tYWluKToKLSAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoc2VsZi5f
Z2VuZXJhdGVfZXZlbnRfZGlzcGF0Y2hlcl9nZXR0ZXJfZm9yX2RvbWFpbihkb21haW4pKQotICAg
ICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgnJykKKyAgICAgICAgICAgICAgICBkb21haW5fbGlu
ZXMuYXBwZW5kKHNlbGYuX2dlbmVyYXRlX2V2ZW50X2Rpc3BhdGNoZXJfZ2V0dGVyX2Zvcl9kb21h
aW4oZG9tYWluKSkKKyAgICAgICAgICAgICAgICBkb21haW5fbGluZXMuYXBwZW5kKCcnKQorICAg
ICAgICAgICAgaWYgbGVuKGRvbWFpbl9saW5lcyk6CisgICAgICAgICAgICAgICAgbGluZXMuYXBw
ZW5kKHNlbGYud3JhcF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24oZG9tYWluLmNvbmRpdGlvbiwg
J1xuJy5qb2luKGRvbWFpbl9saW5lcykpKQogICAgICAgICBsaW5lcy5hcHBlbmQoJ0BlbmQnKQog
ICAgICAgICByZXR1cm4gJ1xuJy5qb2luKGxpbmVzKQogCiAgICAgZGVmIF9nZW5lcmF0ZV9pdmFy
cyhzZWxmLCBkb21haW5zKToKICAgICAgICAgbGluZXMgPSBbXQogICAgICAgICBmb3IgZG9tYWlu
IGluIGRvbWFpbnM6CisgICAgICAgICAgICBkb21haW5fbGluZXMgPSBbXQogICAgICAgICAgICAg
aWYgc2VsZi5zaG91bGRfZ2VuZXJhdGVfY29tbWFuZHNfZm9yX2RvbWFpbihkb21haW4pOgogICAg
ICAgICAgICAgICAgIG9iamNfY2xhc3NfbmFtZSA9ICclcyVzRG9tYWluSGFuZGxlcicgJSAoc2Vs
Zi5vYmpjX3ByZWZpeCgpLCBkb21haW4uZG9tYWluX25hbWUpCiAgICAgICAgICAgICAgICAgaXZh
cl9uYW1lID0gJ18lc0hhbmRsZXInICUgT2JqQ0dlbmVyYXRvci52YXJpYWJsZV9uYW1lX3ByZWZp
eF9mb3JfZG9tYWluKGRvbWFpbikKLSAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoJyAgICBp
ZDwlcz4gJXM7JyAlIChvYmpjX2NsYXNzX25hbWUsIGl2YXJfbmFtZSkpCisgICAgICAgICAgICAg
ICAgZG9tYWluX2xpbmVzLmFwcGVuZCgnICAgIGlkPCVzPiAlczsnICUgKG9iamNfY2xhc3NfbmFt
ZSwgaXZhcl9uYW1lKSkKICAgICAgICAgICAgIGlmIHNlbGYuc2hvdWxkX2dlbmVyYXRlX2V2ZW50
c19mb3JfZG9tYWluKGRvbWFpbik6CiAgICAgICAgICAgICAgICAgb2JqY19jbGFzc19uYW1lID0g
JyVzJXNEb21haW5FdmVudERpc3BhdGNoZXInICUgKHNlbGYub2JqY19wcmVmaXgoKSwgZG9tYWlu
LmRvbWFpbl9uYW1lKQogICAgICAgICAgICAgICAgIGl2YXJfbmFtZSA9ICdfJXNFdmVudERpc3Bh
dGNoZXInICUgT2JqQ0dlbmVyYXRvci52YXJpYWJsZV9uYW1lX3ByZWZpeF9mb3JfZG9tYWluKGRv
bWFpbikKLSAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoJyAgICAlcyAqJXM7JyAlIChvYmpj
X2NsYXNzX25hbWUsIGl2YXJfbmFtZSkpCisgICAgICAgICAgICAgICAgZG9tYWluX2xpbmVzLmFw
cGVuZCgnICAgICVzIColczsnICUgKG9iamNfY2xhc3NfbmFtZSwgaXZhcl9uYW1lKSkKKyAgICAg
ICAgICAgIGlmIGxlbihkb21haW5fbGluZXMpOgorICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVu
ZChzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGRvbWFpbi5jb25kaXRpb24sICdc
bicuam9pbihkb21haW5fbGluZXMpKSkKICAgICAgICAgcmV0dXJuIGxpbmVzCiAKICAgICBkZWYg
X2dlbmVyYXRlX2RlYWxsb2Moc2VsZiwgZG9tYWlucyk6CkBAIC0xMTksMTAgKzEyNSwxMyBAQCBj
bGFzcyBPYmpDQ29uZmlndXJhdGlvbkltcGxlbWVudGF0aW9uR2VuZXJhdG9yKE9iakNHZW5lcmF0
b3IpOgogICAgICAgICBsaW5lcy5hcHBlbmQoJy0gKHZvaWQpZGVhbGxvYycpCiAgICAgICAgIGxp
bmVzLmFwcGVuZCgneycpCiAgICAgICAgIGZvciBkb21haW4gaW4gZG9tYWluczoKKyAgICAgICAg
ICAgIGRvbWFpbl9saW5lcyA9IFtdCiAgICAgICAgICAgICBpZiBzZWxmLnNob3VsZF9nZW5lcmF0
ZV9jb21tYW5kc19mb3JfZG9tYWluKGRvbWFpbik6Ci0gICAgICAgICAgICAgICAgbGluZXMuYXBw
ZW5kKCcgICAgW18lc0hhbmRsZXIgcmVsZWFzZV07JyAlIE9iakNHZW5lcmF0b3IudmFyaWFibGVf
bmFtZV9wcmVmaXhfZm9yX2RvbWFpbihkb21haW4pKQorICAgICAgICAgICAgICAgIGRvbWFpbl9s
aW5lcy5hcHBlbmQoJyAgICBbXyVzSGFuZGxlciByZWxlYXNlXTsnICUgT2JqQ0dlbmVyYXRvci52
YXJpYWJsZV9uYW1lX3ByZWZpeF9mb3JfZG9tYWluKGRvbWFpbikpCiAgICAgICAgICAgICBpZiBz
ZWxmLnNob3VsZF9nZW5lcmF0ZV9ldmVudHNfZm9yX2RvbWFpbihkb21haW4pOgotICAgICAgICAg
ICAgICAgIGxpbmVzLmFwcGVuZCgnICAgIFtfJXNFdmVudERpc3BhdGNoZXIgcmVsZWFzZV07JyAl
IE9iakNHZW5lcmF0b3IudmFyaWFibGVfbmFtZV9wcmVmaXhfZm9yX2RvbWFpbihkb21haW4pKQor
ICAgICAgICAgICAgICAgIGRvbWFpbl9saW5lcy5hcHBlbmQoJyAgICBbXyVzRXZlbnREaXNwYXRj
aGVyIHJlbGVhc2VdOycgJSBPYmpDR2VuZXJhdG9yLnZhcmlhYmxlX25hbWVfcHJlZml4X2Zvcl9k
b21haW4oZG9tYWluKSkKKyAgICAgICAgICAgIGlmIGxlbihkb21haW5fbGluZXMpOgorICAgICAg
ICAgICAgICAgIGxpbmVzLmFwcGVuZChzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9u
KGRvbWFpbi5jb25kaXRpb24sICdcbicuam9pbihkb21haW5fbGluZXMpKSkKICAgICAgICAgbGlu
ZXMuYXBwZW5kKCcgICAgW3N1cGVyIGRlYWxsb2NdOycpCiAgICAgICAgIGxpbmVzLmFwcGVuZCgn
fScpCiAgICAgICAgIHJldHVybiBsaW5lcwpAQCAtMTQyLDExICsxNTEsMyBAQCBjbGFzcyBPYmpD
Q29uZmlndXJhdGlvbkltcGxlbWVudGF0aW9uR2VuZXJhdG9yKE9iakNHZW5lcmF0b3IpOgogICAg
ICAgICAgICAgJ3ZhcmlhYmxlTmFtZVByZWZpeCc6IE9iakNHZW5lcmF0b3IudmFyaWFibGVfbmFt
ZV9wcmVmaXhfZm9yX2RvbWFpbihkb21haW4pLAogICAgICAgICB9CiAgICAgICAgIHJldHVybiBU
ZW1wbGF0ZShPYmpDVGVtcGxhdGVzLkNvbmZpZ3VyYXRpb25HZXR0ZXJJbXBsZW1lbnRhdGlvbiku
c3Vic3RpdHV0ZShOb25lLCAqKmdldHRlcl9hcmdzKQotCi0gICAgZGVmIF92YXJpYWJsZV9uYW1l
X3ByZWZpeF9mb3JfZG9tYWluKHNlbGYsIGRvbWFpbik6Ci0gICAgICAgIGRvbWFpbl9uYW1lID0g
ZG9tYWluLmRvbWFpbl9uYW1lCi0gICAgICAgIGlmIGRvbWFpbl9uYW1lLnN0YXJ0c3dpdGgoJ0RP
TScpOgotICAgICAgICAgICAgcmV0dXJuICdkb20nICsgZG9tYWluX25hbWVbMzpdCi0gICAgICAg
IGlmIGRvbWFpbl9uYW1lLnN0YXJ0c3dpdGgoJ0NTUycpOgotICAgICAgICAgICAgcmV0dXJuICdj
c3MnICsgZG9tYWluX25hbWVbMzpdCi0gICAgICAgIHJldHVybiBkb21haW5fbmFtZVs6MV0ubG93
ZXIoKSArIGRvbWFpbl9uYW1lWzE6XQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19mcm9udGVuZF9kaXNwYXRj
aGVyX2ltcGxlbWVudGF0aW9uLnB5IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9z
Y3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19mcm9udGVuZF9kaXNwYXRjaGVyX2ltcGxlbWVu
dGF0aW9uLnB5CmluZGV4IDNjNDA1Nzg2OTg4Y2NmYzQxZGM2Zjg3ZTQ4YzkwMGVkZjRhMjc3NTIu
LmRkZGIyN2E4OGMyYmFmZjVmYzZmMjdiYzQzYTAxZTMxZWE5Y2Q0OWQgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX29i
amNfZnJvbnRlbmRfZGlzcGF0Y2hlcl9pbXBsZW1lbnRhdGlvbi5weQorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX2Zyb250
ZW5kX2Rpc3BhdGNoZXJfaW1wbGVtZW50YXRpb24ucHkKQEAgLTk3LDcgKzk3LDcgQEAgY2xhc3Mg
T2JqQ0Zyb250ZW5kRGlzcGF0Y2hlckltcGxlbWVudGF0aW9uR2VuZXJhdG9yKE9iakNHZW5lcmF0
b3IpOgogICAgICAgICAgICAgbGluZXMuYXBwZW5kKHNlbGYuX2dlbmVyYXRlX2V2ZW50KGRvbWFp
biwgZXZlbnQpKQogICAgICAgICAgICAgbGluZXMuYXBwZW5kKCcnKQogICAgICAgICBsaW5lcy5h
cHBlbmQoJ0BlbmQnKQotICAgICAgICByZXR1cm4gJ1xuJy5qb2luKGxpbmVzKQorICAgICAgICBy
ZXR1cm4gc2VsZi53cmFwX3dpdGhfZ3VhcmRfZm9yX2NvbmRpdGlvbihkb21haW4uY29uZGl0aW9u
LCAnXG4nLmpvaW4obGluZXMpKQogCiAgICAgZGVmIF9nZW5lcmF0ZV9ldmVudChzZWxmLCBkb21h
aW4sIGV2ZW50KToKICAgICAgICAgbGluZXMgPSBbXQpAQCAtMTMxLDcgKzEzMSw3IEBAIGNsYXNz
IE9iakNGcm9udGVuZERpc3BhdGNoZXJJbXBsZW1lbnRhdGlvbkdlbmVyYXRvcihPYmpDR2VuZXJh
dG9yKToKICAgICAgICAgICAgIGxpbmVzLmV4dGVuZChzZWxmLl9nZW5lcmF0ZV9ldmVudF9vdXRf
cGFyYW1ldGVycyhkb21haW4sIGV2ZW50KSkKICAgICAgICAgbGluZXMuYXBwZW5kKCcgICAgcm91
dGVyLnNlbmRFdmVudChqc29uTWVzc2FnZS0+dG9KU09OU3RyaW5nKCkpOycpCiAgICAgICAgIGxp
bmVzLmFwcGVuZCgnfScpCi0gICAgICAgIHJldHVybiAnXG4nLmpvaW4obGluZXMpCisgICAgICAg
IHJldHVybiBzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGV2ZW50LmNvbmRpdGlv
biwgJ1xuJy5qb2luKGxpbmVzKSkKIAogICAgIGRlZiBfZ2VuZXJhdGVfZXZlbnRfc2lnbmF0dXJl
KHNlbGYsIGRvbWFpbiwgZXZlbnQpOgogICAgICAgICBpZiBub3QgZXZlbnQuZXZlbnRfcGFyYW1l
dGVyczoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0
cy9jb2RlZ2VuL2dlbmVyYXRlX29iamNfaGVhZGVyLnB5IGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19oZWFkZXIucHkKaW5kZXgg
MTViZjYxZDJkNDUzNzk5ZWE1MTY0OGNiY2MwNzI2ZmQ0MDE4NTJlMS4uMTI0ZDc3MzlmMWE0NzBm
MjQ0MWIzYTQ2NThlNDRiYzNiOTM0YjRlMiAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19oZWFkZXIucHkKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJh
dGVfb2JqY19oZWFkZXIucHkKQEAgLTk5LDEwICs5OSwxNCBAQCBjbGFzcyBPYmpDSGVhZGVyR2Vu
ZXJhdG9yKE9iakNHZW5lcmF0b3IpOgogCiAgICAgZGVmIF9nZW5lcmF0ZV9mb3J3YXJkX2RlY2xh
cmF0aW9ucyhzZWxmLCBkb21haW4pOgogICAgICAgICBsaW5lcyA9IFtdCisKICAgICAgICAgZm9y
IGRlY2xhcmF0aW9uIGluIHNlbGYudHlwZV9kZWNsYXJhdGlvbnNfZm9yX2RvbWFpbihkb21haW4p
OgogICAgICAgICAgICAgaWYgKGlzaW5zdGFuY2UoZGVjbGFyYXRpb24udHlwZSwgT2JqZWN0VHlw
ZSkpOgogICAgICAgICAgICAgICAgIG9iamNfbmFtZSA9IHNlbGYub2JqY19uYW1lX2Zvcl90eXBl
KGRlY2xhcmF0aW9uLnR5cGUpCiAgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKHNlbGYud3Jh
cF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24oZGVjbGFyYXRpb24uY29uZGl0aW9uLCAnQGNsYXNz
ICVzOycgJSBvYmpjX25hbWUpKQorCisgICAgICAgIGlmIG5vdCBsZW4obGluZXMpOgorICAgICAg
ICAgICAgcmV0dXJuICcnCiAgICAgICAgIHJldHVybiBzZWxmLndyYXBfd2l0aF9ndWFyZF9mb3Jf
Y29uZGl0aW9uKGRvbWFpbi5jb25kaXRpb24sICdcbicuam9pbihsaW5lcykpCiAKICAgICBkZWYg
X2dlbmVyYXRlX2VudW1zKHNlbGYsIGRvbWFpbik6CkBAIC0xNDYsMTUgKzE1MCwyMSBAQCBjbGFz
cyBPYmpDSGVhZGVyR2VuZXJhdG9yKE9iakNHZW5lcmF0b3IpOgogICAgICAgICAgICAgaWYgbGVu
KGV2ZW50X2xpbmVzKToKICAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoc2VsZi53cmFwX3dp
dGhfZ3VhcmRfZm9yX2NvbmRpdGlvbihldmVudC5jb25kaXRpb24sICdcblxuJy5qb2luKGV2ZW50
X2xpbmVzKSkpCiAKKyAgICAgICAgaWYgbm90IGxlbihsaW5lcyk6CisgICAgICAgICAgICByZXR1
cm4gJycKICAgICAgICAgcmV0dXJuIHNlbGYud3JhcF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24o
ZG9tYWluLmNvbmRpdGlvbiwgJ1xuXG4nLmpvaW4obGluZXMpKQogCiAgICAgZGVmIF9nZW5lcmF0
ZV90eXBlcyhzZWxmLCBkb21haW4pOgogICAgICAgICBsaW5lcyA9IFtdCisKICAgICAgICAgIyBU
eXBlIGludGVyZmFjZXMuCiAgICAgICAgIGZvciBkZWNsYXJhdGlvbiBpbiBzZWxmLnR5cGVfZGVj
bGFyYXRpb25zX2Zvcl9kb21haW4oZG9tYWluKToKICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uo
ZGVjbGFyYXRpb24udHlwZSwgT2JqZWN0VHlwZSk6CiAgICAgICAgICAgICAgICAgYWRkX25ld2xp
bmUobGluZXMpCiAgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKHNlbGYuX2dlbmVyYXRlX3R5
cGVfaW50ZXJmYWNlKGRvbWFpbiwgZGVjbGFyYXRpb24pKQorCisgICAgICAgIGlmIG5vdCBsZW4o
bGluZXMpOgorICAgICAgICAgICAgcmV0dXJuICcnCiAgICAgICAgIHJldHVybiBzZWxmLndyYXBf
d2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGRvbWFpbi5jb25kaXRpb24sICdcbicuam9pbihsaW5l
cykpCiAKICAgICBkZWYgX2dlbmVyYXRlX2Fub255bW91c19lbnVtX2Zvcl9kZWNsYXJhdGlvbihz
ZWxmLCBkb21haW4sIGRlY2xhcmF0aW9uKToKQEAgLTIxNSw2ICsyMjUsNyBAQCBjbGFzcyBPYmpD
SGVhZGVyR2VuZXJhdG9yKE9iakNHZW5lcmF0b3IpOgogCiAgICAgZGVmIF9nZW5lcmF0ZV9jb21t
YW5kX3Byb3RvY29scyhzZWxmLCBkb21haW4pOgogICAgICAgICBsaW5lcyA9IFtdCisKICAgICAg
ICAgaWYgc2VsZi5jb21tYW5kc19mb3JfZG9tYWluKGRvbWFpbik6CiAgICAgICAgICAgICBvYmpj
X25hbWUgPSAnJXMlc0RvbWFpbkhhbmRsZXInICUgKHNlbGYub2JqY19wcmVmaXgoKSwgZG9tYWlu
LmRvbWFpbl9uYW1lKQogICAgICAgICAgICAgbGluZXMuYXBwZW5kKCdAcHJvdG9jb2wgJXMgPE5T
T2JqZWN0PicgJSBvYmpjX25hbWUpCkBAIC0yMjIsNiArMjMzLDkgQEAgY2xhc3MgT2JqQ0hlYWRl
ckdlbmVyYXRvcihPYmpDR2VuZXJhdG9yKToKICAgICAgICAgICAgIGZvciBjb21tYW5kIGluIHNl
bGYuY29tbWFuZHNfZm9yX2RvbWFpbihkb21haW4pOgogICAgICAgICAgICAgICAgIGxpbmVzLmFw
cGVuZChzZWxmLl9nZW5lcmF0ZV9zaW5nbGVfY29tbWFuZF9wcm90b2NvbChkb21haW4sIGNvbW1h
bmQpKQogICAgICAgICAgICAgbGluZXMuYXBwZW5kKCdAZW5kJykKKworICAgICAgICBpZiBub3Qg
bGVuKGxpbmVzKToKKyAgICAgICAgICAgIHJldHVybiAnJwogICAgICAgICByZXR1cm4gc2VsZi53
cmFwX3dpdGhfZ3VhcmRfZm9yX2NvbmRpdGlvbihkb21haW4uY29uZGl0aW9uLCAnXG4nLmpvaW4o
bGluZXMpKQogCiAgICAgZGVmIF9nZW5lcmF0ZV9zaW5nbGVfY29tbWFuZF9wcm90b2NvbChzZWxm
LCBkb21haW4sIGNvbW1hbmQpOgpAQCAtMjQ0LDYgKzI1OCw3IEBAIGNsYXNzIE9iakNIZWFkZXJH
ZW5lcmF0b3IoT2JqQ0dlbmVyYXRvcik6CiAKICAgICBkZWYgX2dlbmVyYXRlX2V2ZW50X2ludGVy
ZmFjZXMoc2VsZiwgZG9tYWluKToKICAgICAgICAgbGluZXMgPSBbXQorCiAgICAgICAgIGV2ZW50
cyA9IHNlbGYuZXZlbnRzX2Zvcl9kb21haW4oZG9tYWluKQogICAgICAgICBpZiBsZW4oZXZlbnRz
KToKICAgICAgICAgICAgIG9iamNfbmFtZSA9ICclcyVzRG9tYWluRXZlbnREaXNwYXRjaGVyJyAl
IChzZWxmLm9iamNfcHJlZml4KCksIGRvbWFpbi5kb21haW5fbmFtZSkKQEAgLTI1MiwxMSArMjY3
LDE1IEBAIGNsYXNzIE9iakNIZWFkZXJHZW5lcmF0b3IoT2JqQ0dlbmVyYXRvcik6CiAgICAgICAg
ICAgICBmb3IgZXZlbnQgaW4gZXZlbnRzOgogICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZChz
ZWxmLl9nZW5lcmF0ZV9zaW5nbGVfZXZlbnRfaW50ZXJmYWNlKGRvbWFpbiwgZXZlbnQpKQogICAg
ICAgICAgICAgbGluZXMuYXBwZW5kKCdAZW5kJykKKworICAgICAgICBpZiBub3QgbGVuKGxpbmVz
KToKKyAgICAgICAgICAgIHJldHVybiAnJwogICAgICAgICByZXR1cm4gc2VsZi53cmFwX3dpdGhf
Z3VhcmRfZm9yX2NvbmRpdGlvbihkb21haW4uY29uZGl0aW9uLCAnXG4nLmpvaW4obGluZXMpKQog
CiAgICAgZGVmIF9nZW5lcmF0ZV9zaW5nbGVfZXZlbnRfaW50ZXJmYWNlKHNlbGYsIGRvbWFpbiwg
ZXZlbnQpOgogICAgICAgICBpZiBub3QgZXZlbnQuZXZlbnRfcGFyYW1ldGVyczoKLSAgICAgICAg
ICAgIHJldHVybiAnLSAodm9pZCklczsnICUgZXZlbnQuZXZlbnRfbmFtZQorICAgICAgICAgICAg
cmV0dXJuIHNlbGYud3JhcF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24oZXZlbnQuY29uZGl0aW9u
LCAnLSAodm9pZCklczsnICUgZXZlbnQuZXZlbnRfbmFtZSkKKwogICAgICAgICBwYWlycyA9IFtd
CiAgICAgICAgIGZvciBwYXJhbWV0ZXIgaW4gZXZlbnQuZXZlbnRfcGFyYW1ldGVyczoKICAgICAg
ICAgICAgIHBhcmFtX25hbWUgPSBwYXJhbWV0ZXIucGFyYW1ldGVyX25hbWUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRl
X29iamNfaW50ZXJuYWxfaGVhZGVyLnB5IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19pbnRlcm5hbF9oZWFkZXIucHkKaW5kZXgg
YTczMzlkMjliNDM5Yzk4MTM0MjU0MDc5NzNjZmVlNDA1MTQxNzZkZS4uM2NkOTc4ZjA4YmM5NzRh
NzAxMGY4MmI1YzI5YzEwYTQ0ZjU4MzY4YSAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19pbnRlcm5hbF9oZWFk
ZXIucHkKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVn
ZW4vZ2VuZXJhdGVfb2JqY19pbnRlcm5hbF9oZWFkZXIucHkKQEAgLTcwLDEwICs3MCwxMSBAQCBj
bGFzcyBPYmpDSW50ZXJuYWxIZWFkZXJHZW5lcmF0b3IoT2JqQ0dlbmVyYXRvcik6CiAgICAgICAg
IHJldHVybiAnXG5cbicuam9pbihzZWN0aW9ucykKIAogICAgIGRlZiBfZ2VuZXJhdGVfZXZlbnRf
ZGlzcGF0Y2hlcl9wcml2YXRlX2ludGVyZmFjZXMoc2VsZiwgZG9tYWluKToKKyAgICAgICAgaWYg
bm90IGxlbihzZWxmLmV2ZW50c19mb3JfZG9tYWluKGRvbWFpbikpOgorICAgICAgICAgICAgcmV0
dXJuICcnCisKICAgICAgICAgbGluZXMgPSBbXQotICAgICAgICBpZiBsZW4oc2VsZi5ldmVudHNf
Zm9yX2RvbWFpbihkb21haW4pKToKLSAgICAgICAgICAgIG9iamNfbmFtZSA9ICclcyVzRG9tYWlu
RXZlbnREaXNwYXRjaGVyJyAlIChzZWxmLm9iamNfcHJlZml4KCksIGRvbWFpbi5kb21haW5fbmFt
ZSkKLSAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgnQGludGVyZmFjZSAlcyAoUHJpdmF0ZSknICUg
b2JqY19uYW1lKQotICAgICAgICAgICAgbGluZXMuYXBwZW5kKCctIChpbnN0YW5jZXR5cGUpaW5p
dFdpdGhDb250cm9sbGVyOihJbnNwZWN0b3I6OkF1Z21lbnRhYmxlSW5zcGVjdG9yQ29udHJvbGxl
ciopY29udHJvbGxlcjsnKQotICAgICAgICAgICAgbGluZXMuYXBwZW5kKCdAZW5kJykKLSAgICAg
ICAgcmV0dXJuICdcbicuam9pbihsaW5lcykKKyAgICAgICAgbGluZXMuYXBwZW5kKCdAaW50ZXJm
YWNlICVzJXNEb21haW5FdmVudERpc3BhdGNoZXIgKFByaXZhdGUpJyAlIChzZWxmLm9iamNfcHJl
Zml4KCksIGRvbWFpbi5kb21haW5fbmFtZSkpCisgICAgICAgIGxpbmVzLmFwcGVuZCgnLSAoaW5z
dGFuY2V0eXBlKWluaXRXaXRoQ29udHJvbGxlcjooSW5zcGVjdG9yOjpBdWdtZW50YWJsZUluc3Bl
Y3RvckNvbnRyb2xsZXIqKWNvbnRyb2xsZXI7JykKKyAgICAgICAgbGluZXMuYXBwZW5kKCdAZW5k
JykKKyAgICAgICAgcmV0dXJuIHNlbGYud3JhcF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24oZG9t
YWluLmNvbmRpdGlvbiwgJ1xuJy5qb2luKGxpbmVzKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVyYXRlX29iamNfcHJvdG9j
b2xfdHlwZV9jb252ZXJzaW9uc19oZWFkZXIucHkgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL3NjcmlwdHMvY29kZWdlbi9nZW5lcmF0ZV9vYmpjX3Byb3RvY29sX3R5cGVfY29udmVy
c2lvbnNfaGVhZGVyLnB5CmluZGV4IDVjNTJjZGVhOWIzNDIwYmY1ODcwYWQ5YjIxMGE1NGU0ODYz
ZTA2NzAuLjg1ZjBmY2M5MTMyZDY5YzU5N2YxYTY4YjBhM2I5MDE1NjM2NGNhZGIgMTAwNzU1Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy9jb2RlZ2VuL2dlbmVy
YXRlX29iamNfcHJvdG9jb2xfdHlwZV9jb252ZXJzaW9uc19oZWFkZXIucHkKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2NvZGVnZW4vZ2VuZXJhdGVfb2JqY19w
cm90b2NvbF90eXBlX2NvbnZlcnNpb25zX2hlYWRlci5weQpAQCAtMTIwLDYgKzEyMCw4IEBAIGNs
YXNzIE9iakNQcm90b2NvbFR5cGVDb252ZXJzaW9uc0hlYWRlckdlbmVyYXRvcihPYmpDR2VuZXJh
dG9yKToKICAgICAgICAgICAgIGlmIGxlbihldmVudF9saW5lcyk6CiAgICAgICAgICAgICAgICAg
bGluZXMuYXBwZW5kKHNlbGYud3JhcF93aXRoX2d1YXJkX2Zvcl9jb25kaXRpb24oZXZlbnQuY29u
ZGl0aW9uLCAnXG5cbicuam9pbihldmVudF9saW5lcykpKQogCisgICAgICAgIGlmIG5vdCBsZW4o
bGluZXMpOgorICAgICAgICAgICAgcmV0dXJuICcnCiAgICAgICAgIHJldHVybiBzZWxmLndyYXBf
d2l0aF9ndWFyZF9mb3JfY29uZGl0aW9uKGRvbWFpbi5jb25kaXRpb24sICdcblxuJy5qb2luKGxp
bmVzKSkKIAogICAgIGRlZiBfZ2VuZXJhdGVfYW5vbnltb3VzX2VudW1fY29udmVyc2lvbl9mb3Jf
ZGVjbGFyYXRpb24oc2VsZiwgZG9tYWluLCBkZWNsYXJhdGlvbik6CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3NjcmlwdHMvdGVzdHMvZGVmaW5pdGlvbnMtd2l0
aC1tYWMtcGxhdGZvcm0uanNvbiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2Ny
aXB0cy90ZXN0cy9kZWZpbml0aW9ucy13aXRoLW1hYy1wbGF0Zm9ybS5qc29uCmluZGV4IDliZTQ2
YTE3YWQxMjlmNmVjMGQyMWIxOTljNDg1NmY0MDkzNzY3NjcuLjNhYTc5OTYyNjUyMmMwODg2Mjg2
MTI0OWY4OGNiYjFiY2IwZGVlZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3Ivc2NyaXB0cy90ZXN0cy9kZWZpbml0aW9ucy13aXRoLW1hYy1wbGF0Zm9ybS5qc29u
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy90ZXN0cy9kZWZp
bml0aW9ucy13aXRoLW1hYy1wbGF0Zm9ybS5qc29uCkBAIC0xLDEwICsxLDExIEBACiB7CiAgICAg
ImRvbWFpbiI6ICJOZXR3b3JrIiwKKyAgICAiY29uZGl0aW9uIjogIkRPTUFJTi1NQUMiLAogICAg
ICJ0eXBlcyI6IFsKICAgICAgICAgewogICAgICAgICAgICAgImlkIjogIk5ldHdvcmtFcnJvciIs
CiAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAotICAgICAgICAgICAgImNvbmRpdGlvbiI6
ICJQTEFURk9STShNQUMpIiwKKyAgICAgICAgICAgICJjb25kaXRpb24iOiAiVFlQRS1NQUMiLAog
ICAgICAgICAgICAgInByb3BlcnRpZXMiOiBbCiAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJt
ZXNzYWdlIiwgInR5cGUiOiAic3RyaW5nIiwgImRlc2NyaXB0aW9uIjogIkVycm9yIG1lc3NhZ2Uu
IiB9LAogICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiY29kZSIsICJ0eXBlIjogImludGVnZXIi
LCAiZGVzY3JpcHRpb24iOiAiRXJyb3IgY29kZS4iIH0KQEAgLTE0LDE0ICsxNSwxNCBAQAogICAg
ICJjb21tYW5kcyI6IFsKICAgICAgICAgewogICAgICAgICAgICAgIm5hbWUiOiAibG9hZFJlc291
cmNlIiwKLSAgICAgICAgICAgICJjb25kaXRpb24iOiAiUExBVEZPUk0oTUFDKSIsCisgICAgICAg
ICAgICAiY29uZGl0aW9uIjogIkNPTU1BTkQtTUFDIiwKICAgICAgICAgICAgICJkZXNjcmlwdGlv
biI6ICJMb2FkcyBhIHJlc291cmNlIGluIHRoZSBjb250ZXh0IG9mIGEgZnJhbWUgb24gdGhlIGlu
c3BlY3RlZCBwYWdlIHdpdGhvdXQgY3Jvc3Mgb3JpZ2luIGNoZWNrcy4iCiAgICAgICAgIH0KICAg
ICBdLAogICAgICJldmVudHMiOiBbCiAgICAgICAgIHsKICAgICAgICAgICAgICJuYW1lIjogInJl
c291cmNlTG9hZGVkIiwKLSAgICAgICAgICAgICJjb25kaXRpb24iOiAiUExBVEZPUk0oTUFDKSIs
CisgICAgICAgICAgICAiY29uZGl0aW9uIjogIkVWRU5ULU1BQyIsCiAgICAgICAgICAgICAiZGVz
Y3JpcHRpb24iOiAiQSByZXNvdXJjZSB3YXMgbG9hZGVkLiIKICAgICAgICAgfQogICAgIF0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy90ZXN0cy9l
eHBlY3RlZC9kZWZpbml0aW9ucy13aXRoLW1hYy1wbGF0Zm9ybS5qc29uLXJlc3VsdCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Ivc2NyaXB0cy90ZXN0cy9leHBlY3RlZC9kZWZpbml0
aW9ucy13aXRoLW1hYy1wbGF0Zm9ybS5qc29uLXJlc3VsdAppbmRleCBmNjliNmRlN2UxYTliOWVk
OTNiYmY5MDUzYzIxNDYzOTljMDFhZDdmLi5iMDdjOTAxMDJhMzEwZmJjNTA4YTQyODkyYThjYWZk
OTMwNTNmNDVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Nj
cmlwdHMvdGVzdHMvZXhwZWN0ZWQvZGVmaW5pdGlvbnMtd2l0aC1tYWMtcGxhdGZvcm0uanNvbi1y
ZXN1bHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL3Rlc3Rz
L2V4cGVjdGVkL2RlZmluaXRpb25zLXdpdGgtbWFjLXBsYXRmb3JtLmpzb24tcmVzdWx0CkBAIC0y
OCwxNiArMjgsMTggQEAKIAogLy8gRE8gTk9UIEVESVQgVEhJUyBGSUxFLiBJdCBpcyBhdXRvbWF0
aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGRlZmluaXRpb25zLXdpdGgtbWFjLXBsYXRmb3JtLmpzb24g
YnkgdGhlIHNjcmlwdDogU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9zY3JpcHRzL2dl
bmVyYXRlLWluc3BlY3Rvci1wcm90b2NvbC1iaW5kaW5ncy5weQogCisjaWYgRE9NQUlOLU1BQwog
Ly8gTmV0d29yawogSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckRvbWFpbigiTmV0d29yayIsIG51
bGwpOwotI2lmIFBMQVRGT1JNKE1BQykKKyNpZiBDT01NQU5ELU1BQwogSW5zcGVjdG9yQmFja2Vu
ZC5yZWdpc3RlckNvbW1hbmQoIk5ldHdvcmsubG9hZFJlc291cmNlIiwgbnVsbCwgW10sIFtdKTsK
LSNlbmRpZiAvLyBQTEFURk9STShNQUMpCi0jaWYgUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIENP
TU1BTkQtTUFDCisjaWYgRVZFTlQtTUFDCiBJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQo
Ik5ldHdvcmsucmVzb3VyY2VMb2FkZWQiLCBudWxsLCBbXSk7Ci0jZW5kaWYgLy8gUExBVEZPUk0o
TUFDKQorI2VuZGlmIC8vIEVWRU5ULU1BQwogSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rlck5ldHdv
cmtEaXNwYXRjaGVyID0gSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckRpc3BhdGNoZXIuYmluZChJ
bnNwZWN0b3JCYWNrZW5kLCAiTmV0d29yayIpOwogSW5zcGVjdG9yQmFja2VuZC5hY3RpdmF0ZURv
bWFpbigiTmV0d29yayIsIG51bGwpOworI2VuZGlmIC8vIERPTUFJTi1NQUMKICMjIyBFbmQgRmls
ZTogSW5zcGVjdG9yQmFja2VuZENvbW1hbmRzLmpzLmluCiAKICMjIyBCZWdpbiBGaWxlOiBUZXN0
QWx0ZXJuYXRlQmFja2VuZERpc3BhdGNoZXJzLmgKQEAgLTg5LDEzICs5MSwxNSBAQCBwcml2YXRl
OgogfTsKIAogCisjaWYgRE9NQUlOLU1BQwogY2xhc3MgQWx0ZXJuYXRlTmV0d29ya0JhY2tlbmRE
aXNwYXRjaGVyIDogcHVibGljIEFsdGVybmF0ZUJhY2tlbmREaXNwYXRjaGVyIHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5BbHRlcm5hdGVOZXR3b3JrQmFja2VuZERpc3BhdGNoZXIoKSB7IH0KLSNp
ZiBQTEFURk9STShNQUMpCisjaWYgQ09NTUFORC1NQUMKICAgICB2aXJ0dWFsIHZvaWQgbG9hZFJl
c291cmNlKGxvbmcgY2FsbElkKSA9IDA7Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlm
IC8vIENPTU1BTkQtTUFDCiB9OworI2VuZGlmIC8vIERPTUFJTi1NQUMKIAogfSAvLyBuYW1lc3Bh
Y2UgSW5zcGVjdG9yCiAKQEAgLTE0MywyNiArMTQ3LDMxIEBAIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogdHlwZWRlZiBTdHJpbmcgRXJyb3JTdHJpbmc7CiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SX0FM
VEVSTkFURV9ESVNQQVRDSEVSUykKKyNpZiBET01BSU4tTUFDCiBjbGFzcyBBbHRlcm5hdGVOZXR3
b3JrQmFja2VuZERpc3BhdGNoZXI7CisjZW5kaWYgLy8gRE9NQUlOLU1BQwogI2VuZGlmIC8vIEVO
QUJMRShJTlNQRUNUT1JfQUxURVJOQVRFX0RJU1BBVENIRVJTKQogCisjaWYgRE9NQUlOLU1BQwog
Y2xhc3MgTmV0d29ya0JhY2tlbmREaXNwYXRjaGVySGFuZGxlciB7CiBwdWJsaWM6Ci0jaWYgUExB
VEZPUk0oTUFDKQorI2lmIENPTU1BTkQtTUFDCiAgICAgdmlydHVhbCB2b2lkIGxvYWRSZXNvdXJj
ZShFcnJvclN0cmluZyYpID0gMDsKLSNlbmRpZiAvLyBQTEFURk9STShNQUMpCisjZW5kaWYgLy8g
Q09NTUFORC1NQUMKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIH5OZXR3b3JrQmFja2VuZERpc3Bh
dGNoZXJIYW5kbGVyKCk7CiB9OworI2VuZGlmIC8vIERPTUFJTi1NQUMKIAorI2lmIERPTUFJTi1N
QUMKIGNsYXNzIE5ldHdvcmtCYWNrZW5kRGlzcGF0Y2hlciBmaW5hbCA6IHB1YmxpYyBTdXBwbGVt
ZW50YWxCYWNrZW5kRGlzcGF0Y2hlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxOZXR3b3Jr
QmFja2VuZERpc3BhdGNoZXI+IGNyZWF0ZShCYWNrZW5kRGlzcGF0Y2hlciYsIE5ldHdvcmtCYWNr
ZW5kRGlzcGF0Y2hlckhhbmRsZXIqKTsKICAgICB2b2lkIGRpc3BhdGNoKGxvbmcgcmVxdWVzdElk
LCBjb25zdCBTdHJpbmcmIG1ldGhvZCwgUmVmPEpTT046Ok9iamVjdD4mJiBtZXNzYWdlKSBmaW5h
bDsKIHByaXZhdGU6Ci0jaWYgUExBVEZPUk0oTUFDKQorI2lmIENPTU1BTkQtTUFDCiAgICAgdm9p
ZCBsb2FkUmVzb3VyY2UobG9uZyByZXF1ZXN0SWQsIFJlZlB0cjxKU09OOjpPYmplY3Q+JiYgcGFy
YW1ldGVycyk7Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIENPTU1BTkQtTUFD
CiAjaWYgRU5BQkxFKElOU1BFQ1RPUl9BTFRFUk5BVEVfRElTUEFUQ0hFUlMpCiBwdWJsaWM6CiAg
ICAgdm9pZCBzZXRBbHRlcm5hdGVEaXNwYXRjaGVyKEFsdGVybmF0ZU5ldHdvcmtCYWNrZW5kRGlz
cGF0Y2hlciogYWx0ZXJuYXRlRGlzcGF0Y2hlcikgeyBtX2FsdGVybmF0ZURpc3BhdGNoZXIgPSBh
bHRlcm5hdGVEaXNwYXRjaGVyOyB9CkBAIC0xNzMsNiArMTgyLDcgQEAgcHJpdmF0ZToKICAgICBO
ZXR3b3JrQmFja2VuZERpc3BhdGNoZXIoQmFja2VuZERpc3BhdGNoZXImLCBOZXR3b3JrQmFja2Vu
ZERpc3BhdGNoZXJIYW5kbGVyKik7CiAgICAgTmV0d29ya0JhY2tlbmREaXNwYXRjaGVySGFuZGxl
ciogbV9hZ2VudCB7IG51bGxwdHIgfTsKIH07CisjZW5kaWYgLy8gRE9NQUlOLU1BQwogCiB9IC8v
IG5hbWVzcGFjZSBJbnNwZWN0b3IKICMjIyBFbmQgRmlsZTogVGVzdEJhY2tlbmREaXNwYXRjaGVy
cy5oCkBAIC0yMjEsOCArMjMxLDExIEBAIHByaXZhdGU6CiAKIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogCisjaWYgRE9NQUlOLU1BQwogTmV0d29ya0JhY2tlbmREaXNwYXRjaGVySGFuZGxlcjo6fk5l
dHdvcmtCYWNrZW5kRGlzcGF0Y2hlckhhbmRsZXIoKSB7IH0KKyNlbmRpZiAvLyBET01BSU4tTUFD
CiAKKyNpZiBET01BSU4tTUFDCiBSZWY8TmV0d29ya0JhY2tlbmREaXNwYXRjaGVyPiBOZXR3b3Jr
QmFja2VuZERpc3BhdGNoZXI6OmNyZWF0ZShCYWNrZW5kRGlzcGF0Y2hlciYgYmFja2VuZERpc3Bh
dGNoZXIsIE5ldHdvcmtCYWNrZW5kRGlzcGF0Y2hlckhhbmRsZXIqIGFnZW50KQogewogICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IE5ldHdvcmtCYWNrZW5kRGlzcGF0Y2hlcihiYWNrZW5kRGlzcGF0
Y2hlciwgYWdlbnQpKTsKQEAgLTI0MiwxNyArMjU1LDE3IEBAIHZvaWQgTmV0d29ya0JhY2tlbmRE
aXNwYXRjaGVyOjpkaXNwYXRjaChsb25nIHJlcXVlc3RJZCwgY29uc3QgU3RyaW5nJiBtZXRob2Qs
IFJlCiAgICAgUmVmUHRyPEpTT046Ok9iamVjdD4gcGFyYW1ldGVyczsKICAgICBtZXNzYWdlLT5n
ZXRPYmplY3QoInBhcmFtcyJfcywgcGFyYW1ldGVycyk7CiAKLSNpZiBQTEFURk9STShNQUMpCisj
aWYgQ09NTUFORC1NQUMKICAgICBpZiAobWV0aG9kID09ICJsb2FkUmVzb3VyY2UiKSB7CiAgICAg
ICAgIGxvYWRSZXNvdXJjZShyZXF1ZXN0SWQsIFdURk1vdmUocGFyYW1ldGVycykpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBDT01N
QU5ELU1BQwogCiAgICAgbV9iYWNrZW5kRGlzcGF0Y2hlci0+cmVwb3J0UHJvdG9jb2xFcnJvcihC
YWNrZW5kRGlzcGF0Y2hlcjo6TWV0aG9kTm90Rm91bmQsICInTmV0d29yay4iICsgbWV0aG9kICsg
Iicgd2FzIG5vdCBmb3VuZCIpOwogfQogCi0jaWYgUExBVEZPUk0oTUFDKQorI2lmIENPTU1BTkQt
TUFDCiB2b2lkIE5ldHdvcmtCYWNrZW5kRGlzcGF0Y2hlcjo6bG9hZFJlc291cmNlKGxvbmcgcmVx
dWVzdElkLCBSZWZQdHI8SlNPTjo6T2JqZWN0PiYmKQogewogI2lmIEVOQUJMRShJTlNQRUNUT1Jf
QUxURVJOQVRFX0RJU1BBVENIRVJTKQpAQCAtMjcxLDcgKzI4NCw4IEBAIHZvaWQgTmV0d29ya0Jh
Y2tlbmREaXNwYXRjaGVyOjpsb2FkUmVzb3VyY2UobG9uZyByZXF1ZXN0SWQsIFJlZlB0cjxKU09O
OjpPYmplY3Q+CiAgICAgZWxzZQogICAgICAgICBtX2JhY2tlbmREaXNwYXRjaGVyLT5yZXBvcnRQ
cm90b2NvbEVycm9yKEJhY2tlbmREaXNwYXRjaGVyOjpTZXJ2ZXJFcnJvciwgV1RGTW92ZShlcnJv
cikpOwogfQotI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBDT01NQU5ELU1BQwor
I2VuZGlmIC8vIERPTUFJTi1NQUMKIAogfSAvLyBuYW1lc3BhY2UgSW5zcGVjdG9yCiAKQEAgLTMx
NywxNiArMzMxLDE4IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3IgewogCiBjbGFzcyBGcm9udGVuZFJv
dXRlcjsKIAorI2lmIERPTUFJTi1NQUMKIGNsYXNzIE5ldHdvcmtGcm9udGVuZERpc3BhdGNoZXIg
ewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIE5ldHdvcmtGcm9u
dGVuZERpc3BhdGNoZXIoRnJvbnRlbmRSb3V0ZXImIGZyb250ZW5kUm91dGVyKSA6IG1fZnJvbnRl
bmRSb3V0ZXIoZnJvbnRlbmRSb3V0ZXIpIHsgfQotI2lmIFBMQVRGT1JNKE1BQykKKyNpZiBFVkVO
VC1NQUMKICAgICB2b2lkIHJlc291cmNlTG9hZGVkKCk7Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFD
KQorI2VuZGlmIC8vIEVWRU5ULU1BQwogcHJpdmF0ZToKICAgICBGcm9udGVuZFJvdXRlciYgbV9m
cm9udGVuZFJvdXRlcjsKIH07CisjZW5kaWYgLy8gRE9NQUlOLU1BQwogCiB9IC8vIG5hbWVzcGFj
ZSBJbnNwZWN0b3IKICMjIyBFbmQgRmlsZTogVGVzdEZyb250ZW5kRGlzcGF0Y2hlcnMuaApAQCAt
MzY5LDcgKzM4NSw4IEBAIHByaXZhdGU6CiAKIG5hbWVzcGFjZSBJbnNwZWN0b3IgewogCi0jaWYg
UExBVEZPUk0oTUFDKQorI2lmIERPTUFJTi1NQUMKKyNpZiBFVkVOVC1NQUMKIHZvaWQgTmV0d29y
a0Zyb250ZW5kRGlzcGF0Y2hlcjo6cmVzb3VyY2VMb2FkZWQoKQogewogICAgIFJlZjxKU09OOjpP
YmplY3Q+IGpzb25NZXNzYWdlID0gSlNPTjo6T2JqZWN0OjpjcmVhdGUoKTsKQEAgLTM3Nyw3ICsz
OTQsOCBAQCB2b2lkIE5ldHdvcmtGcm9udGVuZERpc3BhdGNoZXI6OnJlc291cmNlTG9hZGVkKCkK
IAogICAgIG1fZnJvbnRlbmRSb3V0ZXIuc2VuZEV2ZW50KGpzb25NZXNzYWdlLT50b0pTT05TdHJp
bmcoKSk7CiB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIEVWRU5ULU1BQwor
I2VuZGlmIC8vIERPTUFJTi1NQUMKIAogfSAvLyBuYW1lc3BhY2UgSW5zcGVjdG9yCiAKQEAgLTQy
NywxOSArNDQ1LDIyIEBAIG5hbWVzcGFjZSBQcm90b2NvbCB7CiAKIAogLy8gRm9yd2FyZCBkZWNs
YXJhdGlvbnMuCisjaWYgRE9NQUlOLU1BQwogbmFtZXNwYWNlIE5ldHdvcmsgewotI2lmIFBMQVRG
T1JNKE1BQykKKyNpZiBUWVBFLU1BQwogY2xhc3MgTmV0d29ya0Vycm9yOwotI2VuZGlmIC8vIFBM
QVRGT1JNKE1BQykKKyNlbmRpZiAvLyBUWVBFLU1BQwogfSAvLyBOZXR3b3JrCisjZW5kaWYgLy8g
RE9NQUlOLU1BQwogLy8gRW5kIG9mIGZvcndhcmQgZGVjbGFyYXRpb25zLgogCiAKIAogCisjaWYg
RE9NQUlOLU1BQwogbmFtZXNwYWNlIE5ldHdvcmsgewogCi0jaWYgUExBVEZPUk0oTUFDKQorI2lm
IFRZUEUtTUFDCiBjbGFzcyBOZXR3b3JrRXJyb3IgOiBwdWJsaWMgSlNPTjo6T2JqZWN0QmFzZSB7
CiBwdWJsaWM6CiAgICAgZW51bSB7CkBAIC01MDQsOSArNTI1LDEwIEBAIHB1YmxpYzoKICAgICAg
ICAgcmV0dXJuIEJ1aWxkZXI8Tm9GaWVsZHNTZXQ+KEpTT046Ok9iamVjdDo6Y3JlYXRlKCkpOwog
ICAgIH0KIH07Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIFRZUEUtTUFDCiAK
IH0gLy8gTmV0d29yaworI2VuZGlmIC8vIERPTUFJTi1NQUMKIAogCiAKQEAgLTU5NiwyMSArNjE4
LDI1IEBAIG5hbWVzcGFjZSBQcm90b2NvbCB7CiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSW5z
cGVjdG9yQWx0ZXJuYXRlQmFja2VuZERpc3BhdGNoZXJzLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFp
blB0ci5oPgogCisjaWYgRE9NQUlOLU1BQwogQHByb3RvY29sIFRlc3RQcm90b2NvbE5ldHdvcmtE
b21haW5IYW5kbGVyOworI2VuZGlmIC8vIERPTUFJTi1NQUMKIAogbmFtZXNwYWNlIEluc3BlY3Rv
ciB7CiAKIAorI2lmIERPTUFJTi1NQUMKIGNsYXNzIE9iakNJbnNwZWN0b3JOZXR3b3JrQmFja2Vu
ZERpc3BhdGNoZXIgZmluYWwgOiBwdWJsaWMgQWx0ZXJuYXRlTmV0d29ya0JhY2tlbmREaXNwYXRj
aGVyIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBPYmpDSW5z
cGVjdG9yTmV0d29ya0JhY2tlbmREaXNwYXRjaGVyKGlkPFRlc3RQcm90b2NvbE5ldHdvcmtEb21h
aW5IYW5kbGVyPiBoYW5kbGVyKSB7IG1fZGVsZWdhdGUgPSBoYW5kbGVyOyB9Ci0jaWYgUExBVEZP
Uk0oTUFDKQorI2lmIENPTU1BTkQtTUFDCiAgICAgdm9pZCBsb2FkUmVzb3VyY2UobG9uZyByZXF1
ZXN0SWQpIGZpbmFsOwotI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBDT01NQU5E
LU1BQwogcHJpdmF0ZToKICAgICBSZXRhaW5QdHI8aWQ8VGVzdFByb3RvY29sTmV0d29ya0RvbWFp
bkhhbmRsZXI+PiBtX2RlbGVnYXRlOwogfTsKKyNlbmRpZiAvLyBET01BSU4tTUFDCiAKIH0gLy8g
bmFtZXNwYWNlIEluc3BlY3RvcgogCkBAIC02NTUsNyArNjgxLDggQEAgcHJpdmF0ZToKIAogbmFt
ZXNwYWNlIEluc3BlY3RvciB7CiAKLSNpZiBQTEFURk9STShNQUMpCisjaWYgRE9NQUlOLU1BQwor
I2lmIENPTU1BTkQtTUFDCiB2b2lkIE9iakNJbnNwZWN0b3JOZXR3b3JrQmFja2VuZERpc3BhdGNo
ZXI6OmxvYWRSZXNvdXJjZShsb25nIHJlcXVlc3RJZCkKIHsKICAgICBpZiAoIVttX2RlbGVnYXRl
IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IobG9hZFJlc291cmNlV2l0aEVycm9yQ2FsbGJh
Y2s6c3VjY2Vzc0NhbGxiYWNrOildKSB7CkBAIC02NzUsNyArNzAyLDggQEAgdm9pZCBPYmpDSW5z
cGVjdG9yTmV0d29ya0JhY2tlbmREaXNwYXRjaGVyOjpsb2FkUmVzb3VyY2UobG9uZyByZXF1ZXN0
SWQpCiAKICAgICBbbV9kZWxlZ2F0ZSBsb2FkUmVzb3VyY2VXaXRoRXJyb3JDYWxsYmFjazplcnJv
ckNhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFjazpzdWNjZXNzQ2FsbGJhY2tdOwogfQotI2VuZGlmIC8v
IFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBDT01NQU5ELU1BQworI2VuZGlmIC8vIERPTUFJTi1N
QUMKIAogfSAvLyBuYW1lc3BhY2UgSW5zcGVjdG9yCiAKQEAgLTcxNSw4ICs3NDMsMTAgQEAgdm9p
ZCBPYmpDSW5zcGVjdG9yTmV0d29ya0JhY2tlbmREaXNwYXRjaGVyOjpsb2FkUmVzb3VyY2UobG9u
ZyByZXF1ZXN0SWQpCiAKIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkgKCJkZWZhdWx0IikpKQog
QGludGVyZmFjZSBUZXN0UHJvdG9jb2xDb25maWd1cmF0aW9uIDogTlNPYmplY3QKKyNpZiBET01B
SU4tTUFDCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluLCBzZXR0ZXI9c2V0TmV0d29ya0hh
bmRsZXI6KSBpZDxUZXN0UHJvdG9jb2xOZXR3b3JrRG9tYWluSGFuZGxlcj4gbmV0d29ya0hhbmRs
ZXI7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIFRlc3RQcm90b2NvbE5ldHdvcmtE
b21haW5FdmVudERpc3BhdGNoZXIgKm5ldHdvcmtFdmVudERpc3BhdGNoZXI7CisjZW5kaWYgLy8g
RE9NQUlOLU1BQwogQGVuZAogCiAKQEAgLTc2Niw4ICs3OTYsMTAgQEAgdXNpbmcgbmFtZXNwYWNl
IEluc3BlY3RvcjsKIEBpbXBsZW1lbnRhdGlvbiBUZXN0UHJvdG9jb2xDb25maWd1cmF0aW9uCiB7
CiAgICAgQXVnbWVudGFibGVJbnNwZWN0b3JDb250cm9sbGVyKiBfY29udHJvbGxlcjsKKyNpZiBE
T01BSU4tTUFDCiAgICAgaWQ8VGVzdFByb3RvY29sTmV0d29ya0RvbWFpbkhhbmRsZXI+IF9uZXR3
b3JrSGFuZGxlcjsKICAgICBUZXN0UHJvdG9jb2xOZXR3b3JrRG9tYWluRXZlbnREaXNwYXRjaGVy
ICpfbmV0d29ya0V2ZW50RGlzcGF0Y2hlcjsKKyNlbmRpZiAvLyBET01BSU4tTUFDCiB9CiAKIC0g
KGluc3RhbmNldHlwZSlpbml0V2l0aENvbnRyb2xsZXI6KEF1Z21lbnRhYmxlSW5zcGVjdG9yQ29u
dHJvbGxlciopY29udHJvbGxlcgpAQCAtNzgyLDExICs4MTQsMTQgQEAgdXNpbmcgbmFtZXNwYWNl
IEluc3BlY3RvcjsKIAogLSAodm9pZClkZWFsbG9jCiB7CisjaWYgRE9NQUlOLU1BQwogICAgIFtf
bmV0d29ya0hhbmRsZXIgcmVsZWFzZV07CiAgICAgW19uZXR3b3JrRXZlbnREaXNwYXRjaGVyIHJl
bGVhc2VdOworI2VuZGlmIC8vIERPTUFJTi1NQUMKICAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAK
KyNpZiBET01BSU4tTUFDCiAtICh2b2lkKXNldE5ldHdvcmtIYW5kbGVyOihpZDxUZXN0UHJvdG9j
b2xOZXR3b3JrRG9tYWluSGFuZGxlcj4paGFuZGxlcgogewogICAgIGlmIChoYW5kbGVyID09IF9u
ZXR3b3JrSGFuZGxlcikKQEAgLTgxMiw2ICs4NDcsNyBAQCB1c2luZyBuYW1lc3BhY2UgSW5zcGVj
dG9yOwogICAgIHJldHVybiBfbmV0d29ya0V2ZW50RGlzcGF0Y2hlcjsKIH0KIAorI2VuZGlmIC8v
IERPTUFJTi1NQUMKIEBlbmQKIAogCkBAIC04NTQsNiArODkwLDcgQEAgdXNpbmcgbmFtZXNwYWNl
IEluc3BlY3RvcjsKIAogdXNpbmcgbmFtZXNwYWNlIEluc3BlY3RvcjsKIAorI2lmIERPTUFJTi1N
QUMKIEBpbXBsZW1lbnRhdGlvbiBUZXN0UHJvdG9jb2xOZXR3b3JrRG9tYWluRXZlbnREaXNwYXRj
aGVyCiB7CiAgICAgQXVnbWVudGFibGVJbnNwZWN0b3JDb250cm9sbGVyKiBfY29udHJvbGxlcjsK
QEAgLTg2OSw2ICs5MDYsNyBAQCB1c2luZyBuYW1lc3BhY2UgSW5zcGVjdG9yOwogICAgIHJldHVy
biBzZWxmOwogfQogCisjaWYgRVZFTlQtTUFDCiAtICh2b2lkKXJlc291cmNlTG9hZGVkCiB7CiAg
ICAgY29uc3QgRnJvbnRlbmRSb3V0ZXImIHJvdXRlciA9IF9jb250cm9sbGVyLT5mcm9udGVuZFJv
dXRlcigpOwpAQCAtODc3LDggKzkxNSwxMCBAQCB1c2luZyBuYW1lc3BhY2UgSW5zcGVjdG9yOwog
ICAgIGpzb25NZXNzYWdlLT5zZXRTdHJpbmcoIm1ldGhvZCJfcywgIk5ldHdvcmsucmVzb3VyY2VM
b2FkZWQiX3MpOwogICAgIHJvdXRlci5zZW5kRXZlbnQoanNvbk1lc3NhZ2UtPnRvSlNPTlN0cmlu
ZygpKTsKIH0KKyNlbmRpZiAvLyBFVkVOVC1NQUMKIAogQGVuZAorI2VuZGlmIC8vIERPTUFJTi1N
QUMKIAogCiAjIyMgRW5kIEZpbGU6IFRlc3RQcm90b2NvbEV2ZW50RGlzcGF0Y2hlcnMubW0KQEAg
LTkxOCwxMyArOTU4LDE2IEBAIHVzaW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7CiAjaW1wb3J0IDxX
ZWJJbnNwZWN0b3IvUldJUHJvdG9jb2xKU09OT2JqZWN0Lmg+CiAKIAotI2lmIFBMQVRGT1JNKE1B
QykKKyNpZiBET01BSU4tTUFDCisjaWYgVFlQRS1NQUMKIEBjbGFzcyBUZXN0UHJvdG9jb2xOZXR3
b3JrRXJyb3I7Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlmIC8vIFRZUEUtTUFDCisj
ZW5kaWYgLy8gRE9NQUlOLU1BQwogCiAKIAotI2lmIFBMQVRGT1JNKE1BQykKKyNpZiBET01BSU4t
TUFDCisjaWYgVFlQRS1NQUMKIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkgKCJkZWZhdWx0Iikp
KQogQGludGVyZmFjZSBUZXN0UHJvdG9jb2xOZXR3b3JrRXJyb3IgOiBSV0lQcm90b2NvbEpTT05P
YmplY3QKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aFBheWxvYWQ6KE5TRGljdGlvbmFyeTxOU1N0
cmluZyAqLCBpZD4gKilwYXlsb2FkOwpAQCAtOTMzLDE5ICs5NzYsMjYgQEAgX19hdHRyaWJ1dGVf
XygodmlzaWJpbGl0eSAoImRlZmF1bHQiKSkpCiAvKiByZXF1aXJlZCAqLyBAcHJvcGVydHkgKG5v
bmF0b21pYywgY29weSkgTlNTdHJpbmcgKm1lc3NhZ2U7CiAvKiByZXF1aXJlZCAqLyBAcHJvcGVy
dHkgKG5vbmF0b21pYywgYXNzaWduKSBpbnQgY29kZTsKIEBlbmQKLSNlbmRpZiAvLyBQTEFURk9S
TShNQUMpCisjZW5kaWYgLy8gVFlQRS1NQUMKKyNlbmRpZiAvLyBET01BSU4tTUFDCiAKKyNpZiBE
T01BSU4tTUFDCiBAcHJvdG9jb2wgVGVzdFByb3RvY29sTmV0d29ya0RvbWFpbkhhbmRsZXIgPE5T
T2JqZWN0PgogQG9wdGlvbmFsCi0jaWYgUExBVEZPUk0oTUFDKQorI2lmIENPTU1BTkQtTUFDCiAt
ICh2b2lkKWxvYWRSZXNvdXJjZVdpdGhFcnJvckNhbGxiYWNrOih2b2lkKF4pKE5TU3RyaW5nICpl
cnJvcikpZXJyb3JDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2s6KHZvaWQoXikodm9pZCkpc3VjY2Vz
c0NhbGxiYWNrOwotI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBDT01NQU5ELU1B
QwogQGVuZAorI2VuZGlmIC8vIERPTUFJTi1NQUMKIAorI2lmIERPTUFJTi1NQUMKIF9fYXR0cmli
dXRlX18oKHZpc2liaWxpdHkgKCJkZWZhdWx0IikpKQogQGludGVyZmFjZSBUZXN0UHJvdG9jb2xO
ZXR3b3JrRG9tYWluRXZlbnREaXNwYXRjaGVyIDogTlNPYmplY3QKKyNpZiBFVkVOVC1NQUMKIC0g
KHZvaWQpcmVzb3VyY2VMb2FkZWQ7CisjZW5kaWYgLy8gRVZFTlQtTUFDCiBAZW5kCisjZW5kaWYg
Ly8gRE9NQUlOLU1BQwogCiAKICNpbXBvcnQgPFdlYkluc3BlY3Rvci9SV0lQcm90b2NvbEJ1aWxk
Q29tcGF0aWJpbGl0eU9iamVjdHMuaD4KQEAgLTk4Nyw5ICsxMDM3LDExIEBAIF9fYXR0cmlidXRl
X18oKHZpc2liaWxpdHkgKCJkZWZhdWx0IikpKQogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvQXVn
bWVudGFibGVJbnNwZWN0b3JDb250cm9sbGVyLmg+CiAjaW1wb3J0IDx3dGYvSlNPTlZhbHVlcy5o
PgogCisjaWYgRE9NQUlOLU1BQwogQGludGVyZmFjZSBUZXN0UHJvdG9jb2xOZXR3b3JrRG9tYWlu
RXZlbnREaXNwYXRjaGVyIChQcml2YXRlKQogLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29udHJv
bGxlcjooSW5zcGVjdG9yOjpBdWdtZW50YWJsZUluc3BlY3RvckNvbnRyb2xsZXIqKWNvbnRyb2xs
ZXI7CiBAZW5kCisjZW5kaWYgLy8gRE9NQUlOLU1BQwogCiAKICMjIyBFbmQgRmlsZTogVGVzdFBy
b3RvY29sSW50ZXJuYWwuaApAQCAtMTA3NiwyNSArMTEyOCwyOSBAQCBPcHRpb25hbDxPYmpDRW51
bVR5cGU+IGZyb21Qcm90b2NvbFN0cmluZyhjb25zdCBTdHJpbmcmIHZhbHVlKTsKIAogdXNpbmcg
bmFtZXNwYWNlIEluc3BlY3RvcjsKIAorI2lmIERPTUFJTi1NQUMKIEBpbnRlcmZhY2UgVGVzdFBy
b3RvY29sVHlwZUNvbnZlcnNpb25zIChOZXR3b3JrRG9tYWluKQogCi0jaWYgUExBVEZPUk0oTUFD
KQorI2lmIFRZUEUtTUFDCiArICh2b2lkKV9wYXJzZU5ldHdvcmtFcnJvcjooVGVzdFByb3RvY29s
TmV0d29ya0Vycm9yICoqKW91dFZhbHVlIGZyb21QYXlsb2FkOihpZClwYXlsb2FkOwotI2VuZGlm
IC8vIFBMQVRGT1JNKE1BQykKKyNlbmRpZiAvLyBUWVBFLU1BQwogCiBAZW5kCisjZW5kaWYgLy8g
RE9NQUlOLU1BQwogCisjaWYgRE9NQUlOLU1BQwogQGltcGxlbWVudGF0aW9uIFRlc3RQcm90b2Nv
bFR5cGVDb252ZXJzaW9ucyAoTmV0d29ya0RvbWFpbikKIAotI2lmIFBMQVRGT1JNKE1BQykKKyNp
ZiBUWVBFLU1BQwogKyAodm9pZClfcGFyc2VOZXR3b3JrRXJyb3I6KFRlc3RQcm90b2NvbE5ldHdv
cmtFcnJvciAqKilvdXRWYWx1ZSBmcm9tUGF5bG9hZDooaWQpcGF5bG9hZAogewogICAgIFRIUk9X
X0VYQ0VQVElPTl9GT1JfQkFEX1RZUEUocGF5bG9hZCwgW05TRGljdGlvbmFyeSBjbGFzc10pOwog
ICAgICpvdXRWYWx1ZSA9IFtbVGVzdFByb3RvY29sTmV0d29ya0Vycm9yIGFsbG9jXSBpbml0V2l0
aFBheWxvYWQ6cGF5bG9hZF07CiB9Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQorI2VuZGlmIC8v
IFRZUEUtTUFDCiAKIEBlbmQKKyNlbmRpZiAvLyBET01BSU4tTUFDCiAKIAogIyMjIEVuZCBGaWxl
OiBUZXN0UHJvdG9jb2xUeXBlQ29udmVyc2lvbnMubW0KQEAgLTExMzgsNyArMTE5NCw4IEBAIHVz
aW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7CiAKIHVzaW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7CiAK
LSNpZiBQTEFURk9STShNQUMpCisjaWYgRE9NQUlOLU1BQworI2lmIFRZUEUtTUFDCiBAaW1wbGVt
ZW50YXRpb24gVGVzdFByb3RvY29sTmV0d29ya0Vycm9yCiAKIC0gKGluc3RhbmNldHlwZSlpbml0
V2l0aFBheWxvYWQ6KG5vbm51bGwgTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAqKXBheWxv
YWQKQEAgLTExOTYsNyArMTI1Myw4IEBAIHVzaW5nIG5hbWVzcGFjZSBJbnNwZWN0b3I7CiB9CiAK
IEBlbmQKLSNlbmRpZiAvLyBQTEFURk9STShNQUMpCisjZW5kaWYgLy8gVFlQRS1NQUMKKyNlbmRp
ZiAvLyBET01BSU4tTUFDCiAKIAogIyMjIEVuZCBGaWxlOiBUZXN0UHJvdG9jb2xUeXBlcy5tbQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>