<?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>25554</bug_id>
          
          <creation_ts>2009-05-04 14:49:18 -0700</creation_ts>
          <short_desc>Implement HTML5 Input element types for Text Fields</short_desc>
          <delta_ts>2009-05-05 18:15:34 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Greg Bolsinga">bolsinga</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>119877</commentid>
    <comment_count>0</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-04 14:49:18 -0700</bug_when>
    <thetext>See http://dev.w3.org/html5/spec/Overview.html#attr-input-type

This bug report is just for the type keywords when &quot;Control type&quot; is Text Field.

tel, url, email, number are the ones not yet in WebCore.

&lt;rdar://problem/5327885&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119878</commentid>
    <comment_count>1</comment_count>
      <attachid>29996</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-04 15:14:53 -0700</bug_when>
    <thetext>Created attachment 29996
add support for HTML text control input types</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119887</commentid>
    <comment_count>2</comment_count>
      <attachid>30001</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-04 16:29:44 -0700</bug_when>
    <thetext>Created attachment 30001
updated patch to fix DOMHTML.mm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119897</commentid>
    <comment_count>3</comment_count>
      <attachid>30001</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-05-04 17:16:08 -0700</bug_when>
    <thetext>Comment on attachment 30001
updated patch to fix DOMHTML.mm

Per IRC, r- for lack of test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119917</commentid>
    <comment_count>4</comment_count>
      <attachid>30008</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-04 19:47:22 -0700</bug_when>
    <thetext>Created attachment 30008
Now with working code and layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>120046</commentid>
    <comment_count>5</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-05 17:58:24 -0700</bug_when>
    <thetext>Fixed in r43267</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>120048</commentid>
    <comment_count>6</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-05-05 18:15:34 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/43267</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29996</attachid>
            <date>2009-05-04 15:14:53 -0700</date>
            <delta_ts>2009-05-04 16:29:44 -0700</delta_ts>
            <desc>add support for HTML text control input types</desc>
            <filename>25554.patch.txt</filename>
            <type>text/plain</type>
            <size>9500</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MzE5MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDktMDUtMDQgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTU0CisgICAgICAgIAor
