<?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>32455</bug_id>
          
          <creation_ts>2009-12-11 15:37:09 -0800</creation_ts>
          <short_desc>[V8] Indexers and named propery getters should be generated</short_desc>
          <delta_ts>2009-12-30 08:57:29 -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 JavaScript</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>
          <dependson>32562</dependson>
    
    <dependson>32569</dependson>
    
    <dependson>32637</dependson>
    
    <dependson>32996</dependson>
          <blocked>32630</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>abarth</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>170960</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-11 15:37:09 -0800</bug_when>
    <thetext>V8 bindings for indexers and named property getters could be easily generated, thus avoiding the maintenance burden when adding new IDLs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170962</commentid>
    <comment_count>1</comment_count>
      <attachid>44714</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-11 15:39:46 -0800</bug_when>
    <thetext>Created attachment 44714
Generate bindings for trivial indexers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170963</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-11 15:41:29 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 44714 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171000</commentid>
    <comment_count>3</comment_count>
      <attachid>44714</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-11 17:35:20 -0800</bug_when>
    <thetext>Comment on attachment 44714
Generate bindings for trivial indexers.

Looks sane, but could we make the perl more readable?  Like by putting this new code in a well-named sub-routine?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171024</commentid>
    <comment_count>4</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-11 19:31:18 -0800</bug_when>
    <thetext>Sure, sounds good. Most of this should go away anyway, once I switch over to use toV8(...) type resolution a-la JSC-land. This is just a first step :) I am going abarth on these bindings!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171026</commentid>
    <comment_count>5</comment_count>
      <attachid>44714</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-11 19:32:28 -0800</bug_when>
    <thetext>Comment on attachment 44714
Generate bindings for trivial indexers.

I&apos;ll prettify the Perl code and repost.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171547</commentid>
    <comment_count>6</comment_count>
      <attachid>44817</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-14 13:32:03 -0800</bug_when>
    <thetext>Created attachment 44817
Generate bindings for trivial indexers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171565</commentid>
    <comment_count>7</comment_count>
      <attachid>44817</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-14 13:59:13 -0800</bug_when>
    <thetext>Comment on attachment 44817
Generate bindings for trivial indexers.

It would be nice to see an example of the new generated code.  But this looks OK as far as I can tell.  Are you sure we have tests covering index getters for all these?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171577</commentid>
    <comment_count>8</comment_count>
      <attachid>44822</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-14 14:11:38 -0800</bug_when>
    <thetext>Created attachment 44822
An example of new generated file.

Here&apos;s an example of the new generated output. Look for &quot;setCollectionIndexerGetter&quot; added to ConfigureV8CSSRuleListTemplate.

It used to be set in a long case statement inside V8DOMWrapper:getTemplate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171603</commentid>
    <comment_count>9</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-14 15:25:26 -0800</bug_when>
    <thetext>Landed as http://trac.webkit.org/changeset/52120.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171882</commentid>
    <comment_count>10</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-15 08:55:36 -0800</bug_when>
    <thetext>I am going to use this as a master bug for V8 getter generation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175449</commentid>
    <comment_count>11</comment_count>
      <attachid>44817</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-28 23:37:53 -0800</bug_when>
    <thetext>Comment on attachment 44817
Generate bindings for trivial indexers.

Clearing my r+ on this obsolete patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175933</commentid>
    <comment_count>12</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-12-30 08:57:29 -0800</bug_when>
    <thetext>All hand-coded configuring indexer or named property handling is gone.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44714</attachid>
            <date>2009-12-11 15:39:46 -0800</date>
            <delta_ts>2009-12-11 19:32:28 -0800</delta_ts>
            <desc>Generate bindings for trivial indexers.</desc>
            <filename>bug-32455-20091211153941.patch</filename>
            <type>text/plain</type>
            <size>9159</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Njc1NjdhYi4uNWI4ZWQyZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAwOS0xMi0xMSAgRGltaXRyaSBHbGF6
