<?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>133809</bug_id>
          
          <creation_ts>2014-06-12 11:13:39 -0700</creation_ts>
          <short_desc>Add ShapeValue.cpp and move ShapeValue::isImageValid() there</short_desc>
          <delta_ts>2014-06-12 11:50:58 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>bunhere</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>rakuco</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1015158</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-12 11:13:39 -0700</bug_when>
    <thetext>Add ShapeValue.cpp and move ShapeValue::isImageValid() there</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015159</commentid>
    <comment_count>1</comment_count>
      <attachid>232963</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-12 11:16:36 -0700</bug_when>
    <thetext>Created attachment 232963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015161</commentid>
    <comment_count>2</comment_count>
      <attachid>232964</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-12 11:21:00 -0700</bug_when>
    <thetext>Created attachment 232964
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015176</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-12 11:50:49 -0700</bug_when>
    <thetext>Committed r169904: &lt;http://trac.webkit.org/changeset/169904&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232963</attachid>
            <date>2014-06-12 11:16:36 -0700</date>
            <delta_ts>2014-06-12 11:20:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133809-20140612111611.patch</filename>
            <type>text/plain</type>
            <size>17547</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY5OTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzU3ZjA1ZTk0ZWYyZjg2
NTYyZjQ4NTZlNzIxODUwNmYzZjhjMDExOC4uMDk1ZjZiNTJkOTEwMmFiMWI4ZjRlODc5ODI5YTY5
YzQ3MzAwNmE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE0LTA2LTEyICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFNoYXBlVmFs
dWUuY3BwIGFuZCBtb3ZlIFNoYXBlVmFsdWU6OmlzSW1hZ2VWYWxpZCgpIHRoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM4MDkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGdldHMgcmlkIG9m
IENhY2hlZEltYWdlLmggKGFuZCBSZXNvdXJjZVJlcXVlc3QgYW5kIGZyaWVuZHMpIGZyb20gUmVu
ZGVyU3R5bGUuaC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIFdlYkNv
cmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvai5maWx0ZXJzOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnNoYXBlUHJvcGVydHlWYWx1ZSk6CisgICAgICAgICogY3Nz
L0NTU0Nyb3NzZmFkZVZhbHVlLmNwcDoKKyAgICAgICAgKiBjc3MvQ1NTRmlsdGVySW1hZ2VWYWx1
ZS5jcHA6CisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuaDoKKyAgICAgICAgKiBwYWdlL2Fu
aW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpibGVu
ZEZ1bmMpOgorICAgICAgICAqIHJlbmRlcmluZy9TaGFwZVZhbHVlLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpTaGFwZVZhbHVlOjppc0ltYWdlVmFsaWQpOgorICAgICAgICAqIHJlbmRl
cmluZy9zaGFwZXMvU2hhcGVPdXRzaWRlSW5mby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpyZWZl
cmVuY2VCb3gpOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVPdXRzaWRlSW5mbzo6Y29tcHV0ZWRT
aGFwZSk6CisgICAgICAgIChXZWJDb3JlOjpTaGFwZU91dHNpZGVJbmZvOjppc0VuYWJsZWRGb3Ip
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6CisgICAgICAgIChXZWJD
b3JlOjpTaGFwZVZhbHVlOjp0eXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OnNl
dEltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OlNoYXBlVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6U2hhcGVWYWx1ZTo6aXNJbWFnZVZhbGlkKTogRGVsZXRlZC4KKwogMjAx
NC0wNi0xMiAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFN1YnBp
eGVsIHJlbmRlcmluZzogTWFrZSA8c2VsZWN0PiBlbGVtZW50J3MgZGVjb3JhdGlvbiBzdWJwaXhl
bCBhd2FyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZDQ5MjM0ZmQ2OGRjY2ZmMzI3NmIyY2Zl
MzE2Y2UyNzY5MWYwYTQwYi4uNTdlYjhkMmNkZjI1ODFhNzE5MTkzYmNiYmI5ZGYyMWFmODgyMjU3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTIzOTQsNiArMjM5NCw3IEBAIHNldChXZWJDb3Jl
X1NPVVJDRVMKICAgICByZW5kZXJpbmcvc3R5bGUvU1ZHUmVuZGVyU3R5bGUuY3BwCiAgICAgcmVu
ZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0eWxlRGVmcy5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUv
U2hhZG93RGF0YS5jcHAKKyAgICByZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5jcHAKICAgICBy
ZW5kZXJpbmcvc3R5bGUvU3R5bGVCYWNrZ3JvdW5kRGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5
bGUvU3R5bGVCb3hEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdl
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oK
aW5kZXggNWQ0NGM4OTczMDIyNWJkMTY1YWFmMmIyMjMxZjJhNDE5MjM0NmRiNi4uMjQ1MDk5MTRj
Y2I2ZDZiZDRlM2VmNTBiYzdkMjVlMjE3MjBjYjVkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMTU0Miw2ICsxMTU0Miw3IEBACiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAg
IDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxl
XFNoYXBlVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlQWxsSW5PbmUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQmFja2dyb3VuZERhdGEuY3BwIj4KICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggMTQw
NmE1NDIyODRjM2ZjYTk1N2RlNDkzOWEyZDk1YTc0NjlhMGE5Mi4uMjNlYjZmOGJhODNjZDdlODRj
NGNkNDI3YjAzNDRkZWQwYmIxZjQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMjc5MCw2ICsyNzkwLDkg
QEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTaGFkb3dEYXRh
LmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xD
b21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFNoYXBl
VmFsdWUuY3BwIj4KKyAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CisgICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVc
U3R5bGVBbGxJbk9uZS5jcHAiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyNDE1MGQ4NGE1ZGNmZTc3ZWI0NWRhMGQzMGVhYTli
NjEzNDJmYTIwLi5mMzY0MGY0YmEzZWUxNmMyZDVkZDQ3MWNlM2VmOWEzNjQzMjNhMmU0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC03OTEsNiArNzkxLDcgQEAKIAkJMUFCMUFFN0EwQzA1MUZERTAwMTM5RjRGIC8qIHpvb21JbkN1
cnNvci5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBQjFBRTc4MEMwNTFGREUwMDEzOUY0RiAvKiB6b29tSW5DdXJzb3IucG5nICovOyB9OwogCQkx
QUIxQUU3QjBDMDUxRkRFMDAxMzlGNEYgLyogem9vbU91dEN1cnNvci5wbmcgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjFBRTc5MEMwNTFGREUwMDEz
OUY0RiAvKiB6b29tT3V0Q3Vyc29yLnBuZyAqLzsgfTsKIAkJMUFCMzNEQTUxMjU1MUUzMjAwMjQ0
NTdBIC8qIElPS2l0LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFBQjMzREE0MTI1NTFFMzIwMDI0NDU3QSAvKiBJT0tpdC5mcmFtZXdv
cmsgKi87IH07CisJCTFBQjVFQkQwMTk0QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjVFQkNGMTk0
QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCAqLzsgfTsKIAkJMUFCN0ZDNjgwQThCOTJF
QzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjdGQzQ3MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2
YWx1YXRvci5jcHAgKi87IH07CiAJCTFBQjdGQzY5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2
YWx1YXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUFCN0ZDNDgwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmggKi87IH07CiAJCTFB
QjdGQzZCMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCN0ZDNEEwQThCOTJFQzAwRDlE
MzdCIC8qIFhQYXRoRXhwcmVzc2lvbi5jcHAgKi87IH07CkBAIC03NzE3LDYgKzc3MTgsNyBAQAog
CQkxQUIxQUU3ODBDMDUxRkRFMDAxMzlGNEYgLyogem9vbUluQ3Vyc29yLnBuZyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9
IHpvb21JbkN1cnNvci5wbmc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjFBRTc5
MEMwNTFGREUwMDEzOUY0RiAvKiB6b29tT3V0Q3Vyc29yLnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9IHpvb21PdXRD
dXJzb3IucG5nOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUIzM0RBNDEyNTUxRTMy
MDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBJT0tpdC5mcmFt
ZXdvcms7IHBhdGggPSAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JT0tpdC5mcmFtZXdvcms7
IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CisJCTFBQjVFQkNGMTk0QTFEMTcwMDU5QUM3
MCAvKiBTaGFwZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNoYXBlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI3RkM0NzBB
OEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFhQYXRoRXZhbHVhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMUFCN0ZDNDgwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUGF0aEV2YWx1YXRvci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI3RkM0OTBBOEI5MkVDMDBEOUQzN0IgLyogWFBh
dGhFdmFsdWF0b3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUGF0aEV2YWx1YXRvci5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMDg2OCw2ICsyMDg3MCw3IEBACiAJ
CQkJQkM1RUI2NjcwRTgxQ0I3MTAwQjI1OTY1IC8qIFJlbmRlclN0eWxlQ29uc3RhbnRzLmggKi8s
CiAJCQkJQkM1RUI4QzEwRTgyMDMxQjAwQjI1OTY1IC8qIFNoYWRvd0RhdGEuY3BwICovLAogCQkJ
CUJDNUVCOEMyMEU4MjAzMUIwMEIyNTk2NSAvKiBTaGFkb3dEYXRhLmggKi8sCisJCQkJMUFCNUVC
Q0YxOTRBMUQxNzAwNTlBQzcwIC8qIFNoYXBlVmFsdWUuY3BwICovLAogCQkJCUZEMUFGMTRFMTY1
NkYxMjEwMEM2RDRGNyAvKiBTaGFwZVZhbHVlLmggKi8sCiAJCQkJQkM1RUI2QTAwRTgxREM0RjAw
QjI1OTY1IC8qIFN0eWxlQmFja2dyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNkExMEU4MURD
NEYwMEIyNTk2NSAvKiBTdHlsZUJhY2tncm91bmREYXRhLmggKi8sCkBAIC0yOTcwMiw2ICsyOTcw
NSw3IEBACiAJCQkJQjEwQjY5ODExNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2lu
ZG93QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VG
MjY5IC8qIFdlZWtJbnB1dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMUFCNUVCRDAxOTRB
MUQxNzAwNTlBQzcwIC8qIFNoYXBlVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODUwMzFC
NTAwQTQ0RUZDNzAwRjk5MkUwIC8qIFdoZWVsRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
OTNFQzQ0QTExODhGNEJCODAwNjYxREYxIC8qIFdoZWVsRXZlbnREZWx0YVRyYWNrZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTM4MEY0NzMwOUExMUFCNDAwMUZEQjM0IC8qIFdpZGdldC5jcHAg
aW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggOTg3OWVjOTViOTlhNjA4NTQ1ZDEwODExOTdkNTgzYTA5
N2FhOWU5Yy4uZGJiOGRiNmIwYjQ1OWI2YmQ1ZjRiYTA4NWU1OTRhZGJiNDBjNTRmNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
QEAgLTE2MjIsMTMgKzE2MjIsMTMgQEAgc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHNoYXBl
UHJvcGVydHlWYWx1ZShjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IFMKICAgICBpZiAo
IXNoYXBlVmFsdWUpCiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlm
aWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKIAotICAgIGlmIChzaGFwZVZhbHVlLT50eXBlKCkgPT0g
U2hhcGVWYWx1ZTo6Qm94KQorICAgIGlmIChzaGFwZVZhbHVlLT50eXBlKCkgPT0gU2hhcGVWYWx1
ZTo6VHlwZTo6Qm94KQogICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUo
c2hhcGVWYWx1ZS0+Y3NzQm94KCkpOwogCi0gICAgaWYgKHNoYXBlVmFsdWUtPnR5cGUoKSA9PSBT
aGFwZVZhbHVlOjpJbWFnZSkKKyAgICBpZiAoc2hhcGVWYWx1ZS0+dHlwZSgpID09IFNoYXBlVmFs
dWU6OlR5cGU6OkltYWdlKQogICAgICAgICByZXR1cm4gc2hhcGVWYWx1ZS0+aW1hZ2UoKSA/IHNo
YXBlVmFsdWUtPmltYWdlKCktPmNzc1ZhbHVlKCkgOiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVu
dGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKIAotICAgIEFTU0VSVChzaGFwZVZhbHVlLT50eXBl
KCkgPT0gU2hhcGVWYWx1ZTo6U2hhcGUpOworICAgIEFTU0VSVChzaGFwZVZhbHVlLT50eXBlKCkg
PT0gU2hhcGVWYWx1ZTo6VHlwZTo6U2hhcGUpOwogCiAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4g
bGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKICAgICBsaXN0LT5h
cHBlbmQodmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLCBzaGFwZVZhbHVlLT5zaGFwZSgpKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNwcAppbmRleCBhNzMwMDUyNjdiMDQ0
ZDc2NzJjOWQ2MDYzYWJkYTEzY2ZiMjQyYmQ4Li42OTJmNDMzOTAzODgxYTk1YjY1MjU5OWFkZDcw
MTEzNWVmZWY0Y2I2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRl
VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAK
QEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIkFuaW1hdGlvblV0aWxpdGllcy5oIgogI2lu
Y2x1ZGUgIkNTU0ltYWdlVmFsdWUuaCIKKyNpbmNsdWRlICJDYWNoZWRJbWFnZS5oIgogI2luY2x1
ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgiCiAjaW5jbHVkZSAiQ3Jvc3NmYWRlR2VuZXJhdGVk
SW1hZ2UuaCIKICNpbmNsdWRlICJJbWFnZUJ1ZmZlci5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0ZpbHRlckltYWdlVmFsdWUuY3BwCmluZGV4IDFhYzJmYTRmMGVhOTRjNjI3NjBhY2I5ODY4M2Ix
NmQwOTUyMGU2M2EuLmQ5ODBlNjJjZTQ2NDQwNDA3MjgxYWJjYzEzOWIwOWU3YjQ1NjE2NzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0ZXJJbWFnZVZhbHVlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKQEAgLTMwLDYgKzMw
LDcgQEAKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAKICNpbmNsdWRlICJDU1NJbWFnZVZhbHVl
LmgiCisjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxv
YWRlci5oIgogI2luY2x1ZGUgIkNyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmgiCiAjaW5jbHVkZSAi
RmlsdGVyRWZmZWN0UmVuZGVyZXIuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJlc29sdmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCmluZGV4
IGU1NzllMzU1MTljZjBiYWNjNmZiMGEyMTdmZTc4M2FhMzRjZTZlNDkuLjcyM2QwZDIyNDU2YTMz
YWQxNmM4OWViMDNiMzkzYmEyMzIxNDcwNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJlc29sdmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIu
aApAQCAtOTAsNiArOTAsNyBAQCBjbGFzcyBTdHlsZVNoZWV0TGlzdDsKIGNsYXNzIFN0eWxlZEVs
ZW1lbnQ7CiBjbGFzcyBWaWV3cG9ydFN0eWxlUmVzb2x2ZXI7CiBjbGFzcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZTsKK3N0cnVjdCBSZXNvdXJjZUxvYWRlck9wdGlvbnM7CiAKIGNsYXNzIE1lZGlhUXVl
cnlSZXN1bHQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKE1lZGlhUXVlcnlSZXN1bHQpOyBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
YW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
YW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAppbmRleCA4ZDE5YTVjZGMzNjc3MWE2
NWZhZTZiNWQzZmIxM2NiODc5NmUxZDYzLi5mMzY4NWUxY2U2NTVjYTkzMzA2NjliZmIyN2FlYTA4
YjRmYzg1NDZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQ
cm9wZXJ0eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
Q1NTUHJvcGVydHlBbmltYXRpb24uY3BwCkBAIC0xNDUsNyArMTQ1LDcgQEAgc3RhdGljIGlubGlu
ZSBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+IGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiwg
U2hhcGVWYWx1ZSoKICAgICBpZiAoIWZyb20gfHwgIXRvKQogICAgICAgICByZXR1cm4gdG87CiAK
LSAgICBpZiAoZnJvbS0+dHlwZSgpICE9IFNoYXBlVmFsdWU6OlNoYXBlIHx8IHRvLT50eXBlKCkg
IT0gU2hhcGVWYWx1ZTo6U2hhcGUpCisgICAgaWYgKGZyb20tPnR5cGUoKSAhPSBTaGFwZVZhbHVl
OjpUeXBlOjpTaGFwZSB8fCB0by0+dHlwZSgpICE9IFNoYXBlVmFsdWU6OlR5cGU6OlNoYXBlKQog
ICAgICAgICByZXR1cm4gdG87CiAKICAgICBpZiAoZnJvbS0+Y3NzQm94KCkgIT0gdG8tPmNzc0Jv
eCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NoYXBlVmFsdWUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NoYXBlVmFsdWUuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA2
MTk5ZDRlZTYyOWE0NjkwNTg3MjVmZjRlMDk3MmIyMTBiNTRiOTcKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2hhcGVWYWx1ZS5jcHAKQEAgLTAsMCArMSw0MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJTaGFwZVZhbHVl
LmgiCisKKyNpbmNsdWRlICJDYWNoZWRJbWFnZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K2Jvb2wgU2hhcGVWYWx1ZTo6aXNJbWFnZVZhbGlkKCkgY29uc3QKK3sKKyAgICBpZiAoIWltYWdl
KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoaW1hZ2UoKS0+aXNDYWNoZWRJbWFn
ZSgpIHx8IGltYWdlKCktPmlzQ2FjaGVkSW1hZ2VTZXQoKSkKKyAgICAgICAgcmV0dXJuIGltYWdl
KCktPmNhY2hlZEltYWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKTsK
KyAgICByZXR1cm4gaW1hZ2UoKS0+aXNHZW5lcmF0ZWRJbWFnZSgpOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVz
L1NoYXBlT3V0c2lkZUluZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9T
aGFwZU91dHNpZGVJbmZvLmNwcAppbmRleCAwYTM2NDIyN2I0ODQ1NzI2ZmI5MDlkZDJkZTRkOWQ1
YTM0ODU0NzkxLi42YzAxNmJiYzIyYjJjOTEwYzAxNDU4YjViNDQyN2I1NzJlZTMyMjBmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGVPdXRzaWRlSW5m
by5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgRmxvYXRTaXplIFNoYXBlT3V0c2lkZUluZm86OnNoYXBl
VG9SZW5kZXJlclNpemUoY29uc3QgRmxvYXRTaXplJiBzaXplKSBjb25zdAogc3RhdGljIGlubGlu
ZSBDU1NCb3hUeXBlIHJlZmVyZW5jZUJveChjb25zdCBTaGFwZVZhbHVlJiBzaGFwZVZhbHVlKQog
ewogICAgIGlmIChzaGFwZVZhbHVlLmNzc0JveCgpID09IEJveE1pc3NpbmcpIHsKLSAgICAgICAg
aWYgKHNoYXBlVmFsdWUudHlwZSgpID09IFNoYXBlVmFsdWU6OkltYWdlKQorICAgICAgICBpZiAo
c2hhcGVWYWx1ZS50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6VHlwZTo6SW1hZ2UpCiAgICAgICAgICAg
ICByZXR1cm4gQ29udGVudEJveDsKICAgICAgICAgcmV0dXJuIE1hcmdpbkJveDsKICAgICB9CkBA
IC0xNzUsMTUgKzE3NSwxNSBAQCBjb25zdCBTaGFwZSYgU2hhcGVPdXRzaWRlSW5mbzo6Y29tcHV0
ZWRTaGFwZSgpIGNvbnN0CiAgICAgY29uc3QgU2hhcGVWYWx1ZSYgc2hhcGVWYWx1ZSA9ICpzdHls
ZS5zaGFwZU91dHNpZGUoKTsKIAogICAgIHN3aXRjaCAoc2hhcGVWYWx1ZS50eXBlKCkpIHsKLSAg
ICBjYXNlIFNoYXBlVmFsdWU6OlNoYXBlOgorICAgIGNhc2UgU2hhcGVWYWx1ZTo6VHlwZTo6U2hh
cGU6CiAgICAgICAgIEFTU0VSVChzaGFwZVZhbHVlLnNoYXBlKCkpOwogICAgICAgICBtX3NoYXBl
ID0gU2hhcGU6OmNyZWF0ZVNoYXBlKHNoYXBlVmFsdWUuc2hhcGUoKSwgbV9yZWZlcmVuY2VCb3hM
b2dpY2FsU2l6ZSwgd3JpdGluZ01vZGUsIG1hcmdpbik7CiAgICAgICAgIGJyZWFrOwotICAgIGNh
c2UgU2hhcGVWYWx1ZTo6SW1hZ2U6CisgICAgY2FzZSBTaGFwZVZhbHVlOjpUeXBlOjpJbWFnZToK
ICAgICAgICAgQVNTRVJUKHNoYXBlVmFsdWUuaXNJbWFnZVZhbGlkKCkpOwogICAgICAgICBtX3No
YXBlID0gY3JlYXRlU2hhcGVGb3JJbWFnZShzaGFwZVZhbHVlLmltYWdlKCksIHNoYXBlSW1hZ2VU
aHJlc2hvbGQsIHdyaXRpbmdNb2RlLCBtYXJnaW4pOwogICAgICAgICBicmVhazsKLSAgICBjYXNl
IFNoYXBlVmFsdWU6OkJveDogeworICAgIGNhc2UgU2hhcGVWYWx1ZTo6VHlwZTo6Qm94OiB7CiAg
ICAgICAgIFJvdW5kZWRSZWN0IHNoYXBlUmVjdCA9IGNvbXB1dGVSb3VuZGVkUmVjdEZvckJveFNo
YXBlKHJlZmVyZW5jZUJveChzaGFwZVZhbHVlKSwgbV9yZW5kZXJlcik7CiAgICAgICAgIGlmICgh
Y29udGFpbmluZ0Jsb2NrU3R5bGUuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkKICAgICAgICAg
ICAgIHNoYXBlUmVjdCA9IHNoYXBlUmVjdC50cmFuc3Bvc2VkUmVjdCgpOwpAQCAtMjk0LDkgKzI5
NCw5IEBAIGJvb2wgU2hhcGVPdXRzaWRlSW5mbzo6aXNFbmFibGVkRm9yKGNvbnN0IFJlbmRlckJv
eCYgYm94KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBzd2l0Y2ggKHNoYXBlVmFsdWUt
PnR5cGUoKSkgewotICAgIGNhc2UgU2hhcGVWYWx1ZTo6U2hhcGU6IHJldHVybiBzaGFwZVZhbHVl
LT5zaGFwZSgpOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVl
LT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCks
ICooc2hhcGVWYWx1ZS0+aW1hZ2UoKSkpOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6Qm94OiByZXR1
cm4gdHJ1ZTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6OlR5cGU6OlNoYXBlOiByZXR1cm4gc2hhcGVW
YWx1ZS0+c2hhcGUoKTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6OlR5cGU6OkltYWdlOiByZXR1cm4g
c2hhcGVWYWx1ZS0+aXNJbWFnZVZhbGlkKCkgJiYgY2hlY2tTaGFwZUltYWdlT3JpZ2luKGJveC5k
b2N1bWVudCgpLCAqKHNoYXBlVmFsdWUtPmltYWdlKCkpKTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6
OlR5cGU6OkJveDogcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1
ZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaAppbmRleCBl
YzgzZDBjNzUzN2M1ZmI4NzliNDMwOWZkNGY1YTAzOTQyZjRlYmQxLi43ZmE5NjI5YThiOTI3MjEz
ZmQ1NDY1YzlkMDFhZGFjZGQ2MDFlMDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TaGFwZVZhbHVlLmgKQEAgLTMyLDcgKzMyLDYgQEAKIAogI2luY2x1ZGUgIkJhc2ljU2hh
cGVzLmgiCiAjaW5jbHVkZSAiQ1NTVmFsdWVLZXl3b3Jkcy5oIgotI2luY2x1ZGUgIkNhY2hlZElt
YWdlLmgiCiAjaW5jbHVkZSAiU3R5bGVJbWFnZS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRy
Lmg+CiAKQEAgLTQwLDcgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTaGFw
ZVZhbHVlIDogcHVibGljIFJlZkNvdW50ZWQ8U2hhcGVWYWx1ZT4gewogcHVibGljOgotICAgIGVu
dW0gU2hhcGVWYWx1ZVR5cGUgeworICAgIGVudW0gY2xhc3MgVHlwZSB7CiAgICAgICAgIC8vIFRo
ZSBOb25lIHZhbHVlIGlzIGRlZmluZWQgYnkgYSBudWxsIFNoYXBlVmFsdWUqCiAgICAgICAgIFNo
YXBlLAogICAgICAgICBCb3gsCkBAIC02MiwyNCArNjEsMTcgQEAgcHVibGljOgogICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYobmV3IFNoYXBlVmFsdWUoaW1hZ2UpKTsKICAgICB9CiAKLSAgICBTaGFw
ZVZhbHVlVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CisgICAgVHlwZSB0eXBl
KCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAgICAgQmFzaWNTaGFwZSogc2hhcGUoKSBjb25z
dCB7IHJldHVybiBtX3NoYXBlLmdldCgpOyB9CiAgICAgQ1NTQm94VHlwZSBjc3NCb3goKSBjb25z
dCB7IHJldHVybiBtX2Nzc0JveDsgfQogCiAgICAgU3R5bGVJbWFnZSogaW1hZ2UoKSBjb25zdCB7
IHJldHVybiBtX2ltYWdlLmdldCgpOyB9CiAKLSAgICBib29sIGlzSW1hZ2VWYWxpZCgpIGNvbnN0
Ci0gICAgewotICAgICAgICBpZiAoIWltYWdlKCkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgIGlmIChpbWFnZSgpLT5pc0NhY2hlZEltYWdlKCkgfHwgaW1hZ2UoKS0+aXNDYWNo
ZWRJbWFnZVNldCgpKQotICAgICAgICAgICAgcmV0dXJuIGltYWdlKCktPmNhY2hlZEltYWdlKCkg
JiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKTsKLSAgICAgICAgcmV0dXJuIGlt
YWdlKCktPmlzR2VuZXJhdGVkSW1hZ2UoKTsKLSAgICB9CisgICAgYm9vbCBpc0ltYWdlVmFsaWQo
KSBjb25zdDsKIAogICAgIHZvaWQgc2V0SW1hZ2UoUGFzc1JlZlB0cjxTdHlsZUltYWdlPiBpbWFn
ZSkKICAgICB7Ci0gICAgICAgIEFTU0VSVCh0eXBlKCkgPT0gSW1hZ2UpOworICAgICAgICBBU1NF
UlQodHlwZSgpID09IFR5cGU6OkltYWdlKTsKICAgICAgICAgaWYgKG1faW1hZ2UgIT0gaW1hZ2Up
CiAgICAgICAgICAgICBtX2ltYWdlID0gaW1hZ2U7CiAgICAgfQpAQCAtODgsMjkgKzgwLDMwIEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBTaGFwZVZhbHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFw
ZT4gc2hhcGUsIENTU0JveFR5cGUgY3NzQm94KQotICAgICAgICA6IG1fdHlwZShTaGFwZSkKKyAg
ICAgICAgOiBtX3R5cGUoVHlwZTo6U2hhcGUpCiAgICAgICAgICwgbV9zaGFwZShzaGFwZSkKICAg
ICAgICAgLCBtX2Nzc0JveChjc3NCb3gpCiAgICAgewogICAgIH0KLSAgICBTaGFwZVZhbHVlKFNo
YXBlVmFsdWVUeXBlIHR5cGUpCisgICAgU2hhcGVWYWx1ZShUeXBlIHR5cGUpCiAgICAgICAgIDog
bV90eXBlKHR5cGUpCiAgICAgICAgICwgbV9jc3NCb3goQm94TWlzc2luZykKICAgICB7CiAgICAg
fQogICAgIFNoYXBlVmFsdWUoUGFzc1JlZlB0cjxTdHlsZUltYWdlPiBpbWFnZSkKLSAgICAgICAg
OiBtX3R5cGUoSW1hZ2UpCisgICAgICAgIDogbV90eXBlKFR5cGU6OkltYWdlKQogICAgICAgICAs
IG1faW1hZ2UoaW1hZ2UpCiAgICAgICAgICwgbV9jc3NCb3goQm94TWlzc2luZykKICAgICB7CiAg
ICAgfQorCiAgICAgU2hhcGVWYWx1ZShDU1NCb3hUeXBlIGNzc0JveCkKLSAgICAgICAgOiBtX3R5
cGUoQm94KQorICAgICAgICA6IG1fdHlwZShUeXBlOjpCb3gpCiAgICAgICAgICwgbV9jc3NCb3go
Y3NzQm94KQogICAgIHsKICAgICB9CiAKLSAgICBTaGFwZVZhbHVlVHlwZSBtX3R5cGU7CisgICAg
VHlwZSBtX3R5cGU7CiAgICAgUmVmUHRyPEJhc2ljU2hhcGU+IG1fc2hhcGU7CiAgICAgUmVmUHRy
PFN0eWxlSW1hZ2U+IG1faW1hZ2U7CiAgICAgQ1NTQm94VHlwZSBtX2Nzc0JveDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232964</attachid>
            <date>2014-06-12 11:21:00 -0700</date>
            <delta_ts>2014-06-12 11:50:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133809-20140612112035.patch</filename>
            <type>text/plain</type>
            <size>17594</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY5OTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzU3ZjA1ZTk0ZWYyZjg2
