<?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>70938</bug_id>
          
          <creation_ts>2011-10-26 09:55:01 -0700</creation_ts>
          <short_desc>AX: crash when accessing selectedTab in a tab list</short_desc>
          <delta_ts>2011-11-09 12:04:26 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>bdakin</cc>
    
    <cc>gustavo</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>490953</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-10-26 09:55:01 -0700</bug_when>
    <thetext>This crash can be hit if a tab object was modified and the children list not updated in the meantime


Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x00007fff84987ea2 WebCore::AccessibilityRenderObject::isChecked() const + 16
1   com.apple.WebCore             	0x00007fff84ffc667 WebCore::AccessibilityRenderObject::selectedTabItem() + 127
2   com.apple.WebCore             	0x00007fff84967b11 -[AccessibilityObjectWrapper accessibilityAttributeValue:] + 3377
3   com.apple.AppKit              	0x00007fff86d3436e -[NSObject(NSAccessibilityInternal) _accessibilityValueForAttribute:clientError:] + 240
4   com.apple.AppKit              	0x00007fff86d38f5b CopyAppKitUIElementAttributeValueNoCatch + 55
5   com.apple.AppKit              	0x00007fff86d3695d CopyAttributeValue + 316
6   com.apple.HIServices          	0x00007fff8bb16c1f _AXXMIGCopyAttributeValue + 225
7   com.apple.HIServices          	0x00007fff8bb20381 _XCopyAttributeValue + 619
8   com.apple.HIServices          	0x00007fff8bafafce mshMIGPerform + 564
9   com.apple.CoreFoundation      	0x00007fff88c5221c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 44
10  com.apple.CoreFoundation      	0x00007fff88c51f4b __CFRunLoopDoSource1 + 155
11  com.apple.CoreFoundation      	0x00007fff88c886b7 __CFRunLoopRun + 1895
12  com.apple.CoreFoundation      	0x00007fff88c87c16 CFRunLoopRunSpecific + 230
13  com.apple.HIToolbox           	0x00007fff8789544f RunCurrentEventLoopInMode + 277
14  com.apple.HIToolbox           	0x00007fff8789c6b9 ReceiveNextEventCommon + 355
15  com.apple.HIToolbox           	0x00007fff8789c546 BlockUntilNextEventMatchingListInMode + 62
16  com.apple.AppKit              	0x00007fff86a9bac5 _DPSNextEvent + 659
17  com.apple.AppKit              	0x00007fff86a9b3c9 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
18  com.apple.AppKit              	0x00007fff86a97d01 -[NSApplication run] + 470
19  com.apple.WebKit2             	0x00007fff85fab483 WebKit::WebProcessMain(WebKit::CommandLine const&amp;) + 587
20  com.apple.WebKit2             	0x00007fff85f979c6 WebKitMain + 268
21  com.apple.WebProcess          	0x000000010ebcfda4 0x10ebcf000 + 3492</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491215</commentid>
    <comment_count>1</comment_count>
      <attachid>112604</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-10-26 15:15:11 -0700</bug_when>
    <thetext>Created attachment 112604
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491216</commentid>
    <comment_count>2</comment_count>
      <attachid>112604</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-10-26 15:16:18 -0700</bug_when>
    <thetext>Comment on attachment 112604
patch

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

&gt; Tools/DumpRenderTree/AccessibilityUIElement.h:180
&gt;      // ARIA specific

will remove whitespace in submission</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491291</commentid>
    <comment_count>3</comment_count>
      <attachid>112604</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-10-26 17:23:47 -0700</bug_when>
    <thetext>Comment on attachment 112604
patch

Attachment 112604 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/10212889</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491336</commentid>
    <comment_count>4</comment_count>
      <attachid>112635</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-10-26 20:37:14 -0700</bug_when>
    <thetext>Created attachment 112635
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498550</commentid>
    <comment_count>5</comment_count>
      <attachid>112635</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-11-08 17:24:50 -0800</bug_when>
    <thetext>Comment on attachment 112635
patch

r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498672</commentid>
    <comment_count>6</comment_count>
      <attachid>112635</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-08 22:57:20 -0800</bug_when>
    <thetext>Comment on attachment 112635
patch

Rejecting attachment 112635 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

Last 500 characters of output:
  return self.open(self.click(*args, **kwds))
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py&quot;, line 203, in open
    return self._mech_open(url, data, timeout=timeout)
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py&quot;, line 255, in _mech_open
    raise response
webkitpy.thirdparty.autoinstalled.mechanize._response.httperror_seek_wrapper: HTTP Error 500: Internal Server Error

Full output: http://queues.webkit.org/results/10377126</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499165</commentid>
    <comment_count>7</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-11-09 11:10:10 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/99740</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499188</commentid>
    <comment_count>8</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2011-11-09 11:31:20 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; http://trac.webkit.org/changeset/99740

FYI there was a bad merge that made the bots red. I corrected it in http://trac.webkit.org/changeset/99741. Hopefully there was nothing else.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499209</commentid>
    <comment_count>9</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-11-09 11:51:13 -0800</bug_when>
    <thetext>I made another attempt with http://trac.webkit.org/changeset/99743</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499222</commentid>
    <comment_count>10</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-11-09 12:01:04 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; I made another attempt with http://trac.webkit.org/changeset/99743

After that change I see


/Volumes/data/WebKit-4/Tools/DumpRenderTree/mac/AccessibilityUIElementMac.mm:483:48:{483:24-483:48}: error: out-of-line definition of &apos;uiElementAttributeValue&apos; does not match any declaration in &apos;AccessibilityUIElement&apos; [3]
 AccessibilityUIElement AccessibilityUIElement::uiElementAttributeValue(JSStringRef attribute)
                        ~~~~~~~~~~~~~~~~~~~~~~~~^