a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gR2VuZXJhdGUgYmluZGluZ3MgZm9yIHRyaXZpYWwg
aW5kZXhlcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMjQ1NQorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgICAgIEFkZGVk
IGRldGVjdGluZyBpbmRleGVycyBhbmQgZ2VuZXJhdGluZyBjb2RlIGZvciB0aGVtLgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oOiBSZW1vdmVkIGNvZGUgdGhhdCdzIG5vdyBn
ZW5lcmF0ZWQuCisgICAgICAgICogYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Z2V0VGVtcGxhdGUpOiBEaXR0by4KKwogMjAwOS0x
Mi0xMCAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvclY4LnBtCmluZGV4IDA5MjFlOWUuLjg3ZjhhZjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtMTE2NCw3ICsxMTY0LDYgQEAgc3ViIEdlbmVy
YXRlSW1wbGVtZW50YXRpb24KICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAidGVtcGxhdGUg
PHR5cGVuYW1lIFQ+IHZvaWQgVjhfVVNFKFQpIHsgfVxuXG4iKTsKIAogICAgIG15ICRoYXNDb25z
dHJ1Y3RvcnMgPSAwOwotCiAgICAgIyBHZW5lcmF0ZSBwcm9wZXJ0eSBhY2Nlc3NvcnMgZm9yIGF0
dHJpYnV0ZXMuCiAgICAgZm9yICgkaW5kZXggPSAwOyAkaW5kZXggPCBAeyRkYXRhTm9kZS0+YXR0
cmlidXRlc307ICRpbmRleCsrKSB7CiAgICAgICAgICRhdHRyaWJ1dGUgPSBAeyRkYXRhTm9kZS0+
YXR0cmlidXRlc31bJGluZGV4XTsKQEAgLTEyMTUsNiArMTIxNCw3IEBAIHN1YiBHZW5lcmF0ZUlt
cGxlbWVudGF0aW9uCiAgICAgICAgIEdlbmVyYXRlQ29uc3RydWN0b3JHZXR0ZXIoJGltcGxDbGFz
c05hbWUsICRjbGFzc0luZGV4KTsKICAgICB9CiAKKyAgICBteSAkaW5kZXhlcjsKICAgICAjIEdl
bmVyYXRlIG1ldGhvZHMgZm9yIGZ1bmN0aW9ucy4KICAgICBmb3JlYWNoIG15ICRmdW5jdGlvbiAo
QHskZGF0YU5vZGUtPmZ1bmN0aW9uc30pIHsKICAgICAgICAgIyBoYWNrIGZvciBhZGRFdmVudExp
c3RlbmVyL1JlbW92ZUV2ZW50TGlzdGVuZXIKQEAgLTEyMjUsNiArMTIyNSwxMCBAQCBzdWIgR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNr
KCRmdW5jdGlvbiwgJGRhdGFOb2RlLCAkY2xhc3NJbmRleCwgJGltcGxDbGFzc05hbWUpOwogICAg
ICAgICB9CiAKKyAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIGVxICJpdGVt
IikgeworICAgICAgICAgICAgJGluZGV4ZXIgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZTsKKyAgICAg
ICAgfQorCiAgICAgICAgICMgSWYgdGhlIGZ1bmN0aW9uIGRvZXMgbm90IG5lZWQgZG9tYWluIHNl
Y3VyaXR5IGNoZWNrLCB3ZSBuZWVkIHRvCiAgICAgICAgICMgZ2VuZXJhdGUgYW4gYWNjZXNzIGdl
dHRlciB0aGF0IHJldHVybnMgZGlmZmVyZW50IGZ1bmN0aW9uIG9iamVjdHMKICAgICAgICAgIyBm
b3IgZGlmZmVyZW50IGNhbGxpbmcgY29udGV4dC4KQEAgLTEyNDMsNiArMTI0Nyw3IEBAIHN1YiBH
ZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgbXkgQGVuYWJsZWRBdFJ1bnRpbWU7CiAgICAgbXkg
QG5vcm1hbDsKICAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEAkYXR0cmlidXRlcykgeworCiAg
ICAgICAgIGlmICgkaW50ZXJmYWNlTmFtZSBlcSAiRE9NV2luZG93IiAmJiAkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJWOERpc2FsbG93U2hhZG93aW5nIn0pIHsK
ICAgICAgICAgICAgIHB1c2goQGRpc2FsbG93c1NoYWRvd2luZywgJGF0dHJpYnV0ZSk7CiAgICAg
ICAgIH0gZWxzaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkVuYWJsZWRBdFJ1bnRpbWUifSkgewpAQCAtMTQwOCw2ICsxNDEzLDMwIEBAIEVORAogICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIlxuI2VuZGlmIC8vICR7Y29uZGl0aW9uYWxTdHJpbmd9XG4i
KSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAgfQogCisgICAgaWYgKCRkYXRhTm9kZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57Ikhhc0luZGV4R2V0dGVyIn0gJiYgJGluZGV4ZXIpIHsKKyAgICAg
ICAgJGltcGxJbmNsdWRlc3siVjhDb2xsZWN0aW9uLmgifSA9IDE7CisgICAgICAgIGlmICghJGRh
dGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSGFzQ3VzdG9tSW5kZXhHZXR0ZXIifSkgewor
ICAgICAgICAgICAgaWYgKCRpbmRleGVyLT50eXBlIGVxICJET01TdHJpbmciKSB7CisgICAgICAg
ICAgICAgICAgbXkgJGNvbnZlcnNpb24gPSAkaW5kZXhlci0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkNvbnZlcnROdWxsU3RyaW5nVG8ifTsKKyAgICAgICAgICAgICAgICBpZiAoJGNvbnZlcnNpb24g
JiYgJGNvbnZlcnNpb24gZXEgIk51bGwiKSB7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCA8PEVORCk7CisgIHNldENvbGxlY3Rpb25TdHJpbmdPck51bGxJbmRleGVkR2V0
dGVyPCR7aW50ZXJmYWNlTmFtZX0+KGRlc2MpOworRU5ECisgICAgICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsKKyAgc2V0
Q29sbGVjdGlvblN0cmluZ0luZGV4ZWRHZXR0ZXI8JHtpbnRlcmZhY2VOYW1lfT4oZGVzYyk7CitF
TkQKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
ICAgIG15ICRpbmRleGVyVHlwZSA9ICRpbmRleGVyLT50eXBlOworICAgICAgICAgICAgICAgIG15
ICRpbmRleGVyQ2xhc3NJbmRleCA9IHVjKCRpbmRleGVyVHlwZSk7CisgICAgICAgICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsKKyAgc2V0Q29sbGVjdGlvbkluZGV4ZWRHZXR0ZXI8
JHtpbnRlcmZhY2VOYW1lfSwgJHtpbmRleGVyVHlwZX0+KGRlc2MsIFY4Q2xhc3NJbmRleDo6JHtp
bmRleGVyQ2xhc3NJbmRleH0pOworRU5ECisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9
CisKICAgICAjIERlZmluZSBvdXIgZnVuY3Rpb25zIHdpdGggU2V0KCkgb3IgU2V0QWNjZXNzb3Io
KQogICAgICR0b3RhbF9mdW5jdGlvbnMgPSAwOwogICAgIGZvcmVhY2ggbXkgJGZ1bmN0aW9uIChA
eyRkYXRhTm9kZS0+ZnVuY3Rpb25zfSkgewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOENvbGxlY3Rpb24uaCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhDb2xsZWN0aW9uLmgKaW5k
ZXggMGE0MTM0ZS4uOGRlYTgzOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOENv
bGxlY3Rpb24uaAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oCkBAIC0y
MDMsMTcgKzIwMyw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgZGVzYy0+SW5zdGFu
Y2VUZW1wbGF0ZSgpLT5TZXROYW1lZFByb3BlcnR5SGFuZGxlcihjb2xsZWN0aW9uTmFtZWRQcm9w
ZXJ0eUdldHRlcjxDb2xsZWN0aW9uLCBJdGVtVHlwZT4sIDAsIDAsIDAsIDAsIHY4OjpJbnRlZ2Vy
OjpOZXcoVjhDbGFzc0luZGV4OjpUb0ludCh0eXBlKSkpOwogICAgIH0KIAotCi0gICAgLy8gQWRk
IG5hbWVkIGFuZCBpbmRleGVkIGdldHRlcnMgdG8gdGhlIGZ1bmN0aW9uIHRlbXBsYXRlIGZvciBh
IGNvbGxlY3Rpb24uCi0gICAgdGVtcGxhdGU8Y2xhc3MgQ29sbGVjdGlvbiwgY2xhc3MgSXRlbVR5
cGU+IHN0YXRpYyB2b2lkIHNldENvbGxlY3Rpb25JbmRleGVkQW5kTmFtZWRHZXR0ZXJzKHY4OjpI
YW5kbGU8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGRlc2MsIFY4Q2xhc3NJbmRleDo6VjhXcmFwcGVy
VHlwZSB0eXBlKQotICAgIHsKLSAgICAgICAgLy8gSWYgd2UgaW50ZXJjZXB0b3IgYmVmb3JlIG9i
amVjdCwgYWNjZXNzaW5nICdsZW5ndGgnIGNhbiB0cmlnZ2VyIGEgd2Via2l0IGFzc2VydGlvbiBl
cnJvciAoc2VlIGZhc3QvZG9tL0hUTUxEb2N1bWVudC9kb2N1bWVudC1zcGVjaWFsLXByb3BlcnRp
ZXMuaHRtbCkuCi0gICAgICAgIGRlc2MtPkluc3RhbmNlVGVtcGxhdGUoKS0+U2V0TmFtZWRQcm9w
ZXJ0eUhhbmRsZXIoY29sbGVjdGlvbk5hbWVkUHJvcGVydHlHZXR0ZXI8Q29sbGVjdGlvbiwgSXRl
bVR5cGU+LCAwLCAwLCAwLCAwLCB2ODo6SW50ZWdlcjo6TmV3KFY4Q2xhc3NJbmRleDo6VG9JbnQo
dHlwZSkpKTsKLSAgICAgICAgZGVzYy0+SW5zdGFuY2VUZW1wbGF0ZSgpLT5TZXRJbmRleGVkUHJv
cGVydHlIYW5kbGVyKGNvbGxlY3Rpb25JbmRleGVkUHJvcGVydHlHZXR0ZXI8Q29sbGVjdGlvbiwg
SXRlbVR5cGU+LCAwLCAwLCAwLCBjb2xsZWN0aW9uSW5kZXhlZFByb3BlcnR5RW51bWVyYXRvcjxD
b2xsZWN0aW9uPiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHY4OjpJbnRlZ2VyOjpOZXcoVjhDbGFzc0luZGV4OjpUb0ludCh0eXBl
KSkpOwotICAgIH0KLQotCiAgICAgLy8gQWRkIGluZGV4ZWQgZ2V0dGVyIHJldHVybmluZyBhIHN0
cmluZyBvciBudWxsIHRvIGEgZnVuY3Rpb24gdGVtcGxhdGUgZm9yIGEgY29sbGVjdGlvbi4KICAg
ICB0ZW1wbGF0ZTxjbGFzcyBDb2xsZWN0aW9uPiBzdGF0aWMgdm9pZCBzZXRDb2xsZWN0aW9uU3Ry
aW5nT3JOdWxsSW5kZXhlZEdldHRlcih2ODo6SGFuZGxlPHY4OjpGdW5jdGlvblRlbXBsYXRlPiBk
ZXNjKQogICAgIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVy
LmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcAppbmRleCA2NTkxMzI1
Li40MjYzZTczIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5j
cHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwCkBAIC0yNzYsMjYg
KzI3NiwxMiBAQCB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gVjhET01XcmFw
cGVyOjpnZXRUZW1wbGF0ZShWOENsYXNzSW5kZXg6OlY4VwogICAgICAgICAvLyBzZXR0ZXIuIFRo
ZXJlZm9yZSwgdGhlIGludGVyY2VwdG9yIGhhcyB0byBiZSBvbiB0aGUgb2JqZWN0CiAgICAgICAg
IC8vIGl0c2VsZiBhbmQgbm90IG9uIHRoZSBwcm90b3R5cGUgb2JqZWN0LgogICAgICAgICBkZXNj
cmlwdG9yLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldE5hbWVkUHJvcGVydHlIYW5kbGVyKCBVU0Vf
TkFNRURfUFJPUEVSVFlfR0VUVEVSKENTU1N0eWxlRGVjbGFyYXRpb24pLCBVU0VfTkFNRURfUFJP
UEVSVFlfU0VUVEVSKENTU1N0eWxlRGVjbGFyYXRpb24pKTsKLSAgICAgICAgc2V0Q29sbGVjdGlv
blN0cmluZ0luZGV4ZWRHZXR0ZXI8Q1NTU3R5bGVEZWNsYXJhdGlvbj4oZGVzY3JpcHRvcik7Ci0g
ICAgICAgIGJyZWFrOwotICAgIGNhc2UgVjhDbGFzc0luZGV4OjpDU1NSVUxFTElTVDoKLSAgICAg
ICAgc2V0Q29sbGVjdGlvbkluZGV4ZWRHZXR0ZXI8Q1NTUnVsZUxpc3QsIENTU1J1bGU+KGRlc2Ny
aXB0b3IsICBWOENsYXNzSW5kZXg6OkNTU1JVTEUpOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IFY4Q2xhc3NJbmRleDo6Q1NTVkFMVUVMSVNUOgotICAgICAgICBzZXRDb2xsZWN0aW9uSW5kZXhl
ZEdldHRlcjxDU1NWYWx1ZUxpc3QsIENTU1ZhbHVlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6
OkNTU1ZBTFVFKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBWOENsYXNzSW5kZXg6OkNTU1ZB
UklBQkxFU0RFQ0xBUkFUSU9OOgotICAgICAgICBzZXRDb2xsZWN0aW9uU3RyaW5nSW5kZXhlZEdl
dHRlcjxDU1NWYXJpYWJsZXNEZWNsYXJhdGlvbj4oZGVzY3JpcHRvcik7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgVjhDbGFzc0luZGV4OjpXRUJLSVRDU1NUUkFOU0ZPUk1WQUxVRToKLSAgICAg
ICAgc2V0Q29sbGVjdGlvbkluZGV4ZWRHZXR0ZXI8V2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUsIENT
U1ZhbHVlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6OkNTU1ZBTFVFKTsKICAgICAgICAgYnJl
YWs7CiAgICAgY2FzZSBWOENsYXNzSW5kZXg6OkhUTUxBTExDT0xMRUNUSU9OOgogICAgICAgICBk
ZXNjcmlwdG9yLT5JbnN0YW5jZVRlbXBsYXRlKCktPk1hcmtBc1VuZGV0ZWN0YWJsZSgpOyAvLyBm
YWxsIHRocm91Z2gKICAgICBjYXNlIFY4Q2xhc3NJbmRleDo6SFRNTENPTExFQ1RJT046CiAgICAg
ICAgIGRlc2NyaXB0b3ItPkluc3RhbmNlVGVtcGxhdGUoKS0+U2V0TmFtZWRQcm9wZXJ0eUhhbmRs
ZXIoVVNFX05BTUVEX1BST1BFUlRZX0dFVFRFUihIVE1MQ29sbGVjdGlvbikpOwogICAgICAgICBk
ZXNjcmlwdG9yLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldENhbGxBc0Z1bmN0aW9uSGFuZGxlcihV
U0VfQ0FMTEJBQ0soSFRNTENvbGxlY3Rpb25DYWxsQXNGdW5jdGlvbikpOwotICAgICAgICBzZXRD
b2xsZWN0aW9uSW5kZXhlZEdldHRlcjxIVE1MQ29sbGVjdGlvbiwgTm9kZT4oZGVzY3JpcHRvciwg
VjhDbGFzc0luZGV4OjpOT0RFKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBWOENsYXNzSW5k
ZXg6OkhUTUxPUFRJT05TQ09MTEVDVElPTjoKICAgICAgICAgZGVzY3JpcHRvci0+SW5zdGFuY2VU
ZW1wbGF0ZSgpLT5TZXROYW1lZFByb3BlcnR5SGFuZGxlcihVU0VfTkFNRURfUFJPUEVSVFlfR0VU
VEVSKEhUTUxDb2xsZWN0aW9uKSk7CkBAIC0zNjEsMTEgKzM0Nyw4IEBAIHY4OjpQZXJzaXN0ZW50
PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBWOERPTVdyYXBwZXI6OmdldFRlbXBsYXRlKFY4Q2xhc3NJ
bmRleDo6VjhXCiAgICAgICAgIGluc3RhbmNlVGVtcGxhdGUtPlNldEludGVybmFsRmllbGRDb3Vu
dChWOEN1c3RvbTo6a1N0eWxlU2hlZXRJbnRlcm5hbEZpZWxkQ291bnQpOwogICAgICAgICBicmVh
azsKICAgICB9Ci0gICAgY2FzZSBWOENsYXNzSW5kZXg6Ok1FRElBTElTVDoKLSAgICAgICAgc2V0
Q29sbGVjdGlvblN0cmluZ09yTnVsbEluZGV4ZWRHZXR0ZXI8TWVkaWFMaXN0PihkZXNjcmlwdG9y
KTsKLSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBWOENsYXNzSW5kZXg6Ok1JTUVUWVBFQVJSQVk6
Ci0gICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVkQW5kTmFtZWRHZXR0ZXJzPE1pbWVUeXBlQXJy
YXksIE1pbWVUeXBlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6Ok1JTUVUWVBFKTsKKyAgICAg
ICAgc2V0Q29sbGVjdGlvbk5hbWVkR2V0dGVyPE1pbWVUeXBlQXJyYXksIE1pbWVUeXBlPihkZXNj
cmlwdG9yLCBWOENsYXNzSW5kZXg6Ok1JTUVUWVBFKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBWOENsYXNzSW5kZXg6Ok5BTUVETk9ERU1BUDogewogICAgICAgICAvLyBXZSBhZGQgYW4gZXh0
cmEgaW50ZXJuYWwgZmllbGQgdG8gaG9sZCBhIHJlZmVyZW5jZSB0byB0aGUgb3duZXIgbm9kZS4K
QEAgLTM4MywxOCArMzY2LDE2IEBAIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRl
PiBWOERPTVdyYXBwZXI6OmdldFRlbXBsYXRlKFY4Q2xhc3NJbmRleDo6VjhXCiAgICAgICAgIGJy
ZWFrOwogI2VuZGlmCiAgICAgY2FzZSBWOENsYXNzSW5kZXg6Ok5PREVMSVNUOgotICAgICAgICBz
ZXRDb2xsZWN0aW9uSW5kZXhlZEdldHRlcjxOb2RlTGlzdCwgTm9kZT4oZGVzY3JpcHRvciwgVjhD
bGFzc0luZGV4OjpOT0RFKTsKICAgICAgICAgZGVzY3JpcHRvci0+SW5zdGFuY2VUZW1wbGF0ZSgp
LT5TZXROYW1lZFByb3BlcnR5SGFuZGxlcihVU0VfTkFNRURfUFJPUEVSVFlfR0VUVEVSKE5vZGVM
aXN0KSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVjhDbGFzc0luZGV4OjpQTFVHSU46Ci0g
ICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVkQW5kTmFtZWRHZXR0ZXJzPFBsdWdpbiwgTWltZVR5
cGU+KGRlc2NyaXB0b3IsIFY4Q2xhc3NJbmRleDo6TUlNRVRZUEUpOworICAgICAgICBzZXRDb2xs
ZWN0aW9uTmFtZWRHZXR0ZXI8UGx1Z2luLCBNaW1lVHlwZT4oZGVzY3JpcHRvciwgVjhDbGFzc0lu
ZGV4OjpNSU1FVFlQRSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVjhDbGFzc0luZGV4OjpQ
TFVHSU5BUlJBWToKLSAgICAgICAgc2V0Q29sbGVjdGlvbkluZGV4ZWRBbmROYW1lZEdldHRlcnM8
UGx1Z2luQXJyYXksIFBsdWdpbj4oZGVzY3JpcHRvciwgVjhDbGFzc0luZGV4OjpQTFVHSU4pOwor
ICAgICAgICBzZXRDb2xsZWN0aW9uTmFtZWRHZXR0ZXI8UGx1Z2luQXJyYXksIFBsdWdpbj4oZGVz
Y3JpcHRvciwgVjhDbGFzc0luZGV4OjpQTFVHSU4pOwogICAgICAgICBicmVhazsKICAgICBjYXNl
IFY4Q2xhc3NJbmRleDo6U1RZTEVTSEVFVExJU1Q6CiAgICAgICAgIGRlc2NyaXB0b3ItPkluc3Rh
bmNlVGVtcGxhdGUoKS0+U2V0TmFtZWRQcm9wZXJ0eUhhbmRsZXIoVVNFX05BTUVEX1BST1BFUlRZ
X0dFVFRFUihTdHlsZVNoZWV0TGlzdCkpOwotICAgICAgICBzZXRDb2xsZWN0aW9uSW5kZXhlZEdl
dHRlcjxTdHlsZVNoZWV0TGlzdCwgU3R5bGVTaGVldD4oZGVzY3JpcHRvciwgVjhDbGFzc0luZGV4
OjpTVFlMRVNIRUVUKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBWOENsYXNzSW5kZXg6OkRP
TVdJTkRPVzogewogICAgICAgICB2ODo6TG9jYWw8djg6OlNpZ25hdHVyZT4gZGVmYXVsdFNpZ25h
dHVyZSA9IHY4OjpTaWduYXR1cmU6Ok5ldyhkZXNjcmlwdG9yKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44817</attachid>
            <date>2009-12-14 13:32:03 -0800</date>
            <delta_ts>2009-12-28 23:37:52 -0800</delta_ts>
            <desc>Generate bindings for trivial indexers.</desc>
            <filename>bug-32455-20091214133201.patch</filename>
            <type>text/plain</type>
            <size>9482</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NTYyZmE2YS4uNWIwMDEzOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAwOS0xMi0xMSAgRGltaXRyaSBHbGF6
