<?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>15076</bug_id>
          
          <creation_ts>2007-08-25 08:09:01 -0700</creation_ts>
          <short_desc>deg2rad has multiple definitions</short_desc>
          <delta_ts>2007-10-11 18:58:45 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rob Buis">rwlbuis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1487</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2007-08-25 08:09:01 -0700</bug_when>
    <thetext>deg2rad constant is used in multiple places, it would be nice IMHO to have one shared contant.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482</commentid>
    <comment_count>1</comment_count>
      <attachid>16118</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2007-08-25 08:14:22 -0700</bug_when>
    <thetext>Created attachment 16118
First attempt

I think MathExtras.h is the best place for reuse, but am open to other suggestions :)
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454</commentid>
    <comment_count>2</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2007-08-26 04:18:17 -0700</bug_when>
    <thetext>Heya Rob,

sounds like a nice attempt to unify these. Some comments:
- I&apos;d rather define two inlined deg2rad / rad2deg functions instead of exposing a #define&apos;d constant.
   and let all callers use these.
- Maybe adding deg2grad, grad2deg is also a good idea, while you&apos;re at it. (at least SVG needs it)

Greetings,
Niko</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1296</commentid>
    <comment_count>3</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-08-28 21:22:56 -0700</bug_when>
    <thetext>At the very least, the constant should be defined as a static const double instead of a #define. It does seem like the inline function would read better if used everywhere.


</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1294</commentid>
    <comment_count>4</comment_count>
      <attachid>16118</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-08-28 21:23:19 -0700</bug_when>
    <thetext>Comment on attachment 16118
First attempt

r- to consider me and Niko&apos;s comments, but otherwise looks great.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58214</commentid>
    <comment_count>5</comment_count>
      <attachid>16609</attachid>
    <who name="Andrew Wellington">andrew</who>
    <bug_when>2007-10-09 23:58:29 -0700</bug_when>
    <thetext>Created attachment 16609
Proposed patch

Proposed patch based on Rob&apos;s original patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58224</commentid>
    <comment_count>6</comment_count>
      <attachid>16609</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-10 07:44:58 -0700</bug_when>
    <thetext>Comment on attachment 16609
Proposed patch

This patch adds conversions to/from double in code that was previously dealing entirely with floats. That will make the code slower. Instead there should be overloaded versions of these functions for both float and double.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58270</commentid>
    <comment_count>7</comment_count>
      <attachid>16621</attachid>
    <who name="Andrew Wellington">andrew</who>
    <bug_when>2007-10-10 17:52:50 -0700</bug_when>
    <thetext>Created attachment 16621
Proposed patch 2

Now with float versions as well</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58333</commentid>
    <comment_count>8</comment_count>
      <attachid>16621</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-10-11 18:42:00 -0700</bug_when>
    <thetext>Comment on attachment 16621
Proposed patch 2

This looks great to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58334</commentid>
    <comment_count>9</comment_count>
    <who name="Andrew Wellington">andrew</who>
    <bug_when>2007-10-11 18:58:45 -0700</bug_when>
    <thetext>Landed in r26378</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16118</attachid>
            <date>2007-08-25 08:14:22 -0700</date>
            <delta_ts>2007-10-09 23:58:29 -0700</delta_ts>
            <desc>First attempt</desc>
            <filename>15076.diff</filename>
            <type>text/plain</type>
            <size>8782</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVIZWxw
