<?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>58949</bug_id>
          
          <creation_ts>2011-04-19 17:46:42 -0700</creation_ts>
          <short_desc>AX: Add more text marker routines to DRT</short_desc>
          <delta_ts>2011-04-26 20:50:31 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>388948</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-04-19 17:46:42 -0700</bug_when>
    <thetext>To support future tests, there are a few AX Text marker related DRT methods we should add. 
Names

previousTextMarker, nextTextMarker, stringForTextMarkerRange</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389411</commentid>
    <comment_count>1</comment_count>
      <attachid>90380</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-04-20 12:08:32 -0700</bug_when>
    <thetext>Created attachment 90380
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389729</commentid>
    <comment_count>2</comment_count>
      <attachid>90468</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-04-20 18:32:07 -0700</bug_when>
    <thetext>Created attachment 90468
patch

last patch didn&apos;t get bot reviewed properly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393299</commentid>
    <comment_count>3</comment_count>
      <attachid>90468</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-26 20:50:26 -0700</bug_when>
    <thetext>Comment on attachment 90468
patch

Clearing flags on attachment: 90468

Committed r85007: &lt;http://trac.webkit.org/changeset/85007&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393300</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-26 20:50:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90380</attachid>
            <date>2011-04-20 12:08:32 -0700</date>
            <delta_ts>2011-04-20 18:32:07 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>11183</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQu
