<?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>118504</bug_id>
          
          <creation_ts>2013-07-09 07:01:14 -0700</creation_ts>
          <short_desc>Introduce isSVGFontElement() and isSVGImageElement(), use them</short_desc>
          <delta_ts>2013-07-10 00:11:56 -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>SVG</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="Gyuyoung Kim">gyuyoung.kim</reporter>
          <assigned_to name="Gyuyoung Kim">gyuyoung.kim</assigned_to>
          <cc>benjamin</cc>
    
    <cc>bw80.lee</cc>
    
    <cc>commit-queue</cc>
    
    <cc>d-r</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>fmalita</cc>
    
    <cc>glenn</cc>
    
    <cc>japhet</cc>
    
    <cc>ossy</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>907101</commentid>
    <comment_count>0</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-09 07:01:14 -0700</bug_when>
    <thetext>Let&apos;s use isFoo() to enhance readibility in svg element classes along with html&apos;s.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907106</commentid>
    <comment_count>1</comment_count>
      <attachid>206317</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-09 07:05:02 -0700</bug_when>
    <thetext>Created attachment 206317
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907259</commentid>
    <comment_count>2</comment_count>
      <attachid>206317</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-07-09 20:29:00 -0700</bug_when>
    <thetext>Comment on attachment 206317
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=206317&amp;action=review

&gt; Source/WebCore/svg/SVGFontElement.h:95
&gt; +    ASSERT_WITH_SECURITY_IMPLICATION(!node || isSVGFontElement(node));

How did that compile with isSVGFontElement() declared underneath?

&gt; Source/WebCore/svg/SVGImageElement.h:94
&gt; +inline bool isSVGImageElement(const Element* node)
&gt; +{
&gt; +    return node-&gt;hasTagName(SVGNames::imageTag);
&gt; +}

Why? Element is a node. This should not be needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907266</commentid>
    <comment_count>3</comment_count>
      <attachid>206365</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-09 21:16:04 -0700</bug_when>
    <thetext>Created attachment 206365
 Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907267</commentid>
    <comment_count>4</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-09 21:19:53 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; Source/WebCore/svg/SVGImageElement.h:94
&gt; &gt; +inline bool isSVGImageElement(const Element* node)
&gt; &gt; +{
&gt; &gt; +    return node-&gt;hasTagName(SVGNames::imageTag);
&gt; &gt; +}
&gt; 
&gt; Why? Element is a node. This should not be needed.

I confused that because some html classes added it. It looks we don&apos;t need to keep it at there as well.

http://trac.webkit.org/browser/trunk/Source/WebCore/html/HTMLAnchorElement.h#L162</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907273</commentid>
    <comment_count>5</comment_count>
      <attachid>206365</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-09 22:32:44 -0700</bug_when>
    <thetext>Comment on attachment 206365
 Patch for landing

Clearing flags on attachment: 206365

Committed r152524: &lt;http://trac.webkit.org/changeset/152524&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907274</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-09 22:32:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907290</commentid>
    <comment_count>7</comment_count>
      <attachid>206365</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-07-10 00:00:16 -0700</bug_when>
    <thetext>Comment on attachment 206365
 Patch for landing

View in context: https://bugs.webkit.org/attachment.cgi?id=206365&amp;action=review

&gt; Source/WebCore/svg/SVGImageElement.cpp:67
&gt; -    ASSERT(hasTagName(SVGNames::imageTag));
&gt; +    ASSERT(isSVGImageElement(SVGNames::imageTag));

It broke the debug builds:

