<?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>99428</bug_id>
          
          <creation_ts>2012-10-16 00:29:26 -0700</creation_ts>
          <short_desc>[Shadow DOM][V8] WebCore::V8DOMWindow::installPerContextProperties() is slow when shadowDOMEnabled flag is on.</short_desc>
          <delta_ts>2012-10-16 22:39:09 -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>HTML Editing</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>72352</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Hajime Morrita">morrita</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>ojan</cc>
    
    <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>742892</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-16 00:29:26 -0700</bug_when>
    <thetext>This upstreams http://code.google.com/p/chromium/issues/detail?id=155620
A profiling unveiled that this installPerContextProperties() is slower if the flag is on.
It makes sense since it injects extra DOMWindow properties at runtime.

My assumption is that installPerContextProperties() is called only a few times per page.
But there are some outliers in page cycler suite which consume 1.3% time in this function for each page load. 

I&apos;ll make some micro-benchmark for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742896</commentid>
    <comment_count>1</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-16 00:33:51 -0700</bug_when>
    <thetext>Basically there are two approaches to fix this.

A. Stop using EnablePerContext: Considering Chromium make it available for the wild Web, 
    The Shadow DOM feature does no longer need to be contextual. 
B. Make EnablePerContext faster somehow. I have no concrete idea yet. But maybe we should do this
    for other features which uses this contextual switch mechanism.

My feeling is that we can land A first then attack B if possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743129</commentid>
    <comment_count>2</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-10-16 07:35:38 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; My feeling is that we can land A first then attack B if possible.

That sounds good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743821</commentid>
    <comment_count>3</comment_count>
      <attachid>169079</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-16 20:17:26 -0700</bug_when>
    <thetext>Created attachment 169079
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743840</commentid>
    <comment_count>4</comment_count>
      <attachid>169085</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-16 21:50:46 -0700</bug_when>
    <thetext>Created attachment 169085
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743864</commentid>
    <comment_count>5</comment_count>
      <attachid>169085</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-16 22:39:05 -0700</bug_when>
    <thetext>Comment on attachment 169085
Patch for landing

Clearing flags on attachment: 169085

Committed r131549: &lt;http://trac.webkit.org/changeset/131549&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743865</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-16 22:39:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169079</attachid>
            <date>2012-10-16 20:17:26 -0700</date>
            <delta_ts>2012-10-16 21:50:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99428-20121017121614.patch</filename>
            <type>text/plain</type>
            <size>15396</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxNTQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTM3NDM3ZmYzMWFhNzU0