I&apos;ll take a look at it now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499226</commentid>
    <comment_count>11</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-11-09 12:04:26 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; I made another attempt with http://trac.webkit.org/changeset/99743

And revision 99746.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112604</attachid>
            <date>2011-10-26 15:15:11 -0700</date>
            <delta_ts>2011-10-26 20:37:14 -0700</delta_ts>
            <desc>patch</desc>
            <filename>p1</filename>
            <type>text/plain</type>
            <size>12385</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTAtMjYgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogY3Jhc2ggd2hlbiBh
Y2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKworICAgICAgICBUaGVyZSB3ZXJlIGEg
ZmV3IG1ldGhvZHMgYWNjZXNzaW5nIG1fY2hpbGRyZW4gZGlyZWN0bHkgd2l0aG91dCBmaXJzdCB2
YWxpZGF0aW5nIHRoYXQgdGhvc2UgZWxlbWVudHMKKyAgICAgICAgbmVlZGVkIHRvIGJlIHVwZGF0
ZWQgKGJlY2F1c2UgdGhlIGxheW91dCBjaGFuZ2VkKS4gQ2hhbmdpbmcgdGhvc2UgdG8gY2FsbCBj
aGlsZHJlbigpIGVuc3VyZXMKKyAgICAgICAgdGhhdCB0aGV5IHdpbGwgaGF2ZSB0aGUgY29ycmVj
dCBjaGlsZHJlbi4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3RlZC10YWItY3Jhc2gu
aHRtbAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmlzQ2hl
Y2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpzZWxl
Y3RlZFJhZGlvQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3Q6OnNlbGVjdGVkVGFiSXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0OjphcmlhTGlzdGJveFZpc2libGVDaGlsZHJlbik6CisgICAgICAgIChXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Ojp0YWJDaGlsZHJlbik6CisKIDIwMTEtMTAt
MjYgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3By
b2JsZW0vMTAzNTA3NzU+IFJFR1JFU1NJT04gKHI5NzAzMik6IFNsaWRlciB0aHVtYiBpcyBub3Qg
ZHJhd24KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gOTg1MjApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC02MjgsMTEgKzYyOCwxMyBAQAogYm9vbCBBY2Nlc3NpYmlsaXR5UmVu
ZGVyT2JqZWN0Ojppc0NoZWNrZWQoKSBjb25zdAogewogICAgIEFTU0VSVChtX3JlbmRlcmVyKTsK
LSAgICBpZiAoIW1fcmVuZGVyZXItPm5vZGUoKSkKKyAgICAKKyAgICBOb2RlKiBub2RlID0gdGhp
cy0+bm9kZSgpOworICAgIGlmICghbm9kZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
Ly8gRmlyc3QgdGVzdCBmb3IgbmF0aXZlIGNoZWNrZWRuZXNzIHNlbWFudGljcwotICAgIEhUTUxJ
bnB1dEVsZW1lbnQqIGlucHV0RWxlbWVudCA9IG1fcmVuZGVyZXItPm5vZGUoKS0+dG9JbnB1dEVs
ZW1lbnQoKTsKKyAgICBIVE1MSW5wdXRFbGVtZW50KiBpbnB1dEVsZW1lbnQgPSBub2RlLT50b0lu
cHV0RWxlbWVudCgpOwogICAgIGlmIChpbnB1dEVsZW1lbnQpCiAgICAgICAgIHJldHVybiBpbnB1
dEVsZW1lbnQtPnNob3VsZEFwcGVhckNoZWNrZWQoKTsKIApAQCAtNzc1LDEwICs3NzcsMTIgQEAK
ICAgICBpZiAoIWlzUmFkaW9Hcm91cCgpKQogICAgICAgICByZXR1cm4gMDsKICAgICAKKyAgICBB
Y2Nlc3NpYmlsaXR5T2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgY2hpbGRyZW4g
PSB0aGlzLT5jaGlsZHJlbigpOworCiAgICAgLy8gRmluZCB0aGUgY2hpbGQgcmFkaW8gYnV0dG9u
IHRoYXQgaXMgc2VsZWN0ZWQgKGllLiB0aGUgaW50VmFsdWUgPT0gMSkuCi0gICAgaW50IGNvdW50
ID0gbV9jaGlsZHJlbi5zaXplKCk7Ci0gICAgZm9yIChpbnQgaSA9IDA7IGkgPCBjb3VudDsgKytp
KSB7Ci0gICAgICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIG9iamVjdCA9IG1fY2hpbGRyZW5baV0u
Z2V0KCk7CisgICAgc2l6ZV90IHNpemUgPSBjaGlsZHJlbi5zaXplKCk7CisgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKKyAgICAgICAgQWNjZXNzaWJpbGl0eU9iamVjdCog
b2JqZWN0ID0gY2hpbGRyZW5baV0uZ2V0KCk7CiAgICAgICAgIGlmIChvYmplY3QtPnJvbGVWYWx1
ZSgpID09IFJhZGlvQnV0dG9uUm9sZSAmJiBvYmplY3QtPmNoZWNrYm94T3JSYWRpb1ZhbHVlKCkg
PT0gQnV0dG9uU3RhdGVPbikKICAgICAgICAgICAgIHJldHVybiBvYmplY3Q7CiAgICAgfQpAQCAt
Nzk0LDkgKzc5OCwxMSBAQAogICAgIEFjY2Vzc2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlD
aGlsZHJlblZlY3RvciB0YWJzOwogICAgIHRhYkNoaWxkcmVuKHRhYnMpOwogICAgIAotICAgIGlu
dCBjb3VudCA9IHRhYnMuc2l6ZSgpOwotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY291bnQ7ICsr
aSkgewotICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmplY3QgPSBtX2NoaWxkcmVuW2ld
LmdldCgpOworICAgIEFjY2Vzc2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZl
Y3RvciBjaGlsZHJlbiA9IHRoaXMtPmNoaWxkcmVuKCk7CisgICAgCisgICAgc2l6ZV90IHNpemUg
PSB0YWJzLnNpemUoKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkgewor
ICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmplY3QgPSBjaGlsZHJlbltpXS5nZXQoKTsK
ICAgICAgICAgaWYgKG9iamVjdC0+aXNUYWJJdGVtKCkgJiYgb2JqZWN0LT5pc0NoZWNrZWQoKSkK
ICAgICAgICAgICAgIHJldHVybiBvYmplY3Q7CiAgICAgfQpAQCAtMzY2MiwxMCArMzY2OCwxMSBA
QAogICAgIGlmICghaGFzQ2hpbGRyZW4oKSkKICAgICAgICAgYWRkQ2hpbGRyZW4oKTsKICAgICAK
LSAgICB1bnNpZ25lZCBsZW5ndGggPSBtX2NoaWxkcmVuLnNpemUoKTsKLSAgICBmb3IgKHVuc2ln
bmVkIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgaWYgKCFtX2NoaWxkcmVuW2ld
LT5pc09mZlNjcmVlbigpKQotICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChtX2NoaWxkcmVuW2ld
KTsKKyAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3Ig
Y2hpbGRyZW4gPSB0aGlzLT5jaGlsZHJlbigpOworICAgIHNpemVfdCBzaXplID0gY2hpbGRyZW4u
c2l6ZSgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CisgICAgICAg
IGlmICghY2hpbGRyZW5baV0tPmlzT2ZmU2NyZWVuKCkpCisgICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKGNoaWxkcmVuW2ldKTsKICAgICB9CiB9CiAKQEAgLTM2ODUsMTAgKzM2OTIsMTEgQEAKIHsK
ICAgICBBU1NFUlQocm9sZVZhbHVlKCkgPT0gVGFiTGlzdFJvbGUpOwogICAgIAotICAgIHVuc2ln
bmVkIGxlbmd0aCA9IG1fY2hpbGRyZW4uc2l6ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICBpZiAobV9jaGlsZHJlbltpXS0+aXNUYWJJdGVt
KCkpCi0gICAgICAgICAgICByZXN1bHQuYXBwZW5kKG1fY2hpbGRyZW5baV0pOworICAgIEFjY2Vz
c2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBjaGlsZHJlbiA9IHRo
aXMtPmNoaWxkcmVuKCk7CisgICAgc2l6ZV90IHNpemUgPSBjaGlsZHJlbi5zaXplKCk7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKKyAgICAgICAgaWYgKGNoaWxkcmVu
W2ldLT5pc1RhYkl0ZW0oKSkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoY2hpbGRyZW5baV0p
OwogICAgIH0KIH0KICAgICAKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTIxKQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMTAtMjYg
IENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogY3Jh
c2ggd2hlbiBhY2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sOiBBZGRl
ZC4KKwogMjAxMS0xMC0yNiAgQ2FyeSBDbGFyayAgPGNhcnljbGFya0Bnb29nbGUuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQgZ2FyZGVuaW5nOiBzaXh0aCBjaHVuayBvZiBiYXNlbGluZXMgZm9y
IENocm9taXVtLVNraWEKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmls
aXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQt
dGFiLWNyYXNoLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBI
VE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRl
c3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gZmFsc2U7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBpZD0iYm9keSI+CisKKzxkaXYg
cm9sZT0idGFibGlzdCIgdGFiaW5kZXg9IjAiIGlkPSJ0YWJsaXN0Ij4KKzxkaXYgcm9sZT0idGFi
IiBhcmlhLWNoZWNrZWQ9InRydWUiIGlkPSJzZWxlY3RlZHRhYiI+dGFiIDE8L2Rpdj4KKzxkaXYg
cm9sZT0idGFiIj50YWIgMjwvZGl2PgorPGRpdiByb2xlPSJ0YWIiPnRhYiAzPC9kaXY+Cis8L2Rp
dj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPHNjcmlwdD4KKworICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgaWYgYSB0YWJs
aXN0cyBjaGlsZHJlbiBhcmUgdXBkYXRlZCwgd2Ugd2lsbCBub3QgY3Jhc2ggYWNjZXNzaW5nIGFu
IG9sZCBvYmplY3QuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVy
KSB7CisKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhYmxpc3QiKS5mb2N1cygp
OworICAgICAgICB2YXIgdGFibGlzdCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRF
bGVtZW50OworCisgICAgICAgIC8vIEl0ZXJhdGUgYWxsIHRoZSBjaGlsZHJlbiBzbyB3ZSBoYXZl
IGEgY2FjaGUgb2YgdGhlbS4KKyAgICAgICAgdGFibGlzdC5hdHRyaWJ1dGVzT2ZDaGlsZHJlbigp
OworCisgICAgICAgIC8vIFJldHJpZXZlIGFuZCB2ZXJpZnkgd2UgaGF2ZSB0aGUgcmlnaHQgc2Vs
ZWN0ZWQgY2hpbGQuCisgICAgICAgIHZhciBzZWxlY3RlZFRhYiA9IHRhYmxpc3QudWlFbGVtZW50
QXR0cmlidXRlVmFsdWUoIkFYVmFsdWUiKTsKKworICAgICAgICAvLyBEZWxldGUgdGhlIHNlbGVj
dGVkIGNoaWxkLgorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFibGlzdCIpLnJl
bW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZWxlY3RlZHRhYiIpKTsKKworICAg
ICAgICAvLyBSZXRyaWV2ZSB0aGUgdGFiLiBXZSBzaG91bGQgbm90IGNyYXNoIGhlcmUhCisgICAg
ICAgIHZhciBzZWxlY3RlZFRhYiA9IHRhYmxpc3QudWlFbGVtZW50QXR0cmlidXRlVmFsdWUoIkFY
VmFsdWUiKTsKKyAgICB9CisKKyAgICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3Jp
cHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQtdGFiLWNyYXNoLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxl
Y3RlZC10YWItY3Jhc2gtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQtdGFiLWNyYXNoLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordGFiIDIKK3RhYiAzCitUaGlzIHRlc3Rz
IHRoYXQgaWYgYSB0YWJsaXN0cyBjaGlsZHJlbiBhcmUgdXBkYXRlZCwgd2Ugd2lsbCBub3QgY3Jh
c2ggYWNjZXNzaW5nIGFuIG9sZCBvYmplY3QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJ
bmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5j
cHAJKHJldmlzaW9uIDk4NTIwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0
eVVJRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3NCw2ICszNzQsMTUgQEAKICAgICBy
ZXR1cm4gcmVzdWx0OwogfQogCitzdGF0aWMgSlNWYWx1ZVJlZiB1aUVsZW1lbnRBdHRyaWJ1dGVW
YWx1ZUNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwg
SlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFs
dWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKK3sKKyAgICBKU1N0cmlu
Z1JlZiBhdHRyaWJ1dGUgPSAwOworICAgIGlmIChhcmd1bWVudENvdW50ID09IDEpCisgICAgICAg
IGF0dHJpYnV0ZSA9IEpTVmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgYXJndW1lbnRzWzBdLCBl
eGNlcHRpb24pOworICAgIAorICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjptYWtl
SlNBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KGNvbnRleHQsIHRvQVhFbGVtZW50KHRoaXNPYmplY3Qp
LT51aUVsZW1lbnRBdHRyaWJ1dGVWYWx1ZShhdHRyaWJ1dGUpKTsKK30KKwogc3RhdGljIEpTVmFs
dWVSZWYgbnVtYmVyQXR0cmlidXRlVmFsdWVDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwg
SlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1
bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNl
cHRpb24pCiB7CiAgICAgSlNTdHJpbmdSZWYgYXR0cmlidXRlID0gMDsKQEAgLTg1OSw2ICs4Njgs
NyBAQAogdm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZXRTZWxlY3RlZENoaWxkKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQqKSBjb25zdCB7IH0KIHVuc2lnbmVkIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNlbGVjdGVkQ2hpbGRyZW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2VsZWN0ZWRDaGlsZEF0
SW5kZXgodW5zaWduZWQpIGNvbnN0IHsgcmV0dXJuIDA7IH0KK0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUoSlNTdHJp
bmdSZWYpIGNvbnN0IHsgcmV0dXJuIDA7IH0KICNlbmRpZgogCiAjaWYgIVBMQVRGT1JNKFdJTikK
QEAgLTEwMjAsNiArMTAzMCw3IEBACiAgICAgICAgIHsgInRpdGxlVUlFbGVtZW50IiwgdGl0bGVV
SUVsZW1lbnRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRTZWxlY3RlZFRleHRSYW5n
ZSIsIHNldFNlbGVjdGVkVGV4dFJhbmdlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVh
ZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic3Ry
aW5nQXR0cmlidXRlVmFsdWUiLCBzdHJpbmdBdHRyaWJ1dGVWYWx1ZUNhbGxiYWNrLCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0s
CisgICAgICAgIHsgInVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlIiwgdWlFbGVtZW50QXR0cmlidXRl
VmFsdWVDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJudW1iZXJBdHRyaWJ1dGVWYWx1ZSIs
IG51bWJlckF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9u
bHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAiYm9vbEF0
dHJpYnV0ZVZhbHVlIiwgYm9vbEF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0
cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAg
ICAgeyAiaXNBdHRyaWJ1dGVTdXBwb3J0ZWQiLCBpc0F0dHJpYnV0ZVN1cHBvcnRlZENhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudE1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQkocmV2aXNpb24gOTg1MjApCisrKyBUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtNDgwLDYgKzQ4MCwxNyBAQAogICAgIHJldHVybiAwOwogfQogCitBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEF0dHJpYnV0ZVZhbHVl
KEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkKK3sKKyAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMK
KyAgICBpZCB1aUVsZW1lbnQgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1
ZTpbTlNTdHJpbmcgc3RyaW5nV2l0aEpTU3RyaW5nUmVmOmF0dHJpYnV0ZV1dOworICAgIHJldHVy
biBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KHVpRWxlbWVudCk7CisgICAgRU5EX0FYX09CSkNfRVhD
RVBUSU9OUworICAgIAorICAgIHJldHVybiAwOworfQorCisKIGRvdWJsZSBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpudW1iZXJBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpCiB7
CiAgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJl
ZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRl
clRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCShyZXZpc2lvbiA5ODUyMCkKKysrIFRvb2xz
L0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMTA1LDYgKzEwNSw3IEBACiAgICAgLy8gQXR0cmlidXRlcyAtIHBsYXRmb3JtLWluZGVwZW5k
ZW50IGltcGxlbWVudGF0aW9ucwogICAgIEpTU3RyaW5nUmVmIHN0cmluZ0F0dHJpYnV0ZVZhbHVl
KEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSk7CiAgICAgZG91YmxlIG51bWJlckF0dHJpYnV0ZVZhbHVl
KEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSk7CisgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudCB1aUVs
ZW1lbnRBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpOyAgICAKICAgICBib29s
IGJvb2xBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpOwogICAgIGJvb2wgaXNB
dHRyaWJ1dGVTdXBwb3J0ZWQoSlNTdHJpbmdSZWYgYXR0cmlidXRlKTsKICAgICBib29sIGlzQXR0
cmlidXRlU2V0dGFibGUoSlNTdHJpbmdSZWYgYXR0cmlidXRlKTsKQEAgLTE3NSw3ICsxNzYsNyBA
QAogICAgIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgc2VsZWN0ZWRSb3dBdEluZGV4KHVuc2lnbmVk
KTsKICAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IGRpc2Nsb3NlZEJ5Um93KCk7CiAgICAgQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudCBkaXNjbG9zZWRSb3dBdEluZGV4KHVuc2lnbmVkKTsKLQorICAg
IAogICAgIC8vIEFSSUEgc3BlY2lmaWMKICAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IGFyaWFP
d25zRWxlbWVudEF0SW5kZXgodW5zaWduZWQpOwogICAgIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQg
YXJpYUZsb3dUb0VsZW1lbnRBdEluZGV4KHVuc2lnbmVkKTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTIxKQorKysgVG9v
bHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMjYg
IENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogY3Jh
c2ggd2hlbiBhY2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKworICAgICAgICBBZGQg
dGhlIGFiaWxpdHkgdG8gcmV0cmlldmUgYW4gZWxlbWVudCB0aHJvdWdoIGFuIGFyYml0cmFyeSBh
dHRyaWJ1dGUuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcDoKKyAgICAgICAg
KHVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2spOgorICAgICAgICAoQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUpOgorICAgICAgICAoQWNjZXNzaWJp
bGl0eVVJRWxlbWVudDo6Z2V0SlNDbGFzcyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudC5oOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9BY2Nl
c3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUpOgorCiAyMDExLTEwLTI2ICBTYW0gV2VpbmlnICA8
c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIGluaXRpYWwgc2V0dGluZyB0byBXS0Jyb3dz
aW5nQ29udGV4dEdyb3VwCg==
</data>
<flag name="commit-queue"
          id="110727"
          type_id="3"
          status="-"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112635</attachid>
            <date>2011-10-26 20:37:14 -0700</date>
            <delta_ts>2011-11-08 22:57:20 -0800</delta_ts>
            <desc>patch</desc>
            <filename>p1</filename>
            <type>text/plain</type>
            <size>12397</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTAtMjYgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogY3Jhc2ggd2hlbiBh
