<?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>22665</bug_id>
          
          <creation_ts>2008-12-04 16:57:23 -0800</creation_ts>
          <short_desc>Remove setCreatedByParser(bool) from the few elements that use it</short_desc>
          <delta_ts>2008-12-14 07:41:04 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Julien Chaffraix">jchaffraix</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>101415</commentid>
    <comment_count>0</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-04 16:57:23 -0800</bug_when>
    <thetext>When we use setCreatedByParser, it is always just after having created the Element. It would make more sense to embed the logic into the ElementFactory (which already take a createdByParser parameter) and the Elements&apos; constructors.

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101423</commentid>
    <comment_count>1</comment_count>
      <attachid>25760</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-04 17:04:51 -0800</bug_when>
    <thetext>Created attachment 25760
First part: remove it for script elements</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101513</commentid>
    <comment_count>2</comment_count>
      <attachid>25760</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-12-05 10:02:58 -0800</bug_when>
    <thetext>Comment on attachment 25760
First part: remove it for script elements

It seems ugly to have to put those details into the .in file -- why not always have a setCreatedByParser function that&apos;s an inline that does nothing instead? I don&apos;t think this is a real improvement.

r=me on this if you really think it&apos;s needed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101530</commentid>
    <comment_count>3</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-05 11:46:01 -0800</bug_when>
    <thetext>Before replying to your comment, my goal is either harmonize the HTMLElements&apos; signature or tweak the factory generation using the .in file. The final goal is to generate HTMLElementFactory so I am quite open on the path to choose.

(In reply to comment #2)
&gt; (From update of attachment 25760 [review])
&gt; It seems ugly to have to put those details into the .in file -- why not always
&gt; have a setCreatedByParser function that&apos;s an inline that does nothing instead?

I don&apos;t think adding 20 or so empty setCreatedByParser methods is also an improvement. I find the method setCreatedByParser to be artifical as it is called just after the constructor was called so I would rather see the constructor modified to take the createdByParser boolean parameter instead. Unfortunately in both cases, we would not know which element use the createdByParser information anymore.

I have chosen this way for 2 reasons: first it would avoid changing all HTMLElements signature (or add the setCreatedByParser method) by just tweaking the code generation for those required. Also removing setCreatedByParser means removing XMLTokenizer::eventuallyMarkAsParserCreated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101881</commentid>
    <comment_count>4</comment_count>
      <attachid>25760</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-08 16:07:25 -0800</bug_when>
    <thetext>Comment on attachment 25760
First part: remove it for script elements

Landed the first part in r39111.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102008</commentid>
    <comment_count>5</comment_count>
      <attachid>25895</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-09 13:44:38 -0800</bug_when>
    <thetext>Created attachment 25895
Second part - remove style and link elements&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102011</commentid>
    <comment_count>6</comment_count>
      <attachid>25896</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-09 13:47:41 -0800</bug_when>
    <thetext>Created attachment 25896
Third and last part : remove it from frame and iframe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102018</commentid>
    <comment_count>7</comment_count>
      <attachid>25895</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-12-09 14:54:02 -0800</bug_when>
    <thetext>Comment on attachment 25895
Second part - remove style and link elements&apos;

Looks great!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102020</commentid>
    <comment_count>8</comment_count>
      <attachid>25896</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-12-09 14:56:21 -0800</bug_when>
    <thetext>Comment on attachment 25896
Third and last part : remove it from frame and iframe

Why is this right?

-    : HTMLFrameOwnerElement(tagName, doc)
+    : HTMLFrameOwnerElement(tagName, doc, false)


Please indicate why in the bug, and ideally add a comment to the code explaining why that&apos;s correct when landing.

Otherwise looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102025</commentid>
    <comment_count>9</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-09 15:09:52 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 25896 [review])
&gt; Why is this right?
&gt; 
&gt; -    : HTMLFrameOwnerElement(tagName, doc)
&gt; +    : HTMLFrameOwnerElement(tagName, doc, false)
&gt; 
&gt; 
&gt; Please indicate why in the bug, and ideally add a comment to the code
&gt; explaining why that&apos;s correct when landing.

I have kept the original behaviour: we were not calling setCreatedByParser on 
an HTMLPluginElement so the default value (false) would be used.
I am not sure why we are ignoring the createdByParser flag on HTMLPluginElement so I could add a comment to point that it is strange or just fix it now. Both are fine by me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102033</commentid>
    <comment_count>10</comment_count>
      <attachid>25896</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-12-09 16:13:45 -0800</bug_when>
    <thetext>Comment on attachment 25896
Third and last part : remove it from frame and iframe

&gt;  HTMLPlugInElement::HTMLPlugInElement(const QualifiedName&amp; tagName, Document* doc)
&gt; -    : HTMLFrameOwnerElement(tagName, doc)
&gt; +    : HTMLFrameOwnerElement(tagName, doc, false)
&gt;  #if ENABLE(NETSCAPE_PLUGIN_API)
&gt;      , m_NPObject(0)
&gt;  #endif

I think you stumbled on a bug here.

You should comment about the fact that this is strange.

You should consider filing a bug report.

You consider thinking about what the symptom of the bug would be. What does HTMLFrameOwnerElement do differently when created by the parser? And then construct a test case. And then fix the bug.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102047</commentid>
    <comment_count>11</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-09 17:16:09 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 25896 [review])
&gt; &gt;  HTMLPlugInElement::HTMLPlugInElement(const QualifiedName&amp; tagName, Document* doc)
&gt; &gt; -    : HTMLFrameOwnerElement(tagName, doc)
&gt; &gt; +    : HTMLFrameOwnerElement(tagName, doc, false)
&gt; &gt;  #if ENABLE(NETSCAPE_PLUGIN_API)
&gt; &gt;      , m_NPObject(0)
&gt; &gt;  #endif
&gt; 
&gt; I think you stumbled on a bug here.
&gt; 
&gt; You should comment about the fact that this is strange.

I will before landing.

&gt; You should consider filing a bug report.

Sure.

&gt; 
&gt; You consider thinking about what the symptom of the bug would be. What does
&gt; HTMLFrameOwnerElement do differently when created by the parser? And then
&gt; construct a test case. And then fix the bug.

I do not think there is changes at construction time. I think that the return value of HTMLFrameOwnerElement::createdByParser() would modify some methods&apos; behaviour. I have done some investigation and the only method using it is FrameLoader::updateHistoryForStandardLoad(). I will do some more research later before closing this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102126</commentid>
    <comment_count>12</comment_count>
      <attachid>25895</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-10 11:19:39 -0800</bug_when>
    <thetext>Comment on attachment 25895
Second part - remove style and link elements&apos;

Landed the second part in r39180.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102488</commentid>
    <comment_count>13</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-14 03:39:09 -0800</bug_when>
    <thetext>Ok, I have filed a follow up bug about the HTMLPlugInElement issue (bug22851) as I would like to land the changes and move forward.
I will add a comment about the odd part in HTMLPlugInElement and point to the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102493</commentid>
    <comment_count>14</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2008-12-14 07:41:04 -0800</bug_when>
    <thetext>Landed the last patch in r39292.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25760</attachid>
            <date>2008-12-04 17:04:51 -0800</date>
            <delta_ts>2008-12-08 16:07:25 -0800</delta_ts>
            <desc>First part: remove it for script elements</desc>
            <filename>CreatedByParser-script.diff</filename>
            <type>text/plain</type>
            <size>8361</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTAwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMDgtMTItMDQgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQnVnIDIyNjY1OiBSZW1vdmUgc2V0Q3JlYXRlZEJ5UGFyc2VyKGJvb2wpIGZyb20gdGhl
