<?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>47452</bug_id>
          
          <creation_ts>2010-10-09 06:12:46 -0700</creation_ts>
          <short_desc>[Gtk] style=&quot;font-family: courier&quot; makes text disappear</short_desc>
          <delta_ts>2010-12-10 01:54:39 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</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="Holger Freyther">zecke</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alex</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>292100</commentid>
    <comment_count>0</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 06:12:46 -0700</bug_when>
    <thetext>It appears that there is an error in finding a fallback font. If one is using the above CSS rule, no text is being displayed. Most likely we are not finding the right fallback font, or are not using it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292101</commentid>
    <comment_count>1</comment_count>
      <attachid>70351</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 06:13:45 -0700</bug_when>
    <thetext>Created attachment 70351
Illustrate the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292103</commentid>
    <comment_count>2</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 06:24:41 -0700</bug_when>
    <thetext>IIRC WebCore maps &apos;courier&apos; to &apos;courier new&apos;, and if I use a bogus font name it is displaying just fine. So it might be a problem with Red Hat&apos;s fontconfig configuaration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292104</commentid>
    <comment_count>3</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 06:27:43 -0700</bug_when>
    <thetext>Maybe also of interest is

$fc-match &apos;Courier&apos;
coue1255.fon: &quot;Courier&quot; &quot;Regular&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292109</commentid>
    <comment_count>4</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-09 08:15:03 -0700</bug_when>
    <thetext>Do you mind running with fc-match -v? Perhaps there is some property of the font which is causing the render to fail (e.g. not being scalable).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292122</commentid>
    <comment_count>5</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 08:37:58 -0700</bug_when>
    <thetext>Do you want to see the result with an -a as well? I can attach it to the bugreport.

$ fc-match -v &apos;courier&apos;
Pattern has 27 elts (size 32)
	family: &quot;Courier&quot;(s)
	style: &quot;Regular&quot;(s)
	slant: 0(i)(s)
	weight: 80(i)(s)
	width: 100(i)(s)
	size: 12(f)(s)
	pixelsize: 13(f)(s)
	spacing: 100(i)(s)
	foundry: &quot;unknown&quot;(s)
	antialias: FcFalse(s)
	hintstyle: 3(i)(s)
	hinting: FcTrue(s)
	verticallayout: FcFalse(s)
	autohint: FcFalse(s)
	globaladvance: FcTrue(s)
	file: &quot;/usr/share/fonts/wine-courier-fonts/coue1255.fon&quot;(s)
	index: 0(i)(s)
	outline: FcFalse(s)
	scalable: FcFalse(s)
	dpi: 75(f)(s)
	scale: 1(f)(s)
	charset: 
(s)
	lang: (s)
	fontversion: 0(i)(s)
	fontformat: &quot;Windows FNT&quot;(s)
	embeddedbitmap: FcTrue(s)
	decorative: FcFalse(s)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292123</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-09 08:41:38 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt;     scalable: FcFalse(s)

This appears to be the issue. We need to be more stringent in the types of fonts that accept from FontConfig, I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292126</commentid>
    <comment_count>7</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-09 08:54:20 -0700</bug_when>
    <thetext>I was moving the font away, just to have a .fon font that is not displayed either. I agree that we need to check if our display code can load the font. In theory freetype should be able to load the Windows Font. At least it is listed here: http://freetype.sourceforge.net/freetype2/index.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292254</commentid>
    <comment_count>8</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-09 21:38:24 -0700</bug_when>
    <thetext>I think you might be right about this. Do you mind attaching the font file and any pertitent configuration info in /etc/fonts to the bug? I&apos;ll try to have this fixed soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292363</commentid>
    <comment_count>9</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-10 12:49:04 -0700</bug_when>
    <thetext>It is less a issue with the font but more one with the config. In FontCacheFreeType.cpp we run into 


    if (strcasecmp(reinterpret_cast&lt;char*&gt;(familyNameAfterConfiguration),
            reinterpret_cast&lt;char*&gt;(familyNameAfterMatching)) &amp;&amp; !isFallbackFontAllowed(familyNameString)) 
        return 0;
    

this happens as we go from &apos;courier new&apos; to &apos;Liberation Mono&apos;. I am going to attach my /etc/fonts in a second, I am also trying to identify the rule responsible for that. I assume it is the following, but I will verify this.

        &lt;alias&gt;
                &lt;family&gt;Bitstream Vera Sans Mono&lt;/family&gt;
                &lt;family&gt;DejaVu Sans Mono&lt;/family&gt;
                &lt;family&gt;Liberation Mono&lt;/family&gt;
                &lt;family&gt;Inconsolata&lt;/family&gt;
                &lt;family&gt;Courier New&lt;/family&gt;
                &lt;family&gt;Courier&lt;/family&gt;
                &lt;family&gt;Andale Mono&lt;/family&gt;
                &lt;family&gt;Luxi Mono&lt;/family&gt;
                &lt;family&gt;Cumberland AMT&lt;/family&gt;
                &lt;family&gt;Cumberland&lt;/family&gt;
                &lt;family&gt;Nimbus Mono L&lt;/family&gt;
                &lt;default&gt;&lt;family&gt;monospace&lt;/family&gt;&lt;/default&gt;
        &lt;/alias&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292369</commentid>
    <comment_count>10</comment_count>
      <attachid>70411</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-10 13:07:30 -0700</bug_when>
    <thetext>Created attachment 70411
Attach config showing the issue.

It appears to be cause by a rule such as:


       &lt;alias binding=&quot;same&quot;&gt;
          &lt;family&gt;Courier New&lt;/family&gt;
          &lt;accept&gt;
          &lt;family&gt;Liberation Mono&lt;/family&gt;
          &lt;family&gt;Cumberland&lt;/family&gt;
          &lt;family&gt;Cumberland AMT&lt;/family&gt;
          &lt;/accept&gt;
        &lt;/alias&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292370</commentid>
    <comment_count>11</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-10 13:16:13 -0700</bug_when>
    <thetext>Okay this got introduced by bug #36548 which landed in r68406. The question is, why don&apos;t we fallback to anything else? How can we know that there is nothing else? I read the comment about CSS font matching rule.. but according to my fontconfig config, &apos;Courier New&apos; is the same as &apos;Monospace&apos;.

Any idea how to resolve it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292380</commentid>
    <comment_count>12</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-10 14:27:58 -0700</bug_when>
    <thetext>I have poked it a bit more... but I still have no conclusion.

1.) it tries &apos;Courier New&apos; finds Liberation Mono... rejects it...
2.) FontCache.cpp takes the alternate path which will try &apos;Courier&apos; and this works.
     a FontPlatformData is created with the FcPattern. 

    PlatformRefPtr&lt;cairo_font_face_t&gt; fontFace = adoptPlatformRef(cairo_ft_font_face_create_for_pattern(m_pattern.get()));

    I have printed the cairo_font_face_status of fontFace and it is 0 (success).. I have also dumped the FcPattern..

Pattern has 24 elts (size 32)
	family: &quot;Courier&quot;(s)
	style: &quot;Regular&quot;(s)
	slant: 0(i)(s)
	weight: 80(i)(s)
	width: 100(i)(s)
	pixelsize: 13(f)(s)
	spacing: 100(i)(s)
	foundry: &quot;unknown&quot;(s)
	antialias: FcFalse(s)
	hintstyle: 3(i)(s)
	hinting: FcTrue(s)
	verticallayout: FcFalse(s)
	autohint: FcFalse(s)
	globaladvance: FcTrue(s)
	file: &quot;/usr/share/fonts/wine-courier-fonts/coue1255.fon&quot;(s)
	index: 0(i)(s)
	outline: FcFalse(s)
	scalable: FcFalse(s)
	charset: 
(s)
	lang: (s)
	fontversion: 0(i)(s)
	fontformat: &quot;Windows FNT&quot;(s)
	embeddedbitmap: FcTrue(s)
	decorative: FcFalse(s)

so I wonder why something in webkit is rejecting and not attempting to draw the text.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292681</commentid>
    <comment_count>13</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-11 15:00:30 -0700</bug_when>
    <thetext>Maybe the issue here is the call to cairo_scaled_font_create. Perhaps for unscalable fonts, we should just use the original cairo_font_face_t as the target font.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>292954</commentid>
    <comment_count>14</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-12 08:00:09 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Maybe the issue here is the call to cairo_scaled_font_create. Perhaps for unscalable fonts, we should just use the original cairo_font_face_t as the target font.

it does not return an error... status is 0. I will try to build a debug version during my train trip and then single step through the code... compiling/linking/make dependencies just take too long here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298378</commentid>
    <comment_count>15</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-23 06:12:21 -0700</bug_when>
    <thetext>I am working on a fontconfig/cairo code reduction now to isolate the issue. A debug build prints a nice runtime error.. somehow we do not get any glyphs from the font.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298398</commentid>
    <comment_count>16</comment_count>
      <attachid>71641</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-23 08:16:45 -0700</bug_when>
    <thetext>Created attachment 71641
App to illustrate the issue

The code is copy and pasted from the WebCore sources, it will call abort() on all error paths of the WebCore code. In case it aborts in the GlyphPage::fill function, it will also print the Pattern. The code aborts with &apos;courier&apos; but it does not abort with &apos;liberation sans&apos;.

The code lacks error checking on the created cairo fonts but this turned out to be okay. I assume there is an error with characterset conversion of the font... but this will be the next step...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298437</commentid>
    <comment_count>17</comment_count>
      <attachid>71649</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-23 11:12:48 -0700</bug_when>
    <thetext>Created attachment 71649
Attempt to simplify the issue

This will load the coue1255.fon (md5sum 3ae6da5157fe37d0aba30b817277662b) directly via FreeType2 and then uses FcFreeTypeCharIndex on the font face. We now need to look into the implementation to figure out the real meaning of a zero return of this function (the man page does not say).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298440</commentid>
    <comment_count>18</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-10-23 11:27:40 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; Created an attachment (id=71649) [details]
&gt; Attempt to simplify the issue
&gt; 
&gt; This will load the coue1255.fon (md5sum 3ae6da5157fe37d0aba30b817277662b) directly via FreeType2 and then uses FcFreeTypeCharIndex on the font face. We now need to look into the implementation to figure out the real meaning of a zero return of this function (the man page does not say).

I can use the freetype-demos (ftdump, ftview) on the font, calls to FT_Get_Char_Index also return sensible values... so we will need to dig into FontConfig to figure out what is going wrong... The FT_Face also has a charmap set...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306769</commentid>
    <comment_count>19</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-11-09 07:14:13 -0800</bug_when>
    <thetext>(In reply to comment #18)

&gt; I can use the freetype-demos (ftdump, ftview) on the font, calls to FT_Get_Char_Index also return sensible values... so we will need to dig into FontConfig to figure out what is going wrong... The FT_Face also has a charmap set...

My email to the fontconfig list got stuck but behdad was kind enough to respond to private emails. Right now it is not possible to query for certain encodings of the font. Behdad proposed that we will have to have proper font fallback then.

So two ways to go forward:

 a) Before loading the font, get the FT_Face and check if it is supported by FontConfig. We could try to get this method into fontconfig itself

b) Handle that we do not have any &apos;accessible&apos; glyphs and have a proper fallback, or have a fallback code to just try a different font.


For b) we will need to  change WebCore internals, for a) we have to face the penalty on selecting the font.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>307388</commentid>
    <comment_count>20</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-11-10 09:49:14 -0800</bug_when>
    <thetext>(In reply to comment #19)

&gt;  a) Before loading the font, get the FT_Face and check if it is supported by FontConfig. We could try to get this method into fontconfig itself

If I understand correctly, Fontconfig should already deliver a list of fallback fonts. We could examine if that gives reasonable alternatives. I don&apos;t think the performance hit would be too bad there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>307401</commentid>
    <comment_count>21</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-11-10 10:10:10 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (In reply to comment #19)
&gt; 
&gt; &gt;  a) Before loading the font, get the FT_Face and check if it is supported by FontConfig. We could try to get this method into fontconfig itself
&gt; 
&gt; If I understand correctly, Fontconfig should already deliver a list of fallback fonts. We could examine if that gives reasonable alternatives. I don&apos;t think the performance hit would be too bad there.

