<?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>107069</bug_id>
          
          <creation_ts>2013-01-16 17:30:50 -0800</creation_ts>
          <short_desc>Introduce a CompactHTMLToken for the threaded HTML parser</short_desc>
          <delta_ts>2013-01-16 18:19:51 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>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>
          
          <blocked>106127</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Gentilcore">tonyg</reporter>
          <assigned_to name="Tony Gentilcore">tonyg</assigned_to>
          <cc>abarth</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>808882</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2013-01-16 17:30:50 -0800</bug_when>
    <thetext>Introduce a CompactHTMLToken for the threaded HTML parser</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808885</commentid>
    <comment_count>1</comment_count>
      <attachid>183070</attachid>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2013-01-16 17:33:47 -0800</bug_when>
    <thetext>Created attachment 183070
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808891</commentid>
    <comment_count>2</comment_count>
      <attachid>183070</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-16 17:39:50 -0800</bug_when>
    <thetext>Comment on attachment 183070
Patch

Looks great.  There was some discussion about the naming, but we&apos;ll probably want to have a renaming party once we&apos;re done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808934</commentid>
    <comment_count>3</comment_count>
      <attachid>183070</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-16 18:19:46 -0800</bug_when>
    <thetext>Comment on attachment 183070
Patch

Clearing flags on attachment: 183070

Committed r139945: &lt;http://trac.webkit.org/changeset/139945&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808935</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-16 18:19:51 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183070</attachid>
            <date>2013-01-16 17:33:47 -0800</date>
            <delta_ts>2013-01-16 18:19:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107069-20130116173048.patch</filename>
            <type>text/plain</type>
            <size>16700</size>
            <attacher name="Tony Gentilcore">tonyg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5OTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2U4ZDI0MmYyOTcxNGUy