IGZldyBlbGVtZW50cyB0aGF0IHVzZSBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI2NjUKKworICAgICAgICBSZW1vdmUgc2V0Q3JlYXRlQnlQYXJz
ZXIgZnJvbSB0aGUgc2NyaXB0IGVsZW1lbnRzIChIVE1MIGFuZCBTVkcpLgorCisgICAgICAgICog
ZG9tL1hNTFRva2VuaXplci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpYTUxUb2tlbml6ZXI6OmV2
ZW50dWFsbHlNYXJrQXNQYXJzZXJDcmVhdGVkKTogUmVtb3ZlZAorICAgICAgICBjYWxsIHRvIHNl
dENyZWF0ZWRCeVBhcnNlciBmb3IgdGhlIDIgZWxlbWVudHMuCisKKyAgICAgICAgKiBkb20vbWFr
ZV9uYW1lcy5wbDogTW9kaWZpZWQgdG8gY2FsbCB0aGUgY29uc3RydWN0b3Igd2l0aAorICAgICAg
ICB0aGUgY3JlYXRlQnlQYXJzZXIgcGFyYW1ldGVyIGlmICdjb25zdHJ1Y3Rvck5lZWRzQ3JlYXRl
ZEJ5UGFyc2VyJworICAgICAgICBpcyBzZXQuCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50
RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzY3JpcHRDb25zdHJ1Y3Rvcik6CisgICAg
ICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
U2NyaXB0RWxlbWVudDo6SFRNTFNjcmlwdEVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTFNj
cmlwdEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxUYWdOYW1lcy5pbjogQWRkZWQgY29u
c3RydWN0b3JOZWVkc0NyZWF0ZWRCeVBhcnNlcgorICAgICAgICB0byBzY3JpcHQuCisgICAgICAg
ICogc3ZnL1NWR1NjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU2NyaXB0
RWxlbWVudDo6U1ZHU2NyaXB0RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR1NjcmlwdEVsZW1l
bnQuaDoKKyAgICAgICAgKiBzdmcvc3ZndGFncy5pbjogQWRkZWQgY29uc3RydWN0b3JOZWVkc0Ny
ZWF0ZWRCeVBhcnNlcgorICAgICAgICB0byBzY3JpcHQuCisKIDIwMDgtMTItMDQgIEtldmluIFdh
dHRlcnMgIDxrZXZpbndhdHRlcnNAZ21haWwuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtl
dmluIE9sbGl2aWVyLgpJbmRleDogV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXIuY3BwCShyZXZpc2lvbiAzOTAwNykKKysr
IFdlYkNvcmUvZG9tL1hNTFRva2VuaXplci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzNCwxMyAr
MTM0LDcgQEAgYm9vbCBYTUxUb2tlbml6ZXI6OndyaXRlKGNvbnN0IFNlZ21lbnRlZAogCiB2b2lk
IFhNTFRva2VuaXplcjo6ZXZlbnR1YWxseU1hcmtBc1BhcnNlckNyZWF0ZWQoRWxlbWVudCogZWxl
bWVudCkKIHsKLSAgICBpZiAoZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OnNjcmlwdFRh
ZykpCi0gICAgICAgIHN0YXRpY19jYXN0PEhUTUxTY3JpcHRFbGVtZW50Kj4oZWxlbWVudCktPnNl
dENyZWF0ZWRCeVBhcnNlcih0cnVlKTsKLSNpZiBFTkFCTEUoU1ZHKQotICAgIGVsc2UgaWYgKGVs
ZW1lbnQtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnNjcmlwdFRhZykpCi0gICAgICAgIHN0YXRpY19j
YXN0PFNWR1NjcmlwdEVsZW1lbnQqPihlbGVtZW50KS0+c2V0Q3JlYXRlZEJ5UGFyc2VyKHRydWUp
OwotI2VuZGlmCi0gICAgZWxzZSBpZiAoZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OnN0
eWxlVGFnKSkKKyAgICBpZiAoZWxlbWVudC0+aGFzVGFnTmFtZShIVE1MTmFtZXM6OnN0eWxlVGFn
KSkKICAgICAgICAgc3RhdGljX2Nhc3Q8SFRNTFN0eWxlRWxlbWVudCo+KGVsZW1lbnQpLT5zZXRD
cmVhdGVkQnlQYXJzZXIodHJ1ZSk7CiAjaWYgRU5BQkxFKFNWRykKICAgICBlbHNlIGlmIChlbGVt
ZW50LT5oYXNUYWdOYW1lKFNWR05hbWVzOjpzdHlsZVRhZykpCkluZGV4OiBXZWJDb3JlL2RvbS9t
YWtlX25hbWVzLnBsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL21ha2VfbmFtZXMucGwJKHJl
dmlzaW9uIDM5MDA3KQorKysgV2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbAkod29ya2luZyBjb3B5
KQpAQCAtOTAsNiArOTAsNyBAQCBzdWIgaW5pdGlhbGl6ZVRhZ1Byb3BlcnR5SGFzaAogICAgICAg
ICAgICAgJ2ludGVyZmFjZU5hbWUnID0+IGRlZmF1bHRJbnRlcmZhY2VOYW1lKCRfWzBdKSwKICAg
ICAgICAgICAgICMgQnkgZGVmYXVsdCwgdGhlIEpTSW50ZXJmYWNlTmFtZSBpcyB0aGUgc2FtZSBh
cyB0aGUgaW50ZXJmYWNlTmFtZS4KICAgICAgICAgICAgICdKU0ludGVyZmFjZU5hbWUnID0+IGRl
ZmF1bHRJbnRlcmZhY2VOYW1lKCRfWzBdKSwKKyAgICAgICAgICAgICdjb25zdHJ1Y3Rvck5lZWRz
Q3JlYXRlZEJ5UGFyc2VyJyA9PiAwLAogICAgICAgICAgICAgJ3dyYXBwZXJPbmx5SWZNZWRpYUlz
QXZhaWxhYmxlJyA9PiAwKTsKIH0KIApAQCAtMjE4LDcgKzIxOSwxMSBAQCBzdWIgcHJpbnRDb25z
dHJ1Y3RvcnMKIAogICAgICAgICBwcmludCBGICJzdGF0aWMgUGFzc1JlZlB0cjwkcGFyYW1ldGVy
c3snbmFtZXNwYWNlJ31FbGVtZW50PiAke25hbWV9Q29uc3RydWN0b3IoRG9jdW1lbnQqIGRvYywg
Ym9vbCBjcmVhdGVkQnlQYXJzZXIpXG4iOwogICAgICAgICBwcmludCBGICJ7XG4iOwotICAgICAg
ICBwcmludCBGICIgICAgcmV0dXJuIG5ldyAke3VjTmFtZX0oJHBhcmFtZXRlcnN7J25hbWVzcGFj
ZSd9TmFtZXM6OiR7bmFtZX1UYWcsIGRvYyk7XG4iOworICAgICAgICBpZiAoJHRhZ3N7JG5hbWV9
eydjb25zdHJ1Y3Rvck5lZWRzQ3JlYXRlZEJ5UGFyc2VyJ30pIHsKKyAgICAgICAgICAgIHByaW50
IEYgIiAgICByZXR1cm4gbmV3ICR7dWNOYW1lfSgkcGFyYW1ldGVyc3snbmFtZXNwYWNlJ31OYW1l
czo6JHtuYW1lfVRhZywgZG9jLCBjcmVhdGVkQnlQYXJzZXIpO1xuIjsKKyAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgIHByaW50IEYgIiAgICByZXR1cm4gbmV3ICR7dWNOYW1lfSgkcGFyYW1l
dGVyc3snbmFtZXNwYWNlJ31OYW1lczo6JHtuYW1lfVRhZywgZG9jKTtcbiI7CisgICAgICAgIH0K
ICAgICAgICAgcHJpbnQgRiAifVxuXG4iOwogICAgIH0KICAgICBwcmludCBGICIjZW5kaWZcbiIg
aWYgJHBhcmFtZXRlcnN7J2d1YXJkRmFjdG9yeVdpdGgnfTsKSW5kZXg6IFdlYkNvcmUvaHRtbC9I
VE1MRWxlbWVudEZhY3RvcnkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudEZhY3RvcnkuY3BwCShyZXZpc2lvbiAzOTAwNykKKysrIFdlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudEZhY3RvcnkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMzksOSArMzM5LDcgQEAgc3RhdGlj
IFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IHBhcmFtQ29ucwogCiBzdGF0aWMgUGFzc1JlZlB0cjxI
VE1MRWxlbWVudD4gc2NyaXB0Q29uc3RydWN0b3IoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3Vt
ZW50KiBkb2MsIEhUTUxGb3JtRWxlbWVudCosIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogewotICAg
IFJlZlB0cjxIVE1MU2NyaXB0RWxlbWVudD4gc2NyaXB0ID0gbmV3IEhUTUxTY3JpcHRFbGVtZW50
KHNjcmlwdFRhZywgZG9jKTsKLSAgICBzY3JpcHQtPnNldENyZWF0ZWRCeVBhcnNlcihjcmVhdGVk
QnlQYXJzZXIpOwotICAgIHJldHVybiBzY3JpcHQucmVsZWFzZSgpOworICAgIHJldHVybiBuZXcg
SFRNTFNjcmlwdEVsZW1lbnQoc2NyaXB0VGFnLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcik7CiB9CiAK
IHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiB0YWJsZUNvbnN0cnVjdG9yKGNvbnN0IFF1
YWxpZmllZE5hbWUmLCBEb2N1bWVudCogZG9jLCBIVE1MRm9ybUVsZW1lbnQqLCBib29sKQpJbmRl
eDogV2ViQ29yZS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwCShyZXZpc2lvbiAzOTAwNykKKysrIFdlYkNv
cmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDExICsz
MiwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7
CiAKLUhUTUxTY3JpcHRFbGVtZW50OjpIVE1MU2NyaXB0RWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jKQorSFRNTFNjcmlwdEVsZW1lbnQ6OkhUTUxTY3Jp
cHRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2MsIGJv
b2wgY3JlYXRlZEJ5UGFyc2VyKQogICAgIDogSFRNTEVsZW1lbnQodGFnTmFtZSwgZG9jKQogICAg
ICwgbV9kYXRhKHRoaXMsIHRoaXMpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUoc2NyaXB0VGFn
KSk7CisgICAgbV9kYXRhLnNldENyZWF0ZWRCeVBhcnNlcihjcmVhdGVkQnlQYXJzZXIpOwogfQog
CiBIVE1MU2NyaXB0RWxlbWVudDo6fkhUTUxTY3JpcHRFbGVtZW50KCkKQEAgLTQ4LDExICs0OSw2
IEBAIGJvb2wgSFRNTFNjcmlwdEVsZW1lbnQ6OmlzVVJMQXR0cmlidXRlKEEKICAgICByZXR1cm4g
YXR0ci0+bmFtZSgpID09IHNvdXJjZUF0dHJpYnV0ZVZhbHVlKCk7CiB9CiAKLXZvaWQgSFRNTFNj
cmlwdEVsZW1lbnQ6OnNldENyZWF0ZWRCeVBhcnNlcihib29sIGNyZWF0ZWRCeVBhcnNlcikKLXsK
LSAgICBtX2RhdGEuc2V0Q3JlYXRlZEJ5UGFyc2VyKGNyZWF0ZWRCeVBhcnNlcik7Ci19Ci0KIGJv
b2wgSFRNTFNjcmlwdEVsZW1lbnQ6OnNob3VsZEV4ZWN1dGVBc0phdmFTY3JpcHQoKSBjb25zdAog
ewogICAgIHJldHVybiBtX2RhdGEuc2hvdWxkRXhlY3V0ZUFzSmF2YVNjcmlwdCgpOwpJbmRleDog
V2ViQ29yZS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9o
dG1sL0hUTUxTY3JpcHRFbGVtZW50LmgJKHJldmlzaW9uIDM5MDA3KQorKysgV2ViQ29yZS9odG1s
L0hUTUxTY3JpcHRFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDEwICszMiw5IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEhUTUxTY3JpcHRFbGVtZW50IDogcHVibGljIEhUTUxF
bGVtZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAsIHB1YmxpYyBTY3JpcHRFbGVtZW50IHsK
IHB1YmxpYzoKLSAgICBIVE1MU2NyaXB0RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQqKTsKKyAgICBIVE1MU2NyaXB0RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQqLCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAgICAgfkhUTUxTY3JpcHRFbGVtZW50KCk7
CiAKLSAgICB2b2lkIHNldENyZWF0ZWRCeVBhcnNlcihib29sKTsKICAgICBib29sIHNob3VsZEV4
ZWN1dGVBc0phdmFTY3JpcHQoKSBjb25zdDsKICAgICB2aXJ0dWFsIFN0cmluZyBzY3JpcHRDb250
ZW50KCkgY29uc3Q7CiAKSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgkocmV2aXNpb24gMzkwMDcpCisr
KyBXZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVzLmluCSh3b3JraW5nIGNvcHkpCkBAIC04NSw3ICs4
NSw3IEBAIHByZQogcSBpbnRlcmZhY2VOYW1lPUhUTUxRdW90ZUVsZW1lbnQKIHMgSlNJbnRlcmZh
Y2VOYW1lPUhUTUxFbGVtZW50CiBzYW1wIEpTSW50ZXJmYWNlTmFtZT1IVE1MRWxlbWVudAotc2Ny
aXB0CitzY3JpcHQgY29uc3RydWN0b3JOZWVkc0NyZWF0ZWRCeVBhcnNlcj0xCiBzZWxlY3QKIHNt
YWxsIEpTSW50ZXJmYWNlTmFtZT1IVE1MRWxlbWVudAogI2lmIEVOQUJMRV9WSURFTwpJbmRleDog
V2ViQ29yZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHU2NyaXB0RWxlbWVudC5jcHAJKHJldmlzaW9uIDM5MDA3KQorKysgV2ViQ29yZS9zdmcv
U1ZHU2NyaXB0RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwLDIzICszMCwxOSBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVNWR1NjcmlwdEVsZW1lbnQ6OlNWR1NjcmlwdEVsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvYykKK1NWR1Njcmlw
dEVsZW1lbnQ6OlNWR1NjcmlwdEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwg
RG9jdW1lbnQqIGRvYywgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCiAgICAgOiBTVkdFbGVtZW50KHRh
Z05hbWUsIGRvYykKICAgICAsIFNWR1VSSVJlZmVyZW5jZSgpCiAgICAgLCBTVkdFeHRlcm5hbFJl
c291cmNlc1JlcXVpcmVkKCkKICAgICAsIG1fZGF0YSh0aGlzLCB0aGlzKQogeworICAgIG1fZGF0
YS5zZXRDcmVhdGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKTsKIH0KIAogU1ZHU2NyaXB0RWxl
bWVudDo6flNWR1NjcmlwdEVsZW1lbnQoKQogewogfQogCi12b2lkIFNWR1NjcmlwdEVsZW1lbnQ6
OnNldENyZWF0ZWRCeVBhcnNlcihib29sIGNyZWF0ZWRCeVBhcnNlcikKLXsKLSAgICBtX2RhdGEu
c2V0Q3JlYXRlZEJ5UGFyc2VyKGNyZWF0ZWRCeVBhcnNlcik7Ci19Ci0KIFN0cmluZyBTVkdTY3Jp
cHRFbGVtZW50OjpzY3JpcHRDb250ZW50KCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9kYXRhLnNj
cmlwdENvbnRlbnQoKTsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1NjcmlwdEVsZW1lbnQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmgJKHJldmlzaW9uIDM5MDA3
KQorKysgV2ViQ29yZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0z
NiwxMCArMzYsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAsIHB1YmxpYyBTY3JpcHRFbGVtZW50IHsKICAgICBwdWJsaWM6Ci0gICAg
ICAgIFNWR1NjcmlwdEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7Cisg
ICAgICAgIFNWR1NjcmlwdEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kiwg
Ym9vbCBjcmVhdGVkQnlQYXJzZXIpOwogICAgICAgICB2aXJ0dWFsIH5TVkdTY3JpcHRFbGVtZW50
KCk7CiAKLSAgICAgICAgdm9pZCBzZXRDcmVhdGVkQnlQYXJzZXIoYm9vbCk7CiAgICAgICAgIHZp
cnR1YWwgU3RyaW5nIHNjcmlwdENvbnRlbnQoKSBjb25zdDsKIAogICAgICAgICB2aXJ0dWFsIHZv
aWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoTWFwcGVkQXR0cmlidXRlKik7CkluZGV4OiBXZWJDb3Jl
L3N2Zy9zdmd0YWdzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL3N2Z3RhZ3MuaW4JKHJl
dmlzaW9uIDM5MDA3KQorKysgV2ViQ29yZS9zdmcvc3ZndGFncy5pbgkod29ya2luZyBjb3B5KQpA
QCAtOTgsNyArOTgsNyBAQCBwb2x5Z29uCiBwb2x5bGluZQogcmFkaWFsR3JhZGllbnQKIHJlY3QK
LXNjcmlwdAorc2NyaXB0IGNvbnN0cnVjdG9yTmVlZHNDcmVhdGVkQnlQYXJzZXI9MQogc3RvcAog
c3R5bGUKIHN2ZyBpbnRlcmZhY2VOYW1lPVNWR1NWR0VsZW1lbnQK
</data>
<flag name="review"
          id="12053"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25895</attachid>
            <date>2008-12-09 13:44:38 -0800</date>
            <delta_ts>2008-12-10 11:19:39 -0800</delta_ts>
            <desc>Second part - remove style and link elements&apos;</desc>
            <filename>CreatedByParser-style-link.diff</filename>
            <type>text/plain</type>
            <size>11270</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTE0MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzUgQEAKKzIwMDgtMTItMDkgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQnVnIDIyNjY1OiBSZW1vdmUgc2V0Q3JlYXRlZEJ5UGFyc2VyKGJvb2wpIGZyb20gdGhl