NzhmYTZkMTJhYjA1MTZjMjQ2MjY5N2U1YS4uMzU5OWU2MzQ3OTc0OTJhYjY4MWFjN2FkZjUyMTg1
ZjM2NDZmOWMwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEyLTEwLTE2ICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cgRE9NXVtW
OF0gV2ViQ29yZTo6VjhET01XaW5kb3c6Omluc3RhbGxQZXJDb250ZXh0UHJvcGVydGllcygpIGlz
IHNsb3cgd2hlbiBzaGFkb3dET01FbmFibGVkIGZsYWcgaXMgb24uCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTQyOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEEgYmVuY2htYXJrIHVudmVpbGVkIHRoYXQg
aW5zdGFsbFBlckNvbnRleHRQcm9wZXJ0aWVzKCkgY291bGQgaGF2ZSBtYWRlIERPTVdpbmRvdyBz
ZXR1cCBzbG93ZXIgd2hlbgorICAgICAgICAtIFNvbWUgcHJvcGVydGllcyBhcmUgYWRkZWQgcGVy
LWNvbnRleHQgYmFzaXMgYnkgdHVybmluIHRoZSBmbGFnIG9uIGFuZAorICAgICAgICAtIFRoZXJl
IGFyZSBidW5jaCBvZiBET01XaW5kb3cgb2JqZWN0IGluIHRoZSBwYWdlICh0aGF0IGlzLCB0aGVy
ZSBhcmUgbWFueSBpZnJhbWVzLikKKworICAgICAgICBUaGlzIGNoYW5nZSBlbGltaW5hdGVzIFNo
YWRvdyBET00gcmVsYXRlZCBwZXItY29udGV4dCBwcm9wZXJ0aWVzIGZyb20gRE9NV2luZG93IGZv
ciBnZXR0aW5nIHJpZCBvZiB0aGF0IHNsb3duZXNzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAo
T09QUyEpLgorCisgICAgICAgICogZG9tL0NvbnRleHRGZWF0dXJlcy5jcHA6CisgICAgICAgICog
ZG9tL0NvbnRleHRGZWF0dXJlcy5oOiBSZW1vdmVkIHNoYWRvd0RPTUVuYWJsZWQoKSBtZXRob2Qg
YW5kIHJlbGF0ZWQgZW51bSBlbnRyeS4KKyAgICAgICAgKiBkb20vUG9zaXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UG9zaXRpb246OlBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlBv
c2l0aW9uOjpmaW5kUGFyZW50KToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6Z2V0U2VsZWN0aW9uKToKKyAgICAgICAgKiBkb20vbWFr
ZV9uYW1lcy5wbDogUmUtaW50cm9kdWNlZCAicnVudGltZUNvbmRpdGlvbmFsIiBkaXJlY3RpdmUu
CisgICAgICAgIChkZWZhdWx0VGFnUHJvcGVydHlIYXNoKToKKyAgICAgICAgKHByaW50Q29uc3Ry
dWN0b3JJbnRlcmlvcik6CisgICAgICAgIChwcmludEZhY3RvcnlDcHBGaWxlKToKKyAgICAgICAg
KHByaW50V3JhcHBlckZ1bmN0aW9ucyk6CisgICAgICAgIChwcmludFdyYXBwZXJGYWN0b3J5Q3Bw
RmlsZSk6CisgICAgICAgICogaHRtbC9IVE1MVGFnTmFtZXMuaW46CisgICAgICAgICogaHRtbC9z
aGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnRlbnRU
YWdOYW1lKToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisKIDIwMTItMTAtMTYgIEp1
bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CiAKICAgICAgICAgTWFrZSBS
ZW5kZXJPYmplY3QgZGVzdHJ1Y3Rpb24gZHVyaW5nIGRldGFjaCBhIHRvcC1kb3duIG9wZXJhdGlv
bgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA5ZDJmZjM0OTMzMWJhZTM3NWE4ZmQzZTI2
MDA5YjI0NmMzMmQ5ODBlLi42MzdjNDQ0Y2M0ZDVhZmE4Y2I2ZjU5NTdlOTBkNjcxZGQ3MjBiM2Rk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEyLTEwLTE2
ICBNT1JJVEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cg
RE9NXVtWOF0gV2ViQ29yZTo6VjhET01XaW5kb3c6Omluc3RhbGxQZXJDb250ZXh0UHJvcGVydGll
cygpIGlzIHNsb3cgd2hlbiBzaGFkb3dET01FbmFibGVkIGZsYWcgaXMgb24uCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTQyOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3JjL0NvbnRleHRGZWF0dXJl
c0NsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpDb250ZXh0RmVhdHVyZXNDbGllbnRJ
bXBsOjphc2tJZklzRW5hYmxlZCk6CisKIDIwMTItMTAtMTYgIEFsZWMgRmxldHQgIDxhbGVjZmxl
dHRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEluZGV4ZWREQjogU3R1YiBvdXQgY2hyb21pdW0g
c3VjY2VzcyBoYW5kbGVycyBmb3IgaW50ZWdlcnMgYW5kIHVuZGVmaW5lZCB2YWx1ZXMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250ZXh0RmVhdHVyZXMuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0NvbnRleHRGZWF0dXJlcy5jcHAKaW5kZXggMTNiYmIzOGUxMzU5YzE4NTQxNzdl
YmMwZWVkZGI4OTdjMmMwZWIzOS4uMGFhMzEwZGZlMzIxMGYxN2UzZThlMTg1MWI3MTQwN2MwM2U4
ZTM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRleHRGZWF0dXJlcy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRleHRGZWF0dXJlcy5jcHAKQEAgLTYzLDE4ICs2
Myw2IEBAIGJvb2wgQ29udGV4dEZlYXR1cmVzOjpkaWFsb2dFbGVtZW50RW5hYmxlZChEb2N1bWVu
dCogZG9jdW1lbnQpCiAjZW5kaWYKIH0KIAotYm9vbCBDb250ZXh0RmVhdHVyZXM6OnNoYWRvd0RP
TUVuYWJsZWQoRG9jdW1lbnQqIGRvY3VtZW50KQotewotI2lmIEVOQUJMRShTSEFET1dfRE9NKQot
ICAgIGlmICghZG9jdW1lbnQpCi0gICAgICAgIHJldHVybiBSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzaGFkb3dET01FbmFibGVkKCk7Ci0gICAgcmV0dXJuIGRvY3VtZW50LT5jb250ZXh0RmVhdHVy
ZXMoKS0+aXNFbmFibGVkKGRvY3VtZW50LCBTaGFkb3dET00sIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYWRvd0RPTUVuYWJsZWQoKSk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShkb2N1bWVu
dCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi19Ci0KIGJvb2wgQ29udGV4dEZlYXR1cmVz
OjpzdHlsZVNjb3BlZEVuYWJsZWQoRG9jdW1lbnQqIGRvY3VtZW50KQogewogI2lmIEVOQUJMRShT
VFlMRV9TQ09QRUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGV4dEZlYXR1
cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGV4dEZlYXR1cmVzLmgKaW5kZXggM2IwNWQ3
Nzg4MDE0YTMwZTFkYzNmYTkyOGYwMjg1NDQ3MDU3N2E1Ny4uZjBhN2ZhMDJjZDk3ZmMwZmY3MTgx
ZDhjODRmODU4MjU2MmQ0ZjNmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRl
eHRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250ZXh0RmVhdHVyZXMuaApA
QCAtNDAsNyArNDAsNiBAQCBjbGFzcyBDb250ZXh0RmVhdHVyZXMgOiBwdWJsaWMgUmVmQ291bnRl
ZFN1cHBsZW1lbnQ8UGFnZSwgQ29udGV4dEZlYXR1cmVzPiB7CiBwdWJsaWM6CiAgICAgZW51bSBG
ZWF0dXJlVHlwZSB7CiAgICAgICAgIERpYWxvZ0VsZW1lbnQgPSAwLAotICAgICAgICBTaGFkb3dE
T00sCiAgICAgICAgIFN0eWxlU2NvcGVkLAogICAgICAgICBQYWdlUG9wdXAsCiAgICAgICAgIEhU
TUxOb3RpZmljYXRpb25zLApAQCAtNTMsNyArNTIsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFBh
c3NSZWZQdHI8Q29udGV4dEZlYXR1cmVzPiBjcmVhdGUoQ29udGV4dEZlYXR1cmVzQ2xpZW50Kik7
CiAKICAgICBzdGF0aWMgYm9vbCBkaWFsb2dFbGVtZW50RW5hYmxlZChEb2N1bWVudCopOwotICAg
IHN0YXRpYyBib29sIHNoYWRvd0RPTUVuYWJsZWQoRG9jdW1lbnQqKTsKICAgICBzdGF0aWMgYm9v
bCBzdHlsZVNjb3BlZEVuYWJsZWQoRG9jdW1lbnQqKTsKICAgICBzdGF0aWMgYm9vbCBwYWdlUG9w
dXBFbmFibGVkKERvY3VtZW50Kik7CiAgICAgc3RhdGljIGJvb2wgaHRtbE5vdGlmaWNhdGlvbnNF
bmFibGVkKERvY3VtZW50Kik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1Bvc2l0aW9uLmNwcAppbmRleCA3N2VjZjVmODll
OGQ5YTY5NzUxNjlmNTBlNGU3OTJhMjMyNGVjYjk4Li45ZmQyYzAxOGNlZjg1ZmQ5Y2JmZDllZGJm
YzMzOTZlZmQ0MmFhYjU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAKQEAgLTI3LDEzICsyNywx
MyBAQAogI2luY2x1ZGUgIlBvc2l0aW9uLmgiCiAKICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uaCIKLSNpbmNsdWRlICJDb250ZXh0RmVhdHVyZXMuaCIKICNpbmNsdWRlICJI
VE1MTmFtZXMuaCIKICNpbmNsdWRlICJJbmxpbmVUZXh0Qm94LmgiCiAjaW5jbHVkZSAiTG9nZ2lu
Zy5oIgogI2luY2x1ZGUgIlBvc2l0aW9uSXRlcmF0b3IuaCIKICNpbmNsdWRlICJSZW5kZXJCbG9j
ay5oIgogI2luY2x1ZGUgIlJlbmRlclRleHQuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiVGV4dC5oIgogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5oIgog
I2luY2x1ZGUgIlZpc2libGVQb3NpdGlvbi5oIgpAQCAtODIsNyArODIsNyBAQCBQb3NpdGlvbjo6
UG9zaXRpb24oUGFzc1JlZlB0cjxOb2RlPiBhbmNob3JOb2RlLCBMZWdhY3lFZGl0aW5nT2Zmc2V0
IG9mZnNldCkKICAgICAsIG1faXNMZWdhY3lFZGl0aW5nUG9zaXRpb24odHJ1ZSkKIHsKICNpZiBF
TkFCTEUoU0hBRE9XX0RPTSkKLSAgICBBU1NFUlQoKG1fYW5jaG9yTm9kZSAmJiBDb250ZXh0RmVh
dHVyZXM6OnNoYWRvd0RPTUVuYWJsZWQobV9hbmNob3JOb2RlLT5kb2N1bWVudCgpKSkKKyAgICBB
U1NFUlQoKG1fYW5jaG9yTm9kZSAmJiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFkb3dET01F
bmFibGVkKCkpCiAgICAgICAgICAgIHx8ICFtX2FuY2hvck5vZGUgfHwgIW1fYW5jaG9yTm9kZS0+
aXNTaGFkb3dSb290KCkpOwogI2Vsc2UKICAgICBBU1NFUlQoIW1fYW5jaG9yTm9kZSB8fCAhbV9h
bmNob3JOb2RlLT5pc1NoYWRvd1Jvb3QoKSk7CkBAIC05Niw3ICs5Niw3IEBAIFBvc2l0aW9uOjpQ
b3NpdGlvbihQYXNzUmVmUHRyPE5vZGU+IGFuY2hvck5vZGUsIEFuY2hvclR5cGUgYW5jaG9yVHlw
ZSkKICAgICAsIG1faXNMZWdhY3lFZGl0aW5nUG9zaXRpb24oZmFsc2UpCiB7CiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCi0gICAgQVNTRVJUKChtX2FuY2hvck5vZGUgJiYgQ29udGV4dEZlYXR1cmVz
OjpzaGFkb3dET01FbmFibGVkKG1fYW5jaG9yTm9kZS0+ZG9jdW1lbnQoKSkpCisgICAgQVNTRVJU
KChtX2FuY2hvck5vZGUgJiYgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxl
ZCgpKQogICAgICAgICAgICB8fCAhbV9hbmNob3JOb2RlIHx8ICFtX2FuY2hvck5vZGUtPmlzU2hh
ZG93Um9vdCgpKTsKICNlbHNlCiAgICAgQVNTRVJUKCFtX2FuY2hvck5vZGUgfHwgIW1fYW5jaG9y
Tm9kZS0+aXNTaGFkb3dSb290KCkpOwpAQCAtMTE0LDcgKzExNCw3IEBAIFBvc2l0aW9uOjpQb3Np
dGlvbihQYXNzUmVmUHRyPE5vZGU+IGFuY2hvck5vZGUsIGludCBvZmZzZXQsIEFuY2hvclR5cGUg
YW5jaG9yVHlwCiAgICAgLCBtX2lzTGVnYWN5RWRpdGluZ1Bvc2l0aW9uKGZhbHNlKQogewogI2lm
IEVOQUJMRShTSEFET1dfRE9NKQotICAgIEFTU0VSVCgobV9hbmNob3JOb2RlICYmIENvbnRleHRG
ZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZChtX2FuY2hvck5vZGUtPmRvY3VtZW50KCkpKQorICAg
IEFTU0VSVCgobV9hbmNob3JOb2RlICYmIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYWRvd0RP
TUVuYWJsZWQoKSkKICAgICAgICAgICAgfHwgIW1fYW5jaG9yTm9kZSB8fCAhZWRpdGluZ0lnbm9y
ZXNDb250ZW50KG1fYW5jaG9yTm9kZS5nZXQoKSkgfHwgIW1fYW5jaG9yTm9kZS0+aXNTaGFkb3dS
b290KCkpOwogI2Vsc2UKICAgICBBU1NFUlQoIW1fYW5jaG9yTm9kZSB8fCAhZWRpdGluZ0lnbm9y
ZXNDb250ZW50KG1fYW5jaG9yTm9kZS5nZXQoKSkgfHwgIW1fYW5jaG9yTm9kZS0+aXNTaGFkb3dS
b290KCkpOwpAQCAtODU4LDcgKzg1OCw3IEBAIENvbnRhaW5lck5vZGUqIFBvc2l0aW9uOjpmaW5k
UGFyZW50KGNvbnN0IE5vZGUqIG5vZGUpCiAgICAgLy8gRklYTUU6IFNlZSBodHRwOi8vd2ViLnVn
LzgyNjk3CiAKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKLSAgICBpZiAoQ29udGV4dEZlYXR1cmVz
OjpzaGFkb3dET01FbmFibGVkKG5vZGUtPmRvY3VtZW50KCkpKQorICAgIGlmIChSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjpzaGFkb3dET01FbmFibGVkKCkpCiAgICAgICAgIHJldHVybiBub2RlLT5w
YXJlbnROb2RlKCk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Ry
ZWVTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAppbmRleCBhYWQx
ZGZmNmRjMTQ5NzcwNGQzMGU4ZGJkZjA5N2I3YzQ3MjllNTM5Li5hZmQzNDNmYjY0YzFmZDM5NWQw
ZTdlMTJiYjBkN2RlNTEwZmNjYmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vVHJl
ZVNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcApAQCAtMjgs
NyArMjgsNiBAQAogCiAjaW5jbHVkZSAiQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyLmgiCiAjaW5j
bHVkZSAiQ29udGFpbmVyTm9kZS5oIgotI2luY2x1ZGUgIkNvbnRleHRGZWF0dXJlcy5oIgogI2lu
Y2x1ZGUgIkRPTVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgogI2luY2x1ZGUg
IkRvY3VtZW50LmgiCkBAIC00Miw2ICs0MSw3IEBACiAjaW5jbHVkZSAiSWRUYXJnZXRPYnNlcnZl
clJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiSW5zZXJ0aW9uUG9pbnQuaCIKICNpbmNsdWRlICJQYWdl
LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNoYWRv
d1Jvb3QuaCIKICNpbmNsdWRlICJUcmVlU2NvcGVBZG9wdGVyLmgiCiAjaW5jbHVkZSA8d3RmL1Zl
Y3Rvci5oPgpAQCAtMTU2LDcgKzE1Niw3IEBAIERPTVNlbGVjdGlvbiogVHJlZVNjb3BlOjpnZXRT
ZWxlY3Rpb24oKSBjb25zdAogICAgIC8vIGFzIGEgY29udGFpbmVyLiBJdCBpcyBub3cgZW5hYmxl
ZCBvbmx5IGlmIHJ1bnRpbWUgU2hhZG93IERPTSBmZWF0dXJlIGlzIGVuYWJsZWQuCiAgICAgLy8g
U2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MjY5NwogI2lmIEVO
QUJMRShTSEFET1dfRE9NKQotICAgIGlmIChDb250ZXh0RmVhdHVyZXM6OnNoYWRvd0RPTUVuYWJs
ZWQocm9vdE5vZGUoKS0+ZG9jdW1lbnQoKSkpIHsKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0
dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKSB7CiAgICAgICAgIG1fc2VsZWN0aW9uID0gRE9NU2Vs
ZWN0aW9uOjpjcmVhdGUodGhpcyk7CiAgICAgICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQoKTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9tYWtlX25hbWVzLnBsCmluZGV4IDM2MmIwODUwY2YyYzAxZGJlMzhm
NjIyMjlmMTEzOTZlN2QzYzRiZGYuLjM4ZDg1OTVkZWIxNjAzZWI1MmI3NTE4MTcyMjQyOGMzZjUw
NTkxZDQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9tYWtlX25hbWVzLnBsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9tYWtlX25hbWVzLnBsCkBAIC0xODYsNyArMTg2LDggQEAgc3Vi
IGRlZmF1bHRUYWdQcm9wZXJ0eUhhc2gKICAgICAgICAgJ21hcFRvVGFnTmFtZScgPT4gJycsCiAg
ICAgICAgICd3cmFwcGVyT25seUlmTWVkaWFJc0F2YWlsYWJsZScgPT4gMCwKICAgICAgICAgJ2Nv
bmRpdGlvbmFsJyA9PiAwLAotICAgICAgICAnY29udGV4dENvbmRpdGlvbmFsJyA9PiAwCisgICAg
ICAgICdjb250ZXh0Q29uZGl0aW9uYWwnID0+IDAsCisgICAgICAgICdydW50aW1lQ29uZGl0aW9u
YWwnID0+IDAKICAgICApOwogfQogCkBAIC0zODQsNiArMzg1LDE1IEBAIEVORAogOwogICAgIH0K
IAorICAgIG15ICRydW50aW1lQ29uZGl0aW9uYWwgPSAkZW5hYmxlZFRhZ3N7JHRhZ05hbWV9e3J1
bnRpbWVDb25kaXRpb25hbH07CisgICAgaWYgKCRydW50aW1lQ29uZGl0aW9uYWwpIHsKKyAgICAg
ICAgcHJpbnQgRiA8PEVORAorICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6JHtydW50
aW1lQ29uZGl0aW9uYWx9RW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gMDsKK0VORAorOworICAg
IH0KKwogICAgICMgQ2FsbCB0aGUgY29uc3RydWN0b3Igd2l0aCB0aGUgcmlnaHQgcGFyYW1ldGVy
cy4KICAgICBwcmludCBGICIgICAgcmV0dXJuICR7aW50ZXJmYWNlTmFtZX06OmNyZWF0ZSgkY29u
c3RydWN0b3JUYWdOYW1lLCBkb2N1bWVudCI7CiAgICAgcHJpbnQgRiAiLCBmb3JtRWxlbWVudCIg
aWYgJGVuYWJsZWRUYWdzeyR0YWdOYW1lfXtjb25zdHJ1Y3Rvck5lZWRzRm9ybUVsZW1lbnR9OwpA
QCAtODExLDYgKzgyMSw3IEBAIHByaW50Q29uZGl0aW9uYWxFbGVtZW50SW5jbHVkZXMoJEYpOwog
cHJpbnQgRiA8PEVORAogCiAjaW5jbHVkZSAiQ29udGV4dEZlYXR1cmVzLmgiCisjaW5jbHVkZSAi
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogCiAjaWYgRU5BQkxFKERBU0hCT0FSRF9TVVBQT1JU
KSB8fCBFTkFCTEUoVklERU8pCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKQEAgLTEwMjgsNiArMTAz
OSwyMCBAQCBzdGF0aWMgSlNET01XcmFwcGVyKiBjcmVhdGUke0pTSW50ZXJmYWNlTmFtZX1XcmFw
cGVyKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYQogfQogRU5ECiA7CisgICAgICAgICAgICB9
IGVsc2lmICgkZW5hYmxlZFRhZ3N7JHRhZ05hbWV9e3J1bnRpbWVDb25kaXRpb25hbH0pIHsKKyAg
ICAgICAgICAgICAgICBteSAkcnVudGltZUNvbmRpdGlvbmFsID0gJGVuYWJsZWRUYWdzeyR0YWdO
YW1lfXtydW50aW1lQ29uZGl0aW9uYWx9OworICAgICAgICAgICAgICAgIHByaW50IEYgPDxFTkQK
K3N0YXRpYyBKU0RPTVdyYXBwZXIqIGNyZWF0ZSR7SlNJbnRlcmZhY2VOYW1lfVdyYXBwZXIoRXhl
Y1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQYXNzUmVmUHRy
PCRwYXJhbWV0ZXJze25hbWVzcGFjZX1FbGVtZW50PiBlbGVtZW50KQoreworICAgIGlmICghUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6JHtydW50aW1lQ29uZGl0aW9uYWx9RW5hYmxlZCgpKSB7Cisg
ICAgICAgIEFTU0VSVCghZWxlbWVudCB8fCBlbGVtZW50LT5pcyRwYXJhbWV0ZXJze2ZhbGxiYWNr
SW50ZXJmYWNlTmFtZX0oKSk7CisgICAgICAgIHJldHVybiBDUkVBVEVfRE9NX1dSQVBQRVIoZXhl
YywgZ2xvYmFsT2JqZWN0LCAkcGFyYW1ldGVyc3tmYWxsYmFja0ludGVyZmFjZU5hbWV9LCBlbGVt
ZW50LmdldCgpKTsKKyAgICB9CisKKyAgICByZXR1cm4gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMs
IGdsb2JhbE9iamVjdCwgJHtKU0ludGVyZmFjZU5hbWV9LCBlbGVtZW50LmdldCgpKTsKK30KK0VO
RAorOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludCBGIDw8RU5E
CiBzdGF0aWMgSlNET01XcmFwcGVyKiBjcmVhdGUke0pTSW50ZXJmYWNlTmFtZX1XcmFwcGVyKEV4
ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUGFzc1JlZlB0
cjwkcGFyYW1ldGVyc3tuYW1lc3BhY2V9RWxlbWVudD4gZWxlbWVudCkKQEAgLTEwNjIsNiArMTA4
NywxNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNyZWF0ZSR7SlNJbnRlcmZhY2VO
YW1lfVdyYXBwZXIoJHBhcmFtZXRlcnN7bmFtZXNwYQogfQogRU5ECiA7CisgICAgICAgICAgICB9
IGVsc2lmICgkZW5hYmxlZFRhZ3N7JHRhZ05hbWV9e3J1bnRpbWVDb25kaXRpb25hbH0pIHsKKyAg
ICAgICAgICAgICAgICBteSAkcnVudGltZUNvbmRpdGlvbmFsID0gJGVuYWJsZWRUYWdzeyR0YWdO
YW1lfXtydW50aW1lQ29uZGl0aW9uYWx9OworICAgICAgICAgICAgICAgIHByaW50IEYgPDxFTkQK
K3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY3JlYXRlJHtKU0ludGVyZmFjZU5hbWV9V3Jh
cHBlcigkcGFyYW1ldGVyc3tuYW1lc3BhY2V9RWxlbWVudCogZWxlbWVudCwgdjg6OkhhbmRsZTx2
ODo6T2JqZWN0PiBjcmVhdGlvbkNvbnRleHQsIHY4OjpJc29sYXRlKiBpc29sYXRlKQoreworICAg
IGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6JHtydW50aW1lQ29uZGl0aW9uYWx9RW5hYmxl
ZCgpKQorICAgICAgICByZXR1cm4gVjgkcGFyYW1ldGVyc3tmYWxsYmFja0ludGVyZmFjZU5hbWV9
Ojp3cmFwKHRvJHBhcmFtZXRlcnN7ZmFsbGJhY2tJbnRlcmZhY2VOYW1lfShlbGVtZW50KSwgY3Jl
YXRpb25Db250ZXh0LCBpc29sYXRlKTsKKyAgICByZXR1cm4gdG9WOChzdGF0aWNfY2FzdDwke0pT
SW50ZXJmYWNlTmFtZX0qPihlbGVtZW50KSwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsKK30K
K0VORAorOwogICAgICAgICAgICAgfSBlbHNpZiAoJHtKU0ludGVyZmFjZU5hbWV9IGVxICJIVE1M
RWxlbWVudCIpIHsKICAgICAgICAgICAgICAgICBwcmludCBGIDw8RU5ECiBzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IGNyZWF0ZSR7SlNJbnRlcmZhY2VOYW1lfVdyYXBwZXIoJHBhcmFtZXRl
cnN7bmFtZXNwYWNlfUVsZW1lbnQqIGVsZW1lbnQsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3Jl
YXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKQEAgLTExMTgsNiArMTE1NCw3IEBA
IHN1YiBwcmludFdyYXBwZXJGYWN0b3J5Q3BwRmlsZQogICAgIHByaW50IEYgPDxFTkQKIAogI2lu
Y2x1ZGUgIkNvbnRleHRGZWF0dXJlcy5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCIKIAogI2lmIEVOQUJMRShWSURFTykKICNpbmNsdWRlICJEb2N1bWVudC5oIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4gYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxUYWdOYW1lcy5pbgppbmRleCAzNjYwYWI5NDhlMDc4Nzg5NzQ3YmNhZWJlZTVk
MGI2OThjZjM1YWZlLi44NWExZTYxYTVhOTU4MmIxM2U2MzQyODljZGM1M2EyMmM3NmIzZTAxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgpAQCAtMzEsNyArMzEsNyBAQCBjb2RlIGlu
dGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKIGNvbCBpbnRlcmZhY2VOYW1lPUhUTUxUYWJsZUNvbEVs
ZW1lbnQKIGNvbGdyb3VwIGludGVyZmFjZU5hbWU9SFRNTFRhYmxlQ29sRWxlbWVudAogY29tbWFu
ZCBpbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50Ci1jb250ZW50IGludGVyZmFjZU5hbWU9SFRNTENv
bnRlbnRFbGVtZW50LCBjb25kaXRpb25hbD1TSEFET1dfRE9NLCBjb250ZXh0Q29uZGl0aW9uYWw9
c2hhZG93RE9NCitjb250ZW50IGludGVyZmFjZU5hbWU9SFRNTENvbnRlbnRFbGVtZW50LCBjb25k
aXRpb25hbD1TSEFET1dfRE9NLCBydW50aW1lQ29uZGl0aW9uYWw9c2hhZG93RE9NCiB3ZWJraXRT
aGFkb3dDb250ZW50IGludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQsIG5vQ29uc3RydWN0b3IKIGRh
dGFsaXN0IGludGVyZmFjZU5hbWU9SFRNTERhdGFMaXN0RWxlbWVudCwgY29uZGl0aW9uYWw9REFU
QUxJU1RfRUxFTUVOVAogZGQgaW50ZXJmYWNlTmFtZT1IVE1MRWxlbWVudApAQCAtOTcsNyArOTcs
NyBAQCBvbCBpbnRlcmZhY2VOYW1lPUhUTUxPTGlzdEVsZW1lbnQKIG9wdGdyb3VwIGludGVyZmFj
ZU5hbWU9SFRNTE9wdEdyb3VwRWxlbWVudAogb3B0aW9uCiBvdXRwdXQgY29uc3RydWN0b3JOZWVk
c0Zvcm1FbGVtZW50Ci1zaGFkb3cgaW50ZXJmYWNlTmFtZT1IVE1MU2hhZG93RWxlbWVudCwgY29u
ZGl0aW9uYWw9U0hBRE9XX0RPTSwgY29udGV4dENvbmRpdGlvbmFsPXNoYWRvd0RPTQorc2hhZG93
IGludGVyZmFjZU5hbWU9SFRNTFNoYWRvd0VsZW1lbnQsIGNvbmRpdGlvbmFsPVNIQURPV19ET00s
IHJ1bnRpbWVDb25kaXRpb25hbD1zaGFkb3dET00KIHAgaW50ZXJmYWNlTmFtZT1IVE1MUGFyYWdy
YXBoRWxlbWVudAogcGFyYW0KIHBsYWludGV4dCBpbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcApp
bmRleCBiMGJkZDg4NWY3OGVjNjcwZjhlNzVjNDg5MzAxMmE2MjFkOTU1NGRmLi45MTJjZmRmNTFh
MTZjYWNmMTNlOWM3NzZkOTAzMDQ5OGY5ZDA1YWRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L0hUTUxDb250ZW50RWxlbWVudC5jcHAKQEAgLTI5LDEwICsyOSwxMCBAQAog
CiAjaW5jbHVkZSAiQ29udGVudERpc3RyaWJ1dG9yLmgiCiAjaW5jbHVkZSAiQ29udGVudFNlbGVj
dG9yUXVlcnkuaCIKLSNpbmNsdWRlICJDb250ZXh0RmVhdHVyZXMuaCIKICNpbmNsdWRlICJFbGVt
ZW50U2hhZG93LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUXVhbGlmaWVk
TmFtZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJT
aGFkb3dSb290LmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogCkBAIC00Myw3ICs0
Myw3IEBAIHVzaW5nIEhUTUxOYW1lczo6c2VsZWN0QXR0cjsKIHN0YXRpYyBjb25zdCBRdWFsaWZp
ZWROYW1lJiBjb250ZW50VGFnTmFtZShEb2N1bWVudCogZG9jdW1lbnQpCiB7CiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCi0gICAgaWYgKCFDb250ZXh0RmVhdHVyZXM6OnNoYWRvd0RPTUVuYWJsZWQo
ZG9jdW1lbnQpKQorICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5h
YmxlZCgpKQogICAgICAgICByZXR1cm4gSFRNTE5hbWVzOjp3ZWJraXRTaGFkb3dDb250ZW50VGFn
OwogICAgIHJldHVybiBIVE1MTmFtZXM6OmNvbnRlbnRUYWc7CiAjZWxzZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9E
T01XaW5kb3cuaWRsCmluZGV4IDBlMTA0YjY5MjAzYmExNjRmMGQ1ZTNmYjMzNWRiMjRjN2YwYWJi
NDUuLjViM2FiMmFmNDFiOTA0MDA5ODI5M2YxYzUzMzFjNGE2YTM1NzcyYzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5pZGwKQEAgLTM5Miw5ICszOTIsOSBAQAogICAgIGF0dHJpYnV0ZSBFbnRp
dHlDb25zdHJ1Y3RvciBFbnRpdHk7CiAgICAgYXR0cmlidXRlIEVudGl0eVJlZmVyZW5jZUNvbnN0
cnVjdG9yIEVudGl0eVJlZmVyZW5jZTsKICAgICBhdHRyaWJ1dGUgUHJvY2Vzc2luZ0luc3RydWN0
aW9uQ29uc3RydWN0b3IgUHJvY2Vzc2luZ0luc3RydWN0aW9uOwotICAgIFtDb25kaXRpb25hbD1T
SEFET1dfRE9NLCBWOEVuYWJsZWRQZXJDb250ZXh0PXNoYWRvd0RPTV0gYXR0cmlidXRlIFNoYWRv
d1Jvb3RDb25zdHJ1Y3RvciBXZWJLaXRTaGFkb3dSb290OwotICAgIFtDb25kaXRpb25hbD1TSEFE
T1dfRE9NLCBWOEVuYWJsZWRQZXJDb250ZXh0PXNoYWRvd0RPTV0gYXR0cmlidXRlIEhUTUxDb250
ZW50RWxlbWVudENvbnN0cnVjdG9yIEhUTUxDb250ZW50RWxlbWVudDsKLSAgICBbQ29uZGl0aW9u
YWw9U0hBRE9XX0RPTSwgVjhFbmFibGVkUGVyQ29udGV4dD1zaGFkb3dET01dIGF0dHJpYnV0ZSBI
VE1MU2hhZG93RWxlbWVudENvbnN0cnVjdG9yIEhUTUxTaGFkb3dFbGVtZW50OworICAgIFtDb25k
aXRpb25hbD1TSEFET1dfRE9NLCBWOEVuYWJsZWRBdFJ1bnRpbWU9c2hhZG93RE9NXSBhdHRyaWJ1
dGUgU2hhZG93Um9vdENvbnN0cnVjdG9yIFdlYktpdFNoYWRvd1Jvb3Q7CisgICAgW0NvbmRpdGlv
bmFsPVNIQURPV19ET00sIFY4RW5hYmxlZEF0UnVudGltZT1zaGFkb3dET01dIGF0dHJpYnV0ZSBI
VE1MQ29udGVudEVsZW1lbnRDb25zdHJ1Y3RvciBIVE1MQ29udGVudEVsZW1lbnQ7CisgICAgW0Nv
bmRpdGlvbmFsPVNIQURPV19ET00sIFY4RW5hYmxlZEF0UnVudGltZT1zaGFkb3dET01dIGF0dHJp
YnV0ZSBIVE1MU2hhZG93RWxlbWVudENvbnN0cnVjdG9yIEhUTUxTaGFkb3dFbGVtZW50OwogCiAg
ICAgYXR0cmlidXRlIERPTVNlbGVjdGlvbkNvbnN0cnVjdG9yIFNlbGVjdGlvbjsKICAgICBhdHRy
aWJ1dGUgRE9NV2luZG93Q29uc3RydWN0b3IgV2luZG93OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvQ29udGV4dEZlYXR1cmVzQ2xpZW50SW1wbC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9Db250ZXh0RmVhdHVyZXNDbGllbnRJbXBsLmNwcAppbmRleCA4
MzNhNTAxNmQwMzAyMDFkNGE5N2ZjYjVhNzI0MWExY2IxNDNiZDg4Li5lNTc5NWVkYzRjYjE5M2E1
YmQ0ZTFjNDk5MDczNjg2MWM3MDQxMmZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9Db250ZXh0RmVhdHVyZXNDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9Db250ZXh0RmVhdHVyZXNDbGllbnRJbXBsLmNwcApAQCAtMTQwLDcgKzE0
MCw2IEBAIGJvb2wgQ29udGV4dEZlYXR1cmVzQ2xpZW50SW1wbDo6YXNrSWZJc0VuYWJsZWQoRG9j
dW1lbnQqIGRvY3VtZW50LCBDb250ZXh0RmVhdHVyCiAgICAgICAgIHJldHVybiBkZWZhdWx0VmFs
dWU7CiAKICAgICBzd2l0Y2ggKHR5cGUpIHsKLSAgICBjYXNlIENvbnRleHRGZWF0dXJlczo6U2hh
ZG93RE9NOgogICAgIGNhc2UgQ29udGV4dEZlYXR1cmVzOjpTdHlsZVNjb3BlZDoKICAgICAgICAg
cmV0dXJuIG1fY2xpZW50LT5hbGxvd1dlYkNvbXBvbmVudHMoV2ViRG9jdW1lbnQoZG9jdW1lbnQp
LCBkZWZhdWx0VmFsdWUpOwogICAgIGNhc2UgQ29udGV4dEZlYXR1cmVzOjpIVE1MTm90aWZpY2F0
aW9uczoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169085</attachid>
            <date>2012-10-16 21:50:46 -0700</date>
            <delta_ts>2012-10-16 22:39:05 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-99428-20121017134933.patch</filename>
            <type>text/plain</type>
            <size>15355</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxNTQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTM3NDM3ZmYzMWFhNzU0