MjUwMDZjMmM4MGFjMjdjZTcwMmJjYjQzMS4uZmQ1YmNhZjc2ODEyZmE2OGE3NWNlZDVhMmJkMzIw
NWM5OGUxOGRiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEzLTAxLTE2ICBUb255
IEdlbnRpbGNvcmUgIDx0b255Z0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW50cm9kdWNlIGEg
Q29tcGFjdEhUTUxUb2tlbiBmb3IgdGhlIHRocmVhZGVkIEhUTUwgcGFyc2VyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDcwNjkKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNsYXNzIGlzIHVzZWQg
Zm9yIHRyYW5zcG9ydGluZyB0b2tlbnMgZnJvbSB0aGUgcGFyc2VyIHRocmVhZCB0byB0aGUgbWFp
biB0aHJlYWQgd2hlcmUgdGhleSBhcmUgZmVkIHRvIHRoZSB0cmVlIGJ1aWxkZXIuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgY292ZXJlZCBieSBleGlzdGluZyBmYXN0L3BhcnNlciB0
ZXN0cy4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxl
Lmxpc3QuYW06CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6
CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0Nv
bXBhY3RIVE1MVG9rZW4uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6Q29tcGFjdEhUTUxUb2tlbjo6Q29tcGFjdEhUTUxUb2tlbik6CisgICAgICAgIChX
ZWJDb3JlOjppc1N0cmluZ1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q29tcGFjdEhUTUxUb2tlbjo6aXNTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKToKKyAg
ICAgICAgKiBodG1sL3BhcnNlci9Db21wYWN0SFRNTFRva2VuLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZSk6CisgICAgICAgIChDb21wYWN0QXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkNvbXBhY3RBdHRyaWJ1dGU6OkNvbXBhY3RBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q29tcGFjdEF0dHJpYnV0ZTo6bmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpDb21wYWN0QXR0cmli
dXRlOjp2YWx1ZSk6CisgICAgICAgIChDb21wYWN0SFRNTFRva2VuKToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbXBhY3RIVE1MVG9rZW46OnR5cGUpOgorICAgICAgICAoV2ViQ29yZTo6Q29tcGFjdEhU
TUxUb2tlbjo6ZGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDb21wYWN0SFRNTFRva2VuOjpzZWxm
Q2xvc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpDb21wYWN0SFRNTFRva2VuOjphdHRyaWJ1dGVz
KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXBhY3RIVE1MVG9rZW46OnB1YmxpY0lkZW50aWZpZXIp
OgorICAgICAgICAoV2ViQ29yZTo6Q29tcGFjdEhUTUxUb2tlbjo6c3lzdGVtSWRlbnRpZmllcik6
CisgICAgICAgICogeG1sL3BhcnNlci9NYXJrdXBUb2tlbkJhc2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6Ok1hcmt1cFRva2VuQmFzZTo6ZGF0YSk6CisgICAgICAgIChNYXJrdXBUb2tlbkJhc2UpOgor
CiAyMDEzLTAxLTE2ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBTeW5jaHJvbm91cyBYTUxIVFRQUmVxdWVzdHMgbmVlZCB0byBnbyB0byB0aGUgTmV0d29ya1By
b2Nlc3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDJlZTUxYzlhZGIwMDU4NGJkMDcwNzJhY2Ix
YzgwMDIyNjdlNWMyOTMuLjBjZThjZmE0MGJmOGYwZmJjYTQ1MzVkMjk2OGIxYzRkNDg5MzA3ZjAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xNTI3LDYgKzE1MjcsNyBAQCBzZXQoV2ViQ29yZV9T
T1VSQ0VTCiAgICAgaHRtbC9jYW52YXMvV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5jcHAKIAog
ICAgIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmNwcAorICAgIGh0bWwvcGFyc2VyL0Nv
bXBhY3RIVE1MVG9rZW4uY3BwCiAgICAgaHRtbC9wYXJzZXIvSFRNTENvbnN0cnVjdGlvblNpdGUu
Y3BwCiAgICAgaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcAogICAgIGh0bWwvcGFy
c2VyL0hUTUxFbGVtZW50U3RhY2suY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVt
YWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRl
eCBiNzdmMDA5MDI2OGRiNWZmYWI2Yjk5MmZhMzM1NzMwNjFiMzliOTdhLi41YzdkOWFmNDNjZWNi
YjBjZGViZTIzNzRlODQ3ZTcwZTZhZjY0YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3Qu
YW0KQEAgLTM1MzIsNiArMzUzMiw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dl
YkNvcmUvaHRtbC9OdW1iZXJJbnB1dFR5cGUuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9wYXJz
ZXIvQ1NTUHJlbG9hZFNjYW5uZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9D
U1NQcmVsb2FkU2Nhbm5lci5oIFwKKwlTb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9Db21wYWN0
SFRNTFRva2VuLmNwcCBcCisJU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ29tcGFjdEhUTUxU
b2tlbi5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MQ29uc3RydWN0aW9uU2l0
ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxDb25zdHJ1Y3Rpb25TaXRl
LmggXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAg
XApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJDb3Jl
L1RhcmdldC5wcmkKaW5kZXggNDU1N2M0ZTk1MmFlZGY4MWRiMzc4NjE5ZTFmOGVjMzhmNjQ4MmQz
YS4uMDJlNjdmMDIxZmM3NTg5MzE0NWFhNGY4NWU3ZTcyMjViZDAxMTI5MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJp
CkBAIC03MDgsNiArNzA4LDcgQEAgU09VUkNFUyArPSBcCiAgICAgaHRtbC9jYW52YXMvQ2FudmFz
U3R5bGUuY3BwIFwKICAgICBodG1sL2NhbnZhcy9EYXRhVmlldy5jcHAgXAogICAgIGh0bWwvcGFy
c2VyL0NTU1ByZWxvYWRTY2FubmVyLmNwcCBcCisgICAgaHRtbC9wYXJzZXIvQ29tcGFjdEhUTUxU
b2tlbi5jcHAgXAogICAgIGh0bWwvcGFyc2VyL0hUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcCBcCiAg
ICAgaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcCBcCiAgICAgaHRtbC9wYXJzZXIv
SFRNTEVsZW1lbnRTdGFjay5jcHAgXApAQCAtMTg4MSw2ICsxODgyLDcgQEAgSEVBREVSUyArPSBc
CiAgICAgaHRtbC9UeXBlQWhlYWQuaCBcCiAgICAgaHRtbC9WYWxpZGl0eVN0YXRlLmggXAogICAg
IGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmggXAorICAgIGh0bWwvcGFyc2VyL0NvbXBh
Y3RIVE1MVG9rZW4uaCBcCiAgICAgaHRtbC9wYXJzZXIvSFRNTENvbnN0cnVjdGlvblNpdGUuaCBc
CiAgICAgaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmggXAogICAgIGh0bWwvcGFyc2Vy
L0hUTUxFbGVtZW50U3RhY2suaCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggYTFjM2Y5OTc1Mjg4ZTJk
Mjc4MTlkNDM5ZmMzYmY5MGVmODkyMzM0YS4uNjdlZTVlMmViM2VjOGQ3YTg5YTk3NDBiNzg4NDYx
YWYwMjBjMmEyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMzMzNSw2ICszMzM1LDggQEAKICAgICAg
ICAgICAgICdodG1sL2NhbnZhcy9XZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmgnLAogICAgICAg
ICAgICAgJ2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmNwcCcsCiAgICAgICAgICAgICAn
aHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5uZXIuaCcsCisgICAgICAgICAgICAnaHRtbC9wYXJz
ZXIvQ29tcGFjdEhUTUxUb2tlbi5jcHAnLAorICAgICAgICAgICAgJ2h0bWwvcGFyc2VyL0NvbXBh
Y3RIVE1MVG9rZW4uaCcsCiAgICAgICAgICAgICAnaHRtbC9wYXJzZXIvSFRNTENvbnN0cnVjdGlv
blNpdGUuY3BwJywKICAgICAgICAgICAgICdodG1sL3BhcnNlci9IVE1MQ29uc3RydWN0aW9uU2l0
ZS5oJywKICAgICAgICAgICAgICdodG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwJywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggZjc5
OTRjY2MxMmU2NmQ1MDRmNDI5MDhmMGY1Y2FlNmQ5NmMwYzA2Ny4uNjMyNWMyYWZmYTcyOTk2Mzll
NzgxNDI5ZWVkNjQ2YTAzYjc5OWZmNCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKQEAgLTY0NTQ1LDYgKzY0NTQ1LDE0IEBACiAJCQkJCT4KIAkJCQk8
L0ZpbGU+CiAJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXHBhcnNlclxDb21w
YWN0SFRNTFRva2VuLmNwcCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8RmlsZQorCQkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGh0bWxccGFyc2VyXENvbXBhY3RIVE1MVG9rZW4uaCIKKwkJCQkJPgor
CQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxccGFyc2Vy
XEhUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBjNmFi
YTQzMTkyMWIzYjA3ZGU3OTIzNGNhNjlmNmI2OThjNGZiYWMxLi4zZjRkZjFiMzViMmI3YTdkMGVm
YzczYTg2YTc1OGMxZjY3MDhiOWNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNjIyLDYgKzM2MjIsOCBAQAogCQk5NzdCMzcy
NjEyMjg3MjE3MDBCODFGRjggLyogSFRNTFRyZWVCdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzcyMjEyMjg3MjE3MDBCODFGRjggLyog
SFRNTFRyZWVCdWlsZGVyLmggKi87IH07CiAJCTk3N0IzODYyMTIyODgzRTkwMEI4MUZGOCAvKiBD
U1NQcmVsb2FkU2Nhbm5lci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5NzdCMzg0OTEyMjg4M0U5MDBCODFGRjggLyogQ1NTUHJlbG9hZFNjYW5uZXIu
Y3BwICovOyB9OwogCQk5NzdCMzg2MzEyMjg4M0U5MDBCODFGRjggLyogQ1NTUHJlbG9hZFNjYW5u
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3N0Iz
ODRBMTIyODgzRTkwMEI4MUZGOCAvKiBDU1NQcmVsb2FkU2Nhbm5lci5oICovOyB9OworCQk5NzdC
Mzg2MjEyMjg4M0U5MDBCODFGRjkgLyogQ29tcGFjdEhUTUxUb2tlbi5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg0OTEyMjg4M0U5MDBCODFG
RjkgLyogQ29tcGFjdEhUTUxUb2tlbi5jcHAgKi87IH07CisJCTk3N0IzODYzMTIyODgzRTkwMEI4
MUZGOSAvKiBDb21wYWN0SFRNTFRva2VuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg0QTEyMjg4M0U5MDBCODFGRjkgLyogQ29tcGFjdEhUTUxU
b2tlbi5oICovOyB9OwogCQk5NzdCMzg2NDEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVj
dGlvblNpdGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTc3QjM4NEIxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcCAq
LzsgfTsKIAkJOTc3QjM4NjUxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxDb25zdHJ1Y3Rpb25TaXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg0
QzEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVjdGlvblNpdGUuaCAqLzsgfTsKIAkJOTc3
QjM4NjYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxEb2N1bWVudFBhcnNlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg0RDEyMjg4M0U5MDBC
ODFGRjggLyogSFRNTERvY3VtZW50UGFyc2VyLmNwcCAqLzsgfTsKQEAgLTEwOTk2LDYgKzEwOTk4
LDggQEAKIAkJOTc3QjM3MjIxMjI4NzIxNzAwQjgxRkY4IC8qIEhUTUxUcmVlQnVpbGRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBIVE1MVHJlZUJ1aWxkZXIuaDsgcGF0aCA9
IHBhcnNlci9IVE1MVHJlZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTc3QjM4NDkxMjI4ODNFOTAwQjgxRkY4IC8qIENTU1ByZWxvYWRTY2FubmVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENTU1ByZWxvYWRTY2FubmVyLmNwcDsgcGF0
aCA9IHBhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTk3N0IzODRBMTIyODgzRTkwMEI4MUZGOCAvKiBDU1NQcmVsb2FkU2Nhbm5lci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDU1NQcmVsb2FkU2Nhbm5lci5oOyBwYXRo
ID0gcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk3N0IzODQ5MTIyODgzRTkwMEI4MUZGOSAvKiBDb21wYWN0SFRNTFRva2VuLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENvbXBhY3RIVE1MVG9rZW4uY3BwOyBw
YXRoID0gcGFyc2VyL0NvbXBhY3RIVE1MVG9rZW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NzdCMzg0QTEyMjg4M0U5MDBCODFGRjkgLyogQ29tcGFjdEhUTUxUb2tlbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDb21wYWN0SFRNTFRva2VuLmg7IHBhdGgg
PSBwYXJzZXIvQ29tcGFjdEhUTUxUb2tlbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk5NzdCMzg0QjEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVjdGlvblNpdGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSFRNTENvbnN0cnVjdGlvblNpdGUu
Y3BwOyBwYXRoID0gcGFyc2VyL0hUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTc3QjM4NEMxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxDb25zdHJ1
Y3Rpb25TaXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEhUTUxDb25zdHJ1
Y3Rpb25TaXRlLmg7IHBhdGggPSBwYXJzZXIvSFRNTENvbnN0cnVjdGlvblNpdGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTc3QjM4NEQxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxE
b2N1bWVudFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBI
VE1MRG9jdW1lbnRQYXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9Db21wYWN0SFRNTFRva2VuLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL0NvbXBhY3RIVE1MVG9rZW4uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA5MzI4ZWU4NjBkZjQzMzM1
NWRiYjMyNjVmM2U3ZTEyNjBhNmQzNWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9Db21wYWN0SFRNTFRva2VuLmNwcApAQCAtMCwwICsxLDk5IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDEzIEdvb2dsZSwgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBHT09HTEUgSU5DLiBPUgorICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJj
b25maWcuaCIKKworI2lmIEVOQUJMRShUSFJFQURFRF9IVE1MX1BBUlNFUikKKworI2luY2x1ZGUg
IkNvbXBhY3RIVE1MVG9rZW4uaCIKKworI2luY2x1ZGUgIkhUTUxUb2tlbi5oIgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK0NvbXBhY3RIVE1MVG9rZW46OkNvbXBhY3RIVE1MVG9rZW4oY29uc3Qg
SFRNTFRva2VuJiB0b2tlbikKKyAgICA6IG1fdHlwZSh0b2tlbi50eXBlKCkpCit7CisgICAgc3dp
dGNoIChtX3R5cGUpIHsKKyAgICBjYXNlIEhUTUxUb2tlblR5cGVzOjpVbmluaXRpYWxpemVkOgor
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBI
VE1MVG9rZW5UeXBlczo6RE9DVFlQRToKKyAgICAgICAgbV9kYXRhID0gU3RyaW5nKHRva2VuLm5h
bWUoKS5kYXRhKCksIHRva2VuLm5hbWUoKS5zaXplKCkpOworICAgICAgICBtX3B1YmxpY0lkZW50
aWZpZXIgPSBTdHJpbmcodG9rZW4ucHVibGljSWRlbnRpZmllcigpLmRhdGEoKSwgdG9rZW4ucHVi
bGljSWRlbnRpZmllcigpLnNpemUoKSk7CisgICAgICAgIG1fc3lzdGVtSWRlbnRpZmllciA9IFN0
cmluZyh0b2tlbi5zeXN0ZW1JZGVudGlmaWVyKCkuZGF0YSgpLCB0b2tlbi5zeXN0ZW1JZGVudGlm
aWVyKCkuc2l6ZSgpKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBIVE1MVG9rZW5UeXBlczo6
RW5kT2ZGaWxlOgorICAgICAgICBicmVhazsKKyAgICBjYXNlIEhUTUxUb2tlblR5cGVzOjpTdGFy
dFRhZzoKKyAgICAgICAgbV9hdHRyaWJ1dGVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkodG9rZW4u
YXR0cmlidXRlcygpLnNpemUoKSk7CisgICAgICAgIGZvciAoVmVjdG9yPEF0dHJpYnV0ZUJhc2U+
Ojpjb25zdF9pdGVyYXRvciBpdCA9IHRva2VuLmF0dHJpYnV0ZXMoKS5iZWdpbigpOyBpdCAhPSB0
b2tlbi5hdHRyaWJ1dGVzKCkuZW5kKCk7ICsraXQpCisgICAgICAgICAgICBtX2F0dHJpYnV0ZXMu
YXBwZW5kKENvbXBhY3RBdHRyaWJ1dGUoU3RyaW5nKGl0LT5tX25hbWUuZGF0YSgpLCBpdC0+bV9u
YW1lLnNpemUoKSksIFN0cmluZyhpdC0+bV92YWx1ZS5kYXRhKCksIGl0LT5tX3ZhbHVlLnNpemUo
KSkpKTsKKyAgICAgICAgLy8gRmFsbCB0aHJvdWdoIQorICAgIGNhc2UgSFRNTFRva2VuVHlwZXM6
OkVuZFRhZzoKKyAgICAgICAgbV9zZWxmQ2xvc2luZyA9IHRva2VuLnNlbGZDbG9zaW5nKCk7Cisg
ICAgICAgIC8vIEZhbGwgdGhyb3VnaCEKKyAgICBjYXNlIEhUTUxUb2tlblR5cGVzOjpDb21tZW50
OgorICAgIGNhc2UgSFRNTFRva2VuVHlwZXM6OkNoYXJhY3RlcjoKKyAgICAgICAgaWYgKHRva2Vu
LmlzQWxsOEJpdERhdGEoKSkKKyAgICAgICAgICAgIG1fZGF0YSA9IFN0cmluZzo6bWFrZThCaXRG
cm9tMTZCaXRTb3VyY2UodG9rZW4uZGF0YSgpLmRhdGEoKSwgdG9rZW4uZGF0YSgpLnNpemUoKSk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fZGF0YSA9IFN0cmluZyh0b2tlbi5kYXRhKCku
ZGF0YSgpLCB0b2tlbi5kYXRhKCkuc2l6ZSgpKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVs
dDoKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGJyZWFrOworICAgIH0K
K30KKworc3RhdGljIGJvb2wgaXNTdHJpbmdTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKGNvbnN0
IFN0cmluZyYgc3RyaW5nKQoreworICAgIFN0cmluZ0ltcGwqIGltcGwgPSBzdHJpbmcuaW1wbCgp
OworICAgIGlmICghaW1wbCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgaWYgKGltcGwtPmhh
c09uZVJlZigpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBpZiAoc3RyaW5nLmlzRW1wdHko
KSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIENv
bXBhY3RIVE1MVG9rZW46OmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpIGNvbnN0Cit7Cisg
ICAgZm9yIChWZWN0b3I8Q29tcGFjdEF0dHJpYnV0ZT46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9h
dHRyaWJ1dGVzLmJlZ2luKCk7IGl0ICE9IG1fYXR0cmlidXRlcy5lbmQoKTsgKytpdCkgeworICAg
ICAgICBpZiAoIWlzU3RyaW5nU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZChpdC0+bmFtZSgpKSkK
KyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYgKCFpc1N0cmluZ1NhZmVUb1Nl
bmRUb0Fub3RoZXJUaHJlYWQoaXQtPnZhbHVlKCkpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KKworICAgIHJldHVybiBpc1N0cmluZ1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQo
bV9kYXRhKQorICAgICAgICAmJiBpc1N0cmluZ1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQobV9w
dWJsaWNJZGVudGlmaWVyKQorICAgICAgICAmJiBpc1N0cmluZ1NhZmVUb1NlbmRUb0Fub3RoZXJU
aHJlYWQobV9zeXN0ZW1JZGVudGlmaWVyKTsKK30KKworfQorCisjZW5kaWYgLy8gRU5BQkxFKFRI
UkVBREVEX0hUTUxfUEFSU0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJz
ZXIvQ29tcGFjdEhUTUxUb2tlbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ29tcGFj
dEhUTUxUb2tlbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxMDQxNWNlOTgzZmQyMjg1YWYwMDM3MjEzM2NmOTU2
ZThkYzdmODQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9D
b21wYWN0SFRNTFRva2VuLmgKQEAgLTAsMCArMSw4NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMyBHb29nbGUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEdPT0dMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgR09PR0xFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBDb21wYWN0SFRNTFRva2VuX2gK
KyNkZWZpbmUgQ29tcGFjdEhUTUxUb2tlbl9oCisKKyNpZiBFTkFCTEUoVEhSRUFERURfSFRNTF9Q
QVJTRVIpCisKKyNpbmNsdWRlICJIVE1MVG9rZW5UeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitjbGFzcyBIVE1MVG9rZW47CisKK2NsYXNzIENvbXBhY3RBdHRyaWJ1dGUgeworcHVibGlj
OgorICAgIENvbXBhY3RBdHRyaWJ1dGUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IHZhbHVlKQorICAgICAgICA6IG1fbmFtZShuYW1lKQorICAgICAgICAsIG1fdmFsdWUodmFsdWUp
CisgICAgeworICAgIH0KKworICAgIGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJu
IG1fbmFtZTsgfQorICAgIGNvbnN0IFN0cmluZyYgdmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3Zh
bHVlOyB9CisKK3ByaXZhdGU6CisgICAgU3RyaW5nIG1fbmFtZTsKKyAgICBTdHJpbmcgbV92YWx1
ZTsKK307CisKK2NsYXNzIENvbXBhY3RIVE1MVG9rZW4geworcHVibGljOgorICAgIGV4cGxpY2l0
IENvbXBhY3RIVE1MVG9rZW4oY29uc3QgSFRNTFRva2VuJik7CisKKyAgICBib29sIGlzU2FmZVRv
U2VuZFRvQW5vdGhlclRocmVhZCgpIGNvbnN0OworCisgICAgSFRNTFRva2VuVHlwZXM6OlR5cGUg
dHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQorICAgIGNvbnN0IFN0cmluZyYgZGF0YSgp
IGNvbnN0IHsgcmV0dXJuIG1fZGF0YTsgfQorICAgIGJvb2wgc2VsZkNsb3NpbmcoKSBjb25zdCB7
IHJldHVybiBtX3NlbGZDbG9zaW5nOyB9CisgICAgY29uc3QgVmVjdG9yPENvbXBhY3RBdHRyaWJ1
dGU+JiBhdHRyaWJ1dGVzKCkgY29uc3QgeyByZXR1cm4gbV9hdHRyaWJ1dGVzOyB9CisKKyAgICBj
b25zdCBTdHJpbmcmIHB1YmxpY0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3B1YmxpY0lk
ZW50aWZpZXI7IH0KKyAgICBjb25zdCBTdHJpbmcmIHN5c3RlbUlkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3N5c3RlbUlkZW50aWZpZXI7IH0KKworcHJpdmF0ZToKKyAgICBIVE1MVG9rZW5U
eXBlczo6VHlwZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fZGF0YTsgLy8gIm5hbWUiLCAiY2hhcmFj
dGVycyIsIG9yICJkYXRhIiBkZXBlbmRpbmcgb24gbV90eXBlCisgICAgYm9vbCBtX3NlbGZDbG9z
aW5nOworICAgIFZlY3RvcjxDb21wYWN0QXR0cmlidXRlPiBtX2F0dHJpYnV0ZXM7CisKKyAgICAv
LyBGb3IgZG9jdHlwZSBvbmx5LgorICAgIFN0cmluZyBtX3B1YmxpY0lkZW50aWZpZXI7CisgICAg
U3RyaW5nIG1fc3lzdGVtSWRlbnRpZmllcjsKK307CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShU
SFJFQURFRF9IVE1MX1BBUlNFUikKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS94bWwvcGFyc2VyL01hcmt1cFRva2VuQmFzZS5oIGIvU291cmNlL1dlYkNvcmUveG1sL3BhcnNl
ci9NYXJrdXBUb2tlbkJhc2UuaAppbmRleCA0MzZkYWRkODM5OTUyYTg2NTEyZmZhYmM5ZmQxNjZm
ZDdiNTBjYzU3Li40MTFhZWVhNTQyZWQ4MTg1Nzc5OGE4MWMxNWFjOWU3ODhmZmNhMmZjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvcGFyc2VyL01hcmt1cFRva2VuQmFzZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3htbC9wYXJzZXIvTWFya3VwVG9rZW5CYXNlLmgKQEAgLTMyMSw2ICsz
MjEsMTIgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9kYXRhOwogICAgIH0KIAorICAgIGNv
bnN0IERhdGFWZWN0b3ImIGRhdGEoKSBjb25zdAorICAgIHsKKyAgICAgICAgQVNTRVJUKG1fdHlw
ZSA9PSBUeXBlU2V0OjpDaGFyYWN0ZXIgfHwgbV90eXBlID09IFR5cGVTZXQ6OkNvbW1lbnQgfHwg
bV90eXBlID09IFR5cGVTZXQ6OlN0YXJ0VGFnIHx8IG1fdHlwZSA9PSBUeXBlU2V0OjpFbmRUYWcp
OworICAgICAgICByZXR1cm4gbV9kYXRhOworICAgIH0KKwogICAgIGJvb2wgaXNBbGw4Qml0RGF0
YSgpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gKG1fb3JBbGxEYXRhIDw9IDB4ZmYpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>