ICAgICAgICBTdXBwb3J0IEhUTUw1IHRleHQgY29udHJvbCBpbnB1dCB0eXBlczogZW1haWwsIG51
bWJlciwgdGVsLCB1cmwKKyAgICAgICAgCisgICAgICAgIFRoZXNlIGFyZSBhbGwganVzdCB0ZXh0
IGZpZWxkIHZhcmlhbnRzIGJlbG93LgorCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnR5cGUpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2F2ZVN0YXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnJlc3RvcmVTdGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MSW5wdXRFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TElucHV0RWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
SW5wdXRFbGVtZW50OjpjcmVhdGVSZW5kZXJlcik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5w
dXRFbGVtZW50OjphcHBlbmRGb3JtRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRF
bGVtZW50Ojp2YWx1ZVdpdGhEZWZhdWx0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVs
ZW1lbnQ6OnN0b3Jlc1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIGh0
bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVu
dDo6KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmlzVGV4dEZpZWxkKToK
KwogMjAwOS0wNS0wNCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3Bw
CShyZXZpc2lvbiA0MzE5MikKKysrIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzEyLDYgKzMxMiwxMCBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhU
TUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAgICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0
IEF0b21pY1N0cmluZywgY2hlY2tib3gsICgiY2hlY2tib3giKSk7CiAgICAgICAgICAgICByZXR1
cm4gY2hlY2tib3g7CiAgICAgICAgIH0KKyAgICAgICAgY2FzZSBFTUFJTDogeworICAgICAgICAg
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGVtYWlsLCAoImVtYWls
IikpOworICAgICAgICAgICAgcmV0dXJuIGVtYWlsOworICAgICAgICB9CiAgICAgICAgIGNhc2Ug
RklMRTogewogICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJp
bmcsIGZpbGUsICgiZmlsZSIpKTsKICAgICAgICAgICAgIHJldHVybiBmaWxlOwpAQCAtMzI2LDYg
KzMzMCwxMCBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAg
ICAgIH0KICAgICAgICAgY2FzZSBJU0lOREVYOgogICAgICAgICAgICAgcmV0dXJuIGVtcHR5QXRv
bTsKKyAgICAgICAgY2FzZSBOVU1CRVI6IHsKKyAgICAgICAgICAgIERFRklORV9TVEFUSUNfTE9D
QUwoY29uc3QgQXRvbWljU3RyaW5nLCBudW1iZXIsICgibnVtYmVyIikpOworICAgICAgICAgICAg
cmV0dXJuIG51bWJlcjsKKyAgICAgICAgfQogICAgICAgICBjYXNlIFBBU1NXT1JEOiB7CiAgICAg
ICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgcGFzc3dvcmQs
ICgicGFzc3dvcmQiKSk7CiAgICAgICAgICAgICByZXR1cm4gcGFzc3dvcmQ7CkBAIC0zNTAsMTAg
KzM1OCwxOCBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAg
ICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgc3VibWl0LCAo
InN1Ym1pdCIpKTsKICAgICAgICAgICAgIHJldHVybiBzdWJtaXQ7CiAgICAgICAgIH0KKyAgICAg
ICAgY2FzZSBURUxFUEhPTkU6IHsKKyAgICAgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29u
c3QgQXRvbWljU3RyaW5nLCB0ZWxlcGhvbmUsICgidGVsIikpOworICAgICAgICAgICAgcmV0dXJu
IHRlbGVwaG9uZTsKKyAgICAgICAgfQogICAgICAgICBjYXNlIFRFWFQ6IHsKICAgICAgICAgICAg
IERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCB0ZXh0LCAoInRleHQiKSk7
CiAgICAgICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgICAgfQorICAgICAgICBjYXNlIFVSTDog
eworICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIHVy
bCwgKCJ1cmwiKSk7CisgICAgICAgICAgICByZXR1cm4gdXJsOworICAgICAgICB9CiAgICAgfQog
ICAgIHJldHVybiBlbXB0eUF0b207CiB9CkBAIC0zNjUsMTUgKzM4MSwxOSBAQCBib29sIEhUTUxJ
bnB1dEVsZW1lbnQ6OnNhdmVTdGF0ZShTdHJpbmcmCiAKICAgICBzd2l0Y2ggKGlucHV0VHlwZSgp
KSB7CiAgICAgICAgIGNhc2UgQlVUVE9OOgorICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBj
YXNlIEZJTEU6CiAgICAgICAgIGNhc2UgSElEREVOOgogICAgICAgICBjYXNlIElNQUdFOgogICAg
ICAgICBjYXNlIElTSU5ERVg6CisgICAgICAgIGNhc2UgTlVNQkVSOgogICAgICAgICBjYXNlIFJB
TkdFOgogICAgICAgICBjYXNlIFJFU0VUOgogICAgICAgICBjYXNlIFNFQVJDSDoKICAgICAgICAg
Y2FzZSBTVUJNSVQ6CisgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6
CisgICAgICAgIGNhc2UgVVJMOgogICAgICAgICAgICAgcmVzdWx0ID0gdmFsdWUoKTsKICAgICAg
ICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNlIENIRUNLQk9YOgpAQCAtMzkyLDE1ICs0
MTIsMTkgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpyZXN0b3JlU3RhdGUoY29ucwogICAgIEFT
U0VSVChpbnB1dFR5cGUoKSAhPSBQQVNTV09SRCk7IC8vIHNob3VsZCBuZXZlciBzYXZlL3Jlc3Rv
cmUgcGFzc3dvcmQgZmllbGRzCiAgICAgc3dpdGNoIChpbnB1dFR5cGUoKSkgewogICAgICAgICBj
YXNlIEJVVFRPTjoKKyAgICAgICAgY2FzZSBFTUFJTDoKICAgICAgICAgY2FzZSBGSUxFOgogICAg
ICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgY2FzZSBJTUFHRToKICAgICAgICAgY2FzZSBJU0lO
REVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAgY2FzZSBSQU5HRToKICAgICAgICAg
Y2FzZSBSRVNFVDoKICAgICAgICAgY2FzZSBTRUFSQ0g6CiAgICAgICAgIGNhc2UgU1VCTUlUOgor
ICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2FzZSBURVhUOgorICAgICAgICBjYXNl
IFVSTDoKICAgICAgICAgICAgIHNldFZhbHVlKHN0YXRlKTsKICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICBjYXNlIENIRUNLQk9YOgpAQCAtNDk2LDEwICs1MjAsMTQgQEAgdm9pZCBIVE1MSW5w
dXRFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYgogICAgICAgICBjYXNlIEhJRERFTjoKICAgICAg
ICAgICAgIC8vIGEgbm8tb3AgZm9yIHRoaXMgdHlwZQogICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgRU1BSUw6CiAgICAgICAgIGNhc2UgSVNJTkRFWDoKKyAgICAgICAgY2FzZSBOVU1C
RVI6CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgIGNhc2UgU0VBUkNIOgorICAgICAg
ICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2FzZSBURVhUOgorICAgICAgICBjYXNlIFVSTDoK
ICAgICAgICAgICAgIC8vIHNob3VsZCBuZXZlciByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlvbiBo
ZXJlCiAgICAgICAgICAgICBmb2N1cyhmYWxzZSk7CiAgICAgICAgICAgICBicmVhazsKQEAgLTYz
MiwxNiArNjYwLDIwIEBAIGJvb2wgSFRNTElucHV0RWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCgK
ICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAgICAgIGNhc2UgQlVUVE9OOgogICAgICAg
ICBjYXNlIENIRUNLQk9YOgorICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEZJTEU6
CiAgICAgICAgIGNhc2UgSU1BR0U6CiAgICAgICAgIGNhc2UgSVNJTkRFWDoKKyAgICAgICAgY2Fz
ZSBOVU1CRVI6CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgIGNhc2UgUkFESU86CiAg
ICAgICAgIGNhc2UgUkFOR0U6CiAgICAgICAgIGNhc2UgUkVTRVQ6CiAgICAgICAgIGNhc2UgU0VB
UkNIOgogICAgICAgICBjYXNlIFNVQk1JVDoKKyAgICAgICAgY2FzZSBURUxFUEhPTkU6CiAgICAg
ICAgIGNhc2UgVEVYVDoKKyAgICAgICAgY2FzZSBVUkw6CiAgICAgICAgICAgICByZXR1cm4gSFRN
TEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZTo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7CiAg
ICAgICAgIGNhc2UgSElEREVOOgogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNjY4LDEw
ICs3MDAsMTQgQEAgUmVuZGVyT2JqZWN0ICpIVE1MSW5wdXRFbGVtZW50OjpjcmVhdGVSZQogICAg
ICAgICAgICAgcmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRlckltYWdlKHRoaXMpOwogICAgICAgICBj
YXNlIFJBTkdFOgogICAgICAgICAgICAgcmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRlclNsaWRlcih0
aGlzKTsKKyAgICAgICAgY2FzZSBFTUFJTDoKICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAg
ICBjYXNlIE5VTUJFUjoKICAgICAgICAgY2FzZSBQQVNTV09SRDoKICAgICAgICAgY2FzZSBTRUFS
Q0g6CisgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAg
IGNhc2UgVVJMOgogICAgICAgICAgICAgcmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRlclRleHRDb250
cm9sU2luZ2xlTGluZSh0aGlzKTsKICAgICB9CiAgICAgQVNTRVJUKGZhbHNlKTsKQEAgLTc1MCwx
MiArNzg2LDE2IEBAIGJvb2wgSFRNTElucHV0RWxlbWVudDo6YXBwZW5kRm9ybURhdGEoRm8KICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgc3dpdGNoIChpbnB1dFR5cGUoKSkgeworICAgICAg
ICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgY2FzZSBJU0lOREVY
OgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAgY2FzZSBQQVNTV09SRDoKICAgICAgICAg
Y2FzZSBSQU5HRToKICAgICAgICAgY2FzZSBTRUFSQ0g6CisgICAgICAgIGNhc2UgVEVMRVBIT05F
OgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgogICAgICAgICAgICAgLy8g
YWx3YXlzIHN1Y2Nlc3NmdWwKICAgICAgICAgICAgIGVuY29kaW5nLmFwcGVuZERhdGEobmFtZSgp
LCB2YWx1ZSgpKTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtOTA1LDE1ICs5NDUsMTkg
QEAgU3RyaW5nIEhUTUxJbnB1dEVsZW1lbnQ6OnZhbHVlV2l0aERlZmF1bAogICAgICAgICBzd2l0
Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAgICAgICAgICBjYXNlIEJVVFRPTjoKICAgICAgICAgICAg
IGNhc2UgQ0hFQ0tCT1g6CisgICAgICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICAgICAgY2Fz
ZSBGSUxFOgogICAgICAgICAgICAgY2FzZSBISURERU46CiAgICAgICAgICAgICBjYXNlIElNQUdF
OgogICAgICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICAgICAgY2FzZSBOVU1CRVI6CiAg
ICAgICAgICAgICBjYXNlIFBBU1NXT1JEOgogICAgICAgICAgICAgY2FzZSBSQURJTzoKICAgICAg
ICAgICAgIGNhc2UgUkFOR0U6CiAgICAgICAgICAgICBjYXNlIFNFQVJDSDoKKyAgICAgICAgICAg
IGNhc2UgVEVMRVBIT05FOgogICAgICAgICAgICAgY2FzZSBURVhUOgorICAgICAgICAgICAgY2Fz
ZSBVUkw6CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIFJFU0VUOgog
ICAgICAgICAgICAgICAgIHYgPSByZXNldEJ1dHRvbkRlZmF1bHRMYWJlbCgpOwpAQCAtMTAwMSwx
MiArMTA0NSwxNiBAQCBib29sIEhUTUxJbnB1dEVsZW1lbnQ6OnN0b3Jlc1ZhbHVlU2VwYXJhCiAg
ICAgICAgIGNhc2UgUkVTRVQ6CiAgICAgICAgIGNhc2UgU1VCTUlUOgogICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEZJTEU6CiAgICAg
ICAgIGNhc2UgSVNJTkRFWDoKKyAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgIGNhc2UgUEFT
U1dPUkQ6CiAgICAgICAgIGNhc2UgUkFOR0U6CiAgICAgICAgIGNhc2UgU0VBUkNIOgorICAgICAg
ICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2FzZSBURVhUOgorICAgICAgICBjYXNlIFVSTDoK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgICByZXR1cm4gZmFsc2U7CkBAIC0x
MTcyLDEyICsxMjIwLDE2IEBAIHZvaWQgSFRNTElucHV0RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFu
ZGwKICAgICAgICAgaWYgKGNoYXJDb2RlID09ICdccicpIHsKICAgICAgICAgICAgIHN3aXRjaCAo
aW5wdXRUeXBlKCkpIHsKICAgICAgICAgICAgICAgICBjYXNlIENIRUNLQk9YOgorICAgICAgICAg
ICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgICAgICAgICAgY2FzZSBISURERU46CiAgICAgICAg
ICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICAgICAgICAgIGNhc2UgTlVNQkVSOgogICAg
ICAgICAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgICAgICAgICAgY2FzZSBSQU5HRToK
ICAgICAgICAgICAgICAgICBjYXNlIFNFQVJDSDoKKyAgICAgICAgICAgICAgICBjYXNlIFRFTEVQ
SE9ORToKICAgICAgICAgICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgICAgICAgICAgY2FzZSBV
Ukw6CiAgICAgICAgICAgICAgICAgICAgIC8vIFNpbXVsYXRlIG1vdXNlIGNsaWNrIG9uIHRoZSBk
ZWZhdWx0IGZvcm0gYnV0dG9uIGZvciBlbnRlciBmb3IgdGhlc2UgdHlwZXMgb2YgZWxlbWVudHMu
CiAgICAgICAgICAgICAgICAgICAgIGNsaWNrRGVmYXVsdEZvcm1CdXR0b24gPSB0cnVlOwogICAg
ICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTEyOTUsMTIgKzEzNDcsMTYgQEAgdm9pZCBIVE1M
SW5wdXRFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbAogICAgICAgICAgICAgICAgICAgICBpZiAo
IWNoZWNrZWQoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrRWxlbWVudCA9IHRydWU7
CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgRU1BSUw6
CiAgICAgICAgICAgICAgICAgY2FzZSBISURERU46CiAgICAgICAgICAgICAgICAgY2FzZSBJU0lO
REVYOgorICAgICAgICAgICAgICAgIGNhc2UgTlVNQkVSOgogICAgICAgICAgICAgICAgIGNhc2Ug
UEFTU1dPUkQ6CiAgICAgICAgICAgICAgICAgY2FzZSBSQU5HRToKICAgICAgICAgICAgICAgICBj
YXNlIFNFQVJDSDoKKyAgICAgICAgICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgICAg
ICAgICBjYXNlIFRFWFQ6CisgICAgICAgICAgICAgICAgY2FzZSBVUkw6CiAgICAgICAgICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICB9CkluZGV4OiBXZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MSW5w
dXRFbGVtZW50LmgJKHJldmlzaW9uIDQzMTkyKQorKysgV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNTAsNyArNTAsMTEgQEAgcHVibGljOgogICAgICAg
ICBJTUFHRSwKICAgICAgICAgQlVUVE9OLAogICAgICAgICBTRUFSQ0gsCi0gICAgICAgIFJBTkdF
CisgICAgICAgIFJBTkdFLAorICAgICAgICBFTUFJTCwKKyAgICAgICAgTlVNQkVSLAorICAgICAg
ICBURUxFUEhPTkUsCisgICAgICAgIFVSTAogICAgIH07CiAgICAgCiAgICAgZW51bSBBdXRvQ29t
cGxldGVTZXR0aW5nIHsKQEAgLTg4LDcgKzkyLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc1Rl
eHRCdXR0b24oKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gU1VCTUlUIHx8IG1fdHlwZSA9PSBS
RVNFVCB8fCBtX3R5cGUgPT0gQlVUVE9OOyB9CiAgICAgdmlydHVhbCBib29sIGlzUmFkaW9CdXR0
b24oKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gUkFESU87IH0KLSAgICB2aXJ0dWFsIGJvb2wg
aXNUZXh0RmllbGQoKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gVEVYVCB8fCBtX3R5cGUgPT0g
UEFTU1dPUkQgfHwgbV90eXBlID09IFNFQVJDSCB8fCBtX3R5cGUgPT0gSVNJTkRFWDsgfQorICAg
IHZpcnR1YWwgYm9vbCBpc1RleHRGaWVsZCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBURVhU
IHx8IG1fdHlwZSA9PSBQQVNTV09SRCB8fCBtX3R5cGUgPT0gU0VBUkNIIHx8IG1fdHlwZSA9PSBJ
U0lOREVYIHx8IG1fdHlwZSA9PSBFTUFJTCB8fCBtX3R5cGUgPT0gTlVNQkVSIHx8IG1fdHlwZSA9
PSBURUxFUEhPTkUgfHwgbV90eXBlID09IFVSTDsgfQogICAgIHZpcnR1YWwgYm9vbCBpc1NlYXJj
aEZpZWxkKCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFNFQVJDSDsgfQogICAgIHZpcnR1YWwg
Ym9vbCBpc0lucHV0VHlwZUhpZGRlbigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBISURERU47
IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNQYXNzd29yZEZpZWxkKCkgY29uc3QgeyByZXR1cm4gbV90
eXBlID09IFBBU1NXT1JEOyB9CkBAIC0yMzIsNyArMjM2LDcgQEAgcHJpdmF0ZToKICAgICBzaG9y
dCBtX21heFJlc3VsdHM7CiAgICAgT3duUHRyPEhUTUxJbWFnZUxvYWRlcj4gbV9pbWFnZUxvYWRl
cjsKICAgICBSZWZQdHI8RmlsZUxpc3Q+IG1fZmlsZUxpc3Q7Ci0gICAgdW5zaWduZWQgbV90eXBl
IDogNDsgLy8gSW5wdXRUeXBlIAorICAgIHVuc2lnbmVkIG1fdHlwZSA6IDU7IC8vIElucHV0VHlw
ZSAKICAgICBib29sIG1fY2hlY2tlZCA6IDE7CiAgICAgYm9vbCBtX2RlZmF1bHRDaGVja2VkIDog
MTsKICAgICBib29sIG1fdXNlRGVmYXVsdENoZWNrZWQgOiAxOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>30001</attachid>
            <date>2009-05-04 16:29:44 -0700</date>
            <delta_ts>2009-05-04 19:47:22 -0700</delta_ts>
            <desc>updated patch to fix DOMHTML.mm</desc>
            <filename>25554.patch.txt</filename>
            <type>text/plain</type>
            <size>11032</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MzE5NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDktMDUtMDQgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTU0CisgICAgICAgIAor