True, and we don&apos;t have perf checks in place and wouldn&apos;t notice. I will try to find some time over the weekend, but if you have a pressing need then please don&apos;t stop yourself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>307404</commentid>
    <comment_count>22</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-11-10 10:15:39 -0800</bug_when>
    <thetext>(In reply to comment #21)

&gt; True, and we don&apos;t have perf checks in place and wouldn&apos;t notice. I will try to find some time over the weekend, but if you have a pressing need then please don&apos;t stop yourself.

I entirely agree that the lack of a performance testing for WebKitGTK+ is seriously bad / uncomfortable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319792</commentid>
    <comment_count>23</comment_count>
      <attachid>76136</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-12-09 16:53:32 -0800</bug_when>
    <thetext>Created attachment 76136
Patch for this issue</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319795</commentid>
    <comment_count>24</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-12-09 16:59:29 -0800</bug_when>
    <thetext>After Xan had this issue too and I thought about it a bit, I decided to write a patch to simply never select fonts that do not have one of the three valid Fontconfig encodings. On Ubuntu these fonts never seem to be selected, because they are bitmap fonts and Ubuntu doesn&apos;t select bitmap fonts by default.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319797</commentid>
    <comment_count>25</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-12-09 17:02:40 -0800</bug_when>
    <thetext>Looks very reasonable. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319803</commentid>
    <comment_count>26</comment_count>
      <attachid>76136</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-12-09 17:12:25 -0800</bug_when>
    <thetext>Comment on attachment 76136
Patch for this issue

Looks great to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319814</commentid>
    <comment_count>27</comment_count>
      <attachid>76136</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-12-09 17:21:45 -0800</bug_when>
    <thetext>Comment on attachment 76136
Patch for this issue

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

&gt; WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:198
&gt; +    if (!platformData-&gt;hasCompatibleCharmap()) {

I wonder if we could do this with a static method but I assume it will be difficult as we would have to go from FcPattern to FT_Face without cairo&apos;s help... or replicate a lot what the FontPlatformData is doing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319974</commentid>
    <comment_count>28</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-12-09 23:57:41 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; I wonder if we could do this with a static method but I assume it will be difficult as we would have to go from FcPattern to FT_Face without cairo&apos;s help... or replicate a lot what the FontPlatformData is doing.

Here it might be useful to replicate Cairo&apos;s logic for loading the FT_Face and then passing that to Cairo. Having the FT_Face before the cairo_scaled_font_t is also useful for vertical text rendering, I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320028</commentid>
    <comment_count>29</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-12-10 01:54:39 -0800</bug_when>
    <thetext>Committed r73695: &lt;http://trac.webkit.org/changeset/73695&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>70351</attachid>
            <date>2010-10-09 06:13:45 -0700</date>
            <delta_ts>2010-10-09 06:13:45 -0700</delta_ts>
            <desc>Illustrate the issue.</desc>
            <filename>index.html</filename>
            <type>text/html</type>
            <size>143</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgo8Ym9keT4KPHByZSBz
dHlsZT0iZm9udC1mYW1pbHk6IGNvdXJpZXI7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTsg
Ij5URVNUPC9wcmU+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>70411</attachid>
            <date>2010-10-10 13:07:30 -0700</date>
            <delta_ts>2010-10-10 13:07:30 -0700</delta_ts>
            <desc>Attach config showing the issue.</desc>
            <filename>30-metric-aliases.conf</filename>
            <type>text/plain</type>
            <size>3939</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIj8+CjwhRE9DVFlQRSBmb250Y29uZmlnIFNZU1RFTSAiZm9udHMu
ZHRkIj4KPGZvbnRjb25maWc+CgoJPCEtLSBBbGlhcyBzaW1pbGFyL21ldHJpYy1jb21wYXRpYmxl
IGZhbWlsaWVzIGZyb20gdmFyaW91cyBzb3VyY2VzOgoKCQlQb3N0U2NyaXB0IGZvbnRzOgoJCQlI
ZWx2ZXRpY2EKCQkJVGltZXMKCQkJQ291cmllcgoJCVVSVyBmb250czoKCQkJTmltYnVzIFNhbnMg
TAoJCQlOaW1idXMgUm9tYW4gTm85IEwKCQkJTmltYnVzIE1vbm8gTAoKCQlNaWNyb3NvZnQgZm9u
dHM6CgkJCUFyaWFsCgkJCVRpbWVzIE5ldyBSb21hbgoJCQlDb3VyaWVyIE5ldwoJCUxpYmVyYXRp
b24gZm9udHM6CgkJCUxpYmVyYXRpb24gU2FucwoJCQlMaWJlcmF0aW9uIFNlcmlmCgkJCUxpYmVy
YXRpb24gTW9ubwoJCVN0YXJPZmZpY2UgZm9udHM6CgkJCUFsYmFueQoJCQlUaG9ybmRhbGUKCQkJ
Q3VtYmVybGFuZAoJCUFNVCBmb250czoKCQkJQWxiYW55IEFNVAoJCQlUaG9ybmRhbGUgQU1UCgkJ
CUN1bWJlcmxhbmQgQU1UCgoJICAgICBPZiB0aGVzZSwgVVJXIGZvbnRzIGFyZSBkZXNpZ24gY29t
cGF0aWJsZSB3aXRoIFBvc3RTY3JpY3QgZm9udHMsCgkgICAgIGFuZCB0aGUgTGliZXJhdGlvbiwg
U3Rhck9mZmljZSwgYW5kIEFNVCBvbmVzIGFyZSBjb21wYXRpYmxlIHdpdGgKCSAgICAgTWljcm9z
b2Z0IGZvbnRzLgoKCSAgICAgV2Ugd2FudCBmb3IgZWFjaCBvZiB0aGVtIHRvIGZhbGxiYWNrIHRv
IGFueSBvZiB0aGVzZQoJICAgICBhdmFpbGFibGUsIGJ1dCBpbiBhbiBvcmRlciBwcmVmZXJyaW5n
IHNpbWlsYXIgZGVzaWducwoJICAgICBmaXJzdC4gIFdlIGRvIHRoaXMgaW4gdGhyZWUgc3RlcHM6
CgoJCTEpIEFsaWFzIGVhY2ggc3BlY2lmaWMgdG8gaXQncyBnZW5lcmljIGZhbWlseS4KCQkgICBl
Zy4gTGliZXJhdGlvbiBTYW5zIHRvIEFyaWFsCgoJCTIpIFdlYWsgYWxpYXMgZWFjaCBnZW5lcmlj
IHRvIHRoZSBvdGhlciBnZW5lcmljIG9mIGl0cyBmYW1pbHkuCgkJICAgZWcuIEFyaWFsIHRvIEhl
bHZldGljYQoKCQkzKSBBbGlhcyBlYWNoIGdlbmVyaWMgdG8gaXRzIHNwZWNpZmljcy4KCQkgICBl
Zy4gQXJpYWwgdG8gTGliZXJhdGlvbiBTYW5zLCBBbGJhbnksIGFuZCBBbGJhbnkgQU1UCgktLT4K
CjwhLS0gTWFwIHNwZWNpZmljcyB0byBnZW5lcmljcyAtLT4KCgk8IS0tIFBvc3RTY3JpcHQgLS0+
Cgk8YWxpYXMgYmluZGluZz0ic2FtZSI+CgkgIDxmYW1pbHk+TmltYnVzIFNhbnMgTDwvZmFtaWx5
PgoJICA8ZGVmYXVsdD4KCSAgPGZhbWlseT5IZWx2ZXRpY2E8L2ZhbWlseT4KCSAgPC9kZWZhdWx0
PgoJPC9hbGlhcz4KCgk8YWxpYXMgYmluZGluZz0ic2FtZSI+CgkgIDxmYW1pbHk+TmltYnVzIFJv
bWFuIE5vOSBMPC9mYW1pbHk+CgkgIDxkZWZhdWx0PgoJICA8ZmFtaWx5PlRpbWVzPC9mYW1pbHk+
CgkgIDwvZGVmYXVsdD4KCTwvYWxpYXM+CgoJPGFsaWFzIGJpbmRpbmc9InNhbWUiPgoJICA8ZmFt
aWx5Pk5pbWJ1cyBNb25vIEw8L2ZhbWlseT4KCSAgPGRlZmF1bHQ+CgkgIDxmYW1pbHk+Q291cmll
cjwvZmFtaWx5PgoJICA8L2RlZmF1bHQ+Cgk8L2FsaWFzPgoKCgk8IS0tIE1pY3Jvc29mdCAtLT4K
CTxhbGlhcyBiaW5kaW5nPSJzYW1lIj4KCSAgPGZhbWlseT5MaWJlcmF0aW9uIFNhbnM8L2ZhbWls
eT4KCSAgPGZhbWlseT5BbGJhbnk8L2ZhbWlseT4KCSAgPGZhbWlseT5BbGJhbnkgQU1UPC9mYW1p
bHk+CgkgIDxkZWZhdWx0PgoJICA8ZmFtaWx5PkFyaWFsPC9mYW1pbHk+CgkgIDwvZGVmYXVsdD4K
CTwvYWxpYXM+CgoJPGFsaWFzIGJpbmRpbmc9InNhbWUiPgoJICA8ZmFtaWx5PkxpYmVyYXRpb24g
U2VyaWY8L2ZhbWlseT4KCSAgPGZhbWlseT5UaG9ybmRhbGU8L2ZhbWlseT4KCSAgPGZhbWlseT5U
aG9ybmRhbGUgQU1UPC9mYW1pbHk+CgkgIDxkZWZhdWx0PgoJICA8ZmFtaWx5PlRpbWVzIE5ldyBS
b21hbjwvZmFtaWx5PgoJICA8L2RlZmF1bHQ+Cgk8L2FsaWFzPgoKCTxhbGlhcyBiaW5kaW5nPSJz
YW1lIj4KCSAgPGZhbWlseT5MaWJlcmF0aW9uIE1vbm88L2ZhbWlseT4KCSAgPGZhbWlseT5DdW1i
ZXJsYW5kPC9mYW1pbHk+CgkgIDxmYW1pbHk+Q3VtYmVybGFuZCBBTVQ8L2ZhbWlseT4KCSAgPGRl
ZmF1bHQ+CgkgIDxmYW1pbHk+Q291cmllciBOZXc8L2ZhbWlseT4KCSAgPC9kZWZhdWx0PgoJPC9h
bGlhcz4KCgoKPCEtLSBBY2NlcHQgdGhlIG90aGVyIGdyb3VwIGFzIGZhbGxiYWNrIC0tPgoKCgk8
IS0tIFBvc3RTY3JpcHQgLS0+Cgk8YWxpYXM+CgkgIDxmYW1pbHk+SGVsdmV0aWNhPC9mYW1pbHk+
CgkgIDxkZWZhdWx0PgoJICA8ZmFtaWx5PkFyaWFsPC9mYW1pbHk+CgkgIDwvZGVmYXVsdD4KCTwv
YWxpYXM+CgoJPGFsaWFzPgoJICA8ZmFtaWx5PlRpbWVzPC9mYW1pbHk+CgkgIDxkZWZhdWx0PgoJ
ICA8ZmFtaWx5PlRpbWVzIE5ldyBSb21hbjwvZmFtaWx5PgoJICA8L2RlZmF1bHQ+Cgk8L2FsaWFz
PgoKCTxhbGlhcz4KCSAgPGZhbWlseT5Db3VyaWVyPC9mYW1pbHk+CgkgIDxkZWZhdWx0PgoJICA8
ZmFtaWx5PkNvdXJpZXIgTmV3PC9mYW1pbHk+CgkgIDwvZGVmYXVsdD4KCTwvYWxpYXM+CgoKCTwh
LS0gTWljcm9zb2Z0IC0tPgoJPGFsaWFzPgoJICA8ZmFtaWx5PkFyaWFsPC9mYW1pbHk+CgkgIDxk
ZWZhdWx0PgoJICA8ZmFtaWx5PkhlbHZldGljYTwvZmFtaWx5PgoJICA8L2RlZmF1bHQ+Cgk8L2Fs
aWFzPgoKCTxhbGlhcz4KCSAgPGZhbWlseT5UaW1lcyBOZXcgUm9tYW48L2ZhbWlseT4KCSAgPGRl
ZmF1bHQ+CgkgIDxmYW1pbHk+VGltZXM8L2ZhbWlseT4KCSAgPC9kZWZhdWx0PgoJPC9hbGlhcz4K
Cgk8YWxpYXM+CgkgIDxmYW1pbHk+Q291cmllciBOZXc8L2ZhbWlseT4KCSAgPGRlZmF1bHQ+Cgkg
IDxmYW1pbHk+Q291cmllcjwvZmFtaWx5PgoJICA8L2RlZmF1bHQ+Cgk8L2FsaWFzPgoKCgo8IS0t
IE1hcCBnZW5lcmljcyB0byBzcGVjaWZpY3MgLS0+CgoKCTwhLS0gUG9zdFNjcmlwdCAtLT4KCTxh
bGlhcyBiaW5kaW5nPSJzYW1lIj4KCSAgPGZhbWlseT5IZWx2ZXRpY2E8L2ZhbWlseT4KCSAgPGFj
Y2VwdD4KCSAgPGZhbWlseT5OaW1idXMgU2FucyBMPC9mYW1pbHk+CgkgIDwvYWNjZXB0PgoJPC9h
bGlhcz4KCgk8YWxpYXMgYmluZGluZz0ic2FtZSI+CgkgIDxmYW1pbHk+VGltZXM8L2ZhbWlseT4K
CSAgPGFjY2VwdD4KCSAgPGZhbWlseT5OaW1idXMgUm9tYW4gTm85IEw8L2ZhbWlseT4KCSAgPC9h
Y2NlcHQ+Cgk8L2FsaWFzPgoKCTxhbGlhcyBiaW5kaW5nPSJzYW1lIj4KCSAgPGZhbWlseT5Db3Vy
aWVyPC9mYW1pbHk+CgkgIDxhY2NlcHQ+CgkgIDxmYW1pbHk+TmltYnVzIE1vbm8gTDwvZmFtaWx5
PgoJICA8L2FjY2VwdD4KCTwvYWxpYXM+CgoKCTwhLS0gTWljcm9zb2Z0IC0tPgoJPGFsaWFzIGJp
bmRpbmc9InNhbWUiPgoJICA8ZmFtaWx5PkFyaWFsPC9mYW1pbHk+CgkgIDxhY2NlcHQ+CgkgIDxm
YW1pbHk+TGliZXJhdGlvbiBTYW5zPC9mYW1pbHk+CgkgIDxmYW1pbHk+QWxiYW55PC9mYW1pbHk+
CgkgIDxmYW1pbHk+QWxiYW55IEFNVDwvZmFtaWx5PgoJICA8L2FjY2VwdD4KCTwvYWxpYXM+CgoJ
PGFsaWFzIGJpbmRpbmc9InNhbWUiPgoJICA8ZmFtaWx5PlRpbWVzIE5ldyBSb21hbjwvZmFtaWx5
PgoJICA8YWNjZXB0PgoJICA8ZmFtaWx5PkxpYmVyYXRpb24gU2VyaWY8L2ZhbWlseT4KCSAgPGZh
bWlseT5UaG9ybmRhbGU8L2ZhbWlseT4KCSAgPGZhbWlseT5UaG9ybmRhbGUgQU1UPC9mYW1pbHk+
CgkgIDwvYWNjZXB0PgoJPC9hbGlhcz4KCgk8YWxpYXMgYmluZGluZz0ic2FtZSI+CgkgIDxmYW1p
bHk+Q291cmllciBOZXc8L2ZhbWlseT4KCSAgPGFjY2VwdD4KCSAgPGZhbWlseT5MaWJlcmF0aW9u
IE1vbm88L2ZhbWlseT4KCSAgPGZhbWlseT5DdW1iZXJsYW5kPC9mYW1pbHk+CgkgIDxmYW1pbHk+
Q3VtYmVybGFuZCBBTVQ8L2ZhbWlseT4KCSAgPC9hY2NlcHQ+Cgk8L2FsaWFzPgoKCjwvZm9udGNv
bmZpZz4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>71641</attachid>
            <date>2010-10-23 08:16:45 -0700</date>
            <delta_ts>2010-10-23 08:16:45 -0700</delta_ts>
            <desc>App to illustrate the issue</desc>
            <filename>fc-test.c</filename>
            <type>text/plain</type>
            <size>6165</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">LyogV2ViQ29yZSBGYyBjb2RlLi4uIGZyb20gV2ViS2l0IHRvIHRlc3QgYW4gaXNzdWUgKi8KLyoK
ICogY29tcGlsZSB3aXRoOgogKiBjYyAtbyBmYy10ZXN0IGZjLXRlc3QuYyBgcGtnLWNvbmZpZyAt
LWNmbGFncyAtLWxpYnMgZm9udGNvbmZpZyBmcmVldHlwZTIgY2Fpcm8gIGNhaXJvLWZ0YAogKi8K
CiNpbmNsdWRlIDxmb250Y29uZmlnL2ZvbnRjb25maWcuaD4KI2luY2x1ZGUgPGZvbnRjb25maWcv
ZmNmcmVldHlwZS5oPgojaW5jbHVkZSA8Y2Fpcm8vY2Fpcm8uaD4KI2luY2x1ZGUgPGNhaXJvL2Nh
aXJvLWZ0Lmg+CgpGY1BhdHRlcm4qIGNyZWF0ZUZvbnRQbGF0Zm9ybURhdGEoY29uc3QgY2hhciAq
Zm9udCwKCQkJCWludCBpdGFsaWMsIGludCBib2xkKQp7CglGY1BhdHRlcm4gKnBhdHRlcm4gPSBG
Y1BhdHRlcm5DcmVhdGUoKTsKCWlmICghcGF0dGVybikKCQlhYm9ydCgpOwoKCWlmICghRmNQYXR0
ZXJuQWRkU3RyaW5nKHBhdHRlcm4sIEZDX0ZBTUlMWSwgZm9udCkpCgkJYWJvcnQoKTsKCWlmICgh
RmNQYXR0ZXJuQWRkSW50ZWdlcihwYXR0ZXJuLCBGQ19XRUlHSFQsIGJvbGQgPyBGQ19XRUlHSFRf
Qk9MRCA6IEZDX1dFSUdIVF9OT1JNQUwpKQoJCWFib3J0KCk7CglpZiAoIUZjUGF0dGVybkFkZElu
dGVnZXIocGF0dGVybiwgRkNfU0xBTlQsIGl0YWxpYyA/IEZDX1NMQU5UX0lUQUxJQyA6IEZDX1NM
QU5UX1JPTUFOKSkKCQlhYm9ydCgpOwoKCUZjQ29uZmlnU3Vic3RpdHV0ZSgwLCBwYXR0ZXJuLCBG
Y01hdGNoUGF0dGVybik7CglGY0RlZmF1bHRTdWJzdGl0dXRlKHBhdHRlcm4pOwoKCUZjQ2hhcjgg
KmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJDb25maWd1cmF0aW9uOwoJRmNQYXR0ZXJuR2V0U3Ry
aW5nKHBhdHRlcm4sIEZDX0ZBTUlMWSwgMCwgJmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJDb25m
aWd1cmF0aW9uKTsKCglGY1Jlc3VsdCBmb250Q29uZmlnUmVzdWx0OwoJRmNQYXR0ZXJuICpyZXN1
bHRQYXR0ZXJuID0gRmNGb250TWF0Y2goMCwgcGF0dGVybiwgJmZvbnRDb25maWdSZXN1bHQpOwoJ
aWYgKCFyZXN1bHRQYXR0ZXJuKQoJCWFib3J0KCk7CgoJRmNDaGFyOCAqZm9udENvbmZpZ0ZhbWls
eU5hbWVBZnRlck1hdGNoaW5nOwoJRmNQYXR0ZXJuR2V0U3RyaW5nKHJlc3VsdFBhdHRlcm4sIEZD
X0ZBTUlMWSwgMCwgJmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZyk7CgoJaWYgKHN0
cmNhc2VjbXAoZm9udENvbmZpZ0ZhbWlseU5hbWVBZnRlckNvbmZpZ3VyYXRpb24sCgkJICAgICAg
IGZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZykgPT0gMCkKCQlyZXR1cm4gcmVzdWx0
UGF0dGVybjsKCgkvKiBXZWJDb3JlIGNoZWNrcyBmYW1pbHkgbmFtZXMgaGVyZS4uLiB3ZWxsIG5v
dCBoZXJlICovCgkvKiBUaGUgb3JpZ2luYWwgRmNQYXR0ZXJuIGlzIGxlYWtlZCB0b28uLi4gKi8K
CWFib3J0KCk7Cn0gCgovKiBGb250UGxhdGZvcm1EYXRhICovCmNhaXJvX3N1YnBpeGVsX29yZGVy
X3QgY29udmVydEZvbnRDb25maWdTdWJwaXhlbE9yZGVyKGludCBmb250Q29uZmlnT3JkZXIpCnsK
ICAgIHN3aXRjaCAoZm9udENvbmZpZ09yZGVyKSB7CiAgICBjYXNlIEZDX1JHQkFfUkdCOgogICAg
ICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9SR0I7CiAgICBjYXNlIEZDX1JHQkFfQkdS
OgogICAgICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9CR1I7CiAgICBjYXNlIEZDX1JH
QkFfVlJHQjoKICAgICAgICByZXR1cm4gQ0FJUk9fU1VCUElYRUxfT1JERVJfVlJHQjsKICAgIGNh
c2UgRkNfUkdCQV9WQkdSOgogICAgICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9WQkdS
OwogICAgY2FzZSBGQ19SR0JBX05PTkU6CiAgICBjYXNlIEZDX1JHQkFfVU5LTk9XTjoKICAgICAg
ICByZXR1cm4gQ0FJUk9fU1VCUElYRUxfT1JERVJfREVGQVVMVDsKICAgIH0KICAgIHJldHVybiBD
QUlST19TVUJQSVhFTF9PUkRFUl9ERUZBVUxUOwp9CgpjYWlyb19oaW50X3N0eWxlX3QgY29udmVy
dEZvbnRDb25maWdIaW50U3R5bGUoaW50IGZvbnRDb25maWdTdHlsZSkKewogICAgc3dpdGNoIChm
b250Q29uZmlnU3R5bGUpIHsKICAgIGNhc2UgRkNfSElOVF9OT05FOgogICAgICAgIHJldHVybiBD
QUlST19ISU5UX1NUWUxFX05PTkU7CiAgICBjYXNlIEZDX0hJTlRfU0xJR0hUOgogICAgICAgIHJl
dHVybiBDQUlST19ISU5UX1NUWUxFX1NMSUdIVDsKICAgIGNhc2UgRkNfSElOVF9NRURJVU06CiAg
ICAgICAgcmV0dXJuIENBSVJPX0hJTlRfU1RZTEVfTUVESVVNOwogICAgY2FzZSBGQ19ISU5UX0ZV
TEw6CiAgICAgICAgcmV0dXJuIENBSVJPX0hJTlRfU1RZTEVfRlVMTDsKICAgIH0KICAgIHJldHVy
biBDQUlST19ISU5UX1NUWUxFX05PTkU7Cn0KCnZvaWQgc2V0T3B0aW9ucyhGY1BhdHRlcm4gKnBh
dHRlcm4sIGNhaXJvX2ZvbnRfb3B0aW9uc190ICpvcHRpb25zKQp7CiAgICBpbnQgYm9vbGVhblJl
c3VsdDsKICAgIGludCBpbnRlZ2VyUmVzdWx0OwoKICAgIGlmIChGY1BhdHRlcm5HZXRJbnRlZ2Vy
KHBhdHRlcm4sIEZDX1JHQkEsIDAsICZpbnRlZ2VyUmVzdWx0KSA9PSBGY1Jlc3VsdE1hdGNoKSB7
CiAgICAgICAgY2Fpcm9fZm9udF9vcHRpb25zX3NldF9zdWJwaXhlbF9vcmRlcihvcHRpb25zLCBj
b252ZXJ0Rm9udENvbmZpZ1N1YnBpeGVsT3JkZXIoaW50ZWdlclJlc3VsdCkpOwoKICAgICAgICAv
LyBCYXNlZCBvbiB0aGUgbG9naWMgaW4gY2Fpcm8tZnQtZm9udC5jIGluIHRoZSBjYWlybyBzb3Vy
Y2UsIGEgZm9udCB3aXRoCiAgICAgICAgLy8gYSBzdWJwaXhlbCBvcmRlciBpbXBsaWVzIHRoYXQg
aXMgdXNlcyBzdWJwaXhlbCBhbnRpYWxpYXNpbmcuCiAgICAgICAgaWYgKGludGVnZXJSZXN1bHQg
IT0gRkNfUkdCQV9OT05FKQogICAgICAgICAgICBjYWlyb19mb250X29wdGlvbnNfc2V0X2FudGlh
bGlhcyhvcHRpb25zLCBDQUlST19BTlRJQUxJQVNfU1VCUElYRUwpOwogICAgfQoKICAgIGlmIChG
Y1BhdHRlcm5HZXRCb29sKHBhdHRlcm4sIEZDX0FOVElBTElBUywgMCwgJmJvb2xlYW5SZXN1bHQp
ID09IEZjUmVzdWx0TWF0Y2gpIHsKICAgICAgICAvLyBPbmx5IG92ZXJyaWRlIHRoZSBhbnRpLWFs
aWFzaW5nIHNldHRpbmcgaWYgd2FzIHByZXZpb3VzbHkgdHVybmVkIG9mZi4gT3RoZXJ3aXNlCiAg
ICAgICAgLy8gd2UnbGwgb3ZlcnJpZGUgdGhlIHByZWZlcmVuY2Ugd2hpY2ggZGVjaWRlcyBiZXR3
ZWVuIGdyYXkgYW50aS1hbGlhc2luZyBhbmQKICAgICAgICAvLyBzdWJwaXhlbCBhbnRpLWFsaWFz
aW5nLgogICAgICAgIGlmICghYm9vbGVhblJlc3VsdCkKICAgICAgICAgICAgY2Fpcm9fZm9udF9v
cHRpb25zX3NldF9hbnRpYWxpYXMob3B0aW9ucywgQ0FJUk9fQU5USUFMSUFTX05PTkUpOwogICAg
ICAgIGVsc2UgaWYgKGNhaXJvX2ZvbnRfb3B0aW9uc19nZXRfYW50aWFsaWFzKG9wdGlvbnMpID09
IENBSVJPX0FOVElBTElBU19OT05FKQogICAgICAgICAgICBjYWlyb19mb250X29wdGlvbnNfc2V0
X2FudGlhbGlhcyhvcHRpb25zLCBDQUlST19BTlRJQUxJQVNfR1JBWSk7CiAgICB9CgogICAgaWYg
KEZjUGF0dGVybkdldEludGVnZXIocGF0dGVybiwgRkNfSElOVF9TVFlMRSwgMCwgJmludGVnZXJS
ZXN1bHQpID09IEZjUmVzdWx0TWF0Y2gpCiAgICAgICAgY2Fpcm9fZm9udF9vcHRpb25zX3NldF9o
aW50X3N0eWxlKG9wdGlvbnMsIGNvbnZlcnRGb250Q29uZmlnSGludFN0eWxlKGludGVnZXJSZXN1
bHQpKTsKICAgIGlmIChGY1BhdHRlcm5HZXRCb29sKHBhdHRlcm4sIEZDX0hJTlRJTkcsIDAsICZi
b29sZWFuUmVzdWx0KSA9PSBGY1Jlc3VsdE1hdGNoICYmICFib29sZWFuUmVzdWx0KQogICAgICAg
IGNhaXJvX2ZvbnRfb3B0aW9uc19zZXRfaGludF9zdHlsZShvcHRpb25zLCBDQUlST19ISU5UX1NU
WUxFX05PTkUpOwoKfQoKY2Fpcm9fc2NhbGVkX2ZvbnRfdCAqRm9udFBsYXRmb3JtRGF0YV9jcmVh
dGUoRmNQYXR0ZXJuICpwYXR0ZXJuLCBmbG9hdCBzaXplKQp7CglpbnQgaTsKCWNhaXJvX2ZvbnRf
ZmFjZV90ICpmb250RmFjZSA9IGNhaXJvX2Z0X2ZvbnRfZmFjZV9jcmVhdGVfZm9yX3BhdHRlcm4o
cGF0dGVybik7CgljYWlyb19mb250X29wdGlvbnNfdCAqb3B0aW9ucyA9IGNhaXJvX2ZvbnRfb3B0
aW9uc19jcmVhdGUoKTsKCgljYWlyb19tYXRyaXhfdCBjdG07CgljYWlyb19tYXRyaXhfaW5pdF9p
ZGVudGl0eSgmY3RtKTsKCWNhaXJvX21hdHJpeF90IGZvbnRNYXRyaXg7CglzZXRPcHRpb25zKHBh
dHRlcm4sIG9wdGlvbnMpOwoKICAgICAgICAvLyBGb250Q29uZmlnIG1heSByZXR1cm4gYSBsaXN0
IG9mIHRyYW5zZm9ybWF0aW9uIG1hdHJpY2VzIHdpdGggdGhlIHBhdHRlcm4sIGZvciBpbnN0YW5j
ZSwKICAgICAgICAvLyBmb3IgZm9udHMgdGhhdCBhcmUgb2JsaXF1ZS4gV2UgdXNlIHRoYXQgdG8g
aW5pdGlhbGl6ZSB0aGUgY2Fpcm8gZm9udCBtYXRyaXguCiAgICAgICAgRmNNYXRyaXggZm9udENv
bmZpZ01hdHJpeCwgKnRlbXBGb250Q29uZmlnTWF0cml4OwogICAgICAgIEZjTWF0cml4SW5pdCgm
Zm9udENvbmZpZ01hdHJpeCk7CgogICAgICAgIC8vIFRoZXNlIG1hdHJpY2VzIG1heSBiZSBzdGFj
a2VkIGluIHRoZSBwYXR0ZXJuLCBzbyBpdCdzIG91ciBqb2IgdG8gZ2V0IHRoZW0gYWxsIGFuZCBt
dWx0aXBseSB0aGVtLgogICAgICAgIGZvciAoaSA9IDA7IEZjUGF0dGVybkdldE1hdHJpeChwYXR0
ZXJuLCBGQ19NQVRSSVgsIGksICZ0ZW1wRm9udENvbmZpZ01hdHJpeCkgPT0gRmNSZXN1bHRNYXRj
aDsgaSsrKQogICAgICAgICAgICBGY01hdHJpeE11bHRpcGx5KCZmb250Q29uZmlnTWF0cml4LCAm
Zm9udENvbmZpZ01hdHJpeCwgdGVtcEZvbnRDb25maWdNYXRyaXgpOwogICAgICAgIGNhaXJvX21h
dHJpeF9pbml0KCZmb250TWF0cml4LCBmb250Q29uZmlnTWF0cml4Lnh4LCAtZm9udENvbmZpZ01h
dHJpeC55eCwKICAgICAgICAgICAgICAgICAgICAgICAgICAtZm9udENvbmZpZ01hdHJpeC54eSwg
Zm9udENvbmZpZ01hdHJpeC55eSwgMCwgMCk7CgogICAgICAgIC8vIFRoZSBtYXRyaXggZnJvbSBG
b250Q29uZmlnIGRvZXMgbm90IGluY2x1ZGUgdGhlIHNjYWxlLgogICAgICAgIGNhaXJvX21hdHJp
eF9zY2FsZSgmZm9udE1hdHJpeCwgc2l6ZSwgc2l6ZSk7CgoJLyogbGVha3MgdGhlIG9wdGlvbnMg
Ki8KCXJldHVybiBjYWlyb19zY2FsZWRfZm9udF9jcmVhdGUoZm9udEZhY2UsICZmb250TWF0cml4
LCAmY3RtLCBvcHRpb25zKTsKfQoKLyogR2x5cGhQYWdlOjpmaWxsICovCmludCAqZmlsbF9idWZm
ZXIoKQp7CglzdGF0aWMgaW50IGJ1ZmZlclsyNTZdOwoJaW50IGk7CgoJZm9yIChpID0gMDsgaSA8
IDI1NjsgKytpKQoJCWJ1ZmZlcltpXSA9IGk7Cglmb3IgKGkgPSAwOyBpIDwgMHgyMDsgKytpKQoJ
CWJ1ZmZlcltpXSA9IDgyMDM7Cglmb3IgKGkgPSAweDdGOyBpIDwgMHhBMDsgKytpKQoJCWJ1ZmZl
cltpXSA9IDgyMDM7CgoJLyogLi4gc29tZSBtb3JlIHN0dWZmIGJ1dCBub3QgaW1wb3J0YW50IGZv
ciB0aGUgdGVzdCBjYXNlICovCiAKCXJldHVybiBidWZmZXI7Cn0KCnZvaWQgY2hlY2tfR2x5cGhQ
YWdlX2ZpbGwoRmNQYXR0ZXJuICpwYXR0ZXJuLCBjYWlyb19zY2FsZWRfZm9udF90ICpmb250LCBp
bnQgKmJ1ZmZlcikKewoJdW5zaWduZWQgaSwgaGF2ZUdseXBoID0gMDsKCUZUX0ZhY2UgZmFjZSA9
IGNhaXJvX2Z0X3NjYWxlZF9mb250X2xvY2tfZmFjZShmb250KTsKCglmb3IgKGkgPSAwOyBpIDwg
MjU2OyArK2kpCgkJaWYgKEZjRnJlZVR5cGVDaGFySW5kZXgoZmFjZSwgYnVmZmVyW2ldKSkKCQkJ
aGF2ZUdseXBoID0gMTsKCglpZiAoIWhhdmVHbHlwaCkgewoJCWZwcmludGYoc3RkZXJyLCAiRmFp
bGVkLi4uIHRvIGZpbmQgYW55IGdseXBoc1xuIik7CgkJRmNQYXR0ZXJuUHJpbnQocGF0dGVybik7
CgkJYWJvcnQoKTsKCX0KCgljYWlyb19mdF9zY2FsZWRfZm9udF91bmxvY2tfZmFjZShmb250KTsK
fQoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQp7CglGY1BhdHRlcm4gKnBhdHRlcm4g
PSBjcmVhdGVGb250UGxhdGZvcm1EYXRhKCJjb3VyaWVyIiwgMCwgMCk7CgljYWlyb19zY2FsZWRf
Zm9udF90ICpmb250ID0gRm9udFBsYXRmb3JtRGF0YV9jcmVhdGUocGF0dGVybiwgMTIuMGYpOwoJ
Y2hlY2tfR2x5cGhQYWdlX2ZpbGwocGF0dGVybiwgZm9udCwgZmlsbF9idWZmZXIoKSk7CgoJcmV0
dXJuIDA7Cn0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>71649</attachid>
            <date>2010-10-23 11:12:48 -0700</date>
            <delta_ts>2010-10-23 11:12:48 -0700</delta_ts>
            <desc>Attempt to simplify the issue</desc>
            <filename>fc-test.c</filename>
            <type>text/plain</type>
            <size>6577</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">LyogV2ViQ29yZSBGYyBjb2RlLi4uIGZyb20gV2ViS2l0IHRvIHRlc3QgYW4gaXNzdWUgKi8KLyoK
ICogY29tcGlsZSB3aXRoOgogKiBjYyAtbyBmYy10ZXN0IGZjLXRlc3QuYyBgcGtnLWNvbmZpZyAt
LWNmbGFncyAtLWxpYnMgZm9udGNvbmZpZyBmcmVldHlwZTIgY2Fpcm8gIGNhaXJvLWZ0YAogKi8K
CiNpbmNsdWRlIDxmb250Y29uZmlnL2ZvbnRjb25maWcuaD4KI2luY2x1ZGUgPGZvbnRjb25maWcv
ZmNmcmVldHlwZS5oPgojaW5jbHVkZSA8Y2Fpcm8vY2Fpcm8uaD4KI2luY2x1ZGUgPGNhaXJvL2Nh
aXJvLWZ0Lmg+CgpGY1BhdHRlcm4qIGNyZWF0ZUZvbnRQbGF0Zm9ybURhdGEoY29uc3QgY2hhciAq
Zm9udCwKCQkJCWludCBpdGFsaWMsIGludCBib2xkKQp7CglGY1BhdHRlcm4gKnBhdHRlcm4gPSBG
Y1BhdHRlcm5DcmVhdGUoKTsKCWlmICghcGF0dGVybikKCQlhYm9ydCgpOwoKCWlmICghRmNQYXR0
ZXJuQWRkU3RyaW5nKHBhdHRlcm4sIEZDX0ZBTUlMWSwgZm9udCkpCgkJYWJvcnQoKTsKCWlmICgh
RmNQYXR0ZXJuQWRkSW50ZWdlcihwYXR0ZXJuLCBGQ19XRUlHSFQsIGJvbGQgPyBGQ19XRUlHSFRf
Qk9MRCA6IEZDX1dFSUdIVF9OT1JNQUwpKQoJCWFib3J0KCk7CglpZiAoIUZjUGF0dGVybkFkZElu
dGVnZXIocGF0dGVybiwgRkNfU0xBTlQsIGl0YWxpYyA/IEZDX1NMQU5UX0lUQUxJQyA6IEZDX1NM
QU5UX1JPTUFOKSkKCQlhYm9ydCgpOwoKCUZjQ29uZmlnU3Vic3RpdHV0ZSgwLCBwYXR0ZXJuLCBG
Y01hdGNoUGF0dGVybik7CglGY0RlZmF1bHRTdWJzdGl0dXRlKHBhdHRlcm4pOwoKCUZjQ2hhcjgg
KmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJDb25maWd1cmF0aW9uOwoJRmNQYXR0ZXJuR2V0U3Ry
aW5nKHBhdHRlcm4sIEZDX0ZBTUlMWSwgMCwgJmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJDb25m
aWd1cmF0aW9uKTsKCglGY1Jlc3VsdCBmb250Q29uZmlnUmVzdWx0OwoJRmNQYXR0ZXJuICpyZXN1
bHRQYXR0ZXJuID0gRmNGb250TWF0Y2goMCwgcGF0dGVybiwgJmZvbnRDb25maWdSZXN1bHQpOwoJ
aWYgKCFyZXN1bHRQYXR0ZXJuKQoJCWFib3J0KCk7CgoJRmNDaGFyOCAqZm9udENvbmZpZ0ZhbWls
eU5hbWVBZnRlck1hdGNoaW5nOwoJRmNQYXR0ZXJuR2V0U3RyaW5nKHJlc3VsdFBhdHRlcm4sIEZD
X0ZBTUlMWSwgMCwgJmZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZyk7CgoJaWYgKHN0
cmNhc2VjbXAoZm9udENvbmZpZ0ZhbWlseU5hbWVBZnRlckNvbmZpZ3VyYXRpb24sCgkJICAgICAg
IGZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZykgPT0gMCkKCQlyZXR1cm4gcmVzdWx0
UGF0dGVybjsKCgkvKiBXZWJDb3JlIGNoZWNrcyBmYW1pbHkgbmFtZXMgaGVyZS4uLiB3ZWxsIG5v
dCBoZXJlICovCgkvKiBUaGUgb3JpZ2luYWwgRmNQYXR0ZXJuIGlzIGxlYWtlZCB0b28uLi4gKi8K
CWFib3J0KCk7Cn0gCgovKiBGb250UGxhdGZvcm1EYXRhICovCmNhaXJvX3N1YnBpeGVsX29yZGVy
X3QgY29udmVydEZvbnRDb25maWdTdWJwaXhlbE9yZGVyKGludCBmb250Q29uZmlnT3JkZXIpCnsK
ICAgIHN3aXRjaCAoZm9udENvbmZpZ09yZGVyKSB7CiAgICBjYXNlIEZDX1JHQkFfUkdCOgogICAg
ICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9SR0I7CiAgICBjYXNlIEZDX1JHQkFfQkdS
OgogICAgICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9CR1I7CiAgICBjYXNlIEZDX1JH
QkFfVlJHQjoKICAgICAgICByZXR1cm4gQ0FJUk9fU1VCUElYRUxfT1JERVJfVlJHQjsKICAgIGNh
c2UgRkNfUkdCQV9WQkdSOgogICAgICAgIHJldHVybiBDQUlST19TVUJQSVhFTF9PUkRFUl9WQkdS
OwogICAgY2FzZSBGQ19SR0JBX05PTkU6CiAgICBjYXNlIEZDX1JHQkFfVU5LTk9XTjoKICAgICAg
ICByZXR1cm4gQ0FJUk9fU1VCUElYRUxfT1JERVJfREVGQVVMVDsKICAgIH0KICAgIHJldHVybiBD
QUlST19TVUJQSVhFTF9PUkRFUl9ERUZBVUxUOwp9CgpjYWlyb19oaW50X3N0eWxlX3QgY29udmVy
dEZvbnRDb25maWdIaW50U3R5bGUoaW50IGZvbnRDb25maWdTdHlsZSkKewogICAgc3dpdGNoIChm
b250Q29uZmlnU3R5bGUpIHsKICAgIGNhc2UgRkNfSElOVF9OT05FOgogICAgICAgIHJldHVybiBD
QUlST19ISU5UX1NUWUxFX05PTkU7CiAgICBjYXNlIEZDX0hJTlRfU0xJR0hUOgogICAgICAgIHJl
dHVybiBDQUlST19ISU5UX1NUWUxFX1NMSUdIVDsKICAgIGNhc2UgRkNfSElOVF9NRURJVU06CiAg
ICAgICAgcmV0dXJuIENBSVJPX0hJTlRfU1RZTEVfTUVESVVNOwogICAgY2FzZSBGQ19ISU5UX0ZV
TEw6CiAgICAgICAgcmV0dXJuIENBSVJPX0hJTlRfU1RZTEVfRlVMTDsKICAgIH0KICAgIHJldHVy
biBDQUlST19ISU5UX1NUWUxFX05PTkU7Cn0KCnZvaWQgc2V0T3B0aW9ucyhGY1BhdHRlcm4gKnBh
dHRlcm4sIGNhaXJvX2ZvbnRfb3B0aW9uc190ICpvcHRpb25zKQp7CiAgICBpbnQgYm9vbGVhblJl
c3VsdDsKICAgIGludCBpbnRlZ2VyUmVzdWx0OwoKICAgIGlmIChGY1BhdHRlcm5HZXRJbnRlZ2Vy
KHBhdHRlcm4sIEZDX1JHQkEsIDAsICZpbnRlZ2VyUmVzdWx0KSA9PSBGY1Jlc3VsdE1hdGNoKSB7
CiAgICAgICAgY2Fpcm9fZm9udF9vcHRpb25zX3NldF9zdWJwaXhlbF9vcmRlcihvcHRpb25zLCBj
b252ZXJ0Rm9udENvbmZpZ1N1YnBpeGVsT3JkZXIoaW50ZWdlclJlc3VsdCkpOwoKICAgICAgICAv
LyBCYXNlZCBvbiB0aGUgbG9naWMgaW4gY2Fpcm8tZnQtZm9udC5jIGluIHRoZSBjYWlybyBzb3Vy
Y2UsIGEgZm9udCB3aXRoCiAgICAgICAgLy8gYSBzdWJwaXhlbCBvcmRlciBpbXBsaWVzIHRoYXQg
aXMgdXNlcyBzdWJwaXhlbCBhbnRpYWxpYXNpbmcuCiAgICAgICAgaWYgKGludGVnZXJSZXN1bHQg
IT0gRkNfUkdCQV9OT05FKQogICAgICAgICAgICBjYWlyb19mb250X29wdGlvbnNfc2V0X2FudGlh
bGlhcyhvcHRpb25zLCBDQUlST19BTlRJQUxJQVNfU1VCUElYRUwpOwogICAgfQoKICAgIGlmIChG
Y1BhdHRlcm5HZXRCb29sKHBhdHRlcm4sIEZDX0FOVElBTElBUywgMCwgJmJvb2xlYW5SZXN1bHQp
ID09IEZjUmVzdWx0TWF0Y2gpIHsKICAgICAgICAvLyBPbmx5IG92ZXJyaWRlIHRoZSBhbnRpLWFs
aWFzaW5nIHNldHRpbmcgaWYgd2FzIHByZXZpb3VzbHkgdHVybmVkIG9mZi4gT3RoZXJ3aXNlCiAg
ICAgICAgLy8gd2UnbGwgb3ZlcnJpZGUgdGhlIHByZWZlcmVuY2Ugd2hpY2ggZGVjaWRlcyBiZXR3
ZWVuIGdyYXkgYW50aS1hbGlhc2luZyBhbmQKICAgICAgICAvLyBzdWJwaXhlbCBhbnRpLWFsaWFz
aW5nLgogICAgICAgIGlmICghYm9vbGVhblJlc3VsdCkKICAgICAgICAgICAgY2Fpcm9fZm9udF9v
cHRpb25zX3NldF9hbnRpYWxpYXMob3B0aW9ucywgQ0FJUk9fQU5USUFMSUFTX05PTkUpOwogICAg
ICAgIGVsc2UgaWYgKGNhaXJvX2ZvbnRfb3B0aW9uc19nZXRfYW50aWFsaWFzKG9wdGlvbnMpID09
IENBSVJPX0FOVElBTElBU19OT05FKQogICAgICAgICAgICBjYWlyb19mb250X29wdGlvbnNfc2V0
X2FudGlhbGlhcyhvcHRpb25zLCBDQUlST19BTlRJQUxJQVNfR1JBWSk7CiAgICB9CgogICAgaWYg
KEZjUGF0dGVybkdldEludGVnZXIocGF0dGVybiwgRkNfSElOVF9TVFlMRSwgMCwgJmludGVnZXJS
ZXN1bHQpID09IEZjUmVzdWx0TWF0Y2gpCiAgICAgICAgY2Fpcm9fZm9udF9vcHRpb25zX3NldF9o
aW50X3N0eWxlKG9wdGlvbnMsIGNvbnZlcnRGb250Q29uZmlnSGludFN0eWxlKGludGVnZXJSZXN1
bHQpKTsKICAgIGlmIChGY1BhdHRlcm5HZXRCb29sKHBhdHRlcm4sIEZDX0hJTlRJTkcsIDAsICZi
b29sZWFuUmVzdWx0KSA9PSBGY1Jlc3VsdE1hdGNoICYmICFib29sZWFuUmVzdWx0KQogICAgICAg
IGNhaXJvX2ZvbnRfb3B0aW9uc19zZXRfaGludF9zdHlsZShvcHRpb25zLCBDQUlST19ISU5UX1NU
WUxFX05PTkUpOwoKfQoKY2Fpcm9fc2NhbGVkX2ZvbnRfdCAqRm9udFBsYXRmb3JtRGF0YV9jcmVh
dGUoRmNQYXR0ZXJuICpwYXR0ZXJuLCBmbG9hdCBzaXplKQp7CglpbnQgaTsKCWNhaXJvX2ZvbnRf
ZmFjZV90ICpmb250RmFjZSA9IGNhaXJvX2Z0X2ZvbnRfZmFjZV9jcmVhdGVfZm9yX3BhdHRlcm4o
cGF0dGVybik7CgljYWlyb19mb250X29wdGlvbnNfdCAqb3B0aW9ucyA9IGNhaXJvX2ZvbnRfb3B0
aW9uc19jcmVhdGUoKTsKCgljYWlyb19tYXRyaXhfdCBjdG07CgljYWlyb19tYXRyaXhfaW5pdF9p
ZGVudGl0eSgmY3RtKTsKCWNhaXJvX21hdHJpeF90IGZvbnRNYXRyaXg7CglzZXRPcHRpb25zKHBh
dHRlcm4sIG9wdGlvbnMpOwoKICAgICAgICAvLyBGb250Q29uZmlnIG1heSByZXR1cm4gYSBsaXN0
IG9mIHRyYW5zZm9ybWF0aW9uIG1hdHJpY2VzIHdpdGggdGhlIHBhdHRlcm4sIGZvciBpbnN0YW5j
ZSwKICAgICAgICAvLyBmb3IgZm9udHMgdGhhdCBhcmUgb2JsaXF1ZS4gV2UgdXNlIHRoYXQgdG8g
aW5pdGlhbGl6ZSB0aGUgY2Fpcm8gZm9udCBtYXRyaXguCiAgICAgICAgRmNNYXRyaXggZm9udENv
bmZpZ01hdHJpeCwgKnRlbXBGb250Q29uZmlnTWF0cml4OwogICAgICAgIEZjTWF0cml4SW5pdCgm
Zm9udENvbmZpZ01hdHJpeCk7CgogICAgICAgIC8vIFRoZXNlIG1hdHJpY2VzIG1heSBiZSBzdGFj
a2VkIGluIHRoZSBwYXR0ZXJuLCBzbyBpdCdzIG91ciBqb2IgdG8gZ2V0IHRoZW0gYWxsIGFuZCBt
dWx0aXBseSB0aGVtLgogICAgICAgIGZvciAoaSA9IDA7IEZjUGF0dGVybkdldE1hdHJpeChwYXR0
ZXJuLCBGQ19NQVRSSVgsIGksICZ0ZW1wRm9udENvbmZpZ01hdHJpeCkgPT0gRmNSZXN1bHRNYXRj
aDsgaSsrKQogICAgICAgICAgICBGY01hdHJpeE11bHRpcGx5KCZmb250Q29uZmlnTWF0cml4LCAm
Zm9udENvbmZpZ01hdHJpeCwgdGVtcEZvbnRDb25maWdNYXRyaXgpOwogICAgICAgIGNhaXJvX21h
dHJpeF9pbml0KCZmb250TWF0cml4LCBmb250Q29uZmlnTWF0cml4Lnh4LCAtZm9udENvbmZpZ01h
dHJpeC55eCwKICAgICAgICAgICAgICAgICAgICAgICAgICAtZm9udENvbmZpZ01hdHJpeC54eSwg
Zm9udENvbmZpZ01hdHJpeC55eSwgMCwgMCk7CgogICAgICAgIC8vIFRoZSBtYXRyaXggZnJvbSBG
b250Q29uZmlnIGRvZXMgbm90IGluY2x1ZGUgdGhlIHNjYWxlLgogICAgICAgIGNhaXJvX21hdHJp
eF9zY2FsZSgmZm9udE1hdHJpeCwgc2l6ZSwgc2l6ZSk7CgoJLyogbGVha3MgdGhlIG9wdGlvbnMg
Ki8KCXJldHVybiBjYWlyb19zY2FsZWRfZm9udF9jcmVhdGUoZm9udEZhY2UsICZmb250TWF0cml4
LCAmY3RtLCBvcHRpb25zKTsKfQoKLyogR2x5cGhQYWdlOjpmaWxsICovCmludCAqZmlsbF9idWZm
ZXIoKQp7CglzdGF0aWMgaW50IGJ1ZmZlclsyNTZdOwoJaW50IGk7CgoJZm9yIChpID0gMDsgaSA8
IDI1NjsgKytpKQoJCWJ1ZmZlcltpXSA9IGk7Cglmb3IgKGkgPSAwOyBpIDwgMHgyMDsgKytpKQoJ
CWJ1ZmZlcltpXSA9IDgyMDM7Cglmb3IgKGkgPSAweDdGOyBpIDwgMHhBMDsgKytpKQoJCWJ1ZmZl
cltpXSA9IDgyMDM7CgoJLyogLi4gc29tZSBtb3JlIHN0dWZmIGJ1dCBub3QgaW1wb3J0YW50IGZv
ciB0aGUgdGVzdCBjYXNlICovCiAKCXJldHVybiBidWZmZXI7Cn0KCnZvaWQgY2hlY2tfR2x5cGhQ
YWdlX2ZpbGwoRmNQYXR0ZXJuICpwYXR0ZXJuLCBGVF9GYWNlIGZhY2UsIGludCAqYnVmZmVyKQp7
Cgl1bnNpZ25lZCBpLCBoYXZlR2x5cGggPSAwOwoKCWZvciAoaSA9IDA7IGkgPCAyNTY7ICsraSkK
CQlpZiAoRmNGcmVlVHlwZUNoYXJJbmRleChmYWNlLCBidWZmZXJbaV0pKQoJCQloYXZlR2x5cGgg
PSAxOwoKCWlmICghaGF2ZUdseXBoKSB7CgkJZnByaW50ZihzdGRlcnIsICJGYWlsZWQuLi4gdG8g
ZmluZCBhbnkgZ2x5cGhzXG4iKTsKCQlpZiAocGF0dGVybikKCQkJRmNQYXR0ZXJuUHJpbnQocGF0
dGVybik7CgkJYWJvcnQoKTsKCX0KCn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikK
ewojaWYgMQoJRlRfTGlicmFyeSAgbGlicmFyeTsgICAvKiBoYW5kbGUgdG8gbGlicmFyeSAgICAg
Ki8KCUZUX0ZhY2UgICAgIGZhY2U7ICAgICAgLyogaGFuZGxlIHRvIGZhY2Ugb2JqZWN0ICovCgoK
CWludCBlcnJvciA9IEZUX0luaXRfRnJlZVR5cGUoICZsaWJyYXJ5ICk7CglpZiAoZXJyb3IpIHsK
CQlmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byBsb2FkLi5cbiIpOwoJCWFib3J0KCk7Cgl9Cgog
IAllcnJvciA9IEZUX05ld19GYWNlKCBsaWJyYXJ5LCAiLi9jb3VlMTI1NS5mb24iLCAwLCAmZmFj
ZSk7CglpZiAoZXJyb3IpIHsKCQlmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byBsb2FkIGZvbnRc
biIpOwoJCWFib3J0KCk7Cgl9CgoJZnByaW50ZihzdGRlcnIsICJVc2luZyB0aGUgZm9udCBkaXJl
Y3RseVxuIik7CgljaGVja19HbHlwaFBhZ2VfZmlsbChOVUxMLCBmYWNlLCBmaWxsX2J1ZmZlcigp
KTsKCiNlbHNlCglGY1BhdHRlcm4gKnBhdHRlcm4gPSBjcmVhdGVGb250UGxhdGZvcm1EYXRhKCJj
b3VyaWVyIiwgMCwgMCk7CgljYWlyb19zY2FsZWRfZm9udF90ICpmb250ID0gRm9udFBsYXRmb3Jt
RGF0YV9jcmVhdGUocGF0dGVybiwgMTIuMGYpOwoJY2hlY2tfR2x5cGhQYWdlX2ZpbGwocGF0dGVy
biwgY2Fpcm9fZnRfc2NhbGVkX2ZvbnRfbG9ja19mYWNlKGZvbnQpLCBmaWxsX2J1ZmZlcigpKTsK
I2VuZGlmCgoKCXJldHVybiAwOwp9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76136</attachid>
            <date>2010-12-09 16:53:32 -0800</date>
            <delta_ts>2010-12-09 17:21:45 -0800</delta_ts>
            <desc>Patch for this issue</desc>
            <filename>bug-47452-20101210015328.patch</filename>
            <type>text/plain</type>
            <size>24500</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmQzMzk2MWY2ZDYwOGQxOGY1ODBkOWZlZTg3NjYyMGYzZjE5ZDQ4Li4zZjlhMzJi
YzYxZjczNzE4NDc2NTI2MjUzY2VkMDVmZTI3ODY5MGFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTkgQEAK
IDIwMTAtMTItMDkgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHdGtdIHN0eWxl
PSJmb250LWZhbWlseTogY291cmllciIgbWFrZXMgdGV4dCBkaXNhcHBlYXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3NDUyCisKKyAgICAgICAgQWRk
ZWQgYSBHVEsrIHRlc3QgZm9yIGludmFsaWQgZm9udHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvZm9udHMvZm9udC13aXRoLW5vLXZhbGlkLWVuY29kaW5nLWV4cGVjdGVkLmNoZWNrc3VtOiBB
ZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZm9udHMvZm9udC13aXRoLW5vLXZhbGlkLWVu
Y29kaW5nLWV4cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ZvbnRz
L2ZvbnQtd2l0aC1uby12YWxpZC1lbmNvZGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9mb250cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmcuaHRtbDog
QWRkZWQuCisKKzIwMTAtMTItMDkgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEu
Y29tPgorCiAgICAgICAgIFVwZGF0ZSBHVEsrIGJhc2VsaW5lcyBhZnRlciByNzM1NjEuCiAKICAg
ICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9jc3MvaW5wdXQtc2VhcmNoLXBhZGRpbmctZXhwZWN0
ZWQudHh0OgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL2ZvbnQt
d2l0aC1uby12YWxpZC1lbmNvZGluZy1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9mb250cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmctZXhwZWN0ZWQuY2hl
Y2tzdW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYjVjMDYwOThmMzhhYzU2MDE0ZTY3NTVmYzYwNjQwMmYxZjRjODUx
MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mb250cy9mb250
LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmctZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAor
ZjYyYTBkZWNiN2M5NzgyYjA5ZDQ0YzM3OGZhNDY2YjgKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZm9udHMvZm9udC13aXRo
LW5vLXZhbGlkLWVuY29kaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9mb250cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmctZXhwZWN0ZWQucG5nCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjc0NjZmYWU3MTg4ZGJkYTAzODI5MzVjMmQwNDdmM2M2NjI3NDBjZDEKR0lUIGJpbmFyeSBw
YXRjaApsaXRlcmFsIDEyMjU2CnpjbWVJMmN+bnpyKjZ3NTVSYVF3VU1MQj5WcHhBMDUxUFQkNVN4
Yj07MVdIaHVObFFkI2thPGpTQz0/bDA1UmcmOQp6RnZ0KVkxNHUjQDAjT2k8RitkPHUhVkNkcE5F
a3hNLU4pfGwtZF58S3pUZngjZVFVV2B0YzhKZCZpbjVEP0MxSHQKej1sLXdlI3locjRaJTNnfUpJ
Pz1kKSlJeDxkSHt2YGlfSkcqISVzNFRae0w3I1VwdCFgcEdBcH5lXjFHVSR0Y3RUCnopY0xjZ0ZO
SjJZJEhFQDtQaUMpanheTHtELXUmZzhKQ2Q9K3prQn1tViFsZX5rIXhGTSpBQl5PLU0kKjRiVGg4
dAp6Sz1kVz0zKitUMzw9Y05TOCorPkh2MyNgV3dEcGtOLXdzT2NpVGBVI1FCbHYmSjdQd3FUSTs/
c2UtTVVgYGdQZT8Kej5VdSVNXiRoQUVxVj9tO1U0YmhycCpjJHtiUnFva241QnMjK3x6Tmw2KD9X
I3spdSt4Q1ZVKEk9NmtwO25Kc0BvCnpwe15ZfGcra3IqYHMrNispUG5Abjc4SSZkO3M2U0RPN2t5
Jk1XTm9EYHx7enlBOEVJMXlAcjJ5NzBpeFo5RDdBUQp6eS1vSH5jYEpUcWdPZH4kemU3Znw8LTtG
JEAqYEZqdypAK0NQZndnR1E8QEhhZGA2cjR0Z0tfQyo0d15PJGZ4JkUKemFEdE4pNTYrQktxcXA3
bVlgZXZFPkwlQkZYS3hLNk0tWT9saVFnNjxtJUBFZHM9d3NoJFRfeiNSQj1jcmFPUWlRCnpmUkNR
OXEjeVRAcEhrfkNiRyFMMlRVV358ZTNvIzFOIUBHY1dsPnBLTFA+ZVVGJWA8e2MtX2FsR1NYeHc1
eml+Sgp6QSVfUUQkVCgzUFdHfnAjSjQ3K2hIUENtJHVUMih9bCpFPFVsZz9lZkpnYE1KPjlMYWEt
dDZRUlppOTNwWktmeGAKenFqR2Q+YWY7dU1KVXpHaGJqdGMlMzVVRmRRe0FpTEFlRWAqPiUoRCpT
NyVZREZffj5zMkdoS2lRKGYjd2hmU1R8CnpLMDBqMUZiSDNza3ZlKGZAM3lvanVXdj0tTHpeJlMz
fl9AUD9ERlorRGEkaDNzdzNDbXJBd0htc1Ulb0NnJUxfUwp6ZF4rbEk9fk8qWlVlb08kbnF4QG9n
TSgrQlMzaUFKXlhNPENUYnMobiZoYD5HI1RLfEBVRTAlR0dZb1FzdlIoQyQKemNnNXg5PyNZRl9e
fCp8TXZKJVFoLWx0ZlckWFBHQ3FgZGVAcH1AbFd2MUAyO0g4ZHhnekN3JG5XT0pRakdnZU8pCnpT
enowcW1De2hVZkJwcnJmXitRTlJAYD9mVDskPCR7TSF9UFZEWVhQUVhEZCp4JkhGJTgmTF9KIWRu
ZkR7eHNHfAp6MDk/NGB7ailReWQ1a0RMYUlSbWBmT0ZyWFdvPGZGLVpkOCY+QHszQEk0NUdVVWJC
cHA7ezc5T3Q4bjhKeko3MUAKenhwTTgzQDNEYWdfXmRtNiMwVSl5bHswdDB5STw5OUFoPW10Zz1Y
PXVOXndgPkAoajFrKHVrT05EWWQqJEw1MWVvCnpkRGNXSHp4Q05kPEZoVF85P2trKi1MKl5FLU5r
VjJ0JVduSyshNClxNlVMb3RaQSp9MHkobFU3Ozl4dUk8NVMpMAp6aCRVQ2JWbll+Vk07bjZYX3Yl
T1I8OCQ7UVlReXoxdGgkOEN3V1Y5TjNsYjhuP0kjVnMmaFM0bEJeMXNIazU4cGMKeipPZnEjRyZE
NUteYiRKb3F7JkE5MCREQ3swVl5NOy1tTz5sTmVLVEYlSSh5bUgqUStpS0ZoS2JZYGg8aGpGZ0pC
CnpEVkxXfDc1PUVqYGI+a1creFcxfSgyZFdCP1YhU0BTKzYhZ1MjbDxsRSF0RzApO2VaandKeE9w
YmExRF4+SWEofAp6a0lRPHpleWc0dVBnPnBUYy0kZjk/eGRsYGhXWVgjM05CKUtvfjg7PEx9RXJT
NlZqWXdlSXI+aVlIc2hKcm1NU30Kek1eMzVkLWZ3U2p1VW4hQiN5TTJeQnF3cnNZcX1iQ2QoKXd6
cTJzVkBQMFpzdUEmVSsrKUdZMFE/SU9jI1p5dWFuCnp0WWJOSSMjPH1nYHdDKVdSO2ZgTilMI0Bl
OG9IPSo1ejIjUV9MM1NKOGE7Jjt4I3t7NSFDOEA/LSZWTUVxJjhFMAp6PShUNyR7T1pTO3BAOE5m
X0szI1VKRVY3ODd6JnBTU1V2cVpCZ2UwRmNBaGBtNjQwJExuV1hwbW1xen1HPVM0P0gKelMhYFNV
e1gwOCNpaDVpSTxme2Z0T1hgSXNQKkR4Ynl7N3FqYz94cGpHdFg9KXVicUZNR00qTENiemUtaUBo
MWdeCnpSOEA/ZT1WMG1takVvR1ZONExwXjl5cTM/Z2wrIXFUZUhSUDA8K0I2I00hWUJyZmc3OWtj
NVFhYDJDfThaOyQzUwp6Y0MlJFB5PCZ7emFWSGNNSlVsJGNmN0BtNSN0Q35GQjlLSmU/V1U3X2xq
aTI7PlNwcmQjX0wjI047KEF6VktkTH0KemVPVW9lOWgrQ2QtdVdhZyZBVTdIJG4tZ1BDPFRBVjk+
YCEtcHtLcEQ4Rm0pTSprM1ZMXlhNU2tQRmI8bXNxKjRfCnotX1gmPW0xc3BtPSFhWHxvWXl7Ml9C
PWF0NCtfTHxHPXp5JDN0MWRKeCR5RWUtYDJPdyg7YDVuQGwhS3kpMkpxawp6N1QxLW5PWS1vRUVo
ezxQRWwlaCV1MyRZSVQzdjkmKnlra2VUO3tSPCpkYHh1RDRleFczO3B5Iz5aaVktRHomTGwKekt4
QWlUcHYzdytkNG9veWQwJnJzeVUmZT1BUS1TSD12Zn1NTCR6dE5WQlZ9RXRjK085RWlKfCY+Uylz
N0dabF9eCnpFMl91VjdVUjQtOTd4eVNEUEh0PWJ8XntqYyl+dlFmKnlMOHs+b19KQTc0cDZVJjFY
IyUtJUVIeFQtVChsLX47KQp6V0BWeCVvSyVmRTU0eiYwMTVXXnw/PitTTDtBTHk7IXF6eStMSior
Q2otWnxIb2YjU2VHI0Jwb2cxbTZYeE5udWkKej5mMmMzX1VTRylDUjB7aFJTTzstR0Ffe1k5REh1
P09WKkl9ZXsqb3dCNUtfI3h4PnFBQUZtN14zVGopJEZAank9Cno0dm5mdk5VOE5APTUpZERSKWFY
Q1NiRiRwaSZtbVVZMzkxQD5PZS09RyhpcDlfRlRRfDxSU2dkUmhEMzM5X3IlKAp6ZzsoWkZpMXxl
JVdRd3c8eF5yX3FKVXYoSEVkdTc8SSYzdHdqdyV3Q2lLMkRsWSF2KlJ6UG1lUWRXUn5vZUlQKjAK
emlPUHxOQCZaMmJTekI5NGRBVypOd3ZMQTVqWCVDfUE5IShqY0d4eDclcnooTWRJS284NyZtQ2R5
XnZyTElsZ1BRCnpPfiZeRU5YckY4S0JhWW96NEdhPSFnK0kjKzUldz5pdFJ+MHZ6ezElLUhXbV5H
cX56PHBHNkAmaGRMcHA3WTFBKAp6RU9ZVl5eRExWPl41Tjt6Q1c8JSNvb05uREg0Q01CZms7e1JT
V2duSUNJencqd0R2aykhSXMwd0h+fH5xVHY8LSQKems2ZHplYmdVIVN0OWNhLXJTRytPcz15WWQy
dERVa3kqamslPT4+eVU/TlRURGBAPkNidUxNd2t1Qmk5KVMoSzNyCnpBJFdCPktjQyF0NmNuJTtG
SS08OTRkXkRrN0J8JHhhV2sxLWZ3PSlyNXRiJmkjZjNSMDUpV2E/RnNxRV9YdDYlJQp6YjFfVUJI
PUcwT1VtY0VBWDgtaVApT1RNaFE/c3oyS2JebDdDeG5ycSlxQnhjX0hsdGxaalBtaWAqY15mYHsj
K2IKej9yJEMoSldPbUZsQiRecTZXIVYtX3YwR1IqdUdxPXdZTDZRIVFqQTwwVX4zRUY8SnE3aFZR
YnApbiZzYjl2KCYkCno+O0khNyY0I3lMbzlpISpDTl96TE9HXlA7JGRqcXwrY0NfRENHemFjKkU+
eUxnKUVzWDV+QE1OdEZoRj9CUSkpUgp6c2RwKXNDTURLSGJCVHZKYDFSUmxfUTFmdj57TzwmUHcq
MzdUMkRHdVNsP3tGbD82Skk0OE9FWWlWfjJGWHV+Jn0KelhsMz9rd0xXN0YtSVJpcS11eHRrMzxV
Km1kVG0oYCRCbThHKDdMak5nZUN+NUN0Jnh7OHpQV0tPRE1AcWhiIzdqCnptJVlBfEBpXiheTmg+
JG92dURyantpOFdRaj1JOVVFX1Fxcz85THZrTmhsWjVuVloyblF8VmFnRi1CXjxgKWpkYgp6PW1S
VSFycUJ2RCZxUj5gdmRYUzxMfkR5e2BpIVJRMVRVb0hoNFVDbXBDfT1aaExuYT9aez1MWDxZUXx+
Qk97fm0KeilzT2VZbjZLRWleekQtRW1UZlBlT3xAMDBPenpSV0pLYFQlSkRLSE9STHxTM1RSIUxj
d2tHZG1XcnB0RipvMl5wCnpkSjlFJWg/JDN2SnA7RWcpP2FLQGNwYCRvKDlHVS08aWFvMElUMWVq
Zl4xOE1YRXleP0tPVT5waXpiYWVAfk5McAp6SnJUTTNzYWZvIUtTcClyeEU3KGJXUWNwbGJVTUZg
Y0gzV0hVVXBgbGRVTU94P09Qc01uJFIjJnhQengrJWFHayYKejRpZ3owdTN2bWhHXztFI0ReQlk5
N1dEXiMzc09PMkQyK3o2JmFMYFF5c2dodUNOKmteLWNSTlM8RnlIamJtfUx+CnowJDRmRDs7U1hp
YVFmNUpjZ0FAJU9jSitDU0dCekhiOSohSyR7c0VaempHfSk3UGlCSlMlPTR1QTZFcGtNXl5nXwp6
NEYrRGdvSTg4ciQ/P05vaE4yQ2RoQ3VmJDlEa1VUb1YpUzJCTngodDRiMHZsMyZaRGRuSk52aChT
TzYtVCN3VGQKemBZfkc0eHYjKkNeRz8wSDE9YE5PWDRIQSE8RUBuRGImJXpVbWEoaVBMJl8mSUdE
cENAUVJTb2IpX0w8SkNpY2FQCno3dyFIVmp2JWpVJk1oJVJiJDswOHhkRWt8c0xlSC1zX1NOWT5v
ZlUmaD4/TEF6bCRrYzNeQTN5Y1E7a1ZRNXd3YQp6dkJ0dDwzVyloSSE7ZjFCYmM4UWRQISROZlU5
PGVvPCYjTCl6bXNga1NUSmVoYk94PCQmPUooTipXTXhrYH5GdWAKem50Yz45SjYxKm1FVUtgPXc1
QVFoYUp7T0woN1UqKEQ1aVFeekd5cFhpOXl6ZERqQXhhbCNsVzNIYTdWRHV2dnAtCnpvRm9eJGxx
THg4TnYoSUVaSUpIa1UyfmhTYz92XlFwPE5VaV8+P0cqd3ZEUCNeTylzc0I3TDhKK3tOVFB0OUp3
agp6ZzExamMhJW9BRVBkMWR1dSh0dlNGWiZNdENXMTJZZS00RHMyPiFpcWtfXl5vUj56amBsRSQo
QG0qVjlPNEg5KTEKej5rdFJoTHVIVEZ0MUl5TCZ0JlV7QipONjlpYnQpIW1lVFRaQ2BzRVY7Um1Z
UnMjdXV5MUwkSVdpbHdxYy1PRXB9CnpOUyRSPjRtPG50OHEqMHtqRns3UnpIVGllRzMtX3cqO0Al
XipnRUxwbT83QExaejk7alkhO2JSYkpuek54bWlwIwp6OXRMdXtaaXZzalR0bVluVypOS0IrfW9M
OFRYbnJQYzg/TjJZP3FnKkg8TjxQI2t0M2s3fng5Q2p2ZFFgbm8zfGUKekV2aE42ZTNte0k5R048
d2dgTigzcFVQXmkkMzdkZms8MWpOZE8taWklaiM8U0d6c31PQnA9NjhoeCs0dG0ySkxmCnpRSWt8
Vks2aHdMNj1uejlJUnkzP2BTbG57d3glZHJaSWBmSSM4I21MdGFoVGFsV0x2QntQcEF+ckFTa3xX
JTUmVgp6SXRZb1RfS0N2T29OMlY5d0tpc2MwIzktRyFPKU0+Q01tVV9NWThYNlo9Tl94Km5Re2c5
a0l3dz1aWkZfPnB0OFQKejgheVE4aU05OHNDayNgMHZ3Y1N1XzxFY1okfUB2MTBtUWUtTjJ4OU1j
ZD1sWlY9UW9VUiFFLTduXiNXVFQ4fVklCnpWaTwpLSUmfHx5RVYhfUk+RmtoXj5jKisrcHpsYGom
IT1tPj5EeE8tOGlHOH1vPXhgcy1PSnB4dHJgclotPl4kcwp6PiV3cVZldzFqX2sxODl8MHZtK3xP
fXo7RHFAYTVpXmtrayFPdXtCPTdZdWFWQUw4RW45XyRKantxY01sK0lVaTAKeiNDSUwhIz05bV5y
aForaVZDKn5tN140LXhkWDx2QT40T1dTcSY1d2ohPjs2YDdLIXFyUmNhNXhHXzZqd0RacWx9Cnp5
ViZ3PykkdW52bkh5I3dNSUFWPVN7SSpvIWVNVURweXdacUN+Ym9XLU55QjhXczBxQk1UQllwVnBl
WXx3ck5PSAp6dEdfcXNGfUtFaWFYTkV+VXhOLTFnNm52O0spYj5aP1oqR2JlfkctKFJfVzVBcGZM
WFEmZCU2Qj9yaFVxVkApSz0Kej5oOWduRTNOQUs1KkVFbFZ9cDR2Z1AzenhEejZxUVBwKkVyZ0ti
WXk8Z317ZEQ/U09RMjVuVyEjKXgtS2hQJjU7Cno3ZjFLaSlZTTJ3MnloZUYzWVZIfGpeNDdidWZE
IShseHUpPD8jVk5YVVA5WnZKaDBBWiVSc1RBLVNfY0dxe0NRZwp6Mn5NPFg8aVJWWUhXRWxFUDtx
USVuS29GZEFGQT1SUjxeSElIc0R0eilwK0ZjN3A8V2xTJEFjOCtfPSoleHNZTm0KeitTPXx6OTl5
UD93TFNHRXB+R3tRR3hUYyEpJUVPSipSYj12OyR7MHA/bz92NUd1RnstKGYkUUU0d1ooUEpTbSso
CnpId1hXPmh0PlFpLVZ+TFZkaHN6VEZxPmwpUzlwMjxzfHdxQmteTmN6NHUrc29jMCVMMSpvMkZ3
LUlKK31ue0k0Zwp6ZnlRKjA+RVB1cW4kOUYxfEQjS284UWFyLXMkckNOV2xvWFRzYkhGX2VCUD9p
LTBicUAlZDxuK0JyfVh+JmJuYEkKenBoUyRNM1hqYyQwRmZPdVh6TENrYWtmPHdiMEskZ3h6TEtf
R3VFM08hZyNWNVpJXk5gTEhhUlZ3MEMqN3VUUWttCnpFcWFiaygkfmFJRHErckopX2M9PkxDWDJJ
UFBwVkZXK3ZvXzc0dE53YUNmXjNYUVREQz94PnM+Ql8ofVMhJWZaIQp6dSV7Oz12c1F5b3M9bzJE
YEFGTEVqZVRabz4kSWpFbThPbClMSkc1QVhKdjhhaUVHWjJzamxveU9BYFRteld1Uk0Kei0oKHNs
TT90fDF2fGwpLSlpa19oOzdqSVJEZENzWVMyUyN7JnUzO1FuYExTZSZXUCl1KnM9ZlFQWUxfQWtE
RnprCnpSSUJsMjhqT1h7bW1OOzlINjB1bm1Dezc2RHMxeXlRVlZUWUVQTV8jbjRvQT9ARWtJJnFM
NUUmTGRTOypjYCNZSAp6PylebTxpeEc3VkR7ZGspKjlTPV5hKCFnVDQ4MEpgd199bihLe19FbDxx
RTJvXitNOyVOV0Q7PXklNEslenk0MEAKemZsQj92cXZoZGx5a19TVV59P0EtWD58eEh7clNkOFVw
I2VCekh1UykxKHQpNURfbjNqcVB+MSkqO1lPRElZYWt1CnpFRWBrNzNMdktEUlBFM3A8eWZ7bz9k
UFJkbUtHI05UZWRhU0JheHlyUTtSckw+KV9ZQU1eUztsTXR0JCZtX0FmYAp6IWVVNmRYRSRoS0ZX
aSNsKzI8MDYmT00oZUhjPnUoOF8wWGk0WDwhK2psSSVzUnVRQlRPIWkjUj5He1d1REM7KWYKench
WiQqKG5PMEg4UT1rUnQwUD9RPnpnKGR0KF5jOyZgPEpacDczUWZKe3JWJEEmfit6SD1sJnI3Pzw+
SlZDPCQoCnp0IUw8Vk9WalU3QHdIYnJSMj1HbE57fmBoO0xZP0w4b1RqJmhyNTghP289VFRYJUsx
eCMoTEVYMU5TSnBZO1pzOQp6PXBQKHhnVU9tLVN5PyUoPHkpOUNLNDZWV2ZEbWY1dk4jNEl3JkAk
aEdLfCFDTiplRj9KS04pO1NzVU1tQVF+OV4KejEyZTgwU35YcSU5PHo5ak9MS1RsaHNCVGc8Uzkm
PHNhU0xnVmN4Pz5XYilZWm0+en1UeVhzcDxDTTM9fTBaJlBVCnohTzwqcGYqSHh9Z2RTMyslV3Q3
S2g2USpyRGYpPmckNzhOVXkqYnNBcWRvVFc+WH1ReyoyWWxaezh3WiZifGAlKwp6bTZtfmhQTUoj
VkNieHM9UnB6OSsmSEZMPkxHPjE2SjhgRDlRU1p7I0kxcXM5S2FzcDRRKClsXmQhV3dpMWRGZCQK
ekF9JkNmRHtjPVg1MCVzZV56QUtzbDA7cntAMkdoUzNyJXBGPVY5anUlTWliXzdqSU5aSz5EPzco
aD9JQCU/c34pCnojQkoxPUtRYEB8P1FkdiFnNEYwTjcpaDtIcTE4TVZFJFEkMDk+c2A0QF44OWNu
N15LMnAtSz1MSENwR18xTVV+TAp6eC1GdkdCYFcqZndvZ35OSXBsOTtaPnwqSCtQYlhgWDJDZTA/
d2l6U3U4Umh7QWhFKVhpaF9oR1JgS15nWm0pIU0Kekh8TnNES2ZHP1VJRTVQTyZoKH0xNk8mWWxo
c0g1LWFkRjhDPl4taipJUDw9bGM7SGRtOHBgMHA3Z2A1U0smPXNsCnpgVysreFUqdmZJRSRIX3pB
TVNoUkFVMEN6ViFBTD1xdHA8eEIpM2dBQFluamlHRW9+V2RGPD1FSkNNfGlAVCVtTQp6Mio/fUcp
SWB9WW5WTD5vIWVqZFV3fFNWYTlNZCRXKkx1ZzFuMFZiMGxDUyl8e3IrJDhCcEAzRzNKVEVsZCUm
MloKejEkXjl0JE5yM3phR3gheDZzc1E4NkVHS3p6IV5GanUwdD1jVWJNSER2MzNsKT49NE9tXj9T
V1RFNShIY2t3IzluCnpYflZ5TlY0eE1rNU8jVHskQllwSSokJFJKOWBUPnhTQ3NAZis8fWNiPiF3
JTs7IzNHKEpLdWF9ZE1hNiREK3tzKQp6dC1UVlJhSiskNCN0S0NlUyEtekZyNFJ2LTAyWEYqNTtK
Wm47dV5BWUgpbkg0OHVqSHsqMVd0ak98XmFQe1FyNC0Kel80RFBnb1gxPTRhfj51fHt0ZThaUlF8
YnlTajBPNEIkQ3QoUyZUMnQyfG90MXlxbWUmclp4V2xqNXdOcG07NHtSCno0em1DTEc0S1MtVSVC
RF9pT1kxc3FLP2Vhd2x6RDNqT190cnNRKjtlIz4oWDQjZnpMQVdsdztGRjQ9dXxWPl4yZwp6Pyo9
TyM3Y0N+Szg3QEYzVTFjSUphWlE8WW0rc0lXKjRHOyNoSSpQNmB9SHFQY3AtUldpRDtzMyhBO2l2
STRgISgKeiFjYnA5IVRqWE0tX29ATXRgQlFATDJeYy08NV82MkpsRjE9byt7VndOQDlLKXsmUjl9
T1MkOCNrP1EhN2tyQmpyCnohJEA1U2ZnYV5MdilVNTsxfTxDSXhYVnNENEdQUiYxeTY9NFMhcXdI
fEtzQV4oPGUhJm84clgwRXVaaG1aIyo1UQp6MURjVVZhS3kpWEtBVFFXd2xMViZ2QHhsZzU1cnNT
WVYmVzE1a1M9Q2NQNE5iJk1HVShuQ0xgeWhBdVlTVG9naDIKei03Z1gwYlRSfXVsP3IqZXcrT3M4
I1B9YW1tMkgxZUIlR1lpM0skMHU+ZWFKVGk/e2t9aUp9WGQwdjRvWW1xazJXCnpDTT1oVnBidDZS
YSEqVzVRRX5CbzxubVMpYGJlMjIjSG10RnsoQ3xkeTwhMEAzbGVlNldKajl1eWA4ZG91b1pxeAp6
KylDP2NlRTx2NkUhYEVUTj94YEVlOD5GYWxwJU1IdExMcz14T0MtO3JWaWYxVkNgQlhwZyMhLTFp
d2s/aDJIcEIKel8lIyVRJEU4YmA3RCVPRkB8TFA3S3YhQ2pPLTg1fHIyVz05S2kyayh7aTlpJFNf
Uj87dEFGMUI7KHswe0IrJFdsCnoqdShrVXE1NVRNcGE/cDxkZDZHaHUlT0ZHPSprT05VIU55WiFM
LX1oJnxEMSMhI301X2d1ZzRadDlqQU45ZSkzUgp6QSRqaGZEUHs+RlImKVdfaSZucz5jP0FWVyl8
WTJAIVBZMGp4QGlPQXc7WTw5PmRHVyVHPDNedmUhNiNeZ283a2oKejtudElmRmlhMytzKiRBUVp0
JHhQWiZfbGZtKTY2RVV3T2hVUilsaUtrP213NVZIMHJadm01bF56VEd0cmo9flIjCnpDV3ZBbmlf
aSNPSyFDPH1xQHA+SHE3RXg0MDJVTmVPJERBWncrZ21sVXolZ0U/WiNgdmpXZHlLUGZRJWx8SHFC
cQp6byUpO2M+Um1DYWN1cEojak9SZlo7QD9YfEZ0KH5lVnZkUEhte31ndzZYKHNMcT9RVipvRDJa
T0t4Nn09Rip4bm4Kej1nSDEoQCV6LW1LMk8qKmhXYWZwNDY3cCE5ZnUjazBZJSZAantrSjA0ZyQ2
Xz0hT35+M01wOz4yfFAhbFZwPUdVCnpjPC1JRUklazJGME9pYmslYUgtYjR8I1EkOGgmSC1COz9D
e1hxWEVCJCMkU3EjPi0zMENaTUF2S1VVa3hgTyskOQp6SypETiU8MUx7UjR+P0RTUTRlPnoyVml4
OCp7LSUqUStffWN8N3ZfSCtJfXoxQTsycy07RHEtYGJzYjxVN0UoaE8KenohVzd5dUZLPUQzeiNC
PE1EM3xgZ2U2fGMpST1saHRKI3wlN2Z8LTNgPnFkVlozOyVecClkMERpWVpqdCsqfWUtCnpkSVRD
OzNeVlZnRlhgXzN5Qkg7NjxNRHpFUGtzUG8/dDFDK1dwLTdrUysqOFdCUGUmT1I7YkhkR2VAdkJT
aklnLQp6MjM7Qz9nWjctP3d+QU4wTVElWkR3LWlIJmsyfHp0MHdae19lITJoJSNhX3poPTFOb1VQ
VGhyPHxBeXJSK0NuQ0UKemk7YnhVTWd0JUR4QVg8NTtxfFZwQ3k5RVctISF2JU8pOFRkTlNKMlJ4
bCNDIWQ9ODZSeEc1QUEwK0AkQzBjM3phCnolXns4WW5fZC0zKD96fmYwe1V6Xkh0e14qSSspZjQ9
R2kpZztWTV4ycFdMNld7O1VKPlR4THZeIWpJPkBkIWxZLQp6KG49LVApQGx5KV9ka2J5QXNvI0tS
ZSh1YV9TUXVzNUU0dGw+eiVzRll6WFpAYD0mWkdgeWo3S2p9QCo1KnRNdGMKemw9fHNfUypgKjNo
NSljZj8lblY5Uyp8djA/a0I/fURUZTUtend6bUhHfkV8eTReWTBiMmBTdmZBXkchMmlWKHg3Cnpn
NHJAVThAezxWWjZFb3I9OSs7RmNjSDMjP2BCazJtVWkpJT5gTkA+c01MfnFCdiVsQWNXQGo2P3x8
M2IwPTB5KAp6IWVWYkdGcE4xVXJnYWBNJUNRYjg2VUc5OzRSS1VTKUIhP0RKNTJlNlN1a0xZVX1o
dkZraSFTeUZTKkFTZ3FPPFQKeit+NSh1XkB3dmZAZ0BpdHNIa2NyNXhOQG1AWEp2Rz11NkVTQ2s9
eFNnUj5VfXBqbEdMRVAleH03JWE4amc9YHBiCnpkK2pnJEM4UzkoX0dxT0U2MndhcFVeQm9rRFY4
N2tXM05KdFZWO31YVTgmJkExRkN3THBgcH11a2ArRyRaVTYhMQp6aGtkOTJQZXY0PlFMdmQrOClQ
cDFGTXVVWiZZQjZpVlZ7SHFvSCt5e2hmNH19UVNVU15NSCRFaEFjcHxKaFFINiQKel5vfDlQZG45
Oz9GKllPMmtYfW03SSZARFNBNm1rSE14YXZ5WE0yJVVfZmExczVuO2QmZ3xfdkJ5LWFOK3FmaWtw
CnpmLX1EJUxwTWZXYnNXeDBfOU5eQTVpbThNKFlpLStPJGZ0P1hedn07YExXVVg+WE5yTlpYO1VL
TmVVPD0hdSEpOQp6elFjKjM7QHpGSChwQT94IUtgMXw/S0UwQDR0Uzk+eEpXKyVuP3diJWJlP1F+
ajJKYTNMd3d9PEJ2cUZVPGRfMWUKeldkZEA/NDdgQi1oe1RAQlBmQTNQbFZBVHU8NW9iNUVJNiUq
eUlnVyo1NjsxVWB1VmVldlhHSHdFcSVVRTJRcC0jCnpSOWErdzh6bTRCMG1ReEw2VWkqMnc/QX14
bHduQiVPdSZ8cU5XbE5uOThwNj97bDFPOU1mbU02SU5iWDN7Z0BiVgp6a1klbCs8OGwod05xNUhK
aTFuJjFAYSUqYndgS2peV25xITxpPiU1SGx7bn1RVn1QMXBwYXJaKjh8K15gPn5FKWgKemNYKzE7
dCEzaEVHN0hnWVNsR2poT2A9Vnk8SlcjVXBNLVlWcG00TDdTYGRhSDAlNEl1S214I317TzJ4KERi
RFlvCnpvPnFnKnc5M3NEP1UhYDhhZTZlYyYmO21fTyokY3t0TC17fTF7YC17aVkwUCojT1g9R1NH
T2k1NFJObi1rJnFBeQp6UiNZMkxgTE5ZIUtYOWtKbGhGM0hFb05Ge3lDbyErOG9CMWxFOFpUQkUw
aVMjRHUwa1JURHoxQGd8SklpcXdjVGoKeld7cmZLWiQoOUFSfEB8K0B2bDdMMXl4KXxReUgwRWFl
TDluQjdPaDN7WiRYLUF8Iyo+JVpkSlRBVjVFKWZWNDxuCnpvSnVVNXs8SXhWYk5KenFhYmk0bClB
Y0NKX1ozKWJiS0h6R2l2KTlSczZOMVRWfmk8dStATTdYdD41TTc+JXU2KQp6b008UyR5R1VNUCp3
bEwybzt8eGlAY243VDEzJHVSbCV9WWFMSDFoe0thQ3Vme3MmfCpaSFU1N2JeNypEWWZ2Y2gKemBe
ZFdoblVjbkdWYmApQygwZHo5Kj9HWEVLXigzYCZqTksjUS1lYFlCMmZ4emFvfkhBciRTRCpgRD9z
Q1YjY1d4CnpGemx0WTdAQDNOYlRgejhKSGBFNGFtdSFwZT95SyMwMj5nI0J6fDVBI3RkTSkkfHdi
QHdJNTcmO0duSDUwVnEmYAp6QnFtWX54ODlkKTRpYVJGJW1xTioyPkwyK1h3Ym9kbSQhZjxZITJw
bSptWWstbkc7ekRMOUJganlAMSshZWV2QVAKelgzWj0oSzZXM2VjNlNHVzFMTWApcSlFdjN3Szlv
ZE1DeVV0ezFUK1duP0RETiYqdCpMYiFGbHJhZDIkbjQpOHNpCnoycmBsaFlAd25YX3JLRSRAUnN+
eDV1IT43KGkrRSp4WWBMdntVRllKdFF7VUlJT21FR3RaXyUmVX16QFkwdmVVSwp6SUh2cE1FRE5s
TVN0N0Y9JiN3d3g/bENUZWdORWxSbWY7JjVZVHhnLXcpUCNveDhFfGZGWEE9S1c8VkslejxMWGEK
emsme1pacmtIaDA9QFZ8aCtRRkx3PUw3NyNGOElQYz9GWEowMnEpNW8tQkZ3V0FQbH10aWFWbipP
d2MoRDU3SmpeCnpUVjxJZnJ7RFhQcXtELUFOcGppOTdsPVlDVHN2MW89TnVIemgxZDdRRWt0fUBR
Uj9QZXUxRmdoSnh0TiZOO0tWNgp6ZjY3aWhtant6eFE1TiF8YC1rNmV4bGc9Iz1ubW5iNzx6bm0o
QjV9ITJ7QzI/Xmo5RyZVMyVQaSZGZUJnVDtNNykKemBvNDNYMyF9JHMqPGQ3MDBmMHdKZ0NBJl5j
eDJqKCp1Q2I4IU8+TkBmT2wlZUtvSndWV1o+UDc1KFVFN3FTQ09OCnpBWj1kXjl5bmdWNzc2MyhS
Z05OfG5QdHlDSCk8KUAxbHY7dExAVXlQamlnSzxfejliR2s7VHZ0aTJGdHx2XkVrRwp6MFF3cSMx
QThVfEJPblBwX055TG0ydXMlYUsrbG4yLVJ5NnRqISFfQlAjYDdQR35zYnpmTk1oPzt1MjtkaW1+
OCkKejdZeilBMjREZFdAJCNVJlY2Q3E3M2dJd1k5KSFxZSp9Nz5Ze019PVpyUXJRPUNTWFJuLX1E
aERCZVVje3J3e1FACnpra3wrJVZBRHhkM0ZHfXhFZzImV0JuMkI4TUtfODQxK3tQfTtec3lUdG04
ZHJJTFA5X2tYX15vVmE2Sylnb28xSQp6eDczcm0xJER8YG5ETl50JT9GbWMwXztjfjxTdGZxcEx2
fERaZzdpbWcoPEp2X35+YjVvMGxLUjNfVzxxclA8PXQKekBvO3ojMFE8Mnk4YVl1MUVEP2BUQ20w
OX5PdzVzTzVOZWRaMW5ndXNIV2MyRWBHMzdCXkRtK0tLWXkqfSZrejZXCnpPR2JhTCMtRlM0P19O
T3J2b2AqJGpYIUpTencpWilwUGxrJnJ+S0l8ZXxFfSRfWjlFfHw4ISRoVVc0JnkoQl9IMApTOWxR
XlpJJldsdHcqMlM2LX5KeldibW1rNQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL2ZvbnQtd2l0aC1uby12YWxpZC1lbmNv
ZGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZm9udHMvZm9udC13
aXRoLW5vLXZhbGlkLWVuY29kaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTRkMjUwNjIw
MDU1MTIyMDIwYTIyZDFjMjg4M2YzN2IyNjM1ZmZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL2ZvbnQtd2l0aC1uby12YWxpZC1lbmNvZGluZy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisg
IFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgw
MHg2MDAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDYwMAorICAgIFJl
bmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDU3NgorICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4NTQKKyAgICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgw
LDApIHNpemUgNzg0eDE5CisgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgNzEzeDE5CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA3MTM6ICJUaGlz
IHRlc3QgdmVyaWZpZXMgdGhhdCB0aGUgZm9udHMgd2hpY2ggZG8gbm90IGhhdmUgYW4gZW5jb2Rp
bmcgdGhhdCBGb250Y29uZmlnIGRvZXMgbm90IHVuZGVyc3RhbmQgYXJlIG5vdCBsb2FkZWQiCisg
ICAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwzNSkgc2l6ZSA3ODR4MTkKKyAgICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNzR4MTkKKyAgICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDApIHdpZHRoIDI3NDogIlRoZSBmb2xsb3dpbmcgdGV4dCBzaG91bGQgYmUgaW4g
YSBzZXJpZiBmYWNlLiIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mb250
cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmcuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9mb250cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmcuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
MWM2NzE2MjRjNGMyZmNhODk5ZDViOTg3ZTRjMTMyYzc2OTVhZTNmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL2ZvbnQtd2l0aC1uby12YWxpZC1lbmNv
ZGluZy5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXY+Cis8cD5UaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCB0aGUgZm9udHMgd2hpY2ggZG8g
bm90IGhhdmUgYW4gZW5jb2RpbmcgdGhhdCBGb250Y29uZmlnCitkb2VzIG5vdCB1bmRlcnN0YW5k
IGFyZSBub3QgbG9hZGVkPC9wPgorPHAgc3R5bGU9ImZvbnQtZmFtaWx5OiBGb250V2l0aE5vVmFs
aWRFbmNvZGluZyxzZXJpZiI+VGhlIGZvbGxvd2luZyB0ZXh0IHNob3VsZCBiZSBpbiBhIHNlcmlm
IGZhY2UuPC9wPgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjNhNmYxN2I2MDgzYTYwZWQ5
ZmQ5ZjExODE5ZmZiNDdlNDRjNTVmYi4uZjIxNTcxYWI3ZDM4MDM2NjE4OWExMzBjM2JiZGI0Mzdm
ODc2YmRiZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0xMi0wOSAgTWFydGluIFJvYmluc29uICA8bXJv
Ymluc29uQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgW0d0a10gc3R5bGU9ImZvbnQtZmFtaWx5OiBjb3VyaWVyIiBtYWtlcyB0ZXh0
IGRpc2FwcGVhcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDc0NTIKKworICAgICAgICBEb24ndCBldmVyIHVzZSBmb250cyB0aGF0IGRvIG5vdCBoYXZl
IGFueSBvZiB0aGUgdGhyZWUgY2hhcm1hcHMgdGhhdAorICAgICAgICBGb250Y29uZmlnIHN1cHBv
cnRzIChVbmljb2RlLCBBcHBsZSBSb21hbiBhbmQgU3ltYm9sKS4gSWYgd2Ugc2VsZWN0CisgICAg
ICAgIGEgZm9udCB0aGF0IGRvZXNuJ3QgaGF2ZSBvbmUgb2YgdGhlc2UgY2hhcm1hcHMsIHVzZSB0
aGUgbmV4dCBmb250IGluCisgICAgICAgIHRoZSBsaXN0LgorCisgICAgICAgIFRlc3Q6IHBsYXRm
b3JtL2d0ay9mb250cy9mb250LXdpdGgtbm8tdmFsaWQtZW5jb2RpbmcuaHRtbAorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKTogQ2hlY2sg
d2hldGhlciB0aGUKKyAgICAgICAgZm9udCB3ZSBzZWxlY3RlZCBoYXMgYSB2YWxpZCBGb250Y29u
ZmlnIGNoYXJtYXAuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udFBs
YXRmb3JtRGF0YS5oOiBBZGRlZCBuZXcgbWV0aG9kIGRlZmluaXRpb24uCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9ybURhdGE6Omhhc0NvbXBhdGlibGVDaGFybWFwKTog
QWRkZWQgdGhpcyBtZXRob2Qgd2hpY2gKKyAgICAgICAgdmVyaWZpZXMgdGhhdCBhIGZvbnQgaGFz
IGEgdmFsaWQgRm9udGNvbmZpZyBjaGFybWFwLgorCiAyMDEwLTEyLTA4ICBFcmlrIEFydmlkc3Nv
biAgPGFydkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNo
ZUZyZWVUeXBlLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENh
Y2hlRnJlZVR5cGUuY3BwCmluZGV4IDYxZWU2MjU4YzUwMGQzYjM1ODk3Zjc1NWI3MDZjYjdhZDZi
MWY4YmIuLjE0MzAxMjQwNmU0Y2YxNTQ3NmQ4OWMxNzZmMjRlMWNjNDVhMTNlZmMgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUu
Y3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJl
ZVR5cGUuY3BwCkBAIC0xODEsMTkgKzE4MSwyNiBAQCBGb250UGxhdGZvcm1EYXRhKiBGb250Q2Fj
aGU6OmNyZWF0ZUZvbnRQbGF0Zm9ybURhdGEoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RAog
ICAgIEZjQ2hhcjgqIGZvbnRDb25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZzsKICAgICBGY1Bh
dHRlcm5HZXRTdHJpbmcocmVzdWx0UGF0dGVybi5nZXQoKSwgRkNfRkFNSUxZLCAwLCAmZm9udENv
bmZpZ0ZhbWlseU5hbWVBZnRlck1hdGNoaW5nKTsKICAgICBTdHJpbmcgZmFtaWx5TmFtZUFmdGVy
TWF0Y2hpbmcgPSBTdHJpbmc6OmZyb21VVEY4KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGZvbnRD
b25maWdGYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZykpOwotICAgIGlmIChlcXVhbElnbm9yaW5nQ2Fz
ZShmYW1pbHlOYW1lQWZ0ZXJDb25maWd1cmF0aW9uLCBmYW1pbHlOYW1lQWZ0ZXJNYXRjaGluZykp
Ci0gICAgICAgIHJldHVybiBuZXcgRm9udFBsYXRmb3JtRGF0YShyZXN1bHRQYXR0ZXJuLmdldCgp
LCBmb250RGVzY3JpcHRpb24pOwogCiAgICAgLy8gSWYgRm9udGNvbmZpZyBnYXZlIHVzZSBhIGRp
ZmZlcmVudCBmb250IGZhbWlseSB0aGFuIHRoZSBvbmUgd2UgcmVxdWVzdGVkLCB3ZSBzaG91bGQg
aWdub3JlIGl0CiAgICAgLy8gYW5kIGFsbG93IFdlYkNvcmUgdG8gZ2l2ZSB1cyB0aGUgbmV4dCBm
b250IG9uIHRoZSBDU1MgZmFsbGJhY2sgbGlzdC4gVGhlIG9ubHkgZXhjZXB0aW9uIGlzIGlmCiAg
ICAgLy8gdGhpcyBmYW1pbHkgbmFtZSBpcyBhIGNvbW1vbmx5IHVzZWQgZ2VuZXJpYyBmYW1pbHku
Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGZhbWlseU5hbWVTdHJpbmcsICJzYW5zIikgfHwg
ZXF1YWxJZ25vcmluZ0Nhc2UoZmFtaWx5TmFtZVN0cmluZywgInNhbnMtc2VyaWYiKQotICAgICAg
ICB8fCBlcXVhbElnbm9yaW5nQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAic2VyaWYiKSB8fCBlcXVh
bElnbm9yaW5nQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAibW9ub3NwYWNlIikKLSAgICAgICAgfHwg
ZXF1YWxJZ25vcmluZ0Nhc2UoZmFtaWx5TmFtZVN0cmluZywgImZhbnRhc3kiKSB8fCBlcXVhbEln
bm9yaW5nQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAiY3Vyc2l2ZSIpKQotICAgICAgICByZXR1cm4g
bmV3IEZvbnRQbGF0Zm9ybURhdGEocmVzdWx0UGF0dGVybi5nZXQoKSwgZm9udERlc2NyaXB0aW9u
KTsKKyAgICBpZiAoIWVxdWFsSWdub3JpbmdDYXNlKGZhbWlseU5hbWVBZnRlckNvbmZpZ3VyYXRp
b24sIGZhbWlseU5hbWVBZnRlck1hdGNoaW5nKQorICAgICAgICAmJiAhKGVxdWFsSWdub3JpbmdD
YXNlKGZhbWlseU5hbWVTdHJpbmcsICJzYW5zIikgfHwgZXF1YWxJZ25vcmluZ0Nhc2UoZmFtaWx5
TmFtZVN0cmluZywgInNhbnMtc2VyaWYiKQorICAgICAgICAgIHx8IGVxdWFsSWdub3JpbmdDYXNl
KGZhbWlseU5hbWVTdHJpbmcsICJzZXJpZiIpIHx8IGVxdWFsSWdub3JpbmdDYXNlKGZhbWlseU5h
bWVTdHJpbmcsICJtb25vc3BhY2UiKQorICAgICAgICAgIHx8IGVxdWFsSWdub3JpbmdDYXNlKGZh
bWlseU5hbWVTdHJpbmcsICJmYW50YXN5IikgfHwgZXF1YWxJZ25vcmluZ0Nhc2UoZmFtaWx5TmFt
ZVN0cmluZywgImN1cnNpdmUiKSkpCisgICAgICAgIHJldHVybiAwOwogCi0gICAgLy8gRm9udGNv
bmZpZyBkaWQgbm90IHJldHVybiBhIGdvb2QgbWF0Y2guCi0gICAgcmV0dXJuIDA7CisgICAgLy8g
VmVyaWZ5IHRoYXQgdGhpcyBmb250IGhhcyBhbiBlbmNvZGluZyBjb21wYXRpYmxlIHdpdGggRm9u
dGNvbmZpZy4gRm9udGNvbmZpZyBjdXJyZW50bHkKKyAgICAvLyBzdXBwb3J0cyB0aHJlZSBlbmNv
ZGluZ3MgaW4gRmNGcmVlVHlwZUNoYXJJbmRleDogVW5pY29kZSwgU3ltYm9sIGFuZCBBcHBsZVJv
bWFuLgorICAgIC8vIElmIHRoaXMgZm9udCBkb2Vzbid0IGhhdmUgb25lIG9mIHRoZXNlIHRocmVl
IGVuY29kaW5ncywgZG9uJ3Qgc2VsZWN0IGl0LgorICAgIEZvbnRQbGF0Zm9ybURhdGEqIHBsYXRm
b3JtRGF0YSA9IG5ldyBGb250UGxhdGZvcm1EYXRhKHJlc3VsdFBhdHRlcm4uZ2V0KCksIGZvbnRE
ZXNjcmlwdGlvbik7CisgICAgaWYgKCFwbGF0Zm9ybURhdGEtPmhhc0NvbXBhdGlibGVDaGFybWFw
KCkpIHsKKyAgICAgICAgZGVsZXRlIHBsYXRmb3JtRGF0YTsKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgfQorCisgICAgcmV0dXJuIHBsYXRmb3JtRGF0YTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhLmggYi9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGEuaAppbmRleCAw
NzkzNzQ2YzE0NzQyY2IxODIwYmNiYzM2YTg1MzNmODg2OGE2OWM4Li4yODQxYjE0YTIxZTg3Nzkw
YzhmMzljODVkOWYyM2E4N2RmODBmM2Q0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGEuaAorKysgYi9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGEuaApAQCAtNjgsNiArNjgsNyBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzZXRTaXplKGZsb2F0IHNpemUpIHsgbV9zaXplID0gc2l6ZTsgfQog
ICAgIGJvb2wgc3ludGhldGljQm9sZCgpIGNvbnN0IHsgcmV0dXJuIG1fc3ludGhldGljQm9sZDsg
fQogICAgIGJvb2wgc3ludGhldGljT2JsaXF1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3ludGhldGlj
T2JsaXF1ZTsgfQorICAgIGJvb2wgaGFzQ29tcGF0aWJsZUNoYXJtYXAoKTsKIAogICAgIEZvbnRP
cmllbnRhdGlvbiBvcmllbnRhdGlvbigpIGNvbnN0IHsgcmV0dXJuIEhvcml6b250YWw7IH0gLy8g
RklYTUU6IEltcGxlbWVudC4KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwIGIvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCmluZGV4IGMw
NzU2ZWVjOGQyMjhkYzVkODJkNTg0ZmM3NDU1NDVkY2FiZmY2YzguLjczNDBlNzZlMTQxM2EwNTI0
ZjdjNTg0OTFmM2ViZmUxNjU2N2E0MGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcAorKysgYi9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAK
QEAgLTI3Miw1ICsyNzIsMTcgQEAgdm9pZCBGb250UGxhdGZvcm1EYXRhOjppbml0aWFsaXplV2l0
aEZvbnRGYWNlKGNhaXJvX2ZvbnRfZmFjZV90KiBmb250RmFjZSkKICAgICBjYWlyb19mb250X29w
dGlvbnNfZGVzdHJveShvcHRpb25zKTsKIH0KIAorYm9vbCBGb250UGxhdGZvcm1EYXRhOjpoYXND
b21wYXRpYmxlQ2hhcm1hcCgpCit7CisgICAgaWYgKCFtX3NjYWxlZEZvbnQpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIEZUX0ZhY2UgZnJlZVR5cGVGYWNlID0gY2Fpcm9fZnRfc2NhbGVk
X2ZvbnRfbG9ja19mYWNlKG1fc2NhbGVkRm9udCk7CisgICAgYm9vbCBoYXNDb21wYXRpYmxlQ2hh
cm1hcCA9ICEoRlRfU2VsZWN0X0NoYXJtYXAoZnJlZVR5cGVGYWNlLCBmdF9lbmNvZGluZ191bmlj
b2RlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmJiBGVF9TZWxlY3RfQ2hhcm1h
cChmcmVlVHlwZUZhY2UsIGZ0X2VuY29kaW5nX3N5bWJvbCkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJiYgRlRfU2VsZWN0X0NoYXJtYXAoZnJlZVR5cGVGYWNlLCBmdF9lbmNvZGlu
Z19hcHBsZV9yb21hbikpOworICAgIGNhaXJvX2Z0X3NjYWxlZF9mb250X3VubG9ja19mYWNlKG1f
c2NhbGVkRm9udCk7CisgICAgcmV0dXJuIGhhc0NvbXBhdGlibGVDaGFybWFwOworfQogCiB9CmRp
ZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
aW5kZXggNzdmY2FmMzA1ZmNiODFjYzYzYTEzMDZhZTcxZjYwZWNhZjJlZWYyZi4uNDg3ZWFiODI3
MmY2NWVlYWE5MDVkZGEwYzk1MWY5ZTVjMjg5Y2NhNyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisy
MDEwLTEyLTA5ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbR3RrXSBzdHlsZT0i
Zm9udC1mYW1pbHk6IGNvdXJpZXIiIG1ha2VzIHRleHQgZGlzYXBwZWFyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzQ1MgorCisgICAgICAgIEFkZCBh
IHRlc3QgdGhhdCB2ZXJpZmllcyB0aGF0IGZvbnRzIHdpdGhvdXQgdmFsaWQgY2hhcm1hcHMgYXJl
CisgICAgICAgIG5ldmVyIHNlbGVjdGVkLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZ3Rr
L0R1bXBSZW5kZXJUcmVlLmNwcDoKKyAgICAgICAgKGluaXRpYWxpemVGb250cyk6IEluaXRpYWxp
emUgRFJUIHdpdGggb3VyIGZvbnQgKGRlcml2ZWQgZnJvbSBBaGVtKQorICAgICAgICB0aGF0IGhh
cyBubyB2YWxpZCBjaGFybWFwLgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9mb250cy9G
b250V2l0aE5vVmFsaWRFbmNvZGluZy5mb246IEFkZGVkLgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL2d0ay9mb250cy9mb250cy5jb25mOiBVcGRhdGVkIHNldHRpbmdzIHRvIG92ZXJyaWRlIHVz
ZXJzJworICAgICAgICBzZXR0aW5ncyB3aGljaCBtYXkgZGlzYWJsZSBzZWxlY3Rpb24gb2YgYml0
bWFwIGZvbnRzLgorCiAyMDEwLTEyLTA4ICBXaWxsaWFtIFNpZWdyaXN0IDx3c2llZ3Jpc3RAYXBw
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0R1bXBSZW5kZXJUcmVlLmNwcCBiL1dlYktp
dFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9EdW1wUmVuZGVyVHJlZS5jcHAKaW5kZXggOGRmYmVj
ZDI4M2EwOGM4MjhhNDY1ZjU4NzM3MTliMWY4NWFmNzYwYi4uMWViYTZjYjc0NTU1ODVjOGJiMWNl
ZWE3Yzk1MTI5NmU5NGI5NTgzMCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvZ3RrL0R1bXBSZW5kZXJUcmVlLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwCkBAIC0yMzEsNiArMjMxLDExIEBAIHN0YXRpYyB2b2lk
IGluaXRpYWxpemVGb250cyhjb25zdCBjaGFyKiB0ZXN0VVJMID0gMCkKICAgICBpZiAoIUZjQ29u
ZmlnQXBwRm9udEFkZEZpbGUoY29uZmlnLCByZWludGVycHJldF9jYXN0PEZjQ2hhcjgqPihhaGVt
Rm9udEZpbGVuYW1lLmdldCgpKSkpCiAgICAgICAgIGdfZXJyb3IoIkNvdWxkIG5vdCBsb2FkIGZv
bnQgYXQgJXMhIiwgYWhlbUZvbnRGaWxlbmFtZS5nZXQoKSk7IAogCisgICAgLy8gQSBmb250IHdp
dGggbm8gdmFsaWQgRm9udGNvbmZpZyBlbmNvZGluZyB0byB0ZXN0IGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzQ1MgorICAgIEdPd25QdHI8Z2NoYXI+IGZvbnRXaXRo
Tm9WYWxpZEVuY29kaW5nRmlsZW5hbWUoZ19idWlsZF9maWxlbmFtZShGT05UU19DT05GX0RJUiwg
IkZvbnRXaXRoTm9WYWxpZEVuY29kaW5nLmZvbiIsIE5VTEwpKTsKKyAgICBpZiAoIUZjQ29uZmln
QXBwRm9udEFkZEZpbGUoY29uZmlnLCByZWludGVycHJldF9jYXN0PEZjQ2hhcjgqPihmb250V2l0
aE5vVmFsaWRFbmNvZGluZ0ZpbGVuYW1lLmdldCgpKSkpCisgICAgICAgIGdfZXJyb3IoIkNvdWxk
IG5vdCBsb2FkIGZvbnQgYXQgJXMhIiwgZm9udFdpdGhOb1ZhbGlkRW5jb2RpbmdGaWxlbmFtZS5n
ZXQoKSk7IAorCiAgICAgaWYgKCFGY0NvbmZpZ1NldEN1cnJlbnQoY29uZmlnKSkKICAgICAgICAg
Z19lcnJvcigiQ291bGQgbm90IHNldCB0aGUgY3VycmVudCBmb250IGNvbmZpZ3VyYXRpb24hIik7
CiAKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9mb250cy9Gb250
V2l0aE5vVmFsaWRFbmNvZGluZy5mb24gYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsv
Zm9udHMvRm9udFdpdGhOb1ZhbGlkRW5jb2RpbmcuZm9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhmZmY3ZDljMWY0
YTVjNjNmZmEwYjExZTVlYWExNDBkMjdlNTg2MTgKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDgz
NjgKemNtZUklUGlxckY3e35GNlIlQCRtVzdTcnhQTnpqZ3BAKzY4aChjOGAxO1BISUVlYWs2VnpR
V2tPPV4tdEBofThACnoxNzV0JnN9THozPHtrSkojeTgrPW5FMmhidHchMSZKY3VvYCVWIyQ7emhg
JFJQZjdATTtwSVJzQ3hxeGhyejZCUgp6PVg4Nk45Uz1YV2kzaThPNDJuO0VVbmpQNiYlUkVxUmpO
KDMrXkR+OTZ4VVUkU2dYfXI+USRsfG4+QUlmc1Y3VVQKellRMGBnMktzTzgtRlVIWkQpKGBCXm5V
bG51ayVBekA8X1pCQUs2RktnPVE7RlNEUzQ7SikqYXJPXlhySEN6aSEqCnpIaHBHaVpkYG9OUDNN
PX1LWn0xSmQqXyFIKlBjOUc4Sih9IVN9JkB0JTN9Ul9AbENae3NGbXZGWVZDRGFeJmwtOwp6RFhn
bFE+RktHTipeSWljNCFERldiP2VeVW5MRGJIRztqYUBGcCo8VDs+MmV1IzZyRTxRbCgwPFE3cEJS
TXBHM1YKemlFMzM2bThgNGcrZjdET0QlbU99OCFkSVNAVks8dU4+czV7UitBZihRO0l3R2khSnRu
LUZ0dD9pOUd4SF5xQE41CnojQiFFYzkrUGgyZk9WJFhLVlFwOTktMF43V00wVWd5cUpUQWZyYUN2
XnFmLXhAKVJ9REZ0QmomMiN9fUFwPCFVKgp6OzFNOHUkKVJDajtvdVA8JnlZakl6ezBeSks9elND
IUAkRDlCUzd8KEwmTHpyITZRSlBDNU1LQWdAWj9jSlZ5PTwKejB9QlVfMDY5UG80RmR9WWp7ckdI
NGg7aGYyYWY8Ykw9RnVESjB5aExMb0lWMjBXd2M1R3pASD5URnhvWT4oR1UzCnpuM3cjPyV8WE0h
IW9lZSk3ZVdxR2dTbFpMYmNSflMxe013OzByQ1FNJkBpeFlAQ2M5PiQpUkNqO291UDxGT2ZzVAp6
enswXkpLI3FfQCFAJEQ5QlM0T2xMJkx6ciE2UUlrQ1duVEJnQFo/Y3loMDhRMH1CVV8wNjlodTRG
ZH1Zant0ZDwKejkyeTF8NGp1dlc4YVhyIUVGMyVuPGFLZ3I3KzUlWDFWfjheanJOIWpBOGAyQWlD
Z1NJPl9GXjU+X0ZeNT5fRl41Cno/NyklZ0stYUgzUntyUHNOV0djMyp3fSZDZm4oS3l1SjVDTDJG
TDJuI3kxbD81SVliJUBWNmJ7YD8yZk5LZ1Y1UgplOUs7VTk0I1c8YDQjVz1wemE3fTtDeDYkfUFe
KjREc3J2IXMlT3hmTgoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL2ZvbnRzL2ZvbnRzLmNvbmYgYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9ndGsvZm9udHMvZm9udHMuY29uZgppbmRleCAyZDlhZjE3ZjRkOTA2MzJh
NTBkZDA5NmE5ZTNmYzFhYjViYjFjYmYwLi44MWMyZTRhYjE2YjEzOTkzYmNmODI2OTJmYTYzZGRj
YjIyMjkzZGMxIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvZm9u
dHMvZm9udHMuY29uZgorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvZm9udHMv
Zm9udHMuY29uZgpAQCAtMTUsNiArMTUsMjEgQEAKICAgICAgICAgPC9lZGl0PgogICAgIDwvbWF0
Y2g+CiAKKyAgICA8IS0tIFRoaXMgc3lzdGVtIG1heSBoYXZlIHR1cm5lZCBvZmYgc2VsZWN0aW9u
IG9mIGJpdG1hcCBmb250cywgYnV0CisgICAgICAgICB3ZSBtdXN0IHR1cm4gaXQgb24gYWdhaW4s
IGJlY2F1c2Ugd2Ugd2FudCB0byBiZSBhYmxlIHRvIHRlc3QgdGhhdAorICAgICAgICAgYml0bWFw
IGZvbnRzIHdpdGggbm8gdmFsaWQgZW5jb2RpbmdzIGFyZSAqbmV2ZXIqIHNlbGVjdGVkIHJlZ2Fy
ZGxlc3MKKyAgICAgICAgIG9mIHRoZSBGb250Y29uZmlnIHNldHRpbmdzLiBTbyBmb3JjZSBGb250
Y29uZmlnIHRvIHNlbGVjdCBvdXIgY3J1ZGR5CisgICAgICAgICBiaXRtYXAgZm9udCAtLT4KKyAg
ICA8c2VsZWN0Zm9udD4KKyAgICAgICAgPGFjY2VwdGZvbnQ+CisgICAgICAgICAgICA8cGF0dGVy
bj4KKyAgICAgICAgICAgICAgICA8cGF0ZWx0IG5hbWU9ImZhbWlseSI+CisgICAgICAgICAgICAg
ICAgICAgIDxzdHJpbmc+Rm9udFdpdGhOb1ZhbGlkRW5jb2Rpbmc8L3N0cmluZz4KKyAgICAgICAg
ICAgICAgICA8L3BhdGVsdD4KKyAgICAgICAgICAgIDwvcGF0dGVybj4KKyAgICAgICAgPC9hY2Nl
cHRmb250PgorICAgIDwvc2VsZWN0Zm9udD4KKwogICAgIDwhLS0gVGhlIHNhbnMtc2VyaWYgZm9u
dCBzaG91bGQgYmUgTGliZXJhdGlvbiBTZXJpZiAtLT4KICAgICA8bWF0Y2ggdGFyZ2V0PSJwYXR0
ZXJuIj4KICAgICAgICAgPHRlc3QgcXVhbD0iYW55IiBuYW1lPSJmYW1pbHkiPgo=
</data>
<flag name="review"
          id="67024"
          type_id="1"
          status="+"
          setter="xan.lopez"
    />
          </attachment>
      

    </bug>

</bugzilla>