<?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>4431</bug_id>
          
          <creation_ts>2005-08-14 15:30:59 -0700</creation_ts>
          <short_desc>KCanvas opacity improvements</short_desc>
          <delta_ts>2005-08-16 01:55:55 -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>420+</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>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tobias Lidskog">tobiaslidskog</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>16654</commentid>
    <comment_count>0</comment_count>
    <who name="Tobias Lidskog">tobiaslidskog</who>
    <bug_when>2005-08-14 15:30:59 -0700</bug_when>
    <thetext>Opacity is represented as a number between 0 and 1 everywhere i SVG, kvsg2 and kcanvas, except in 
KRenderingStyle and KCanvasRenderingStyle where it&apos;s 0 - 255. The inconsistency in the API is confusing, 
and also results in lots of extra floating point divisions (opacity = opacity/255.0) that are bad for 
performance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16655</commentid>
    <comment_count>1</comment_count>
      <attachid>3385</attachid>
    <who name="Tobias Lidskog">tobiaslidskog</who>
    <bug_when>2005-08-14 15:32:36 -0700</bug_when>
    <thetext>Created attachment 3385
make opacity a float

Changes to make opacity handling consistent in all of ksvg and kcanvas</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16709</commentid>
    <comment_count>2</comment_count>
      <attachid>3385</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-08-15 03:23:25 -0700</bug_when>
    <thetext>Comment on attachment 3385
make opacity a float

Looks fine to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16729</commentid>
    <comment_count>3</comment_count>
      <attachid>3408</attachid>
    <who name="Tobias Lidskog">tobiaslidskog</who>
    <bug_when>2005-08-15 11:45:36 -0700</bug_when>
    <thetext>Created attachment 3408
forgot a few changes

the original file lacked a few diffs, this should be complete</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16736</commentid>
    <comment_count>4</comment_count>
      <attachid>3408</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-08-15 13:09:19 -0700</bug_when>
    <thetext>Comment on attachment 3408
forgot a few changes

Assuming this is all of them, and svg still passes all the layout tets, yes
this looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16741</commentid>
    <comment_count>5</comment_count>
      <attachid>3412</attachid>
    <who name="Tobias Lidskog">tobiaslidskog</who>
    <bug_when>2005-08-15 15:03:02 -0700</bug_when>
    <thetext>Created attachment 3412
update tests

truly sorry, forgot to attach the tests results that change
opacity 127 -&gt; 0.5 and 255 -&gt; 1.0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16757</commentid>
    <comment_count>6</comment_count>
      <attachid>3412</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-08-15 23:36:44 -0700</bug_when>
    <thetext>Comment on attachment 3412
update tests

looks good.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>3385</attachid>
            <date>2005-08-14 15:32:36 -0700</date>
            <delta_ts>2005-08-15 11:45:36 -0700</delta_ts>
            <desc>make opacity a float</desc>
            <filename>opacitypatch.diff</filename>
            <type>text/plain</type>
            <size>6092</size>
            <attacher name="Tobias Lidskog">tobiaslidskog</attacher>
            
              <data encoding="base64">SW5kZXg6IGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rY2FudmFzL2RldmljZS9LUmVu
ZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZC5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMgpkaWZm
IC1wIC11IC1yMS4yIGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkLmNw
cAotLS0ga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1BhaW50U2VydmVyU29saWQuY3BwCTExIEF1
ZyAyMDA1IDExOjMzOjM0IC0wMDAwCTEuMgorKysga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1Bh
aW50U2VydmVyU29saWQuY3BwCTE0IEF1ZyAyMDA1IDIyOjE5OjAzIC0wMDAwCkBAIC01NSw5ICs1
NSw5IEBAIEtDUGFpbnRTZXJ2ZXJUeXBlIEtSZW5kZXJpbmdQYWludFNlcnZlclMKIAlyZXR1cm4g
UFNfU09MSUQ7CiB9CiAKLWRvdWJsZSBLUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZDo6b3BhY2l0
eSgpIGNvbnN0CitmbG9hdCBLUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZDo6b3BhY2l0eSgpIGNv
bnN0CiB7Ci0JcmV0dXJuIGRvdWJsZShxQWxwaGEoZC0+Y29sb3IucmdiKCkpIC8gMjU1Lik7CisJ
cmV0dXJuIGZsb2F0KHFBbHBoYShkLT5jb2xvci5yZ2IoKSkgLyAyNTUuKTsKIH0KIAogLy8gdmlt
OnRzPTQ6bm9ldApJbmRleDoga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1BhaW50U2VydmVyU29s
aWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rY2FudmFzL2Rl
dmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAx
LjIKZGlmZiAtcCAtdSAtcjEuMiBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJT
b2xpZC5oCi0tLSBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZC5oCTEx
IEF1ZyAyMDA1IDExOjMzOjM0IC0wMDAwCTEuMgorKysga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmlu
Z1BhaW50U2VydmVyU29saWQuaAkxNCBBdWcgMjAwNSAyMjoxOTowMyAtMDAwMApAQCAtNDAsNyAr
NDAsNyBAQCBwdWJsaWM6CiAJdm9pZCBzZXRDb2xvcihjb25zdCBRQ29sb3IgJmNvbG9yKTsKIAog
CS8vIEhlbHBlciBtZXRob2QKLQlkb3VibGUgb3BhY2l0eSgpIGNvbnN0OworCWZsb2F0IG9wYWNp
dHkoKSBjb25zdDsKIAogcHJpdmF0ZToKIAljbGFzcyBQcml2YXRlOwpJbmRleDoga2NhbnZhcy9k
ZXZpY2UvS1JlbmRlcmluZ1N0eWxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3Qv
U1ZHU3VwcG9ydC9rY2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuY3BwLHYKcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjIKZGlmZiAtcCAtdSAtcjEuMiBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5n
U3R5bGUuY3BwCi0tLSBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuY3BwCTExIEF1ZyAy
MDA1IDExOjMzOjM0IC0wMDAwCTEuMgorKysga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1N0eWxl
LmNwcAkxNCBBdWcgMjAwNSAyMjoxOTowNCAtMDAwMApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6
CiAJCiAJCWltYWdlUmVuZGVyaW5nID0gSVJfT1BUSU1JWkVfUVVBTElUWTsKIAotCQlvcGFjaXR5
ID0gMjU1OworCQlvcGFjaXR5ID0gMS4wZjsKIAl9CiAKIAl+UHJpdmF0ZSgpCkBAIC03NCw3ICs3
NCw3IEBAIHB1YmxpYzoKIAlLQ2FudmFzTWFya2VyICptaWRNYXJrZXI7CiAJS0NhbnZhc01hcmtl
ciAqZW5kTWFya2VyOwogCi0JaW50IG9wYWNpdHk7CisJZmxvYXQgb3BhY2l0eTsKIH07CiAKIEtS
ZW5kZXJpbmdTdHlsZTo6S1JlbmRlcmluZ1N0eWxlKCkgOiBkKG5ldyBQcml2YXRlKCkpCkBAIC0x
NzgsMTIgKzE3OCwxMiBAQCB2b2lkIEtSZW5kZXJpbmdTdHlsZTo6c2V0SW1hZ2VSZW5kZXJpbmco
CiB9CiAKIC8vIE92ZXJhbGwgb3BhY2l0eQotaW50IEtSZW5kZXJpbmdTdHlsZTo6b3BhY2l0eSgp
IGNvbnN0CitmbG9hdCBLUmVuZGVyaW5nU3R5bGU6Om9wYWNpdHkoKSBjb25zdAogewogCXJldHVy
biBkLT5vcGFjaXR5OwogfQogCi12b2lkIEtSZW5kZXJpbmdTdHlsZTo6c2V0T3BhY2l0eShpbnQg
b3BhY2l0eSkKK3ZvaWQgS1JlbmRlcmluZ1N0eWxlOjpzZXRPcGFjaXR5KGZsb2F0IG9wYWNpdHkp
CiB7CiAJZC0+b3BhY2l0eSA9IG9wYWNpdHk7CiB9CkluZGV4OiBrY2FudmFzL2RldmljZS9LUmVu
ZGVyaW5nU3R5bGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9r
Y2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4y
CmRpZmYgLXAgLXUgLXIxLjIga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1N0eWxlLmgKLS0tIGtj
YW52YXMvZGV2aWNlL0tSZW5kZXJpbmdTdHlsZS5oCTExIEF1ZyAyMDA1IDExOjMzOjM0IC0wMDAw
CTEuMgorKysga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1N0eWxlLmgJMTQgQXVnIDIwMDUgMjI6
MTk6MDQgLTAwMDAKQEAgLTk2LDggKzk2LDggQEAgcHVibGljOgogCXZpcnR1YWwgdm9pZCBzZXRJ
bWFnZVJlbmRlcmluZyhLQ0ltYWdlUmVuZGVyaW5nIGlyKTsKIAogCS8vIE92ZXJhbGwgb3BhY2l0
eQotCXZpcnR1YWwgaW50IG9wYWNpdHkoKSBjb25zdDsKLQl2aXJ0dWFsIHZvaWQgc2V0T3BhY2l0
eShpbnQgb3BhY2l0eSk7CisJdmlydHVhbCBmbG9hdCBvcGFjaXR5KCkgY29uc3Q7CisJdmlydHVh
bCB2b2lkIHNldE9wYWNpdHkoZmxvYXQgb3BhY2l0eSk7CiAKIAkvLyBDbGlwcGluZwogCXZpcnR1
YWwgUVN0cmluZ0xpc3QgY2xpcFBhdGhzKCkgY29uc3Q7CkluZGV4OiBrY2FudmFzL2RldmljZS9x
dWFydHovS0NhbnZhc1Jlc291cmNlc1F1YXJ0ei5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zz
L3Jvb3QvU1ZHU3VwcG9ydC9rY2FudmFzL2RldmljZS9xdWFydHovS0NhbnZhc1Jlc291cmNlc1F1
YXJ0ei5tbSx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEga2NhbnZh
cy9kZXZpY2UvcXVhcnR6L0tDYW52YXNSZXNvdXJjZXNRdWFydHoubW0KLS0tIGtjYW52YXMvZGV2
aWNlL3F1YXJ0ei9LQ2FudmFzUmVzb3VyY2VzUXVhcnR6Lm1tCTkgSnVsIDIwMDUgMDY6NTM6MjAg
LTAwMDAJMS4xCisrKyBrY2FudmFzL2RldmljZS9xdWFydHovS0NhbnZhc1Jlc291cmNlc1F1YXJ0
ei5tbQkxNCBBdWcgMjAwNSAyMjoxOTowNCAtMDAwMApAQCAtODAsNyArODAsNyBAQCB2b2lkIEtD
YW52YXNDb250YWluZXJRdWFydHo6OmRyYXcoY29uc3QgCiAJYXBwbHlDbGlwUGF0aHNGb3JTdHls
ZShjb250ZXh0LCBjYW52YXMoKS0+cmVnaXN0cnkoKSwgc3R5bGUoKSwgYmJveCgpKTsgLy8gYXBw
bHkgYW55IGV4cGxpY2l0IGNsaXBzCiAJCiAJLy8gaGFuZGxlIG9wYWNpdHkuCi0JZmxvYXQgb3Bh
Y2l0eSA9IChzdHlsZSgpLT5vcGFjaXR5KCkgLyAyNTUuMGYpOworCWZsb2F0IG9wYWNpdHkgPSBz
dHlsZSgpLT5vcGFjaXR5KCk7CiAJaWYgKG9wYWNpdHkgPCAxLjBmKSB7CiAJCUNHQ29udGV4dFNl
dEFscGhhKGNvbnRleHQsIG9wYWNpdHkpOwogCQlDR0NvbnRleHRCZWdpblRyYW5zcGFyZW5jeUxh
eWVyKGNvbnRleHQsTlVMTCk7CkluZGV4OiBrY2FudmFzL2RldmljZS9xdWFydHovUXVhcnR6U3Vw
cG9ydC5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rY2FudmFz
L2RldmljZS9xdWFydHovUXVhcnR6U3VwcG9ydC5tbSx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4x
CmRpZmYgLXAgLXUgLXIxLjEga2NhbnZhcy9kZXZpY2UvcXVhcnR6L1F1YXJ0elN1cHBvcnQubW0K
LS0tIGtjYW52YXMvZGV2aWNlL3F1YXJ0ei9RdWFydHpTdXBwb3J0Lm1tCTkgSnVsIDIwMDUgMDY6
NTM6MjEgLTAwMDAJMS4xCisrKyBrY2FudmFzL2RldmljZS9xdWFydHovUXVhcnR6U3VwcG9ydC5t
bQkxNCBBdWcgMjAwNSAyMjoxOTowNCAtMDAwMApAQCAtMTE1LDcgKzExNSw3IEBAIHZvaWQgYXBw
bHlDbGlwUGF0aHNGb3JTdHlsZShDR0NvbnRleHRSZWYKIAogdm9pZCBhcHBseVN0eWxlVG9Db250
ZXh0KENHQ29udGV4dFJlZiBjb250ZXh0LCBLUmVuZGVyaW5nU3R5bGUgKnN0eWxlKQogewkKLQlD
R0NvbnRleHRTZXRBbHBoYShjb250ZXh0LCBzdHlsZS0+b3BhY2l0eSgpIC8gMjU1LjBmKTsKKwlD
R0NvbnRleHRTZXRBbHBoYShjb250ZXh0LCBzdHlsZS0+b3BhY2l0eSgpKTsKIH0KIAogdm9pZCBh
cHBseVN0cm9rZVN0eWxlVG9Db250ZXh0KENHQ29udGV4dFJlZiBjb250ZXh0LCBLUmVuZGVyaW5n
U3R5bGUgKnN0eWxlKQpJbmRleDoga3N2ZzIvY29yZS9LQ2FudmFzUmVuZGVyaW5nU3R5bGUuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBwb3J0L2tzdmcyL2NvcmUvS0Nh
bnZhc1JlbmRlcmluZ1N0eWxlLmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yCmRpZmYgLXAg
LXUgLXIxLjIga3N2ZzIvY29yZS9LQ2FudmFzUmVuZGVyaW5nU3R5bGUuY3BwCi0tLSBrc3ZnMi9j
b3JlL0tDYW52YXNSZW5kZXJpbmdTdHlsZS5jcHAJMTEgQXVnIDIwMDUgMTE6MzQ6MjkgLTAwMDAJ
MS4yCisrKyBrc3ZnMi9jb3JlL0tDYW52YXNSZW5kZXJpbmdTdHlsZS5jcHAJMTQgQXVnIDIwMDUg
MjI6MTk6MDYgLTAwMDAKQEAgLTI5MiwxMiArMjkyLDEyIEBAIHZvaWQgS0NhbnZhc1JlbmRlcmlu
Z1N0eWxlOjpzZXRJbWFnZVJlbmQKIH0KIAogLy8gT3ZlcmFsbCBvcGFjaXR5Ci1pbnQgS0NhbnZh
c1JlbmRlcmluZ1N0eWxlOjpvcGFjaXR5KCkgY29uc3QKK2Zsb2F0IEtDYW52YXNSZW5kZXJpbmdT
dHlsZTo6b3BhY2l0eSgpIGNvbnN0CiB7Ci0JcmV0dXJuIGludChtX3N0eWxlLT5vcGFjaXR5KCkg
KiAyNTUuKTsKKwlyZXR1cm4gbV9zdHlsZS0+b3BhY2l0eSgpOwogfQogCi12b2lkIEtDYW52YXNS
ZW5kZXJpbmdTdHlsZTo6c2V0T3BhY2l0eShpbnQpCit2b2lkIEtDYW52YXNSZW5kZXJpbmdTdHls
ZTo6c2V0T3BhY2l0eShmbG9hdCkKIHsKIAkvLyBuby1vcAogfQpJbmRleDoga3N2ZzIvY29yZS9L
Q2FudmFzUmVuZGVyaW5nU3R5bGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZH
U3VwcG9ydC9rc3ZnMi9jb3JlL0tDYW52YXNSZW5kZXJpbmdTdHlsZS5oLHYKcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjIKZGlmZiAtcCAtdSAtcjEuMiBrc3ZnMi9jb3JlL0tDYW52YXNSZW5kZXJpbmdT
dHlsZS5oCi0tLSBrc3ZnMi9jb3JlL0tDYW52YXNSZW5kZXJpbmdTdHlsZS5oCTExIEF1ZyAyMDA1
IDExOjM0OjI5IC0wMDAwCTEuMgorKysga3N2ZzIvY29yZS9LQ2FudmFzUmVuZGVyaW5nU3R5bGUu
aAkxNCBBdWcgMjAwNSAyMjoxOTowNiAtMDAwMApAQCAtNzMsOCArNzMsOCBAQCBuYW1lc3BhY2Ug
S1NWRwogCQl2aXJ0dWFsIHZvaWQgc2V0SW1hZ2VSZW5kZXJpbmcoS0NJbWFnZVJlbmRlcmluZyBp
cik7CiAKIAkJLy8gT3ZlcmFsbCBvcGFjaXR5Ci0JCXZpcnR1YWwgaW50IG9wYWNpdHkoKSBjb25z
dDsKLQkJdmlydHVhbCB2b2lkIHNldE9wYWNpdHkoaW50KTsKKwkJdmlydHVhbCBmbG9hdCBvcGFj
aXR5KCkgY29uc3Q7CisJCXZpcnR1YWwgdm9pZCBzZXRPcGFjaXR5KGZsb2F0KTsKIAogCQkvLyBD
bGlwcGluZwogCQl2aXJ0dWFsIFFTdHJpbmdMaXN0IGNsaXBQYXRocygpIGNvbnN0Owo=
</data>
<flag name="review"
          id="379"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>3408</attachid>
            <date>2005-08-15 11:45:36 -0700</date>
            <delta_ts>2005-08-15 13:09:19 -0700</delta_ts>
            <desc>forgot a few changes</desc>
            <filename>opacitypatch.diff</filename>
            <type>text/plain</type>
            <size>8976</size>
            <attacher name="Tobias Lidskog">tobiaslidskog</attacher>
            
              <data encoding="base64">SW5kZXg6IGtjYW52YXMvS0NhbnZhc0NvbnRhaW5lci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog
L2N2cy9yb290L1NWR1N1cHBvcnQva2NhbnZhcy9LQ2FudmFzQ29udGFpbmVyLmNwcCx2CnJldHJp
ZXZpbmcgcmV2aXNpb24gMS4zCmRpZmYgLXAgLXUgLXIxLjMga2NhbnZhcy9LQ2FudmFzQ29udGFp
bmVyLmNwcAotLS0ga2NhbnZhcy9LQ2FudmFzQ29udGFpbmVyLmNwcAkxMSBBdWcgMjAwNSAxMToz
MzoyOSAtMDAwMAkxLjMKKysrIGtjYW52YXMvS0NhbnZhc0NvbnRhaW5lci5jcHAJMTUgQXVnIDIw
MDUgMTg6MzQ6MDcgLTAwMDAKQEAgLTYxLDcgKzYxLDcgQEAgdm9pZCBLQ2FudmFzQ29udGFpbmVy
OjpzZXREcmF3Q29udGVudHMoYgogCiBib29sIEtDYW52YXNDb250YWluZXI6Om5lZWRzVGVtcG9y
YXJ5QnVmZmVyKCkgY29uc3QKIHsKLQlib29sIGNvbmRpdGlvbk9uZSA9IChzdHlsZSgpLT5vcGFj
aXR5KCkgPCAyNTUpOworCWJvb2wgY29uZGl0aW9uT25lID0gKHN0eWxlKCktPm9wYWNpdHkoKSA8
IDEuMGYpOwogCWJvb2wgY29uZGl0aW9uVHdvID0gKHN0eWxlKCktPmNsaXBQYXRocygpLmNvdW50
KCkgPiAwKTsKIAogCXJldHVybiBjb25kaXRpb25PbmUgfHwgY29uZGl0aW9uVHdvOwpJbmRleDog
a2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1BhaW50U2VydmVyU29saWQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
UkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBwb3J0L2tjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdQ
YWludFNlcnZlclNvbGlkLmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yCmRpZmYgLXAgLXUg
LXIxLjIga2NhbnZhcy9kZXZpY2UvS1JlbmRlcmluZ1BhaW50U2VydmVyU29saWQuY3BwCi0tLSBr
Y2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZC5jcHAJMTEgQXVnIDIwMDUg
MTE6MzM6MzQgLTAwMDAJMS4yCisrKyBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2
ZXJTb2xpZC5jcHAJMTUgQXVnIDIwMDUgMTg6MzQ6MDcgLTAwMDAKQEAgLTU1LDkgKzU1LDkgQEAg
S0NQYWludFNlcnZlclR5cGUgS1JlbmRlcmluZ1BhaW50U2VydmVyUwogCXJldHVybiBQU19TT0xJ
RDsKIH0KIAotZG91YmxlIEtSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkOjpvcGFjaXR5KCkgY29u
c3QKK2Zsb2F0IEtSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkOjpvcGFjaXR5KCkgY29uc3QKIHsK
LQlyZXR1cm4gZG91YmxlKHFBbHBoYShkLT5jb2xvci5yZ2IoKSkgLyAyNTUuKTsKKwlyZXR1cm4g
ZmxvYXQocUFscGhhKGQtPmNvbG9yLnJnYigpKSAvIDI1NS4pOwogfQogCiAvLyB2aW06dHM9NDpu
b2V0CkluZGV4OiBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBwb3J0L2tjYW52YXMvZGV2aWNlL0tS
ZW5kZXJpbmdQYWludFNlcnZlclNvbGlkLmgsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMgpkaWZm
IC1wIC11IC1yMS4yIGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkLmgK
LS0tIGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdQYWludFNlcnZlclNvbGlkLmgJMTEgQXVnIDIw
MDUgMTE6MzM6MzQgLTAwMDAJMS4yCisrKyBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nUGFpbnRT
ZXJ2ZXJTb2xpZC5oCTE1IEF1ZyAyMDA1IDE4OjM0OjA3IC0wMDAwCkBAIC00MCw3ICs0MCw3IEBA
IHB1YmxpYzoKIAl2b2lkIHNldENvbG9yKGNvbnN0IFFDb2xvciAmY29sb3IpOwogCiAJLy8gSGVs
cGVyIG1ldGhvZAotCWRvdWJsZSBvcGFjaXR5KCkgY29uc3Q7CisJZmxvYXQgb3BhY2l0eSgpIGNv
bnN0OwogCiBwcml2YXRlOgogCWNsYXNzIFByaXZhdGU7CkluZGV4OiBrY2FudmFzL2RldmljZS9L
UmVuZGVyaW5nU3R5bGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBw
b3J0L2tjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdTdHlsZS5jcHAsdgpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuMgpkaWZmIC1wIC11IC1yMS4yIGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdTdHlsZS5j
cHAKLS0tIGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdTdHlsZS5jcHAJMTEgQXVnIDIwMDUgMTE6
MzM6MzQgLTAwMDAJMS4yCisrKyBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuY3BwCTE1
IEF1ZyAyMDA1IDE4OjM0OjA4IC0wMDAwCkBAIC00NCw3ICs0NCw3IEBAIHB1YmxpYzoKIAkKIAkJ
aW1hZ2VSZW5kZXJpbmcgPSBJUl9PUFRJTUlaRV9RVUFMSVRZOwogCi0JCW9wYWNpdHkgPSAyNTU7
CisJCW9wYWNpdHkgPSAxLjBmOwogCX0KIAogCX5Qcml2YXRlKCkKQEAgLTc0LDcgKzc0LDcgQEAg
cHVibGljOgogCUtDYW52YXNNYXJrZXIgKm1pZE1hcmtlcjsKIAlLQ2FudmFzTWFya2VyICplbmRN
YXJrZXI7CiAKLQlpbnQgb3BhY2l0eTsKKwlmbG9hdCBvcGFjaXR5OwogfTsKIAogS1JlbmRlcmlu
Z1N0eWxlOjpLUmVuZGVyaW5nU3R5bGUoKSA6IGQobmV3IFByaXZhdGUoKSkKQEAgLTE3OCwxMiAr
MTc4LDEyIEBAIHZvaWQgS1JlbmRlcmluZ1N0eWxlOjpzZXRJbWFnZVJlbmRlcmluZygKIH0KIAog
Ly8gT3ZlcmFsbCBvcGFjaXR5Ci1pbnQgS1JlbmRlcmluZ1N0eWxlOjpvcGFjaXR5KCkgY29uc3QK
K2Zsb2F0IEtSZW5kZXJpbmdTdHlsZTo6b3BhY2l0eSgpIGNvbnN0CiB7CiAJcmV0dXJuIGQtPm9w
YWNpdHk7CiB9CiAKLXZvaWQgS1JlbmRlcmluZ1N0eWxlOjpzZXRPcGFjaXR5KGludCBvcGFjaXR5
KQordm9pZCBLUmVuZGVyaW5nU3R5bGU6OnNldE9wYWNpdHkoZmxvYXQgb3BhY2l0eSkKIHsKIAlk
LT5vcGFjaXR5ID0gb3BhY2l0eTsKIH0KSW5kZXg6IGtjYW52YXMvZGV2aWNlL0tSZW5kZXJpbmdT
dHlsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBwb3J0L2tjYW52YXMv
ZGV2aWNlL0tSZW5kZXJpbmdTdHlsZS5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIKZGlmZiAt
cCAtdSAtcjEuMiBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuaAotLS0ga2NhbnZhcy9k
ZXZpY2UvS1JlbmRlcmluZ1N0eWxlLmgJMTEgQXVnIDIwMDUgMTE6MzM6MzQgLTAwMDAJMS4yCisr
KyBrY2FudmFzL2RldmljZS9LUmVuZGVyaW5nU3R5bGUuaAkxNSBBdWcgMjAwNSAxODozNDowOCAt
MDAwMApAQCAtOTYsOCArOTYsOCBAQCBwdWJsaWM6CiAJdmlydHVhbCB2b2lkIHNldEltYWdlUmVu
ZGVyaW5nKEtDSW1hZ2VSZW5kZXJpbmcgaXIpOwogCiAJLy8gT3ZlcmFsbCBvcGFjaXR5Ci0Jdmly
dHVhbCBpbnQgb3BhY2l0eSgpIGNvbnN0OwotCXZpcnR1YWwgdm9pZCBzZXRPcGFjaXR5KGludCBv
cGFjaXR5KTsKKwl2aXJ0dWFsIGZsb2F0IG9wYWNpdHkoKSBjb25zdDsKKwl2aXJ0dWFsIHZvaWQg
c2V0T3BhY2l0eShmbG9hdCBvcGFjaXR5KTsKIAogCS8vIENsaXBwaW5nCiAJdmlydHVhbCBRU3Ry
aW5nTGlzdCBjbGlwUGF0aHMoKSBjb25zdDsKSW5kZXg6IGtjYW52YXMvZGV2aWNlL3F1YXJ0ei9L
Q2FudmFzUmVzb3VyY2VzUXVhcnR6Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9T
VkdTdXBwb3J0L2tjYW52YXMvZGV2aWNlL3F1YXJ0ei9LQ2FudmFzUmVzb3VyY2VzUXVhcnR6Lm1t
LHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBrY2FudmFzL2Rldmlj
ZS9xdWFydHovS0NhbnZhc1Jlc291cmNlc1F1YXJ0ei5tbQotLS0ga2NhbnZhcy9kZXZpY2UvcXVh
cnR6L0tDYW52YXNSZXNvdXJjZXNRdWFydHoubW0JOSBKdWwgMjAwNSAwNjo1MzoyMCAtMDAwMAkx
LjEKKysrIGtjYW52YXMvZGV2aWNlL3F1YXJ0ei9LQ2FudmFzUmVzb3VyY2VzUXVhcnR6Lm1tCTE1
IEF1ZyAyMDA1IDE4OjM0OjA5IC0wMDAwCkBAIC04MCw3ICs4MCw3IEBAIHZvaWQgS0NhbnZhc0Nv
bnRhaW5lclF1YXJ0ejo6ZHJhdyhjb25zdCAKIAlhcHBseUNsaXBQYXRoc0ZvclN0eWxlKGNvbnRl
eHQsIGNhbnZhcygpLT5yZWdpc3RyeSgpLCBzdHlsZSgpLCBiYm94KCkpOyAvLyBhcHBseSBhbnkg
ZXhwbGljaXQgY2xpcHMKIAkKIAkvLyBoYW5kbGUgb3BhY2l0eS4KLQlmbG9hdCBvcGFjaXR5ID0g
KHN0eWxlKCktPm9wYWNpdHkoKSAvIDI1NS4wZik7CisJZmxvYXQgb3BhY2l0eSA9IHN0eWxlKCkt
Pm9wYWNpdHkoKTsKIAlpZiAob3BhY2l0eSA8IDEuMGYpIHsKIAkJQ0dDb250ZXh0U2V0QWxwaGEo
Y29udGV4dCwgb3BhY2l0eSk7CiAJCUNHQ29udGV4dEJlZ2luVHJhbnNwYXJlbmN5TGF5ZXIoY29u
dGV4dCxOVUxMKTsKSW5kZXg6IGtjYW52YXMvZGV2aWNlL3F1YXJ0ei9LUmVuZGVyaW5nUGFpbnRT
ZXJ2ZXJRdWFydHoubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1NWR1N1cHBvcnQv
a2NhbnZhcy9kZXZpY2UvcXVhcnR6L0tSZW5kZXJpbmdQYWludFNlcnZlclF1YXJ0ei5tbSx2CnJl
dHJpZXZpbmcgcmV2aXNpb24gMS4yCmRpZmYgLXAgLXUgLXIxLjIga2NhbnZhcy9kZXZpY2UvcXVh
cnR6L0tSZW5kZXJpbmdQYWludFNlcnZlclF1YXJ0ei5tbQotLS0ga2NhbnZhcy9kZXZpY2UvcXVh
cnR6L0tSZW5kZXJpbmdQYWludFNlcnZlclF1YXJ0ei5tbQkxMSBBdWcgMjAwNSAxODo1ODozNiAt
MDAwMAkxLjIKKysrIGtjYW52YXMvZGV2aWNlL3F1YXJ0ei9LUmVuZGVyaW5nUGFpbnRTZXJ2ZXJR
dWFydHoubW0JMTUgQXVnIDIwMDUgMTg6MzQ6MTAgLTAwMDAKQEAgLTUxLDcgKzUxLDcgQEAgdm9p
ZCBLUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZFF1YXJ0ejo6ZAogCWlmICggKHR5cGUgJiBBUFBM
WV9UT19GSUxMKSAmJiBzdHlsZS0+aXNGaWxsZWQoKSApIHsKIAkJLy9OU0xvZyhAIkZpbGxpbmcg
aW4gJXAgYmJveCglQCkgd2l0aCBjb2xvcjogJUAiLCBjb250ZXh0LCBOU1N0cmluZ0Zyb21SZWN0
KCooTlNSZWN0ICopJkNHQ29udGV4dEdldFBhdGhCb3VuZGluZ0JveChjb250ZXh0KSksIG5zQ29s
b3IoY29sb3IoKSkpOwogCQlDR0NvbG9yUmVmIGNvbG9yQ0cgPSBjZ0NvbG9yKGNvbG9yKCkpOwot
CQlDR0NvbG9yUmVmIHdpdGhBbHBoYSA9IENHQ29sb3JDcmVhdGVDb3B5V2l0aEFscGhhKGNvbG9y
Q0csIHN0eWxlLT5maWxsUGFpbnRlcigpLT5vcGFjaXR5KCkgKiBkb3VibGUoc3R5bGUtPm9wYWNp
dHkoKSAvIDI1NS4pICogb3BhY2l0eSgpKTsKKwkJQ0dDb2xvclJlZiB3aXRoQWxwaGEgPSBDR0Nv
bG9yQ3JlYXRlQ29weVdpdGhBbHBoYShjb2xvckNHLCBzdHlsZS0+ZmlsbFBhaW50ZXIoKS0+b3Bh
Y2l0eSgpICogc3R5bGUtPm9wYWNpdHkoKSAqIG9wYWNpdHkoKSk7CiAJCUNHQ29udGV4dFNldEZp
bGxDb2xvcldpdGhDb2xvcihjb250ZXh0LCB3aXRoQWxwaGEpOwogCQlDR0NvbG9yUmVsZWFzZShj
b2xvckNHKTsKIAkJQ0dDb2xvclJlbGVhc2Uod2l0aEFscGhhKTsKQEAgLTY1LDcgKzY1LDcgQEAg
dm9pZCBLUmVuZGVyaW5nUGFpbnRTZXJ2ZXJTb2xpZFF1YXJ0ejo6ZAogCWlmICggKHR5cGUgJiBB
UFBMWV9UT19TVFJPS0UpICYmIHN0eWxlLT5pc1N0cm9rZWQoKSApIHsKIAkJLy9OU0xvZyhAIlN0
cm9raW5nIGluICVwIGJib3goJUApIHdpdGggY29sb3I6ICVAIiwgY29udGV4dCwgTlNTdHJpbmdG
cm9tUmVjdCgqKE5TUmVjdCAqKSZDR0NvbnRleHRHZXRQYXRoQm91bmRpbmdCb3goY29udGV4dCkp
LCBuc0NvbG9yKGNvbG9yKCkpKTsKIAkJQ0dDb2xvclJlZiBjb2xvckNHID0gY2dDb2xvcihjb2xv
cigpKTsKLQkJQ0dDb2xvclJlZiB3aXRoQWxwaGEgPSBDR0NvbG9yQ3JlYXRlQ29weVdpdGhBbHBo
YShjb2xvckNHLCBzdHlsZS0+c3Ryb2tlUGFpbnRlcigpLT5vcGFjaXR5KCkgKiBkb3VibGUoc3R5
bGUtPm9wYWNpdHkoKSAvIDI1NS4pICogb3BhY2l0eSgpKTsJCQorCQlDR0NvbG9yUmVmIHdpdGhB
bHBoYSA9IENHQ29sb3JDcmVhdGVDb3B5V2l0aEFscGhhKGNvbG9yQ0csIHN0eWxlLT5zdHJva2VQ
YWludGVyKCktPm9wYWNpdHkoKSAqIHN0eWxlLT5vcGFjaXR5KCkgKiBvcGFjaXR5KCkpOwkJCiAJ
CUNHQ29udGV4dFNldFN0cm9rZUNvbG9yV2l0aENvbG9yKGNvbnRleHQsIHdpdGhBbHBoYSk7CiAJ
CUNHQ29sb3JSZWxlYXNlKGNvbG9yQ0cpOwogCQlDR0NvbG9yUmVsZWFzZSh3aXRoQWxwaGEpOwpA
QCAtMTAwLDcgKzEwMCw3IEBAIHZvaWQgS1JlbmRlcmluZ1BhaW50U2VydmVyUGF0dGVyblF1YXJ0
ejoKIAogCUNHU2l6ZSBjZWxsU2l6ZSA9IENHU2l6ZShjZWxsLT5zaXplKCkpOwogCQotCWZsb2F0
IGFscGhhID0gMTsgLy8gc3R5bGUtPm9wYWNpdHkoKSAvIDI1NS4wZjsgLy93aGljaD8KKwlmbG9h
dCBhbHBoYSA9IDE7IC8vIHN0eWxlLT5vcGFjaXR5KCk7IC8vd2hpY2g/CiAJCQogCS8vIFBhdHRl
cm5zIGRvbid0IHNlZW0gdG8gcmVzZXBlY3QgdGhlIENUTSB1bmxlc3Mgd2UgbWFrZSB0aGVtLi4u
CiAJQ0dBZmZpbmVUcmFuc2Zvcm0gY3RtID0gQ0dDb250ZXh0R2V0Q1RNKGNvbnRleHQpOwpJbmRl
eDoga2NhbnZhcy9kZXZpY2UvcXVhcnR6L1F1YXJ0elN1cHBvcnQubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1Mg
ZmlsZTogL2N2cy9yb290L1NWR1N1cHBvcnQva2NhbnZhcy9kZXZpY2UvcXVhcnR6L1F1YXJ0elN1
cHBvcnQubW0sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIGtjYW52
YXMvZGV2aWNlL3F1YXJ0ei9RdWFydHpTdXBwb3J0Lm1tCi0tLSBrY2FudmFzL2RldmljZS9xdWFy
dHovUXVhcnR6U3VwcG9ydC5tbQk5IEp1bCAyMDA1IDA2OjUzOjIxIC0wMDAwCTEuMQorKysga2Nh
bnZhcy9kZXZpY2UvcXVhcnR6L1F1YXJ0elN1cHBvcnQubW0JMTUgQXVnIDIwMDUgMTg6MzQ6MTAg
LTAwMDAKQEAgLTExNSw3ICsxMTUsNyBAQCB2b2lkIGFwcGx5Q2xpcFBhdGhzRm9yU3R5bGUoQ0dD
b250ZXh0UmVmCiAKIHZvaWQgYXBwbHlTdHlsZVRvQ29udGV4dChDR0NvbnRleHRSZWYgY29udGV4
dCwgS1JlbmRlcmluZ1N0eWxlICpzdHlsZSkKIHsJCi0JQ0dDb250ZXh0U2V0QWxwaGEoY29udGV4
dCwgc3R5bGUtPm9wYWNpdHkoKSAvIDI1NS4wZik7CisJQ0dDb250ZXh0U2V0QWxwaGEoY29udGV4
dCwgc3R5bGUtPm9wYWNpdHkoKSk7CiB9CiAKIHZvaWQgYXBwbHlTdHJva2VTdHlsZVRvQ29udGV4
dChDR0NvbnRleHRSZWYgY29udGV4dCwgS1JlbmRlcmluZ1N0eWxlICpzdHlsZSkKSW5kZXg6IGtz
dmcyL2NvcmUvS0NhbnZhc1JlbmRlcmluZ1N0eWxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv
Y3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rc3ZnMi9jb3JlL0tDYW52YXNSZW5kZXJpbmdTdHlsZS5jcHAs
dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMgpkaWZmIC1wIC11IC1yMS4yIGtzdmcyL2NvcmUvS0Nh
bnZhc1JlbmRlcmluZ1N0eWxlLmNwcAotLS0ga3N2ZzIvY29yZS9LQ2FudmFzUmVuZGVyaW5nU3R5
bGUuY3BwCTExIEF1ZyAyMDA1IDExOjM0OjI5IC0wMDAwCTEuMgorKysga3N2ZzIvY29yZS9LQ2Fu
dmFzUmVuZGVyaW5nU3R5bGUuY3BwCTE1IEF1ZyAyMDA1IDE4OjM0OjE1IC0wMDAwCkBAIC0yOTIs
MTIgKzI5MiwxMiBAQCB2b2lkIEtDYW52YXNSZW5kZXJpbmdTdHlsZTo6c2V0SW1hZ2VSZW5kCiB9
CiAKIC8vIE92ZXJhbGwgb3BhY2l0eQotaW50IEtDYW52YXNSZW5kZXJpbmdTdHlsZTo6b3BhY2l0
eSgpIGNvbnN0CitmbG9hdCBLQ2FudmFzUmVuZGVyaW5nU3R5bGU6Om9wYWNpdHkoKSBjb25zdAog
ewotCXJldHVybiBpbnQobV9zdHlsZS0+b3BhY2l0eSgpICogMjU1Lik7CisJcmV0dXJuIG1fc3R5
bGUtPm9wYWNpdHkoKTsKIH0KIAotdm9pZCBLQ2FudmFzUmVuZGVyaW5nU3R5bGU6OnNldE9wYWNp
dHkoaW50KQordm9pZCBLQ2FudmFzUmVuZGVyaW5nU3R5bGU6OnNldE9wYWNpdHkoZmxvYXQpCiB7
CiAJLy8gbm8tb3AKIH0KSW5kZXg6IGtzdmcyL2NvcmUvS0NhbnZhc1JlbmRlcmluZ1N0eWxlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1NWR1N1cHBvcnQva3N2ZzIvY29yZS9LQ2Fu
dmFzUmVuZGVyaW5nU3R5bGUuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yCmRpZmYgLXAgLXUg
LXIxLjIga3N2ZzIvY29yZS9LQ2FudmFzUmVuZGVyaW5nU3R5bGUuaAotLS0ga3N2ZzIvY29yZS9L
Q2FudmFzUmVuZGVyaW5nU3R5bGUuaAkxMSBBdWcgMjAwNSAxMTozNDoyOSAtMDAwMAkxLjIKKysr
IGtzdmcyL2NvcmUvS0NhbnZhc1JlbmRlcmluZ1N0eWxlLmgJMTUgQXVnIDIwMDUgMTg6MzQ6MTYg
LTAwMDAKQEAgLTczLDggKzczLDggQEAgbmFtZXNwYWNlIEtTVkcKIAkJdmlydHVhbCB2b2lkIHNl
dEltYWdlUmVuZGVyaW5nKEtDSW1hZ2VSZW5kZXJpbmcgaXIpOwogCiAJCS8vIE92ZXJhbGwgb3Bh
Y2l0eQotCQl2aXJ0dWFsIGludCBvcGFjaXR5KCkgY29uc3Q7Ci0JCXZpcnR1YWwgdm9pZCBzZXRP
cGFjaXR5KGludCk7CisJCXZpcnR1YWwgZmxvYXQgb3BhY2l0eSgpIGNvbnN0OworCQl2aXJ0dWFs
IHZvaWQgc2V0T3BhY2l0eShmbG9hdCk7CiAKIAkJLy8gQ2xpcHBpbmcKIAkJdmlydHVhbCBRU3Ry
aW5nTGlzdCBjbGlwUGF0aHMoKSBjb25zdDsK
</data>
<flag name="review"
          id="381"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>3412</attachid>
            <date>2005-08-15 15:03:02 -0700</date>
            <delta_ts>2005-08-15 23:36:44 -0700</delta_ts>
            <desc>update tests</desc>
            <filename>opacitytests.diff</filename>
            <type>text/plain</type>
            <size>11130</size>
            <attacher name="Tobias Lidskog">tobiaslidskog</attacher>
            
              <data encoding="base64">SW5kZXg6IGFuaW1hdGUtZWxlbS0yMi1iLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl
OiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9sYXlvdXQtdGVzdHMvVzNDLVNWRy0xLjEvYW5pbWF0ZS1l
bGVtLTIyLWItZXhwZWN0ZWQudHh0LHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAt
dSAtcjEuMSBhbmltYXRlLWVsZW0tMjItYi1leHBlY3RlZC50eHQKLS0tIGFuaW1hdGUtZWxlbS0y
Mi1iLWV4cGVjdGVkLnR4dAk3IEF1ZyAyMDA1IDIwOjIxOjEyIC0wMDAwCTEuMQorKysgYW5pbWF0
ZS1lbGVtLTIyLWItZXhwZWN0ZWQudHh0CTE1IEF1ZyAyMDA1IDIyOjAyOjAzIC0wMDAwCkBAIC00
LDUgKzQsNSBAQCBLQ2FudmFzQ29udGFpbmVyIGF0ICgwLDApIHNpemUgNDc5eDM1OQogICAgICAg
S0NhbnZhc0l0ZW0ge3JlY3R9IGF0ICgxOTksMTM0KSBzaXplIDUxeDUxIFtzdHJva2U9e3NlcnZl
cj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9Ik0y
MDAuMDAsMTM1LjAwTDI1MC4wMCwxMzUuMDBMMjUwLjAwLDE4NS4wMEwyMDAuMDAsMTg1LjAwIl0K
ICAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMTQxLDEwNikgc2l6ZSAxNjd4MTEyIFtzdHJv
a2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0g
W2RhdGE9Ik0xNDEuNjcsMTA2LjY3TDMwOC4zMywxMDYuNjdMMzA4LjMzLDIxOC4zM0wxNDEuNjcs
MjE4LjMzIl0KICAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMjQsNDkpIHNpemUgNDAxeDI0
MSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1F
TlRFRH1dIFtkYXRhPSJNMjUuMDAsNTAuMDBMNDI1LjAwLDUwLjAwTDQyNS4wMCwyOTAuMDBMMjUu
MDAsMjkwLjAwIl0KLSAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDE5OSwxMzQpIHNpemUgNTF4
NTEgW29wYWNpdHk9MTI3XSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtz
ZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJNMjAwLjAwLDEzNS4wMEwyNTAuMDAsMTM1LjAw
TDI1MC4wMCwxODUuMDBMMjAwLjAwLDE4NS4wMCJdCisgICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0
ICgxOTksMTM0KSBzaXplIDUxeDUxIFtvcGFjaXR5PTAuNTAwMDAwXSBbc3Ryb2tlPXtzZXJ2ZXI9
VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJNMjAw
LjAwLDEzNS4wMEwyNTAuMDAsMTM1LjAwTDI1MC4wMCwxODUuMDBMMjAwLjAwLDE4NS4wMCJdCiAg
IEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMCwwKSBzaXplIDQ3OXgzNTkgW3N0cm9rZT17c2VydmVy
PVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTEu
MDAsMS4wMEw0NzkuMDAsMS4wMEw0NzkuMDAsMzU5LjAwTDEuMDAsMzU5LjAwIl0KSW5kZXg6IGZp
bHRlcnMtYmxlbmQtMDEtYi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9y
b290L1NWR1N1cHBvcnQvbGF5b3V0LXRlc3RzL1czQy1TVkctMS4xL2ZpbHRlcnMtYmxlbmQtMDEt
Yi1leHBlY3RlZC50eHQsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4x
IGZpbHRlcnMtYmxlbmQtMDEtYi1leHBlY3RlZC50eHQKLS0tIGZpbHRlcnMtYmxlbmQtMDEtYi1l
eHBlY3RlZC50eHQJNyBBdWcgMjAwNSAyMDoyMToxNCAtMDAwMAkxLjEKKysrIGZpbHRlcnMtYmxl
bmQtMDEtYi1leHBlY3RlZC50eHQJMTUgQXVnIDIwMDUgMjI6MDI6MDMgLTAwMDAKQEAgLTEsMTMg
KzEsMTMgQEAKIEtDYW52YXNDb250YWluZXIgYXQgKDAsMCkgc2l6ZSAxNTh4MTE4CiAgIEtDYW52
YXNDb250YWluZXIgYXQgKDI5LDUpIHNpemUgMTIxeDk4IFtzdHJva2U9e3NlcnZlcj1VTklNUExF
TUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0KICAgICBLQ2FudmFzSXRlbSBh
dCAoNDAsNSkgc2l6ZSAxMDB4OTggW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9
Ik00MC4wMCw1LjAwTDE0MC4wMCw1LjAwTDE0MC4wMCwxMDMuMDBMNDAuMDAsMTAzLjAwIl0KLSAg
ICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDI5LDkpIHNpemUgMTIxeDExIFtvcGFjaXR5PTEyN10g
W3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5U
RUR9XSBbZmlsdGVyPVVOSU1QTEVNRU5URURdIFtkYXRhPSJNMzAuMDAsMTAuMDBMMTUwLjAwLDEw
LjAwTDE1MC4wMCwyMC4wMEwzMC4wMCwyMC4wMCJdCi0gICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0
ICgyOSwyMikgc2l6ZSAxMjF4MTEgW29wYWNpdHk9MTI3XSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBM
RU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWx0ZXI9VU5JTVBMRU1F
TlRFRF0gW2RhdGE9Ik0zMC4wMCwyMy4wMEwxNTAuMDAsMjMuMDBMMTUwLjAwLDMzLjAwTDMwLjAw
LDMzLjAwIl0KKyAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDI5LDkpIHNpemUgMTIxeDExIFtv
cGFjaXR5PTAuNTAwMDAwXSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtz
ZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWx0ZXI9VU5JTVBMRU1FTlRFRF0gW2RhdGE9Ik0zMC4w
MCwxMC4wMEwxNTAuMDAsMTAuMDBMMTUwLjAwLDIwLjAwTDMwLjAwLDIwLjAwIl0KKyAgICBLQ2Fu
dmFzSXRlbSB7cmVjdH0gYXQgKDI5LDIyKSBzaXplIDEyMXgxMSBbb3BhY2l0eT0wLjUwMDAwMF0g
W3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5U
RUR9XSBbZmlsdGVyPVVOSU1QTEVNRU5URURdIFtkYXRhPSJNMzAuMDAsMjMuMDBMMTUwLjAwLDIz
LjAwTDE1MC4wMCwzMy4wMEwzMC4wMCwzMy4wMCJdCiAgICAgS0NhbnZhc0NvbnRhaW5lciBhdCAo
MjksMzUpIHNpemUgMTIxeDI0IFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9
e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbHRlcj1VTklNUExFTUVOVEVEXQotICAgICAgS0Nh
bnZhc0l0ZW0ge3JlY3R9IGF0ICgyOSwzNSkgc2l6ZSAxMjF4MTEgW29wYWNpdHk9MTI3XSBbc3Ry
b2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1d
IFtkYXRhPSJNMzAuMDAsMzYuMDBMMTUwLjAwLDM2LjAwTDE1MC4wMCw0Ni4wMEwzMC4wMCw0Ni4w
MCJdCi0gICAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDI5LDQ4KSBzaXplIDEyMXgxMSBbb3Bh
Y2l0eT0xMjddIFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1V
TklNUExFTUVOVEVEfV0gW2RhdGE9Ik0zMC4wMCw0OS4wMEwxNTAuMDAsNDkuMDBMMTUwLjAwLDU5
LjAwTDMwLjAwLDU5LjAwIl0KLSAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDI5LDYxKSBzaXpl
IDEyMXgxMSBbb3BhY2l0eT0xMjddIFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2Zp
bGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbHRlcj1VTklNUExFTUVOVEVEXSBbZGF0YT0i
TTMwLjAwLDYyLjAwTDE1MC4wMCw2Mi4wMEwxNTAuMDAsNzIuMDBMMzAuMDAsNzIuMDAiXQotICAg
IEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMjksNzQpIHNpemUgMTIxeDExIFtvcGFjaXR5PTEyN10g
W3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5U
RUR9XSBbZmlsdGVyPVVOSU1QTEVNRU5URURdIFtkYXRhPSJNMzAuMDAsNzUuMDBMMTUwLjAwLDc1
LjAwTDE1MC4wMCw4NS4wMEwzMC4wMCw4NS4wMCJdCi0gICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0
ICgyOSw4Nykgc2l6ZSAxMjF4MTEgW29wYWNpdHk9MTI3XSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBM
RU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWx0ZXI9VU5JTVBMRU1F
TlRFRF0gW2RhdGE9Ik0zMC4wMCw4OC4wMEwxNTAuMDAsODguMDBMMTUwLjAwLDk4LjAwTDMwLjAw
LDk4LjAwIl0KKyAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMjksMzUpIHNpemUgMTIxeDEx
IFtvcGFjaXR5PTAuNTAwMDAwXSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxs
PXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJNMzAuMDAsMzYuMDBMMTUwLjAwLDM2LjAw
TDE1MC4wMCw0Ni4wMEwzMC4wMCw0Ni4wMCJdCisgICAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQg
KDI5LDQ4KSBzaXplIDEyMXgxMSBbb3BhY2l0eT0wLjUwMDAwMF0gW3N0cm9rZT17c2VydmVyPVVO
SU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTMwLjAw
LDQ5LjAwTDE1MC4wMCw0OS4wMEwxNTAuMDAsNTkuMDBMMzAuMDAsNTkuMDAiXQorICAgIEtDYW52
YXNJdGVtIHtyZWN0fSBhdCAoMjksNjEpIHNpemUgMTIxeDExIFtvcGFjaXR5PTAuNTAwMDAwXSBb
c3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRF
RH1dIFtmaWx0ZXI9VU5JTVBMRU1FTlRFRF0gW2RhdGE9Ik0zMC4wMCw2Mi4wMEwxNTAuMDAsNjIu
MDBMMTUwLjAwLDcyLjAwTDMwLjAwLDcyLjAwIl0KKyAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQg
KDI5LDc0KSBzaXplIDEyMXgxMSBbb3BhY2l0eT0wLjUwMDAwMF0gW3N0cm9rZT17c2VydmVyPVVO
SU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsdGVyPVVOSU1Q
TEVNRU5URURdIFtkYXRhPSJNMzAuMDAsNzUuMDBMMTUwLjAwLDc1LjAwTDE1MC4wMCw4NS4wMEwz
MC4wMCw4NS4wMCJdCisgICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0ICgyOSw4Nykgc2l6ZSAxMjF4
MTEgW29wYWNpdHk9MC41MDAwMDBdIFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2Zp
bGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbHRlcj1VTklNUExFTUVOVEVEXSBbZGF0YT0i
TTMwLjAwLDg4LjAwTDE1MC4wMCw4OC4wMEwxNTAuMDAsOTguMDBMMzAuMDAsOTguMDAiXQogICAg
IEtDYW52YXNDb250YWluZXIgYXQgKDAsMCkgc2l6ZSAweDAgW3N0cm9rZT17c2VydmVyPVVOSU1Q
TEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XQogICBLQ2FudmFzSXRlbSB7
cmVjdH0gYXQgKDAsMCkgc2l6ZSAxNTh4MTE4IFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVE
LCBzdHJva2Ugd2lkdGg9MC41MDAwMDB9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBb
ZGF0YT0iTTEuMDAsMS4wMEwxNTkuMDAsMS4wMEwxNTkuMDAsMTE5LjAwTDEuMDAsMTE5LjAwIl0K
SW5kZXg6IG1hc2tpbmctb3BhY2l0eS0wMS1iLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm
aWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9sYXlvdXQtdGVzdHMvVzNDLVNWRy0xLjEvbWFza2lu
Zy1vcGFjaXR5LTAxLWItZXhwZWN0ZWQudHh0LHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlm
ZiAtcCAtdSAtcjEuMSBtYXNraW5nLW9wYWNpdHktMDEtYi1leHBlY3RlZC50eHQKLS0tIG1hc2tp
bmctb3BhY2l0eS0wMS1iLWV4cGVjdGVkLnR4dAk3IEF1ZyAyMDA1IDIwOjIxOjE4IC0wMDAwCTEu
MQorKysgbWFza2luZy1vcGFjaXR5LTAxLWItZXhwZWN0ZWQudHh0CTE1IEF1ZyAyMDA1IDIyOjAy
OjA0IC0wMDAwCkBAIC00LDEzICs0LDEzIEBAIEtDYW52YXNDb250YWluZXIgYXQgKDAsMCkgc2l6
ZSA0Nzl4MzU5CiAgICAgS0NhbnZhc0NvbnRhaW5lciBhdCAoNTksNDkpIHNpemUgOTF4NTEgW3N0
cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9
XQogICAgICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0ICg1OSw0OSkgc2l6ZSA4MXg0MSBbc3Ryb2tl
PXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtk
YXRhPSJNNjAuMDAsNTAuMDBMMTQwLjAwLDUwLjAwTDE0MC4wMCw5MC4wMEw2MC4wMCw5MC4wMCJd
CiAgICAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDY5LDU5KSBzaXplIDgxeDQxIFtzdHJva2U9
e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2Rh
dGE9Ik03MC4wMCw2MC4wMEwxNTAuMDAsNjAuMDBMMTUwLjAwLDEwMC4wMEw3MC4wMCwxMDAuMDAi
XQotICAgIEtDYW52YXNDb250YWluZXIgYXQgKDU5LDEwOSkgc2l6ZSA5MXg1MSBbb3BhY2l0eT0x
MjddIFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExF
TUVOVEVEfV0KLSAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoNTksMTA5KSBzaXplIDgxeDQx
IFtvcGFjaXR5PTI1NV0gW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2Vy
dmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTYwLjAwLDExMC4wMEwxNDAuMDAsMTEwLjAwTDE0
MC4wMCwxNTAuMDBMNjAuMDAsMTUwLjAwIl0KLSAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAo
NjksMTE5KSBzaXplIDgxeDQxIFtvcGFjaXR5PTI1NV0gW3N0cm9rZT17c2VydmVyPVVOSU1QTEVN
RU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTcwLjAwLDEyMC4w
MEwxNTAuMDAsMTIwLjAwTDE1MC4wMCwxNjAuMDBMNzAuMDAsMTYwLjAwIl0KKyAgICBLQ2FudmFz
Q29udGFpbmVyIGF0ICg1OSwxMDkpIHNpemUgOTF4NTEgW29wYWNpdHk9MC41MDAwMDBdIFtzdHJv
a2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0K
KyAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoNTksMTA5KSBzaXplIDgxeDQxIFtvcGFjaXR5
PTEuMDAwMDAwXSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9
VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJNNjAuMDAsMTEwLjAwTDE0MC4wMCwxMTAuMDBMMTQwLjAw
LDE1MC4wMEw2MC4wMCwxNTAuMDAiXQorICAgICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0ICg2OSwx
MTkpIHNpemUgODF4NDEgW29wYWNpdHk9MS4wMDAwMDBdIFtzdHJva2U9e3NlcnZlcj1VTklNUExF
TUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9Ik03MC4wMCwxMjAu
MDBMMTUwLjAwLDEyMC4wMEwxNTAuMDAsMTYwLjAwTDcwLjAwLDE2MC4wMCJdCiAgICAgS0NhbnZh
c0NvbnRhaW5lciBhdCAoNTksMTY5KSBzaXplIDkxeDUxIFtzdHJva2U9e3NlcnZlcj1VTklNUExF
TUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0KLSAgICAgIEtDYW52YXNJdGVt
IHtyZWN0fSBhdCAoNTksMTY5KSBzaXplIDgxeDQxIFtvcGFjaXR5PTEyN10gW3N0cm9rZT17c2Vy
dmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0i
TTYwLjAwLDE3MC4wMEwxNDAuMDAsMTcwLjAwTDE0MC4wMCwyMTAuMDBMNjAuMDAsMjEwLjAwIl0K
LSAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoNjksMTc5KSBzaXplIDgxeDQxIFtvcGFjaXR5
PTEyN10gW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1Q
TEVNRU5URUR9XSBbZGF0YT0iTTcwLjAwLDE4MC4wMEwxNTAuMDAsMTgwLjAwTDE1MC4wMCwyMjAu
MDBMNzAuMDAsMjIwLjAwIl0KLSAgICBLQ2FudmFzQ29udGFpbmVyIGF0ICg1OSwyMjkpIHNpemUg
OTF4NTEgW29wYWNpdHk9MTI3XSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxs
PXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dCisgICAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDU5
LDE2OSkgc2l6ZSA4MXg0MSBbb3BhY2l0eT0wLjUwMDAwMF0gW3N0cm9rZT17c2VydmVyPVVOSU1Q
TEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTYwLjAwLDE3
MC4wMEwxNDAuMDAsMTcwLjAwTDE0MC4wMCwyMTAuMDBMNjAuMDAsMjEwLjAwIl0KKyAgICAgIEtD
YW52YXNJdGVtIHtyZWN0fSBhdCAoNjksMTc5KSBzaXplIDgxeDQxIFtvcGFjaXR5PTAuNTAwMDAw
XSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1F
TlRFRH1dIFtkYXRhPSJNNzAuMDAsMTgwLjAwTDE1MC4wMCwxODAuMDBMMTUwLjAwLDIyMC4wMEw3
MC4wMCwyMjAuMDAiXQorICAgIEtDYW52YXNDb250YWluZXIgYXQgKDU5LDIyOSkgc2l6ZSA5MXg1
MSBbb3BhY2l0eT0wLjUwMDAwMF0gW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmls
bD17c2VydmVyPVVOSU1QTEVNRU5URUR9XQogICAgICAgS0NhbnZhc0l0ZW0ge3JlY3R9IGF0ICg1
OSwyMjkpIHNpemUgODF4NDEgW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17
c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTYwLjAwLDIzMC4wMEwxNDAuMDAsMjMwLjAw
TDE0MC4wMCwyNzAuMDBMNjAuMDAsMjcwLjAwIl0KICAgICAgIEtDYW52YXNJdGVtIHtyZWN0fSBh
dCAoNjksMjM5KSBzaXplIDgxeDQxIFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2Zp
bGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9Ik03MC4wMCwyNDAuMDBMMTUwLjAwLDI0
MC4wMEwxNTAuMDAsMjgwLjAwTDcwLjAwLDI4MC4wMCJdCiAgIEtDYW52YXNJdGVtIHtyZWN0fSBh
dCAoMCwwKSBzaXplIDQ3OXgzNTkgW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmls
bD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTEuMDAsMS4wMEw0NzkuMDAsMS4wMEw0
NzkuMDAsMzU5LjAwTDEuMDAsMzU5LjAwIl0KSW5kZXg6IHJlbmRlci1ncm91cHMtMDEtYi1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1NWR1N1cHBvcnQvbGF5b3V0
LXRlc3RzL1czQy1TVkctMS4xL3JlbmRlci1ncm91cHMtMDEtYi1leHBlY3RlZC50eHQsdgpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIHJlbmRlci1ncm91cHMtMDEtYi1l
eHBlY3RlZC50eHQKLS0tIHJlbmRlci1ncm91cHMtMDEtYi1leHBlY3RlZC50eHQJNyBBdWcgMjAw
NSAyMDoyMToyMiAtMDAwMAkxLjEKKysrIHJlbmRlci1ncm91cHMtMDEtYi1leHBlY3RlZC50eHQJ
MTUgQXVnIDIwMDUgMjI6MDI6MDUgLTAwMDAKQEAgLTExLDcgKzExLDcgQEAgS0NhbnZhc0NvbnRh
aW5lciBhdCAoMCwwKSBzaXplIDQ3OXgzNTkKICAgICAgIEtDYW52YXNJdGVtIHtsaW5lfSBhdCAo
MzgyLDE4KSBzaXplIDI3eDI5NyBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRCwgc3Ryb2tl
IHdpZHRoPTE1LjAwMDAwMH1dIFtmaWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJN
MjIwLjAwLDEwLjAwTDIyMC4wMCwxNzUuMDAiXQogICAgICAgS0NhbnZhc0l0ZW0ge2xpbmV9IGF0
ICg0MzYsMTgpIHNpemUgMjd4Mjk3IFtzdHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVELCBzdHJv
a2Ugd2lkdGg9MTUuMDAwMDAwfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9
Ik0yNTAuMDAsMTAuMDBMMjUwLjAwLDE3NS4wMCJdCiAgICAgICBLQ2FudmFzSXRlbSB7cmVjdH0g
YXQgKDM1LDE3KSBzaXplIDQxNXgyODAgW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBb
ZmlsbD17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZGF0YT0iTTIwLjAwLDEwLjAwTDI1MC4wMCwx
MC4wMEwyNTAuMDAsMTY1LjAwTDIwLjAwLDE2NS4wMCJdCi0gICAgICBLQ2FudmFzQ29udGFpbmVy
IGF0ICgxMjUsOTgpIHNpemUgMzEweDE4MSBbb3BhY2l0eT0xMjddIFtzdHJva2U9e3NlcnZlcj1V
TklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0KLSAgICAgICAgS0Nh
bnZhc0l0ZW0ge3JlY3R9IGF0ICgxMjUsOTgpIHNpemUgMjM1eDEyNyBbb3BhY2l0eT0yNTVdIFtz
dHJva2U9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVE
fV0gW2RhdGE9Ik03MC4wMCw1NS4wMEwyMDAuMDAsNTUuMDBMMjAwLjAwLDEyNS4wMEw3MC4wMCwx
MjUuMDAiXQotICAgICAgICBLQ2FudmFzSXRlbSBhdCAoMjkxLDEzNSkgc2l6ZSAxNDR4MTQ0IFtv
cGFjaXR5PTI1NV0gW2ZpbGw9e3NlcnZlcj1VTklNUExFTUVOVEVEfV0gW2RhdGE9Ik0xNjIuMDAs
NzUuMDBMMjQyLjAwLDc1LjAwTDI0Mi4wMCwxNTUuMDBMMTYyLjAwLDE1NS4wMCJdCisgICAgICBL
Q2FudmFzQ29udGFpbmVyIGF0ICgxMjUsOTgpIHNpemUgMzEweDE4MSBbb3BhY2l0eT0wLjUwMDAw
MF0gW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVOSU1QTEVN
RU5URUR9XQorICAgICAgICBLQ2FudmFzSXRlbSB7cmVjdH0gYXQgKDEyNSw5OCkgc2l6ZSAyMzV4
MTI3IFtvcGFjaXR5PTEuMDAwMDAwXSBbc3Ryb2tlPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtm
aWxsPXtzZXJ2ZXI9VU5JTVBMRU1FTlRFRH1dIFtkYXRhPSJNNzAuMDAsNTUuMDBMMjAwLjAwLDU1
LjAwTDIwMC4wMCwxMjUuMDBMNzAuMDAsMTI1LjAwIl0KKyAgICAgICAgS0NhbnZhc0l0ZW0gYXQg
KDI5MSwxMzUpIHNpemUgMTQ0eDE0NCBbb3BhY2l0eT0xLjAwMDAwMF0gW2ZpbGw9e3NlcnZlcj1V
TklNUExFTUVOVEVEfV0gW2RhdGE9Ik0xNjIuMDAsNzUuMDBMMjQyLjAwLDc1LjAwTDI0Mi4wMCwx
NTUuMDBMMTYyLjAwLDE1NS4wMCJdCiAgIEtDYW52YXNJdGVtIHtyZWN0fSBhdCAoMCwwKSBzaXpl
IDQ3OXgzNTkgW3N0cm9rZT17c2VydmVyPVVOSU1QTEVNRU5URUR9XSBbZmlsbD17c2VydmVyPVVO
SU1QTEVNRU5URUR9XSBbZGF0YT0iTTEuMDAsMS4wMEw0NzkuMDAsMS4wMEw0NzkuMDAsMzU5LjAw
TDEuMDAsMzU5LjAwIl0K
</data>
<flag name="review"
          id="382"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>