ICAgICAgICBTdXBwb3J0IEhUTUw1IHRleHQgY29udHJvbCBpbnB1dCB0eXBlczogZW1haWwsIG51
bWJlciwgdGVsLCB1cmwKKworICAgICAgICAqIGJpbmRpbmdzL29iamMvRE9NSFRNTC5tbToKKyAg
ICAgICAgKC1bRE9NSFRNTElucHV0RWxlbWVudCBfaXNUZXh0RmllbGRdKTogQ2FsbCBIVE1MSW5w
dXRFbGVtZW50Ojppc1RleHRGaWVsZCBkaXJlY3RseS4KKyAgICAgICAgKiBodG1sL0hUTUxJbnB1
dEVsZW1lbnQuY3BwOiBVc2UgdGhlIG5ldyB0eXBlcyB3aGVyZSBhcHByb3ByaWF0ZS4KKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnR5cGUpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTElucHV0RWxlbWVudDo6c2F2ZVN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1
dEVsZW1lbnQ6OnJlc3RvcmVTdGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVt
ZW50OjphY2Nlc3NLZXlBY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVu
dDo6cmVuZGVyZXJJc05lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50
OjpjcmVhdGVSZW5kZXJlcik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Ojph
cHBlbmRGb3JtRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Ojp2YWx1
ZVdpdGhEZWZhdWx0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnN0b3Jl
c1ZhbHVlU2VwYXJhdGVGcm9tQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1
dEVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0
RWxlbWVudC5oOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6Oik6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Ojppc1RleHRGaWVsZCk6CisKIDIw
MDktMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUwu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUwubW0JKHJldmlz
aW9uIDQzMTk0KQorKysgV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUwubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTEwNCwzMyArMTA0LDcgQEAKIAogLSAoQk9PTClfaXNUZXh0RmllbGQKIHsKLSAg
ICAvLyBXZSBjb3VsZCBtYWtlIHRoaXMgcHVibGljIEFQSSBhcy1pcywgb3Igd2UgY291bGQgY2hh
bmdlIGl0IGludG8gYSBtZXRob2QgdGhhdCByZXR1cm5zIHdoZXRoZXIKLSAgICAvLyB0aGUgZWxl
bWVudCBpcyBhIHRleHQgZmllbGQgb3IgYSBidXR0b24gb3IgLi4uID8KLSAgICBzdGF0aWMgTlNB
cnJheSAqdGV4dElucHV0VHlwZXMgPSBuaWw7Ci0jaWZuZGVmIE5ERUJVRwotICAgIHN0YXRpYyBO
U0FycmF5ICpub25UZXh0SW5wdXRUeXBlcyA9IG5pbDsKLSNlbmRpZgotICAgIAotICAgIE5TU3Ry
aW5nICpmaWVsZFR5cGUgPSBbc2VsZiB0eXBlXTsKLSAgICAKLSAgICAvLyBObyB0eXBlIGF0IGFs
bCBpcyB0cmVhdGVkIGFzIHRleHQgdHlwZQotICAgIGlmIChbZmllbGRUeXBlIGxlbmd0aF0gPT0g
MCkKLSAgICAgICAgcmV0dXJuIFlFUzsKLSAgICAKLSAgICBpZiAodGV4dElucHV0VHlwZXMgPT0g
bmlsKQotICAgICAgICB0ZXh0SW5wdXRUeXBlcyA9IFtbTlNTZXQgYWxsb2NdIGluaXRXaXRoT2Jq
ZWN0czpAInRleHQiLCBAInBhc3N3b3JkIiwgQCJzZWFyY2giLCBAImlzaW5kZXgiLCBuaWxdOwot
ICAgIAotICAgIEJPT0wgaXNUZXh0ID0gW3RleHRJbnB1dFR5cGVzIGNvbnRhaW5zT2JqZWN0Oltm
aWVsZFR5cGUgbG93ZXJjYXNlU3RyaW5nXV07Ci0gICAgCi0jaWZuZGVmIE5ERUJVRwotICAgIGlm
IChub25UZXh0SW5wdXRUeXBlcyA9PSBuaWwpCi0gICAgICAgIG5vblRleHRJbnB1dFR5cGVzID0g
W1tOU1NldCBhbGxvY10gaW5pdFdpdGhPYmplY3RzOkAiY2hlY2tib3giLCBAInJhZGlvIiwgQCJz
dWJtaXQiLCBAInJlc2V0IiwgQCJmaWxlIiwgQCJoaWRkZW4iLCBAImltYWdlIiwgQCJidXR0b24i
LCBAInJhbmdlIiwgbmlsXTsKLSAgICAKLSAgICAvLyBDYXRjaCBjYXNlcyB3aGVyZSBhIG5ldyBp
bnB1dCB0eXBlIGhhcyBiZWVuIGFkZGVkIHRoYXQncyBub3QgaW4gdGhlc2UgbGlzdHMuCi0gICAg
QVNTRVJUKGlzVGV4dCB8fCBbbm9uVGV4dElucHV0VHlwZXMgY29udGFpbnNPYmplY3Q6W2ZpZWxk
VHlwZSBsb3dlcmNhc2VTdHJpbmddXSk7Ci0jZW5kaWYgICAgCi0gICAgCi0gICAgcmV0dXJuIGlz
VGV4dDsKKyAgICByZXR1cm4gY29yZShzZWxmKS0+aXNUZXh0RmllbGQoKTsKIH0KIAogLSAoTlNS
ZWN0KV9yZWN0T25TY3JlZW4KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAJKHJldmlz
aW9uIDQzMTk0KQorKysgV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0zMTIsNiArMzEyLDEwIEBAIGNvbnN0IEF0b21pY1N0cmluZyYgSFRNTElucHV0
RWxlbWVudDo6dHkKICAgICAgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWlj
U3RyaW5nLCBjaGVja2JveCwgKCJjaGVja2JveCIpKTsKICAgICAgICAgICAgIHJldHVybiBjaGVj
a2JveDsKICAgICAgICAgfQorICAgICAgICBjYXNlIEVNQUlMOiB7CisgICAgICAgICAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgZW1haWwsICgiZW1haWwiKSk7Cisg
ICAgICAgICAgICByZXR1cm4gZW1haWw7CisgICAgICAgIH0KICAgICAgICAgY2FzZSBGSUxFOiB7
CiAgICAgICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgZmls
ZSwgKCJmaWxlIikpOwogICAgICAgICAgICAgcmV0dXJuIGZpbGU7CkBAIC0zMjYsNiArMzMwLDEw
IEBAIGNvbnN0IEF0b21pY1N0cmluZyYgSFRNTElucHV0RWxlbWVudDo6dHkKICAgICAgICAgfQog
ICAgICAgICBjYXNlIElTSU5ERVg6CiAgICAgICAgICAgICByZXR1cm4gZW1wdHlBdG9tOworICAg
ICAgICBjYXNlIE5VTUJFUjogeworICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25z
dCBBdG9taWNTdHJpbmcsIG51bWJlciwgKCJudW1iZXIiKSk7CisgICAgICAgICAgICByZXR1cm4g
bnVtYmVyOworICAgICAgICB9CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6IHsKICAgICAgICAgICAg
IERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBwYXNzd29yZCwgKCJwYXNz
d29yZCIpKTsKICAgICAgICAgICAgIHJldHVybiBwYXNzd29yZDsKQEAgLTM1MCwxMCArMzU4LDE4
IEBAIGNvbnN0IEF0b21pY1N0cmluZyYgSFRNTElucHV0RWxlbWVudDo6dHkKICAgICAgICAgICAg
IERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBzdWJtaXQsICgic3VibWl0
IikpOwogICAgICAgICAgICAgcmV0dXJuIHN1Ym1pdDsKICAgICAgICAgfQorICAgICAgICBjYXNl
IFRFTEVQSE9ORTogeworICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9t
aWNTdHJpbmcsIHRlbGVwaG9uZSwgKCJ0ZWwiKSk7CisgICAgICAgICAgICByZXR1cm4gdGVsZXBo
b25lOworICAgICAgICB9CiAgICAgICAgIGNhc2UgVEVYVDogewogICAgICAgICAgICAgREVGSU5F
X1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIHRleHQsICgidGV4dCIpKTsKICAgICAg
ICAgICAgIHJldHVybiB0ZXh0OwogICAgICAgICB9CisgICAgICAgIGNhc2UgVVJMOiB7CisgICAg
ICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgdXJsLCAoInVy
bCIpKTsKKyAgICAgICAgICAgIHJldHVybiB1cmw7CisgICAgICAgIH0KICAgICB9CiAgICAgcmV0
dXJuIGVtcHR5QXRvbTsKIH0KQEAgLTM2NSwxNSArMzgxLDE5IEBAIGJvb2wgSFRNTElucHV0RWxl
bWVudDo6c2F2ZVN0YXRlKFN0cmluZyYKIAogICAgIHN3aXRjaCAoaW5wdXRUeXBlKCkpIHsKICAg
ICAgICAgY2FzZSBCVVRUT046CisgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgIGNhc2UgRklM
RToKICAgICAgICAgY2FzZSBISURERU46CiAgICAgICAgIGNhc2UgSU1BR0U6CiAgICAgICAgIGNh
c2UgSVNJTkRFWDoKKyAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgIGNhc2UgUkFOR0U6CiAg
ICAgICAgIGNhc2UgUkVTRVQ6CiAgICAgICAgIGNhc2UgU0VBUkNIOgogICAgICAgICBjYXNlIFNV
Qk1JVDoKKyAgICAgICAgY2FzZSBURUxFUEhPTkU6CiAgICAgICAgIGNhc2UgVEVYVDoKKyAgICAg
ICAgY2FzZSBVUkw6CiAgICAgICAgICAgICByZXN1bHQgPSB2YWx1ZSgpOwogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgICAgIGNhc2UgQ0hFQ0tCT1g6CkBAIC0zOTIsMTUgKzQxMiwxOSBA
QCB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnJlc3RvcmVTdGF0ZShjb25zCiAgICAgQVNTRVJUKGlu
cHV0VHlwZSgpICE9IFBBU1NXT1JEKTsgLy8gc2hvdWxkIG5ldmVyIHNhdmUvcmVzdG9yZSBwYXNz
d29yZCBmaWVsZHMKICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAgICAgIGNhc2UgQlVU
VE9OOgorICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEZJTEU6CiAgICAgICAgIGNh
c2UgSElEREVOOgogICAgICAgICBjYXNlIElNQUdFOgogICAgICAgICBjYXNlIElTSU5ERVg6Cisg
ICAgICAgIGNhc2UgTlVNQkVSOgogICAgICAgICBjYXNlIFJBTkdFOgogICAgICAgICBjYXNlIFJF
U0VUOgogICAgICAgICBjYXNlIFNFQVJDSDoKICAgICAgICAgY2FzZSBTVUJNSVQ6CisgICAgICAg
IGNhc2UgVEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgog
ICAgICAgICAgICAgc2V0VmFsdWUoc3RhdGUpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IGNhc2UgQ0hFQ0tCT1g6CkBAIC00OTYsMTAgKzUyMCwxNCBAQCB2b2lkIEhUTUxJbnB1dEVsZW1l
bnQ6OmFjY2Vzc0tleUFjdGlvbihiCiAgICAgICAgIGNhc2UgSElEREVOOgogICAgICAgICAgICAg
Ly8gYSBuby1vcCBmb3IgdGhpcyB0eXBlCiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSBFTUFJTDoKICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAg
ICAgICAgY2FzZSBQQVNTV09SRDoKICAgICAgICAgY2FzZSBTRUFSQ0g6CisgICAgICAgIGNhc2Ug
VEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgogICAgICAg
ICAgICAgLy8gc2hvdWxkIG5ldmVyIHJlc3RvcmUgcHJldmlvdXMgc2VsZWN0aW9uIGhlcmUKICAg
ICAgICAgICAgIGZvY3VzKGZhbHNlKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtNjMyLDE2ICs2
NjAsMjAgQEAgYm9vbCBIVE1MSW5wdXRFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKAogICAgIHN3
aXRjaCAoaW5wdXRUeXBlKCkpIHsKICAgICAgICAgY2FzZSBCVVRUT046CiAgICAgICAgIGNhc2Ug
Q0hFQ0tCT1g6CisgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgIGNhc2UgRklMRToKICAgICAg
ICAgY2FzZSBJTUFHRToKICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJF
UjoKICAgICAgICAgY2FzZSBQQVNTV09SRDoKICAgICAgICAgY2FzZSBSQURJTzoKICAgICAgICAg
Y2FzZSBSQU5HRToKICAgICAgICAgY2FzZSBSRVNFVDoKICAgICAgICAgY2FzZSBTRUFSQ0g6CiAg
ICAgICAgIGNhc2UgU1VCTUlUOgorICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2Fz
ZSBURVhUOgorICAgICAgICBjYXNlIFVSTDoKICAgICAgICAgICAgIHJldHVybiBIVE1MRm9ybUNv
bnRyb2xFbGVtZW50V2l0aFN0YXRlOjpyZW5kZXJlcklzTmVlZGVkKHN0eWxlKTsKICAgICAgICAg
Y2FzZSBISURERU46CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC02NjgsMTAgKzcwMCwx
NCBAQCBSZW5kZXJPYmplY3QgKkhUTUxJbnB1dEVsZW1lbnQ6OmNyZWF0ZVJlCiAgICAgICAgICAg
ICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVySW1hZ2UodGhpcyk7CiAgICAgICAgIGNhc2UgUkFO
R0U6CiAgICAgICAgICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVyU2xpZGVyKHRoaXMpOwor
ICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIElTSU5ERVg6CisgICAgICAgIGNhc2Ug
TlVNQkVSOgogICAgICAgICBjYXNlIFBBU1NXT1JEOgogICAgICAgICBjYXNlIFNFQVJDSDoKKyAg
ICAgICAgY2FzZSBURUxFUEhPTkU6CiAgICAgICAgIGNhc2UgVEVYVDoKKyAgICAgICAgY2FzZSBV
Ukw6CiAgICAgICAgICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVyVGV4dENvbnRyb2xTaW5n
bGVMaW5lKHRoaXMpOwogICAgIH0KICAgICBBU1NFUlQoZmFsc2UpOwpAQCAtNzUwLDEyICs3ODYs
MTYgQEAgYm9vbCBIVE1MSW5wdXRFbGVtZW50OjphcHBlbmRGb3JtRGF0YShGbwogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CisgICAgICAgIGNhc2Ug
RU1BSUw6CiAgICAgICAgIGNhc2UgSElEREVOOgogICAgICAgICBjYXNlIElTSU5ERVg6CisgICAg
ICAgIGNhc2UgTlVNQkVSOgogICAgICAgICBjYXNlIFBBU1NXT1JEOgogICAgICAgICBjYXNlIFJB
TkdFOgogICAgICAgICBjYXNlIFNFQVJDSDoKKyAgICAgICAgY2FzZSBURUxFUEhPTkU6CiAgICAg
ICAgIGNhc2UgVEVYVDoKKyAgICAgICAgY2FzZSBVUkw6CiAgICAgICAgICAgICAvLyBhbHdheXMg
c3VjY2Vzc2Z1bAogICAgICAgICAgICAgZW5jb2RpbmcuYXBwZW5kRGF0YShuYW1lKCksIHZhbHVl
KCkpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC05MDUsMTUgKzk0NSwxOSBAQCBTdHJp
bmcgSFRNTElucHV0RWxlbWVudDo6dmFsdWVXaXRoRGVmYXVsCiAgICAgICAgIHN3aXRjaCAoaW5w
dXRUeXBlKCkpIHsKICAgICAgICAgICAgIGNhc2UgQlVUVE9OOgogICAgICAgICAgICAgY2FzZSBD
SEVDS0JPWDoKKyAgICAgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgICAgICBjYXNlIEZJTEU6
CiAgICAgICAgICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgICAgIGNhc2UgSU1BR0U6CiAgICAg
ICAgICAgICBjYXNlIElTSU5ERVg6CisgICAgICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAg
ICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgICAgICBjYXNlIFJBRElPOgogICAgICAgICAgICAg
Y2FzZSBSQU5HRToKICAgICAgICAgICAgIGNhc2UgU0VBUkNIOgorICAgICAgICAgICAgY2FzZSBU
RUxFUEhPTkU6CiAgICAgICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgICAgICBjYXNlIFVSTDoK
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgUkVTRVQ6CiAgICAgICAg
ICAgICAgICAgdiA9IHJlc2V0QnV0dG9uRGVmYXVsdExhYmVsKCk7CkBAIC0xMDAxLDEyICsxMDQ1
LDE2IEBAIGJvb2wgSFRNTElucHV0RWxlbWVudDo6c3RvcmVzVmFsdWVTZXBhcmEKICAgICAgICAg
Y2FzZSBSRVNFVDoKICAgICAgICAgY2FzZSBTVUJNSVQ6CiAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgIGNhc2UgRklMRToKICAgICAgICAgY2Fz
ZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAgY2FzZSBQQVNTV09SRDoK
ICAgICAgICAgY2FzZSBSQU5HRToKICAgICAgICAgY2FzZSBTRUFSQ0g6CisgICAgICAgIGNhc2Ug
VEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJldHVybiBmYWxzZTsKQEAgLTExNzIsMTIg
KzEyMjAsMTYgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbAogICAg
ICAgICBpZiAoY2hhckNvZGUgPT0gJ1xyJykgewogICAgICAgICAgICAgc3dpdGNoIChpbnB1dFR5
cGUoKSkgewogICAgICAgICAgICAgICAgIGNhc2UgQ0hFQ0tCT1g6CisgICAgICAgICAgICAgICAg
Y2FzZSBFTUFJTDoKICAgICAgICAgICAgICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgICAgICAg
ICBjYXNlIElTSU5ERVg6CisgICAgICAgICAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgICAg
ICAgICAgY2FzZSBQQVNTV09SRDoKICAgICAgICAgICAgICAgICBjYXNlIFJBTkdFOgogICAgICAg
ICAgICAgICAgIGNhc2UgU0VBUkNIOgorICAgICAgICAgICAgICAgIGNhc2UgVEVMRVBIT05FOgog
ICAgICAgICAgICAgICAgIGNhc2UgVEVYVDoKKyAgICAgICAgICAgICAgICBjYXNlIFVSTDoKICAg
ICAgICAgICAgICAgICAgICAgLy8gU2ltdWxhdGUgbW91c2UgY2xpY2sgb24gdGhlIGRlZmF1bHQg
Zm9ybSBidXR0b24gZm9yIGVudGVyIGZvciB0aGVzZSB0eXBlcyBvZiBlbGVtZW50cy4KICAgICAg
ICAgICAgICAgICAgICAgY2xpY2tEZWZhdWx0Rm9ybUJ1dHRvbiA9IHRydWU7CiAgICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwpAQCAtMTI5NSwxMiArMTM0NywxNiBAQCB2b2lkIEhUTUxJbnB1dEVs
ZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsCiAgICAgICAgICAgICAgICAgICAgIGlmICghY2hlY2tl
ZCgpKQogICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2tFbGVtZW50ID0gdHJ1ZTsKICAgICAg
ICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBFTUFJTDoKICAgICAg
ICAgICAgICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgICAgICAgICBjYXNlIElTSU5ERVg6Cisg
ICAgICAgICAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgICAgICAgICAgY2FzZSBQQVNTV09S
RDoKICAgICAgICAgICAgICAgICBjYXNlIFJBTkdFOgogICAgICAgICAgICAgICAgIGNhc2UgU0VB
UkNIOgorICAgICAgICAgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAgICAgICAgICAgICAgIGNh
c2UgVEVYVDoKKyAgICAgICAgICAgICAgICBjYXNlIFVSTDoKICAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1M
SW5wdXRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaAkocmV2aXNpb24gNDMxOTQpCisrKyBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC01MCw3ICs1MCwxMSBAQCBwdWJsaWM6CiAgICAgICAgIElNQUdF
LAogICAgICAgICBCVVRUT04sCiAgICAgICAgIFNFQVJDSCwKLSAgICAgICAgUkFOR0UKKyAgICAg
ICAgUkFOR0UsCisgICAgICAgIEVNQUlMLAorICAgICAgICBOVU1CRVIsCisgICAgICAgIFRFTEVQ
SE9ORSwKKyAgICAgICAgVVJMCiAgICAgfTsKICAgICAKICAgICBlbnVtIEF1dG9Db21wbGV0ZVNl
dHRpbmcgewpAQCAtODgsNyArOTIsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzVGV4dEJ1dHRv
bigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBTVUJNSVQgfHwgbV90eXBlID09IFJFU0VUIHx8
IG1fdHlwZSA9PSBCVVRUT047IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNSYWRpb0J1dHRvbigpIGNv
bnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBSQURJTzsgfQotICAgIHZpcnR1YWwgYm9vbCBpc1RleHRG
aWVsZCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBURVhUIHx8IG1fdHlwZSA9PSBQQVNTV09S
RCB8fCBtX3R5cGUgPT0gU0VBUkNIIHx8IG1fdHlwZSA9PSBJU0lOREVYOyB9CisgICAgdmlydHVh
bCBib29sIGlzVGV4dEZpZWxkKCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFRFWFQgfHwgbV90
eXBlID09IFBBU1NXT1JEIHx8IG1fdHlwZSA9PSBTRUFSQ0ggfHwgbV90eXBlID09IElTSU5ERVgg
fHwgbV90eXBlID09IEVNQUlMIHx8IG1fdHlwZSA9PSBOVU1CRVIgfHwgbV90eXBlID09IFRFTEVQ
SE9ORSB8fCBtX3R5cGUgPT0gVVJMOyB9CiAgICAgdmlydHVhbCBib29sIGlzU2VhcmNoRmllbGQo
KSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gU0VBUkNIOyB9CiAgICAgdmlydHVhbCBib29sIGlz
SW5wdXRUeXBlSGlkZGVuKCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IEhJRERFTjsgfQogICAg
IHZpcnR1YWwgYm9vbCBpc1Bhc3N3b3JkRmllbGQoKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0g
UEFTU1dPUkQ7IH0KQEAgLTIzMiw3ICsyMzYsNyBAQCBwcml2YXRlOgogICAgIHNob3J0IG1fbWF4
UmVzdWx0czsKICAgICBPd25QdHI8SFRNTEltYWdlTG9hZGVyPiBtX2ltYWdlTG9hZGVyOwogICAg
IFJlZlB0cjxGaWxlTGlzdD4gbV9maWxlTGlzdDsKLSAgICB1bnNpZ25lZCBtX3R5cGUgOiA0OyAv
LyBJbnB1dFR5cGUgCisgICAgdW5zaWduZWQgbV90eXBlIDogNTsgLy8gSW5wdXRUeXBlIAogICAg
IGJvb2wgbV9jaGVja2VkIDogMTsKICAgICBib29sIG1fZGVmYXVsdENoZWNrZWQgOiAxOwogICAg
IGJvb2wgbV91c2VEZWZhdWx0Q2hlY2tlZCA6IDE7Cg==
</data>
<flag name="review"
          id="15046"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>30008</attachid>
            <date>2009-05-04 19:47:22 -0700</date>
            <delta_ts>2009-05-05 17:25:33 -0700</delta_ts>
            <desc>Now with working code and layout tests</desc>
            <filename>25554.patch.txt</filename>
            <type>text/plain</type>
            <size>14188</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MzIwMSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzEgQEAKKzIwMDktMDUtMDQgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTU0CisgICAgICAgIAor