Y3BwCShyZXZpc2lvbiA4NDMyMCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxp
dHlVSUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NTQsNiArNDU0LDM0IEBACiAgICAg
cmV0dXJuIEpTVmFsdWVNYWtlTnVtYmVyKGNvbnRleHQsIChpbnQpdG9BWEVsZW1lbnQodGhpc09i
amVjdCktPnRleHRNYXJrZXJSYW5nZUxlbmd0aChyYW5nZSkpOwogfQogCitzdGF0aWMgSlNWYWx1
ZVJlZiBuZXh0VGV4dE1hcmtlckNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVj
dFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291
bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikK
K3sKKyAgICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciogbWFya2VyID0gMDsKKyAgICBpZiAoYXJn
dW1lbnRDb3VudCA9PSAxKQorICAgICAgICBtYXJrZXIgPSB0b1RleHRNYXJrZXIoSlNWYWx1ZVRv
T2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwgZXhjZXB0aW9uKSk7CisgICAgCisgICAgcmV0
dXJuIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyOjptYWtlSlNBY2Nlc3NpYmlsaXR5VGV4dE1hcmtl
cihjb250ZXh0LCB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+bmV4dFRleHRNYXJrZXIobWFya2Vy
KSk7Cit9CisKK3N0YXRpYyBKU1ZhbHVlUmVmIHByZXZpb3VzVGV4dE1hcmtlckNhbGxiYWNrKEpT
Q29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhp
c09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRz
W10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKK3sKKyAgICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtl
ciogbWFya2VyID0gMDsKKyAgICBpZiAoYXJndW1lbnRDb3VudCA9PSAxKQorICAgICAgICBtYXJr
ZXIgPSB0b1RleHRNYXJrZXIoSlNWYWx1ZVRvT2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwg
ZXhjZXB0aW9uKSk7CisgICAgCisgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyOjpt
YWtlSlNBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlcihjb250ZXh0LCB0b0FYRWxlbWVudCh0aGlzT2Jq
ZWN0KS0+cHJldmlvdXNUZXh0TWFya2VyKG1hcmtlcikpOworfQorCitzdGF0aWMgSlNWYWx1ZVJl
ZiBzdHJpbmdGb3JUZXh0TWFya2VyUmFuZ2VDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwg
SlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1
bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNl
cHRpb24pCit7CisgICAgQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSogbWFya2VyUmFuZ2Ug
PSAwOworICAgIGlmIChhcmd1bWVudENvdW50ID09IDEpCisgICAgICAgIG1hcmtlclJhbmdlID0g
dG9UZXh0TWFya2VyUmFuZ2UoSlNWYWx1ZVRvT2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwg
ZXhjZXB0aW9uKSk7CisgICAgCisgICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IG1hcmtlclJh
bmdlU3RyaW5nKEFkb3B0LCB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+c3RyaW5nRm9yVGV4dE1h
cmtlclJhbmdlKG1hcmtlclJhbmdlKSk7CisgICAgcmV0dXJuIEpTVmFsdWVNYWtlU3RyaW5nKGNv
bnRleHQsIG1hcmtlclJhbmdlU3RyaW5nLmdldCgpKTsgICAgCit9CisKIHN0YXRpYyBKU1ZhbHVl
UmVmIHRleHRNYXJrZXJGb3JQb2ludENhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09i
amVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50
Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlv
bikKIHsKICAgICBpbnQgeCA9IDA7CkBAIC04NDEsNiArODY5LDIxIEBACiAgICAgcmV0dXJuIDA7
CiB9CiAKK0FjY2Vzc2liaWxpdHlUZXh0TWFya2VyIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnBy
ZXZpb3VzVGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopCit7CisgICAgcmV0dXJu
IDA7ICAgIAorfQorCitBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpuZXh0VGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopCit7CisgICAgcmV0
dXJuIDA7Cit9CisKK0pTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnN0cmluZ0Zv
clRleHRNYXJrZXJSYW5nZShBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlclJhbmdlKikKK3sKKyAgICBy
ZXR1cm4gMDsKK30KKwogI2VuZGlmCiAKIC8vIERlc3RydWN0aW9uCkBAIC05NjgsNiArMTAxMSw5
IEBACiAgICAgICAgIHsgImFjY2Vzc2liaWxpdHlFbGVtZW50Rm9yVGV4dE1hcmtlciIsIGFjY2Vz
c2liaWxpdHlFbGVtZW50Rm9yVGV4dE1hcmtlckNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsg
InRleHRNYXJrZXJSYW5nZUxlbmd0aCIsIHRleHRNYXJrZXJSYW5nZUxlbmd0aENhbGxiYWNrLCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVs
ZXRlIH0sCiAgICAgICAgIHsgInRleHRNYXJrZXJGb3JQb2ludCIsIHRleHRNYXJrZXJGb3JQb2lu
dENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRy
aWJ1dGVEb250RGVsZXRlIH0sCisgICAgICAgIHsgIm5leHRUZXh0TWFya2VyIiwgbmV4dFRleHRN
YXJrZXJDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJwcmV2aW91c1RleHRNYXJrZXIiLCBw
cmV2aW91c1RleHRNYXJrZXJDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8
IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJzdHJpbmdGb3JU
ZXh0TWFya2VyUmFuZ2UiLCBzdHJpbmdGb3JUZXh0TWFya2VyUmFuZ2VDYWxsYmFjaywga0pTUHJv
cGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9
LAogICAgICAgICB7ICJzZXRTZWxlY3RlZENoaWxkIiwgc2V0U2VsZWN0ZWRDaGlsZENhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sCiAgICAgICAgIHsgInNlbGVjdGVkQ2hpbGRBdEluZGV4Iiwgc2VsZWN0ZWRDaGls
ZEF0SW5kZXhDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7IDAsIDAsIDAgfQpJbmRleDogVG9v
bHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRN
YWMubW0JKHJldmlzaW9uIDg0MzIwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vz
c2liaWxpdHlVSUVsZW1lbnRNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyODYsNyArMTI4Niwz
NiBAQAogICAgIHJldHVybiAwOwogfQogCitBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpwcmV2aW91c1RleHRNYXJrZXIoQWNjZXNzaWJpbGl0eVRleHRNYXJr
ZXIqIHRleHRNYXJrZXIpCit7CisgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCisgICAgaWQg
cHJldmlvdXNNYXJrZXIgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpA
IkFYUHJldmlvdXNUZXh0TWFya2VyRm9yVGV4dE1hcmtlciIgZm9yUGFyYW1ldGVyOihpZCl0ZXh0
TWFya2VyLT5wbGF0Zm9ybVRleHRNYXJrZXIoKV07CisgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlU
ZXh0TWFya2VyKHByZXZpb3VzTWFya2VyKTsKKyAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisg
ICAgCisgICAgcmV0dXJuIDA7Cit9CiAKK0FjY2Vzc2liaWxpdHlUZXh0TWFya2VyIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6Om5leHRUZXh0TWFya2VyKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyKiB0
ZXh0TWFya2VyKQoreworICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUworICAgIGlkIG5leHRN
YXJrZXIgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpAIkFYTmV4dFRl
eHRNYXJrZXJGb3JUZXh0TWFya2VyIiBmb3JQYXJhbWV0ZXI6KGlkKXRleHRNYXJrZXItPnBsYXRm
b3JtVGV4dE1hcmtlcigpXTsKKyAgICByZXR1cm4gQWNjZXNzaWJpbGl0eVRleHRNYXJrZXIobmV4
dE1hcmtlcik7CisgICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIAorICAgIHJldHVybiAw
OworfQorCitKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdHJpbmdGb3JUZXh0
TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSogbWFya2VyUmFuZ2UpCit7
CisgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCisgICAgaWQgdGV4dFN0cmluZyA9IFttX2Vs
ZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOkAiQVhTdHJpbmdGb3JUZXh0TWFya2Vy
UmFuZ2UiIGZvclBhcmFtZXRlcjooaWQpbWFya2VyUmFuZ2UtPnBsYXRmb3JtVGV4dE1hcmtlclJh
bmdlKCldOworICAgIHJldHVybiBbdGV4dFN0cmluZyBjcmVhdGVKU1N0cmluZ1JlZl07CisgICAg
RU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIAorICAgIHJldHVybiAwOworfQorCiBBY2Nlc3Np
YmlsaXR5VGV4dE1hcmtlclJhbmdlIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnRleHRNYXJrZXJS
YW5nZUZvck1hcmtlcnMoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXIqIHN0YXJ0TWFya2VyLCBBY2Nl
c3NpYmlsaXR5VGV4dE1hcmtlciogZW5kTWFya2VyKQogewogICAgIEJFR0lOX0FYX09CSkNfRVhD
RVBUSU9OUwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuaAkocmV2aXNpb24gODQzMjApCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9BY2Nlc3Np
YmlsaXR5VUlFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIwMiw3ICsyMDIsMTAgQEAKICAg
ICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBzdGFydFRleHRNYXJrZXJGb3JUZXh0TWFya2VyUmFu
Z2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIEFjY2Vzc2liaWxpdHlUZXh0
TWFya2VyIGVuZFRleHRNYXJrZXJGb3JUZXh0TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRN
YXJrZXJSYW5nZSopOwogICAgIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyIHRleHRNYXJrZXJGb3JQ
b2ludChpbnQgeCwgaW50IHkpOworICAgIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyIHByZXZpb3Vz
VGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopOworICAgIEFjY2Vzc2liaWxpdHlU
ZXh0TWFya2VyIG5leHRUZXh0TWFya2VyKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyKik7CiAgICAg
QWNjZXNzaWJpbGl0eVVJRWxlbWVudCBhY2Nlc3NpYmlsaXR5RWxlbWVudEZvclRleHRNYXJrZXIo
QWNjZXNzaWJpbGl0eVRleHRNYXJrZXIqKTsKKyAgICBKU1N0cmluZ1JlZiBzdHJpbmdGb3JUZXh0
TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIGludCB0ZXh0
TWFya2VyUmFuZ2VMZW5ndGgoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIAog
ICAgIC8vIE5vdGlmaWNhdGlvbnMKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0NDAxKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDQtMjAgIENocmlzIEZsZWl6YWNo
ICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBWDogQWRkIG1vcmUgdGV4dCBtYXJrZXIgcm91dGluZXMgdG8gRFJU
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODk0OQor
CisgICAgICAgIEFkZCBhIGZldyBtb3JlIG1ldGhvZHMgdG8gaGVscCB0ZXN0IHRoZSB0ZXh0IG1h
cmtlciBzeXN0ZW0sIGluY2x1ZGluZyBuZXh0TWFya2VyLCBwcmV2aW91c01hcmtlciBhbmQKKyAg
ICAgICAgc3RyaW5nRm9yTWFya2VyUmFuZ2UuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcDoKKyAgICAgICAgKG5leHRUZXh0TWFya2VyQ2FsbGJh
Y2spOgorICAgICAgICAocHJldmlvdXNUZXh0TWFya2VyQ2FsbGJhY2spOgorICAgICAgICAoc3Ry
aW5nRm9yVGV4dE1hcmtlclJhbmdlQ2FsbGJhY2spOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6cHJldmlvdXNUZXh0TWFya2VyKToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6Om5leHRUZXh0TWFya2VyKToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZSk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpnZXRKU0NsYXNzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50Lmg6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlV
SUVsZW1lbnRNYWMubW06CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpwcmV2aW91
c1RleHRNYXJrZXIpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6bmV4dFRleHRN
YXJrZXIpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c3RyaW5nRm9yVGV4dE1h
cmtlclJhbmdlKToKKwogMjAxMS0wNC0yMCAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9AdGhlb2xs
aXZpZXJzLmNvbT4KIAogICAgICAgICBbd3hdIFVucmV2aWV3ZWQgYnVpbGQgZml4ZXMgZm9yIHd4
IDIuOS4xLCBDb2NvYSBhbmQgNjQtYml0IGJ1aWxkcy4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L3RleHRtYXJrZXItc3RyaW5nLWZvci1yYW5nZS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxp
dHkvdGV4dG1hcmtlci1zdHJpbmctZm9yLXJhbmdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3RleHRtYXJrZXItc3Ry
aW5nLWZvci1yYW5nZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTUgQEAK
K3Rlc3QgaGVsbG8KK1RoaXMgdGVzdHMgdGhhdCBwcmV2aW91cyBtYXJrZXIsIG5leHQgbWFya2Vy
IGFuZCBzdHJpbmcgZm9yIG1hcmtlciByYW5nZSB3b3JrLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0ZXh0LnRleHRNYXJrZXJSYW5nZUxlbmd0aCh0ZXh0TWFya2VyUmFu
Z2UpIGlzIDEwCitQQVNTIHRleHQudGV4dE1hcmtlclJhbmdlTGVuZ3RoKHRleHRNYXJrZXJSYW5n
ZSkgaXMgMgorUEFTUyB0ZXh0LnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZSh0ZXh0TWFya2VyUmFu
Z2UpIGlzICd0ZScKK1BBU1MgdGV4dC50ZXh0TWFya2VyUmFuZ2VMZW5ndGgodGV4dE1hcmtlclJh
bmdlKSBpcyA5CitQQVNTIHRleHQuc3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlKHRleHRNYXJrZXJS
YW5nZSkgaXMgJ2VzdCBoZWxsbycKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS90ZXh0bWFya2VyLXN0cmluZy1mb3ItcmFuZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS90ZXh0bWFya2VyLXN0cmluZy1mb3It
cmFuZ2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nl
c3NpYmlsaXR5L3RleHRtYXJrZXItc3RyaW5nLWZvci1yYW5nZS5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PgordmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IGZhbHNlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgaWQ9ImJvZHkiPgorCis8ZGl2IGlkPSJkaXYiIHRhYmluZGV4PSIwIj4KK3Rlc3QK
K2hlbGxvPEJSPgorPC9kaXY+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisKKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0
cyB0aGF0IHByZXZpb3VzIG1hcmtlciwgbmV4dCBtYXJrZXIgYW5kIHN0cmluZyBmb3IgbWFya2Vy
IHJhbmdlIHdvcmsuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVy
KSB7CisKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmZvY3VzKCk7Cisg
ICAgICAgIHZhciB0ZXh0ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQ7
CisgICAgICAgIHZhciB0ZXh0TWFya2VyUmFuZ2UgPSB0ZXh0LnRleHRNYXJrZXJSYW5nZUZvckVs
ZW1lbnQodGV4dCk7CisgICAgICAgIHNob3VsZEJlKCJ0ZXh0LnRleHRNYXJrZXJSYW5nZUxlbmd0
aCh0ZXh0TWFya2VyUmFuZ2UpIiwgIjEwIik7CisgICAgIAorICAgICAgICB2YXIgc3RhcnRNYXJr
ZXIgPSB0ZXh0LnN0YXJ0VGV4dE1hcmtlckZvclRleHRNYXJrZXJSYW5nZSh0ZXh0TWFya2VyUmFu
Z2UpOworICAgICAgICB2YXIgZW5kTWFya2VyID0gdGV4dC5lbmRUZXh0TWFya2VyRm9yVGV4dE1h
cmtlclJhbmdlKHRleHRNYXJrZXJSYW5nZSk7CisgICAgICAgIHZhciBuZXh0TWFya2VyID0gdGV4
dC5uZXh0VGV4dE1hcmtlcih0ZXh0Lm5leHRUZXh0TWFya2VyKHN0YXJ0TWFya2VyKSk7CisgICAg
ICAgIHRleHRNYXJrZXJSYW5nZSA9IHRleHQudGV4dE1hcmtlclJhbmdlRm9yTWFya2VycyhzdGFy
dE1hcmtlciwgbmV4dE1hcmtlcik7CisgICAgICAgIHNob3VsZEJlKCJ0ZXh0LnRleHRNYXJrZXJS
YW5nZUxlbmd0aCh0ZXh0TWFya2VyUmFuZ2UpIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmUoInRl
eHQuc3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlKHRleHRNYXJrZXJSYW5nZSkiLCAiJ3RlJyIpOwor
CisgICAgICAgIHZhciBwcmV2TWFya2VyID0gdGV4dC5wcmV2aW91c1RleHRNYXJrZXIobmV4dE1h
cmtlcik7CisgICAgICAgIHRleHRNYXJrZXJSYW5nZSA9IHRleHQudGV4dE1hcmtlclJhbmdlRm9y
TWFya2VycyhwcmV2TWFya2VyLCBlbmRNYXJrZXIpOworICAgICAgICBzaG91bGRCZSgidGV4dC50
ZXh0TWFya2VyUmFuZ2VMZW5ndGgodGV4dE1hcmtlclJhbmdlKSIsICI5Iik7CisgICAgICAgIHNo
b3VsZEJlKCJ0ZXh0LnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZSh0ZXh0TWFya2VyUmFuZ2UpIiwg
Iidlc3QgaGVsbG8nIik7CisKKyAgICB9CisKKyAgICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVl
OworPC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gODQ0MDEpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwxNCBAQAorMjAxMS0wNC0yMCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBw
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFYOiBBZGQgbW9yZSB0ZXh0IG1hcmtlciByb3V0aW5lcyB0byBEUlQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4OTQ5CisKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS90ZXh0bWFya2VyLXN0cmluZy1mb3ItcmFuZ2UtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS90ZXh0
bWFya2VyLXN0cmluZy1mb3ItcmFuZ2UuaHRtbDogQWRkZWQuCisKIDIwMTEtMDQtMjAgIFlhZWwg
QWhhcm9uICA8eWFlbC5haGFyb25Abm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVy
aWMgU2VpZGVsLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90468</attachid>
            <date>2011-04-20 18:32:07 -0700</date>
            <delta_ts>2011-04-26 20:50:26 -0700</delta_ts>
            <desc>patch</desc>
            <filename>p1</filename>
            <type>text/plain</type>
            <size>8200</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQu
Y3BwCShyZXZpc2lvbiA4NDQwNykKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxp
dHlVSUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NTQsNiArNDU0LDM0IEBACiAgICAg
cmV0dXJuIEpTVmFsdWVNYWtlTnVtYmVyKGNvbnRleHQsIChpbnQpdG9BWEVsZW1lbnQodGhpc09i
amVjdCktPnRleHRNYXJrZXJSYW5nZUxlbmd0aChyYW5nZSkpOwogfQogCitzdGF0aWMgSlNWYWx1
ZVJlZiBuZXh0VGV4dE1hcmtlckNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVj
dFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291
bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikK
K3sKKyAgICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciogbWFya2VyID0gMDsKKyAgICBpZiAoYXJn
dW1lbnRDb3VudCA9PSAxKQorICAgICAgICBtYXJrZXIgPSB0b1RleHRNYXJrZXIoSlNWYWx1ZVRv
T2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwgZXhjZXB0aW9uKSk7CisgICAgCisgICAgcmV0
dXJuIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyOjptYWtlSlNBY2Nlc3NpYmlsaXR5VGV4dE1hcmtl
cihjb250ZXh0LCB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+bmV4dFRleHRNYXJrZXIobWFya2Vy
KSk7Cit9CisKK3N0YXRpYyBKU1ZhbHVlUmVmIHByZXZpb3VzVGV4dE1hcmtlckNhbGxiYWNrKEpT
Q29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhp
c09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRz
W10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKK3sKKyAgICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtl
ciogbWFya2VyID0gMDsKKyAgICBpZiAoYXJndW1lbnRDb3VudCA9PSAxKQorICAgICAgICBtYXJr
ZXIgPSB0b1RleHRNYXJrZXIoSlNWYWx1ZVRvT2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwg
ZXhjZXB0aW9uKSk7CisgICAgCisgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyOjpt
YWtlSlNBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlcihjb250ZXh0LCB0b0FYRWxlbWVudCh0aGlzT2Jq
ZWN0KS0+cHJldmlvdXNUZXh0TWFya2VyKG1hcmtlcikpOworfQorCitzdGF0aWMgSlNWYWx1ZVJl
ZiBzdHJpbmdGb3JUZXh0TWFya2VyUmFuZ2VDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwg
SlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1
bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNl
cHRpb24pCit7CisgICAgQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSogbWFya2VyUmFuZ2Ug
PSAwOworICAgIGlmIChhcmd1bWVudENvdW50ID09IDEpCisgICAgICAgIG1hcmtlclJhbmdlID0g
dG9UZXh0TWFya2VyUmFuZ2UoSlNWYWx1ZVRvT2JqZWN0KGNvbnRleHQsIGFyZ3VtZW50c1swXSwg
ZXhjZXB0aW9uKSk7CisgICAgCisgICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IG1hcmtlclJh
bmdlU3RyaW5nKEFkb3B0LCB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+c3RyaW5nRm9yVGV4dE1h
cmtlclJhbmdlKG1hcmtlclJhbmdlKSk7CisgICAgcmV0dXJuIEpTVmFsdWVNYWtlU3RyaW5nKGNv
bnRleHQsIG1hcmtlclJhbmdlU3RyaW5nLmdldCgpKTsgICAgCit9CisKIHN0YXRpYyBKU1ZhbHVl
UmVmIHRleHRNYXJrZXJGb3JQb2ludENhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09i
amVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50
Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlv
bikKIHsKICAgICBpbnQgeCA9IDA7CkBAIC04NDEsNiArODY5LDIxIEBACiAgICAgcmV0dXJuIDA7
CiB9CiAKK0FjY2Vzc2liaWxpdHlUZXh0TWFya2VyIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnBy
ZXZpb3VzVGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopCit7CisgICAgcmV0dXJu
IDA7ICAgIAorfQorCitBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpuZXh0VGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopCit7CisgICAgcmV0
dXJuIDA7Cit9CisKK0pTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnN0cmluZ0Zv
clRleHRNYXJrZXJSYW5nZShBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlclJhbmdlKikKK3sKKyAgICBy
ZXR1cm4gMDsKK30KKwogI2VuZGlmCiAKIC8vIERlc3RydWN0aW9uCkBAIC05NjgsNiArMTAxMSw5
IEBACiAgICAgICAgIHsgImFjY2Vzc2liaWxpdHlFbGVtZW50Rm9yVGV4dE1hcmtlciIsIGFjY2Vz
c2liaWxpdHlFbGVtZW50Rm9yVGV4dE1hcmtlckNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsg
InRleHRNYXJrZXJSYW5nZUxlbmd0aCIsIHRleHRNYXJrZXJSYW5nZUxlbmd0aENhbGxiYWNrLCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVs
ZXRlIH0sCiAgICAgICAgIHsgInRleHRNYXJrZXJGb3JQb2ludCIsIHRleHRNYXJrZXJGb3JQb2lu
dENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRy
aWJ1dGVEb250RGVsZXRlIH0sCisgICAgICAgIHsgIm5leHRUZXh0TWFya2VyIiwgbmV4dFRleHRN
YXJrZXJDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJwcmV2aW91c1RleHRNYXJrZXIiLCBw
cmV2aW91c1RleHRNYXJrZXJDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8
IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJzdHJpbmdGb3JU
ZXh0TWFya2VyUmFuZ2UiLCBzdHJpbmdGb3JUZXh0TWFya2VyUmFuZ2VDYWxsYmFjaywga0pTUHJv
cGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9
LAogICAgICAgICB7ICJzZXRTZWxlY3RlZENoaWxkIiwgc2V0U2VsZWN0ZWRDaGlsZENhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sCiAgICAgICAgIHsgInNlbGVjdGVkQ2hpbGRBdEluZGV4Iiwgc2VsZWN0ZWRDaGls
ZEF0SW5kZXhDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7IDAsIDAsIDAgfQpJbmRleDogVG9v
bHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRN
YWMubW0JKHJldmlzaW9uIDg0NDA3KQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vz
c2liaWxpdHlVSUVsZW1lbnRNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyODYsNyArMTI4Niwz
NiBAQAogICAgIHJldHVybiAwOwogfQogCitBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpwcmV2aW91c1RleHRNYXJrZXIoQWNjZXNzaWJpbGl0eVRleHRNYXJr
ZXIqIHRleHRNYXJrZXIpCit7CisgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCisgICAgaWQg
cHJldmlvdXNNYXJrZXIgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpA
IkFYUHJldmlvdXNUZXh0TWFya2VyRm9yVGV4dE1hcmtlciIgZm9yUGFyYW1ldGVyOihpZCl0ZXh0
TWFya2VyLT5wbGF0Zm9ybVRleHRNYXJrZXIoKV07CisgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlU
ZXh0TWFya2VyKHByZXZpb3VzTWFya2VyKTsKKyAgICBFTkRfQVhfT0JKQ19FWENFUFRJT05TCisg
ICAgCisgICAgcmV0dXJuIDA7Cit9CiAKK0FjY2Vzc2liaWxpdHlUZXh0TWFya2VyIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6Om5leHRUZXh0TWFya2VyKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyKiB0
ZXh0TWFya2VyKQoreworICAgIEJFR0lOX0FYX09CSkNfRVhDRVBUSU9OUworICAgIGlkIG5leHRN
YXJrZXIgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpAIkFYTmV4dFRl
eHRNYXJrZXJGb3JUZXh0TWFya2VyIiBmb3JQYXJhbWV0ZXI6KGlkKXRleHRNYXJrZXItPnBsYXRm
b3JtVGV4dE1hcmtlcigpXTsKKyAgICByZXR1cm4gQWNjZXNzaWJpbGl0eVRleHRNYXJrZXIobmV4
dE1hcmtlcik7CisgICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIAorICAgIHJldHVybiAw
OworfQorCitKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdHJpbmdGb3JUZXh0
TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSogbWFya2VyUmFuZ2UpCit7
CisgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCisgICAgaWQgdGV4dFN0cmluZyA9IFttX2Vs
ZW1lbnQgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOkAiQVhTdHJpbmdGb3JUZXh0TWFya2Vy
UmFuZ2UiIGZvclBhcmFtZXRlcjooaWQpbWFya2VyUmFuZ2UtPnBsYXRmb3JtVGV4dE1hcmtlclJh
bmdlKCldOworICAgIHJldHVybiBbdGV4dFN0cmluZyBjcmVhdGVKU1N0cmluZ1JlZl07CisgICAg
RU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgIAorICAgIHJldHVybiAwOworfQorCiBBY2Nlc3Np
YmlsaXR5VGV4dE1hcmtlclJhbmdlIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnRleHRNYXJrZXJS
YW5nZUZvck1hcmtlcnMoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXIqIHN0YXJ0TWFya2VyLCBBY2Nl
c3NpYmlsaXR5VGV4dE1hcmtlciogZW5kTWFya2VyKQogewogICAgIEJFR0lOX0FYX09CSkNfRVhD
RVBUSU9OUwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuaAkocmV2aXNpb24gODQ0MDcpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9BY2Nlc3Np
YmlsaXR5VUlFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIwMiw3ICsyMDIsMTAgQEAKICAg
ICBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBzdGFydFRleHRNYXJrZXJGb3JUZXh0TWFya2VyUmFu
Z2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIEFjY2Vzc2liaWxpdHlUZXh0
TWFya2VyIGVuZFRleHRNYXJrZXJGb3JUZXh0TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRN
YXJrZXJSYW5nZSopOwogICAgIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyIHRleHRNYXJrZXJGb3JQ
b2ludChpbnQgeCwgaW50IHkpOworICAgIEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyIHByZXZpb3Vz
VGV4dE1hcmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopOworICAgIEFjY2Vzc2liaWxpdHlU
ZXh0TWFya2VyIG5leHRUZXh0TWFya2VyKEFjY2Vzc2liaWxpdHlUZXh0TWFya2VyKik7CiAgICAg
QWNjZXNzaWJpbGl0eVVJRWxlbWVudCBhY2Nlc3NpYmlsaXR5RWxlbWVudEZvclRleHRNYXJrZXIo
QWNjZXNzaWJpbGl0eVRleHRNYXJrZXIqKTsKKyAgICBKU1N0cmluZ1JlZiBzdHJpbmdGb3JUZXh0
TWFya2VyUmFuZ2UoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIGludCB0ZXh0
TWFya2VyUmFuZ2VMZW5ndGgoQWNjZXNzaWJpbGl0eVRleHRNYXJrZXJSYW5nZSopOwogICAgIAog
ICAgIC8vIE5vdGlmaWNhdGlvbnMKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0NDA3KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDQtMjAgIENocmlzIEZsZWl6YWNo
ICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBWDogQWRkIG1vcmUgdGV4dCBtYXJrZXIgcm91dGluZXMgdG8gRFJU
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODk0OQor
CisgICAgICAgIEFkZCBhIGZldyBtb3JlIG1ldGhvZHMgdG8gaGVscCB0ZXN0IHRoZSB0ZXh0IG1h
cmtlciBzeXN0ZW0sIGluY2x1ZGluZyBuZXh0TWFya2VyLCBwcmV2aW91c01hcmtlciBhbmQKKyAg
ICAgICAgc3RyaW5nRm9yTWFya2VyUmFuZ2UuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcDoKKyAgICAgICAgKG5leHRUZXh0TWFya2VyQ2FsbGJh
Y2spOgorICAgICAgICAocHJldmlvdXNUZXh0TWFya2VyQ2FsbGJhY2spOgorICAgICAgICAoc3Ry
aW5nRm9yVGV4dE1hcmtlclJhbmdlQ2FsbGJhY2spOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6cHJldmlvdXNUZXh0TWFya2VyKToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6Om5leHRUZXh0TWFya2VyKToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZSk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpnZXRKU0NsYXNzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50Lmg6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlV
SUVsZW1lbnRNYWMubW06CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpwcmV2aW91
c1RleHRNYXJrZXIpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6bmV4dFRleHRN
YXJrZXIpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c3RyaW5nRm9yVGV4dE1h
cmtlclJhbmdlKToKKwogMjAxMS0wNC0yMCAgT2phbiBWYWZhaSAgPG9qYW5AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDogTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24g
ODQ0MDcpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwxMyBAQAorMjAxMS0wNC0yMCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFYOiBB
ZGQgbW9yZSB0ZXh0IG1hcmtlciByb3V0aW5lcyB0byBEUlQKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4OTQ5CisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvYWNjZXNzaWJpbGl0eS90ZXh0bWFya2VyLXN0cmluZy1mb3ItcmFuZ2UtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS90ZXh0bWFya2Vy
LXN0cmluZy1mb3ItcmFuZ2UuaHRtbDogQWRkZWQuCisKIDIwMTEtMDQtMjAgIFRvbnkgQ2hhbmcg
IDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBlbWJlZGRpbmcgY2hl
Y2tzdW1zIGluIHBuZyBmaWxlcyBpbiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eCouCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>