IGZldyBlbGVtZW50cyB0aGF0IHVzZSBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI2NjUKKworICAgICAgICAtIFJlbW92ZWQgc2V0Q3JlYXRlZEJ5
UGFyc2VyIGZyb20gc3R5bGUgYW5kIGxpbmsgZWxlbWVudHMuCisKKyAgICAgICAgLSBSZW1vdmVk
IFhNTFRva2VuaXplcjo6ZXZlbnR1YWxseU1hcmtBc0NyZWF0ZWRCeVBhcnNlci4KKworICAgICAg
ICAqIGRvbS9YTUxUb2tlbml6ZXIuY3BwOgorICAgICAgICAqIGRvbS9YTUxUb2tlbml6ZXIuaDoK
KyAgICAgICAgKiBkb20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxUb2tlbml6ZXI6OnN0YXJ0RWxlbWVudE5zKToKKyAgICAgICAgKiBkb20vWE1MVG9rZW5p
emVyUXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6WE1MVG9rZW5pemVyOjpwYXJzZVN0YXJ0RWxl
bWVudCk6CisgICAgICAgICogaHRtbC9IVE1MRWxlbWVudEZhY3RvcnkuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6bGlua0NvbnN0cnVjdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OnN0eWxlQ29uc3Ry
dWN0b3IpOgorICAgICAgICAqIGh0bWwvSFRNTExpbmtFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6SFRNTExpbmtFbGVtZW50KToKKyAgICAgICAgKiBodG1s
L0hUTUxMaW5rRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVtZW50OjpIVE1MU3R5bGVFbGVtZW50KToK
KyAgICAgICAgKiBodG1sL0hUTUxTdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxU
YWdOYW1lcy5pbjoKKyAgICAgICAgKiBzdmcvU1ZHU3R5bGVFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlNWR1N0eWxlRWxlbWVudDo6U1ZHU3R5bGVFbGVtZW50KToKKyAgICAgICAgKiBz
dmcvU1ZHU3R5bGVFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL3N2Z3RhZ3MuaW46CisKIDIwMDgt
MTItMDkgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFRyeSB0byBm
aXggbm9uLU1hYyBidWlsZHMuCkluZGV4OiBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXIuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL1hNTFRva2VuaXplci5jcHAJKHJldmlzaW9uIDM5MTQw
KQorKysgV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTMy
LDE5ICsxMzIsNiBAQCBib29sIFhNTFRva2VuaXplcjo6d3JpdGUoY29uc3QgU2VnbWVudGVkCiAg
ICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIFhNTFRva2VuaXplcjo6ZXZlbnR1YWxseU1hcmtB
c1BhcnNlckNyZWF0ZWQoRWxlbWVudCogZWxlbWVudCkKLXsKLSAgICBpZiAoZWxlbWVudC0+aGFz
VGFnTmFtZShIVE1MTmFtZXM6OnN0eWxlVGFnKSkKLSAgICAgICAgc3RhdGljX2Nhc3Q8SFRNTFN0
eWxlRWxlbWVudCo+KGVsZW1lbnQpLT5zZXRDcmVhdGVkQnlQYXJzZXIodHJ1ZSk7Ci0jaWYgRU5B
QkxFKFNWRykKLSAgICBlbHNlIGlmIChlbGVtZW50LT5oYXNUYWdOYW1lKFNWR05hbWVzOjpzdHls
ZVRhZykpCi0gICAgICAgIHN0YXRpY19jYXN0PFNWR1N0eWxlRWxlbWVudCo+KGVsZW1lbnQpLT5z
ZXRDcmVhdGVkQnlQYXJzZXIodHJ1ZSk7Ci0jZW5kaWYKLSAgICBlbHNlIGlmIChlbGVtZW50LT5o
YXNUYWdOYW1lKEhUTUxOYW1lczo6bGlua1RhZykpCi0gICAgICAgIHN0YXRpY19jYXN0PEhUTUxM
aW5rRWxlbWVudCo+KGVsZW1lbnQpLT5zZXRDcmVhdGVkQnlQYXJzZXIodHJ1ZSk7Ci19Ci0KLQog
dm9pZCBYTUxUb2tlbml6ZXI6OmhhbmRsZUVycm9yKEVycm9yVHlwZSB0eXBlLCBjb25zdCBjaGFy
KiBtLCBpbnQgbGluZU51bWJlciwgaW50IGNvbHVtbk51bWJlcikKIHsKICAgICBpZiAodHlwZSA9
PSBmYXRhbCB8fCAobV9lcnJvckNvdW50IDwgbWF4RXJyb3JzICYmIG1fbGFzdEVycm9yTGluZSAh
PSBsaW5lTnVtYmVyICYmIG1fbGFzdEVycm9yQ29sdW1uICE9IGNvbHVtbk51bWJlcikpIHsKSW5k
ZXg6IFdlYkNvcmUvZG9tL1hNTFRva2VuaXplci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9t
L1hNTFRva2VuaXplci5oCShyZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUvZG9tL1hNTFRva2Vu
aXplci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTgsNyArMTE4LDYgQEAgcHVibGljOgogICAgIHBy
aXZhdGU6CiAgICAgICAgIGZyaWVuZCBib29sIHBhcnNlWE1MRG9jdW1lbnRGcmFnbWVudChjb25z
dCBTdHJpbmcmIGNodW5rLCBEb2N1bWVudEZyYWdtZW50KiBmcmFnbWVudCwgRWxlbWVudCogcGFy
ZW50KTsKIAotICAgICAgICBzdGF0aWMgdm9pZCBldmVudHVhbGx5TWFya0FzUGFyc2VyQ3JlYXRl
ZChFbGVtZW50KiBlbGVtZW50KTsKICAgICAgICAgdm9pZCBpbml0aWFsaXplUGFyc2VyQ29udGV4
dChjb25zdCBjaGFyKiBjaHVuayA9IDApOwogICAgICAgICB2b2lkIHNldEN1cnJlbnROb2RlKE5v
ZGUqKTsKIApJbmRleDogV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHAJKHJldmlzaW9uIDM5
MTQwKQorKysgV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTc1NCw3ICs3NTQsNiBAQCB2b2lkIFhNTFRva2VuaXplcjo6c3RhcnRFbGVtZW50TnMo
Y29uc3QgCiAgICAgICAgIGpzUHJveHktPnNldEV2ZW50SGFuZGxlckxpbmVubygwKTsKIAogICAg
IG5ld0VsZW1lbnQtPmJlZ2luUGFyc2luZ0NoaWxkcmVuKCk7Ci0gICAgZXZlbnR1YWxseU1hcmtB
c1BhcnNlckNyZWF0ZWQobmV3RWxlbWVudC5nZXQoKSk7CiAKICAgICBpZiAoaXNTY3JpcHRFbGVt
ZW50KG5ld0VsZW1lbnQuZ2V0KCkpKQogICAgICAgICBtX3NjcmlwdFN0YXJ0TGluZSA9IGxpbmVO
dW1iZXIoKTsKSW5kZXg6IFdlYkNvcmUvZG9tL1hNTFRva2VuaXplclF0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXJRdC5jcHAJKHJldmlzaW9uIDM5MTQwKQorKysg
V2ViQ29yZS9kb20vWE1MVG9rZW5pemVyUXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NDAsOCAr
NTQwLDYgQEAgdm9pZCBYTUxUb2tlbml6ZXI6OnBhcnNlU3RhcnRFbGVtZW50KCkKICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAotICAgIGV2ZW50dWFsbHlNYXJrQXNQYXJzZXJDcmVhdGVkKG5ld0Vs
ZW1lbnQuZ2V0KCkpOwotCiAgICAgaWYgKGlzU2NyaXB0RWxlbWVudChuZXdFbGVtZW50LmdldCgp
KSkKICAgICAgICAgbV9zY3JpcHRTdGFydExpbmUgPSBsaW5lTnVtYmVyKCk7CiAKSW5kZXg6IFdl
YkNvcmUvaHRtbC9IVE1MRWxlbWVudEZhY3RvcnkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
aHRtbC9IVE1MRWxlbWVudEZhY3RvcnkuY3BwCShyZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUv
aHRtbC9IVE1MRWxlbWVudEZhY3RvcnkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTUsOSArMTE1
LDcgQEAgc3RhdGljIFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IGJhc2VDb25zdAogCiBzdGF0aWMg
UGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gbGlua0NvbnN0cnVjdG9yKGNvbnN0IFF1YWxpZmllZE5h
bWUmLCBEb2N1bWVudCogZG9jLCBIVE1MRm9ybUVsZW1lbnQqLCBib29sIGNyZWF0ZWRCeVBhcnNl
cikKIHsKLSAgICBSZWZQdHI8SFRNTExpbmtFbGVtZW50PiBsaW5rID0gbmV3IEhUTUxMaW5rRWxl
bWVudChsaW5rVGFnLCBkb2MpOwotICAgIGxpbmstPnNldENyZWF0ZWRCeVBhcnNlcihjcmVhdGVk
QnlQYXJzZXIpOwotICAgIHJldHVybiBsaW5rLnJlbGVhc2UoKTsKKyAgICByZXR1cm4gbmV3IEhU
TUxMaW5rRWxlbWVudChsaW5rVGFnLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcik7CiB9CiAKIHN0YXRp
YyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBtZXRhQ29uc3RydWN0b3IoY29uc3QgUXVhbGlmaWVk
TmFtZSYsIERvY3VtZW50KiBkb2MsIEhUTUxGb3JtRWxlbWVudCosIGJvb2wpCkBAIC0xMjcsOSAr
MTI1LDcgQEAgc3RhdGljIFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IG1ldGFDb25zdAogCiBzdGF0
aWMgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gc3R5bGVDb25zdHJ1Y3Rvcihjb25zdCBRdWFsaWZp
ZWROYW1lJiwgRG9jdW1lbnQqIGRvYywgSFRNTEZvcm1FbGVtZW50KiwgYm9vbCBjcmVhdGVkQnlQ
YXJzZXIpCiB7Ci0gICAgUmVmUHRyPEhUTUxTdHlsZUVsZW1lbnQ+IHN0eWxlID0gbmV3IEhUTUxT
dHlsZUVsZW1lbnQoc3R5bGVUYWcsIGRvYyk7Ci0gICAgc3R5bGUtPnNldENyZWF0ZWRCeVBhcnNl
cihjcmVhdGVkQnlQYXJzZXIpOwotICAgIHJldHVybiBzdHlsZS5yZWxlYXNlKCk7CisgICAgcmV0
dXJuIG5ldyBIVE1MU3R5bGVFbGVtZW50KHN0eWxlVGFnLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcik7
CiB9CiAKIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiB0aXRsZUNvbnN0cnVjdG9yKGNv
bnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCogZG9jLCBIVE1MRm9ybUVsZW1lbnQqLCBib29s
KQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAJKHJldmlzaW9uIDM5MTQwKQorKysgV2Vi
Q29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQyLDcgKzQy
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwog
Ci1IVE1MTGlua0VsZW1lbnQ6OkhUTUxMaW5rRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiBx
TmFtZSwgRG9jdW1lbnQgKmRvYykKK0hUTUxMaW5rRWxlbWVudDo6SFRNTExpbmtFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHFOYW1lLCBEb2N1bWVudCAqZG9jLCBib29sIGNyZWF0ZWRCeVBh
cnNlcikKICAgICA6IEhUTUxFbGVtZW50KHFOYW1lLCBkb2MpCiAgICAgLCBtX2NhY2hlZFNoZWV0
KDApCiAgICAgLCBtX2Rpc2FibGVkU3RhdGUoMCkKQEAgLTUxLDcgKzUxLDcgQEAgSFRNTExpbmtF
bGVtZW50OjpIVE1MTGlua0VsZW1lbnQoY29uc3QgUQogICAgICwgbV9pc1N0eWxlU2hlZXQoZmFs
c2UpCiAgICAgLCBtX2lzSWNvbihmYWxzZSkKICAgICAsIG1faXNETlNQcmVmZXRjaChmYWxzZSkK
LSAgICAsIG1fY3JlYXRlZEJ5UGFyc2VyKGZhbHNlKQorICAgICwgbV9jcmVhdGVkQnlQYXJzZXIo
Y3JlYXRlZEJ5UGFyc2VyKQogewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGxpbmtUYWcpKTsKIH0K
SW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmgJKHJldmlzaW9uIDM5MTQwKQorKysgV2ViQ29yZS9o
dG1sL0hUTUxMaW5rRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw3ICszNSw3IEBAIGNs
YXNzIEtVUkw7CiAKIGNsYXNzIEhUTUxMaW5rRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCwg
cHVibGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKIHB1YmxpYzoKLSAgICBIVE1MTGlua0VsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CisgICAgSFRNTExpbmtFbGVtZW50
KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKTsK
ICAgICB+SFRNTExpbmtFbGVtZW50KCk7CiAKICAgICB2aXJ0dWFsIEhUTUxUYWdTdGF0dXMgZW5k
VGFnUmVxdWlyZW1lbnQoKSBjb25zdCB7IHJldHVybiBUYWdTdGF0dXNGb3JiaWRkZW47IH0KQEAg
LTk3LDcgKzk3LDYgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIGFkZFN1YnJlc291cmNl
QXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OwogCi0gICAgdm9pZCBzZXRD
cmVhdGVkQnlQYXJzZXIoYm9vbCBjcmVhdGVkQnlQYXJzZXIpIHsgbV9jcmVhdGVkQnlQYXJzZXIg
PSBjcmVhdGVkQnlQYXJzZXI7IH0KICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoUGFyc2luZ0NoaWxk
cmVuKCk7CiAKIHByb3RlY3RlZDoKSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAJKHJl
dmlzaW9uIDM5MTQwKQorKysgV2ViQ29yZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMCwxMCArMzAsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2lu
ZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCi1IVE1MU3R5bGVFbGVtZW50OjpIVE1MU3R5bGVFbGVt
ZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2MpCitIVE1MU3R5
bGVFbGVtZW50OjpIVE1MU3R5bGVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUs
IERvY3VtZW50KiBkb2MsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQogICAgIDogSFRNTEVsZW1lbnQo
dGFnTmFtZSwgZG9jKQogICAgICwgbV9sb2FkaW5nKGZhbHNlKQotICAgICwgbV9jcmVhdGVkQnlQ
YXJzZXIoZmFsc2UpCisgICAgLCBtX2NyZWF0ZWRCeVBhcnNlcihjcmVhdGVkQnlQYXJzZXIpCiB7
CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUoc3R5bGVUYWcpKTsKIH0KSW5kZXg6IFdlYkNvcmUvaHRt
bC9IVE1MU3R5bGVFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxTdHls
ZUVsZW1lbnQuaAkocmV2aXNpb24gMzkxNDApCisrKyBXZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxl
bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsNCBAQAogLyoKLSAqIFRoaXMgZmlsZSBp
cyBwYXJ0IG9mIHRoZSBET00gaW1wbGVtZW50YXRpb24gZm9yIEtERS4KLSAqCiAgKiBDb3B5cmln
aHQgKEMpIDE5OTkgTGFycyBLbm9sbCAoa25vbGxAa2RlLm9yZykKICAqICAgICAgICAgICAoQykg
MTk5OSBBbnR0aSBLb2l2aXN0byAoa29pdmlzdG9Aa2RlLm9yZykKICAqIENvcHlyaWdodCAoQykg
MjAwMyBBcHBsZSBDb21wdXRlciwgSW5jLgpAQCAtMzMsNyArMzEsNyBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiBjbGFzcyBIVE1MU3R5bGVFbGVtZW50IDogcHVibGljIEhUTUxFbGVtZW50LCBwdWJs
aWMgU3R5bGVFbGVtZW50CiB7CiBwdWJsaWM6Ci0gICAgSFRNTFN0eWxlRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKKyAgICBIVE1MU3R5bGVFbGVtZW50KGNvbnN0IFF1
YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKTsKIAogICAgIHZp
cnR1YWwgSFRNTFRhZ1N0YXR1cyBlbmRUYWdSZXF1aXJlbWVudCgpIGNvbnN0IHsgcmV0dXJuIFRh
Z1N0YXR1c1JlcXVpcmVkOyB9CiAgICAgdmlydHVhbCBpbnQgdGFnUHJpb3JpdHkoKSBjb25zdCB7
IHJldHVybiAxOyB9CkBAIC00NSw3ICs0Myw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
cmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogICAgIHZpcnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQo
Ym9vbCBjaGFuZ2VkQnlQYXJzZXIgPSBmYWxzZSwgTm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9k
ZSogYWZ0ZXJDaGFuZ2UgPSAwLCBpbnQgY2hpbGRDb3VudERlbHRhID0gMCk7CiAKLSAgICB2b2lk
IHNldENyZWF0ZWRCeVBhcnNlcihib29sIGNyZWF0ZWRCeVBhcnNlcikgeyBtX2NyZWF0ZWRCeVBh
cnNlciA9IGNyZWF0ZWRCeVBhcnNlcjsgfQogICAgIHZpcnR1YWwgdm9pZCBmaW5pc2hQYXJzaW5n
Q2hpbGRyZW4oKTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRpbmcoKSBjb25zdDsKSW5kZXg6
IFdlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1s
L0hUTUxUYWdOYW1lcy5pbgkocmV2aXNpb24gMzkxNDApCisrKyBXZWJDb3JlL2h0bWwvSFRNTFRh
Z05hbWVzLmluCSh3b3JraW5nIGNvcHkpCkBAIC02Myw3ICs2Myw3IEBAIGxhYmVsCiBsYXllciBK
U0ludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKIGxlZ2VuZAogbGkgaW50ZXJmYWNlTmFtZT1IVE1M
TElFbGVtZW50Ci1saW5rCitsaW5rIGNvbnN0cnVjdG9yTmVlZHNDcmVhdGVkQnlQYXJzZXI9MQog
bGlzdGluZyBKU0ludGVyZmFjZU5hbWU9SFRNTFByZUVsZW1lbnQKIG1hcAogbWFycXVlZQpAQCAt
OTQsNyArOTQsNyBAQCBzb3VyY2Ugd3JhcHBlck9ubHlJZk1lZGlhSXNBdmFpbGFibGU9MQogc3Bh
biBKU0ludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKIHN0cmlrZSBKU0ludGVyZmFjZU5hbWU9SFRN
TEVsZW1lbnQKIHN0cm9uZyBKU0ludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKLXN0eWxlCitzdHls
ZSBjb25zdHJ1Y3Rvck5lZWRzQ3JlYXRlZEJ5UGFyc2VyPTEKIHN1YiBKU0ludGVyZmFjZU5hbWU9
SFRNTEVsZW1lbnQKIHN1cCBKU0ludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKIHRhYmxlCkluZGV4
OiBXZWJDb3JlL3N2Zy9TVkdTdHlsZUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
c3ZnL1NWR1N0eWxlRWxlbWVudC5jcHAJKHJldmlzaW9uIDM5MTQwKQorKysgV2ViQ29yZS9zdmcv
U1ZHU3R5bGVFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsOSArMzYsOSBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKLVNWR1N0eWxl
RWxlbWVudDo6U1ZHU3R5bGVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERv
Y3VtZW50KiBkb2MpCitTVkdTdHlsZUVsZW1lbnQ6OlNWR1N0eWxlRWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jLCBib29sIGNyZWF0ZWRCeVBhcnNlcikK
ICAgICAgOiBTVkdFbGVtZW50KHRhZ05hbWUsIGRvYykKLSAgICAgLCBtX2NyZWF0ZWRCeVBhcnNl
cihmYWxzZSkKKyAgICAgLCBtX2NyZWF0ZWRCeVBhcnNlcihjcmVhdGVkQnlQYXJzZXIpCiB7CiB9
CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5oCShyZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUv
c3ZnL1NWR1N0eWxlRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw3ICszMSw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIFNWR1N0eWxlRWxlbWVudCA6IHB1YmxpYyBT
VkdFbGVtZW50LCBwdWJsaWMgU3R5bGVFbGVtZW50IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIFNW
R1N0eWxlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKKyAgICAgICAg
U1ZHU3R5bGVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCosIGJvb2wgY3Jl
YXRlZEJ5UGFyc2VyKTsKIAogICAgICAgICAvLyBEZXJpdmVkIGZyb206ICdFbGVtZW50JwogICAg
ICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoTWFwcGVkQXR0cmlidXRlKik7
CkBAIC0zOSw3ICszOSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2
b2lkIHJlbW92ZWRGcm9tRG9jdW1lbnQoKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVu
Q2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2Ug
PSAwLCBOb2RlKiBhZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAot
ICAgICAgICB2b2lkIHNldENyZWF0ZWRCeVBhcnNlcihib29sIGNyZWF0ZWRCeVBhcnNlcikgeyBt
X2NyZWF0ZWRCeVBhcnNlciA9IGNyZWF0ZWRCeVBhcnNlcjsgfQogICAgICAgICB2aXJ0dWFsIHZv
aWQgZmluaXNoUGFyc2luZ0NoaWxkcmVuKCk7CiAKICAgICAgICAgLy8gJ1NWR1N0eWxlRWxlbWVu
dCcgZnVuY3Rpb25zCkluZGV4OiBXZWJDb3JlL3N2Zy9zdmd0YWdzLmluCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL3N2Z3RhZ3MuaW4JKHJldmlzaW9uIDM5MTQwKQorKysgV2ViQ29yZS9zdmcv
c3ZndGFncy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTAwLDcgKzEwMCw3IEBAIHJhZGlhbEdyYWRp
ZW50CiByZWN0CiBzY3JpcHQgY29uc3RydWN0b3JOZWVkc0NyZWF0ZWRCeVBhcnNlcj0xCiBzdG9w
Ci1zdHlsZQorc3R5bGUgY29uc3RydWN0b3JOZWVkc0NyZWF0ZWRCeVBhcnNlcj0xCiBzdmcgaW50
ZXJmYWNlTmFtZT1TVkdTVkdFbGVtZW50CiBzd2l0Y2gKIHN5bWJvbAo=
</data>
<flag name="review"
          id="12155"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25896</attachid>
            <date>2008-12-09 13:47:41 -0800</date>
            <delta_ts>2008-12-09 16:13:45 -0800</delta_ts>
            <desc>Third and last part : remove it from frame and iframe</desc>
            <filename>CreatedByParser-frame.diff</filename>
            <type>text/plain</type>
            <size>9955</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTE0MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMDgtMTItMDkgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQnVnIDIyNjY1OiBSZW1vdmUgc2V0Q3JlYXRlZEJ5UGFyc2VyKGJvb2wpIGZyb20gdGhl
