<?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>66701</bug_id>
          
          <creation_ts>2011-08-22 12:28:56 -0700</creation_ts>
          <short_desc>Add CSS parsing of -webkit-flex-pack</short_desc>
          <delta_ts>2011-08-22 15:20:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>62048</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>eric</cc>
    
    <cc>hyatt</cc>
    
    <cc>macpherson</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>454803</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-08-22 12:28:56 -0700</bug_when>
    <thetext>Add CSS parsing of -webkit-flex-pack</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>454804</commentid>
    <comment_count>1</comment_count>
      <attachid>104715</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-08-22 12:29:43 -0700</bug_when>
    <thetext>Created attachment 104715
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>454916</commentid>
    <comment_count>2</comment_count>
      <attachid>104715</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-08-22 14:22:35 -0700</bug_when>
    <thetext>Comment on attachment 104715
Patch

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

&gt; Source/WebCore/css/CSSPrimitiveValueMappings.h:1056
&gt; +template&lt;&gt; inline CSSPrimitiveValue::CSSPrimitiveValue(EFlexPack e)
&gt; +    : m_type(CSS_IDENT)
&gt; +    , m_hasCachedCSSText(false)
&gt; +{
&gt; +    switch (e) {
&gt; +    case PackStart:
&gt; +        m_value.ident = CSSValueStart;
&gt; +        break;
&gt; +    case PackEnd:
&gt; +        m_value.ident = CSSValueEnd;
&gt; +        break;
&gt; +    case PackCenter:
&gt; +        m_value.ident = CSSValueCenter;
&gt; +        break;
&gt; +    case PackJustify:
&gt; +        m_value.ident = CSSValueJustify;
&gt; +        break;
&gt; +    }
&gt; +}

I feel a little sad inside every time I read one of these.  More code could be shared between all of these.  I guess I should pick on Luke.

&gt; Source/WebCore/rendering/style/RenderStyleConstants.h:169
&gt; +// New CSS3 Flexbox Properties

The New isn&apos;t needed.  They won&apos;t be New forever. :)

&gt; Source/WebCore/rendering/style/StyleFlexibleBoxData.h:54
&gt; +    unsigned m_flexPack : 2; // EFlexPack

Bleh.  public members.  Bleh.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>454994</commentid>
    <comment_count>3</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-08-22 15:20:27 -0700</bug_when>
    <thetext>Committed r93551: &lt;http://trac.webkit.org/changeset/93551&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>104715</attachid>
            <date>2011-08-22 12:29:43 -0700</date>
            <delta_ts>2011-08-22 14:22:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66701-20110822122846.patch</filename>
            <type>text/plain</type>
            <size>17821</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTM1MjkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlY2E2MzRlZGVhM2QxOWNjMGU3ZTEz