ZXJzQ2cubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmls
dGVycy9jZy9TVkdGRUhlbHBlcnNDZy5tbQkocmV2aXNpb24gMjUyNDEpCisrKyBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVscGVyc0NnLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC0zNSw2ICszNSw4IEBACiAjaW1wb3J0ICJXS1BvaW50TGlnaHRGaWx0ZXIuaCIK
ICNpbXBvcnQgIldLU3BvdExpZ2h0RmlsdGVyLmgiCiAKKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENJVmVjdG9yKiBnZXRWZWN0b3JGb3JDaGFu
bmVsKFNWR0NoYW5uZWxTZWxlY3RvclR5cGUgY2hhbm5lbCkKSW5kZXg6IFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVDb2xvck1hdHJpeENnLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVDb2xv
ck1hdHJpeENnLm1tCShyZXZpc2lvbiAyNTI0MSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVDb2xvck1hdHJpeENnLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw2ICsyNSw4IEBACiAjaW5jbHVkZSAiU1ZHRkVDb2xvck1hdHJpeC5oIgogI2luY2x1ZGUg
IlNWR0ZFSGVscGVyc0NnLmgiCiAKKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKICNkZWZpbmUgQ01WYWx1ZXNDaGVjayhleHBlY3RlZCwgdHlwZSkg
XApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUhl
bHBlcnNDZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2Zp
bHRlcnMvY2cvU1ZHRkVIZWxwZXJzQ2cuaAkocmV2aXNpb24gMjUyNDEpCisrKyBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVscGVyc0NnLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTgwLDYgKzgwLDQgQEAKICAgICBGRV9RVUFSVFpfTUFQX1RPX1NVQlJFR0lPTl9Q
UkVQQVJFKGJib3gpOyBcCiAgICAgRkVfUVVBUlRaX01BUF9UT19TVUJSRUdJT05fQVBQTFkoY3Jv
cFJlY3QpOwogCi0jZGVmaW5lIGRlZzJyYWQoZCkgKChkICogKDIuMCAqIE1fUEkpKSAvIDM2MC4w
KQotCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykgJiYgRU5BQkxFKFNWR19FWFBFUklNRU5UQUxfRkVB
VFVSRVMpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0FmZmluZVRyYW5zZm9y
bUNHLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0FmZmlu
ZVRyYW5zZm9ybUNHLmNwcAkocmV2aXNpb24gMjUyNDEpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NnL0FmZmluZVRyYW5zZm9ybUNHLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsMTAg
KzMxLDEwIEBACiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiSW50UmVjdC5oIgog
CisjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1z
dGF0aWMgY29uc3QgZG91YmxlIGRlZzJyYWQgPSAwLjAxNzQ1MzI5MjUxOTk0MzI5NTc2OTsgLy8g
cGkvMTgwCi0KIEFmZmluZVRyYW5zZm9ybTo6QWZmaW5lVHJhbnNmb3JtKCkKIHsKICAgICBtX3Ry
YW5zZm9ybSA9IENHQWZmaW5lVHJhbnNmb3JtSWRlbnRpdHk7CkBAIC0xNTAsNyArMTUwLDcgQEAK
IAogQWZmaW5lVHJhbnNmb3JtICZBZmZpbmVUcmFuc2Zvcm06OnJvdGF0ZShkb3VibGUgZCkKIHsK
LSAgICBtX3RyYW5zZm9ybSA9IENHQWZmaW5lVHJhbnNmb3JtUm90YXRlKG1fdHJhbnNmb3JtLCBk
ICogZGVnMnJhZCk7CisgICAgbV90cmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybVJvdGF0ZSht
X3RyYW5zZm9ybSwgZCAqIERFRzJSQUQpOwogICAgIHJldHVybiAqdGhpczsKIH0KIApJbmRleDog
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUGF0aC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUGF0aC5jcHAJKHJldmlzaW9uIDI1MjQxKQorKysgV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyUGF0aC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5Niw5ICsyOTYsOCBAQAog
ICAgIEZsb2F0UG9pbnQgaW5zbG9wZUNoYW5nZSA9IGRhdGEuaW5zbG9wZVBvaW50c1sxXSAtIEZs
b2F0U2l6ZShkYXRhLmluc2xvcGVQb2ludHNbMF0ueCgpLCBkYXRhLmluc2xvcGVQb2ludHNbMF0u
eSgpKTsKICAgICBGbG9hdFBvaW50IG91dHNsb3BlQ2hhbmdlID0gZGF0YS5vdXRzbG9wZVBvaW50
c1sxXSAtIEZsb2F0U2l6ZShkYXRhLm91dHNsb3BlUG9pbnRzWzBdLngoKSwgZGF0YS5vdXRzbG9w
ZVBvaW50c1swXS55KCkpOwogCi0gICAgc3RhdGljIGNvbnN0IGRvdWJsZSBkZWcycmFkID0gTV9Q
SSAvIDE4MC4wOwotICAgIGRvdWJsZSBpbnNsb3BlID0gYXRhbjIoaW5zbG9wZUNoYW5nZS55KCks
IGluc2xvcGVDaGFuZ2UueCgpKSAvIGRlZzJyYWQ7Ci0gICAgZG91YmxlIG91dHNsb3BlID0gYXRh
bjIob3V0c2xvcGVDaGFuZ2UueSgpLCBvdXRzbG9wZUNoYW5nZS54KCkpIC8gZGVnMnJhZDsKKyAg
ICBkb3VibGUgaW5zbG9wZSA9IGF0YW4yKGluc2xvcGVDaGFuZ2UueSgpLCBpbnNsb3BlQ2hhbmdl
LngoKSkgLyBERUcyUkFEOworICAgIGRvdWJsZSBvdXRzbG9wZSA9IGF0YW4yKG91dHNsb3BlQ2hh
bmdlLnkoKSwgb3V0c2xvcGVDaGFuZ2UueCgpKSAvIERFRzJSQUQ7CiAKICAgICBkb3VibGUgYW5n
bGUgPSAwLjA7CiAgICAgc3dpdGNoIChkYXRhLnR5cGUpIHsKSW5kZXg6IFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvQWZmaW5lVHJhbnNmb3JtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0FmZmluZVRyYW5zZm9ybS5jcHAJKHJldmlzaW9uIDI1MjQxKQorKysg
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BZmZpbmVUcmFuc2Zvcm0uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yOSwxMiArMjksMTAgQEAKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRl
ICJJbnRSZWN0LmgiCiAKLSNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8d3RmL01hdGhFeHRy
YXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jb25zdCBkb3VibGUgZGVnMnJhZCA9IDAu
MDE3NDUzMjkyNTE5OTQzMjk1NzY5OyAvLyBwaS8xODAKLQogYm9vbCBBZmZpbmVUcmFuc2Zvcm06
OmlzSW52ZXJ0aWJsZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGRldCgpICE9IDAuMDsKQEAgLTU3
LDcgKzU1LDcgQEAKIAogQWZmaW5lVHJhbnNmb3JtJiBBZmZpbmVUcmFuc2Zvcm06OnJvdGF0ZUZy
b21WZWN0b3IoZG91YmxlIHgsIGRvdWJsZSB5KQogewotICAgIHJldHVybiByb3RhdGUoYXRhbjIo
eSwgeCkgLyBkZWcycmFkKTsKKyAgICByZXR1cm4gcm90YXRlKGF0YW4yKHksIHgpIC8gREVHMlJB
RCk7CiB9CiAKIEFmZmluZVRyYW5zZm9ybSYgQWZmaW5lVHJhbnNmb3JtOjpmbGlwWCgpCkBAIC03
MiwxMiArNzAsMTIgQEAKIAogQWZmaW5lVHJhbnNmb3JtJiBBZmZpbmVUcmFuc2Zvcm06OnNrZXdY
KGRvdWJsZSBhbmdsZSkKIHsKLSAgICByZXR1cm4gc2hlYXIodGFuKGFuZ2xlICogZGVnMnJhZCks
IDAuMGYpOworICAgIHJldHVybiBzaGVhcih0YW4oYW5nbGUgKiBERUcyUkFEKSwgMC4wZik7CiB9
CiAKIEFmZmluZVRyYW5zZm9ybSYgQWZmaW5lVHJhbnNmb3JtOjpza2V3WShkb3VibGUgYW5nbGUp
CiB7Ci0gICAgcmV0dXJuIHNoZWFyKDAuMGYsIHRhbihhbmdsZSAqIGRlZzJyYWQpKTsKKyAgICBy
ZXR1cm4gc2hlYXIoMC4wZiwgdGFuKGFuZ2xlICogREVHMlJBRCkpOwogfQogCiB9CkluZGV4OiBX
ZWJDb3JlL2tzdmcyL3N2Zy9TVkdBbmdsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9rc3Zn
Mi9zdmcvU1ZHQW5nbGUuY3BwCShyZXZpc2lvbiAyNTI0MSkKKysrIFdlYkNvcmUva3N2ZzIvc3Zn
L1NWR0FuZ2xlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsMTQgKzI1LDEzIEBACiAjaWYgRU5B
QkxFKFNWRykKICNpbmNsdWRlICJTVkdBbmdsZS5oIgogCi0jaW5jbHVkZSA8bWF0aC5oPgorI2lu
Y2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY29uc3Qg
ZG91YmxlIGRlZzJyYWQgPSAwLjAxNzQ1MzI5MjUxOTk0MzI5NTc2OTsgLy8gcGkvMTgwCiBjb25z
dCBkb3VibGUgZGVnMmdyYWQgPSA0MDAuMCAvIDM2MC4wOwogCi0jZGVmaW5lIHJhZDJncmFkIGRl
ZzJncmFkIC8gZGVnMnJhZAorI2RlZmluZSByYWQyZ3JhZCBkZWcyZ3JhZCAvIERFRzJSQUQKIAog
U1ZHQW5nbGU6OlNWR0FuZ2xlKCkKICAgICA6IFNoYXJlZDxTVkdBbmdsZT4oKQpAQCAtNjcsNyAr
NjYsNyBAQAogICAgIGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfR1JBRCkKICAgICAg
ICAgbV92YWx1ZSA9IG1fdmFsdWVJblNwZWNpZmllZFVuaXRzIC8gZGVnMmdyYWQ7CiAgICAgZWxz
ZSBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX1JBRCkKLSAgICAgICAgbV92YWx1ZSA9
IG1fdmFsdWVJblNwZWNpZmllZFVuaXRzIC8gZGVnMnJhZDsKKyAgICAgICAgbV92YWx1ZSA9IG1f
dmFsdWVJblNwZWNpZmllZFVuaXRzIC8gREVHMlJBRDsKICAgICBlbHNlIGlmIChtX3VuaXRUeXBl
ID09IFNWR19BTkdMRVRZUEVfVU5TUEVDSUZJRUQgfHwgbV91bml0VHlwZSA9PSBTVkdfQU5HTEVU
WVBFX0RFRykKICAgICAgICAgbV92YWx1ZSA9IG1fdmFsdWVJblNwZWNpZmllZFVuaXRzOwogfQpA
QCAtMTM4LDE1ICsxMzcsMTUgQEAKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1fdW5pdFR5
cGUgPT0gU1ZHX0FOR0xFVFlQRV9ERUcgJiYgdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9SQUQp
Ci0gICAgICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzICo9IGRlZzJyYWQ7CisgICAgICAgIG1f
dmFsdWVJblNwZWNpZmllZFVuaXRzICo9IERFRzJSQUQ7CiAgICAgZWxzZSBpZiAobV91bml0VHlw
ZSA9PSBTVkdfQU5HTEVUWVBFX0dSQUQgJiYgdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9SQUQp
CiAgICAgICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzIC89IHJhZDJncmFkOwogICAgIGVsc2Ug
aWYgKG1fdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9ERUcgJiYgdW5pdFR5cGUgPT0gU1ZHX0FO
R0xFVFlQRV9HUkFEKQotICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyAqPSBkZWcyZ3Jh
ZDsKKyAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgKj0gREVHMlJBRDsKICAgICBlbHNl
IGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfUkFEICYmIHVuaXRUeXBlID09IFNWR19B
TkdMRVRZUEVfR1JBRCkKICAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgKj0gcmFkMmdy
YWQ7CiAgICAgZWxzZSBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX1JBRCAmJiB1bml0
VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0RFRykKLSAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5p
dHMgLz0gZGVnMnJhZDsKKyAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgLz0gREVHMlJB
RDsKICAgICBlbHNlIGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfR1JBRCAmJiB1bml0
VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0RFRykKICAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5p
dHMgLz0gZGVnMmdyYWQ7CiAKQEAgLTE1NiwxMiArMTU1LDEyIEBACiAvLyBIZWxwZXJzCiBkb3Vi
bGUgU1ZHQW5nbGU6OnRvZGVnKGRvdWJsZSByYWQpCiB7Ci0gICAgcmV0dXJuIHJhZCAvIGRlZzJy
YWQ7CisgICAgcmV0dXJuIHJhZCAvIERFRzJSQUQ7CiB9CiAKIGRvdWJsZSBTVkdBbmdsZTo6dG9y
YWQoZG91YmxlIGRlZykKIHsKLSAgICByZXR1cm4gZGVnICogZGVnMnJhZDsKKyAgICByZXR1cm4g
ZGVnICogREVHMlJBRDsKIH0KIAogZG91YmxlIFNWR0FuZ2xlOjpzaG9ydGVzdEFyY0Jpc2VjdG9y
KGRvdWJsZSBhbmdsZTEsIGRvdWJsZSBhbmdsZTIpCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUyNDEpCisrKyBXZWJD
b3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDA3LTA4LTI1
ICBSb2IgQnVpcyAgPGJ1aXNAa2RlLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXQVJOSU5HOiBOTyBURVNUIENBU0VTIEFEREVEIE9SIENIQU5H
RUQKKworICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTA3
NgorICAgICAgICBkZWcycmFkIGhhcyBtdWx0aXBsZSBkZWZpbml0aW9ucworCisgICAgICAgIFVz
ZSB0aGUgZGVzZzJyYWQgY29udGFucyBhbmQgbWV0aG9kIGZyb20gSmF2YVNjcmlwdENvcmUuCisK
KyAgICAgICAgKiBrc3ZnMi9zdmcvU1ZHQW5nbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZH
QW5nbGU6OmNhbGN1bGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmdsZTo6Y29udmVydFRv
U3BlY2lmaWVkVW5pdHMpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5nbGU6OnRvZGVnKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0FuZ2xlOjp0b3JhZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvQWZmaW5lVHJhbnNmb3JtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5z
Zm9ybTo6cm90YXRlRnJvbVZlY3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpBZmZpbmVUcmFuc2Zv
cm06OnNrZXdYKToKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5zZm9ybTo6c2tld1kpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0FmZmluZVRyYW5zZm9ybUNHLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5zZm9ybTo6cm90YXRlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUNvbG9yTWF0cml4Q2cubW06CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVIZWxwZXJzQ2cuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUhlbHBlcnND
Zy5tbToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyUGF0aC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpkcmF3TWFya2VyV2l0aERhdGEpOgorCiAyMDA3LTA4LTIyICBSb2IgQnVpcyAgPGJ1aXNA
a2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0uCkluZGV4OiBKYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZp
c2lvbiAyNTI0MSkKKysrIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE1IEBACisyMDA3LTA4LTI1ICBSb2IgQnVpcyAgPGJ1aXNAa2RlLm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTA3NgorICAgICAgICBkZWcycmFkIGhhcyBt
dWx0aXBsZSBkZWZpbml0aW9ucworCisgICAgICAgIERlZmluZSBkZWcycmFkIGNvbnN0YW50IGFu
ZCBtZXRob2QgZm9yIHJldXNlIHRocm91Z2hvdXQgV2ViS2l0LgorCisgICAgICAgICogd3RmL01h
dGhFeHRyYXMuaDoKKyAgICAgICAgKGRlZzJyYWQpOgorCiAyMDA3LTA3LTExICBOaWtvbGFzIFpp
bW1lcm1hbm4gIDx6aW1tZXJtYW5uQGtkZS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFy
ay4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9NYXRoRXh0cmFzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
SmF2YVNjcmlwdENvcmUvd3RmL01hdGhFeHRyYXMuaAkocmV2aXNpb24gMjUyNDEpCisrKyBKYXZh
U2NyaXB0Q29yZS93dGYvTWF0aEV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC05Miw0ICs5Miw4
IEBACiAKICNlbmRpZiAvLyAjaWYgQ09NUElMRVIoTVNWQykKIAorI2RlZmluZSBERUcyUkFEIDAu
MDE3NDUzMjkyNTE5OTQzMjk1NzY5CisKK2lubGluZSBkb3VibGUgZGVnMnJhZChmbG9hdCBkKSB7
IHJldHVybiBkICogREVHMlJBRDsgfQorCiAjZW5kaWYgLy8gI2lmbmRlZiBXVEZfTWF0aEV4dHJh
c19oCg==
</data>
<flag name="review"
          id="6769"
          type_id="1"
          status="-"
          setter="mjs"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16609</attachid>
            <date>2007-10-09 23:58:29 -0700</date>
            <delta_ts>2007-10-10 17:52:50 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-15076-patch.txt</filename>
            <type>text/plain</type>
            <size>10277</size>
            <attacher name="Andrew Wellington">andrew</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTgwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMDctMTAtMDkgIEFuZHJldyBX