IGZldyBlbGVtZW50cyB0aGF0IHVzZSBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI2NjUKKworICAgICAgICBSZW1vdmUgc2V0Q3JlYXRlZEJ5UGFy
c2VyIGZyb20gZnJhbWUgYW5kIGlmcmFtZS4KKworICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnRG
YWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmZyYW1lQ29uc3RydWN0b3IpOgorICAgICAg
ICAoV2ViQ29yZTo6aWZyYW1lQ29uc3RydWN0b3IpOgorICAgICAgICAoV2ViQ29yZTo6b2JqZWN0
Q29uc3RydWN0b3IpOgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRnJhbWVFbGVtZW50OjpIVE1MRnJhbWVFbGVtZW50KToKKyAgICAg
ICAgKiBodG1sL0hUTUxGcmFtZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxGcmFtZUVs
ZW1lbnRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGcmFtZUVsZW1lbnRCYXNlOjpI
VE1MRnJhbWVFbGVtZW50QmFzZSk6CisgICAgICAgICogaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFz
ZS5oOgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudDo6SFRNTEZyYW1lT3duZXJFbGVtZW50KToK
KyAgICAgICAgKiBodG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50OjpjcmVhdGVkQnlQYXJzZXIpOgorICAgICAgICAqIGh0
bWwvSFRNTElGcmFtZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElGcmFtZUVs
ZW1lbnQ6OkhUTUxJRnJhbWVFbGVtZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxJRnJhbWVFbGVt
ZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6SFRNTFBsdWdJbkVsZW1lbnQpOgorICAgICAgICAq
IGh0bWwvSFRNTFRhZ05hbWVzLmluOgorCiAyMDA4LTEyLTA5ICBEaW1pdHJpIEdsYXprb3YgIDxk
Z2xhemtvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRj
aGVyLgpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50RmFjdG9yeS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50RmFjdG9yeS5jcHAJKHJldmlzaW9uIDM5MTQw
KQorKysgV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50RmFjdG9yeS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTEzOSw5ICsxMzksNyBAQCBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gdGl0bGVD
b25zCiAKIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBmcmFtZUNvbnN0cnVjdG9yKGNv
bnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCogZG9jLCBIVE1MRm9ybUVsZW1lbnQqLCBib29s
IGNyZWF0ZWRCeVBhcnNlcikKIHsKLSAgICBSZWZQdHI8SFRNTEZyYW1lRWxlbWVudD4gZnJhbWUg
PSBuZXcgSFRNTEZyYW1lRWxlbWVudChmcmFtZVRhZywgZG9jKTsKLSAgICBmcmFtZS0+c2V0Q3Jl
YXRlZEJ5UGFyc2VyKGNyZWF0ZWRCeVBhcnNlcik7Ci0gICAgcmV0dXJuIGZyYW1lLnJlbGVhc2Uo
KTsgICAgCisgICAgcmV0dXJuIG5ldyBIVE1MRnJhbWVFbGVtZW50KGZyYW1lVGFnLCBkb2MsIGNy
ZWF0ZWRCeVBhcnNlcik7CiB9CiAKIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBmcmFt
ZXNldENvbnN0cnVjdG9yKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCogZG9jLCBIVE1M
Rm9ybUVsZW1lbnQqLCBib29sKQpAQCAtMTUxLDkgKzE0OSw3IEBAIHN0YXRpYyBQYXNzUmVmUHRy
PEhUTUxFbGVtZW50PiBmcmFtZXNldEMKIAogc3RhdGljIFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+
IGlmcmFtZUNvbnN0cnVjdG9yKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCogZG9jLCBI
VE1MRm9ybUVsZW1lbnQqLCBib29sIGNyZWF0ZWRCeVBhcnNlcikKIHsKLSAgICBSZWZQdHI8SFRN
TElGcmFtZUVsZW1lbnQ+IGlGcmFtZSA9IG5ldyBIVE1MSUZyYW1lRWxlbWVudChpZnJhbWVUYWcs
IGRvYyk7Ci0gICAgaUZyYW1lLT5zZXRDcmVhdGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKTsK
LSAgICByZXR1cm4gaUZyYW1lLnJlbGVhc2UoKTsgICAgCisgICAgcmV0dXJuIG5ldyBIVE1MSUZy
YW1lRWxlbWVudChpZnJhbWVUYWcsIGRvYywgY3JlYXRlZEJ5UGFyc2VyKTsKIH0KIAogc3RhdGlj
IFBhc3NSZWZQdHI8SFRNTEVsZW1lbnQ+IGZvcm1Db25zdHJ1Y3Rvcihjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqIGRvYywgSFRNTEZvcm1FbGVtZW50KiwgYm9vbCkKQEAgLTMyOCw4ICsz
MjQsNyBAQCBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gZW1iZWRDb25zCiAKIHN0YXRp
YyBQYXNzUmVmUHRyPEhUTUxFbGVtZW50PiBvYmplY3RDb25zdHJ1Y3Rvcihjb25zdCBRdWFsaWZp
ZWROYW1lJiwgRG9jdW1lbnQqIGRvYywgSFRNTEZvcm1FbGVtZW50KiwgYm9vbCBjcmVhdGVkQnlQ
YXJzZXIpCiB7Ci0gICAgUmVmUHRyPEhUTUxPYmplY3RFbGVtZW50PiBvYmplY3QgPSBuZXcgSFRN
TE9iamVjdEVsZW1lbnQob2JqZWN0VGFnLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcik7Ci0gICAgcmV0
dXJuIG9iamVjdC5yZWxlYXNlKCk7CisgICAgcmV0dXJuIG5ldyBIVE1MT2JqZWN0RWxlbWVudChv
YmplY3RUYWcsIGRvYywgY3JlYXRlZEJ5UGFyc2VyKTsKIH0KIAogc3RhdGljIFBhc3NSZWZQdHI8
SFRNTEVsZW1lbnQ+IHBhcmFtQ29uc3RydWN0b3IoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3Vt
ZW50KiBkb2MsIEhUTUxGb3JtRWxlbWVudCosIGJvb2wpCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRN
TEZyYW1lRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVs
ZW1lbnQuY3BwCShyZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVt
ZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzMsOCArMzMsOCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKLUhUTUxGcmFtZUVsZW1lbnQ6OkhU
TUxGcmFtZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRv
YykKLSAgICA6IEhUTUxGcmFtZUVsZW1lbnRCYXNlKHRhZ05hbWUsIGRvYykKK0hUTUxGcmFtZUVs
ZW1lbnQ6OkhUTUxGcmFtZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9j
dW1lbnQqIGRvYywgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCisgICAgOiBIVE1MRnJhbWVFbGVtZW50
QmFzZSh0YWdOYW1lLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcikKICAgICAsIG1fZnJhbWVCb3JkZXIo
dHJ1ZSkKICAgICAsIG1fZnJhbWVCb3JkZXJTZXQoZmFsc2UpCiB7CkluZGV4OiBXZWJDb3JlL2h0
bWwvSFRNTEZyYW1lRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MRnJh
bWVFbGVtZW50LmgJKHJldmlzaW9uIDM5MTQwKQorKysgV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVs
ZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDQgQEAKIC8qCi0gKiBUaGlzIGZpbGUg
aXMgcGFydCBvZiB0aGUgRE9NIGltcGxlbWVudGF0aW9uIGZvciBLREUuCi0gKgogICogQ29weXJp
Z2h0IChDKSAxOTk5IExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCiAgKiAgICAgICAgICAgKEMp
IDE5OTkgQW50dGkgS29pdmlzdG8gKGtvaXZpc3RvQGtkZS5vcmcpCiAgKiAgICAgICAgICAgKEMp
IDIwMDAgU2ltb24gSGF1c21hbm4gPGhhdXNtYW5uQGtkZS5vcmc+CkBAIC0zOCw3ICszNiw3IEBA
IGNsYXNzIFJlbmRlclN0eWxlOwogY2xhc3MgSFRNTEZyYW1lRWxlbWVudCA6IHB1YmxpYyBIVE1M
RnJhbWVFbGVtZW50QmFzZQogewogcHVibGljOgotICAgIEhUTUxGcmFtZUVsZW1lbnQoY29uc3Qg
UXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CisgICAgSFRNTEZyYW1lRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAKICAgICB2
aXJ0dWFsIEhUTUxUYWdTdGF0dXMgZW5kVGFnUmVxdWlyZW1lbnQoKSBjb25zdCB7IHJldHVybiBU
YWdTdGF0dXNGb3JiaWRkZW47IH0KICAgICB2aXJ0dWFsIGludCB0YWdQcmlvcml0eSgpIGNvbnN0
IHsgcmV0dXJuIDA7IH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVsZW1lbnRCYXNlLmNwcAko
cmV2aXNpb24gMzkxNDApCisrKyBXZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudEJhc2UuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0Myw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
dXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAotSFRNTEZyYW1lRWxlbWVudEJhc2U6OkhUTUxG
cmFtZUVsZW1lbnRCYXNlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50ICpk
b2MpCi0gICAgOiBIVE1MRnJhbWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9jKQorSFRNTEZyYW1l
RWxlbWVudEJhc2U6OkhUTUxGcmFtZUVsZW1lbnRCYXNlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRh
Z05hbWUsIERvY3VtZW50KiBkb2MsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKQorICAgIDogSFRNTEZy
YW1lT3duZXJFbGVtZW50KHRhZ05hbWUsIGRvYywgY3JlYXRlZEJ5UGFyc2VyKQogICAgICwgbV9z
Y3JvbGxpbmcoU2Nyb2xsYmFyQXV0bykKICAgICAsIG1fbWFyZ2luV2lkdGgoLTEpCiAgICAgLCBt
X21hcmdpbkhlaWdodCgtMSkKSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFz
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5oCShy
ZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50QmFzZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4Miw3IEBAIHB1YmxpYzoKICAgICBib29sIHZpZXdTb3Vy
Y2VNb2RlKCkgY29uc3QgeyByZXR1cm4gbV92aWV3U291cmNlOyB9CiAKIHByb3RlY3RlZDoKLSAg
ICBIVE1MRnJhbWVFbGVtZW50QmFzZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsK
KyAgICBIVE1MRnJhbWVFbGVtZW50QmFzZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQq
LCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAKICAgICBib29sIGlzVVJMQWxsb3dlZChjb25zdCBB
dG9taWNTdHJpbmcmKSBjb25zdDsKICAgICB2b2lkIHNldE5hbWVBbmRPcGVuVVJMKCk7CkluZGV4
OiBXZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcAkocmV2aXNpb24gMzkxNDApCisr
KyBXZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMzIsMTAgKzMyLDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotSFRNTEZyYW1lT3du
ZXJFbGVtZW50OjpIVE1MRnJhbWVPd25lckVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFn
TmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQorSFRNTEZyYW1lT3duZXJFbGVtZW50OjpIVE1MRnJh
bWVPd25lckVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRv
Y3VtZW50LCBib29sIGNyZWF0ZWRCeVBhcnNlcikKICAgICA6IEhUTUxFbGVtZW50KHRhZ05hbWUs
IGRvY3VtZW50KQogICAgICwgbV9jb250ZW50RnJhbWUoMCkKLSAgICAsIG1fY3JlYXRlZEJ5UGFy
c2VyKGZhbHNlKQorICAgICwgbV9jcmVhdGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKQogewog
fQogCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oCShyZXZpc2lvbiAzOTE0
MCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuaAkod29ya2luZyBjb3B5
KQpAQCAtMzUsNyArMzUsNyBAQCBjbGFzcyBTVkdEb2N1bWVudDsKIAogY2xhc3MgSFRNTEZyYW1l
T3duZXJFbGVtZW50IDogcHVibGljIEhUTUxFbGVtZW50IHsKIHByb3RlY3RlZDoKLSAgICBIVE1M
RnJhbWVPd25lckVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQq
KTsKKyAgICBIVE1MRnJhbWVPd25lckVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFt
ZSwgRG9jdW1lbnQqLCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAKIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5IVE1MRnJhbWVPd25lckVsZW1lbnQoKTsKQEAgLTUwLDcgKzUwLDYgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgYm9vbCBpc0tleWJvYXJkRm9jdXNhYmxlKEtleWJvYXJkRXZlbnQqKSBjb25z
dCB7IHJldHVybiBtX2NvbnRlbnRGcmFtZTsgfQogICAgIAogICAgIGJvb2wgY3JlYXRlZEJ5UGFy
c2VyKCkgY29uc3QgeyByZXR1cm4gbV9jcmVhdGVkQnlQYXJzZXI7IH0KLSAgICB2b2lkIHNldENy
ZWF0ZWRCeVBhcnNlcihib29sIGNyZWF0ZWRCeVBhcnNlcikgeyBtX2NyZWF0ZWRCeVBhcnNlciA9
IGNyZWF0ZWRCeVBhcnNlcjsgfQogCiAgICAgdmlydHVhbCBTY3JvbGxiYXJNb2RlIHNjcm9sbGlu
Z01vZGUoKSBjb25zdCB7IHJldHVybiBTY3JvbGxiYXJBdXRvOyB9CiAKSW5kZXg6IFdlYkNvcmUv
aHRtbC9IVE1MSUZyYW1lRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hU
TUxJRnJhbWVFbGVtZW50LmNwcAkocmV2aXNpb24gMzkxNDApCisrKyBXZWJDb3JlL2h0bWwvSFRN
TElGcmFtZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw4ICszNCw4IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAotSFRNTElGcmFt
ZUVsZW1lbnQ6OkhUTUxJRnJhbWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUs
IERvY3VtZW50KiBkb2MpCi0gICAgOiBIVE1MRnJhbWVFbGVtZW50QmFzZSh0YWdOYW1lLCBkb2Mp
CitIVE1MSUZyYW1lRWxlbWVudDo6SFRNTElGcmFtZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvYywgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCisgICAgOiBI
VE1MRnJhbWVFbGVtZW50QmFzZSh0YWdOYW1lLCBkb2MsIGNyZWF0ZWRCeVBhcnNlcikKIHsKICAg
ICBBU1NFUlQoaGFzVGFnTmFtZShpZnJhbWVUYWcpKTsKIH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9I
VE1MSUZyYW1lRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MSUZyYW1l
RWxlbWVudC5oCShyZXZpc2lvbiAzOTE0MCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MSUZyYW1lRWxl
bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgSFRNTElGcmFtZUVsZW1lbnQgOiBwdWJsaWMgSFRNTEZyYW1lRWxlbWVudEJh
c2UgewogcHVibGljOgotICAgIEhUTUxJRnJhbWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCopOworICAgIEhUTUxJRnJhbWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCosIGJvb2wgY3JlYXRlZEJ5UGFyc2VyKTsKIAogICAgIHZpcnR1YWwgSFRNTFRh
Z1N0YXR1cyBlbmRUYWdSZXF1aXJlbWVudCgpIGNvbnN0IHsgcmV0dXJuIFRhZ1N0YXR1c1JlcXVp
cmVkOyB9CiAgICAgdmlydHVhbCBpbnQgdGFnUHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiAxOyB9
CkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAJKHJldmlzaW9uIDM5MTQwKQorKysg
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDUs
NyArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVz
OwogCiBIVE1MUGx1Z0luRWxlbWVudDo6SFRNTFBsdWdJbkVsZW1lbnQoY29uc3QgUXVhbGlmaWVk
TmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvYykKLSAgICA6IEhUTUxGcmFtZU93bmVyRWxlbWVu
dCh0YWdOYW1lLCBkb2MpCisgICAgOiBIVE1MRnJhbWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9j
LCBmYWxzZSkKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAsIG1fTlBPYmpl
Y3QoMCkKICNlbmRpZgpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVzLmluCShyZXZpc2lvbiAzOTE0MCkKKysr
IFdlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM5LDcgKzM5
LDcgQEAgZW1iZWQKIGZpZWxkc2V0IGludGVyZmFjZU5hbWU9SFRNTEZpZWxkU2V0RWxlbWVudAog
Zm9udAogZm9ybQotZnJhbWUKK2ZyYW1lIGNvbnN0cnVjdG9yTmVlZHNDcmVhdGVkQnlQYXJzZXI9
MQogZnJhbWVzZXQgaW50ZXJmYWNlTmFtZT1IVE1MRnJhbWVTZXRFbGVtZW50CiBoZWFkCiBoMSBp
bnRlcmZhY2VOYW1lPUhUTUxIZWFkaW5nRWxlbWVudApAQCAtNTEsNyArNTEsNyBAQCBoNiBKU0lu
dGVyZmFjZU5hbWU9SFRNTEhlYWRpbmdFbGVtZW50CiBociBpbnRlcmZhY2VOYW1lPUhUTUxIUkVs
ZW1lbnQKIGh0bWwKIGkgSlNJbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50Ci1pZnJhbWUgaW50ZXJm
YWNlTmFtZT1IVE1MSUZyYW1lRWxlbWVudAoraWZyYW1lIGludGVyZmFjZU5hbWU9SFRNTElGcmFt
ZUVsZW1lbnQsIGNvbnN0cnVjdG9yTmVlZHNDcmVhdGVkQnlQYXJzZXI9MQogaW1hZ2UKIGltZyBp
bnRlcmZhY2VOYW1lPUhUTUxJbWFnZUVsZW1lbnQKIGlucHV0Cg==
</data>
<flag name="review"
          id="12156"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>