a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gR2VuZXJhdGUgYmluZGluZ3MgZm9yIHRyaXZpYWwg
aW5kZXhlcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMjQ1NQorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgICAgIEFkZGVk
IGRldGVjdGluZyBpbmRleGVycyBhbmQgZ2VuZXJhdGluZyBjb2RlIGZvciB0aGVtLgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oOiBSZW1vdmVkIGNvZGUgdGhhdCdzIG5vdyBn
ZW5lcmF0ZWQuCisgICAgICAgICogYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Z2V0VGVtcGxhdGUpOiBEaXR0by4KKwogMjAwOS0x
Mi0xNCAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvclY4LnBtCmluZGV4IDIzYjc0ZTMuLjliNjM0OWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtMTEyNyw2ICsxMTI3LDM3IEBAIHN1YiBH
ZW5lcmF0ZVNpbmdsZUJhdGNoZWRBdHRyaWJ1dGUKIEVORAogfQogCitzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbkluZGV4ZXIKK3sKKyAgICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKKyAgICBteSAk
aW5kZXhlciA9IHNoaWZ0OworICAgIG15ICRpbnRlcmZhY2VOYW1lID0gJGRhdGFOb2RlLT5uYW1l
OworCisgICAgaWYgKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ikhhc0luZGV4R2V0
dGVyIn0pIHsKKyAgICAgICAgJGltcGxJbmNsdWRlc3siVjhDb2xsZWN0aW9uLmgifSA9IDE7Cisg
ICAgICAgIGlmICghJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSGFzQ3VzdG9tSW5k
ZXhHZXR0ZXIifSkgeworICAgICAgICAgICAgaWYgKCRpbmRleGVyLT50eXBlIGVxICJET01TdHJp
bmciKSB7CisgICAgICAgICAgICAgICAgbXkgJGNvbnZlcnNpb24gPSAkaW5kZXhlci0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IkNvbnZlcnROdWxsU3RyaW5nVG8ifTsKKyAgICAgICAgICAgICAgICBp
ZiAoJGNvbnZlcnNpb24gJiYgJGNvbnZlcnNpb24gZXEgIk51bGwiKSB7CisgICAgICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CisgIHNldENvbGxlY3Rpb25TdHJpbmdP
ck51bGxJbmRleGVkR2V0dGVyPCR7aW50ZXJmYWNlTmFtZX0+KGRlc2MpOworRU5ECisgICAgICAg
ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
IDw8RU5EKTsKKyAgc2V0Q29sbGVjdGlvblN0cmluZ0luZGV4ZWRHZXR0ZXI8JHtpbnRlcmZhY2VO
YW1lfT4oZGVzYyk7CitFTkQKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgICAgIG15ICRpbmRleGVyVHlwZSA9ICRpbmRleGVyLT50eXBlOworICAg
ICAgICAgICAgICAgIG15ICRpbmRleGVyQ2xhc3NJbmRleCA9IHVjKCRpbmRleGVyVHlwZSk7Cisg
ICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsKKyAgc2V0Q29sbGVjdGlv
bkluZGV4ZWRHZXR0ZXI8JHtpbnRlcmZhY2VOYW1lfSwgJHtpbmRleGVyVHlwZX0+KGRlc2MsIFY4
Q2xhc3NJbmRleDo6JHtpbmRleGVyQ2xhc3NJbmRleH0pOworRU5ECisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKyAgICB9Cit9CisKIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiB7CiAgICAg
bXkgJG9iamVjdCA9IHNoaWZ0OwpAQCAtMTE2NSw3ICsxMTk2LDYgQEAgc3ViIEdlbmVyYXRlSW1w
bGVtZW50YXRpb24KICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAidGVtcGxhdGUgPHR5cGVu
YW1lIFQ+IHZvaWQgVjhfVVNFKFQpIHsgfVxuXG4iKTsKIAogICAgIG15ICRoYXNDb25zdHJ1Y3Rv
cnMgPSAwOwotCiAgICAgIyBHZW5lcmF0ZSBwcm9wZXJ0eSBhY2Nlc3NvcnMgZm9yIGF0dHJpYnV0
ZXMuCiAgICAgZm9yICgkaW5kZXggPSAwOyAkaW5kZXggPCBAeyRkYXRhTm9kZS0+YXR0cmlidXRl
c307ICRpbmRleCsrKSB7CiAgICAgICAgICRhdHRyaWJ1dGUgPSBAeyRkYXRhTm9kZS0+YXR0cmli
dXRlc31bJGluZGV4XTsKQEAgLTEyMTYsNiArMTI0Niw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uCiAgICAgICAgIEdlbmVyYXRlQ29uc3RydWN0b3JHZXR0ZXIoJGltcGxDbGFzc05hbWUs
ICRjbGFzc0luZGV4KTsKICAgICB9CiAKKyAgICBteSAkaW5kZXhlcjsKICAgICAjIEdlbmVyYXRl
IG1ldGhvZHMgZm9yIGZ1bmN0aW9ucy4KICAgICBmb3JlYWNoIG15ICRmdW5jdGlvbiAoQHskZGF0
YU5vZGUtPmZ1bmN0aW9uc30pIHsKICAgICAgICAgIyBoYWNrIGZvciBhZGRFdmVudExpc3RlbmVy
L1JlbW92ZUV2ZW50TGlzdGVuZXIKQEAgLTEyMjYsNiArMTI1NywxMCBAQCBzdWIgR2VuZXJhdGVJ
bXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrKCRmdW5j
dGlvbiwgJGRhdGFOb2RlLCAkY2xhc3NJbmRleCwgJGltcGxDbGFzc05hbWUpOwogICAgICAgICB9
CiAKKyAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lIGVxICJpdGVtIikgewor
ICAgICAgICAgICAgJGluZGV4ZXIgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZTsKKyAgICAgICAgfQor
CiAgICAgICAgICMgSWYgdGhlIGZ1bmN0aW9uIGRvZXMgbm90IG5lZWQgZG9tYWluIHNlY3VyaXR5
IGNoZWNrLCB3ZSBuZWVkIHRvCiAgICAgICAgICMgZ2VuZXJhdGUgYW4gYWNjZXNzIGdldHRlciB0
aGF0IHJldHVybnMgZGlmZmVyZW50IGZ1bmN0aW9uIG9iamVjdHMKICAgICAgICAgIyBmb3IgZGlm
ZmVyZW50IGNhbGxpbmcgY29udGV4dC4KQEAgLTEyNDQsNiArMTI3OSw3IEBAIHN1YiBHZW5lcmF0
ZUltcGxlbWVudGF0aW9uCiAgICAgbXkgQGVuYWJsZWRBdFJ1bnRpbWU7CiAgICAgbXkgQG5vcm1h
bDsKICAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEAkYXR0cmlidXRlcykgeworCiAgICAgICAg
IGlmICgkaW50ZXJmYWNlTmFtZSBlcSAiRE9NV2luZG93IiAmJiAkYXR0cmlidXRlLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJWOERpc2FsbG93U2hhZG93aW5nIn0pIHsKICAgICAg
ICAgICAgIHB1c2goQGRpc2FsbG93c1NoYWRvd2luZywgJGF0dHJpYnV0ZSk7CiAgICAgICAgIH0g
ZWxzaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuYWJs
ZWRBdFJ1bnRpbWUifSkgewpAQCAtMTQwOSw2ICsxNDQ1LDggQEAgRU5ECiAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiXG4jZW5kaWYgLy8gJHtjb25kaXRpb25hbFN0cmluZ31cbiIpIGlmICRj
b25kaXRpb25hbFN0cmluZzsKICAgICB9CiAKKyAgICBHZW5lcmF0ZUltcGxlbWVudGF0aW9uSW5k
ZXhlcigkZGF0YU5vZGUsICRpbmRleGVyKSBpZiAkaW5kZXhlcjsKKwogICAgICMgRGVmaW5lIG91
ciBmdW5jdGlvbnMgd2l0aCBTZXQoKSBvciBTZXRBY2Nlc3NvcigpCiAgICAgJHRvdGFsX2Z1bmN0
aW9ucyA9IDA7CiAgICAgZm9yZWFjaCBteSAkZnVuY3Rpb24gKEB7JGRhdGFOb2RlLT5mdW5jdGlv
bnN9KSB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oIGIv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOENvbGxlY3Rpb24uaAppbmRleCAwYTQxMzRlLi44ZGVhODM5
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oCisrKyBiL1dl
YkNvcmUvYmluZGluZ3MvdjgvVjhDb2xsZWN0aW9uLmgKQEAgLTIwMywxNyArMjAzLDYgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBkZXNjLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldE5h
bWVkUHJvcGVydHlIYW5kbGVyKGNvbGxlY3Rpb25OYW1lZFByb3BlcnR5R2V0dGVyPENvbGxlY3Rp
b24sIEl0ZW1UeXBlPiwgMCwgMCwgMCwgMCwgdjg6OkludGVnZXI6Ok5ldyhWOENsYXNzSW5kZXg6
OlRvSW50KHR5cGUpKSk7CiAgICAgfQogCi0KLSAgICAvLyBBZGQgbmFtZWQgYW5kIGluZGV4ZWQg
Z2V0dGVycyB0byB0aGUgZnVuY3Rpb24gdGVtcGxhdGUgZm9yIGEgY29sbGVjdGlvbi4KLSAgICB0
ZW1wbGF0ZTxjbGFzcyBDb2xsZWN0aW9uLCBjbGFzcyBJdGVtVHlwZT4gc3RhdGljIHZvaWQgc2V0
Q29sbGVjdGlvbkluZGV4ZWRBbmROYW1lZEdldHRlcnModjg6OkhhbmRsZTx2ODo6RnVuY3Rpb25U
ZW1wbGF0ZT4gZGVzYywgVjhDbGFzc0luZGV4OjpWOFdyYXBwZXJUeXBlIHR5cGUpCi0gICAgewot
ICAgICAgICAvLyBJZiB3ZSBpbnRlcmNlcHRvciBiZWZvcmUgb2JqZWN0LCBhY2Nlc3NpbmcgJ2xl
bmd0aCcgY2FuIHRyaWdnZXIgYSB3ZWJraXQgYXNzZXJ0aW9uIGVycm9yIChzZWUgZmFzdC9kb20v
SFRNTERvY3VtZW50L2RvY3VtZW50LXNwZWNpYWwtcHJvcGVydGllcy5odG1sKS4KLSAgICAgICAg
ZGVzYy0+SW5zdGFuY2VUZW1wbGF0ZSgpLT5TZXROYW1lZFByb3BlcnR5SGFuZGxlcihjb2xsZWN0
aW9uTmFtZWRQcm9wZXJ0eUdldHRlcjxDb2xsZWN0aW9uLCBJdGVtVHlwZT4sIDAsIDAsIDAsIDAs
IHY4OjpJbnRlZ2VyOjpOZXcoVjhDbGFzc0luZGV4OjpUb0ludCh0eXBlKSkpOwotICAgICAgICBk
ZXNjLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldEluZGV4ZWRQcm9wZXJ0eUhhbmRsZXIoY29sbGVj
dGlvbkluZGV4ZWRQcm9wZXJ0eUdldHRlcjxDb2xsZWN0aW9uLCBJdGVtVHlwZT4sIDAsIDAsIDAs
IGNvbGxlY3Rpb25JbmRleGVkUHJvcGVydHlFbnVtZXJhdG9yPENvbGxlY3Rpb24+LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdjg6
OkludGVnZXI6Ok5ldyhWOENsYXNzSW5kZXg6OlRvSW50KHR5cGUpKSk7Ci0gICAgfQotCi0KICAg
ICAvLyBBZGQgaW5kZXhlZCBnZXR0ZXIgcmV0dXJuaW5nIGEgc3RyaW5nIG9yIG51bGwgdG8gYSBm
dW5jdGlvbiB0ZW1wbGF0ZSBmb3IgYSBjb2xsZWN0aW9uLgogICAgIHRlbXBsYXRlPGNsYXNzIENv
bGxlY3Rpb24+IHN0YXRpYyB2b2lkIHNldENvbGxlY3Rpb25TdHJpbmdPck51bGxJbmRleGVkR2V0
dGVyKHY4OjpIYW5kbGU8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGRlc2MpCiAgICAgewpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOERPTVdyYXBwZXIuY3BwCmluZGV4IDY1OTEzMjUuLjQyNjNlNzMgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcAorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAKQEAgLTI3NiwyNiArMjc2LDEyIEBAIHY4OjpQZXJz
aXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBWOERPTVdyYXBwZXI6OmdldFRlbXBsYXRlKFY4
Q2xhc3NJbmRleDo6VjhXCiAgICAgICAgIC8vIHNldHRlci4gVGhlcmVmb3JlLCB0aGUgaW50ZXJj
ZXB0b3IgaGFzIHRvIGJlIG9uIHRoZSBvYmplY3QKICAgICAgICAgLy8gaXRzZWxmIGFuZCBub3Qg
b24gdGhlIHByb3RvdHlwZSBvYmplY3QuCiAgICAgICAgIGRlc2NyaXB0b3ItPkluc3RhbmNlVGVt
cGxhdGUoKS0+U2V0TmFtZWRQcm9wZXJ0eUhhbmRsZXIoIFVTRV9OQU1FRF9QUk9QRVJUWV9HRVRU
RVIoQ1NTU3R5bGVEZWNsYXJhdGlvbiksIFVTRV9OQU1FRF9QUk9QRVJUWV9TRVRURVIoQ1NTU3R5
bGVEZWNsYXJhdGlvbikpOwotICAgICAgICBzZXRDb2xsZWN0aW9uU3RyaW5nSW5kZXhlZEdldHRl
cjxDU1NTdHlsZURlY2xhcmF0aW9uPihkZXNjcmlwdG9yKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBWOENsYXNzSW5kZXg6OkNTU1JVTEVMSVNUOgotICAgICAgICBzZXRDb2xsZWN0aW9uSW5k
ZXhlZEdldHRlcjxDU1NSdWxlTGlzdCwgQ1NTUnVsZT4oZGVzY3JpcHRvciwgIFY4Q2xhc3NJbmRl
eDo6Q1NTUlVMRSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgVjhDbGFzc0luZGV4OjpDU1NW
QUxVRUxJU1Q6Ci0gICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVkR2V0dGVyPENTU1ZhbHVlTGlz
dCwgQ1NTVmFsdWU+KGRlc2NyaXB0b3IsIFY4Q2xhc3NJbmRleDo6Q1NTVkFMVUUpOwotICAgICAg
ICBicmVhazsKLSAgICBjYXNlIFY4Q2xhc3NJbmRleDo6Q1NTVkFSSUFCTEVTREVDTEFSQVRJT046
Ci0gICAgICAgIHNldENvbGxlY3Rpb25TdHJpbmdJbmRleGVkR2V0dGVyPENTU1ZhcmlhYmxlc0Rl
Y2xhcmF0aW9uPihkZXNjcmlwdG9yKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBWOENsYXNz
SW5kZXg6OldFQktJVENTU1RSQU5TRk9STVZBTFVFOgotICAgICAgICBzZXRDb2xsZWN0aW9uSW5k
ZXhlZEdldHRlcjxXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZSwgQ1NTVmFsdWU+KGRlc2NyaXB0b3Is
IFY4Q2xhc3NJbmRleDo6Q1NTVkFMVUUpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFY4Q2xh
c3NJbmRleDo6SFRNTEFMTENPTExFQ1RJT046CiAgICAgICAgIGRlc2NyaXB0b3ItPkluc3RhbmNl
VGVtcGxhdGUoKS0+TWFya0FzVW5kZXRlY3RhYmxlKCk7IC8vIGZhbGwgdGhyb3VnaAogICAgIGNh
c2UgVjhDbGFzc0luZGV4OjpIVE1MQ09MTEVDVElPTjoKICAgICAgICAgZGVzY3JpcHRvci0+SW5z
dGFuY2VUZW1wbGF0ZSgpLT5TZXROYW1lZFByb3BlcnR5SGFuZGxlcihVU0VfTkFNRURfUFJPUEVS
VFlfR0VUVEVSKEhUTUxDb2xsZWN0aW9uKSk7CiAgICAgICAgIGRlc2NyaXB0b3ItPkluc3RhbmNl
VGVtcGxhdGUoKS0+U2V0Q2FsbEFzRnVuY3Rpb25IYW5kbGVyKFVTRV9DQUxMQkFDSyhIVE1MQ29s
bGVjdGlvbkNhbGxBc0Z1bmN0aW9uKSk7Ci0gICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVkR2V0
dGVyPEhUTUxDb2xsZWN0aW9uLCBOb2RlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6Ok5PREUp
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIFY4Q2xhc3NJbmRleDo6SFRNTE9QVElPTlNDT0xM
RUNUSU9OOgogICAgICAgICBkZXNjcmlwdG9yLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldE5hbWVk
UHJvcGVydHlIYW5kbGVyKFVTRV9OQU1FRF9QUk9QRVJUWV9HRVRURVIoSFRNTENvbGxlY3Rpb24p
KTsKQEAgLTM2MSwxMSArMzQ3LDggQEAgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxh
dGU+IFY4RE9NV3JhcHBlcjo6Z2V0VGVtcGxhdGUoVjhDbGFzc0luZGV4OjpWOFcKICAgICAgICAg
aW5zdGFuY2VUZW1wbGF0ZS0+U2V0SW50ZXJuYWxGaWVsZENvdW50KFY4Q3VzdG9tOjprU3R5bGVT
aGVldEludGVybmFsRmllbGRDb3VudCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KLSAgICBjYXNl
IFY4Q2xhc3NJbmRleDo6TUVESUFMSVNUOgotICAgICAgICBzZXRDb2xsZWN0aW9uU3RyaW5nT3JO
dWxsSW5kZXhlZEdldHRlcjxNZWRpYUxpc3Q+KGRlc2NyaXB0b3IpOwotICAgICAgICBicmVhazsK
ICAgICBjYXNlIFY4Q2xhc3NJbmRleDo6TUlNRVRZUEVBUlJBWToKLSAgICAgICAgc2V0Q29sbGVj
dGlvbkluZGV4ZWRBbmROYW1lZEdldHRlcnM8TWltZVR5cGVBcnJheSwgTWltZVR5cGU+KGRlc2Ny
aXB0b3IsIFY4Q2xhc3NJbmRleDo6TUlNRVRZUEUpOworICAgICAgICBzZXRDb2xsZWN0aW9uTmFt
ZWRHZXR0ZXI8TWltZVR5cGVBcnJheSwgTWltZVR5cGU+KGRlc2NyaXB0b3IsIFY4Q2xhc3NJbmRl
eDo6TUlNRVRZUEUpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFY4Q2xhc3NJbmRleDo6TkFN
RUROT0RFTUFQOiB7CiAgICAgICAgIC8vIFdlIGFkZCBhbiBleHRyYSBpbnRlcm5hbCBmaWVsZCB0
byBob2xkIGEgcmVmZXJlbmNlIHRvIHRoZSBvd25lciBub2RlLgpAQCAtMzgzLDE4ICszNjYsMTYg
QEAgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IFY4RE9NV3JhcHBlcjo6Z2V0
VGVtcGxhdGUoVjhDbGFzc0luZGV4OjpWOFcKICAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBj
YXNlIFY4Q2xhc3NJbmRleDo6Tk9ERUxJU1Q6Ci0gICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVk
R2V0dGVyPE5vZGVMaXN0LCBOb2RlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6Ok5PREUpOwog
ICAgICAgICBkZXNjcmlwdG9yLT5JbnN0YW5jZVRlbXBsYXRlKCktPlNldE5hbWVkUHJvcGVydHlI
YW5kbGVyKFVTRV9OQU1FRF9QUk9QRVJUWV9HRVRURVIoTm9kZUxpc3QpKTsKICAgICAgICAgYnJl
YWs7CiAgICAgY2FzZSBWOENsYXNzSW5kZXg6OlBMVUdJTjoKLSAgICAgICAgc2V0Q29sbGVjdGlv
bkluZGV4ZWRBbmROYW1lZEdldHRlcnM8UGx1Z2luLCBNaW1lVHlwZT4oZGVzY3JpcHRvciwgVjhD
bGFzc0luZGV4OjpNSU1FVFlQRSk7CisgICAgICAgIHNldENvbGxlY3Rpb25OYW1lZEdldHRlcjxQ
bHVnaW4sIE1pbWVUeXBlPihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6Ok1JTUVUWVBFKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBWOENsYXNzSW5kZXg6OlBMVUdJTkFSUkFZOgotICAgICAg
ICBzZXRDb2xsZWN0aW9uSW5kZXhlZEFuZE5hbWVkR2V0dGVyczxQbHVnaW5BcnJheSwgUGx1Z2lu
PihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6OlBMVUdJTik7CisgICAgICAgIHNldENvbGxlY3Rp
b25OYW1lZEdldHRlcjxQbHVnaW5BcnJheSwgUGx1Z2luPihkZXNjcmlwdG9yLCBWOENsYXNzSW5k
ZXg6OlBMVUdJTik7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVjhDbGFzc0luZGV4OjpTVFlM
RVNIRUVUTElTVDoKICAgICAgICAgZGVzY3JpcHRvci0+SW5zdGFuY2VUZW1wbGF0ZSgpLT5TZXRO
YW1lZFByb3BlcnR5SGFuZGxlcihVU0VfTkFNRURfUFJPUEVSVFlfR0VUVEVSKFN0eWxlU2hlZXRM
aXN0KSk7Ci0gICAgICAgIHNldENvbGxlY3Rpb25JbmRleGVkR2V0dGVyPFN0eWxlU2hlZXRMaXN0
LCBTdHlsZVNoZWV0PihkZXNjcmlwdG9yLCBWOENsYXNzSW5kZXg6OlNUWUxFU0hFRVQpOwogICAg
ICAgICBicmVhazsKICAgICBjYXNlIFY4Q2xhc3NJbmRleDo6RE9NV0lORE9XOiB7CiAgICAgICAg
IHY4OjpMb2NhbDx2ODo6U2lnbmF0dXJlPiBkZWZhdWx0U2lnbmF0dXJlID0gdjg6OlNpZ25hdHVy
ZTo6TmV3KGRlc2NyaXB0b3IpOwo=
</data>
<flag name="commit-queue"
          id="26733"
          type_id="3"
          status="-"
          setter="dglazkov"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>44822</attachid>
            <date>2009-12-14 14:11:38 -0800</date>
            <delta_ts>2009-12-14 14:11:38 -0800</delta_ts>
            <desc>An example of new generated file.</desc>
            <filename>V8CSSRuleList.cpp</filename>
            <type>text/plain</type>
            <size>3853</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">LyoKICAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBXZWJLaXQgb3BlbiBzb3VyY2UgcHJvamVj