/home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/Source/WebCore/svg/SVGImageElement.cpp: In constructor &apos;WebCore::SVGImageElement::SVGImageElement(const WebCore::QualifiedName&amp;, WebCore::Document*)&apos;:
[1;31m/home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/Source/WebCore/svg/SVGImageElement.cpp:67:44: error: cannot convert &apos;const WebCore::QualifiedName&apos; to &apos;const WebCore::Node*&apos; for argument &apos;1&apos; to &apos;bool WebCore::isSVGImageElement(const WebCore::Node*)&apos;[0m


Could you fix it, please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907291</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-07-10 00:04:57 -0700</bug_when>
    <thetext>Fix already landed in http://trac.webkit.org/changeset/152526 ... but without any reference to this bug/commit and without any comment in this bug report :-/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907292</commentid>
    <comment_count>9</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-10 00:08:17 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Fix already landed in http://trac.webkit.org/changeset/152526 ... but without any reference to this bug/commit and without any comment in this bug report :-/

Sorry for inconvenience about it. I will let him know how to write ChangeLog for unreviewed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907294</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-07-10 00:11:56 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; Fix already landed in http://trac.webkit.org/changeset/152526 ... but without any reference to this bug/commit and without any comment in this bug report :-/
&gt; 
&gt; Sorry for inconvenience about it. I will let him know how to write ChangeLog for unreviewed patch.

Thanks. Not a big problem, but a good changelog and a comment 
in the original bug helps a lot to avoid unnecessary requests :)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206317</attachid>
            <date>2013-07-09 07:05:02 -0700</date>
            <delta_ts>2013-07-09 21:15:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-118504-20130709230248.patch</filename>
            <type>text/plain</type>
            <size>12572</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUyNDkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTIyMmM4NDgzNzQ4MzM5
ZmNkYjNjODEwNWRmZGE3MWZjMzViMThlOC4uMzVhZDgzMTEyMTIxZTdiYzYxOTc2NzFkMGYyNjIy
MzM3NjM1MDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ4IEBACiAyMDEzLTA3LTA5ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKKyAgICAgICAgSW50cm9kdWNl
IGlzU1ZHRm9udEVsZW1lbnQoKSBhbmQgaXNTVkdJbWFnZUVsZW1lbnQoKSwgdXNlIHRoZW0KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODUwNAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIExldCdzIHVzZSBp
c0ZvbygpIHRvIGVuaGFuY2UgcmVhZGliaWxpdHkgaW4gc3ZnIGVsZW1lbnQgY2xhc3NlcyBhbG9u
ZyB3aXRoIGh0bWwncy4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHRoZXJlIGlzIG5vIGJlaGF2
aW9yIGNoYW5nZXMuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250OjpnZXRTVkdGb250QnlJZCk6CisgICAgICAgICog
cmVuZGVyaW5nL0hpdFRlc3RSZXN1bHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SGl0VGVzdFJl
c3VsdDo6YWJzb2x1dGVJbWFnZVVSTCk6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVNb3Rpb25F
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuaW1hdGVNb3Rpb25FbGVtZW50Ojpo
YXNWYWxpZEF0dHJpYnV0ZVR5cGUpOgorICAgICAgICAqIHN2Zy9TVkdFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0VsZW1lbnQ6OnZpZXdwb3J0RWxlbWVudCk6CisgICAgICAgICog
c3ZnL1NWR0ZvbnRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZvbnRFbGVtZW50
OjpTVkdGb250RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR0ZvbnRFbGVtZW50Lmg6CisgICAg
ICAgIChXZWJDb3JlOjp0b1NWR0ZvbnRFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OmlzU1ZH
Rm9udEVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHRm9udEZhY2VFbGVtZW50Ojphc3NvY2lhdGVkRm9udEVsZW1lbnQp
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHRm9udEZhY2VFbGVtZW50OjpyZWJ1aWxkRm9udEZhY2Up
OgorICAgICAgICAqIHN2Zy9TVkdHbHlwaEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHR2x5cGhFbGVtZW50OjppbnZhbGlkYXRlR2x5cGhDYWNoZSk6CisgICAgICAgICogc3ZnL1NW
R0hLZXJuRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdIS2VybkVsZW1lbnQ6Omlu
c2VydGVkSW50byk6CisgICAgICAgIChXZWJDb3JlOjpTVkdIS2VybkVsZW1lbnQ6OnJlbW92ZWRG
cm9tKToKKyAgICAgICAgKiBzdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR0ltYWdlRWxlbWVudDo6U1ZHSW1hZ2VFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZH
SW1hZ2VFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjp0b1NWR0ltYWdlRWxlbWVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjppc1NWR0ltYWdlRWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR0xv
Y2F0YWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1ZpZXdwb3J0RWxlbWVudCk6CisgICAg
ICAgICogc3ZnL1NWR1ZLZXJuRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdWS2Vy
bkVsZW1lbnQ6Omluc2VydGVkSW50byk6CisgICAgICAgIChXZWJDb3JlOjpTVkdWS2VybkVsZW1l
bnQ6OnJlbW92ZWRGcm9tKToKKworMjAxMy0wNy0wOSAgR3l1eW91bmcgS2ltICA8Z3l1eW91bmcu
a2ltQHNhbXN1bmcuY29tPgorCiAgICAgICAgIFVzZSB0b1NWR0ZvbnRFbGVtZW50KCkgaW5zdGVh
ZCBvZiBzdGF0aWNfY2FzdDxTVkdGb250RWxlbWVudCo+CiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg0OTYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZEZvbnQuY3BwCmluZGV4IDk2OWI5NDkxNzAzMjMyMDRjZmQ5ZTA4ODU2YTg3
ZTMzZjY3ZDUwNmYuLjQyNDhhZjRlYmI0NzQ5NDg2OWYwZTNjZjhlMGI4NGEyN2VhMDk1M2YgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHAKQEAgLTE0NSw3ICsx
NDUsNyBAQCBTVkdGb250RWxlbWVudCogQ2FjaGVkRm9udDo6Z2V0U1ZHRm9udEJ5SWQoY29uc3Qg
U3RyaW5nJiBmb250TmFtZSkgY29uc3QKICNpZm5kZWYgTkRFQlVHCiAgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IGxpc3RMZW5ndGg7ICsraSkgewogICAgICAgICBBU1NFUlQobGlzdC0+aXRl
bShpKSk7Ci0gICAgICAgIEFTU0VSVChsaXN0LT5pdGVtKGkpLT5oYXNUYWdOYW1lKFNWR05hbWVz
Ojpmb250VGFnKSk7CisgICAgICAgIEFTU0VSVChpc1NWR0ZvbnRFbGVtZW50KGxpc3QtPml0ZW0o
aSkpKTsKICAgICB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL0hpdFRlc3RSZXN1bHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0hpdFRlc3RS
ZXN1bHQuY3BwCmluZGV4IDhmMmViNzY1YjI5YTk1MTAzZjA3NjcxNWEwZDVjOThlNjM4YjkxZDUu
LjE0ZDg5OTRmZDQ0OTliMmNjNzdkY2JkMGQ2ZjgzYTdjYzhjYjFhNGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9IaXRUZXN0UmVzdWx0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvSGl0VGVzdFJlc3VsdC5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNs
dWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRl
ICJTVkdJbWFnZUVsZW1lbnQuaCIKICNpbmNsdWRlICJTVkdOYW1lcy5oIgogI2luY2x1ZGUgIlhM
aW5rTmFtZXMuaCIKICNlbmRpZgpAQCAtMzIxLDcgKzMyMiw3IEBAIEtVUkwgSGl0VGVzdFJlc3Vs
dDo6YWJzb2x1dGVJbWFnZVVSTCgpIGNvbnN0CiAgICAgICAgIHx8IGlzSFRNTElucHV0RWxlbWVu
dChtX2lubmVyTm9uU2hhcmVkTm9kZS5nZXQoKSkKICAgICAgICAgfHwgbV9pbm5lck5vblNoYXJl
ZE5vZGUtPmhhc1RhZ05hbWUob2JqZWN0VGFnKQogI2lmIEVOQUJMRShTVkcpCi0gICAgICAgIHx8
IG1faW5uZXJOb25TaGFyZWROb2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRhZykKKyAg
ICAgICAgfHwgaXNTVkdJbWFnZUVsZW1lbnQobV9pbm5lck5vblNoYXJlZE5vZGUuZ2V0KCkpCiAj
ZW5kaWYKICAgICAgICApIHsKICAgICAgICAgRWxlbWVudCogZWxlbWVudCA9IHRvRWxlbWVudCht
X2lubmVyTm9uU2hhcmVkTm9kZS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Fu
aW1hdGVNb3Rpb25FbGVtZW50LmNwcAppbmRleCAyMjQwYjIyZDkyN2IzNjRmYjA1ZDhhZjJjOWIx
ZDRhMThiNjE4OWJiLi5hYmM0NWVjY2E5ODgwZmMzMzExMzJkOTFlYmM3ZDMyNmVkYWVkYTU5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlTW90aW9uRWxlbWVudC5jcHAKQEAg
LTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJSZW5k
ZXJTVkdSZXNvdXJjZS5oIgogI2luY2x1ZGUgIlNWR0VsZW1lbnRJbnN0YW5jZS5oIgorI2luY2x1
ZGUgIlNWR0ltYWdlRWxlbWVudC5oIgogI2luY2x1ZGUgIlNWR01QYXRoRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIlNWR05hbWVzLmgiCiAjaW5jbHVkZSAiU1ZHUGFyc2VyVXRpbGl0aWVzLmgiCkBAIC02
OSw3ICs3MCw3IEBAIGJvb2wgU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQ6Omhhc1ZhbGlkQXR0cmli
dXRlVHlwZSgpCiAgICAgaWYgKHRhcmdldEVsZW1lbnQtPmhhc1RhZ05hbWUoZ1RhZykKICAgICAg
ICAgfHwgdGFyZ2V0RWxlbWVudC0+aGFzVGFnTmFtZShkZWZzVGFnKQogICAgICAgICB8fCB0YXJn
ZXRFbGVtZW50LT5oYXNUYWdOYW1lKHVzZVRhZykKLSAgICAgICAgfHwgdGFyZ2V0RWxlbWVudC0+
aGFzVGFnTmFtZShTVkdOYW1lczo6aW1hZ2VUYWcpCisgICAgICAgIHx8IGlzU1ZHSW1hZ2VFbGVt
ZW50KHRhcmdldEVsZW1lbnQpCiAgICAgICAgIHx8IHRhcmdldEVsZW1lbnQtPmhhc1RhZ05hbWUo
c3dpdGNoVGFnKQogICAgICAgICB8fCB0YXJnZXRFbGVtZW50LT5oYXNUYWdOYW1lKHBhdGhUYWcp
CiAgICAgICAgIHx8IHRhcmdldEVsZW1lbnQtPmhhc1RhZ05hbWUocmVjdFRhZykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdFbGVtZW50LmNwcAppbmRleCA3NTJmMDM4NmU5MGRjNDUzMzFlMjY3NDI0MDZlODIxNmZi
NzkyZjkyLi4yMWRhYWNmMzBhZDgxODdlN2ZlNDc1OGNmZWRlMGFjN2YzNmUyYjU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0VsZW1lbnQuY3BwCkBAIC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiU1ZHRWxl
bWVudEluc3RhbmNlLmgiCiAjaW5jbHVkZSAiU1ZHRWxlbWVudFJhcmVEYXRhLmgiCiAjaW5jbHVk
ZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHSW1hZ2VFbGVtZW50LmgiCiAj
aW5jbHVkZSAiU1ZHTmFtZXMuaCIKICNpbmNsdWRlICJTVkdTVkdFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgpAQCAtMjA2LDcgKzIwNyw3IEBAIFNWR0VsZW1lbnQq
IFNWR0VsZW1lbnQ6OnZpZXdwb3J0RWxlbWVudCgpIGNvbnN0CiAgICAgLy8gdG8gZGV0ZXJtaW5l
IHRoZSAib3ZlcmZsb3ciIHByb3BlcnR5LiA8dXNlPiBvbiA8c3ltYm9sPiB3b3VsZG4ndCB3b3Jr
IG90aGVyd2hpc2UuCiAgICAgQ29udGFpbmVyTm9kZSogbiA9IHBhcmVudE9yU2hhZG93SG9zdE5v
ZGUoKTsKICAgICB3aGlsZSAobikgewotICAgICAgICBpZiAobi0+aGFzVGFnTmFtZShTVkdOYW1l
czo6c3ZnVGFnKSB8fCBuLT5oYXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRhZykgfHwgbi0+aGFz
VGFnTmFtZShTVkdOYW1lczo6c3ltYm9sVGFnKSkKKyAgICAgICAgaWYgKG4tPmhhc1RhZ05hbWUo
U1ZHTmFtZXM6OnN2Z1RhZykgfHwgaXNTVkdJbWFnZUVsZW1lbnQobikgfHwgbi0+aGFzVGFnTmFt
ZShTVkdOYW1lczo6c3ltYm9sVGFnKSkKICAgICAgICAgICAgIHJldHVybiB0b1NWR0VsZW1lbnQo
bik7CiAKICAgICAgICAgbiA9IG4tPnBhcmVudE9yU2hhZG93SG9zdE5vZGUoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0ZvbnRFbGVtZW50LmgKaW5kZXggMTU4NWYyNTVlMjc4NmUxNTAwMmFkYWFlNjc5MjI2
Mjc3ODY0YWE0YS4uYWY1MWViZTA4MzQ5NWY0ZWYzN2Q2M2MwMjg2OGUyMTVhZmZkNWVhNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKQEAgLTkyLDEwICs5MiwxNSBAQCBwcml2YXRl
OgogCiBpbmxpbmUgU1ZHRm9udEVsZW1lbnQqIHRvU1ZHRm9udEVsZW1lbnQoTm9kZSogbm9kZSkK
IHsKLSAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTighbm9kZSB8fCBub2RlLT5o
YXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSk7CisgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlf
SU1QTElDQVRJT04oIW5vZGUgfHwgaXNTVkdGb250RWxlbWVudChub2RlKSk7CiAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PFNWR0ZvbnRFbGVtZW50Kj4obm9kZSk7CiB9CiAKK2lubGluZSBib29sIGlz
U1ZHRm9udEVsZW1lbnQoY29uc3QgTm9kZSogbm9kZSkKK3sKKyAgICByZXR1cm4gbm9kZS0+aGFz
VGFnTmFtZShTVkdOYW1lczo6Zm9udFRhZyk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IAogI2VuZGlmIC8vIEVOQUJMRShTVkdfRk9OVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHRm9udEZhY2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250
RmFjZUVsZW1lbnQuY3BwCmluZGV4IGU4YjJmZDI4ZjJkYWY4Y2UwZWNmNmEzZTRhNWZiMGJjOTVl
NWQxYmEuLjczMDM5MTgzYjA1MjYwYjRhZTc1ZGFkNzU2MGIzNTdlN2EyNjk1ZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwCkBAIC0yNjUsNyArMjY1LDcgQEAg
U3RyaW5nIFNWR0ZvbnRGYWNlRWxlbWVudDo6Zm9udEZhbWlseSgpIGNvbnN0CiBTVkdGb250RWxl
bWVudCogU1ZHRm9udEZhY2VFbGVtZW50Ojphc3NvY2lhdGVkRm9udEVsZW1lbnQoKSBjb25zdAog
ewogICAgIEFTU0VSVChwYXJlbnROb2RlKCkgPT0gbV9mb250RWxlbWVudCk7Ci0gICAgQVNTRVJU
KCFwYXJlbnROb2RlKCkgfHwgcGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250
VGFnKSk7CisgICAgQVNTRVJUKCFwYXJlbnROb2RlKCkgfHwgaXNTVkdGb250RWxlbWVudChwYXJl
bnROb2RlKCkpKTsKICAgICByZXR1cm4gbV9mb250RWxlbWVudDsKIH0KIApAQCAtMjg0LDcgKzI4
NCw3IEBAIHZvaWQgU1ZHRm9udEZhY2VFbGVtZW50OjpyZWJ1aWxkRm9udEZhY2UoKQogICAgICAg
ICAgICAgc3JjRWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0ZvbnRGYWNlU3JjRWxlbWVudCo+KGNo
aWxkKTsKICAgICB9CiAKLSAgICBib29sIGRlc2NyaWJlc1BhcmVudEZvbnQgPSBwYXJlbnROb2Rl
KCktPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmZvbnRUYWcpOworICAgIGJvb2wgZGVzY3JpYmVzUGFy
ZW50Rm9udCA9IGlzU1ZHRm9udEVsZW1lbnQocGFyZW50Tm9kZSgpKTsKICAgICBSZWZQdHI8Q1NT
VmFsdWVMaXN0PiBsaXN0OwogCiAgICAgaWYgKGRlc2NyaWJlc1BhcmVudEZvbnQpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlwaEVsZW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5jcHAKaW5kZXggMmIxMTBhOTcyZmFlM2RhNDM2NjU2
ZGY0MGI5NzI4NmNjZmU4ZDc5Ni4uODNkMDUzYmMzYzY0YTFiYjc2NzBlMTUzYmQwZWM1YjBmZWQy
YzVmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5jcHAKQEAgLTQ3LDcgKzQ3
LDcgQEAgUGFzc1JlZlB0cjxTVkdHbHlwaEVsZW1lbnQ+IFNWR0dseXBoRWxlbWVudDo6Y3JlYXRl
KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUKIHZvaWQgU1ZHR2x5cGhFbGVtZW50OjppbnZh
bGlkYXRlR2x5cGhDYWNoZSgpCiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9udE5vZGUgPSBwYXJl
bnROb2RlKCk7Ci0gICAgaWYgKGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNUYWdOYW1lKFNWR05h
bWVzOjpmb250VGFnKSkKKyAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250RWxlbWVudChmb250
Tm9kZSkpCiAgICAgICAgIHRvU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5pbnZhbGlkYXRlR2x5
cGhDYWNoZSgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSEtlcm5F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdIS2VybkVsZW1lbnQuY3BwCmluZGV4
IDM5ODY3M2QzMTE2NzllZmMwODg3ZWMxNzc2MDM2YmM0NDBiZWY5OTguLjkxYzExNTNkYWVmZWNl
MTNhZTdhOTkwZDk4YmFlY2I4N2Q5ZjE0NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdIS2VybkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdIS2VybkVs
ZW1lbnQuY3BwCkBAIC00NCw3ICs0NCw3IEBAIFBhc3NSZWZQdHI8U1ZHSEtlcm5FbGVtZW50PiBT
VkdIS2VybkVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lCiBOb2Rl
OjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IFNWR0hLZXJuRWxlbWVudDo6aW5zZXJ0ZWRJ
bnRvKENvbnRhaW5lck5vZGUqIHJvb3RQYXJlbnQpCiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9u
dE5vZGUgPSBwYXJlbnROb2RlKCk7Ci0gICAgaWYgKGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNU
YWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSkKKyAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250
RWxlbWVudChmb250Tm9kZSkpCiAgICAgICAgIHRvU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5p
bnZhbGlkYXRlR2x5cGhDYWNoZSgpOwogCiAgICAgcmV0dXJuIFNWR0VsZW1lbnQ6Omluc2VydGVk
SW50byhyb290UGFyZW50KTsKQEAgLTUzLDcgKzUzLDcgQEAgTm9kZTo6SW5zZXJ0aW9uTm90aWZp
Y2F0aW9uUmVxdWVzdCBTVkdIS2VybkVsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2Rl
Kgogdm9pZCBTVkdIS2VybkVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIHJvb3RQ
YXJlbnQpCiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9udE5vZGUgPSBwYXJlbnROb2RlKCk7Ci0g
ICAgaWYgKGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFn
KSkKKyAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250RWxlbWVudChmb250Tm9kZSkpCiAgICAg
ICAgIHRvU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5pbnZhbGlkYXRlR2x5cGhDYWNoZSgpOwog
CiAgICAgU1ZHRWxlbWVudDo6cmVtb3ZlZEZyb20ocm9vdFBhcmVudCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDNiYmZmZTNhNGY1NWYxNjMxZTUwMDAzMzY4YjI0
ODY1ZDY0YzNjZTIuLjc0NDViYmJhZTUxMGNlMWFiM2NkY2Y4MmJmYmZmYTVjYmFjNWJkOTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCkBAIC02NCw3ICs2NCw3IEBAIGlu
bGluZSBTVkdJbWFnZUVsZW1lbnQ6OlNWR0ltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1l
JiB0YWdOYW1lLCBEb2N1bWVudCoKICAgICAsIG1faGVpZ2h0KExlbmd0aE1vZGVIZWlnaHQpCiAg
ICAgLCBtX2ltYWdlTG9hZGVyKHRoaXMpCiB7Ci0gICAgQVNTRVJUKGhhc1RhZ05hbWUoU1ZHTmFt
ZXM6OmltYWdlVGFnKSk7CisgICAgQVNTRVJUKGlzU1ZHSW1hZ2VFbGVtZW50KFNWR05hbWVzOjpp
bWFnZVRhZykpOwogICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9yU1ZHSW1hZ2VFbGVt
ZW50KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAppbmRleCBjNGU1NWNh
YWFmOTM1ZTMxZjY4M2Q0NGFhYTk1NzU4NTljYjE4M2IzLi44OTM1NzgzYzYzYTk5ZWVhZGY3Njlk
OWI0MThjNWY0MmIyZjhlM2JhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1h
Z2VFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5oCkBA
IC03OSwxMCArNzksMjAgQEAgcHJpdmF0ZToKIAogaW5saW5lIFNWR0ltYWdlRWxlbWVudCogdG9T
VkdJbWFnZUVsZW1lbnQoTm9kZSogbm9kZSkKIHsKLSAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9J
TVBMSUNBVElPTighbm9kZSB8fCBub2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRhZykp
OworICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCFub2RlIHx8IGlzU1ZHSW1h
Z2VFbGVtZW50KG5vZGUpKTsKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8U1ZHSW1hZ2VFbGVtZW50
Kj4obm9kZSk7CiB9CiAKK2lubGluZSBib29sIGlzU1ZHSW1hZ2VFbGVtZW50KGNvbnN0IE5vZGUq
IG5vZGUpCit7CisgICAgcmV0dXJuIG5vZGUtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmltYWdlVGFn
KTsKK30KKworaW5saW5lIGJvb2wgaXNTVkdJbWFnZUVsZW1lbnQoY29uc3QgRWxlbWVudCogbm9k
ZSkKK3sKKyAgICByZXR1cm4gbm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6aW1hZ2VUYWcpOwor
fQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xvY2F0YWJsZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHTG9jYXRhYmxlLmNwcAppbmRleCAwZmEyM2MwM2U2YTYwODA2NjllNmQwZjE4
YzYzZmMyN2ZiZmIxYWI2Li4wMDZkNDVkYjU2ZTZkYzVmNDk1NDBhMGViN2FmMTg4NmIyZWE5NGY4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTG9jYXRhYmxlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHTG9jYXRhYmxlLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2lu
Y2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR0V4Y2VwdGlvbi5oIgogI2luY2x1
ZGUgIlNWR0dyYXBoaWNzRWxlbWVudC5oIgorI2luY2x1ZGUgIlNWR0ltYWdlRWxlbWVudC5oIgog
I2luY2x1ZGUgIlNWR05hbWVzLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM3LDcgKzM4
LDcgQEAgc3RhdGljIGJvb2wgaXNWaWV3cG9ydEVsZW1lbnQoTm9kZSogbm9kZSkKICAgICByZXR1
cm4gKG5vZGUtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnN2Z1RhZykKICAgICAgICAgfHwgbm9kZS0+
aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9sVGFnKQogICAgICAgICB8fCBub2RlLT5oYXNUYWdO
YW1lKFNWR05hbWVzOjpmb3JlaWduT2JqZWN0VGFnKQotICAgICAgICB8fCBub2RlLT5oYXNUYWdO
YW1lKFNWR05hbWVzOjppbWFnZVRhZykpOworICAgICAgICB8fCBpc1NWR0ltYWdlRWxlbWVudChu
b2RlKSk7CiB9CiAKIFNWR0VsZW1lbnQqIFNWR0xvY2F0YWJsZTo6bmVhcmVzdFZpZXdwb3J0RWxl
bWVudChjb25zdCBTVkdFbGVtZW50KiBlbGVtZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR1ZLZXJuRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVktlcm5F
bGVtZW50LmNwcAppbmRleCA3ODVhMjI0ZTY4NGM5NTFmMDI3NzRhOWE3MGFlY2FiZjllZmQxY2Ix
Li5hMWRjYjk1NmMzOTcyMDMzNGRlMDAxMTcwOWRiNmIwZWE2M2VlYzYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHVktlcm5FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHVktlcm5FbGVtZW50LmNwcApAQCAtNDMsNyArNDMsNyBAQCBOb2RlOjpJbnNlcnRp
b25Ob3RpZmljYXRpb25SZXF1ZXN0IFNWR1ZLZXJuRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRh
aW5lck5vZGUqCiB7CiAgICAgaWYgKHJvb3RQYXJlbnQtPmluRG9jdW1lbnQoKSkgewogICAgICAg
ICBDb250YWluZXJOb2RlKiBmb250Tm9kZSA9IHBhcmVudE5vZGUoKTsKLSAgICAgICAgaWYgKGZv
bnROb2RlICYmIGZvbnROb2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSkKKyAgICAg
ICAgaWYgKGZvbnROb2RlICYmIGlzU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpKQogICAgICAgICAg
ICAgdG9TVkdGb250RWxlbWVudChmb250Tm9kZSktPmludmFsaWRhdGVHbHlwaENhY2hlKCk7CiAg
ICAgfQogCkBAIC01Myw3ICs1Myw3IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlvblJlcXVl
c3QgU1ZHVktlcm5FbGVtZW50OjppbnNlcnRlZEludG8oQ29udGFpbmVyTm9kZSoKIHZvaWQgU1ZH
Vktlcm5FbGVtZW50OjpyZW1vdmVkRnJvbShDb250YWluZXJOb2RlKiByb290UGFyZW50KQogewog
ICAgIENvbnRhaW5lck5vZGUqIGZvbnROb2RlID0gcGFyZW50Tm9kZSgpOwotICAgIGlmIChmb250
Tm9kZSAmJiBmb250Tm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6Zm9udFRhZykpCisgICAgaWYg
KGZvbnROb2RlICYmIGlzU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpKQogICAgICAgICB0b1NWR0Zv
bnRFbGVtZW50KGZvbnROb2RlKS0+aW52YWxpZGF0ZUdseXBoQ2FjaGUoKTsKIAogICAgIFNWR0Vs
ZW1lbnQ6OnJlbW92ZWRGcm9tKHJvb3RQYXJlbnQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206365</attachid>
            <date>2013-07-09 21:16:04 -0700</date>
            <delta_ts>2013-07-10 00:00:16 -0700</delta_ts>
            <desc> Patch for landing</desc>
            <filename>bug-118504-20130710131350.patch</filename>
            <type>text/plain</type>
            <size>12349</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUyNTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTcwOGI2YzZkNzBiZGFh
MTBkODRiMmQyNmIzMWZjMTA4NzAyZDNkMi4uZTU5NjgyZTdmNjY5OWQxZWIxNDkxMjcyNGRmOTNm
YWU5Mzc3MmIyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEzLTA3LTA5ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgSW50cm9kdWNl
IGlzU1ZHRm9udEVsZW1lbnQoKSBhbmQgaXNTVkdJbWFnZUVsZW1lbnQoKSwgdXNlIHRoZW0KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODUwNAorCisg
ICAgICAgIFJldmlld2VkIGJ5IEJlbmphbWluIFBvdWxhaW4uCisKKyAgICAgICAgTGV0J3MgdXNl
IGlzRm9vKCkgdG8gZW5oYW5jZSByZWFkaWJpbGl0eSBpbiBzdmcgZWxlbWVudCBjbGFzc2VzIGFs
b25nIHdpdGggaHRtbCdzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgdGhlcmUgaXMgbm8gYmVo
YXZpb3IgY2hhbmdlcy4KKworICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZEZvbnQ6OmdldFNWR0ZvbnRCeUlkKToKKyAgICAgICAg
KiByZW5kZXJpbmcvSGl0VGVzdFJlc3VsdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXRUZXN0
UmVzdWx0OjphYnNvbHV0ZUltYWdlVVJMKToKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0ZU1vdGlv
bkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQ6
Omhhc1ZhbGlkQXR0cmlidXRlVHlwZSk6CisgICAgICAgICogc3ZnL1NWR0VsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHRWxlbWVudDo6dmlld3BvcnRFbGVtZW50KToKKyAgICAgICAg
KiBzdmcvU1ZHRm9udEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRm9udEVsZW1l
bnQ6OlNWR0ZvbnRFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHRm9udEVsZW1lbnQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvU1ZHRm9udEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6aXNT
VkdGb250RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR0ZvbnRGYWNlRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdGb250RmFjZUVsZW1lbnQ6OmFzc29jaWF0ZWRGb250RWxlbWVu
dCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb250RmFjZUVsZW1lbnQ6OnJlYnVpbGRGb250RmFj
ZSk6CisgICAgICAgICogc3ZnL1NWR0dseXBoRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdHbHlwaEVsZW1lbnQ6OmludmFsaWRhdGVHbHlwaENhY2hlKToKKyAgICAgICAgKiBzdmcv
U1ZHSEtlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0hLZXJuRWxlbWVudDo6
aW5zZXJ0ZWRJbnRvKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0hLZXJuRWxlbWVudDo6cmVtb3Zl
ZEZyb20pOgorICAgICAgICAqIHN2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U1ZHSW1hZ2VFbGVtZW50OjpTVkdJbWFnZUVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9T
VkdJbWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OnRvU1ZHSW1hZ2VFbGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OmlzU1ZHSW1hZ2VFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZH
TG9jYXRhYmxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmlld3BvcnRFbGVtZW50KToKKyAg
ICAgICAgKiBzdmcvU1ZHVktlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1ZL
ZXJuRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1ZLZXJuRWxl
bWVudDo6cmVtb3ZlZEZyb20pOgorCiAyMDEzLTA3LTA5ICBSeXVhbiBDaG9pICA8cnl1YW4uY2hv
aUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBBZGQgZXdrX3ZpZXdfZGV2aWNlX3BpeGVs
X3JhdGlvX3NldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZEZvbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCmlu
ZGV4IDk2OWI5NDkxNzAzMjMyMDRjZmQ5ZTA4ODU2YTg3ZTMzZjY3ZDUwNmYuLjQyNDhhZjRlYmI0
NzQ5NDg2OWYwZTNjZjhlMGI4NGEyN2VhMDk1M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udC5jcHAKQEAgLTE0NSw3ICsxNDUsNyBAQCBTVkdGb250RWxlbWVudCog
Q2FjaGVkRm9udDo6Z2V0U1ZHRm9udEJ5SWQoY29uc3QgU3RyaW5nJiBmb250TmFtZSkgY29uc3QK
ICNpZm5kZWYgTkRFQlVHCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGxpc3RMZW5ndGg7
ICsraSkgewogICAgICAgICBBU1NFUlQobGlzdC0+aXRlbShpKSk7Ci0gICAgICAgIEFTU0VSVChs
aXN0LT5pdGVtKGkpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSk7CisgICAgICAgIEFT
U0VSVChpc1NWR0ZvbnRFbGVtZW50KGxpc3QtPml0ZW0oaSkpKTsKICAgICB9CiAjZW5kaWYKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0hpdFRlc3RSZXN1bHQuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0hpdFRlc3RSZXN1bHQuY3BwCmluZGV4IDhmMmViNzY1
YjI5YTk1MTAzZjA3NjcxNWEwZDVjOThlNjM4YjkxZDUuLjE0ZDg5OTRmZDQ0OTliMmNjNzdkY2Jk
MGQ2ZjgzYTdjYzhjYjFhNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9I
aXRUZXN0UmVzdWx0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSGl0VGVzdFJl
c3VsdC5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRv
ci5oIgogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJTVkdJbWFnZUVsZW1lbnQuaCIKICNp
bmNsdWRlICJTVkdOYW1lcy5oIgogI2luY2x1ZGUgIlhMaW5rTmFtZXMuaCIKICNlbmRpZgpAQCAt
MzIxLDcgKzMyMiw3IEBAIEtVUkwgSGl0VGVzdFJlc3VsdDo6YWJzb2x1dGVJbWFnZVVSTCgpIGNv
bnN0CiAgICAgICAgIHx8IGlzSFRNTElucHV0RWxlbWVudChtX2lubmVyTm9uU2hhcmVkTm9kZS5n
ZXQoKSkKICAgICAgICAgfHwgbV9pbm5lck5vblNoYXJlZE5vZGUtPmhhc1RhZ05hbWUob2JqZWN0
VGFnKQogI2lmIEVOQUJMRShTVkcpCi0gICAgICAgIHx8IG1faW5uZXJOb25TaGFyZWROb2RlLT5o
YXNUYWdOYW1lKFNWR05hbWVzOjppbWFnZVRhZykKKyAgICAgICAgfHwgaXNTVkdJbWFnZUVsZW1l
bnQobV9pbm5lck5vblNoYXJlZE5vZGUuZ2V0KCkpCiAjZW5kaWYKICAgICAgICApIHsKICAgICAg
ICAgRWxlbWVudCogZWxlbWVudCA9IHRvRWxlbWVudChtX2lubmVyTm9uU2hhcmVkTm9kZS5nZXQo
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZU1vdGlvbkVsZW1l
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmNwcApp
bmRleCAyMjQwYjIyZDkyN2IzNjRmYjA1ZDhhZjJjOWIxZDRhMThiNjE4OWJiLi5hYmM0NWVjY2E5
ODgwZmMzMzExMzJkOTFlYmM3ZDMyNmVkYWVkYTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdBbmltYXRlTW90aW9uRWxlbWVudC5jcHAKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRl
ICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJTVkdSZXNvdXJjZS5oIgogI2luY2x1
ZGUgIlNWR0VsZW1lbnRJbnN0YW5jZS5oIgorI2luY2x1ZGUgIlNWR0ltYWdlRWxlbWVudC5oIgog
I2luY2x1ZGUgIlNWR01QYXRoRWxlbWVudC5oIgogI2luY2x1ZGUgIlNWR05hbWVzLmgiCiAjaW5j
bHVkZSAiU1ZHUGFyc2VyVXRpbGl0aWVzLmgiCkBAIC02OSw3ICs3MCw3IEBAIGJvb2wgU1ZHQW5p
bWF0ZU1vdGlvbkVsZW1lbnQ6Omhhc1ZhbGlkQXR0cmlidXRlVHlwZSgpCiAgICAgaWYgKHRhcmdl
dEVsZW1lbnQtPmhhc1RhZ05hbWUoZ1RhZykKICAgICAgICAgfHwgdGFyZ2V0RWxlbWVudC0+aGFz
VGFnTmFtZShkZWZzVGFnKQogICAgICAgICB8fCB0YXJnZXRFbGVtZW50LT5oYXNUYWdOYW1lKHVz
ZVRhZykKLSAgICAgICAgfHwgdGFyZ2V0RWxlbWVudC0+aGFzVGFnTmFtZShTVkdOYW1lczo6aW1h
Z2VUYWcpCisgICAgICAgIHx8IGlzU1ZHSW1hZ2VFbGVtZW50KHRhcmdldEVsZW1lbnQpCiAgICAg
ICAgIHx8IHRhcmdldEVsZW1lbnQtPmhhc1RhZ05hbWUoc3dpdGNoVGFnKQogICAgICAgICB8fCB0
YXJnZXRFbGVtZW50LT5oYXNUYWdOYW1lKHBhdGhUYWcpCiAgICAgICAgIHx8IHRhcmdldEVsZW1l
bnQtPmhhc1RhZ05hbWUocmVjdFRhZykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAppbmRleCA3
NTJmMDM4NmU5MGRjNDUzMzFlMjY3NDI0MDZlODIxNmZiNzkyZjkyLi4yMWRhYWNmMzBhZDgxODdl
N2ZlNDc1OGNmZWRlMGFjN2YzNmUyYjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiU1ZHRWxlbWVudEluc3RhbmNlLmgiCiAjaW5jbHVk
ZSAiU1ZHRWxlbWVudFJhcmVEYXRhLmgiCiAjaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50Lmgi
CisjaW5jbHVkZSAiU1ZHSW1hZ2VFbGVtZW50LmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKICNp
bmNsdWRlICJTVkdTVkdFbGVtZW50LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5o
IgpAQCAtMjA2LDcgKzIwNyw3IEBAIFNWR0VsZW1lbnQqIFNWR0VsZW1lbnQ6OnZpZXdwb3J0RWxl
bWVudCgpIGNvbnN0CiAgICAgLy8gdG8gZGV0ZXJtaW5lIHRoZSAib3ZlcmZsb3ciIHByb3BlcnR5
LiA8dXNlPiBvbiA8c3ltYm9sPiB3b3VsZG4ndCB3b3JrIG90aGVyd2hpc2UuCiAgICAgQ29udGFp
bmVyTm9kZSogbiA9IHBhcmVudE9yU2hhZG93SG9zdE5vZGUoKTsKICAgICB3aGlsZSAobikgewot
ICAgICAgICBpZiAobi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ZnVGFnKSB8fCBuLT5oYXNUYWdO
YW1lKFNWR05hbWVzOjppbWFnZVRhZykgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9s
VGFnKSkKKyAgICAgICAgaWYgKG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnN2Z1RhZykgfHwgaXNT
VkdJbWFnZUVsZW1lbnQobikgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9sVGFnKSkK
ICAgICAgICAgICAgIHJldHVybiB0b1NWR0VsZW1lbnQobik7CiAKICAgICAgICAgbiA9IG4tPnBh
cmVudE9yU2hhZG93SG9zdE5vZGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdGb250RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKaW5k
ZXggMTU4NWYyNTVlMjc4NmUxNTAwMmFkYWFlNjc5MjI2Mjc3ODY0YWE0YS4uZWNhMTJjMzkyYzUx
ZTE0YTRlODhlNDkzOTRjMzA1OGVlNjY2NmFkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0ZvbnRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVt
ZW50LmgKQEAgLTkwLDkgKzkwLDE0IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2lzR2x5cGhDYWNo
ZVZhbGlkOwogfTsKIAoraW5saW5lIGJvb2wgaXNTVkdGb250RWxlbWVudChjb25zdCBOb2RlKiBu
b2RlKQoreworICAgIHJldHVybiBub2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKTsK
K30KKwogaW5saW5lIFNWR0ZvbnRFbGVtZW50KiB0b1NWR0ZvbnRFbGVtZW50KE5vZGUqIG5vZGUp
CiB7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oIW5vZGUgfHwgbm9kZS0+
aGFzVGFnTmFtZShTVkdOYW1lczo6Zm9udFRhZykpOworICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZ
X0lNUExJQ0FUSU9OKCFub2RlIHx8IGlzU1ZHRm9udEVsZW1lbnQobm9kZSkpOwogICAgIHJldHVy
biBzdGF0aWNfY2FzdDxTVkdGb250RWxlbWVudCo+KG5vZGUpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwCmluZGV4IGU4YjJmZDI4ZjJkYWY4Y2UwZWNmNmEz
ZTRhNWZiMGJjOTVlNWQxYmEuLjczMDM5MTgzYjA1MjYwYjRhZTc1ZGFkNzU2MGIzNTdlN2EyNjk1
ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwCkBAIC0yNjUs
NyArMjY1LDcgQEAgU3RyaW5nIFNWR0ZvbnRGYWNlRWxlbWVudDo6Zm9udEZhbWlseSgpIGNvbnN0
CiBTVkdGb250RWxlbWVudCogU1ZHRm9udEZhY2VFbGVtZW50Ojphc3NvY2lhdGVkRm9udEVsZW1l
bnQoKSBjb25zdAogewogICAgIEFTU0VSVChwYXJlbnROb2RlKCkgPT0gbV9mb250RWxlbWVudCk7
Ci0gICAgQVNTRVJUKCFwYXJlbnROb2RlKCkgfHwgcGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNW
R05hbWVzOjpmb250VGFnKSk7CisgICAgQVNTRVJUKCFwYXJlbnROb2RlKCkgfHwgaXNTVkdGb250
RWxlbWVudChwYXJlbnROb2RlKCkpKTsKICAgICByZXR1cm4gbV9mb250RWxlbWVudDsKIH0KIApA
QCAtMjg0LDcgKzI4NCw3IEBAIHZvaWQgU1ZHRm9udEZhY2VFbGVtZW50OjpyZWJ1aWxkRm9udEZh
Y2UoKQogICAgICAgICAgICAgc3JjRWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0ZvbnRGYWNlU3Jj
RWxlbWVudCo+KGNoaWxkKTsKICAgICB9CiAKLSAgICBib29sIGRlc2NyaWJlc1BhcmVudEZvbnQg
PSBwYXJlbnROb2RlKCktPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmZvbnRUYWcpOworICAgIGJvb2wg
ZGVzY3JpYmVzUGFyZW50Rm9udCA9IGlzU1ZHRm9udEVsZW1lbnQocGFyZW50Tm9kZSgpKTsKICAg
ICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBsaXN0OwogCiAgICAgaWYgKGRlc2NyaWJlc1BhcmVudEZv
bnQpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlwaEVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5jcHAKaW5kZXggMmIxMTBhOTcy
ZmFlM2RhNDM2NjU2ZGY0MGI5NzI4NmNjZmU4ZDc5Ni4uODNkMDUzYmMzYzY0YTFiYjc2NzBlMTUz
YmQwZWM1YjBmZWQyYzVmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBo
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5jcHAK
QEAgLTQ3LDcgKzQ3LDcgQEAgUGFzc1JlZlB0cjxTVkdHbHlwaEVsZW1lbnQ+IFNWR0dseXBoRWxl
bWVudDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUKIHZvaWQgU1ZHR2x5cGhF
bGVtZW50OjppbnZhbGlkYXRlR2x5cGhDYWNoZSgpCiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9u
dE5vZGUgPSBwYXJlbnROb2RlKCk7Ci0gICAgaWYgKGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNU
YWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSkKKyAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250
RWxlbWVudChmb250Tm9kZSkpCiAgICAgICAgIHRvU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5p
bnZhbGlkYXRlR2x5cGhDYWNoZSgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHSEtlcm5FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdIS2VybkVsZW1l
bnQuY3BwCmluZGV4IDM5ODY3M2QzMTE2NzllZmMwODg3ZWMxNzc2MDM2YmM0NDBiZWY5OTguLjkx
YzExNTNkYWVmZWNlMTNhZTdhOTkwZDk4YmFlY2I4N2Q5ZjE0NGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdIS2VybkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdIS2VybkVsZW1lbnQuY3BwCkBAIC00NCw3ICs0NCw3IEBAIFBhc3NSZWZQdHI8U1ZHSEtl
cm5FbGVtZW50PiBTVkdIS2VybkVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0
YWdOYW1lCiBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IFNWR0hLZXJuRWxlbWVu
dDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUqIHJvb3RQYXJlbnQpCiB7CiAgICAgQ29udGFp
bmVyTm9kZSogZm9udE5vZGUgPSBwYXJlbnROb2RlKCk7Ci0gICAgaWYgKGZvbnROb2RlICYmIGZv
bnROb2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSkKKyAgICBpZiAoZm9udE5vZGUg
JiYgaXNTVkdGb250RWxlbWVudChmb250Tm9kZSkpCiAgICAgICAgIHRvU1ZHRm9udEVsZW1lbnQo
Zm9udE5vZGUpLT5pbnZhbGlkYXRlR2x5cGhDYWNoZSgpOwogCiAgICAgcmV0dXJuIFNWR0VsZW1l
bnQ6Omluc2VydGVkSW50byhyb290UGFyZW50KTsKQEAgLTUzLDcgKzUzLDcgQEAgTm9kZTo6SW5z
ZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBTVkdIS2VybkVsZW1lbnQ6Omluc2VydGVkSW50byhD
b250YWluZXJOb2RlKgogdm9pZCBTVkdIS2VybkVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5l
ck5vZGUqIHJvb3RQYXJlbnQpCiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9udE5vZGUgPSBwYXJl
bnROb2RlKCk7Ci0gICAgaWYgKGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNUYWdOYW1lKFNWR05h
bWVzOjpmb250VGFnKSkKKyAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250RWxlbWVudChmb250
Tm9kZSkpCiAgICAgICAgIHRvU1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5pbnZhbGlkYXRlR2x5
cGhDYWNoZSgpOwogCiAgICAgU1ZHRWxlbWVudDo6cmVtb3ZlZEZyb20ocm9vdFBhcmVudCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDNiYmZmZTNhNGY1NWYxNjMx
ZTUwMDAzMzY4YjI0ODY1ZDY0YzNjZTIuLjc0NDViYmJhZTUxMGNlMWFiM2NkY2Y4MmJmYmZmYTVj
YmFjNWJkOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCkBAIC02NCw3
ICs2NCw3IEBAIGlubGluZSBTVkdJbWFnZUVsZW1lbnQ6OlNWR0ltYWdlRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCoKICAgICAsIG1faGVpZ2h0KExlbmd0aE1v
ZGVIZWlnaHQpCiAgICAgLCBtX2ltYWdlTG9hZGVyKHRoaXMpCiB7Ci0gICAgQVNTRVJUKGhhc1Rh
Z05hbWUoU1ZHTmFtZXM6OmltYWdlVGFnKSk7CisgICAgQVNTRVJUKGlzU1ZHSW1hZ2VFbGVtZW50
KFNWR05hbWVzOjppbWFnZVRhZykpOwogICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9y
U1ZHSW1hZ2VFbGVtZW50KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdJbWFnZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaApp
bmRleCBjNGU1NWNhYWFmOTM1ZTMxZjY4M2Q0NGFhYTk1NzU4NTljYjE4M2IzLi42ZTVlNzMyNDE4
YjUzYzkwYTk1ZTcwMGMwY2E4YWQ4N2FlN2JlODk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdl
RWxlbWVudC5oCkBAIC03Nyw5ICs3NywxNCBAQCBwcml2YXRlOgogICAgIFNWR0ltYWdlTG9hZGVy
IG1faW1hZ2VMb2FkZXI7CiB9OwogCitpbmxpbmUgYm9vbCBpc1NWR0ltYWdlRWxlbWVudChjb25z
dCBOb2RlKiBub2RlKQoreworICAgIHJldHVybiBub2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpp
bWFnZVRhZyk7Cit9CisKIGlubGluZSBTVkdJbWFnZUVsZW1lbnQqIHRvU1ZHSW1hZ2VFbGVtZW50
KE5vZGUqIG5vZGUpCiB7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oIW5v
ZGUgfHwgbm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6aW1hZ2VUYWcpKTsKKyAgICBBU1NFUlRf
V0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTighbm9kZSB8fCBpc1NWR0ltYWdlRWxlbWVudChub2Rl
KSk7CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFNWR0ltYWdlRWxlbWVudCo+KG5vZGUpOwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTG9jYXRhYmxlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdMb2NhdGFibGUuY3BwCmluZGV4IDBmYTIzYzAzZTZhNjA4MDY2OWU2
ZDBmMThjNjNmYzI3ZmJmYjFhYjYuLjAwNmQ0NWRiNTZlNmRjNWY0OTU0MGEwZWI3YWYxODg2YjJl
YTk0ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMb2NhdGFibGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMb2NhdGFibGUuY3BwCkBAIC0yOCw2ICsyOCw3IEBA
CiAjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiU1ZHRXhjZXB0aW9uLmgiCiAj
aW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHSW1hZ2VFbGVtZW50
LmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzcs
NyArMzgsNyBAQCBzdGF0aWMgYm9vbCBpc1ZpZXdwb3J0RWxlbWVudChOb2RlKiBub2RlKQogICAg
IHJldHVybiAobm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ZnVGFnKQogICAgICAgICB8fCBu
b2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpzeW1ib2xUYWcpCiAgICAgICAgIHx8IG5vZGUtPmhh
c1RhZ05hbWUoU1ZHTmFtZXM6OmZvcmVpZ25PYmplY3RUYWcpCi0gICAgICAgIHx8IG5vZGUtPmhh
c1RhZ05hbWUoU1ZHTmFtZXM6OmltYWdlVGFnKSk7CisgICAgICAgIHx8IGlzU1ZHSW1hZ2VFbGVt
ZW50KG5vZGUpKTsKIH0KIAogU1ZHRWxlbWVudCogU1ZHTG9jYXRhYmxlOjpuZWFyZXN0Vmlld3Bv
cnRFbGVtZW50KGNvbnN0IFNWR0VsZW1lbnQqIGVsZW1lbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHVktlcm5FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdW
S2VybkVsZW1lbnQuY3BwCmluZGV4IDc4NWEyMjRlNjg0Yzk1MWYwMjc3NGE5YTcwYWVjYWJmOWVm
ZDFjYjEuLmExZGNiOTU2YzM5NzIwMzM0ZGUwMDExNzA5ZGI2YjBlYTYzZWVjNjMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdWS2VybkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdWS2VybkVsZW1lbnQuY3BwCkBAIC00Myw3ICs0Myw3IEBAIE5vZGU6Oklu
c2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgU1ZHVktlcm5FbGVtZW50OjppbnNlcnRlZEludG8o
Q29udGFpbmVyTm9kZSoKIHsKICAgICBpZiAocm9vdFBhcmVudC0+aW5Eb2N1bWVudCgpKSB7CiAg
ICAgICAgIENvbnRhaW5lck5vZGUqIGZvbnROb2RlID0gcGFyZW50Tm9kZSgpOwotICAgICAgICBp
ZiAoZm9udE5vZGUgJiYgZm9udE5vZGUtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmZvbnRUYWcpKQor
ICAgICAgICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250RWxlbWVudChmb250Tm9kZSkpCiAgICAg
ICAgICAgICB0b1NWR0ZvbnRFbGVtZW50KGZvbnROb2RlKS0+aW52YWxpZGF0ZUdseXBoQ2FjaGUo
KTsKICAgICB9CiAKQEAgLTUzLDcgKzUzLDcgQEAgTm9kZTo6SW5zZXJ0aW9uTm90aWZpY2F0aW9u
UmVxdWVzdCBTVkdWS2VybkVsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2RlKgogdm9p
ZCBTVkdWS2VybkVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIHJvb3RQYXJlbnQp
CiB7CiAgICAgQ29udGFpbmVyTm9kZSogZm9udE5vZGUgPSBwYXJlbnROb2RlKCk7Ci0gICAgaWYg
KGZvbnROb2RlICYmIGZvbnROb2RlLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpmb250VGFnKSkKKyAg
ICBpZiAoZm9udE5vZGUgJiYgaXNTVkdGb250RWxlbWVudChmb250Tm9kZSkpCiAgICAgICAgIHRv
U1ZHRm9udEVsZW1lbnQoZm9udE5vZGUpLT5pbnZhbGlkYXRlR2x5cGhDYWNoZSgpOwogCiAgICAg
U1ZHRWxlbWVudDo6cmVtb3ZlZEZyb20ocm9vdFBhcmVudCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>