Y2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKworICAgICAgICBUaGVyZSB3ZXJlIGEg
ZmV3IG1ldGhvZHMgYWNjZXNzaW5nIG1fY2hpbGRyZW4gZGlyZWN0bHkgd2l0aG91dCBmaXJzdCB2
YWxpZGF0aW5nIHRoYXQgdGhvc2UgZWxlbWVudHMKKyAgICAgICAgbmVlZGVkIHRvIGJlIHVwZGF0
ZWQgKGJlY2F1c2UgdGhlIGxheW91dCBjaGFuZ2VkKS4gQ2hhbmdpbmcgdGhvc2UgdG8gY2FsbCBj
aGlsZHJlbigpIGVuc3VyZXMKKyAgICAgICAgdGhhdCB0aGV5IHdpbGwgaGF2ZSB0aGUgY29ycmVj
dCBjaGlsZHJlbi4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3RlZC10YWItY3Jhc2gu
aHRtbAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmlzQ2hl
Y2tlZCk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpzZWxl
Y3RlZFJhZGlvQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3Q6OnNlbGVjdGVkVGFiSXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0OjphcmlhTGlzdGJveFZpc2libGVDaGlsZHJlbik6CisgICAgICAgIChXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Ojp0YWJDaGlsZHJlbik6CisKIDIwMTEtMTAt
MjYgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3By
b2JsZW0vMTAzNTA3NzU+IFJFR1JFU1NJT04gKHI5NzAzMik6IFNsaWRlciB0aHVtYiBpcyBub3Qg
ZHJhd24KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gOTg1MjApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC02MjgsMTEgKzYyOCwxMyBAQAogYm9vbCBBY2Nlc3NpYmlsaXR5UmVu
ZGVyT2JqZWN0Ojppc0NoZWNrZWQoKSBjb25zdAogewogICAgIEFTU0VSVChtX3JlbmRlcmVyKTsK
LSAgICBpZiAoIW1fcmVuZGVyZXItPm5vZGUoKSkKKyAgICAKKyAgICBOb2RlKiBub2RlID0gdGhp
cy0+bm9kZSgpOworICAgIGlmICghbm9kZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
Ly8gRmlyc3QgdGVzdCBmb3IgbmF0aXZlIGNoZWNrZWRuZXNzIHNlbWFudGljcwotICAgIEhUTUxJ
bnB1dEVsZW1lbnQqIGlucHV0RWxlbWVudCA9IG1fcmVuZGVyZXItPm5vZGUoKS0+dG9JbnB1dEVs
ZW1lbnQoKTsKKyAgICBIVE1MSW5wdXRFbGVtZW50KiBpbnB1dEVsZW1lbnQgPSBub2RlLT50b0lu
cHV0RWxlbWVudCgpOwogICAgIGlmIChpbnB1dEVsZW1lbnQpCiAgICAgICAgIHJldHVybiBpbnB1
dEVsZW1lbnQtPnNob3VsZEFwcGVhckNoZWNrZWQoKTsKIApAQCAtNzc1LDEwICs3NzcsMTIgQEAK
ICAgICBpZiAoIWlzUmFkaW9Hcm91cCgpKQogICAgICAgICByZXR1cm4gMDsKICAgICAKKyAgICBB
Y2Nlc3NpYmlsaXR5T2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3IgY2hpbGRyZW4g
PSB0aGlzLT5jaGlsZHJlbigpOworCiAgICAgLy8gRmluZCB0aGUgY2hpbGQgcmFkaW8gYnV0dG9u
IHRoYXQgaXMgc2VsZWN0ZWQgKGllLiB0aGUgaW50VmFsdWUgPT0gMSkuCi0gICAgaW50IGNvdW50
ID0gbV9jaGlsZHJlbi5zaXplKCk7Ci0gICAgZm9yIChpbnQgaSA9IDA7IGkgPCBjb3VudDsgKytp
KSB7Ci0gICAgICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIG9iamVjdCA9IG1fY2hpbGRyZW5baV0u
Z2V0KCk7CisgICAgc2l6ZV90IHNpemUgPSBjaGlsZHJlbi5zaXplKCk7CisgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKKyAgICAgICAgQWNjZXNzaWJpbGl0eU9iamVjdCog
b2JqZWN0ID0gY2hpbGRyZW5baV0uZ2V0KCk7CiAgICAgICAgIGlmIChvYmplY3QtPnJvbGVWYWx1
ZSgpID09IFJhZGlvQnV0dG9uUm9sZSAmJiBvYmplY3QtPmNoZWNrYm94T3JSYWRpb1ZhbHVlKCkg
PT0gQnV0dG9uU3RhdGVPbikKICAgICAgICAgICAgIHJldHVybiBvYmplY3Q7CiAgICAgfQpAQCAt
Nzk0LDkgKzc5OCwxMSBAQAogICAgIEFjY2Vzc2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlD
aGlsZHJlblZlY3RvciB0YWJzOwogICAgIHRhYkNoaWxkcmVuKHRhYnMpOwogICAgIAotICAgIGlu
dCBjb3VudCA9IHRhYnMuc2l6ZSgpOwotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY291bnQ7ICsr
aSkgewotICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmplY3QgPSBtX2NoaWxkcmVuW2ld
LmdldCgpOworICAgIEFjY2Vzc2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZl
Y3RvciBjaGlsZHJlbiA9IHRoaXMtPmNoaWxkcmVuKCk7CisgICAgCisgICAgc2l6ZV90IHNpemUg
PSB0YWJzLnNpemUoKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkgewor
ICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmplY3QgPSBjaGlsZHJlbltpXS5nZXQoKTsK
ICAgICAgICAgaWYgKG9iamVjdC0+aXNUYWJJdGVtKCkgJiYgb2JqZWN0LT5pc0NoZWNrZWQoKSkK
ICAgICAgICAgICAgIHJldHVybiBvYmplY3Q7CiAgICAgfQpAQCAtMzY2MiwxMCArMzY2OCwxMSBA
QAogICAgIGlmICghaGFzQ2hpbGRyZW4oKSkKICAgICAgICAgYWRkQ2hpbGRyZW4oKTsKICAgICAK
LSAgICB1bnNpZ25lZCBsZW5ndGggPSBtX2NoaWxkcmVuLnNpemUoKTsKLSAgICBmb3IgKHVuc2ln
bmVkIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgaWYgKCFtX2NoaWxkcmVuW2ld
LT5pc09mZlNjcmVlbigpKQotICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChtX2NoaWxkcmVuW2ld
KTsKKyAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpBY2Nlc3NpYmlsaXR5Q2hpbGRyZW5WZWN0b3Ig
Y2hpbGRyZW4gPSB0aGlzLT5jaGlsZHJlbigpOworICAgIHNpemVfdCBzaXplID0gY2hpbGRyZW4u
c2l6ZSgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CisgICAgICAg
IGlmICghY2hpbGRyZW5baV0tPmlzT2ZmU2NyZWVuKCkpCisgICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKGNoaWxkcmVuW2ldKTsKICAgICB9CiB9CiAKQEAgLTM2ODUsMTAgKzM2OTIsMTEgQEAKIHsK
ICAgICBBU1NFUlQocm9sZVZhbHVlKCkgPT0gVGFiTGlzdFJvbGUpOwogICAgIAotICAgIHVuc2ln
bmVkIGxlbmd0aCA9IG1fY2hpbGRyZW4uc2l6ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICBpZiAobV9jaGlsZHJlbltpXS0+aXNUYWJJdGVt
KCkpCi0gICAgICAgICAgICByZXN1bHQuYXBwZW5kKG1fY2hpbGRyZW5baV0pOworICAgIEFjY2Vz
c2liaWxpdHlPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciBjaGlsZHJlbiA9IHRo
aXMtPmNoaWxkcmVuKCk7CisgICAgc2l6ZV90IHNpemUgPSBjaGlsZHJlbi5zaXplKCk7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKKyAgICAgICAgaWYgKGNoaWxkcmVu
W2ldLT5pc1RhYkl0ZW0oKSkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoY2hpbGRyZW5baV0p
OwogICAgIH0KIH0KICAgICAKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTIxKQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMTAtMjYg
IENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogY3Jh
c2ggd2hlbiBhY2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sOiBBZGRl
ZC4KKwogMjAxMS0xMC0yNiAgQ2FyeSBDbGFyayAgPGNhcnljbGFya0Bnb29nbGUuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQgZ2FyZGVuaW5nOiBzaXh0aCBjaHVuayBvZiBiYXNlbGluZXMgZm9y
IENocm9taXVtLVNraWEKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmls
aXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdGVkLXRhYi1jcmFzaC5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQt
dGFiLWNyYXNoLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBI
VE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRl
c3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gZmFsc2U7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBpZD0iYm9keSI+CisKKzxkaXYg
cm9sZT0idGFibGlzdCIgdGFiaW5kZXg9IjAiIGlkPSJ0YWJsaXN0Ij4KKzxkaXYgcm9sZT0idGFi
IiBhcmlhLWNoZWNrZWQ9InRydWUiIGlkPSJzZWxlY3RlZHRhYiI+dGFiIDE8L2Rpdj4KKzxkaXYg
cm9sZT0idGFiIj50YWIgMjwvZGl2PgorPGRpdiByb2xlPSJ0YWIiPnRhYiAzPC9kaXY+Cis8L2Rp
dj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPHNjcmlwdD4KKworICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgaWYgYSB0YWJs
aXN0cyBjaGlsZHJlbiBhcmUgdXBkYXRlZCwgd2Ugd2lsbCBub3QgY3Jhc2ggYWNjZXNzaW5nIGFu
IG9sZCBvYmplY3QuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVy
KSB7CisKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhYmxpc3QiKS5mb2N1cygp
OworICAgICAgICB2YXIgdGFibGlzdCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRF
bGVtZW50OworCisgICAgICAgIC8vIEl0ZXJhdGUgYWxsIHRoZSBjaGlsZHJlbiBzbyB3ZSBoYXZl
IGEgY2FjaGUgb2YgdGhlbS4KKyAgICAgICAgdGFibGlzdC5hdHRyaWJ1dGVzT2ZDaGlsZHJlbigp
OworCisgICAgICAgIC8vIFJldHJpZXZlIGFuZCB2ZXJpZnkgd2UgaGF2ZSB0aGUgcmlnaHQgc2Vs
ZWN0ZWQgY2hpbGQuCisgICAgICAgIHZhciBzZWxlY3RlZFRhYiA9IHRhYmxpc3QudWlFbGVtZW50
QXR0cmlidXRlVmFsdWUoIkFYVmFsdWUiKTsKKworICAgICAgICAvLyBEZWxldGUgdGhlIHNlbGVj
dGVkIGNoaWxkLgorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFibGlzdCIpLnJl
bW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZWxlY3RlZHRhYiIpKTsKKworICAg
ICAgICAvLyBSZXRyaWV2ZSB0aGUgdGFiLiBXZSBzaG91bGQgbm90IGNyYXNoIGhlcmUhCisgICAg
ICAgIHZhciBzZWxlY3RlZFRhYiA9IHRhYmxpc3QudWlFbGVtZW50QXR0cmlidXRlVmFsdWUoIkFY
VmFsdWUiKTsKKyAgICB9CisKKyAgICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3Jp
cHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQtdGFiLWNyYXNoLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxl
Y3RlZC10YWItY3Jhc2gtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0ZWQtdGFiLWNyYXNoLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAordGFiIDIKK3RhYiAzCitUaGlzIHRlc3Rz
IHRoYXQgaWYgYSB0YWJsaXN0cyBjaGlsZHJlbiBhcmUgdXBkYXRlZCwgd2Ugd2lsbCBub3QgY3Jh
c2ggYWNjZXNzaW5nIGFuIG9sZCBvYmplY3QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJ
bmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5j
cHAJKHJldmlzaW9uIDk4NTIwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0
eVVJRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3NCw2ICszNzQsMTUgQEAKICAgICBy
ZXR1cm4gcmVzdWx0OwogfQogCitzdGF0aWMgSlNWYWx1ZVJlZiB1aUVsZW1lbnRBdHRyaWJ1dGVW
YWx1ZUNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwg
SlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFs
dWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKK3sKKyAgICBKU1N0cmlu
Z1JlZiBhdHRyaWJ1dGUgPSAwOworICAgIGlmIChhcmd1bWVudENvdW50ID09IDEpCisgICAgICAg
IGF0dHJpYnV0ZSA9IEpTVmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgYXJndW1lbnRzWzBdLCBl
eGNlcHRpb24pOworICAgIAorICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjptYWtl
SlNBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KGNvbnRleHQsIHRvQVhFbGVtZW50KHRoaXNPYmplY3Qp
LT51aUVsZW1lbnRBdHRyaWJ1dGVWYWx1ZShhdHRyaWJ1dGUpKTsKK30KKwogc3RhdGljIEpTVmFs
dWVSZWYgbnVtYmVyQXR0cmlidXRlVmFsdWVDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwg
SlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1
bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNl
cHRpb24pCiB7CiAgICAgSlNTdHJpbmdSZWYgYXR0cmlidXRlID0gMDsKQEAgLTg1OSw2ICs4Njgs
NyBAQAogdm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZXRTZWxlY3RlZENoaWxkKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQqKSBjb25zdCB7IH0KIHVuc2lnbmVkIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnNlbGVjdGVkQ2hpbGRyZW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6c2VsZWN0ZWRDaGlsZEF0
SW5kZXgodW5zaWduZWQpIGNvbnN0IHsgcmV0dXJuIDA7IH0KK0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUoSlNTdHJp
bmdSZWYpIGNvbnN0IHsgcmV0dXJuIDA7IH0KICNlbmRpZgogCiAjaWYgIVBMQVRGT1JNKFdJTikK
QEAgLTEwMjAsNiArMTAzMCw3IEBACiAgICAgICAgIHsgInRpdGxlVUlFbGVtZW50IiwgdGl0bGVV
SUVsZW1lbnRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRTZWxlY3RlZFRleHRSYW5n
ZSIsIHNldFNlbGVjdGVkVGV4dFJhbmdlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVh
ZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic3Ry
aW5nQXR0cmlidXRlVmFsdWUiLCBzdHJpbmdBdHRyaWJ1dGVWYWx1ZUNhbGxiYWNrLCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0s
CisgICAgICAgIHsgInVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlIiwgdWlFbGVtZW50QXR0cmlidXRl
VmFsdWVDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJudW1iZXJBdHRyaWJ1dGVWYWx1ZSIs
IG51bWJlckF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9u
bHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAiYm9vbEF0
dHJpYnV0ZVZhbHVlIiwgYm9vbEF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0
cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAg
ICAgeyAiaXNBdHRyaWJ1dGVTdXBwb3J0ZWQiLCBpc0F0dHJpYnV0ZVN1cHBvcnRlZENhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudE1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQkocmV2aXNpb24gOTg1MjApCisrKyBUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtNDgwLDYgKzQ4MCwxNyBAQAogICAgIHJldHVybiAwOwogfQogCitBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEF0dHJpYnV0ZVZhbHVl
KEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkgY29uc3QKK3sKKyAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQ
VElPTlMKKyAgICBpZCB1aUVsZW1lbnQgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlBdHRyaWJ1
dGVWYWx1ZTpbTlNTdHJpbmcgc3RyaW5nV2l0aEpTU3RyaW5nUmVmOmF0dHJpYnV0ZV1dOworICAg
IHJldHVybiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KHVpRWxlbWVudCk7CisgICAgRU5EX0FYX09C
SkNfRVhDRVBUSU9OUworICAgIAorICAgIHJldHVybiAwOworfQorCisKIGRvdWJsZSBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpudW1iZXJBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1
dGUpCiB7CiAgICAgQkVHSU5fQVhfT0JKQ19FWENFUFRJT05TCkluZGV4OiBUb29scy9EdW1wUmVu
ZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVt
cFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCShyZXZpc2lvbiA5ODUyMCkKKysr
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAkod29ya2luZyBj
b3B5KQpAQCAtMTA1LDYgKzEwNSw3IEBACiAgICAgLy8gQXR0cmlidXRlcyAtIHBsYXRmb3JtLWlu
ZGVwZW5kZW50IGltcGxlbWVudGF0aW9ucwogICAgIEpTU3RyaW5nUmVmIHN0cmluZ0F0dHJpYnV0
ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSk7CiAgICAgZG91YmxlIG51bWJlckF0dHJpYnV0
ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSk7CisgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dCB1aUVsZW1lbnRBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpIGNvbnN0OyAg
ICAKICAgICBib29sIGJvb2xBdHRyaWJ1dGVWYWx1ZShKU1N0cmluZ1JlZiBhdHRyaWJ1dGUpOwog
ICAgIGJvb2wgaXNBdHRyaWJ1dGVTdXBwb3J0ZWQoSlNTdHJpbmdSZWYgYXR0cmlidXRlKTsKICAg
ICBib29sIGlzQXR0cmlidXRlU2V0dGFibGUoSlNTdHJpbmdSZWYgYXR0cmlidXRlKTsKQEAgLTE3
NSw3ICsxNzYsNyBAQAogICAgIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgc2VsZWN0ZWRSb3dBdElu
ZGV4KHVuc2lnbmVkKTsKICAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IGRpc2Nsb3NlZEJ5Um93
KCk7CiAgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBkaXNjbG9zZWRSb3dBdEluZGV4KHVuc2ln
bmVkKTsKLQorICAgIAogICAgIC8vIEFSSUEgc3BlY2lmaWMKICAgICBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50IGFyaWFPd25zRWxlbWVudEF0SW5kZXgodW5zaWduZWQpOwogICAgIEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQgYXJpYUZsb3dUb0VsZW1lbnRBdEluZGV4KHVuc2lnbmVkKTsKSW5kZXg6IFRv
b2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4
NTIxKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTEtMTAtMjYgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAg
ICAgICBBWDogY3Jhc2ggd2hlbiBhY2Nlc3Npbmcgc2VsZWN0ZWRUYWIgaW4gYSB0YWIgbGlzdAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA5MzgKKwor
ICAgICAgICBBZGQgdGhlIGFiaWxpdHkgdG8gcmV0cmlldmUgYW4gZWxlbWVudCB0aHJvdWdoIGFu
IGFyYml0cmFyeSBhdHRyaWJ1dGUuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNw
cDoKKyAgICAgICAgKHVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlQ2FsbGJhY2spOgorICAgICAgICAo
QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUpOgorICAgICAg
ICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Z2V0SlNDbGFzcyk6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tOgorICAgICAgICAoQWNjZXNzaWJp
bGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUpOgorCiAyMDExLTEwLTI2ICBT
YW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIGluaXRpYWwgc2V0dGlu
ZyB0byBXS0Jyb3dzaW5nQ29udGV4dEdyb3VwCg==
</data>
<flag name="review"
          id="110743"
          type_id="1"
          status="+"
          setter="bdakin"
    />
    <flag name="commit-queue"
          id="112802"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>