ZWxsaW5ndG9uICA8cHJvdG9uQHdpcmV0YXBwZWQubmV0PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRml4IGZvciBodHRwOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTA3NgorICAgICAgICAiZGVnMnJhZCBoYXMgbXVs
dGlwbGUgZGVmaW5pdGlvbnMiCisgICAgICAgIAorICAgICAgICBEZWZpbmUgZGVnMnJhZCwgcmFk
MmRlZywgZGVnMmdyYWQsIGdyYWQyZGVnLCByYWQyZ3JhZCwgZ3JhZDJyYWQKKyAgICAgICAgVGhl
c2UgYXJlIHVzZWQgdGhyb3VnaCBXZWJLaXQuCisgICAgICAgIAorICAgICAgICBDaGFuZ2UgYmFz
ZWQgb24gb3JpZ2luYWwgcGF0Y2ggYnkgUm9iIEJ1aXMuCisKKyAgICAgICAgKiB3dGYvTWF0aEV4
dHJhcy5oOgorICAgICAgICAoZGVnMnJhZCk6CisgICAgICAgIChyYWQyZGVnKToKKyAgICAgICAg
KGRlZzJncmFkKToKKyAgICAgICAgKGdyYWQyZGVnKToKKyAgICAgICAgKHJhZDJncmFkKToKKyAg
ICAgICAgKGdyYWQycmFkKToKKwogPT09IHN0YXJ0IG1lcmdlIG9mIHRydW5rLzI1OTcwLTI2MTAy
IDA4LTEwLTIwMDcgPT09CiAKIDIwMDctMTAtMDUgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFw
cGxlLmNvbT4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9NYXRoRXh0cmFzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL01hdGhFeHRyYXMuaAkocmV2aXNpb24gMjYxNzcpCisr
KyBKYXZhU2NyaXB0Q29yZS93dGYvTWF0aEV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzYs
NCArMTM2LDExIEBAIGlubGluZSBkb3VibGUgd3RmX3JhbmRvbSgpCiAKICNlbmRpZiAvLyAjaWYg
Q09NUElMRVIoTVNWQykKIAoraW5saW5lIGRvdWJsZSBkZWcycmFkKGRvdWJsZSBkKSAgeyByZXR1
cm4gZCAqIHBpRG91YmxlIC8gMTgwLjA7IH0KK2lubGluZSBkb3VibGUgcmFkMmRlZyhkb3VibGUg
cikgIHsgcmV0dXJuIHIgKiAxODAuMCAvIHBpRG91YmxlOyB9CitpbmxpbmUgZG91YmxlIGRlZzJn
cmFkKGRvdWJsZSBkKSB7IHJldHVybiBkICogNDAwLjAgLyAzNjAuMDsgfQoraW5saW5lIGRvdWJs
ZSBncmFkMmRlZyhkb3VibGUgZykgeyByZXR1cm4gZyAqIDM2MC4wIC8gNDAwLjA7IH0KK2lubGlu
ZSBkb3VibGUgcmFkMmdyYWQoZG91YmxlIHIpIHsgcmV0dXJuIHIgKiAyMDAuMCAvIHBpRG91Ymxl
OyB9CitpbmxpbmUgZG91YmxlIGdyYWQycmFkKGRvdWJsZSBnKSB7IHJldHVybiBnICogcGlEb3Vi
bGUgLyAyMDAuMDsgfQorCiAjZW5kaWYgLy8gI2lmbmRlZiBXVEZfTWF0aEV4dHJhc19oCkluZGV4
OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2
aXNpb24gMjYxODApCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM0IEBACisyMDA3LTEwLTA5ICBBbmRyZXcgV2VsbGluZ3RvbiAgPHByb3RvbkB3aXJldGFw
cGVkLm5ldD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBGaXggZm9yIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MDc2Cisg
ICAgICAgICJkZWcycmFkIGhhcyBtdWx0aXBsZSBkZWZpbml0aW9ucyIKKyAgICAgICAgCisgICAg
ICAgIFVzZSBkZWcycmFkLCByYWQyZGVnLCBkZWcyZ3JhZCwgZ3JhZDJkZWcsIHJhZDJncmFkLCBn
cmFkMnJhZAorICAgICAgICBmcm9tIHd0ZiB3aGVyZSBhcHByb3ByaWF0ZS4KKyAgICAgICAgCisg
ICAgICAgIE5vIHRlc3QgY2FzZXMgYXMgdGhpcyBkb2VzJ3QgY2hhbmdlIGJlaGF2aW91ci4KKyAg
ICAgICAgCisgICAgICAgIENoYW5nZSBiYXNlZCBvbiBvcmlnaW5hbCBwYXRjaCBieSBSb2IgQnVp
cy4KKworICAgICAgICAqIGtzdmcyL3N2Zy9TVkdBbmdsZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdBbmdsZTo6Y2FsY3VsYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuZ2xlOjpjb252
ZXJ0VG9TcGVjaWZpZWRVbml0cyk6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmdsZTo6dG9kZWcp
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5nbGU6OnRvcmFkKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9BZmZpbmVUcmFuc2Zvcm0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5l
VHJhbnNmb3JtOjpyb3RhdGVGcm9tVmVjdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRy
YW5zZm9ybTo6c2tld1gpOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3JtOjpza2V3
WSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQWZmaW5lVHJhbnNmb3JtQ0cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3JtOjpyb3RhdGUpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFQ29sb3JNYXRyaXhDZy5tbToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUhlbHBlcnND
Zy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVs
cGVyc0NnLm1tOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmRyYXdNYXJrZXJXaXRoRGF0YSk6CisKIDIwMDctMTAtMDkgIEVyaWMgU2VpZGVs
ICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFscC4KSW5kZXg6IFdl
YkNvcmUva3N2ZzIvc3ZnL1NWR0FuZ2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2tzdmcy
L3N2Zy9TVkdBbmdsZS5jcHAJKHJldmlzaW9uIDI2MTc3KQorKysgV2ViQ29yZS9rc3ZnMi9zdmcv
U1ZHQW5nbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiwxNCArMjYsMTAgQEAKICNpbmNsdWRl
ICJTVkdBbmdsZS5oIgogCiAjaW5jbHVkZSA8bWF0aC5oPgorI2luY2x1ZGUgPHd0Zi9NYXRoRXh0
cmFzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY29uc3QgZmxvYXQgZGVnMnJhZCA9IDAu
MDE3NDUzMjkyNTE5OTQzMjk1NzY5ZjsgLy8gcGkvMTgwCi1jb25zdCBmbG9hdCBkZWcyZ3JhZCA9
IDQwMC4wZiAvIDM2MC4wZjsKLQotI2RlZmluZSByYWQyZ3JhZCBkZWcyZ3JhZCAvIGRlZzJyYWQK
LQogU1ZHQW5nbGU6OlNWR0FuZ2xlKCkKICAgICA6IFNoYXJlZDxTVkdBbmdsZT4oKQogICAgICwg
bV91bml0VHlwZShTVkdfQU5HTEVUWVBFX1VOS05PV04pCkBAIC02NSw5ICs2MSw5IEBAIGZsb2F0
IFNWR0FuZ2xlOjp2YWx1ZSgpIGNvbnN0CiB2b2lkIFNWR0FuZ2xlOjpjYWxjdWxhdGUoKQogewog
ICAgIGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfR1JBRCkKLSAgICAgICAgbV92YWx1
ZSA9IG1fdmFsdWVJblNwZWNpZmllZFVuaXRzIC8gZGVnMmdyYWQ7CisgICAgICAgIG1fdmFsdWUg
PSBncmFkMmRlZyhtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyk7CiAgICAgZWxzZSBpZiAobV91bml0
VHlwZSA9PSBTVkdfQU5HTEVUWVBFX1JBRCkKLSAgICAgICAgbV92YWx1ZSA9IG1fdmFsdWVJblNw
ZWNpZmllZFVuaXRzIC8gZGVnMnJhZDsKKyAgICAgICAgbV92YWx1ZSA9IHJhZDJkZWcobV92YWx1
ZUluU3BlY2lmaWVkVW5pdHMpOwogICAgIGVsc2UgaWYgKG1fdW5pdFR5cGUgPT0gU1ZHX0FOR0xF
VFlQRV9VTlNQRUNJRklFRCB8fCBtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfREVHKQogICAg
ICAgICBtX3ZhbHVlID0gbV92YWx1ZUluU3BlY2lmaWVkVW5pdHM7CiB9CkBAIC0xMzgsMTcgKzEz
NCwxNyBAQCB2b2lkIFNWR0FuZ2xlOjpjb252ZXJ0VG9TcGVjaWZpZWRVbml0cyh1CiAgICAgICAg
IHJldHVybjsKIAogICAgIGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfREVHICYmIHVu
aXRUeXBlID09IFNWR19BTkdMRVRZUEVfUkFEKQotICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRV
bml0cyAqPSBkZWcycmFkOworICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyA9IGRlZzJy
YWQobV92YWx1ZUluU3BlY2lmaWVkVW5pdHMpOwogICAgIGVsc2UgaWYgKG1fdW5pdFR5cGUgPT0g
U1ZHX0FOR0xFVFlQRV9HUkFEICYmIHVuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfUkFEKQotICAg
ICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyAvPSByYWQyZ3JhZDsKKyAgICAgICAgbV92YWx1
ZUluU3BlY2lmaWVkVW5pdHMgPSBncmFkMnJhZChtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyk7CiAg
ICAgZWxzZSBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0RFRyAmJiB1bml0VHlwZSA9
PSBTVkdfQU5HTEVUWVBFX0dSQUQpCi0gICAgICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzICo9
IGRlZzJncmFkOworICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyA9IGRlZzJncmFkKG1f
dmFsdWVJblNwZWNpZmllZFVuaXRzKTsKICAgICBlbHNlIGlmIChtX3VuaXRUeXBlID09IFNWR19B
TkdMRVRZUEVfUkFEICYmIHVuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfR1JBRCkKLSAgICAgICAg
bV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgKj0gcmFkMmdyYWQ7CisgICAgICAgIG1fdmFsdWVJblNw
ZWNpZmllZFVuaXRzID0gcmFkMmdyYWQobV92YWx1ZUluU3BlY2lmaWVkVW5pdHMpOwogICAgIGVs
c2UgaWYgKG1fdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9SQUQgJiYgdW5pdFR5cGUgPT0gU1ZH
X0FOR0xFVFlQRV9ERUcpCi0gICAgICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzIC89IGRlZzJy
YWQ7CisgICAgICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzID0gcmFkMmRlZyhtX3ZhbHVlSW5T
cGVjaWZpZWRVbml0cyk7CiAgICAgZWxzZSBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBF
X0dSQUQgJiYgdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9ERUcpCi0gICAgICAgIG1fdmFsdWVJ
blNwZWNpZmllZFVuaXRzIC89IGRlZzJncmFkOworICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRV
bml0cyA9IGdyYWQyZGVnKG1fdmFsdWVJblNwZWNpZmllZFVuaXRzKTsKIAogICAgIG1fdW5pdFR5
cGUgPSAoU1ZHQW5nbGVUeXBlKXVuaXRUeXBlOwogfQpAQCAtMTU2LDEyICsxNTIsMTIgQEAgdm9p
ZCBTVkdBbmdsZTo6Y29udmVydFRvU3BlY2lmaWVkVW5pdHModQogLy8gSGVscGVycwogZG91Ymxl
IFNWR0FuZ2xlOjp0b2RlZyhkb3VibGUgcmFkKQogewotICAgIHJldHVybiByYWQgLyBkZWcycmFk
OworICAgIHJldHVybiByYWQyZGVnKHJhZCk7CiB9CiAKIGRvdWJsZSBTVkdBbmdsZTo6dG9yYWQo
ZG91YmxlIGRlZykKIHsKLSAgICByZXR1cm4gZGVnICogZGVnMnJhZDsKKyAgICByZXR1cm4gZGVn
MnJhZChkZWcpOwogfQogCiBkb3VibGUgU1ZHQW5nbGU6OnNob3J0ZXN0QXJjQmlzZWN0b3IoZG91
YmxlIGFuZ2xlMSwgZG91YmxlIGFuZ2xlMikKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvQWZmaW5lVHJhbnNmb3JtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0FmZmluZVRyYW5zZm9ybS5jcHAJKHJldmlzaW9uIDI2MTc3KQorKysgV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9BZmZpbmVUcmFuc2Zvcm0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
OSwxMiArMjksMTAgQEAKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJJbnRSZWN0
LmgiCiAKLSNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1jb25zdCBkb3VibGUgZGVnMnJhZCA9IDAuMDE3NDUzMjky
NTE5OTQzMjk1NzY5OyAvLyBwaS8xODAKLQogYm9vbCBBZmZpbmVUcmFuc2Zvcm06OmlzSW52ZXJ0
aWJsZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGRldCgpICE9IDAuMDsKQEAgLTU3LDcgKzU1LDcg
QEAgQWZmaW5lVHJhbnNmb3JtJiBBZmZpbmVUcmFuc2Zvcm06OnNjYWxlTgogCiBBZmZpbmVUcmFu
c2Zvcm0mIEFmZmluZVRyYW5zZm9ybTo6cm90YXRlRnJvbVZlY3Rvcihkb3VibGUgeCwgZG91Ymxl
IHkpCiB7Ci0gICAgcmV0dXJuIHJvdGF0ZShhdGFuMih5LCB4KSAvIGRlZzJyYWQpOworICAgIHJl
dHVybiByb3RhdGUocmFkMmRlZyhhdGFuMih5LCB4KSkpOwogfQogCiBBZmZpbmVUcmFuc2Zvcm0m
IEFmZmluZVRyYW5zZm9ybTo6ZmxpcFgoKQpAQCAtNzIsMTIgKzcwLDEyIEBAIEFmZmluZVRyYW5z
Zm9ybSYgQWZmaW5lVHJhbnNmb3JtOjpmbGlwWSgKIAogQWZmaW5lVHJhbnNmb3JtJiBBZmZpbmVU
cmFuc2Zvcm06OnNrZXdYKGRvdWJsZSBhbmdsZSkKIHsKLSAgICByZXR1cm4gc2hlYXIodGFuKGFu
Z2xlICogZGVnMnJhZCksIDAuMGYpOworICAgIHJldHVybiBzaGVhcih0YW4oZGVnMnJhZChhbmds
ZSkpLCAwLjBmKTsKIH0KIAogQWZmaW5lVHJhbnNmb3JtJiBBZmZpbmVUcmFuc2Zvcm06OnNrZXdZ
KGRvdWJsZSBhbmdsZSkKIHsKLSAgICByZXR1cm4gc2hlYXIoMC4wZiwgdGFuKGFuZ2xlICogZGVn
MnJhZCkpOworICAgIHJldHVybiBzaGVhcigwLjBmLCB0YW4oZGVnMnJhZChhbmdsZSkpKTsKIH0K
IAogfQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9BZmZpbmVUcmFuc2Zvcm1D
Ry5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9BZmZpbmVU
cmFuc2Zvcm1DRy5jcHAJKHJldmlzaW9uIDI2MTc3KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jZy9BZmZpbmVUcmFuc2Zvcm1DRy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDkgKzMy
LDkgQEAKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJJbnRSZWN0LmgiCiAKLW5h
bWVzcGFjZSBXZWJDb3JlIHsKKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogCi1zdGF0aWMg
Y29uc3QgZG91YmxlIGRlZzJyYWQgPSAwLjAxNzQ1MzI5MjUxOTk0MzI5NTc2OTsgLy8gcGkvMTgw
CituYW1lc3BhY2UgV2ViQ29yZSB7CiAKIEFmZmluZVRyYW5zZm9ybTo6QWZmaW5lVHJhbnNmb3Jt
KCkKIHsKQEAgLTE2MSw3ICsxNjEsNyBAQCBBZmZpbmVUcmFuc2Zvcm0gJkFmZmluZVRyYW5zZm9y
bTo6c2NhbGUoCiAKIEFmZmluZVRyYW5zZm9ybSAmQWZmaW5lVHJhbnNmb3JtOjpyb3RhdGUoZG91
YmxlIGQpCiB7Ci0gICAgbV90cmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybVJvdGF0ZShtX3Ry
YW5zZm9ybSwgbmFycm93UHJlY2lzaW9uVG9DR0Zsb2F0KGQgKiBkZWcycmFkKSk7CisgICAgbV90
cmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybVJvdGF0ZShtX3RyYW5zZm9ybSwgbmFycm93UHJl
Y2lzaW9uVG9DR0Zsb2F0KGRlZzJyYWQoZCkpKTsKICAgICByZXR1cm4gKnRoaXM7CiB9CiAKSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVDb2xvck1h
dHJpeENnLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2Zp
bHRlcnMvY2cvU1ZHRkVDb2xvck1hdHJpeENnLm1tCShyZXZpc2lvbiAyNjE3NykKKysrIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVDb2xvck1hdHJpeENnLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC0yNSw2ICsyNSw4IEBACiAjaW5jbHVkZSAiU1ZHRkVDb2xvck1h
dHJpeC5oIgogI2luY2x1ZGUgIlNWR0ZFSGVscGVyc0NnLmgiCiAKKyNpbmNsdWRlIDx3dGYvTWF0
aEV4dHJhcy5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICNkZWZpbmUgQ01WYWx1ZXNDaGVj
ayhleHBlY3RlZCwgdHlwZSkgXApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcv
ZmlsdGVycy9jZy9TVkdGRUhlbHBlcnNDZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVIZWxwZXJzQ2cuaAkocmV2aXNpb24gMjYx
NzcpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVs
cGVyc0NnLmgJKHdvcmtpbmcgY29weSkKQEAgLTgzLDYgKzgzLDQgQEAgQ0lGaWx0ZXIqIGdldE5v
cm1hbE1hcChDSUltYWdlKiBidW1wTWFwLAogICAgIEZFX1FVQVJUWl9NQVBfVE9fU1VCUkVHSU9O
X1BSRVBBUkUoYmJveCk7IFwKICAgICBGRV9RVUFSVFpfTUFQX1RPX1NVQlJFR0lPTl9BUFBMWShj
cm9wUmVjdCk7CiAKLSNkZWZpbmUgZGVnMnJhZChkKSAoKGQgKiAoMi4wICogTV9QSSkpIC8gMzYw
LjApCi0KICNlbmRpZiAvLyBFTkFCTEUoU1ZHKSAmJiBFTkFCTEUoU1ZHX0VYUEVSSU1FTlRBTF9G
RUFUVVJFUykKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL2ZpbHRlcnMvY2cv
U1ZHRkVIZWxwZXJzQ2cubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9zdmcvZmlsdGVycy9jZy9TVkdGRUhlbHBlcnNDZy5tbQkocmV2aXNpb24gMjYxNzcpCisrKyBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVscGVyc0NnLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw4IEBACiAjaW1wb3J0ICJXS1BvaW50TGlnaHRG
aWx0ZXIuaCIKICNpbXBvcnQgIldLU3BvdExpZ2h0RmlsdGVyLmgiCiAKKyNpbmNsdWRlIDx3dGYv
TWF0aEV4dHJhcy5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENJVmVjdG9yKiBnZXRWZWN0
b3JGb3JDaGFubmVsKFNWR0NoYW5uZWxTZWxlY3RvclR5cGUgY2hhbm5lbCkKSW5kZXg6IFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclBhdGguY3BwCShyZXZpc2lvbiAyNjE3NykKKysrIFdlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclBhdGguY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTgsOSArMjk4LDggQEAgc3RhdGlj
IHZvaWQgZHJhd01hcmtlcldpdGhEYXRhKEdyYXBoaWNzQwogICAgIEZsb2F0UG9pbnQgaW5zbG9w
ZUNoYW5nZSA9IGRhdGEuaW5zbG9wZVBvaW50c1sxXSAtIEZsb2F0U2l6ZShkYXRhLmluc2xvcGVQ
b2ludHNbMF0ueCgpLCBkYXRhLmluc2xvcGVQb2ludHNbMF0ueSgpKTsKICAgICBGbG9hdFBvaW50
IG91dHNsb3BlQ2hhbmdlID0gZGF0YS5vdXRzbG9wZVBvaW50c1sxXSAtIEZsb2F0U2l6ZShkYXRh
Lm91dHNsb3BlUG9pbnRzWzBdLngoKSwgZGF0YS5vdXRzbG9wZVBvaW50c1swXS55KCkpOwogCi0g
ICAgc3RhdGljIGNvbnN0IGRvdWJsZSBkZWcycmFkID0gcGlEb3VibGUgLyAxODAuMDsKLSAgICBk
b3VibGUgaW5zbG9wZSA9IGF0YW4yKGluc2xvcGVDaGFuZ2UueSgpLCBpbnNsb3BlQ2hhbmdlLngo
KSkgLyBkZWcycmFkOwotICAgIGRvdWJsZSBvdXRzbG9wZSA9IGF0YW4yKG91dHNsb3BlQ2hhbmdl
LnkoKSwgb3V0c2xvcGVDaGFuZ2UueCgpKSAvIGRlZzJyYWQ7CisgICAgZG91YmxlIGluc2xvcGUg
PSByYWQyZGVnKGF0YW4yKGluc2xvcGVDaGFuZ2UueSgpLCBpbnNsb3BlQ2hhbmdlLngoKSkpOwor
ICAgIGRvdWJsZSBvdXRzbG9wZSA9IHJhZDJkZWcoYXRhbjIob3V0c2xvcGVDaGFuZ2UueSgpLCBv
dXRzbG9wZUNoYW5nZS54KCkpKTsKIAogICAgIGRvdWJsZSBhbmdsZSA9IDAuMDsKICAgICBzd2l0
Y2ggKGRhdGEudHlwZSkgewo=
</data>
<flag name="review"
          id="7015"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16621</attachid>
            <date>2007-10-10 17:52:50 -0700</date>
            <delta_ts>2007-10-11 18:42:00 -0700</delta_ts>
            <desc>Proposed patch 2</desc>
            <filename>bug-15076-patch-2.txt</filename>
            <type>text/plain</type>
            <size>10680</size>
            <attacher name="Andrew Wellington">andrew</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MzUwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMDctMTAtMTAgIEFuZHJldyBX