dC4KICAgIFRoaXMgZmlsZSBoYXMgYmVlbiBnZW5lcmF0ZWQgYnkgZ2VuZXJhdGUtYmluZGluZ3Mu
cGwuIERPIE5PVCBNT0RJRlkhCgogICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKICAgIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgogICAgdmVyc2lvbiAy
IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoK
ICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAogICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl
IGltcGxpZWQgd2FycmFudHkgb2YKICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAgICBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KCiAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2
ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiAgICBh
bG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90
LCB3cml0ZSB0bwogICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVt
cGxlIFBsYWNlIC0gU3VpdGUgMzMwLAogICAgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCiov
CiNpbmNsdWRlICJjb25maWcuaCIKI2luY2x1ZGUgIlY4UHJveHkuaCIKI2luY2x1ZGUgIlY4Qmlu
ZGluZy5oIgojaW5jbHVkZSAiVjhCaW5kaW5nU3RhdGUuaCIKCiN1bmRlZiBMT0cKCiNpbmNsdWRl
ICJDU1NSdWxlLmgiCiNpbmNsdWRlICJDU1NSdWxlTGlzdC5oIgojaW5jbHVkZSAiVjhDU1NSdWxl
TGlzdC5oIgojaW5jbHVkZSAiVjhDb2xsZWN0aW9uLmgiCiNpbmNsdWRlICJWOFByb3h5LmgiCiNp
bmNsdWRlICJ3dGYvR2V0UHRyLmgiCiNpbmNsdWRlICJ3dGYvUmVmQ291bnRlZC5oIgojaW5jbHVk
ZSAid3RmL1JlZlB0ci5oIgoKbmFtZXNwYWNlIFdlYkNvcmUgewpuYW1lc3BhY2UgQ1NTUnVsZUxp
c3RJbnRlcm5hbCB7Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBWOF9VU0UoVCkgeyB9Cgog
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbGVuZ3RoQXR0ckdldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykgewogICAgSU5D
X1NUQVRTKCJET00uQ1NTUnVsZUxpc3QubGVuZ3RoLl9nZXQiKTsKICAgIHY4OjpIYW5kbGU8djg6
Ok9iamVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgIENTU1J1bGVMaXN0KiBpbXAgPSB2
OERPTVdyYXBwZXJUbzxDU1NSdWxlTGlzdD4oVjhDbGFzc0luZGV4OjpDU1NSVUxFTElTVCwgaW5m
byk7CiAgICByZXR1cm4gdjg6OkludGVnZXI6Ok5ld0Zyb21VbnNpZ25lZChpbXAtPmxlbmd0aCgp
KTsKICB9CgogIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaXRlbUNhbGxiYWNrKGNvbnN0
IHY4OjpBcmd1bWVudHMmIGFyZ3MpIHsKICAgIElOQ19TVEFUUygiRE9NLkNTU1J1bGVMaXN0Lml0
ZW0iKTsKICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0gYXJncy5Ib2xkZXIoKTsK
ICAgIENTU1J1bGVMaXN0KiBpbXAgPSB2OERPTVdyYXBwZXJUbzxDU1NSdWxlTGlzdD4oVjhDbGFz
c0luZGV4OjpDU1NSVUxFTElTVCwgaG9sZGVyKTsKICAgIHVuc2lnbmVkIGluZGV4ID0gdG9JbnQz
MihhcmdzWzBdKTsKICAgIHJldHVybiBWOERPTVdyYXBwZXI6OmNvbnZlcnRUb1Y4T2JqZWN0KFY4
Q2xhc3NJbmRleDo6Q1NTUlVMRSwgaW1wLT5pdGVtKGluZGV4KSk7CiAgfQoKfSAvLyBuYW1lc3Bh
Y2UgQ1NTUnVsZUxpc3RJbnRlcm5hbAoKc3RhdGljIGNvbnN0IEJhdGNoZWRBdHRyaWJ1dGUgQ1NT
UnVsZUxpc3RfYXR0cnNbXSA9IHsKICAgIHsKICAgICAgICAvLyBBdHRyaWJ1dGUgJ2xlbmd0aCcg
KFR5cGU6ICdyZWFkb25seSBhdHRyaWJ1dGUnIEV4dEF0dHI6ICcnKQogICAgICAgICJsZW5ndGgi
LAogICAgICAgIENTU1J1bGVMaXN0SW50ZXJuYWw6Omxlbmd0aEF0dHJHZXR0ZXIsCiAgICAgICAg
MCwKICAgICAgICBWOENsYXNzSW5kZXg6OklOVkFMSURfQ0xBU1NfSU5ERVggLyogbm8gZGF0YSAq
LywKICAgICAgICBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLAog
ICAgICAgIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLAogICAg
ICAgIDAgLyogb24gaW5zdGFuY2UgKi8KICAgIH0sCn07CnN0YXRpYyBjb25zdCBCYXRjaGVkQ2Fs
bGJhY2sgQ1NTUnVsZUxpc3RfY2FsbGJhY2tzW10gPSB7CiAgeyJpdGVtIiwgQ1NTUnVsZUxpc3RJ
bnRlcm5hbDo6aXRlbUNhbGxiYWNrfSwKfTsKc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5j
dGlvblRlbXBsYXRlPiBDb25maWd1cmVWOENTU1J1bGVMaXN0VGVtcGxhdGUodjg6OlBlcnNpc3Rl
bnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGRlc2MpIHsKICB2ODo6TG9jYWw8djg6OlNpZ25hdHVy
ZT4gZGVmYXVsdF9zaWduYXR1cmUgPSBjb25maWd1cmVUZW1wbGF0ZShkZXNjLCAiQ1NTUnVsZUxp
c3QiLAogICAgICBWOENsYXNzSW5kZXg6OklOVkFMSURfQ0xBU1NfSU5ERVgsIFY4Q3VzdG9tOjpr
RGVmYXVsdFdyYXBwZXJJbnRlcm5hbEZpZWxkQ291bnQsCiAgICAgIENTU1J1bGVMaXN0X2F0dHJz
LCBzaXplb2YoQ1NTUnVsZUxpc3RfYXR0cnMpL3NpemVvZigqQ1NTUnVsZUxpc3RfYXR0cnMpLAog
ICAgICBDU1NSdWxlTGlzdF9jYWxsYmFja3MsIHNpemVvZihDU1NSdWxlTGlzdF9jYWxsYmFja3Mp
L3NpemVvZigqQ1NTUnVsZUxpc3RfY2FsbGJhY2tzKSk7CiAgdjg6OkxvY2FsPHY4OjpPYmplY3RU
ZW1wbGF0ZT4gaW5zdGFuY2UgPSBkZXNjLT5JbnN0YW5jZVRlbXBsYXRlKCk7CiAgdjg6OkxvY2Fs
PHY4OjpPYmplY3RUZW1wbGF0ZT4gcHJvdG8gPSBkZXNjLT5Qcm90b3R5cGVUZW1wbGF0ZSgpOwog
IAogIHNldENvbGxlY3Rpb25JbmRleGVkR2V0dGVyPENTU1J1bGVMaXN0LCBDU1NSdWxlPihkZXNj
LCBWOENsYXNzSW5kZXg6OkNTU1JVTEUpOwogIHJldHVybiBkZXNjOwp9Cgp2ODo6UGVyc2lzdGVu
dDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gVjhDU1NSdWxlTGlzdDo6R2V0UmF3VGVtcGxhdGUoKSB7
CiAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBWOENTU1J1bGVM
aXN0X3Jhd19jYWNoZV8gPSBjcmVhdGVSYXdUZW1wbGF0ZSgpOwogIHJldHVybiBWOENTU1J1bGVM
aXN0X3Jhd19jYWNoZV87Cn0KCnY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBW
OENTU1J1bGVMaXN0OjpHZXRUZW1wbGF0ZSgpIHsKICBzdGF0aWMgdjg6OlBlcnNpc3RlbnQ8djg6
OkZ1bmN0aW9uVGVtcGxhdGU+IFY4Q1NTUnVsZUxpc3RfY2FjaGVfID0gQ29uZmlndXJlVjhDU1NS
dWxlTGlzdFRlbXBsYXRlKEdldFJhd1RlbXBsYXRlKCkpOwogIHJldHVybiBWOENTU1J1bGVMaXN0
X2NhY2hlXzsKfQoKYm9vbCBWOENTU1J1bGVMaXN0OjpIYXNJbnN0YW5jZSh2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdmFsdWUpIHsKICByZXR1cm4gR2V0UmF3VGVtcGxhdGUoKS0+SGFzSW5zdGFuY2Uo
dmFsdWUpOwp9Cgp9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>