ICAgICAgICBTdXBwb3J0IEhUTUw1IHRleHQgY29udHJvbCBpbnB1dCB0eXBlczogZW1haWwsIG51
bWJlciwgdGVsLCB1cmwKKworICAgICAgICBUZXN0OiBmYXN0L2h0bWwvdGV4dC1maWVsZC1pbnB1
dC10eXBlcy5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy9vYmpjL0RPTUhUTUwubW06CisgICAg
ICAgICgtW0RPTUhUTUxJbnB1dEVsZW1lbnQgX2lzVGV4dEZpZWxkXSk6IENhbGwgSFRNTElucHV0
RWxlbWVudDo6aXNUZXh0RmllbGQgZGlyZWN0bHkuCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmNwcDogVXNlIHRoZSBuZXcgdHlwZXMgd2hlcmUgYXBwcm9wcmlhdGUuCisgICAgICAg
IChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50OjpzZXRJbnB1dFR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTElucHV0RWxlbWVudDo6dHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5w
dXRFbGVtZW50OjpzYXZlU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVu
dDo6cmVzdG9yZVN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmFj
Y2Vzc0tleUFjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50OjpyZW5k
ZXJlcklzTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmNyZWF0
ZVJlbmRlcmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmFwcGVuZEZv
cm1EYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnZhbHVlV2l0aERl
ZmF1bHQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c3RvcmVzVmFsdWVT
ZXBhcmF0ZUZyb21BdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVu
dDo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50
Lmg6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6KToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmlzVGV4dEZpZWxkKToKKwogMjAwOS0wNS0w
NCAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgU2FtICdUaGUgQmVsbHknIFdlaW5pZwpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RP
TUhUTUwubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUwubW0J
KHJldmlzaW9uIDQzMjAxKQorKysgV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUwubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEwNCwzMyArMTA0LDcgQEAKIAogLSAoQk9PTClfaXNUZXh0RmllbGQK
IHsKLSAgICAvLyBXZSBjb3VsZCBtYWtlIHRoaXMgcHVibGljIEFQSSBhcy1pcywgb3Igd2UgY291
bGQgY2hhbmdlIGl0IGludG8gYSBtZXRob2QgdGhhdCByZXR1cm5zIHdoZXRoZXIKLSAgICAvLyB0
aGUgZWxlbWVudCBpcyBhIHRleHQgZmllbGQgb3IgYSBidXR0b24gb3IgLi4uID8KLSAgICBzdGF0
aWMgTlNBcnJheSAqdGV4dElucHV0VHlwZXMgPSBuaWw7Ci0jaWZuZGVmIE5ERUJVRwotICAgIHN0
YXRpYyBOU0FycmF5ICpub25UZXh0SW5wdXRUeXBlcyA9IG5pbDsKLSNlbmRpZgotICAgIAotICAg
IE5TU3RyaW5nICpmaWVsZFR5cGUgPSBbc2VsZiB0eXBlXTsKLSAgICAKLSAgICAvLyBObyB0eXBl
IGF0IGFsbCBpcyB0cmVhdGVkIGFzIHRleHQgdHlwZQotICAgIGlmIChbZmllbGRUeXBlIGxlbmd0
aF0gPT0gMCkKLSAgICAgICAgcmV0dXJuIFlFUzsKLSAgICAKLSAgICBpZiAodGV4dElucHV0VHlw
ZXMgPT0gbmlsKQotICAgICAgICB0ZXh0SW5wdXRUeXBlcyA9IFtbTlNTZXQgYWxsb2NdIGluaXRX
aXRoT2JqZWN0czpAInRleHQiLCBAInBhc3N3b3JkIiwgQCJzZWFyY2giLCBAImlzaW5kZXgiLCBu
aWxdOwotICAgIAotICAgIEJPT0wgaXNUZXh0ID0gW3RleHRJbnB1dFR5cGVzIGNvbnRhaW5zT2Jq
ZWN0OltmaWVsZFR5cGUgbG93ZXJjYXNlU3RyaW5nXV07Ci0gICAgCi0jaWZuZGVmIE5ERUJVRwot
ICAgIGlmIChub25UZXh0SW5wdXRUeXBlcyA9PSBuaWwpCi0gICAgICAgIG5vblRleHRJbnB1dFR5
cGVzID0gW1tOU1NldCBhbGxvY10gaW5pdFdpdGhPYmplY3RzOkAiY2hlY2tib3giLCBAInJhZGlv
IiwgQCJzdWJtaXQiLCBAInJlc2V0IiwgQCJmaWxlIiwgQCJoaWRkZW4iLCBAImltYWdlIiwgQCJi
dXR0b24iLCBAInJhbmdlIiwgbmlsXTsKLSAgICAKLSAgICAvLyBDYXRjaCBjYXNlcyB3aGVyZSBh
IG5ldyBpbnB1dCB0eXBlIGhhcyBiZWVuIGFkZGVkIHRoYXQncyBub3QgaW4gdGhlc2UgbGlzdHMu
Ci0gICAgQVNTRVJUKGlzVGV4dCB8fCBbbm9uVGV4dElucHV0VHlwZXMgY29udGFpbnNPYmplY3Q6
W2ZpZWxkVHlwZSBsb3dlcmNhc2VTdHJpbmddXSk7Ci0jZW5kaWYgICAgCi0gICAgCi0gICAgcmV0
dXJuIGlzVGV4dDsKKyAgICByZXR1cm4gY29yZShzZWxmKS0+aXNUZXh0RmllbGQoKTsKIH0KIAog
LSAoTlNSZWN0KV9yZWN0T25TY3JlZW4KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAJ
KHJldmlzaW9uIDQzMjAxKQorKysgV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMzAsNiArMjMwLDE0IEBAIHZvaWQgSFRNTElucHV0RWxlbWVudDo6
c2V0SW5wdXRUeXBlKGNvbnMKICAgICAgICAgbmV3VHlwZSA9IFNFQVJDSDsKICAgICBlbHNlIGlm
IChlcXVhbElnbm9yaW5nQ2FzZSh0LCAicmFuZ2UiKSkKICAgICAgICAgbmV3VHlwZSA9IFJBTkdF
OworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHQsICJlbWFpbCIpKQorICAgICAgICBu
ZXdUeXBlID0gRU1BSUw7CisgICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodCwgIm51bWJl
ciIpKQorICAgICAgICBuZXdUeXBlID0gTlVNQkVSOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3Jp
bmdDYXNlKHQsICJ0ZWwiKSkKKyAgICAgICAgbmV3VHlwZSA9IFRFTEVQSE9ORTsKKyAgICBlbHNl
IGlmIChlcXVhbElnbm9yaW5nQ2FzZSh0LCAidXJsIikpCisgICAgICAgIG5ld1R5cGUgPSBVUkw7
CiAgICAgZWxzZQogICAgICAgICBuZXdUeXBlID0gVEVYVDsKIApAQCAtMzEyLDYgKzMyMCwxMCBA
QCBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAgICAgICAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0b21pY1N0cmluZywgY2hlY2tib3gsICgiY2hlY2ti
b3giKSk7CiAgICAgICAgICAgICByZXR1cm4gY2hlY2tib3g7CiAgICAgICAgIH0KKyAgICAgICAg
Y2FzZSBFTUFJTDogeworICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9t
aWNTdHJpbmcsIGVtYWlsLCAoImVtYWlsIikpOworICAgICAgICAgICAgcmV0dXJuIGVtYWlsOwor
ICAgICAgICB9CiAgICAgICAgIGNhc2UgRklMRTogewogICAgICAgICAgICAgREVGSU5FX1NUQVRJ
Q19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGZpbGUsICgiZmlsZSIpKTsKICAgICAgICAgICAg
IHJldHVybiBmaWxlOwpAQCAtMzI2LDYgKzMzOCwxMCBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhU
TUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJU0lOREVYOgogICAg
ICAgICAgICAgcmV0dXJuIGVtcHR5QXRvbTsKKyAgICAgICAgY2FzZSBOVU1CRVI6IHsKKyAgICAg
ICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBudW1iZXIsICgi
bnVtYmVyIikpOworICAgICAgICAgICAgcmV0dXJuIG51bWJlcjsKKyAgICAgICAgfQogICAgICAg
ICBjYXNlIFBBU1NXT1JEOiB7CiAgICAgICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0
IEF0b21pY1N0cmluZywgcGFzc3dvcmQsICgicGFzc3dvcmQiKSk7CiAgICAgICAgICAgICByZXR1
cm4gcGFzc3dvcmQ7CkBAIC0zNTAsMTAgKzM2NiwxOCBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhU
TUxJbnB1dEVsZW1lbnQ6OnR5CiAgICAgICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0
IEF0b21pY1N0cmluZywgc3VibWl0LCAoInN1Ym1pdCIpKTsKICAgICAgICAgICAgIHJldHVybiBz
dWJtaXQ7CiAgICAgICAgIH0KKyAgICAgICAgY2FzZSBURUxFUEhPTkU6IHsKKyAgICAgICAgICAg
IERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCB0ZWxlcGhvbmUsICgidGVs
IikpOworICAgICAgICAgICAgcmV0dXJuIHRlbGVwaG9uZTsKKyAgICAgICAgfQogICAgICAgICBj
YXNlIFRFWFQ6IHsKICAgICAgICAgICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWlj
U3RyaW5nLCB0ZXh0LCAoInRleHQiKSk7CiAgICAgICAgICAgICByZXR1cm4gdGV4dDsKICAgICAg
ICAgfQorICAgICAgICBjYXNlIFVSTDogeworICAgICAgICAgICAgREVGSU5FX1NUQVRJQ19MT0NB
TChjb25zdCBBdG9taWNTdHJpbmcsIHVybCwgKCJ1cmwiKSk7CisgICAgICAgICAgICByZXR1cm4g
dXJsOworICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiBlbXB0eUF0b207CiB9CkBAIC0zNjUs
MTUgKzM4OSwxOSBAQCBib29sIEhUTUxJbnB1dEVsZW1lbnQ6OnNhdmVTdGF0ZShTdHJpbmcmCiAK
ICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAgICAgIGNhc2UgQlVUVE9OOgorICAgICAg
ICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEZJTEU6CiAgICAgICAgIGNhc2UgSElEREVOOgog
ICAgICAgICBjYXNlIElNQUdFOgogICAgICAgICBjYXNlIElTSU5ERVg6CisgICAgICAgIGNhc2Ug
TlVNQkVSOgogICAgICAgICBjYXNlIFJBTkdFOgogICAgICAgICBjYXNlIFJFU0VUOgogICAgICAg
ICBjYXNlIFNFQVJDSDoKICAgICAgICAgY2FzZSBTVUJNSVQ6CisgICAgICAgIGNhc2UgVEVMRVBI
T05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgogICAgICAgICAgICAg
cmVzdWx0ID0gdmFsdWUoKTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNl
IENIRUNLQk9YOgpAQCAtMzkyLDE1ICs0MjAsMTkgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50Ojpy
ZXN0b3JlU3RhdGUoY29ucwogICAgIEFTU0VSVChpbnB1dFR5cGUoKSAhPSBQQVNTV09SRCk7IC8v
IHNob3VsZCBuZXZlciBzYXZlL3Jlc3RvcmUgcGFzc3dvcmQgZmllbGRzCiAgICAgc3dpdGNoIChp
bnB1dFR5cGUoKSkgewogICAgICAgICBjYXNlIEJVVFRPTjoKKyAgICAgICAgY2FzZSBFTUFJTDoK
ICAgICAgICAgY2FzZSBGSUxFOgogICAgICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgY2FzZSBJ
TUFHRToKICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAg
ICAgY2FzZSBSQU5HRToKICAgICAgICAgY2FzZSBSRVNFVDoKICAgICAgICAgY2FzZSBTRUFSQ0g6
CiAgICAgICAgIGNhc2UgU1VCTUlUOgorICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAg
Y2FzZSBURVhUOgorICAgICAgICBjYXNlIFVSTDoKICAgICAgICAgICAgIHNldFZhbHVlKHN0YXRl
KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIENIRUNLQk9YOgpAQCAtNDk2LDEw
ICs1MjgsMTQgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYgogICAg
ICAgICBjYXNlIEhJRERFTjoKICAgICAgICAgICAgIC8vIGEgbm8tb3AgZm9yIHRoaXMgdHlwZQog
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgIGNhc2UgSVNJ
TkRFWDoKKyAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAg
ICAgIGNhc2UgU0VBUkNIOgorICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2FzZSBU
RVhUOgorICAgICAgICBjYXNlIFVSTDoKICAgICAgICAgICAgIC8vIHNob3VsZCBuZXZlciByZXN0
b3JlIHByZXZpb3VzIHNlbGVjdGlvbiBoZXJlCiAgICAgICAgICAgICBmb2N1cyhmYWxzZSk7CiAg
ICAgICAgICAgICBicmVhazsKQEAgLTYzMiwxNiArNjY4LDIwIEBAIGJvb2wgSFRNTElucHV0RWxl
bWVudDo6cmVuZGVyZXJJc05lZWRlZCgKICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAg
ICAgIGNhc2UgQlVUVE9OOgogICAgICAgICBjYXNlIENIRUNLQk9YOgorICAgICAgICBjYXNlIEVN
QUlMOgogICAgICAgICBjYXNlIEZJTEU6CiAgICAgICAgIGNhc2UgSU1BR0U6CiAgICAgICAgIGNh
c2UgSVNJTkRFWDoKKyAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6
CiAgICAgICAgIGNhc2UgUkFESU86CiAgICAgICAgIGNhc2UgUkFOR0U6CiAgICAgICAgIGNhc2Ug
UkVTRVQ6CiAgICAgICAgIGNhc2UgU0VBUkNIOgogICAgICAgICBjYXNlIFNVQk1JVDoKKyAgICAg
ICAgY2FzZSBURUxFUEhPTkU6CiAgICAgICAgIGNhc2UgVEVYVDoKKyAgICAgICAgY2FzZSBVUkw6
CiAgICAgICAgICAgICByZXR1cm4gSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZTo6cmVu
ZGVyZXJJc05lZWRlZChzdHlsZSk7CiAgICAgICAgIGNhc2UgSElEREVOOgogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwpAQCAtNjY4LDEwICs3MDgsMTQgQEAgUmVuZGVyT2JqZWN0ICpIVE1MSW5w
dXRFbGVtZW50OjpjcmVhdGVSZQogICAgICAgICAgICAgcmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRl
ckltYWdlKHRoaXMpOwogICAgICAgICBjYXNlIFJBTkdFOgogICAgICAgICAgICAgcmV0dXJuIG5l
dyAoYXJlbmEpIFJlbmRlclNsaWRlcih0aGlzKTsKKyAgICAgICAgY2FzZSBFTUFJTDoKICAgICAg
ICAgY2FzZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAgY2FzZSBQQVNT
V09SRDoKICAgICAgICAgY2FzZSBTRUFSQ0g6CisgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAg
ICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNhc2UgVVJMOgogICAgICAgICAgICAgcmV0dXJuIG5l
dyAoYXJlbmEpIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZSh0aGlzKTsKICAgICB9CiAgICAg
QVNTRVJUKGZhbHNlKTsKQEAgLTc1MCwxMiArNzk0LDE2IEBAIGJvb2wgSFRNTElucHV0RWxlbWVu
dDo6YXBwZW5kRm9ybURhdGEoRm8KICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgc3dpdGNo
IChpbnB1dFR5cGUoKSkgeworICAgICAgICBjYXNlIEVNQUlMOgogICAgICAgICBjYXNlIEhJRERF
TjoKICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICBjYXNlIE5VTUJFUjoKICAgICAgICAg
Y2FzZSBQQVNTV09SRDoKICAgICAgICAgY2FzZSBSQU5HRToKICAgICAgICAgY2FzZSBTRUFSQ0g6
CisgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgIGNh
c2UgVVJMOgogICAgICAgICAgICAgLy8gYWx3YXlzIHN1Y2Nlc3NmdWwKICAgICAgICAgICAgIGVu
Y29kaW5nLmFwcGVuZERhdGEobmFtZSgpLCB2YWx1ZSgpKTsKICAgICAgICAgICAgIHJldHVybiB0
cnVlOwpAQCAtOTA1LDE1ICs5NTMsMTkgQEAgU3RyaW5nIEhUTUxJbnB1dEVsZW1lbnQ6OnZhbHVl
V2l0aERlZmF1bAogICAgICAgICBzd2l0Y2ggKGlucHV0VHlwZSgpKSB7CiAgICAgICAgICAgICBj
YXNlIEJVVFRPTjoKICAgICAgICAgICAgIGNhc2UgQ0hFQ0tCT1g6CisgICAgICAgICAgICBjYXNl
IEVNQUlMOgogICAgICAgICAgICAgY2FzZSBGSUxFOgogICAgICAgICAgICAgY2FzZSBISURERU46
CiAgICAgICAgICAgICBjYXNlIElNQUdFOgogICAgICAgICAgICAgY2FzZSBJU0lOREVYOgorICAg
ICAgICAgICAgY2FzZSBOVU1CRVI6CiAgICAgICAgICAgICBjYXNlIFBBU1NXT1JEOgogICAgICAg
ICAgICAgY2FzZSBSQURJTzoKICAgICAgICAgICAgIGNhc2UgUkFOR0U6CiAgICAgICAgICAgICBj
YXNlIFNFQVJDSDoKKyAgICAgICAgICAgIGNhc2UgVEVMRVBIT05FOgogICAgICAgICAgICAgY2Fz
ZSBURVhUOgorICAgICAgICAgICAgY2FzZSBVUkw6CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICBjYXNlIFJFU0VUOgogICAgICAgICAgICAgICAgIHYgPSByZXNldEJ1dHRvbkRl
ZmF1bHRMYWJlbCgpOwpAQCAtMTAwMSwxMiArMTA1MywxNiBAQCBib29sIEhUTUxJbnB1dEVsZW1l
bnQ6OnN0b3Jlc1ZhbHVlU2VwYXJhCiAgICAgICAgIGNhc2UgUkVTRVQ6CiAgICAgICAgIGNhc2Ug
U1VCTUlUOgogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBjYXNlIEVNQUlMOgog
ICAgICAgICBjYXNlIEZJTEU6CiAgICAgICAgIGNhc2UgSVNJTkRFWDoKKyAgICAgICAgY2FzZSBO
VU1CRVI6CiAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgIGNhc2UgUkFOR0U6CiAgICAg
ICAgIGNhc2UgU0VBUkNIOgorICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgY2FzZSBU
RVhUOgorICAgICAgICBjYXNlIFVSTDoKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0K
ICAgICByZXR1cm4gZmFsc2U7CkBAIC0xMTcyLDEyICsxMjI4LDE2IEBAIHZvaWQgSFRNTElucHV0
RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGwKICAgICAgICAgaWYgKGNoYXJDb2RlID09ICdccicp
IHsKICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXRUeXBlKCkpIHsKICAgICAgICAgICAgICAgICBj
YXNlIENIRUNLQk9YOgorICAgICAgICAgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgICAgICAg
ICAgY2FzZSBISURERU46CiAgICAgICAgICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICAg
ICAgICAgIGNhc2UgTlVNQkVSOgogICAgICAgICAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAg
ICAgICAgICAgICAgY2FzZSBSQU5HRToKICAgICAgICAgICAgICAgICBjYXNlIFNFQVJDSDoKKyAg
ICAgICAgICAgICAgICBjYXNlIFRFTEVQSE9ORToKICAgICAgICAgICAgICAgICBjYXNlIFRFWFQ6
CisgICAgICAgICAgICAgICAgY2FzZSBVUkw6CiAgICAgICAgICAgICAgICAgICAgIC8vIFNpbXVs
YXRlIG1vdXNlIGNsaWNrIG9uIHRoZSBkZWZhdWx0IGZvcm0gYnV0dG9uIGZvciBlbnRlciBmb3Ig
dGhlc2UgdHlwZXMgb2YgZWxlbWVudHMuCiAgICAgICAgICAgICAgICAgICAgIGNsaWNrRGVmYXVs
dEZvcm1CdXR0b24gPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTEyOTUs
MTIgKzEzNTUsMTYgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbAog
ICAgICAgICAgICAgICAgICAgICBpZiAoIWNoZWNrZWQoKSkKICAgICAgICAgICAgICAgICAgICAg
ICAgIGNsaWNrRWxlbWVudCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICAgICAgICAgIGNhc2UgRU1BSUw6CiAgICAgICAgICAgICAgICAgY2FzZSBISURERU46CiAg
ICAgICAgICAgICAgICAgY2FzZSBJU0lOREVYOgorICAgICAgICAgICAgICAgIGNhc2UgTlVNQkVS
OgogICAgICAgICAgICAgICAgIGNhc2UgUEFTU1dPUkQ6CiAgICAgICAgICAgICAgICAgY2FzZSBS
QU5HRToKICAgICAgICAgICAgICAgICBjYXNlIFNFQVJDSDoKKyAgICAgICAgICAgICAgICBjYXNl
IFRFTEVQSE9ORToKICAgICAgICAgICAgICAgICBjYXNlIFRFWFQ6CisgICAgICAgICAgICAgICAg
Y2FzZSBVUkw6CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAg
ICAgICB9CkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgJKHJldmlzaW9uIDQzMjAxKQorKysg
V2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNTAsNyAr
NTAsMTEgQEAgcHVibGljOgogICAgICAgICBJTUFHRSwKICAgICAgICAgQlVUVE9OLAogICAgICAg
ICBTRUFSQ0gsCi0gICAgICAgIFJBTkdFCisgICAgICAgIFJBTkdFLAorICAgICAgICBFTUFJTCwK
KyAgICAgICAgTlVNQkVSLAorICAgICAgICBURUxFUEhPTkUsCisgICAgICAgIFVSTAogICAgIH07
CiAgICAgCiAgICAgZW51bSBBdXRvQ29tcGxldGVTZXR0aW5nIHsKQEAgLTg4LDcgKzkyLDcgQEAg
cHVibGljOgogCiAgICAgYm9vbCBpc1RleHRCdXR0b24oKSBjb25zdCB7IHJldHVybiBtX3R5cGUg
PT0gU1VCTUlUIHx8IG1fdHlwZSA9PSBSRVNFVCB8fCBtX3R5cGUgPT0gQlVUVE9OOyB9CiAgICAg
dmlydHVhbCBib29sIGlzUmFkaW9CdXR0b24oKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gUkFE
SU87IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNUZXh0RmllbGQoKSBjb25zdCB7IHJldHVybiBtX3R5
cGUgPT0gVEVYVCB8fCBtX3R5cGUgPT0gUEFTU1dPUkQgfHwgbV90eXBlID09IFNFQVJDSCB8fCBt
X3R5cGUgPT0gSVNJTkRFWDsgfQorICAgIHZpcnR1YWwgYm9vbCBpc1RleHRGaWVsZCgpIGNvbnN0
IHsgcmV0dXJuIG1fdHlwZSA9PSBURVhUIHx8IG1fdHlwZSA9PSBQQVNTV09SRCB8fCBtX3R5cGUg
PT0gU0VBUkNIIHx8IG1fdHlwZSA9PSBJU0lOREVYIHx8IG1fdHlwZSA9PSBFTUFJTCB8fCBtX3R5
cGUgPT0gTlVNQkVSIHx8IG1fdHlwZSA9PSBURUxFUEhPTkUgfHwgbV90eXBlID09IFVSTDsgfQog
ICAgIHZpcnR1YWwgYm9vbCBpc1NlYXJjaEZpZWxkKCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09
IFNFQVJDSDsgfQogICAgIHZpcnR1YWwgYm9vbCBpc0lucHV0VHlwZUhpZGRlbigpIGNvbnN0IHsg
cmV0dXJuIG1fdHlwZSA9PSBISURERU47IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNQYXNzd29yZEZp
ZWxkKCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFBBU1NXT1JEOyB9CkBAIC0yMzIsNyArMjM2
LDcgQEAgcHJpdmF0ZToKICAgICBzaG9ydCBtX21heFJlc3VsdHM7CiAgICAgT3duUHRyPEhUTUxJ
bWFnZUxvYWRlcj4gbV9pbWFnZUxvYWRlcjsKICAgICBSZWZQdHI8RmlsZUxpc3Q+IG1fZmlsZUxp
c3Q7Ci0gICAgdW5zaWduZWQgbV90eXBlIDogNDsgLy8gSW5wdXRUeXBlIAorICAgIHVuc2lnbmVk
IG1fdHlwZSA6IDU7IC8vIElucHV0VHlwZSAKICAgICBib29sIG1fY2hlY2tlZCA6IDE7CiAgICAg
Ym9vbCBtX2RlZmF1bHRDaGVja2VkIDogMTsKICAgICBib29sIG1fdXNlRGVmYXVsdENoZWNrZWQg
OiAxOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNDMyMDEpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAwOS0wNS0wNCAgR3JlZyBCb2xzaW5n
YSAgPGJvbHNpbmdhQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKyAgICAgICAgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yNTU1NAorICAgICAgICAKKyAgICAgICAgU3VwcG9ydCBIVE1MNSB0ZXh0IGNvbnRy
b2wgaW5wdXQgdHlwZXM6IGVtYWlsLCBudW1iZXIsIHRlbCwgdXJsCisKKyAgICAgICAgKiBmYXN0
L2h0bWwvdGV4dC1maWVsZC1pbnB1dC10eXBlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvaHRtbC90ZXh0LWZpZWxkLWlucHV0LXR5cGVzLmh0bWw6IEFkZGVkLgorCiAyMDA5
LTA1LTA0ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgQmV0aCBEYWtpbiwgT2xpdmVyIEh1bnQuCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2h0bWwvdGV4dC1maWVsZC1pbnB1dC10eXBlcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9odG1sL3RleHQtZmllbGQtaW5wdXQtdHlwZXMtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9odG1sL3RleHQtZmllbGQtaW5w
dXQtdHlwZXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIgQEAKK0EgQiBD
IEQgRSBGCitTdWNjZXNzLgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9odG1sL3RleHQtZmllbGQt
aW5wdXQtdHlwZXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2h0bWwvdGV4
dC1maWVsZC1pbnB1dC10eXBlcy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9odG1sL3RleHQtZmllbGQtaW5wdXQtdHlwZXMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw0MCBAQAorPGh0bWw+Cis8aGVhZD4KKyAgICA8dGl0bGU+SFRNTDUgSW5wdXQgVHlwZXMgZm9y
IFRleHQgQ29udHJvbHM8L3RpdGxlPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKyAgICAgICAgZnVuY3Rpb24gdGVzdCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICgh
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgY29uc3QgaXRlbXMgPSBbICJlbWFpbCIsICJwYXNzd29y
ZCIsICJ0ZWwiLCAidGV4dCIgLCAidXJsIiBdOworICAgICAgICAgICAgCisgICAgICAgICAgICB2
YXIgcmVzdWx0ID0gIiI7CisgICAgICAgICAgICB2YXIgc3VjY2VzcyA9IHRydWU7CisgICAgICAg
ICAgICBmb3IgKGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgdmFyIGV4cGVjdGVkVHlwZU5hbWUgPSBpdGVtc1tpXTsKKyAgICAgICAg
ICAgICAgICB2YXIgYWN0dWFsVHlwZU5hbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChleHBl
Y3RlZFR5cGVOYW1lKS50eXBlOworICAgICAgICAgICAgICAgIHN1Y2Nlc3MgPSAoYWN0dWFsVHlw
ZU5hbWUgPT0gZXhwZWN0ZWRUeXBlTmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKCFzdWNjZXNz
KQorICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIkV4cGVjdGVkOiBcIiIgKyBleHBlY3Rl
ZFR5cGVOYW1lICsgIlwiIGZvciBcIiIgKyBhY3R1YWxUeXBlTmFtZSArICJcIjxicj4iOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgICAgICAgICAgcmVz
dWx0ID0gIlN1Y2Nlc3MuIjsKKyAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSByZXN1bHQ7CisKKyAgICAgICAg
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgfQorICAgIDwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorQTxpbnB1dCB0eXBlPSJl
bWFpbCIgaWQ9ImVtYWlsIj4KK0I8aW5wdXQgdHlwZT0ibnVtYmVyIiBpZD0ibnVtYmVyIj4KK0M8
aW5wdXQgdHlwZT0icGFzc3dvcmQiIGlkPSJwYXNzd29yZCI+CitEPGlucHV0IHR5cGU9InRlbCIg
aWQ9InRlbCI+CitFPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0ZXh0Ij4KK0Y8aW5wdXQgdHlwZT0i
dXJsIiBpZD0idXJsIj4KKzxkaXYgaWQ9InJlc3VsdCI+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="15054"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>