ZWxsaW5ndG9uICA8cHJvdG9uQHdpcmV0YXBwZWQubmV0PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgRml4IGZvciBodHRwOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTA3NgorICAgICAgICAiZGVnMnJhZCBoYXMgbXVs
dGlwbGUgZGVmaW5pdGlvbnMiCisgICAgICAgIAorICAgICAgICBEZWZpbmUgZGVnMnJhZCwgcmFk
MmRlZywgZGVnMmdyYWQsIGdyYWQyZGVnLCByYWQyZ3JhZCwgZ3JhZDJyYWQKKyAgICAgICAgVGhl
c2UgYXJlIHVzZWQgdGhyb3VnaCBXZWJLaXQuCisgICAgICAgIAorICAgICAgICBDaGFuZ2UgYmFz
ZWQgb24gb3JpZ2luYWwgcGF0Y2ggYnkgUm9iIEJ1aXMuCisKKyAgICAgICAgKiB3dGYvTWF0aEV4
dHJhcy5oOgorICAgICAgICAoZGVnMnJhZCk6CisgICAgICAgIChyYWQyZGVnKToKKyAgICAgICAg
KGRlZzJncmFkKToKKyAgICAgICAgKGdyYWQyZGVnKToKKyAgICAgICAgKHJhZDJncmFkKToKKyAg
ICAgICAgKGdyYWQycmFkKToKKwogPT09IHN0YXJ0IG1lcmdlIG9mIHRydW5rLzI1OTcwLTI2MTAy
IDA4LTEwLTIwMDcgPT09CiAKIDIwMDctMTAtMDUgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFw
cGxlLmNvbT4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9NYXRoRXh0cmFzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL01hdGhFeHRyYXMuaAkocmV2aXNpb24gMjYzNTApCisr
KyBKYXZhU2NyaXB0Q29yZS93dGYvTWF0aEV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzYs
NCArMTM2LDE4IEBAIGlubGluZSBkb3VibGUgd3RmX3JhbmRvbSgpCiAKICNlbmRpZiAvLyAjaWYg
Q09NUElMRVIoTVNWQykKIAoraW5saW5lIGRvdWJsZSBkZWcycmFkKGRvdWJsZSBkKSAgeyByZXR1
cm4gZCAqIHBpRG91YmxlIC8gMTgwLjA7IH0KK2lubGluZSBkb3VibGUgcmFkMmRlZyhkb3VibGUg
cikgIHsgcmV0dXJuIHIgKiAxODAuMCAvIHBpRG91YmxlOyB9CitpbmxpbmUgZG91YmxlIGRlZzJn
cmFkKGRvdWJsZSBkKSB7IHJldHVybiBkICogNDAwLjAgLyAzNjAuMDsgfQoraW5saW5lIGRvdWJs
ZSBncmFkMmRlZyhkb3VibGUgZykgeyByZXR1cm4gZyAqIDM2MC4wIC8gNDAwLjA7IH0KK2lubGlu
ZSBkb3VibGUgcmFkMmdyYWQoZG91YmxlIHIpIHsgcmV0dXJuIHIgKiAyMDAuMCAvIHBpRG91Ymxl
OyB9CitpbmxpbmUgZG91YmxlIGdyYWQycmFkKGRvdWJsZSBnKSB7IHJldHVybiBnICogcGlEb3Vi
bGUgLyAyMDAuMDsgfQorCitpbmxpbmUgZmxvYXQgZGVnMnJhZChmbG9hdCBkKSAgeyByZXR1cm4g
ZCAqIHBpRmxvYXQgLyAxODAuMGY7IH0KK2lubGluZSBmbG9hdCByYWQyZGVnKGZsb2F0IHIpICB7
IHJldHVybiByICogMTgwLjBmIC8gcGlGbG9hdDsgfQoraW5saW5lIGZsb2F0IGRlZzJncmFkKGZs
b2F0IGQpIHsgcmV0dXJuIGQgKiA0MDAuMGYgLyAzNjAuMGY7IH0KK2lubGluZSBmbG9hdCBncmFk
MmRlZyhmbG9hdCBnKSB7IHJldHVybiBnICogMzYwLjBmIC8gNDAwLjBmOyB9CitpbmxpbmUgZmxv
YXQgcmFkMmdyYWQoZmxvYXQgcikgeyByZXR1cm4gciAqIDIwMC4wZiAvIHBpRmxvYXQ7IH0KK2lu
bGluZSBmbG9hdCBncmFkMnJhZChmbG9hdCBnKSB7IHJldHVybiBnICogcGlGbG9hdCAvIDIwMC4w
ZjsgfQorCiAjZW5kaWYgLy8gI2lmbmRlZiBXVEZfTWF0aEV4dHJhc19oCkluZGV4OiBXZWJDb3Jl
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjYz
NTApCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBA
CisyMDA3LTEwLTEwICBBbmRyZXcgV2VsbGluZ3RvbiAgPHByb3RvbkB3aXJldGFwcGVkLm5ldD4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggZm9y
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MDc2CisgICAgICAgICJk
ZWcycmFkIGhhcyBtdWx0aXBsZSBkZWZpbml0aW9ucyIKKyAgICAgICAgCisgICAgICAgIFVzZSBk
ZWcycmFkLCByYWQyZGVnLCBkZWcyZ3JhZCwgZ3JhZDJkZWcsIHJhZDJncmFkLCBncmFkMnJhZAor
ICAgICAgICBmcm9tIHd0ZiB3aGVyZSBhcHByb3ByaWF0ZS4KKyAgICAgICAgCisgICAgICAgIE5v
IHRlc3QgY2FzZXMgYXMgdGhpcyBkb2VzJ3QgY2hhbmdlIGJlaGF2aW91ci4KKyAgICAgICAgCisg
ICAgICAgIENoYW5nZSBiYXNlZCBvbiBvcmlnaW5hbCBwYXRjaCBieSBSb2IgQnVpcy4KKworICAg
ICAgICAqIGtzdmcyL3N2Zy9TVkdBbmdsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmds
ZTo6Y2FsY3VsYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuZ2xlOjpjb252ZXJ0VG9TcGVj
aWZpZWRVbml0cyk6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmdsZTo6dG9kZWcpOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHQW5nbGU6OnRvcmFkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9BZmZpbmVUcmFuc2Zvcm0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3Jt
Ojpyb3RhdGVGcm9tVmVjdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5zZm9ybTo6
c2tld1gpOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3JtOjpza2V3WSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQWZmaW5lVHJhbnNmb3JtQ0cuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3JtOjpyb3RhdGUpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFQ29sb3JNYXRyaXhDZy5tbToKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUhlbHBlcnNDZy5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVscGVyc0NnLm1t
OgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmRyYXdNYXJrZXJXaXRoRGF0YSk6CisKIDIwMDctMTAtMTAgIE1hcmsgUm93ZSAgPG1yb3dlQGFw
cGxlLmNvbT4KIAogICAgICAgICBXaW5kb3dzIGJ1aWxkIGZpeCBhZnRlciByMjYxMDkuCkluZGV4
OiBXZWJDb3JlL2tzdmcyL3N2Zy9TVkdBbmdsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9r
c3ZnMi9zdmcvU1ZHQW5nbGUuY3BwCShyZXZpc2lvbiAyNjM1MCkKKysrIFdlYkNvcmUva3N2ZzIv
c3ZnL1NWR0FuZ2xlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsMTQgKzI2LDEwIEBACiAjaW5j
bHVkZSAiU1ZHQW5nbGUuaCIKIAogI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDx3dGYvTWF0
aEV4dHJhcy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IGZsb2F0IGRlZzJyYWQg
PSAwLjAxNzQ1MzI5MjUxOTk0MzI5NTc2OWY7IC8vIHBpLzE4MAotY29uc3QgZmxvYXQgZGVnMmdy
YWQgPSA0MDAuMGYgLyAzNjAuMGY7Ci0KLSNkZWZpbmUgcmFkMmdyYWQgZGVnMmdyYWQgLyBkZWcy
cmFkCi0KIFNWR0FuZ2xlOjpTVkdBbmdsZSgpCiAgICAgOiBTaGFyZWQ8U1ZHQW5nbGU+KCkKICAg
ICAsIG1fdW5pdFR5cGUoU1ZHX0FOR0xFVFlQRV9VTktOT1dOKQpAQCAtNjUsOSArNjEsOSBAQCBm
bG9hdCBTVkdBbmdsZTo6dmFsdWUoKSBjb25zdAogdm9pZCBTVkdBbmdsZTo6Y2FsY3VsYXRlKCkK
IHsKICAgICBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0dSQUQpCi0gICAgICAgIG1f
dmFsdWUgPSBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyAvIGRlZzJncmFkOworICAgICAgICBtX3Zh
bHVlID0gZ3JhZDJkZWcobV92YWx1ZUluU3BlY2lmaWVkVW5pdHMpOwogICAgIGVsc2UgaWYgKG1f
dW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9SQUQpCi0gICAgICAgIG1fdmFsdWUgPSBtX3ZhbHVl
SW5TcGVjaWZpZWRVbml0cyAvIGRlZzJyYWQ7CisgICAgICAgIG1fdmFsdWUgPSByYWQyZGVnKG1f
dmFsdWVJblNwZWNpZmllZFVuaXRzKTsKICAgICBlbHNlIGlmIChtX3VuaXRUeXBlID09IFNWR19B
TkdMRVRZUEVfVU5TUEVDSUZJRUQgfHwgbV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0RFRykK
ICAgICAgICAgbV92YWx1ZSA9IG1fdmFsdWVJblNwZWNpZmllZFVuaXRzOwogfQpAQCAtMTM4LDE3
ICsxMzQsMTcgQEAgdm9pZCBTVkdBbmdsZTo6Y29udmVydFRvU3BlY2lmaWVkVW5pdHModQogICAg
ICAgICByZXR1cm47CiAKICAgICBpZiAobV91bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0RFRyAm
JiB1bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX1JBRCkKLSAgICAgICAgbV92YWx1ZUluU3BlY2lm
aWVkVW5pdHMgKj0gZGVnMnJhZDsKKyAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgPSBk
ZWcycmFkKG1fdmFsdWVJblNwZWNpZmllZFVuaXRzKTsKICAgICBlbHNlIGlmIChtX3VuaXRUeXBl
ID09IFNWR19BTkdMRVRZUEVfR1JBRCAmJiB1bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX1JBRCkK
LSAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgLz0gcmFkMmdyYWQ7CisgICAgICAgIG1f
dmFsdWVJblNwZWNpZmllZFVuaXRzID0gZ3JhZDJyYWQobV92YWx1ZUluU3BlY2lmaWVkVW5pdHMp
OwogICAgIGVsc2UgaWYgKG1fdW5pdFR5cGUgPT0gU1ZHX0FOR0xFVFlQRV9ERUcgJiYgdW5pdFR5
cGUgPT0gU1ZHX0FOR0xFVFlQRV9HUkFEKQotICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0
cyAqPSBkZWcyZ3JhZDsKKyAgICAgICAgbV92YWx1ZUluU3BlY2lmaWVkVW5pdHMgPSBkZWcyZ3Jh
ZChtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyk7CiAgICAgZWxzZSBpZiAobV91bml0VHlwZSA9PSBT
VkdfQU5HTEVUWVBFX1JBRCAmJiB1bml0VHlwZSA9PSBTVkdfQU5HTEVUWVBFX0dSQUQpCi0gICAg
ICAgIG1fdmFsdWVJblNwZWNpZmllZFVuaXRzICo9IHJhZDJncmFkOworICAgICAgICBtX3ZhbHVl
SW5TcGVjaWZpZWRVbml0cyA9IHJhZDJncmFkKG1fdmFsdWVJblNwZWNpZmllZFVuaXRzKTsKICAg
ICBlbHNlIGlmIChtX3VuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfUkFEICYmIHVuaXRUeXBlID09
IFNWR19BTkdMRVRZUEVfREVHKQotICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyAvPSBk
ZWcycmFkOworICAgICAgICBtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyA9IHJhZDJkZWcobV92YWx1
ZUluU3BlY2lmaWVkVW5pdHMpOwogICAgIGVsc2UgaWYgKG1fdW5pdFR5cGUgPT0gU1ZHX0FOR0xF
VFlQRV9HUkFEICYmIHVuaXRUeXBlID09IFNWR19BTkdMRVRZUEVfREVHKQotICAgICAgICBtX3Zh
bHVlSW5TcGVjaWZpZWRVbml0cyAvPSBkZWcyZ3JhZDsKKyAgICAgICAgbV92YWx1ZUluU3BlY2lm
aWVkVW5pdHMgPSBncmFkMmRlZyhtX3ZhbHVlSW5TcGVjaWZpZWRVbml0cyk7CiAKICAgICBtX3Vu
aXRUeXBlID0gKFNWR0FuZ2xlVHlwZSl1bml0VHlwZTsKIH0KQEAgLTE1NiwxMiArMTUyLDEyIEBA
IHZvaWQgU1ZHQW5nbGU6OmNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKHUKIC8vIEhlbHBlcnMKIGRv
dWJsZSBTVkdBbmdsZTo6dG9kZWcoZG91YmxlIHJhZCkKIHsKLSAgICByZXR1cm4gcmFkIC8gZGVn
MnJhZDsKKyAgICByZXR1cm4gcmFkMmRlZyhyYWQpOwogfQogCiBkb3VibGUgU1ZHQW5nbGU6OnRv
cmFkKGRvdWJsZSBkZWcpCiB7Ci0gICAgcmV0dXJuIGRlZyAqIGRlZzJyYWQ7CisgICAgcmV0dXJu
IGRlZzJyYWQoZGVnKTsKIH0KIAogZG91YmxlIFNWR0FuZ2xlOjpzaG9ydGVzdEFyY0Jpc2VjdG9y
KGRvdWJsZSBhbmdsZTEsIGRvdWJsZSBhbmdsZTIpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0FmZmluZVRyYW5zZm9ybS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9BZmZpbmVUcmFuc2Zvcm0uY3BwCShyZXZpc2lvbiAyNjM1MCkKKysrIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvQWZmaW5lVHJhbnNmb3JtLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjksMTIgKzI5LDEwIEBACiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiSW50
UmVjdC5oIgogCi0jaW5jbHVkZSA8bWF0aC5oPgorI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY29uc3QgZG91YmxlIGRlZzJyYWQgPSAwLjAxNzQ1
MzI5MjUxOTk0MzI5NTc2OTsgLy8gcGkvMTgwCi0KIGJvb2wgQWZmaW5lVHJhbnNmb3JtOjppc0lu
dmVydGlibGUoKSBjb25zdAogewogICAgIHJldHVybiBkZXQoKSAhPSAwLjA7CkBAIC01Nyw3ICs1
NSw3IEBAIEFmZmluZVRyYW5zZm9ybSYgQWZmaW5lVHJhbnNmb3JtOjpzY2FsZU4KIAogQWZmaW5l
VHJhbnNmb3JtJiBBZmZpbmVUcmFuc2Zvcm06OnJvdGF0ZUZyb21WZWN0b3IoZG91YmxlIHgsIGRv
dWJsZSB5KQogewotICAgIHJldHVybiByb3RhdGUoYXRhbjIoeSwgeCkgLyBkZWcycmFkKTsKKyAg
ICByZXR1cm4gcm90YXRlKHJhZDJkZWcoYXRhbjIoeSwgeCkpKTsKIH0KIAogQWZmaW5lVHJhbnNm
b3JtJiBBZmZpbmVUcmFuc2Zvcm06OmZsaXBYKCkKQEAgLTcyLDEyICs3MCwxMiBAQCBBZmZpbmVU
cmFuc2Zvcm0mIEFmZmluZVRyYW5zZm9ybTo6ZmxpcFkoCiAKIEFmZmluZVRyYW5zZm9ybSYgQWZm
aW5lVHJhbnNmb3JtOjpza2V3WChkb3VibGUgYW5nbGUpCiB7Ci0gICAgcmV0dXJuIHNoZWFyKHRh
bihhbmdsZSAqIGRlZzJyYWQpLCAwLjBmKTsKKyAgICByZXR1cm4gc2hlYXIodGFuKGRlZzJyYWQo
YW5nbGUpKSwgMC4wZik7CiB9CiAKIEFmZmluZVRyYW5zZm9ybSYgQWZmaW5lVHJhbnNmb3JtOjpz
a2V3WShkb3VibGUgYW5nbGUpCiB7Ci0gICAgcmV0dXJuIHNoZWFyKDAuMGYsIHRhbihhbmdsZSAq
IGRlZzJyYWQpKTsKKyAgICByZXR1cm4gc2hlYXIoMC4wZiwgdGFuKGRlZzJyYWQoYW5nbGUpKSk7
CiB9CiAKIH0KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQWZmaW5lVHJhbnNm
b3JtQ0cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvQWZm
aW5lVHJhbnNmb3JtQ0cuY3BwCShyZXZpc2lvbiAyNjM1MCkKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2cvQWZmaW5lVHJhbnNmb3JtQ0cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw5
ICszMiw5IEBACiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiSW50UmVjdC5oIgog
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KIAotc3Rh
dGljIGNvbnN0IGRvdWJsZSBkZWcycmFkID0gMC4wMTc0NTMyOTI1MTk5NDMyOTU3Njk7IC8vIHBp
LzE4MAorbmFtZXNwYWNlIFdlYkNvcmUgewogCiBBZmZpbmVUcmFuc2Zvcm06OkFmZmluZVRyYW5z
Zm9ybSgpCiB7CkBAIC0xNjEsNyArMTYxLDcgQEAgQWZmaW5lVHJhbnNmb3JtICZBZmZpbmVUcmFu
c2Zvcm06OnNjYWxlKAogCiBBZmZpbmVUcmFuc2Zvcm0gJkFmZmluZVRyYW5zZm9ybTo6cm90YXRl
KGRvdWJsZSBkKQogewotICAgIG1fdHJhbnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1Sb3RhdGUo
bV90cmFuc2Zvcm0sIG5hcnJvd1ByZWNpc2lvblRvQ0dGbG9hdChkICogZGVnMnJhZCkpOworICAg
IG1fdHJhbnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1Sb3RhdGUobV90cmFuc2Zvcm0sIG5hcnJv
d1ByZWNpc2lvblRvQ0dGbG9hdChkZWcycmFkKGQpKSk7CiAgICAgcmV0dXJuICp0aGlzOwogfQog
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFQ29s
b3JNYXRyaXhDZy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2
Zy9maWx0ZXJzL2NnL1NWR0ZFQ29sb3JNYXRyaXhDZy5tbQkocmV2aXNpb24gMjYzNTApCisrKyBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFQ29sb3JNYXRyaXhD
Zy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjUsNiArMjUsOCBAQAogI2luY2x1ZGUgIlNWR0ZFQ29s
b3JNYXRyaXguaCIKICNpbmNsdWRlICJTVkdGRUhlbHBlcnNDZy5oIgogCisjaW5jbHVkZSA8d3Rm
L01hdGhFeHRyYXMuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAjZGVmaW5lIENNVmFsdWVz
Q2hlY2soZXhwZWN0ZWQsIHR5cGUpIFwKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
c3ZnL2ZpbHRlcnMvY2cvU1ZHRkVIZWxwZXJzQ2cuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJzL2NnL1NWR0ZFSGVscGVyc0NnLmgJKHJldmlzaW9u
IDI2MzUwKQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdG
RUhlbHBlcnNDZy5oCSh3b3JraW5nIGNvcHkpCkBAIC04Myw2ICs4Myw0IEBAIENJRmlsdGVyKiBn
ZXROb3JtYWxNYXAoQ0lJbWFnZSogYnVtcE1hcCwKICAgICBGRV9RVUFSVFpfTUFQX1RPX1NVQlJF
R0lPTl9QUkVQQVJFKGJib3gpOyBcCiAgICAgRkVfUVVBUlRaX01BUF9UT19TVUJSRUdJT05fQVBQ
TFkoY3JvcFJlY3QpOwogCi0jZGVmaW5lIGRlZzJyYWQoZCkgKChkICogKDIuMCAqIE1fUEkpKSAv
IDM2MC4wKQotCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykgJiYgRU5BQkxFKFNWR19FWFBFUklNRU5U
QUxfRkVBVFVSRVMpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9maWx0ZXJz
L2NnL1NWR0ZFSGVscGVyc0NnLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvc3ZnL2ZpbHRlcnMvY2cvU1ZHRkVIZWxwZXJzQ2cubW0JKHJldmlzaW9uIDI2MzUwKQor
KysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcvZmlsdGVycy9jZy9TVkdGRUhlbHBlcnND
Zy5tbQkod29ya2luZyBjb3B5KQpAQCAtMzUsNiArMzUsOCBAQAogI2ltcG9ydCAiV0tQb2ludExp
Z2h0RmlsdGVyLmgiCiAjaW1wb3J0ICJXS1Nwb3RMaWdodEZpbHRlci5oIgogCisjaW5jbHVkZSA8
d3RmL01hdGhFeHRyYXMuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBDSVZlY3RvciogZ2V0
VmVjdG9yRm9yQ2hhbm5lbChTVkdDaGFubmVsU2VsZWN0b3JUeXBlIGNoYW5uZWwpCkluZGV4OiBX
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJQYXRoLmNwcAkocmV2aXNpb24gMjYzNTApCisrKyBXZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJQYXRoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjk4LDkgKzI5OCw4IEBAIHN0
YXRpYyB2b2lkIGRyYXdNYXJrZXJXaXRoRGF0YShHcmFwaGljc0MKICAgICBGbG9hdFBvaW50IGlu
c2xvcGVDaGFuZ2UgPSBkYXRhLmluc2xvcGVQb2ludHNbMV0gLSBGbG9hdFNpemUoZGF0YS5pbnNs
b3BlUG9pbnRzWzBdLngoKSwgZGF0YS5pbnNsb3BlUG9pbnRzWzBdLnkoKSk7CiAgICAgRmxvYXRQ
b2ludCBvdXRzbG9wZUNoYW5nZSA9IGRhdGEub3V0c2xvcGVQb2ludHNbMV0gLSBGbG9hdFNpemUo
ZGF0YS5vdXRzbG9wZVBvaW50c1swXS54KCksIGRhdGEub3V0c2xvcGVQb2ludHNbMF0ueSgpKTsK
IAotICAgIHN0YXRpYyBjb25zdCBkb3VibGUgZGVnMnJhZCA9IHBpRG91YmxlIC8gMTgwLjA7Ci0g
ICAgZG91YmxlIGluc2xvcGUgPSBhdGFuMihpbnNsb3BlQ2hhbmdlLnkoKSwgaW5zbG9wZUNoYW5n
ZS54KCkpIC8gZGVnMnJhZDsKLSAgICBkb3VibGUgb3V0c2xvcGUgPSBhdGFuMihvdXRzbG9wZUNo
YW5nZS55KCksIG91dHNsb3BlQ2hhbmdlLngoKSkgLyBkZWcycmFkOworICAgIGRvdWJsZSBpbnNs
b3BlID0gcmFkMmRlZyhhdGFuMihpbnNsb3BlQ2hhbmdlLnkoKSwgaW5zbG9wZUNoYW5nZS54KCkp
KTsKKyAgICBkb3VibGUgb3V0c2xvcGUgPSByYWQyZGVnKGF0YW4yKG91dHNsb3BlQ2hhbmdlLnko
KSwgb3V0c2xvcGVDaGFuZ2UueCgpKSk7CiAKICAgICBkb3VibGUgYW5nbGUgPSAwLjA7CiAgICAg
c3dpdGNoIChkYXRhLnR5cGUpIHsK
</data>
<flag name="review"
          id="7022"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>