ODU1NjlhN2EzZTI2NzdhMTAxLi4yNDY0NDllMjJlM2I1YzYzMmExYzliNWYxMmI3MzdiZjhmMGUw
ZDc0IDEwMDc1NQotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDgtMjIgIFRvbnkgQ2hhbmcgIDx0b255
QGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgQ1NTIHBhcnNpbmcgb2YgLXdlYmtpdC1mbGV4
LXBhY2sKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2
NzAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBj
c3MzL2ZsZXhib3gvY3NzLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGNzczMv
ZmxleGJveC9zY3JpcHQtdGVzdHMvY3NzLXByb3BlcnRpZXMuanM6CisKIDIwMTEtMDgtMjIgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgZWRpdGluZy9zZWxlY3Rp
b24vY2FyZXQtYXQtYmlkaS1ib3VuZGFyeS5odG1sIHRpbWluZyBvdXQgb24gV2luZG93cyBzaW5j
ZSBpdCB3YXMgYWRkZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9jc3Mt
cHJvcGVydGllcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY3NzLXBy
b3BlcnRpZXMtZXhwZWN0ZWQudHh0CmluZGV4IGQxMjcwMjJiMDJiYTM2NDkxZGEyMTdiN2FmZjJl
MzlhMWJhNjI1MWQuLjBiNjQ1NTYyZjU3ZjNhMjkwNTE4NzQ2MTM2YmViMjE0ZjU3YjFhZGIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9jc3MtcHJvcGVydGllcy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2Nzcy1wcm9wZXJ0aWVzLWV4cGVj
dGVkLnR4dApAQCAtMywxMSArMywxMSBAQCBUZXN0cyBiZWluZyBhYmxlIHRvIHNldCB0aGUgZGlz
cGxheSB0byAtd2Via2l0LWZsZXhib3ggYW5kIC13ZWJraXQtaW5saW5lLWZsZXhibwogT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgZGl2LnN0eWxlLmRpc3BsYXkgaXMgIi13ZWJr
aXQtZmxleGJveCIKLVBBU1MgZGl2LnN0eWxlLmRpc3BsYXkgaXMgImlubGluZSIKLVBBU1MgZGl2
LnN0eWxlLmRpc3BsYXkgaXMgIi13ZWJraXQtaW5saW5lLWZsZXhib3giCi1QQVNTIGRpdi5zdHls
ZS5kaXNwbGF5IGlzICItd2Via2l0LWlubGluZS1mbGV4Ym94IgotUEFTUyBkaXYuc3R5bGUuZGlz
cGxheSBpcyAiYmxvY2siCitQQVNTIGZsZXhib3guc3R5bGUuZGlzcGxheSBpcyAiLXdlYmtpdC1m
bGV4Ym94IgorUEFTUyBmbGV4Ym94LnN0eWxlLmRpc3BsYXkgaXMgImlubGluZSIKK1BBU1MgZmxl
eGJveC5zdHlsZS5kaXNwbGF5IGlzICItd2Via2l0LWlubGluZS1mbGV4Ym94IgorUEFTUyBmbGV4
Ym94LnN0eWxlLmRpc3BsYXkgaXMgIi13ZWJraXQtaW5saW5lLWZsZXhib3giCitQQVNTIGZsZXhi
b3guc3R5bGUuZGlzcGxheSBpcyAiYmxvY2siCiBQQVNTIGZsZXhpdGVtLnN0eWxlLndlYmtpdEZs
ZXhPcmRlciBpcyAiIgogUEFTUyBmbGV4aXRlbS5zdHlsZS53ZWJraXRGbGV4T3JkZXIgaXMgIjIi
CiBQQVNTIGZsZXhpdGVtLnN0eWxlLndlYmtpdEZsZXhPcmRlciBpcyAiLTEiCkBAIC0xNSw2ICsx
NSwxOSBAQCBQQVNTIGZsZXhpdGVtLnN0eWxlLndlYmtpdEZsZXhPcmRlciBpcyAiMCIKIFBBU1Mg
ZmxleGl0ZW0uc3R5bGUud2Via2l0RmxleE9yZGVyIGlzICIwIgogUEFTUyBmbGV4aXRlbS5zdHls
ZS53ZWJraXRGbGV4T3JkZXIgaXMgIjAiCiBQQVNTIGZsZXhpdGVtLnN0eWxlLndlYmtpdEZsZXhP
cmRlciBpcyAiIgorUEFTUyBmbGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrIGlzICIiCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGZsZXhib3gsIG51bGwpLndlYmtpdEZsZXhQYWNrIGlz
ICJzdGFydCIKK1BBU1MgZmxleGJveC5zdHlsZS53ZWJraXRGbGV4UGFjayBpcyAiIgorUEFTUyBm
bGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrIGlzICJzdGFydCIKK1BBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUoZmxleGJveCwgbnVsbCkud2Via2l0RmxleFBhY2sgaXMgInN0YXJ0IgorUEFT
UyBmbGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrIGlzICJlbmQiCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGZsZXhib3gsIG51bGwpLndlYmtpdEZsZXhQYWNrIGlzICJlbmQiCitQQVNT
IGZsZXhib3guc3R5bGUud2Via2l0RmxleFBhY2sgaXMgImNlbnRlciIKK1BBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZmxleGJveCwgbnVsbCkud2Via2l0RmxleFBhY2sgaXMgImNlbnRlciIK
K1BBU1MgZmxleGJveC5zdHlsZS53ZWJraXRGbGV4UGFjayBpcyAianVzdGlmeSIKK1BBU1Mgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoZmxleGJveCwgbnVsbCkud2Via2l0RmxleFBhY2sgaXMgImp1
c3RpZnkiCitQQVNTIGZsZXhib3guc3R5bGUud2Via2l0RmxleFBhY2sgaXMgIiIKK1BBU1Mgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoZmxleGJveCwgbnVsbCkud2Via2l0RmxleFBhY2sgaXMgInN0
YXJ0IgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvc2NyaXB0LXRlc3RzL2Nzcy1wcm9w
ZXJ0aWVzLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L3NjcmlwdC10ZXN0cy9jc3MtcHJv
cGVydGllcy5qcwppbmRleCAxZjVhYzc5ODUxNmI0YzdhZmYyNjViZDJlYThiZmE5NmY4OWQyZDc4
Li43YjMyY2JlMDkzODBjODBiYWQ0ZjZhMzdlOTcxYjRlNDI3M2UxMmU2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvc2NyaXB0LXRlc3RzL2Nzcy1wcm9wZXJ0aWVzLmpzCisr
KyBiL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9zY3JpcHQtdGVzdHMvY3NzLXByb3BlcnRpZXMu
anMKQEAgLTEsMjEgKzEsMjIgQEAKIGRlc2NyaXB0aW9uKCdUZXN0cyBiZWluZyBhYmxlIHRvIHNl
dCB0aGUgZGlzcGxheSB0byAtd2Via2l0LWZsZXhib3ggYW5kIC13ZWJraXQtaW5saW5lLWZsZXhi
b3guJyk7CiAKLXZhciBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmxleGJveCIpOwor
dmFyIGZsZXhib3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmxleGJveCIpOwogCi1kaXYu
c3R5bGUuZGlzcGxheSA9ICctd2Via2l0LWZsZXhib3gnOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCdkaXYuc3R5bGUuZGlzcGxheScsICctd2Via2l0LWZsZXhib3gnKTsKK2ZsZXhib3guc3R5bGUu
ZGlzcGxheSA9ICctd2Via2l0LWZsZXhib3gnOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdmbGV4
Ym94LnN0eWxlLmRpc3BsYXknLCAnLXdlYmtpdC1mbGV4Ym94Jyk7CiAKLWRpdi5zdHlsZS5kaXNw
bGF5ID0gJ2lubGluZSc7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2Rpdi5zdHlsZS5kaXNwbGF5
JywgJ2lubGluZScpOworZmxleGJveC5zdHlsZS5kaXNwbGF5ID0gJ2lubGluZSc7CitzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoJ2ZsZXhib3guc3R5bGUuZGlzcGxheScsICdpbmxpbmUnKTsKIAotZGl2
LnN0eWxlLmRpc3BsYXkgPSAnLXdlYmtpdC1pbmxpbmUtZmxleGJveCc7Ci1zaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ2Rpdi5zdHlsZS5kaXNwbGF5JywgJy13ZWJraXQtaW5saW5lLWZsZXhib3gnKTsK
K2ZsZXhib3guc3R5bGUuZGlzcGxheSA9ICctd2Via2l0LWlubGluZS1mbGV4Ym94JzsKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZygnZmxleGJveC5zdHlsZS5kaXNwbGF5JywgJy13ZWJraXQtaW5saW5l
LWZsZXhib3gnKTsKIAotZGl2LnN0eWxlLmRpc3BsYXkgPSAnanVuayc7Ci1zaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ2Rpdi5zdHlsZS5kaXNwbGF5JywgJy13ZWJraXQtaW5saW5lLWZsZXhib3gnKTsK
K2ZsZXhib3guc3R5bGUuZGlzcGxheSA9ICdqdW5rJzsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygn
ZmxleGJveC5zdHlsZS5kaXNwbGF5JywgJy13ZWJraXQtaW5saW5lLWZsZXhib3gnKTsKKworZmxl
eGJveC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJzsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygnZmxl
eGJveC5zdHlsZS5kaXNwbGF5JywgJ2Jsb2NrJyk7CiAKLWRpdi5zdHlsZS5kaXNwbGF5ID0gJ2Js
b2NrJzsKLXNob3VsZEJlRXF1YWxUb1N0cmluZygnZGl2LnN0eWxlLmRpc3BsYXknLCAnYmxvY2sn
KTsKIAogdmFyIGZsZXhpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZsZXhpdGVtIik7
CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2ZsZXhpdGVtLnN0eWxlLndlYmtpdEZsZXhPcmRlcics
ICcnKTsKQEAgLTM5LDQgKzQwLDMyIEBAIHNob3VsZEJlRXF1YWxUb1N0cmluZygnZmxleGl0ZW0u
c3R5bGUud2Via2l0RmxleE9yZGVyJywgJzAnKTsKIGZsZXhpdGVtLnN0eWxlLndlYmtpdEZsZXhP
cmRlciA9ICcnOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdmbGV4aXRlbS5zdHlsZS53ZWJraXRG
bGV4T3JkZXInLCAnJyk7CiAKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdmbGV4Ym94LnN0eWxl
LndlYmtpdEZsZXhQYWNrJywgJycpOworLy8gVGhlIGluaXRpYWwgdmFsdWUgaXMgJ3N0YXJ0Jy4K
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygnd2luZG93LmdldENvbXB1dGVkU3R5bGUoZmxleGJveCwg
bnVsbCkud2Via2l0RmxleFBhY2snLCAnc3RhcnQnKTsKKworZmxleGJveC5zdHlsZS53ZWJraXRG
bGV4UGFjayA9ICdmb28nOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdmbGV4Ym94LnN0eWxlLndl
YmtpdEZsZXhQYWNrJywgJycpOworCitmbGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrID0gJ3N0
YXJ0JzsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygnZmxleGJveC5zdHlsZS53ZWJraXRGbGV4UGFj
aycsICdzdGFydCcpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShmbGV4Ym94LCBudWxsKS53ZWJraXRGbGV4UGFjaycsICdzdGFydCcpOworCitmbGV4Ym94
LnN0eWxlLndlYmtpdEZsZXhQYWNrID0gJ2VuZCc7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2Zs
ZXhib3guc3R5bGUud2Via2l0RmxleFBhY2snLCAnZW5kJyk7CitzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGZsZXhib3gsIG51bGwpLndlYmtpdEZsZXhQYWNr
JywgJ2VuZCcpOworCitmbGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrID0gJ2NlbnRlcic7Citz
aG91bGRCZUVxdWFsVG9TdHJpbmcoJ2ZsZXhib3guc3R5bGUud2Via2l0RmxleFBhY2snLCAnY2Vu
dGVyJyk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGZs
ZXhib3gsIG51bGwpLndlYmtpdEZsZXhQYWNrJywgJ2NlbnRlcicpOworCitmbGV4Ym94LnN0eWxl
LndlYmtpdEZsZXhQYWNrID0gJ2p1c3RpZnknOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdmbGV4
Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrJywgJ2p1c3RpZnknKTsKK3Nob3VsZEJlRXF1YWxUb1N0
cmluZygnd2luZG93LmdldENvbXB1dGVkU3R5bGUoZmxleGJveCwgbnVsbCkud2Via2l0RmxleFBh
Y2snLCAnanVzdGlmeScpOworCitmbGV4Ym94LnN0eWxlLndlYmtpdEZsZXhQYWNrID0gJyc7Citz
aG91bGRCZUVxdWFsVG9TdHJpbmcoJ2ZsZXhib3guc3R5bGUud2Via2l0RmxleFBhY2snLCAnJyk7
CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGZsZXhib3gs
IG51bGwpLndlYmtpdEZsZXhQYWNrJywgJ3N0YXJ0Jyk7CisKIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggNzJlZDgzZmUwOTEyNWQ2N2RlYzgwZjNkYjhiZjBkYzc4MzY5
ZWYxYS4uMzBkNjRmYTc3MTkwZWVjODNkYWJkNjI4ZTRhNzA4M2Q0NWI0OThlZSAxMDA3NTUKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZwpAQCAtMSw1ICsxLDM0IEBACiAyMDExLTA4LTIyICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1
bS5vcmc+CiAKKyAgICAgICAgQWRkIENTUyBwYXJzaW5nIG9mIC13ZWJraXQtZmxleC1wYWNrCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjcwMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU0Nv
bXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb246OmdldFByb3BlcnR5Q1NTVmFsdWUpOgorICAgICAgICAqIGNzcy9D
U1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZhbHVlKToK
KyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFRmxleFBhY2spOgorICAgICAgICAq
IGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOgorICAgICAgICAqIGNzcy9DU1NTdHlsZUFwcGx5UHJv
cGVydHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVBcHBseVByb3BlcnR5OjpDU1NT
dHlsZUFwcGx5UHJvcGVydHkpOgorICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgorICAg
ICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAgICAoV2ViQ29yZTo6
SW5oZXJpdGVkRmxhZ3M6OmZsZXhQYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZs
YWdzOjpzZXRGbGV4UGFjayk6CisgICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6aW5p
dGlhbEZsZXhQYWNrKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25z
dGFudHMuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVGbGV4aWJsZUJveERhdGEu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVGbGV4aWJsZUJveERhdGE6OlN0eWxlRmxleGli
bGVCb3hEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlRmxleGlibGVCb3hEYXRhOjpvcGVy
YXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVGbGV4aWJsZUJveERhdGEu
aDoKKworMjAxMS0wOC0yMiAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgorCiAgICAg
ICAgIEFkZCBDU1MgcGFyc2luZyBvZiAtd2Via2l0LWZsZXgtb3JkZXIKICAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY1Mzg0CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggZjIwMTBj
OGM0MjQ1NjczMDQ3ZTE0YjE4ODFhMGE5NGVhZjVmZGE4NS4uODFjNjhjNzI3NWE0ODVmZWYzOTg2
YThiNTAwMjJhMzQwYWNiNTE5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nv
bXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nv
bXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTIwMSw2ICsyMDEsNyBAQCBzdGF0aWMgY29u
c3QgaW50IGNvbXB1dGVkUHJvcGVydGllc1tdID0gewogI2VuZGlmCiAjaWYgRU5BQkxFKENTUzNf
RkxFWEJPWCkKICAgICBDU1NQcm9wZXJ0eVdlYmtpdEZsZXhPcmRlciwKKyAgICBDU1NQcm9wZXJ0
eVdlYmtpdEZsZXhQYWNrLAogI2VuZGlmCiAgICAgQ1NTUHJvcGVydHlXZWJraXRGb250U21vb3Ro
aW5nLAogICAgIENTU1Byb3BlcnR5V2Via2l0SGlnaGxpZ2h0LApAQCAtMTEwNSw2ICsxMTA2LDgg
QEAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uOjpnZXRQ
cm9wZXJ0eUNTU1ZhbHVlKGludCBwcm9wZXIKICNpZiBFTkFCTEUoQ1NTM19GTEVYQk9YKQogICAg
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgogICAgICAgICAgICAgcmV0dXJu
IHByaW1pdGl2ZVZhbHVlQ2FjaGUtPmNyZWF0ZVZhbHVlKHN0eWxlLT5mbGV4T3JkZXIoKSwgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0RmxleFBhY2s6CisgICAgICAgICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWVDYWNoZS0+Y3Jl
YXRlVmFsdWUoc3R5bGUtPmZsZXhQYWNrKCkpOwogI2VuZGlmCiAgICAgICAgIGNhc2UgQ1NTUHJv
cGVydHlGbG9hdDoKICAgICAgICAgICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZUNhY2hlLT5jcmVh
dGVWYWx1ZShzdHlsZS0+ZmxvYXRpbmcoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCmluZGV4
IDBiMmNlMmMxZjQ2ZGY3MzQ0OTlkYThjMzU0MDBkY2VmN2RiNmUwOWEuLmQ2ZjQyNzdmNGJkOTYy
ZDE0ZDdkYzM0YmVmZGYwYWE3ZjMwZmI5NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBA
IC0xNTQwLDYgKzE1NDAsOSBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShpbnQgcHJvcElk
LCBib29sIGltcG9ydGFudCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgog
ICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IHZhbGlkVW5pdCh2YWx1ZSwgRkludGVnZXIsIHRydWUp
OwogICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleFBhY2s6Cisg
ICAgICAgIHZhbGlkUHJpbWl0aXZlID0gaWQgPT0gQ1NTVmFsdWVTdGFydCB8fCBpZCA9PSBDU1NW
YWx1ZUVuZCB8fCBpZCA9PSBDU1NWYWx1ZUNlbnRlciB8fCBpZCA9PSBDU1NWYWx1ZUp1c3RpZnk7
CisgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcnF1
ZWU6IHsKICAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbNV0gPSB7IENTU1Byb3BlcnR5V2Vi
a2l0TWFycXVlZURpcmVjdGlvbiwgQ1NTUHJvcGVydHlXZWJraXRNYXJxdWVlSW5jcmVtZW50LApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXgg
N2NhZTNmZWNiNTg4NThhMTY2MGQyMDEyN2Y4ZTIxOGQwNTU3MTEzZS4uYjIwZWNjOWIwYzAzNDBm
NjUxNWM1ZjgzNjlkNTY2YmM4ZGNiZTJjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCkBAIC0xMDM1LDYgKzEwMzUsNDMgQEAgdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVFbXB0eUNlbGwoKSBjb25zdAog
ICAgIH0KIH0KIAordGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKEVGbGV4UGFjayBlKQorICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKK3sKKyAgICBzd2l0Y2ggKGUpIHsKKyAgICBjYXNlIFBh
Y2tTdGFydDoKKyAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlU3RhcnQ7CisgICAgICAg
IGJyZWFrOworICAgIGNhc2UgUGFja0VuZDoKKyAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1Zh
bHVlRW5kOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFBhY2tDZW50ZXI6CisgICAgICAgIG1f
dmFsdWUuaWRlbnQgPSBDU1NWYWx1ZUNlbnRlcjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQ
YWNrSnVzdGlmeToKKyAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlSnVzdGlmeTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorfQorCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgRUZsZXhQYWNrKCkgY29uc3QKK3sKKyAgICBzd2l0Y2ggKG1fdmFsdWUu
aWRlbnQpIHsKKyAgICBjYXNlIENTU1ZhbHVlU3RhcnQ6CisgICAgICAgIHJldHVybiBQYWNrU3Rh
cnQ7CisgICAgY2FzZSBDU1NWYWx1ZUVuZDoKKyAgICAgICAgcmV0dXJuIFBhY2tFbmQ7CisgICAg
Y2FzZSBDU1NWYWx1ZUNlbnRlcjoKKyAgICAgICAgcmV0dXJuIFBhY2tDZW50ZXI7CisgICAgY2Fz
ZSBDU1NWYWx1ZUp1c3RpZnk6CisgICAgICAgIHJldHVybiBQYWNrSnVzdGlmeTsKKyAgICBkZWZh
dWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIFBhY2tT
dGFydDsKKyAgICB9Cit9CisKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShFRmxvYXQgZSkKICAgICA6IG1fdHlwZShDU1NfSURFTlQpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5h
bWVzLmluCmluZGV4IGIwMzg4Yjg5M2IwOTQwZTA0YmU3Y2YyMGVlMzM5NTEzMjU4ZGRiYzIuLmVl
ZGJjMGRiYmJhZDVjNGYxZjc4ZThjYjNlNWUzYjRiMDExMzY4MTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQcm9wZXJ0eU5hbWVzLmluCkBAIC0yNDQsNiArMjQ0LDcgQEAgei1pbmRleAogLXdlYmtp
dC1jb2x1bW5zCiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTM19GTEVYQk9YKSAmJiBFTkFCTEVfQ1NT
M19GTEVYQk9YCiAtd2Via2l0LWZsZXgtb3JkZXIKKy13ZWJraXQtZmxleC1wYWNrCiAjZW5kaWYK
IC13ZWJraXQtZm9udC1zaXplLWRlbHRhCiAtd2Via2l0LWhpZ2hsaWdodApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU3R5bGVBcHBseVByb3BlcnR5LmNwcAppbmRleCAyYWYxZjE0YWQxZjUzYTUx
MWFmNmI0Yjk0MGQ4YTVlZGRkMTA3ODE1Li4zNjRkNDJmMjhlZjhkY2Q3NDMwN2FiMjE5NjIxNjYx
YWI0NDg2NGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVBcHBseVBy
b3BlcnR5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVBcHBseVByb3BlcnR5
LmNwcApAQCAtODkxLDYgKzg5MSw3IEBAIENTU1N0eWxlQXBwbHlQcm9wZXJ0eTo6Q1NTU3R5bGVB
cHBseVByb3BlcnR5KCkKIAogI2lmIEVOQUJMRShDU1MzX0ZMRVhCT1gpCiAgICAgc2V0UHJvcGVy
dHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyLCBuZXcgQXBwbHlQcm9wZXJ0eURl
ZmF1bHQ8aW50PigmUmVuZGVyU3R5bGU6OmZsZXhPcmRlciwgJlJlbmRlclN0eWxlOjpzZXRGbGV4
T3JkZXIsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEZsZXhPcmRlcikpOworICAgIHNldFByb3BlcnR5
SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEZsZXhQYWNrLCBuZXcgQXBwbHlQcm9wZXJ0eURlZmF1
bHQ8RUZsZXhQYWNrPigmUmVuZGVyU3R5bGU6OmZsZXhQYWNrLCAmUmVuZGVyU3R5bGU6OnNldEZs
ZXhQYWNrLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxGbGV4UGFjaykpOwogI2VuZGlmCiAKICAgICBz
ZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlGb250U3R5bGUsIG5ldyBBcHBseVByb3BlcnR5
Rm9udDxGb250SXRhbGljPigmRm9udERlc2NyaXB0aW9uOjppdGFsaWMsICZGb250RGVzY3JpcHRp
b246OnNldEl0YWxpYywgRm9udEl0YWxpY09mZikpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwCmluZGV4IDk5ODEwY2ZlY2NhZDc4MDY1NTYzNDBmZDRlNTM2NDkzYWMxMjNj
NmIuLmFkMTZmMjc5NTc2MTkwY2VhN2I1Y2M0ZDc0NjE4OTg1M2UzZWNjNWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAKQEAgLTUxMTIsNiArNTExMiw3IEBAIHZvaWQg
Q1NTU3R5bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQgaWQsIENTU1ZhbHVlICp2YWx1ZSkK
ICAgICBjYXNlIENTU1Byb3BlcnR5V29yZFNwYWNpbmc6CiAjaWYgRU5BQkxFKENTUzNfRkxFWEJP
WCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgorICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRGbGV4UGFjazoKICNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U3R5
bGU6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50OgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCA5ZjdmNWFhYjQyNjllMmZkYTc4NTIw
MDlhYmYyYTcxMTMxNWI0YjJiLi40MjY2Y2Y4YzVhN2M1YmMyZDdkOGQ2ZDZiNTBkNGRmMGM2YWVl
Njc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApA
QCAtNjc3LDYgKzY3Nyw3IEBAIHB1YmxpYzoKICAgICBmbG9hdCBmbGV4Ym94SGVpZ2h0UG9zaXRp
dmVGbGV4KCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZmxleGlibGVC
b3gtPm1faGVpZ2h0UG9zaXRpdmVGbGV4OyB9CiAgICAgZmxvYXQgZmxleGJveEhlaWdodE5lZ2F0
aXZlRmxleCgpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2ZsZXhpYmxl
Qm94LT5tX2hlaWdodE5lZ2F0aXZlRmxleDsgfQogICAgIGludCBmbGV4T3JkZXIoKSBjb25zdCB7
IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9mbGV4aWJsZUJveC0+bV9mbGV4T3JkZXI7
IH0KKyAgICBFRmxleFBhY2sgZmxleFBhY2soKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxF
RmxleFBhY2s+KHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2ZsZXhpYmxlQm94LT5tX2ZsZXhQYWNr
KTsgfQogI2VuZGlmCiAKICAgICBjb25zdCBTaGFkb3dEYXRhKiBib3hTaGFkb3coKSBjb25zdCB7
IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9ib3hTaGFkb3cuZ2V0KCk7IH0KQEAgLTEw
NjIsNiArMTA2Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEZsZXhib3hIZWlnaHRQb3NpdGl2
ZUZsZXgoZmxvYXQgZikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLT5t
X2ZsZXhpYmxlQm94LCBtX2hlaWdodFBvc2l0aXZlRmxleCwgZik7IH0KICAgICB2b2lkIHNldEZs
ZXhib3hIZWlnaHROZWdhdGl2ZUZsZXgoZmxvYXQgZikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0
ZWREYXRhLmFjY2VzcygpLT5tX2ZsZXhpYmxlQm94LCBtX2hlaWdodE5lZ2F0aXZlRmxleCwgZik7
IH0KICAgICB2b2lkIHNldEZsZXhPcmRlcihpbnQgbykgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0
ZWREYXRhLmFjY2VzcygpLT5tX2ZsZXhpYmxlQm94LCBtX2ZsZXhPcmRlciwgbyk7IH0KKyAgICB2
b2lkIHNldEZsZXhQYWNrKEVGbGV4UGFjayBwKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERh
dGEuYWNjZXNzKCktPm1fZmxleGlibGVCb3gsIG1fZmxleFBhY2ssIHApOyB9CiAjZW5kaWYKICAg
ICB2b2lkIHNldE1hcnF1ZWVJbmNyZW1lbnQoY29uc3QgTGVuZ3RoJiBmKSB7IFNFVF9WQVIocmFy
ZU5vbkluaGVyaXRlZERhdGEuYWNjZXNzKCktPm1fbWFycXVlZSwgaW5jcmVtZW50LCBmKTsgfQog
ICAgIHZvaWQgc2V0TWFycXVlZVNwZWVkKGludCBmKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRl
ZERhdGEuYWNjZXNzKCktPm1fbWFycXVlZSwgc3BlZWQsIGYpOyB9CkBAIC0xMzE3LDYgKzEzMTks
NyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGZsb2F0IGluaXRpYWxGbGV4Ym94SGVpZ2h0UG9zaXRp
dmVGbGV4KCkgeyByZXR1cm4gMDsgfQogICAgIHN0YXRpYyBmbG9hdCBpbml0aWFsRmxleGJveEhl
aWdodE5lZ2F0aXZlRmxleCgpIHsgcmV0dXJuIDA7IH0KICAgICBzdGF0aWMgaW50IGluaXRpYWxG
bGV4T3JkZXIoKSB7IHJldHVybiAxOyB9CisgICAgc3RhdGljIEVGbGV4UGFjayBpbml0aWFsRmxl
eFBhY2soKSB7IHJldHVybiBQYWNrU3RhcnQ7IH0KICAgICBzdGF0aWMgaW50IGluaXRpYWxNYXJx
dWVlTG9vcENvdW50KCkgeyByZXR1cm4gLTE7IH0KICAgICBzdGF0aWMgaW50IGluaXRpYWxNYXJx
dWVlU3BlZWQoKSB7IHJldHVybiA4NTsgfQogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbE1hcnF1
ZWVJbmNyZW1lbnQoKSB7IHJldHVybiBMZW5ndGgoNiwgRml4ZWQpOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCmluZGV4
IDY0YjgxOGZmN2FmNWMwYWMwYTljMTI4YzUyMmY2ZmI3Nzc2ZGM1ZTEuLjA0MzRlYTRkOGY4MmEw
ZGUzNzUzNDQ3OTI2YzJjYmU0ZThmODNjYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCkBAIC0xNTksMTMgKzE1OSwx
NyBAQCBlbnVtIEVGaWxsU2l6ZVR5cGUgeyBDb250YWluLCBDb3ZlciwgU2l6ZUxlbmd0aCwgU2l6
ZU5vbmUgfTsKIGVudW0gRU1hcnF1ZWVCZWhhdmlvciB7IE1OT05FLCBNU0NST0xMLCBNU0xJREUs
IE1BTFRFUk5BVEUgfTsKIGVudW0gRU1hcnF1ZWVEaXJlY3Rpb24geyBNQVVUTyA9IDAsIE1MRUZU
ID0gMSwgTVJJR0hUID0gLTEsIE1VUCA9IDIsIE1ET1dOID0gLTIsIE1GT1JXQVJEID0gMywgTUJB
Q0tXQVJEID0gLTMgfTsKIAotLy8gQ1NTMyBGbGV4aWJsZSBCb3ggUHJvcGVydGllcworLy8gRGVw
cmVjYXRlZCBDU1MzIEZsZXhpYmxlIEJveCBQcm9wZXJ0aWVzCiAKIGVudW0gRUJveEFsaWdubWVu
dCB7IEJTVFJFVENILCBCU1RBUlQsIEJDRU5URVIsIEJFTkQsIEJKVVNUSUZZLCBCQkFTRUxJTkUg
fTsKIGVudW0gRUJveE9yaWVudCB7IEhPUklaT05UQUwsIFZFUlRJQ0FMIH07CiBlbnVtIEVCb3hM
aW5lcyB7IFNJTkdMRSwgTVVMVElQTEUgfTsKIGVudW0gRUJveERpcmVjdGlvbiB7IEJOT1JNQUws
IEJSRVZFUlNFIH07CiAKKy8vIE5ldyBDU1MzIEZsZXhib3ggUHJvcGVydGllcworCitlbnVtIEVG
bGV4UGFjayB7IFBhY2tTdGFydCwgUGFja0VuZCwgUGFja0NlbnRlciwgUGFja0p1c3RpZnkgfTsK
KwogZW51bSBFVGV4dFNlY3VyaXR5IHsKICAgICBUU05PTkUsIFRTRElTQywgVFNDSVJDTEUsIFRT
U1FVQVJFCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRmxleGlibGVCb3hEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZUZsZXhpYmxlQm94RGF0YS5jcHAKaW5kZXggMzFkNWNjMWFkMjkzZDI1ZDhiNjUzNmM3MTk4
YzI0MzRhM2YwZDVjMy4uNGJiYjA2ZmNhZDc5MjU1OWM1Mjg0ZDY2MDVlYTU2M2M0NmQ3NjY1ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlRmxleGlibGVC
b3hEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVGbGV4
aWJsZUJveERhdGEuY3BwCkBAIC0zOCw2ICszOCw3IEBAIFN0eWxlRmxleGlibGVCb3hEYXRhOjpT
dHlsZUZsZXhpYmxlQm94RGF0YSgpCiAgICAgLCBtX2hlaWdodFBvc2l0aXZlRmxleChSZW5kZXJT
dHlsZTo6aW5pdGlhbEZsZXhib3hIZWlnaHRQb3NpdGl2ZUZsZXgoKSkKICAgICAsIG1faGVpZ2h0
TmVnYXRpdmVGbGV4KFJlbmRlclN0eWxlOjppbml0aWFsRmxleGJveEhlaWdodE5lZ2F0aXZlRmxl
eCgpKQogICAgICwgbV9mbGV4T3JkZXIoUmVuZGVyU3R5bGU6OmluaXRpYWxGbGV4T3JkZXIoKSkK
KyAgICAsIG1fZmxleFBhY2soUmVuZGVyU3R5bGU6OmluaXRpYWxGbGV4UGFjaygpKQogewogfQog
CkBAIC00OCw2ICs0OSw3IEBAIFN0eWxlRmxleGlibGVCb3hEYXRhOjpTdHlsZUZsZXhpYmxlQm94
RGF0YShjb25zdCBTdHlsZUZsZXhpYmxlQm94RGF0YSYgbykKICAgICAsIG1faGVpZ2h0UG9zaXRp
dmVGbGV4KG8ubV9oZWlnaHRQb3NpdGl2ZUZsZXgpCiAgICAgLCBtX2hlaWdodE5lZ2F0aXZlRmxl
eChvLm1faGVpZ2h0TmVnYXRpdmVGbGV4KQogICAgICwgbV9mbGV4T3JkZXIoby5tX2ZsZXhPcmRl
cikKKyAgICAsIG1fZmxleFBhY2soby5tX2ZsZXhQYWNrKQogewogfQogCkBAIC01NSw3ICs1Nyw3
IEBAIGJvb2wgU3R5bGVGbGV4aWJsZUJveERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVGbGV4
aWJsZUJveERhdGEmIG8pIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fd2lkdGhQb3NpdGl2ZUZsZXgg
PT0gby5tX3dpZHRoUG9zaXRpdmVGbGV4ICYmIG1fd2lkdGhOZWdhdGl2ZUZsZXggPT0gby5tX3dp
ZHRoTmVnYXRpdmVGbGV4CiAgICAgICAgICYmIG1faGVpZ2h0UG9zaXRpdmVGbGV4ID09IG8ubV9o
ZWlnaHRQb3NpdGl2ZUZsZXggJiYgbV9oZWlnaHROZWdhdGl2ZUZsZXggPT0gby5tX2hlaWdodE5l
Z2F0aXZlRmxleAotICAgICAgICAmJiBtX2ZsZXhPcmRlciA9PSBvLm1fZmxleE9yZGVyOworICAg
ICAgICAmJiBtX2ZsZXhPcmRlciA9PSBvLm1fZmxleE9yZGVyICYmIG1fZmxleFBhY2sgPT0gby5t
X2ZsZXhQYWNrOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVGbGV4aWJsZUJveERhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0YS5oCmluZGV4IDljNTQ0YTQyZWM5M2U1NGNkYjRkNWRk
ZTllZjBjZjQ1OTRkOTEzYzEuLjUyNzFjYzRkMzFiNGEyYzA3ZTVlMDNlNDg2YWFlMTBjNjhhNjg0
ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhp
YmxlQm94RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUZs
ZXhpYmxlQm94RGF0YS5oCkBAIC01MSw2ICs1MSw4IEBAIHB1YmxpYzoKIAogICAgIGludCBtX2Zs
ZXhPcmRlcjsKIAorICAgIHVuc2lnbmVkIG1fZmxleFBhY2sgOiAyOyAvLyBFRmxleFBhY2sKKwog
cHJpdmF0ZToKICAgICBTdHlsZUZsZXhpYmxlQm94RGF0YSgpOwogICAgIFN0eWxlRmxleGlibGVC
b3hEYXRhKGNvbnN0IFN0eWxlRmxleGlibGVCb3hEYXRhJik7Cg==
</data>
<flag name="review"
          id="100649"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>