NzhmYTZkMTJhYjA1MTZjMjQ2MjY5N2U1YS4uOWQxYjMyYTVjZTA1MWY0NmJmMmY2YWFmODk3ZDA5
MWMxZTVkNzNiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTEwLTE2ICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cgRE9NXVtW
OF0gV2ViQ29yZTo6VjhET01XaW5kb3c6Omluc3RhbGxQZXJDb250ZXh0UHJvcGVydGllcygpIGlz
IHNsb3cgd2hlbiBzaGFkb3dET01FbmFibGVkIGZsYWcgaXMgb24uCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTQyOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IEFkYW0gQmFydGguCisKKyAgICAgICAgQSBiZW5jaG1hcmsgdW52ZWlsZWQgdGhhdCBpbnN0
YWxsUGVyQ29udGV4dFByb3BlcnRpZXMoKSBjb3VsZCBoYXZlIG1hZGUgRE9NV2luZG93IHNldHVw
IHNsb3dlciB3aGVuCisgICAgICAgIC0gU29tZSBwcm9wZXJ0aWVzIGFyZSBhZGRlZCBwZXItY29u
dGV4dCBiYXNpcyBieSB0dXJuaW4gdGhlIGZsYWcgb24gYW5kCisgICAgICAgIC0gVGhlcmUgYXJl
IGJ1bmNoIG9mIERPTVdpbmRvdyBvYmplY3QgaW4gdGhlIHBhZ2UgKHRoYXQgaXMsIHRoZXJlIGFy
ZSBtYW55IGlmcmFtZXMuKQorCisgICAgICAgIFRoaXMgY2hhbmdlIGVsaW1pbmF0ZXMgU2hhZG93
IERPTSByZWxhdGVkIHBlci1jb250ZXh0IHByb3BlcnRpZXMgZnJvbSBET01XaW5kb3cgZm9yIGdl
dHRpbmcgcmlkIG9mIHRoYXQgc2xvd25lc3MuCisKKyAgICAgICAgKiBkb20vQ29udGV4dEZlYXR1
cmVzLmNwcDoKKyAgICAgICAgKiBkb20vQ29udGV4dEZlYXR1cmVzLmg6IFJlbW92ZWQgc2hhZG93
RE9NRW5hYmxlZCgpIG1ldGhvZCBhbmQgcmVsYXRlZCBlbnVtIGVudHJ5LgorICAgICAgICAqIGRv
bS9Qb3NpdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQb3NpdGlvbjo6UG9zaXRpb24pOgor
ICAgICAgICAoV2ViQ29yZTo6UG9zaXRpb246OmZpbmRQYXJlbnQpOgorICAgICAgICAqIGRvbS9U
cmVlU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VHJlZVNjb3BlOjpnZXRTZWxlY3Rpb24p
OgorICAgICAgICAqIGRvbS9tYWtlX25hbWVzLnBsOiBSZS1pbnRyb2R1Y2VkICJydW50aW1lQ29u
ZGl0aW9uYWwiIGRpcmVjdGl2ZS4KKyAgICAgICAgKGRlZmF1bHRUYWdQcm9wZXJ0eUhhc2gpOgor
ICAgICAgICAocHJpbnRDb25zdHJ1Y3RvckludGVyaW9yKToKKyAgICAgICAgKHByaW50RmFjdG9y
eUNwcEZpbGUpOgorICAgICAgICAocHJpbnRXcmFwcGVyRnVuY3Rpb25zKToKKyAgICAgICAgKHBy
aW50V3JhcHBlckZhY3RvcnlDcHBGaWxlKToKKyAgICAgICAgKiBodG1sL0hUTUxUYWdOYW1lcy5p
bjoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Y29udGVudFRhZ05hbWUpOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93Lmlk
bDoKKwogMjAxMi0xMC0xNiAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJhaXhAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBNYWtlIFJlbmRlck9iamVjdCBkZXN0cnVjdGlvbiBkdXJpbmcgZGV0YWNo
IGEgdG9wLWRvd24gb3BlcmF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDlkMmZm
MzQ5MzMxYmFlMzc1YThmZDNlMjYwMDliMjQ2YzMyZDk4MGUuLjM5MTYzNmYwMWMzMmJmNDI1NWEz
ZDRiYTdiOGEwMzhiOTVjMzE1NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTItMTAtMTYgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+
CisKKyAgICAgICAgW1NoYWRvdyBET01dW1Y4XSBXZWJDb3JlOjpWOERPTVdpbmRvdzo6aW5zdGFs
bFBlckNvbnRleHRQcm9wZXJ0aWVzKCkgaXMgc2xvdyB3aGVuIHNoYWRvd0RPTUVuYWJsZWQgZmxh
ZyBpcyBvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTk5NDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICAqIHNy
Yy9Db250ZXh0RmVhdHVyZXNDbGllbnRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q29udGV4
dEZlYXR1cmVzQ2xpZW50SW1wbDo6YXNrSWZJc0VuYWJsZWQpOgorCiAyMDEyLTEwLTE2ICBBbGVj
IEZsZXR0ICA8YWxlY2ZsZXR0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6IFN0
dWIgb3V0IGNocm9taXVtIHN1Y2Nlc3MgaGFuZGxlcnMgZm9yIGludGVnZXJzIGFuZCB1bmRlZmlu
ZWQgdmFsdWVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGV4dEZlYXR1cmVz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250ZXh0RmVhdHVyZXMuY3BwCmluZGV4IDEzYmJi
MzhlMTM1OWMxODU0MTc3ZWJjMGVlZGRiODk3YzJjMGViMzkuLjBhYTMxMGRmZTMyMTBmMTdlM2U4
ZTE4NTFiNzE0MDdjMDNlOGUzNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250
ZXh0RmVhdHVyZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250ZXh0RmVhdHVyZXMu
Y3BwCkBAIC02MywxOCArNjMsNiBAQCBib29sIENvbnRleHRGZWF0dXJlczo6ZGlhbG9nRWxlbWVu
dEVuYWJsZWQoRG9jdW1lbnQqIGRvY3VtZW50KQogI2VuZGlmCiB9CiAKLWJvb2wgQ29udGV4dEZl
YXR1cmVzOjpzaGFkb3dET01FbmFibGVkKERvY3VtZW50KiBkb2N1bWVudCkKLXsKLSNpZiBFTkFC
TEUoU0hBRE9XX0RPTSkKLSAgICBpZiAoIWRvY3VtZW50KQotICAgICAgICByZXR1cm4gUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpOwotICAgIHJldHVybiBkb2N1bWVu
dC0+Y29udGV4dEZlYXR1cmVzKCktPmlzRW5hYmxlZChkb2N1bWVudCwgU2hhZG93RE9NLCBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFkb3dET01FbmFibGVkKCkpOwotI2Vsc2UKLSAgICBVTlVT
RURfUEFSQU0oZG9jdW1lbnQpOwotICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotfQotCiBib29s
IENvbnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKERvY3VtZW50KiBkb2N1bWVudCkK
IHsKICNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0NvbnRleHRGZWF0dXJlcy5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRleHRGZWF0dXJl
cy5oCmluZGV4IDNiMDVkNzc4ODAxNGEzMGUxZGMzZmE5MjhmMDI4NTQ0NzA1NzdhNTcuLmYwYTdm
YTAyY2Q5N2ZjMGZmNzE4MWQ4Yzg0Zjg1ODI1NjJkNGYzZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Db250ZXh0RmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ29u
dGV4dEZlYXR1cmVzLmgKQEAgLTQwLDcgKzQwLDYgQEAgY2xhc3MgQ29udGV4dEZlYXR1cmVzIDog
cHVibGljIFJlZkNvdW50ZWRTdXBwbGVtZW50PFBhZ2UsIENvbnRleHRGZWF0dXJlcz4gewogcHVi
bGljOgogICAgIGVudW0gRmVhdHVyZVR5cGUgewogICAgICAgICBEaWFsb2dFbGVtZW50ID0gMCwK
LSAgICAgICAgU2hhZG93RE9NLAogICAgICAgICBTdHlsZVNjb3BlZCwKICAgICAgICAgUGFnZVBv
cHVwLAogICAgICAgICBIVE1MTm90aWZpY2F0aW9ucywKQEAgLTUzLDcgKzUyLDYgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvbnRleHRGZWF0dXJlcz4gY3JlYXRlKENvbnRleHRG
ZWF0dXJlc0NsaWVudCopOwogCiAgICAgc3RhdGljIGJvb2wgZGlhbG9nRWxlbWVudEVuYWJsZWQo
RG9jdW1lbnQqKTsKLSAgICBzdGF0aWMgYm9vbCBzaGFkb3dET01FbmFibGVkKERvY3VtZW50Kik7
CiAgICAgc3RhdGljIGJvb2wgc3R5bGVTY29wZWRFbmFibGVkKERvY3VtZW50Kik7CiAgICAgc3Rh
dGljIGJvb2wgcGFnZVBvcHVwRW5hYmxlZChEb2N1bWVudCopOwogICAgIHN0YXRpYyBib29sIGh0
bWxOb3RpZmljYXRpb25zRW5hYmxlZChEb2N1bWVudCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL1Bvc2l0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAK
aW5kZXggNzdlY2Y1Zjg5ZThkOWE2OTc1MTY5ZjUwZTRlNzkyYTIzMjRlY2I5OC4uOWZkMmMwMThj
ZWY4NWZkOWNiZmQ5ZWRiZmMzMzk2ZWZkNDJhYWI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL1Bvc2l0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUG9zaXRpb24uY3Bw
CkBAIC0yNywxMyArMjcsMTMgQEAKICNpbmNsdWRlICJQb3NpdGlvbi5oIgogCiAjaW5jbHVkZSAi
Q1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ29udGV4dEZlYXR1cmVz
LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiSW5saW5lVGV4dEJveC5oIgog
I2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJQb3NpdGlvbkl0ZXJhdG9yLmgiCiAjaW5j
bHVkZSAiUmVuZGVyQmxvY2suaCIKICNpbmNsdWRlICJSZW5kZXJUZXh0LmgiCisjaW5jbHVkZSAi
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlICJU
ZXh0SXRlcmF0b3IuaCIKICNpbmNsdWRlICJWaXNpYmxlUG9zaXRpb24uaCIKQEAgLTgyLDcgKzgy
LDcgQEAgUG9zaXRpb246OlBvc2l0aW9uKFBhc3NSZWZQdHI8Tm9kZT4gYW5jaG9yTm9kZSwgTGVn
YWN5RWRpdGluZ09mZnNldCBvZmZzZXQpCiAgICAgLCBtX2lzTGVnYWN5RWRpdGluZ1Bvc2l0aW9u
KHRydWUpCiB7CiAjaWYgRU5BQkxFKFNIQURPV19ET00pCi0gICAgQVNTRVJUKChtX2FuY2hvck5v
ZGUgJiYgQ29udGV4dEZlYXR1cmVzOjpzaGFkb3dET01FbmFibGVkKG1fYW5jaG9yTm9kZS0+ZG9j
dW1lbnQoKSkpCisgICAgQVNTRVJUKChtX2FuY2hvck5vZGUgJiYgUnVudGltZUVuYWJsZWRGZWF0
dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKQogICAgICAgICAgICB8fCAhbV9hbmNob3JOb2RlIHx8
ICFtX2FuY2hvck5vZGUtPmlzU2hhZG93Um9vdCgpKTsKICNlbHNlCiAgICAgQVNTRVJUKCFtX2Fu
Y2hvck5vZGUgfHwgIW1fYW5jaG9yTm9kZS0+aXNTaGFkb3dSb290KCkpOwpAQCAtOTYsNyArOTYs
NyBAQCBQb3NpdGlvbjo6UG9zaXRpb24oUGFzc1JlZlB0cjxOb2RlPiBhbmNob3JOb2RlLCBBbmNo
b3JUeXBlIGFuY2hvclR5cGUpCiAgICAgLCBtX2lzTGVnYWN5RWRpdGluZ1Bvc2l0aW9uKGZhbHNl
KQogewogI2lmIEVOQUJMRShTSEFET1dfRE9NKQotICAgIEFTU0VSVCgobV9hbmNob3JOb2RlICYm
IENvbnRleHRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZChtX2FuY2hvck5vZGUtPmRvY3VtZW50
KCkpKQorICAgIEFTU0VSVCgobV9hbmNob3JOb2RlICYmIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYWRvd0RPTUVuYWJsZWQoKSkKICAgICAgICAgICAgfHwgIW1fYW5jaG9yTm9kZSB8fCAhbV9h
bmNob3JOb2RlLT5pc1NoYWRvd1Jvb3QoKSk7CiAjZWxzZQogICAgIEFTU0VSVCghbV9hbmNob3JO
b2RlIHx8ICFtX2FuY2hvck5vZGUtPmlzU2hhZG93Um9vdCgpKTsKQEAgLTExNCw3ICsxMTQsNyBA
QCBQb3NpdGlvbjo6UG9zaXRpb24oUGFzc1JlZlB0cjxOb2RlPiBhbmNob3JOb2RlLCBpbnQgb2Zm
c2V0LCBBbmNob3JUeXBlIGFuY2hvclR5cAogICAgICwgbV9pc0xlZ2FjeUVkaXRpbmdQb3NpdGlv
bihmYWxzZSkKIHsKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKLSAgICBBU1NFUlQoKG1fYW5jaG9y
Tm9kZSAmJiBDb250ZXh0RmVhdHVyZXM6OnNoYWRvd0RPTUVuYWJsZWQobV9hbmNob3JOb2RlLT5k
b2N1bWVudCgpKSkKKyAgICBBU1NFUlQoKG1fYW5jaG9yTm9kZSAmJiBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFkb3dET01FbmFibGVkKCkpCiAgICAgICAgICAgIHx8ICFtX2FuY2hvck5vZGUg
fHwgIWVkaXRpbmdJZ25vcmVzQ29udGVudChtX2FuY2hvck5vZGUuZ2V0KCkpIHx8ICFtX2FuY2hv
ck5vZGUtPmlzU2hhZG93Um9vdCgpKTsKICNlbHNlCiAgICAgQVNTRVJUKCFtX2FuY2hvck5vZGUg
fHwgIWVkaXRpbmdJZ25vcmVzQ29udGVudChtX2FuY2hvck5vZGUuZ2V0KCkpIHx8ICFtX2FuY2hv
ck5vZGUtPmlzU2hhZG93Um9vdCgpKTsKQEAgLTg1OCw3ICs4NTgsNyBAQCBDb250YWluZXJOb2Rl
KiBQb3NpdGlvbjo6ZmluZFBhcmVudChjb25zdCBOb2RlKiBub2RlKQogICAgIC8vIEZJWE1FOiBT
ZWUgaHR0cDovL3dlYi51Zy84MjY5NwogCiAjaWYgRU5BQkxFKFNIQURPV19ET00pCi0gICAgaWYg
KENvbnRleHRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZChub2RlLT5kb2N1bWVudCgpKSkKKyAg
ICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKQogICAgICAg
ICByZXR1cm4gbm9kZS0+cGFyZW50Tm9kZSgpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5jcHAKaW5kZXggYWFkMWRmZjZkYzE0OTc3MDRkMzBlOGRiZGYwOTdiN2M0NzI5ZTUzOS4uYWZk
MzQzZmI2NGMxZmQzOTVkMGU3ZTEyYmIwZDdkZTUxMGZjY2JjMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVT
Y29wZS5jcHAKQEAgLTI4LDcgKzI4LDYgQEAKIAogI2luY2x1ZGUgIkNvbXBvc2VkU2hhZG93VHJl
ZVdhbGtlci5oIgogI2luY2x1ZGUgIkNvbnRhaW5lck5vZGUuaCIKLSNpbmNsdWRlICJDb250ZXh0
RmVhdHVyZXMuaCIKICNpbmNsdWRlICJET01TZWxlY3Rpb24uaCIKICNpbmNsdWRlICJET01XaW5k
b3cuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgpAQCAtNDIsNiArNDEsNyBAQAogI2luY2x1ZGUg
IklkVGFyZ2V0T2JzZXJ2ZXJSZWdpc3RyeS5oIgogI2luY2x1ZGUgIkluc2VydGlvblBvaW50Lmgi
CiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIK
ICNpbmNsdWRlICJTaGFkb3dSb290LmgiCiAjaW5jbHVkZSAiVHJlZVNjb3BlQWRvcHRlci5oIgog
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTE1Niw3ICsxNTYsNyBAQCBET01TZWxlY3Rpb24q
IFRyZWVTY29wZTo6Z2V0U2VsZWN0aW9uKCkgY29uc3QKICAgICAvLyBhcyBhIGNvbnRhaW5lci4g
SXQgaXMgbm93IGVuYWJsZWQgb25seSBpZiBydW50aW1lIFNoYWRvdyBET00gZmVhdHVyZSBpcyBl
bmFibGVkLgogICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODI2OTcKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKLSAgICBpZiAoQ29udGV4dEZlYXR1cmVz
OjpzaGFkb3dET01FbmFibGVkKHJvb3ROb2RlKCktPmRvY3VtZW50KCkpKSB7CisgICAgaWYgKFJ1
bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYWRvd0RPTUVuYWJsZWQoKSkgewogICAgICAgICBtX3Nl
bGVjdGlvbiA9IERPTVNlbGVjdGlvbjo6Y3JlYXRlKHRoaXMpOwogICAgICAgICByZXR1cm4gbV9z
ZWxlY3Rpb24uZ2V0KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL21h
a2VfbmFtZXMucGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbAppbmRleCAzNjJi
MDg1MGNmMmMwMWRiZTM4ZjYyMjI5ZjExMzk2ZTdkM2M0YmRmLi4zOGQ4NTk1ZGViMTYwM2ViNTJi
NzUxODE3MjI0MjhjM2Y1MDU5MWQ0IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWFr
ZV9uYW1lcy5wbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbApAQCAtMTg2
LDcgKzE4Niw4IEBAIHN1YiBkZWZhdWx0VGFnUHJvcGVydHlIYXNoCiAgICAgICAgICdtYXBUb1Rh
Z05hbWUnID0+ICcnLAogICAgICAgICAnd3JhcHBlck9ubHlJZk1lZGlhSXNBdmFpbGFibGUnID0+
IDAsCiAgICAgICAgICdjb25kaXRpb25hbCcgPT4gMCwKLSAgICAgICAgJ2NvbnRleHRDb25kaXRp
b25hbCcgPT4gMAorICAgICAgICAnY29udGV4dENvbmRpdGlvbmFsJyA9PiAwLAorICAgICAgICAn
cnVudGltZUNvbmRpdGlvbmFsJyA9PiAwCiAgICAgKTsKIH0KIApAQCAtMzg0LDYgKzM4NSwxNSBA
QCBFTkQKIDsKICAgICB9CiAKKyAgICBteSAkcnVudGltZUNvbmRpdGlvbmFsID0gJGVuYWJsZWRU
YWdzeyR0YWdOYW1lfXtydW50aW1lQ29uZGl0aW9uYWx9OworICAgIGlmICgkcnVudGltZUNvbmRp
dGlvbmFsKSB7CisgICAgICAgIHByaW50IEYgPDxFTkQKKyAgICBpZiAoIVJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OiR7cnVudGltZUNvbmRpdGlvbmFsfUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJu
IDA7CitFTkQKKzsKKyAgICB9CisKICAgICAjIENhbGwgdGhlIGNvbnN0cnVjdG9yIHdpdGggdGhl
IHJpZ2h0IHBhcmFtZXRlcnMuCiAgICAgcHJpbnQgRiAiICAgIHJldHVybiAke2ludGVyZmFjZU5h
bWV9OjpjcmVhdGUoJGNvbnN0cnVjdG9yVGFnTmFtZSwgZG9jdW1lbnQiOwogICAgIHByaW50IEYg
IiwgZm9ybUVsZW1lbnQiIGlmICRlbmFibGVkVGFnc3skdGFnTmFtZX17Y29uc3RydWN0b3JOZWVk
c0Zvcm1FbGVtZW50fTsKQEAgLTgxMSw2ICs4MjEsNyBAQCBwcmludENvbmRpdGlvbmFsRWxlbWVu
dEluY2x1ZGVzKCRGKTsKIHByaW50IEYgPDxFTkQKIAogI2luY2x1ZGUgIkNvbnRleHRGZWF0dXJl
cy5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKIAogI2lmIEVOQUJMRShE
QVNIQk9BUkRfU1VQUE9SVCkgfHwgRU5BQkxFKFZJREVPKQogI2luY2x1ZGUgIkRvY3VtZW50Lmgi
CkBAIC0xMDI4LDYgKzEwMzksMjAgQEAgc3RhdGljIEpTRE9NV3JhcHBlciogY3JlYXRlJHtKU0lu
dGVyZmFjZU5hbWV9V3JhcHBlcihFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmEKIH0KIEVORAog
OworICAgICAgICAgICAgfSBlbHNpZiAoJGVuYWJsZWRUYWdzeyR0YWdOYW1lfXtydW50aW1lQ29u
ZGl0aW9uYWx9KSB7CisgICAgICAgICAgICAgICAgbXkgJHJ1bnRpbWVDb25kaXRpb25hbCA9ICRl
bmFibGVkVGFnc3skdGFnTmFtZX17cnVudGltZUNvbmRpdGlvbmFsfTsKKyAgICAgICAgICAgICAg
ICBwcmludCBGIDw8RU5ECitzdGF0aWMgSlNET01XcmFwcGVyKiBjcmVhdGUke0pTSW50ZXJmYWNl
TmFtZX1XcmFwcGVyKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgUGFzc1JlZlB0cjwkcGFyYW1ldGVyc3tuYW1lc3BhY2V9RWxlbWVudD4gZWxlbWVudCkK
K3sKKyAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OiR7cnVudGltZUNvbmRpdGlvbmFs
fUVuYWJsZWQoKSkgeworICAgICAgICBBU1NFUlQoIWVsZW1lbnQgfHwgZWxlbWVudC0+aXMkcGFy
YW1ldGVyc3tmYWxsYmFja0ludGVyZmFjZU5hbWV9KCkpOworICAgICAgICByZXR1cm4gQ1JFQVRF
X0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgJHBhcmFtZXRlcnN7ZmFsbGJhY2tJbnRl
cmZhY2VOYW1lfSwgZWxlbWVudC5nZXQoKSk7CisgICAgfQorCisgICAgcmV0dXJuIENSRUFURV9E
T01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsICR7SlNJbnRlcmZhY2VOYW1lfSwgZWxlbWVu
dC5nZXQoKSk7Cit9CitFTkQKKzsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAg
ICAgcHJpbnQgRiA8PEVORAogc3RhdGljIEpTRE9NV3JhcHBlciogY3JlYXRlJHtKU0ludGVyZmFj
ZU5hbWV9V3JhcHBlcihFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFBhc3NSZWZQdHI8JHBhcmFtZXRlcnN7bmFtZXNwYWNlfUVsZW1lbnQ+IGVsZW1lbnQp
CkBAIC0xMDYyLDYgKzEwODcsMTcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjcmVh
dGUke0pTSW50ZXJmYWNlTmFtZX1XcmFwcGVyKCRwYXJhbWV0ZXJze25hbWVzcGEKIH0KIEVORAog
OworICAgICAgICAgICAgfSBlbHNpZiAoJGVuYWJsZWRUYWdzeyR0YWdOYW1lfXtydW50aW1lQ29u
ZGl0aW9uYWx9KSB7CisgICAgICAgICAgICAgICAgbXkgJHJ1bnRpbWVDb25kaXRpb25hbCA9ICRl
bmFibGVkVGFnc3skdGFnTmFtZX17cnVudGltZUNvbmRpdGlvbmFsfTsKKyAgICAgICAgICAgICAg
ICBwcmludCBGIDw8RU5ECitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNyZWF0ZSR7SlNJ
bnRlcmZhY2VOYW1lfVdyYXBwZXIoJHBhcmFtZXRlcnN7bmFtZXNwYWNlfUVsZW1lbnQqIGVsZW1l
bnQsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3JlYXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSog
aXNvbGF0ZSkKK3sKKyAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OiR7cnVudGltZUNv
bmRpdGlvbmFsfUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIFY4JHBhcmFtZXRlcnN7ZmFsbGJh
Y2tJbnRlcmZhY2VOYW1lfTo6d3JhcCh0byRwYXJhbWV0ZXJze2ZhbGxiYWNrSW50ZXJmYWNlTmFt
ZX0oZWxlbWVudCksIGNyZWF0aW9uQ29udGV4dCwgaXNvbGF0ZSk7CisgICAgcmV0dXJuIHRvVjgo
c3RhdGljX2Nhc3Q8JHtKU0ludGVyZmFjZU5hbWV9Kj4oZWxlbWVudCksIGNyZWF0aW9uQ29udGV4
dCwgaXNvbGF0ZSk7Cit9CitFTkQKKzsKICAgICAgICAgICAgIH0gZWxzaWYgKCR7SlNJbnRlcmZh
Y2VOYW1lfSBlcSAiSFRNTEVsZW1lbnQiKSB7CiAgICAgICAgICAgICAgICAgcHJpbnQgRiA8PEVO
RAogc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjcmVhdGUke0pTSW50ZXJmYWNlTmFtZX1X
cmFwcGVyKCRwYXJhbWV0ZXJze25hbWVzcGFjZX1FbGVtZW50KiBlbGVtZW50LCB2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCkBAIC0x
MTE4LDYgKzExNTQsNyBAQCBzdWIgcHJpbnRXcmFwcGVyRmFjdG9yeUNwcEZpbGUKICAgICBwcmlu
dCBGIDw8RU5ECiAKICNpbmNsdWRlICJDb250ZXh0RmVhdHVyZXMuaCIKKyNpbmNsdWRlICJSdW50
aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAKICNpZiBFTkFCTEUoVklERU8pCiAjaW5jbHVkZSAiRG9j
dW1lbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVzLmlu
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4KaW5kZXggMzY2MGFiOTQ4ZTA3
ODc4OTc0N2JjYWViZWU1ZDBiNjk4Y2YzNWFmZS4uODVhMWU2MWE1YTk1ODJiMTNlNjM0Mjg5Y2Rj
NTNhMjJjNzZiM2UwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFnTmFt
ZXMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4KQEAgLTMxLDcg
KzMxLDcgQEAgY29kZSBpbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50CiBjb2wgaW50ZXJmYWNlTmFt
ZT1IVE1MVGFibGVDb2xFbGVtZW50CiBjb2xncm91cCBpbnRlcmZhY2VOYW1lPUhUTUxUYWJsZUNv
bEVsZW1lbnQKIGNvbW1hbmQgaW50ZXJmYWNlTmFtZT1IVE1MRWxlbWVudAotY29udGVudCBpbnRl
cmZhY2VOYW1lPUhUTUxDb250ZW50RWxlbWVudCwgY29uZGl0aW9uYWw9U0hBRE9XX0RPTSwgY29u
dGV4dENvbmRpdGlvbmFsPXNoYWRvd0RPTQorY29udGVudCBpbnRlcmZhY2VOYW1lPUhUTUxDb250
ZW50RWxlbWVudCwgY29uZGl0aW9uYWw9U0hBRE9XX0RPTSwgcnVudGltZUNvbmRpdGlvbmFsPXNo
YWRvd0RPTQogd2Via2l0U2hhZG93Q29udGVudCBpbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50LCBu
b0NvbnN0cnVjdG9yCiBkYXRhbGlzdCBpbnRlcmZhY2VOYW1lPUhUTUxEYXRhTGlzdEVsZW1lbnQs
IGNvbmRpdGlvbmFsPURBVEFMSVNUX0VMRU1FTlQKIGRkIGludGVyZmFjZU5hbWU9SFRNTEVsZW1l
bnQKQEAgLTk3LDcgKzk3LDcgQEAgb2wgaW50ZXJmYWNlTmFtZT1IVE1MT0xpc3RFbGVtZW50CiBv
cHRncm91cCBpbnRlcmZhY2VOYW1lPUhUTUxPcHRHcm91cEVsZW1lbnQKIG9wdGlvbgogb3V0cHV0
IGNvbnN0cnVjdG9yTmVlZHNGb3JtRWxlbWVudAotc2hhZG93IGludGVyZmFjZU5hbWU9SFRNTFNo
YWRvd0VsZW1lbnQsIGNvbmRpdGlvbmFsPVNIQURPV19ET00sIGNvbnRleHRDb25kaXRpb25hbD1z
aGFkb3dET00KK3NoYWRvdyBpbnRlcmZhY2VOYW1lPUhUTUxTaGFkb3dFbGVtZW50LCBjb25kaXRp
b25hbD1TSEFET1dfRE9NLCBydW50aW1lQ29uZGl0aW9uYWw9c2hhZG93RE9NCiBwIGludGVyZmFj
ZU5hbWU9SFRNTFBhcmFncmFwaEVsZW1lbnQKIHBhcmFtCiBwbGFpbnRleHQgaW50ZXJmYWNlTmFt
ZT1IVE1MRWxlbWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRN
TENvbnRlbnRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxDb250
ZW50RWxlbWVudC5jcHAKaW5kZXggYjBiZGQ4ODVmNzhlYzY3MGY4ZTc1YzQ4OTMwMTJhNjIxZDk1
NTRkZi4uOTEyY2ZkZjUxYTE2Y2FjZjEzZTljNzc2ZDkwMzA0OThmOWQwNWFkYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuY3BwCkBAIC0y
OSwxMCArMjksMTAgQEAKIAogI2luY2x1ZGUgIkNvbnRlbnREaXN0cmlidXRvci5oIgogI2luY2x1
ZGUgIkNvbnRlbnRTZWxlY3RvclF1ZXJ5LmgiCi0jaW5jbHVkZSAiQ29udGV4dEZlYXR1cmVzLmgi
CiAjaW5jbHVkZSAiRWxlbWVudFNoYWRvdy5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2lu
Y2x1ZGUgIlF1YWxpZmllZE5hbWUuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMu
aD4KIApAQCAtNDMsNyArNDMsNyBAQCB1c2luZyBIVE1MTmFtZXM6OnNlbGVjdEF0dHI7CiBzdGF0
aWMgY29uc3QgUXVhbGlmaWVkTmFtZSYgY29udGVudFRhZ05hbWUoRG9jdW1lbnQqIGRvY3VtZW50
KQogewogI2lmIEVOQUJMRShTSEFET1dfRE9NKQotICAgIGlmICghQ29udGV4dEZlYXR1cmVzOjpz
aGFkb3dET01FbmFibGVkKGRvY3VtZW50KSkKKyAgICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYWRvd0RPTUVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuIEhUTUxOYW1lczo6d2Via2l0
U2hhZG93Q29udGVudFRhZzsKICAgICByZXR1cm4gSFRNTE5hbWVzOjpjb250ZW50VGFnOwogI2Vs
c2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAppbmRleCAwZTEwNGI2OTIwM2JhMTY0ZjBkNWUz
ZmIzMzVkYjI0YzdmMGFiYjQ1Li41YjNhYjJhZjQxYjkwNDAwOTgyOTNmMWM1MzMxYzRhNmEzNTc3
MmM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCkBAIC0zOTIsOSArMzkyLDkgQEAKICAg
ICBhdHRyaWJ1dGUgRW50aXR5Q29uc3RydWN0b3IgRW50aXR5OwogICAgIGF0dHJpYnV0ZSBFbnRp
dHlSZWZlcmVuY2VDb25zdHJ1Y3RvciBFbnRpdHlSZWZlcmVuY2U7CiAgICAgYXR0cmlidXRlIFBy
b2Nlc3NpbmdJbnN0cnVjdGlvbkNvbnN0cnVjdG9yIFByb2Nlc3NpbmdJbnN0cnVjdGlvbjsKLSAg
ICBbQ29uZGl0aW9uYWw9U0hBRE9XX0RPTSwgVjhFbmFibGVkUGVyQ29udGV4dD1zaGFkb3dET01d
IGF0dHJpYnV0ZSBTaGFkb3dSb290Q29uc3RydWN0b3IgV2ViS2l0U2hhZG93Um9vdDsKLSAgICBb
Q29uZGl0aW9uYWw9U0hBRE9XX0RPTSwgVjhFbmFibGVkUGVyQ29udGV4dD1zaGFkb3dET01dIGF0
dHJpYnV0ZSBIVE1MQ29udGVudEVsZW1lbnRDb25zdHJ1Y3RvciBIVE1MQ29udGVudEVsZW1lbnQ7
Ci0gICAgW0NvbmRpdGlvbmFsPVNIQURPV19ET00sIFY4RW5hYmxlZFBlckNvbnRleHQ9c2hhZG93
RE9NXSBhdHRyaWJ1dGUgSFRNTFNoYWRvd0VsZW1lbnRDb25zdHJ1Y3RvciBIVE1MU2hhZG93RWxl
bWVudDsKKyAgICBbQ29uZGl0aW9uYWw9U0hBRE9XX0RPTSwgVjhFbmFibGVkQXRSdW50aW1lPXNo
YWRvd0RPTV0gYXR0cmlidXRlIFNoYWRvd1Jvb3RDb25zdHJ1Y3RvciBXZWJLaXRTaGFkb3dSb290
OworICAgIFtDb25kaXRpb25hbD1TSEFET1dfRE9NLCBWOEVuYWJsZWRBdFJ1bnRpbWU9c2hhZG93
RE9NXSBhdHRyaWJ1dGUgSFRNTENvbnRlbnRFbGVtZW50Q29uc3RydWN0b3IgSFRNTENvbnRlbnRF
bGVtZW50OworICAgIFtDb25kaXRpb25hbD1TSEFET1dfRE9NLCBWOEVuYWJsZWRBdFJ1bnRpbWU9
c2hhZG93RE9NXSBhdHRyaWJ1dGUgSFRNTFNoYWRvd0VsZW1lbnRDb25zdHJ1Y3RvciBIVE1MU2hh
ZG93RWxlbWVudDsKIAogICAgIGF0dHJpYnV0ZSBET01TZWxlY3Rpb25Db25zdHJ1Y3RvciBTZWxl
Y3Rpb247CiAgICAgYXR0cmlidXRlIERPTVdpbmRvd0NvbnN0cnVjdG9yIFdpbmRvdzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0NvbnRleHRGZWF0dXJlc0NsaWVudElt
cGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ29udGV4dEZlYXR1cmVzQ2xpZW50
SW1wbC5jcHAKaW5kZXggODMzYTUwMTZkMDMwMjAxZDRhOTdmY2I1YTcyNDFhMWNiMTQzYmQ4OC4u
ZTU3OTVlZGM0Y2IxOTNhNWJkNGUxYzQ5OTA3MzY4NjFjNzA0MTJmZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ29udGV4dEZlYXR1cmVzQ2xpZW50SW1wbC5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ29udGV4dEZlYXR1cmVzQ2xpZW50SW1wbC5j
cHAKQEAgLTE0MCw3ICsxNDAsNiBAQCBib29sIENvbnRleHRGZWF0dXJlc0NsaWVudEltcGw6OmFz
a0lmSXNFbmFibGVkKERvY3VtZW50KiBkb2N1bWVudCwgQ29udGV4dEZlYXR1cgogICAgICAgICBy
ZXR1cm4gZGVmYXVsdFZhbHVlOwogCiAgICAgc3dpdGNoICh0eXBlKSB7Ci0gICAgY2FzZSBDb250
ZXh0RmVhdHVyZXM6OlNoYWRvd0RPTToKICAgICBjYXNlIENvbnRleHRGZWF0dXJlczo6U3R5bGVT
Y29wZWQ6CiAgICAgICAgIHJldHVybiBtX2NsaWVudC0+YWxsb3dXZWJDb21wb25lbnRzKFdlYkRv
Y3VtZW50KGRvY3VtZW50KSwgZGVmYXVsdFZhbHVlKTsKICAgICBjYXNlIENvbnRleHRGZWF0dXJl
czo6SFRNTE5vdGlmaWNhdGlvbnM6Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>