NTYyZjQ4NTZlNzIxODUwNmYzZjhjMDExOC4uMDk1ZjZiNTJkOTEwMmFiMWI4ZjRlODc5ODI5YTY5
YzQ3MzAwNmE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE0LTA2LTEyICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFNoYXBlVmFs
dWUuY3BwIGFuZCBtb3ZlIFNoYXBlVmFsdWU6OmlzSW1hZ2VWYWxpZCgpIHRoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM4MDkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGdldHMgcmlkIG9m
IENhY2hlZEltYWdlLmggKGFuZCBSZXNvdXJjZVJlcXVlc3QgYW5kIGZyaWVuZHMpIGZyb20gUmVu
ZGVyU3R5bGUuaC4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIFdlYkNv
cmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2o6CisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvai5maWx0ZXJzOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnNoYXBlUHJvcGVydHlWYWx1ZSk6CisgICAgICAgICogY3Nz
L0NTU0Nyb3NzZmFkZVZhbHVlLmNwcDoKKyAgICAgICAgKiBjc3MvQ1NTRmlsdGVySW1hZ2VWYWx1
ZS5jcHA6CisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuaDoKKyAgICAgICAgKiBwYWdlL2Fu
aW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpibGVu
ZEZ1bmMpOgorICAgICAgICAqIHJlbmRlcmluZy9TaGFwZVZhbHVlLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpTaGFwZVZhbHVlOjppc0ltYWdlVmFsaWQpOgorICAgICAgICAqIHJlbmRl
cmluZy9zaGFwZXMvU2hhcGVPdXRzaWRlSW5mby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpyZWZl
cmVuY2VCb3gpOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVPdXRzaWRlSW5mbzo6Y29tcHV0ZWRT
aGFwZSk6CisgICAgICAgIChXZWJDb3JlOjpTaGFwZU91dHNpZGVJbmZvOjppc0VuYWJsZWRGb3Ip
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6CisgICAgICAgIChXZWJD
b3JlOjpTaGFwZVZhbHVlOjp0eXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OnNl
dEltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OlNoYXBlVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6U2hhcGVWYWx1ZTo6aXNJbWFnZVZhbGlkKTogRGVsZXRlZC4KKwogMjAx
NC0wNi0xMiAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFN1YnBp
eGVsIHJlbmRlcmluZzogTWFrZSA8c2VsZWN0PiBlbGVtZW50J3MgZGVjb3JhdGlvbiBzdWJwaXhl
bCBhd2FyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZDQ5MjM0ZmQ2OGRjY2ZmMzI3NmIyY2Zl
MzE2Y2UyNzY5MWYwYTQwYi4uNTdlYjhkMmNkZjI1ODFhNzE5MTkzYmNiYmI5ZGYyMWFmODgyMjU3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTIzOTQsNiArMjM5NCw3IEBAIHNldChXZWJDb3Jl
X1NPVVJDRVMKICAgICByZW5kZXJpbmcvc3R5bGUvU1ZHUmVuZGVyU3R5bGUuY3BwCiAgICAgcmVu
ZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0eWxlRGVmcy5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUv
U2hhZG93RGF0YS5jcHAKKyAgICByZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5jcHAKICAgICBy
ZW5kZXJpbmcvc3R5bGUvU3R5bGVCYWNrZ3JvdW5kRGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5
bGUvU3R5bGVCb3hEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdl
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oK
aW5kZXggNWQ0NGM4OTczMDIyNWJkMTY1YWFmMmIyMjMxZjJhNDE5MjM0NmRiNi4uMjQ1MDk5MTRj
Y2I2ZDZiZDRlM2VmNTBiYzdkMjVlMjE3MjBjYjVkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBAIC0xMTU0Miw2ICsxMTU0Miw3IEBACiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAg
IDwvQ2xDb21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxl
XFNoYXBlVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlQWxsSW5PbmUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQmFja2dyb3VuZERhdGEuY3BwIj4KICAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggMTQw
NmE1NDIyODRjM2ZjYTk1N2RlNDkzOWEyZDk1YTc0NjlhMGE5Mi4uMjNlYjZmOGJhODNjZDdlODRj
NGNkNDI3YjAzNDRkZWQwYmIxZjQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMjc5MCw2ICsyNzkwLDkg
QEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTaGFkb3dEYXRh
LmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xD
b21waWxlPgorICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFNoYXBl
VmFsdWUuY3BwIj4KKyAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CisgICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVc
U3R5bGVBbGxJbk9uZS5jcHAiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyNDE1MGQ4NGE1ZGNmZTc3ZWI0NWRhMGQzMGVhYTli
NjEzNDJmYTIwLi4wOTBkMDJhN2UxMmQ3MzA1MjQ0MDg2MmYzZWQxNThhNGIxMDZmZGEyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC03OTEsNiArNzkxLDcgQEAKIAkJMUFCMUFFN0EwQzA1MUZERTAwMTM5RjRGIC8qIHpvb21JbkN1
cnNvci5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBQjFBRTc4MEMwNTFGREUwMDEzOUY0RiAvKiB6b29tSW5DdXJzb3IucG5nICovOyB9OwogCQkx
QUIxQUU3QjBDMDUxRkRFMDAxMzlGNEYgLyogem9vbU91dEN1cnNvci5wbmcgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjFBRTc5MEMwNTFGREUwMDEz
OUY0RiAvKiB6b29tT3V0Q3Vyc29yLnBuZyAqLzsgfTsKIAkJMUFCMzNEQTUxMjU1MUUzMjAwMjQ0
NTdBIC8qIElPS2l0LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFBQjMzREE0MTI1NTFFMzIwMDI0NDU3QSAvKiBJT0tpdC5mcmFtZXdv
cmsgKi87IH07CisJCTFBQjVFQkQwMTk0QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjVFQkNGMTk0
QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCAqLzsgfTsKIAkJMUFCN0ZDNjgwQThCOTJF
QzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjdGQzQ3MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2
YWx1YXRvci5jcHAgKi87IH07CiAJCTFBQjdGQzY5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2
YWx1YXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUFCN0ZDNDgwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmggKi87IH07CiAJCTFB
QjdGQzZCMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCN0ZDNEEwQThCOTJFQzAwRDlE
MzdCIC8qIFhQYXRoRXhwcmVzc2lvbi5jcHAgKi87IH07CkBAIC03NzE3LDYgKzc3MTgsNyBAQAog
CQkxQUIxQUU3ODBDMDUxRkRFMDAxMzlGNEYgLyogem9vbUluQ3Vyc29yLnBuZyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9
IHpvb21JbkN1cnNvci5wbmc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjFBRTc5
MEMwNTFGREUwMDEzOUY0RiAvKiB6b29tT3V0Q3Vyc29yLnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9IHpvb21PdXRD
dXJzb3IucG5nOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUIzM0RBNDEyNTUxRTMy
MDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBJT0tpdC5mcmFt
ZXdvcms7IHBhdGggPSAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JT0tpdC5mcmFtZXdvcms7
IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CisJCTFBQjVFQkNGMTk0QTFEMTcwMDU5QUM3
MCAvKiBTaGFwZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFNoYXBlVmFsdWUuY3BwOyBwYXRoID0gc3R5bGUvU2hhcGVWYWx1ZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQjdGQzQ3MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2YWx1
YXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhFdmFs
dWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI3RkM0ODBBOEI5MkVD
MDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFhQYXRoRXZhbHVhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFB
QjdGQzQ5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV2YWx1YXRvci5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFhQYXRoRXZhbHVhdG9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTIwODY4LDYgKzIwODcwLDcgQEAKIAkJCQlCQzVFQjY2NzBFODFDQjcxMDBCMjU5NjUg
LyogUmVuZGVyU3R5bGVDb25zdGFudHMuaCAqLywKIAkJCQlCQzVFQjhDMTBFODIwMzFCMDBCMjU5
NjUgLyogU2hhZG93RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4QzIwRTgyMDMxQjAwQjI1OTY1IC8q
IFNoYWRvd0RhdGEuaCAqLywKKwkJCQkxQUI1RUJDRjE5NEExRDE3MDA1OUFDNzAgLyogU2hhcGVW
YWx1ZS5jcHAgKi8sCiAJCQkJRkQxQUYxNEUxNjU2RjEyMTAwQzZENEY3IC8qIFNoYXBlVmFsdWUu
aCAqLywKIAkJCQlCQzVFQjZBMDBFODFEQzRGMDBCMjU5NjUgLyogU3R5bGVCYWNrZ3JvdW5kRGF0
YS5jcHAgKi8sCiAJCQkJQkM1RUI2QTEwRTgxREM0RjAwQjI1OTY1IC8qIFN0eWxlQmFja2dyb3Vu
ZERhdGEuaCAqLywKQEAgLTI5NzAyLDYgKzI5NzA1LDcgQEAKIAkJCQlCMTBCNjk4MTE0MEMxNzQw
MDBCQzFDMjYgLyogV2ViVlRUVG9rZW5pemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEODIw
MzExMTM5NUFDRTcwMEY5NTZDNiAvKiBXZWJXaW5kb3dBbmltYXRpb24ubW0gaW4gU291cmNlcyAq
LywKIAkJCQlGNTVCM0RERjEyNTFGMTJEMDAzRUYyNjkgLyogV2Vla0lucHV0VHlwZS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQkxQUI1RUJEMDE5NEExRDE3MDA1OUFDNzAgLyogU2hhcGVWYWx1ZS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBGOTkyRTAgLyogV2hlZWxF
dmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5M0VDNDRBMTE4OEY0QkI4MDA2NjFERjEgLyog
V2hlZWxFdmVudERlbHRhVHJhY2tlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzgwRjQ3MzA5
QTExQUI0MDAxRkRCMzQgLyogV2lkZ2V0LmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCA5ODc5
ZWM5NWI5OWE2MDg1NDVkMTA4MTE5N2Q1ODNhMDk3YWE5ZTljLi5kYmI4ZGI2YjBiNDU5YjZiZDVm
NGJhMDg1ZTU5NGFkYmI0MGM1NGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcApAQCAtMTYyMiwxMyArMTYyMiwxMyBAQCBzdGF0
aWMgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gc2hhcGVQcm9wZXJ0eVZhbHVlKGNvbnN0IFJlbmRlclN0
eWxlKiBzdHlsZSwgY29uc3QgUwogICAgIGlmICghc2hhcGVWYWx1ZSkKICAgICAgICAgcmV0dXJu
IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwogCi0g
ICAgaWYgKHNoYXBlVmFsdWUtPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpCb3gpCisgICAgaWYgKHNo
YXBlVmFsdWUtPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpUeXBlOjpCb3gpCiAgICAgICAgIHJldHVy
biBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzaGFwZVZhbHVlLT5jc3NCb3goKSk7CiAKLSAg
ICBpZiAoc2hhcGVWYWx1ZS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OkltYWdlKQorICAgIGlmIChz
aGFwZVZhbHVlLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6VHlwZTo6SW1hZ2UpCiAgICAgICAgIHJl
dHVybiBzaGFwZVZhbHVlLT5pbWFnZSgpID8gc2hhcGVWYWx1ZS0+aW1hZ2UoKS0+Y3NzVmFsdWUo
KSA6IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwog
Ci0gICAgQVNTRVJUKHNoYXBlVmFsdWUtPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpTaGFwZSk7Cisg
ICAgQVNTRVJUKHNoYXBlVmFsdWUtPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpUeXBlOjpTaGFwZSk7
CiAKICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVT
cGFjZVNlcGFyYXRlZCgpOwogICAgIGxpc3QtPmFwcGVuZCh2YWx1ZUZvckJhc2ljU2hhcGUoc3R5
bGUsIHNoYXBlVmFsdWUtPnNoYXBlKCkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRl
VmFsdWUuY3BwCmluZGV4IGE3MzAwNTI2N2IwNDRkNzY3MmM5ZDYwNjNhYmRhMTNjZmIyNDJiZDgu
LjY5MmY0MzM5MDM4ODFhOTViNjUyNTk5YWRkNzAxMTM1ZWZlZjRjYjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNwcApAQCAtMjksNiArMjksNyBAQAogCiAjaW5jbHVk
ZSAiQW5pbWF0aW9uVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiQ1NTSW1hZ2VWYWx1ZS5oIgorI2lu
Y2x1ZGUgIkNhY2hlZEltYWdlLmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCIK
ICNpbmNsdWRlICJDcm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZS5oIgogI2luY2x1ZGUgIkltYWdlQnVm
ZmVyLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKaW5kZXgg
MWFjMmZhNGYwZWE5NGM2Mjc2MGFjYjk4NjgzYjE2ZDA5NTIwZTYzYS4uZDk4MGU2MmNlNDY0NDA0
MDcyODFhYmNjMTM5YjA5ZTdiNDU2MTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0
ZXJJbWFnZVZhbHVlLmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKIAogI2luY2x1ZGUgIkNTU0ltYWdlVmFsdWUuaCIKKyNpbmNsdWRlICJDYWNoZWRJbWFnZS5o
IgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgiCiAjaW5jbHVkZSAiQ3Jvc3NmYWRl
R2VuZXJhdGVkSW1hZ2UuaCIKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3RSZW5kZXJlci5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggZTU3OWUzNTUxOWNmMGJhY2M2ZmIwYTIxN2Zl
NzgzYWEzNGNlNmU0OS4uNzIzZDBkMjI0NTZhMzNhZDE2Yzg5ZWIwM2IzOTNiYTIzMjE0NzA2NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBAIC05MCw2ICs5MCw3IEBAIGNsYXNzIFN0
eWxlU2hlZXRMaXN0OwogY2xhc3MgU3R5bGVkRWxlbWVudDsKIGNsYXNzIFZpZXdwb3J0U3R5bGVS
ZXNvbHZlcjsKIGNsYXNzIFdlYktpdENTU0ZpbHRlclZhbHVlOworc3RydWN0IFJlc291cmNlTG9h
ZGVyT3B0aW9uczsKIAogY2xhc3MgTWVkaWFRdWVyeVJlc3VsdCB7CiAgICAgV1RGX01BS0VfTk9O
Q09QWUFCTEUoTWVkaWFRdWVyeVJlc3VsdCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRp
b24uY3BwCmluZGV4IDhkMTlhNWNkYzM2NzcxYTY1ZmFlNmI1ZDNmYjEzY2I4Nzk2ZTFkNjMuLmYz
Njg1ZTFjZTY1NWNhOTMzMDY2OWJmYjI3YWVhMDhiNGZjODU0NmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAg
LTE0NSw3ICsxNDUsNyBAQCBzdGF0aWMgaW5saW5lIFBhc3NSZWZQdHI8U2hhcGVWYWx1ZT4gYmxl
bmRGdW5jKGNvbnN0IEFuaW1hdGlvbkJhc2UqLCBTaGFwZVZhbHVlKgogICAgIGlmICghZnJvbSB8
fCAhdG8pCiAgICAgICAgIHJldHVybiB0bzsKIAotICAgIGlmIChmcm9tLT50eXBlKCkgIT0gU2hh
cGVWYWx1ZTo6U2hhcGUgfHwgdG8tPnR5cGUoKSAhPSBTaGFwZVZhbHVlOjpTaGFwZSkKKyAgICBp
ZiAoZnJvbS0+dHlwZSgpICE9IFNoYXBlVmFsdWU6OlR5cGU6OlNoYXBlIHx8IHRvLT50eXBlKCkg
IT0gU2hhcGVWYWx1ZTo6VHlwZTo6U2hhcGUpCiAgICAgICAgIHJldHVybiB0bzsKIAogICAgIGlm
IChmcm9tLT5jc3NCb3goKSAhPSB0by0+Y3NzQm94KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAppbmRleCAwYTM2NDIyN2I0
ODQ1NzI2ZmI5MDlkZDJkZTRkOWQ1YTM0ODU0NzkxLi42YzAxNmJiYzIyYjJjOTEwYzAxNDU4YjVi
NDQyN2I1NzJlZTMyMjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hh
cGVzL1NoYXBlT3V0c2lkZUluZm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
aGFwZXMvU2hhcGVPdXRzaWRlSW5mby5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgRmxvYXRTaXplIFNo
YXBlT3V0c2lkZUluZm86OnNoYXBlVG9SZW5kZXJlclNpemUoY29uc3QgRmxvYXRTaXplJiBzaXpl
KSBjb25zdAogc3RhdGljIGlubGluZSBDU1NCb3hUeXBlIHJlZmVyZW5jZUJveChjb25zdCBTaGFw
ZVZhbHVlJiBzaGFwZVZhbHVlKQogewogICAgIGlmIChzaGFwZVZhbHVlLmNzc0JveCgpID09IEJv
eE1pc3NpbmcpIHsKLSAgICAgICAgaWYgKHNoYXBlVmFsdWUudHlwZSgpID09IFNoYXBlVmFsdWU6
OkltYWdlKQorICAgICAgICBpZiAoc2hhcGVWYWx1ZS50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6VHlw
ZTo6SW1hZ2UpCiAgICAgICAgICAgICByZXR1cm4gQ29udGVudEJveDsKICAgICAgICAgcmV0dXJu
IE1hcmdpbkJveDsKICAgICB9CkBAIC0xNzUsMTUgKzE3NSwxNSBAQCBjb25zdCBTaGFwZSYgU2hh
cGVPdXRzaWRlSW5mbzo6Y29tcHV0ZWRTaGFwZSgpIGNvbnN0CiAgICAgY29uc3QgU2hhcGVWYWx1
ZSYgc2hhcGVWYWx1ZSA9ICpzdHlsZS5zaGFwZU91dHNpZGUoKTsKIAogICAgIHN3aXRjaCAoc2hh
cGVWYWx1ZS50eXBlKCkpIHsKLSAgICBjYXNlIFNoYXBlVmFsdWU6OlNoYXBlOgorICAgIGNhc2Ug
U2hhcGVWYWx1ZTo6VHlwZTo6U2hhcGU6CiAgICAgICAgIEFTU0VSVChzaGFwZVZhbHVlLnNoYXBl
KCkpOwogICAgICAgICBtX3NoYXBlID0gU2hhcGU6OmNyZWF0ZVNoYXBlKHNoYXBlVmFsdWUuc2hh
cGUoKSwgbV9yZWZlcmVuY2VCb3hMb2dpY2FsU2l6ZSwgd3JpdGluZ01vZGUsIG1hcmdpbik7CiAg
ICAgICAgIGJyZWFrOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6CisgICAgY2FzZSBTaGFw
ZVZhbHVlOjpUeXBlOjpJbWFnZToKICAgICAgICAgQVNTRVJUKHNoYXBlVmFsdWUuaXNJbWFnZVZh
bGlkKCkpOwogICAgICAgICBtX3NoYXBlID0gY3JlYXRlU2hhcGVGb3JJbWFnZShzaGFwZVZhbHVl
LmltYWdlKCksIHNoYXBlSW1hZ2VUaHJlc2hvbGQsIHdyaXRpbmdNb2RlLCBtYXJnaW4pOwogICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFNoYXBlVmFsdWU6OkJveDogeworICAgIGNhc2UgU2hhcGVW
YWx1ZTo6VHlwZTo6Qm94OiB7CiAgICAgICAgIFJvdW5kZWRSZWN0IHNoYXBlUmVjdCA9IGNvbXB1
dGVSb3VuZGVkUmVjdEZvckJveFNoYXBlKHJlZmVyZW5jZUJveChzaGFwZVZhbHVlKSwgbV9yZW5k
ZXJlcik7CiAgICAgICAgIGlmICghY29udGFpbmluZ0Jsb2NrU3R5bGUuaXNIb3Jpem9udGFsV3Jp
dGluZ01vZGUoKSkKICAgICAgICAgICAgIHNoYXBlUmVjdCA9IHNoYXBlUmVjdC50cmFuc3Bvc2Vk
UmVjdCgpOwpAQCAtMjk0LDkgKzI5NCw5IEBAIGJvb2wgU2hhcGVPdXRzaWRlSW5mbzo6aXNFbmFi
bGVkRm9yKGNvbnN0IFJlbmRlckJveCYgYm94KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAg
ICBzd2l0Y2ggKHNoYXBlVmFsdWUtPnR5cGUoKSkgewotICAgIGNhc2UgU2hhcGVWYWx1ZTo6U2hh
cGU6IHJldHVybiBzaGFwZVZhbHVlLT5zaGFwZSgpOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1h
Z2U6IHJldHVybiBzaGFwZVZhbHVlLT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VP
cmlnaW4oYm94LmRvY3VtZW50KCksICooc2hhcGVWYWx1ZS0+aW1hZ2UoKSkpOwotICAgIGNhc2Ug
U2hhcGVWYWx1ZTo6Qm94OiByZXR1cm4gdHJ1ZTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6OlR5cGU6
OlNoYXBlOiByZXR1cm4gc2hhcGVWYWx1ZS0+c2hhcGUoKTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6
OlR5cGU6OkltYWdlOiByZXR1cm4gc2hhcGVWYWx1ZS0+aXNJbWFnZVZhbGlkKCkgJiYgY2hlY2tT
aGFwZUltYWdlT3JpZ2luKGJveC5kb2N1bWVudCgpLCAqKHNoYXBlVmFsdWUtPmltYWdlKCkpKTsK
KyAgICBjYXNlIFNoYXBlVmFsdWU6OlR5cGU6OkJveDogcmV0dXJuIHRydWU7CiAgICAgfQogCiAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU2hhcGVWYWx1ZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDYxOTlkNGVlNjI5YTQ2OTA1ODcyNWZmNGUw
OTcyYjIxMGI1NGI5NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TaGFwZVZhbHVlLmNwcApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNoYXBlVmFsdWUuaCIKKworI2luY2x1ZGUgIkNh
Y2hlZEltYWdlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworYm9vbCBTaGFwZVZhbHVlOjpp
c0ltYWdlVmFsaWQoKSBjb25zdAoreworICAgIGlmICghaW1hZ2UoKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIGlmIChpbWFnZSgpLT5pc0NhY2hlZEltYWdlKCkgfHwgaW1hZ2UoKS0+aXND
YWNoZWRJbWFnZVNldCgpKQorICAgICAgICByZXR1cm4gaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAm
JiBpbWFnZSgpLT5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpOworICAgIHJldHVybiBpbWFnZSgp
LT5pc0dlbmVyYXRlZEltYWdlKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCmluZGV4IGVjODNkMGM3NTM3
YzVmYjg3OWI0MzA5ZmQ0ZjVhMDM5NDJmNGViZDEuLjdmYTk2MjlhOGI5MjcyMTNmZDU0NjVjOWQw
MWFkYWNkZDYwMWUwMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TaGFwZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBl
VmFsdWUuaApAQCAtMzIsNyArMzIsNiBAQAogCiAjaW5jbHVkZSAiQmFzaWNTaGFwZXMuaCIKICNp
bmNsdWRlICJDU1NWYWx1ZUtleXdvcmRzLmgiCi0jaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNp
bmNsdWRlICJTdHlsZUltYWdlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIApAQCAt
NDAsNyArMzksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNoYXBlVmFsdWUgOiBw
dWJsaWMgUmVmQ291bnRlZDxTaGFwZVZhbHVlPiB7CiBwdWJsaWM6Ci0gICAgZW51bSBTaGFwZVZh
bHVlVHlwZSB7CisgICAgZW51bSBjbGFzcyBUeXBlIHsKICAgICAgICAgLy8gVGhlIE5vbmUgdmFs
dWUgaXMgZGVmaW5lZCBieSBhIG51bGwgU2hhcGVWYWx1ZSoKICAgICAgICAgU2hhcGUsCiAgICAg
ICAgIEJveCwKQEAgLTYyLDI0ICs2MSwxNyBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgU2hhcGVWYWx1ZShpbWFnZSkpOwogICAgIH0KIAotICAgIFNoYXBlVmFsdWVUeXBl
IHR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0KKyAgICBUeXBlIHR5cGUoKSBjb25zdCB7
IHJldHVybiBtX3R5cGU7IH0KICAgICBCYXNpY1NoYXBlKiBzaGFwZSgpIGNvbnN0IHsgcmV0dXJu
IG1fc2hhcGUuZ2V0KCk7IH0KICAgICBDU1NCb3hUeXBlIGNzc0JveCgpIGNvbnN0IHsgcmV0dXJu
IG1fY3NzQm94OyB9CiAKICAgICBTdHlsZUltYWdlKiBpbWFnZSgpIGNvbnN0IHsgcmV0dXJuIG1f
aW1hZ2UuZ2V0KCk7IH0KIAotICAgIGJvb2wgaXNJbWFnZVZhbGlkKCkgY29uc3QKLSAgICB7Ci0g
ICAgICAgIGlmICghaW1hZ2UoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
aWYgKGltYWdlKCktPmlzQ2FjaGVkSW1hZ2UoKSB8fCBpbWFnZSgpLT5pc0NhY2hlZEltYWdlU2V0
KCkpCi0gICAgICAgICAgICByZXR1cm4gaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBpbWFnZSgp
LT5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpOwotICAgICAgICByZXR1cm4gaW1hZ2UoKS0+aXNH
ZW5lcmF0ZWRJbWFnZSgpOwotICAgIH0KKyAgICBib29sIGlzSW1hZ2VWYWxpZCgpIGNvbnN0Owog
CiAgICAgdm9pZCBzZXRJbWFnZShQYXNzUmVmUHRyPFN0eWxlSW1hZ2U+IGltYWdlKQogICAgIHsK
LSAgICAgICAgQVNTRVJUKHR5cGUoKSA9PSBJbWFnZSk7CisgICAgICAgIEFTU0VSVCh0eXBlKCkg
PT0gVHlwZTo6SW1hZ2UpOwogICAgICAgICBpZiAobV9pbWFnZSAhPSBpbWFnZSkKICAgICAgICAg
ICAgIG1faW1hZ2UgPSBpbWFnZTsKICAgICB9CkBAIC04OCwyOSArODAsMzAgQEAgcHVibGljOgog
CiBwcml2YXRlOgogICAgIFNoYXBlVmFsdWUoUGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZSwg
Q1NTQm94VHlwZSBjc3NCb3gpCi0gICAgICAgIDogbV90eXBlKFNoYXBlKQorICAgICAgICA6IG1f
dHlwZShUeXBlOjpTaGFwZSkKICAgICAgICAgLCBtX3NoYXBlKHNoYXBlKQogICAgICAgICAsIG1f
Y3NzQm94KGNzc0JveCkKICAgICB7CiAgICAgfQotICAgIFNoYXBlVmFsdWUoU2hhcGVWYWx1ZVR5
cGUgdHlwZSkKKyAgICBTaGFwZVZhbHVlKFR5cGUgdHlwZSkKICAgICAgICAgOiBtX3R5cGUodHlw
ZSkKICAgICAgICAgLCBtX2Nzc0JveChCb3hNaXNzaW5nKQogICAgIHsKICAgICB9CiAgICAgU2hh
cGVWYWx1ZShQYXNzUmVmUHRyPFN0eWxlSW1hZ2U+IGltYWdlKQotICAgICAgICA6IG1fdHlwZShJ
bWFnZSkKKyAgICAgICAgOiBtX3R5cGUoVHlwZTo6SW1hZ2UpCiAgICAgICAgICwgbV9pbWFnZShp
bWFnZSkKICAgICAgICAgLCBtX2Nzc0JveChCb3hNaXNzaW5nKQogICAgIHsKICAgICB9CisKICAg
ICBTaGFwZVZhbHVlKENTU0JveFR5cGUgY3NzQm94KQotICAgICAgICA6IG1fdHlwZShCb3gpCisg
ICAgICAgIDogbV90eXBlKFR5cGU6OkJveCkKICAgICAgICAgLCBtX2Nzc0JveChjc3NCb3gpCiAg
ICAgewogICAgIH0KIAotICAgIFNoYXBlVmFsdWVUeXBlIG1fdHlwZTsKKyAgICBUeXBlIG1fdHlw
ZTsKICAgICBSZWZQdHI8QmFzaWNTaGFwZT4gbV9zaGFwZTsKICAgICBSZWZQdHI8U3R5bGVJbWFn
ZT4gbV9pbWFnZTsKICAgICBDU1NCb3hUeXBlIG1fY3NzQm94Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>