<?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>120372</bug_id>
          
          <creation_ts>2013-08-27 13:37:42 -0700</creation_ts>
          <short_desc>AX: AXValue/AXMenuItemMarkChar not defined for menuitemradio (should be false (0) with aria-checked=mixed | undefined)</short_desc>
          <delta_ts>2013-09-10 16:49:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Gunderson">jongund</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>mario</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>921641</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Gunderson">jongund</who>
    <bug_when>2013-08-27 13:37:42 -0700</bug_when>
    <thetext>According to the ARIA specification when ARIA role=menuitemradio has a aria-checked=&quot;mixed&quot; property the AXvalue should be exposed and have the value=0

ARIA Test Case 344:
https://www.w3.org/WAI/PF/testharness/testcases/edit?testsuite_id=1&amp;testcase_id=344 

ARIA Test Case 345:
https://www.w3.org/WAI/PF/testharness/testcases/edit?testsuite_id=1&amp;testcase_id=345 

This is an important for requirement for ARIA 1.0 to move to recommendation status</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921642</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-08-27 13:38:06 -0700</bug_when>
    <thetext>&lt;rdar://problem/14848449&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924606</commentid>
    <comment_count>2</comment_count>
      <attachid>210495</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-04 14:17:11 -0700</bug_when>
    <thetext>Created attachment 210495
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925144</commentid>
    <comment_count>3</comment_count>
    <who name="Jon Gunderson">jongund</who>
    <bug_when>2013-09-05 11:54:38 -0700</bug_when>
    <thetext>Public test files:

Test File for ARIA Test Case 344:
https://dvcs.w3.org/hg/pfwg/raw-file/default/ARIA/1.0/tests/test-files/roles-properties-supported-inherited/roles-properties-supported-inherited-menuitemradio-aria-checked-mixed.html

Test File for ARIA Test Case 345:
https://dvcs.w3.org/hg/pfwg/raw-file/default/ARIA/1.0/tests/test-files/roles-properties-supported-inherited/roles-properties-supported-inherited-menuitemradio-aria-checked-undefined.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925284</commentid>
    <comment_count>4</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-05 16:52:12 -0700</bug_when>
    <thetext>Hold off on the commit-queue+ on this one for now. ARIA spec has a weird rule related to this one that the WG is discussing at the moment. It explicitly says to ignored the mixed state one menuitems for 1.0, but it&apos;s possible this will change in 1.1. The included patch may need to be updated depending on the outcome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925286</commentid>
    <comment_count>5</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-05 16:54:34 -0700</bug_when>
    <thetext>Follow-up from last comment: 

Here&apos;s the text, but I&apos;m not yet sure I agree with this behavior.

&quot;The mixed value is not supported on radio or menuitemradio or any element that inherits from these in the taxonomy, and user agents MUST treat a mixed value as equivalent to false for those roles.&quot;

Cite: http://www.w3.org/WAI/PF/aria/complete#aria-checked</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925287</commentid>
    <comment_count>6</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-05 16:55:24 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Follow-up from last comment: 
&gt; 
&gt; Here&apos;s the text, but I&apos;m not yet sure I agree with this behavior.
&gt; 
&gt; &quot;The mixed value is not supported on radio or menuitemradio or any element that inherits from these in the taxonomy, and user agents MUST treat a mixed value as equivalent to false for those roles.&quot;
&gt; 
&gt; Cite: http://www.w3.org/WAI/PF/aria/complete#aria-checked

So is this assessment final then for ARIA 1.0?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925290</commentid>
    <comment_count>7</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-05 17:01:11 -0700</bug_when>
    <thetext>Yes. Short of a major event, 1.0 is locked down. If you like, you can commit an updated patch matching the speced 1.0 behavior… Just be aware that it may change in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925291</commentid>
    <comment_count>8</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-05 17:04:24 -0700</bug_when>
    <thetext>Ah, I see the discrepancy now. &quot;mixed&quot; is supported on both checkbox and menuitemcheckbox, but not radio or menuitemradio. Given that clarification, I think that behavior is correct and this is unlikely to change in ARIA 1.1. I was probably just misreading the spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925292</commentid>
    <comment_count>9</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-05 17:05:41 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Ah, I see the discrepancy now. &quot;mixed&quot; is supported on both checkbox and menuitemcheckbox, but not radio or menuitemradio. Given that clarification, I think that behavior is correct and this is unlikely to change in ARIA 1.1. I was probably just misreading the spec.

So it sounds like we still need to fix this bug, but we can&apos;t return a mixed state for some items..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>925692</commentid>
    <comment_count>10</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-06 09:53:50 -0700</bug_when>
    <thetext>(In reply to comment #9)

&gt; So it sounds like we still need to fix this bug, but we can&apos;t return a mixed state for some items..

If I&apos;m understanding you correctly, you&apos;re saying the above patch is valid because it changes AXValue from undefined, to 0 (false), 1 (true), or 2 (mixed), which accounts for part of the fix, but the bug report was specifically about the mixed state for menuitemradio (and radio) should be equivalent to false. So the patch is incomplete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926707</commentid>
    <comment_count>11</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2013-09-09 07:55:10 -0700</bug_when>
    <thetext>Also, your patch is missing AXMenuItemMarkChar ✓, which is how we&apos;d expect to see the &quot;checked&quot; state on menuitemradio and menuitemcheckbox</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926913</commentid>
    <comment_count>12</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-09 14:42:45 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Also, your patch is missing AXMenuItemMarkChar ✓, which is how we&apos;d expect to see the &quot;checked&quot; state on menuitemradio and menuitemcheckbox

This should already be working correctly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926948</commentid>
    <comment_count>13</comment_count>
      <attachid>211104</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-09 15:24:42 -0700</bug_when>
    <thetext>Created attachment 211104
patch

New patch to make sure that radio and menu item radio do NOT expose mixed states</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>927462</commentid>
    <comment_count>14</comment_count>
      <attachid>211104</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-09-10 13:43:03 -0700</bug_when>
    <thetext>Comment on attachment 211104
patch

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

Looks good to me. Just fix the path for the JS resources before landing, and maybe consider my comment about the duplicate line.

&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:1212
&gt;          [tempArray addObject:NSAccessibilitySelectedAttribute];
&gt; +        [tempArray addObject:NSAccessibilitySelectedAttribute];

Are you adding this duplicate line intentionally, or is it a mistake?

&gt; LayoutTests/platform/mac/accessibility/menu-item-values.html:4
&gt; +&lt;script src=&quot;../../../fast/js/resources/js-test-pre.js&quot;&gt;&lt;/script&gt;

This path should be ../../../resources/js-test-pre.js now, as those JS resources have been moved there along with r155411

&gt; LayoutTests/platform/mac/accessibility/menu-item-values.html:46
&gt; +&lt;script src=&quot;../../../fast/js/resources/js-test-post.js&quot;&gt;&lt;/script&gt;

Same here, but for ../../../resources/js-test-post.js</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>927464</commentid>
    <comment_count>15</comment_count>
      <attachid>211104</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-10 13:44:47 -0700</bug_when>
    <thetext>Comment on attachment 211104
patch

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

&gt;&gt; Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:1212
&gt;&gt; +        [tempArray addObject:NSAccessibilitySelectedAttribute];
&gt; 
&gt; Are you adding this duplicate line intentionally, or is it a mistake?

Yea this looks wrong, i&apos;ll fix that</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>927591</commentid>
    <comment_count>16</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-09-10 16:49:16 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/155492</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>210495</attachid>
            <date>2013-09-04 14:17:11 -0700</date>
            <delta_ts>2013-09-09 15:24:42 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>5316</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NTA2NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEzLTA5LTA0ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IEFYVmFsdWUgbm90
IGRlZmluZWQgZm9yIG1lbnVpdGVtcmFkaW8gd2l0aCBhcmlhLWNoZWNrZWQ9bWl4ZWQgfCB1bmRl
ZmluZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEy
MDM3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4
cG9zZSBBWFZhbHVlIGZvciBhY2Nlc3NpYmlsaXR5IG1lbnUgaXRlbXMsIHNvIHRoYXQgdGhleSBj
YW4gY29udmV5IHRoZSwgb24vb2ZmL21peGVkCisgICAgICAgIHN0YXRlIG9mIGFyaWEtY2hlY2tl
ZC4KKworICAgICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9tZW51LWl0ZW0t
dmFsdWVzLmh0bWwKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlciBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlTmFtZXNdKToKKyAgICAgICAgKC1bV2ViQWNj
ZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOl0pOgor
CiAyMDEzLTA5LTA0ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlbmFtZSBjdXN0b21Dc3NUZXh0IC0+IGN1c3RvbUNTU1RleHQgdG8gbWF0Y2ggV2Vi
S2l0IHN0eWxlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nl
c3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQko
cmV2aXNpb24gMTU1MDU5KQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2Vi
QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyMDks
NiArMTIwOSw4IEBACiAgICAgICAgIFt0ZW1wQXJyYXkgYWRkT2JqZWN0Ok5TQWNjZXNzaWJpbGl0
eVRpdGxlQXR0cmlidXRlXTsKICAgICAgICAgW3RlbXBBcnJheSBhZGRPYmplY3Q6TlNBY2Nlc3Np
YmlsaXR5SGVscEF0dHJpYnV0ZV07CiAgICAgICAgIFt0ZW1wQXJyYXkgYWRkT2JqZWN0Ok5TQWNj
ZXNzaWJpbGl0eVNlbGVjdGVkQXR0cmlidXRlXTsKKyAgICAgICAgW3RlbXBBcnJheSBhZGRPYmpl
Y3Q6TlNBY2Nlc3NpYmlsaXR5U2VsZWN0ZWRBdHRyaWJ1dGVdOworICAgICAgICBbdGVtcEFycmF5
IGFkZE9iamVjdDpOU0FjY2Vzc2liaWxpdHlWYWx1ZUF0dHJpYnV0ZV07CiAgICAgICAgIFt0ZW1w
QXJyYXkgYWRkT2JqZWN0OihOU1N0cmluZyopa0FYTWVudUl0ZW1DbWRDaGFyQXR0cmlidXRlXTsK
ICAgICAgICAgW3RlbXBBcnJheSBhZGRPYmplY3Q6KE5TU3RyaW5nKilrQVhNZW51SXRlbUNtZFZp
cnR1YWxLZXlBdHRyaWJ1dGVdOwogICAgICAgICBbdGVtcEFycmF5IGFkZE9iamVjdDooTlNTdHJp
bmcqKWtBWE1lbnVJdGVtQ21kR2x5cGhBdHRyaWJ1dGVdOwpAQCAtMjI2OSw3ICsyMjcxLDcgQEAK
ICAgICAgICAgaWYgKG1fb2JqZWN0LT5pc0hlYWRpbmcoKSkKICAgICAgICAgICAgIHJldHVybiBb
TlNOdW1iZXIgbnVtYmVyV2l0aEludDptX29iamVjdC0+aGVhZGluZ0xldmVsKCldOwogICAgICAg
ICAKLSAgICAgICAgaWYgKG1fb2JqZWN0LT5pc0NoZWNrYm94T3JSYWRpbygpKSB7CisgICAgICAg
IGlmIChtX29iamVjdC0+aXNDaGVja2JveE9yUmFkaW8oKSB8fCBtX29iamVjdC0+aXNNZW51SXRl
bSgpKSB7CiAgICAgICAgICAgICBzd2l0Y2ggKG1fb2JqZWN0LT5jaGVja2JveE9yUmFkaW9WYWx1
ZSgpKSB7CiAgICAgICAgICAgICAgICAgY2FzZSBCdXR0b25TdGF0ZU9mZjoKICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIFtOU051bWJlciBudW1iZXJXaXRoSW50OjBdOwpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gMTU1MDY0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTMtMDktMDQgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFw
cGxlLmNvbT4KKworICAgICAgICBBWDogQVhWYWx1ZSBub3QgZGVmaW5lZCBmb3IgbWVudWl0ZW1y
YWRpbyB3aXRoIGFyaWEtY2hlY2tlZD1taXhlZCB8IHVuZGVmaW5lZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIwMzcyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9tZW51LWl0ZW0tdmFsdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxh
dGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZhbHVlcy5odG1sOiBBZGRlZC4KKwog
MjAxMy0wOS0wNCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJlbW92ZSBIVE1MRGlhbG9nRWxlbWVudCBsYXlvdXQgdGVzdHMgYWZ0ZXIgcjE1NDgzNQpJ
bmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZh
bHVlcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZhbHVlcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9tZW51LWl0ZW0tdmFs
dWVzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNCBAQAorMQorMgorMwor
NAorNQorVGhpcyB0ZXN0cyB0aGF0IHRoZSBwcm9wZXIgdmFsdWUgaXMgcmVwb3J0ZWQgZm9yIG1l
bnUgaXRlbSByYWRpbyB0eXBlcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0l0
ZW0gMTogQVhWYWx1ZTogMAorUEFTUyBpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZhbHVl
JykgaXMgdHJ1ZQorCisKK0l0ZW0gMjogQVhWYWx1ZTogMQorUEFTUyBpdGVtLmlzQXR0cmlidXRl
U3VwcG9ydGVkKCdBWFZhbHVlJykgaXMgdHJ1ZQorCisKK0l0ZW0gMzogQVhWYWx1ZTogMgorUEFT
UyBpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZhbHVlJykgaXMgdHJ1ZQorCisKK0l0ZW0g
NDogQVhWYWx1ZTogMAorUEFTUyBpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZhbHVlJykg
aXMgdHJ1ZQorCisKK0l0ZW0gNTogQVhWYWx1ZTogMAorUEFTUyBpdGVtLmlzQXR0cmlidXRlU3Vw
cG9ydGVkKCdBWFZhbHVlJykgaXMgdHJ1ZQorCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
YWNjZXNzaWJpbGl0eS9tZW51LWl0ZW0tdmFsdWVzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZhbHVlcy5odG1sCShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVu
dS1pdGVtLXZhbHVlcy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZ
UEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IGlkPSJib2R5Ij4KKworPGRpdiBpZD0iaXRlbTEiIHJv
bGU9Im1lbnVpdGVtcmFkaW8iIGFyaWEtY2hlY2tlZD0iZmFsc2UiPjE8L2Rpdj4KKzxkaXYgaWQ9
Iml0ZW0yIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9InRydWUiPjI8L2Rpdj4K
KzxkaXYgaWQ9Iml0ZW0zIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9Im1peGVk
Ij4zPC9kaXY+Cis8ZGl2IGlkPSJpdGVtNCIgcm9sZT0ibWVudWl0ZW1yYWRpbyIgYXJpYS1jaGVj
a2VkPSIiPjQ8L2Rpdj4KKzxkaXYgaWQ9Iml0ZW01IiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlh
LWNoZWNrZWQ9InVuZGVmaW5lZCI+NTwvZGl2PgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorCisgICAgZGVzY3JpcHRpb24o
IlRoaXMgdGVzdHMgdGhhdCB0aGUgcHJvcGVyIHZhbHVlIGlzIHJlcG9ydGVkIGZvciBtZW51IGl0
ZW0gcmFkaW8gdHlwZXMuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9s
bGVyKSB7CisKKyAgICAgICAgICBmb3IgKHZhciBrID0gMTsgayA8IDY7IGsrKykgeworICAgICAg
ICAgICAgICB2YXIgaXRlbSA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVt
ZW50QnlJZCgiaXRlbSIgKyBrKTsKKyAgICAgICAgICAgICAgZGVidWcoIkl0ZW0gIiArIGsgKyAi
OiAiICsgaXRlbS5zdHJpbmdWYWx1ZSk7CisgICAgICAgICAgICAgIHNob3VsZEJlVHJ1ZSgiaXRl
bS5pc0F0dHJpYnV0ZVN1cHBvcnRlZCgnQVhWYWx1ZScpIik7CisgICAgICAgICAgICAgIGRlYnVn
KCJcbiIpOworICAgICAgICAgIH0KKyAgICB9CisKKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211104</attachid>
            <date>2013-09-09 15:24:42 -0700</date>
            <delta_ts>2013-09-10 13:44:47 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>13573</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NTM5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDEzLTA5LTA5ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IEFYVmFsdWUvQVhN
ZW51SXRlbU1hcmtDaGFyIG5vdCBkZWZpbmVkIGZvciBtZW51aXRlbXJhZGlvIChzaG91bGQgYmUg
ZmFsc2UgKDApIHdpdGggYXJpYS1jaGVja2VkPW1peGVkIHwgdW5kZWZpbmVkKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIwMzcyCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIG5ldyByb2xlcyB0byBt
YWtlIHRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIG1lbnUgaXRlbSwgbWVudSBpdGVtIHJhZGlvIGFu
ZCBtZW51IGl0ZW0gY2hlY2tib3guCisgICAgICAgIEV4cG9zZSBBWFZhbHVlIGZvciBtZW51IGl0
ZW1zLCBzbyB0aGF0IHRoZXkgY2FuIGNvbnZleSB0aGUsIG9uL29mZi9taXhlZCBzdGF0ZSBvZiBh
cmlhLWNoZWNrZWQuCisKKyAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkv
bWVudS1pdGVtLXZhbHVlcy5odG1sCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlOb2RlT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlOb2Rl
T2JqZWN0Ojppc01lbnVSZWxhdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlO
b2RlT2JqZWN0Ojppc01lbnVJdGVtKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlO
b2RlT2JqZWN0Ojppc0NoZWNrZWQpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU5v
ZGVPYmplY3Q6OmFjdGlvbkVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0
eU5vZGVPYmplY3Q6OnZpc2libGVUZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxp
dHlOb2RlT2JqZWN0Ojp0aXRsZSk6CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmls
aXR5T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFSSUFSb2xlTWFwKToKKyAg
ICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OmNoZWNrYm94T3JSYWRpb1ZhbHVl
KToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaDoKKyAgICAg
ICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6Y29tcHV0ZUFjY2Vzc2liaWxp
dHlJc0lnbm9yZWQpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVySU9TLm1tOgorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlciBhY2Nlc3NpYmlsaXR5Q2FuRnV6enlIaXRUZXN0XSk6CisgICAgICAgICgtW1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlUcmFpdHNdKToKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbToK
KyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJpbGl0eUF0
dHJpYnV0ZU5hbWVzXSk6CisgICAgICAgIChjcmVhdGVBY2Nlc3NpYmlsaXR5Um9sZU1hcCk6Cisg
ICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlBdHRy
aWJ1dGVWYWx1ZTpdKToKKwogMjAxMy0wOS0wOSAgRGF2aWQgSHlhdHQgIDxoeWF0dEBhcHBsZS5j
b20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjE1NTM3Nyk6IENvbnZlcnQgdGhlIG1lZGlhIGVs
ZW1lbnRzIHRoYXQgd2VyZSBSZW5kZXJCbG9ja3MgdG8gUmVuZGVyQmxvY2tGbG93cwpJbmRleDog
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0JKHJldmlzaW9uIDE1NTM5MCkK
KysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMjA5LDYgKzEyMDksOCBAQAogICAg
ICAgICBbdGVtcEFycmF5IGFkZE9iamVjdDpOU0FjY2Vzc2liaWxpdHlUaXRsZUF0dHJpYnV0ZV07
CiAgICAgICAgIFt0ZW1wQXJyYXkgYWRkT2JqZWN0Ok5TQWNjZXNzaWJpbGl0eUhlbHBBdHRyaWJ1
dGVdOwogICAgICAgICBbdGVtcEFycmF5IGFkZE9iamVjdDpOU0FjY2Vzc2liaWxpdHlTZWxlY3Rl
ZEF0dHJpYnV0ZV07CisgICAgICAgIFt0ZW1wQXJyYXkgYWRkT2JqZWN0Ok5TQWNjZXNzaWJpbGl0
eVNlbGVjdGVkQXR0cmlidXRlXTsKKyAgICAgICAgW3RlbXBBcnJheSBhZGRPYmplY3Q6TlNBY2Nl
c3NpYmlsaXR5VmFsdWVBdHRyaWJ1dGVdOwogICAgICAgICBbdGVtcEFycmF5IGFkZE9iamVjdDoo
TlNTdHJpbmcqKWtBWE1lbnVJdGVtQ21kQ2hhckF0dHJpYnV0ZV07CiAgICAgICAgIFt0ZW1wQXJy
YXkgYWRkT2JqZWN0OihOU1N0cmluZyopa0FYTWVudUl0ZW1DbWRWaXJ0dWFsS2V5QXR0cmlidXRl
XTsKICAgICAgICAgW3RlbXBBcnJheSBhZGRPYmplY3Q6KE5TU3RyaW5nKilrQVhNZW51SXRlbUNt
ZEdseXBoQXR0cmlidXRlXTsKQEAgLTE2MjksNiArMTYzMSw4IEBACiAgICAgICAgIHsgTWVudUJh
clJvbGUsIE5TQWNjZXNzaWJpbGl0eU1lbnVCYXJSb2xlIH0sCiAgICAgICAgIHsgTWVudVJvbGUs
IE5TQWNjZXNzaWJpbGl0eU1lbnVSb2xlIH0sCiAgICAgICAgIHsgTWVudUl0ZW1Sb2xlLCBOU0Fj
Y2Vzc2liaWxpdHlNZW51SXRlbVJvbGUgfSwKKyAgICAgICAgeyBNZW51SXRlbUNoZWNrYm94Um9s
ZSwgTlNBY2Nlc3NpYmlsaXR5TWVudUl0ZW1Sb2xlIH0sCisgICAgICAgIHsgTWVudUl0ZW1SYWRp
b1JvbGUsIE5TQWNjZXNzaWJpbGl0eU1lbnVJdGVtUm9sZSB9LAogICAgICAgICB7IENvbHVtblJv
bGUsIE5TQWNjZXNzaWJpbGl0eUNvbHVtblJvbGUgfSwKICAgICAgICAgeyBSb3dSb2xlLCBOU0Fj
Y2Vzc2liaWxpdHlSb3dSb2xlIH0sCiAgICAgICAgIHsgVG9vbGJhclJvbGUsIE5TQWNjZXNzaWJp
bGl0eVRvb2xiYXJSb2xlIH0sCkBAIC0yMjY5LDcgKzIyNzMsNyBAQAogICAgICAgICBpZiAobV9v
YmplY3QtPmlzSGVhZGluZygpKQogICAgICAgICAgICAgcmV0dXJuIFtOU051bWJlciBudW1iZXJX
aXRoSW50Om1fb2JqZWN0LT5oZWFkaW5nTGV2ZWwoKV07CiAgICAgICAgIAotICAgICAgICBpZiAo
bV9vYmplY3QtPmlzQ2hlY2tib3hPclJhZGlvKCkpIHsKKyAgICAgICAgaWYgKG1fb2JqZWN0LT5p
c0NoZWNrYm94T3JSYWRpbygpIHx8IG1fb2JqZWN0LT5pc01lbnVJdGVtKCkpIHsKICAgICAgICAg
ICAgIHN3aXRjaCAobV9vYmplY3QtPmNoZWNrYm94T3JSYWRpb1ZhbHVlKCkpIHsKICAgICAgICAg
ICAgICAgICBjYXNlIEJ1dHRvblN0YXRlT2ZmOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4g
W05TTnVtYmVyIG51bWJlcldpdGhJbnQ6MF07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaAkocmV2aXNpb24gMTU1MzkwKQor
KysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTE1OCw2ICsxNTgsOCBAQAogICAgIE1lbnVCYXJSb2xlLAogICAgIE1l
bnVCdXR0b25Sb2xlLAogICAgIE1lbnVJdGVtUm9sZSwKKyAgICBNZW51SXRlbUNoZWNrYm94Um9s
ZSwKKyAgICBNZW51SXRlbVJhZGlvUm9sZSwKICAgICBNZW51TGlzdFBvcHVwUm9sZSwKICAgICBN
ZW51TGlzdE9wdGlvblJvbGUsCiAgICAgT3V0bGluZVJvbGUsCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQkocmV2aXNpb24gMTU1MzkwKQorKysgU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1Mu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTI3Niw2ICsyNzYsOCBAQAogICAgIGNhc2UgTGlzdEJveE9w
dGlvblJvbGU6CiAgICAgY2FzZSBNZW51QnV0dG9uUm9sZToKICAgICBjYXNlIE1lbnVJdGVtUm9s
ZToKKyAgICBjYXNlIE1lbnVJdGVtQ2hlY2tib3hSb2xlOgorICAgIGNhc2UgTWVudUl0ZW1SYWRp
b1JvbGU6CiAgICAgY2FzZSBQb3BVcEJ1dHRvblJvbGU6CiAgICAgY2FzZSBSYWRpb0J1dHRvblJv
bGU6CiAgICAgY2FzZSBTY3JvbGxCYXJSb2xlOgpAQCAtNTQ4LDYgKzU1MCw4IEBACiAgICAgICAg
ICAgICBicmVhazsKICAgICAgICAgY2FzZSBNZW51QnV0dG9uUm9sZToKICAgICAgICAgY2FzZSBN
ZW51SXRlbVJvbGU6CisgICAgICAgIGNhc2UgTWVudUl0ZW1DaGVja2JveFJvbGU6CisgICAgICAg
IGNhc2UgTWVudUl0ZW1SYWRpb1JvbGU6CiAgICAgICAgICAgICB0cmFpdHMgfD0gW3NlbGYgX2F4
TWVudUl0ZW1UcmFpdF07CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gMTU1MzkwKQorKysgU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTE2Myw3ICsxMTYzLDcgQEAKICAgICBpZiAobV9yZW5kZXJlci0+aXNUZXh0KCkp
IHsKICAgICAgICAgLy8gc3RhdGljIHRleHQgYmVuZWF0aCBNZW51SXRlbXMgYW5kIE1lbnVCdXR0
b25zIGFyZSBqdXN0IHJlcG9ydGVkIGFsb25nIHdpdGggdGhlIG1lbnUgaXRlbSwgc28gaXQncyBp
Z25vcmVkIG9uIGFuIGluZGl2aWR1YWwgbGV2ZWwKICAgICAgICAgQWNjZXNzaWJpbGl0eU9iamVj
dCogcGFyZW50ID0gcGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7Ci0gICAgICAgIGlmIChwYXJlbnQg
JiYgKHBhcmVudC0+YXJpYVJvbGVBdHRyaWJ1dGUoKSA9PSBNZW51SXRlbVJvbGUgfHwgcGFyZW50
LT5hcmlhUm9sZUF0dHJpYnV0ZSgpID09IE1lbnVCdXR0b25Sb2xlKSkKKyAgICAgICAgaWYgKHBh
cmVudCAmJiAocGFyZW50LT5pc01lbnVJdGVtKCkgfHwgcGFyZW50LT5hcmlhUm9sZUF0dHJpYnV0
ZSgpID09IE1lbnVCdXR0b25Sb2xlKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAg
ICBSZW5kZXJUZXh0KiByZW5kZXJUZXh0ID0gdG9SZW5kZXJUZXh0KG1fcmVuZGVyZXIpOwogICAg
ICAgICBpZiAobV9yZW5kZXJlci0+aXNCUigpIHx8ICFyZW5kZXJUZXh0LT5maXJzdFRleHRCb3go
KSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVj
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0LmNwcAkocmV2aXNpb24gMTU1MzkwKQorKysgU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ1
NCw4ICsxNDU0LDggQEAKICAgICAgICAgeyAibWVudSIsIE1lbnVSb2xlIH0sCiAgICAgICAgIHsg
Im1lbnViYXIiLCBNZW51QmFyUm9sZSB9LAogICAgICAgICB7ICJtZW51aXRlbSIsIE1lbnVJdGVt
Um9sZSB9LAotICAgICAgICB7ICJtZW51aXRlbWNoZWNrYm94IiwgTWVudUl0ZW1Sb2xlIH0sCi0g
ICAgICAgIHsgIm1lbnVpdGVtcmFkaW8iLCBNZW51SXRlbVJvbGUgfSwKKyAgICAgICAgeyAibWVu
dWl0ZW1jaGVja2JveCIsIE1lbnVJdGVtQ2hlY2tib3hSb2xlIH0sCisgICAgICAgIHsgIm1lbnVp
dGVtcmFkaW8iLCBNZW51SXRlbVJhZGlvUm9sZSB9LAogICAgICAgICB7ICJub3RlIiwgRG9jdW1l
bnROb3RlUm9sZSB9LAogICAgICAgICB7ICJuYXZpZ2F0aW9uIiwgTGFuZG1hcmtOYXZpZ2F0aW9u
Um9sZSB9LAogICAgICAgICB7ICJvcHRpb24iLCBMaXN0Qm94T3B0aW9uUm9sZSB9LApAQCAtMTY3
MSw4ICsxNjcxLDEzIEBACiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiByZXN1bHQgPSBnZXRBdHRy
aWJ1dGUoYXJpYV9jaGVja2VkQXR0cik7CiAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHJlc3Vs
dCwgInRydWUiKSkKICAgICAgICAgcmV0dXJuIEJ1dHRvblN0YXRlT247Ci0gICAgaWYgKGVxdWFs
SWdub3JpbmdDYXNlKHJlc3VsdCwgIm1peGVkIikpCisgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNl
KHJlc3VsdCwgIm1peGVkIikpIHsKKyAgICAgICAgLy8gQVJJQSBzYXlzIHRoYXQgcmFkaW8gYW5k
IG1lbnVpdGVtcmFkaW8gZWxlbWVudHMgbXVzdCBOT1QgZXhwb3NlIGJ1dHRvbiBzdGF0ZSBtaXhl
ZC4KKyAgICAgICAgQWNjZXNzaWJpbGl0eVJvbGUgYXJpYVJvbGUgPSBhcmlhUm9sZUF0dHJpYnV0
ZSgpOworICAgICAgICBpZiAoYXJpYVJvbGUgPT0gUmFkaW9CdXR0b25Sb2xlIHx8IGFyaWFSb2xl
ID09IE1lbnVJdGVtUmFkaW9Sb2xlKQorICAgICAgICAgICAgcmV0dXJuIEJ1dHRvblN0YXRlT2Zm
OwogICAgICAgICByZXR1cm4gQnV0dG9uU3RhdGVNaXhlZDsKKyAgICB9CiAgICAgCiAgICAgcmV0
dXJuIEJ1dHRvblN0YXRlT2ZmOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5jcHAJKHJldmlzaW9uIDE1
NTM5MCkKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU5vZGVP
YmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTMsNiArNTUzLDggQEAKICAgICBjYXNlIE1l
bnVCYXJSb2xlOgogICAgIGNhc2UgTWVudUJ1dHRvblJvbGU6CiAgICAgY2FzZSBNZW51SXRlbVJv
bGU6CisgICAgY2FzZSBNZW51SXRlbUNoZWNrYm94Um9sZToKKyAgICBjYXNlIE1lbnVJdGVtUmFk
aW9Sb2xlOgogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1
cm4gZmFsc2U7CkBAIC01NzYsNyArNTc4LDE0IEBACiAKIGJvb2wgQWNjZXNzaWJpbGl0eU5vZGVP
YmplY3Q6OmlzTWVudUl0ZW0oKSBjb25zdAogewotICAgIHJldHVybiByb2xlVmFsdWUoKSA9PSBN
ZW51SXRlbVJvbGU7CisgICAgc3dpdGNoIChyb2xlVmFsdWUoKSkgeworICAgIGNhc2UgTWVudUl0
ZW1Sb2xlOgorICAgIGNhc2UgTWVudUl0ZW1SYWRpb1JvbGU6CisgICAgY2FzZSBNZW51SXRlbUNo
ZWNrYm94Um9sZToKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgZGVmYXVsdDoKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIH0KIH0KIAogYm9vbCBBY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdDo6
aXNOYXRpdmVDaGVja2JveE9yUmFkaW8oKSBjb25zdApAQCAtNjU1LDYgKzY2NCw4IEBACiAgICAg
Y2FzZSBSYWRpb0J1dHRvblJvbGU6CiAgICAgY2FzZSBDaGVja0JveFJvbGU6CiAgICAgY2FzZSBN
ZW51SXRlbVJvbGU6CisgICAgY2FzZSBNZW51SXRlbUNoZWNrYm94Um9sZToKKyAgICBjYXNlIE1l
bnVJdGVtUmFkaW9Sb2xlOgogICAgICAgICB2YWxpZFJvbGUgPSB0cnVlOwogICAgICAgICBicmVh
azsKICAgICBkZWZhdWx0OgpAQCAtOTU4LDYgKzk2OSw4IEBACiAgICAgY2FzZSBUb2dnbGVCdXR0
b25Sb2xlOgogICAgIGNhc2UgVGFiUm9sZToKICAgICBjYXNlIE1lbnVJdGVtUm9sZToKKyAgICBj
YXNlIE1lbnVJdGVtQ2hlY2tib3hSb2xlOgorICAgIGNhc2UgTWVudUl0ZW1SYWRpb1JvbGU6CiAg
ICAgY2FzZSBMaXN0SXRlbVJvbGU6CiAgICAgICAgIHJldHVybiB0b0VsZW1lbnQobm9kZSk7CiAg
ICAgZGVmYXVsdDoKQEAgLTEyNTUsNiArMTI2OCw4IEBACiAgICAgY2FzZSBMaXN0SXRlbVJvbGU6
CiAgICAgY2FzZSBNZW51QnV0dG9uUm9sZToKICAgICBjYXNlIE1lbnVJdGVtUm9sZToKKyAgICBj
YXNlIE1lbnVJdGVtQ2hlY2tib3hSb2xlOgorICAgIGNhc2UgTWVudUl0ZW1SYWRpb1JvbGU6CiAg
ICAgY2FzZSBSYWRpb0J1dHRvblJvbGU6CiAgICAgY2FzZSBUYWJSb2xlOgogICAgIGNhc2UgUHJv
Z3Jlc3NJbmRpY2F0b3JSb2xlOgpAQCAtMTYxMCw2ICsxNjI1LDggQEAKICAgICBjYXNlIExpc3RJ
dGVtUm9sZToKICAgICBjYXNlIE1lbnVCdXR0b25Sb2xlOgogICAgIGNhc2UgTWVudUl0ZW1Sb2xl
OgorICAgIGNhc2UgTWVudUl0ZW1DaGVja2JveFJvbGU6CisgICAgY2FzZSBNZW51SXRlbVJhZGlv
Um9sZToKICAgICBjYXNlIFJhZGlvQnV0dG9uUm9sZToKICAgICBjYXNlIFRhYlJvbGU6CiAgICAg
ICAgIHJldHVybiB0ZXh0VW5kZXJFbGVtZW50KCk7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNTUzOTAp
CisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBA
QAorMjAxMy0wOS0wOSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgorCisg
ICAgICAgIEFYOiBBWFZhbHVlL0FYTWVudUl0ZW1NYXJrQ2hhciBub3QgZGVmaW5lZCBmb3IgbWVu
dWl0ZW1yYWRpbyAoc2hvdWxkIGJlIGZhbHNlICgwKSB3aXRoIGFyaWEtY2hlY2tlZD1taXhlZCB8
IHVuZGVmaW5lZCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEyMDM3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZhbHVlcy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L21lbnUt
aXRlbS12YWx1ZXMuaHRtbDogQWRkZWQuCisKIDIwMTMtMDktMDkgIEJldGggRGFraW4gIDxiZGFr
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFNraXBwaW5nIHRoaXMgbmV3bHktYWRkZWQgdGVzdCBz
aW5jZSBpdCBhc3NlcnRzIG9uIGRlYnVnIGJ1aWxkcy4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L21lbnUtaXRlbS12YWx1ZXMtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L21lbnUtaXRl
bS12YWx1ZXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvbWVudS1pdGVtLXZhbHVlcy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsNTkgQEAKK1RoaXMgdGVzdHMgdGhhdCB0aGUgcHJvcGVyIHZhbHVl
IGlzIHJlcG9ydGVkIGZvciBtZW51IGl0ZW0gcmFkaW8gdHlwZXMuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitJdGVtIDEgVmFsdWU6IEFYVmFsdWU6IDAKK0l0ZW0gMSBDaGFyIG1h
cms6IAorUEFTUyBpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZhbHVlJykgaXMgdHJ1ZQor
CisKK0l0ZW0gMiBWYWx1ZTogQVhWYWx1ZTogMQorSXRlbSAyIENoYXIgbWFyazog4pyTCitQQVNT
IGl0ZW0uaXNBdHRyaWJ1dGVTdXBwb3J0ZWQoJ0FYVmFsdWUnKSBpcyB0cnVlCisKKworSXRlbSAz
IFZhbHVlOiBBWFZhbHVlOiAwCitJdGVtIDMgQ2hhciBtYXJrOiAKK1BBU1MgaXRlbS5pc0F0dHJp
YnV0ZVN1cHBvcnRlZCgnQVhWYWx1ZScpIGlzIHRydWUKKworCitJdGVtIDQgVmFsdWU6IEFYVmFs
dWU6IDAKK0l0ZW0gNCBDaGFyIG1hcms6IAorUEFTUyBpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVk
KCdBWFZhbHVlJykgaXMgdHJ1ZQorCisKK0l0ZW0gNSBWYWx1ZTogQVhWYWx1ZTogMAorSXRlbSA1
IENoYXIgbWFyazogCitQQVNTIGl0ZW0uaXNBdHRyaWJ1dGVTdXBwb3J0ZWQoJ0FYVmFsdWUnKSBp
cyB0cnVlCisKKworSXRlbSA2IFZhbHVlOiBBWFZhbHVlOiAwCitJdGVtIDYgQ2hhciBtYXJrOiAK
K1BBU1MgaXRlbS5pc0F0dHJpYnV0ZVN1cHBvcnRlZCgnQVhWYWx1ZScpIGlzIHRydWUKKworCitJ
dGVtIDcgVmFsdWU6IEFYVmFsdWU6IDEKK0l0ZW0gNyBDaGFyIG1hcms6IOKckworUEFTUyBpdGVt
LmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZhbHVlJykgaXMgdHJ1ZQorCisKK0l0ZW0gOCBWYWx1
ZTogQVhWYWx1ZTogMgorSXRlbSA4IENoYXIgbWFyazogCitQQVNTIGl0ZW0uaXNBdHRyaWJ1dGVT
dXBwb3J0ZWQoJ0FYVmFsdWUnKSBpcyB0cnVlCisKKworSXRlbSA5IFZhbHVlOiBBWFZhbHVlOiAw
CitJdGVtIDkgQ2hhciBtYXJrOiAKK1BBU1MgaXRlbS5pc0F0dHJpYnV0ZVN1cHBvcnRlZCgnQVhW
YWx1ZScpIGlzIHRydWUKKworCitJdGVtIDEwIFZhbHVlOiBBWFZhbHVlOiAwCitJdGVtIDEwIENo
YXIgbWFyazogCitQQVNTIGl0ZW0uaXNBdHRyaWJ1dGVTdXBwb3J0ZWQoJ0FYVmFsdWUnKSBpcyB0
cnVlCisKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L21lbnUtaXRl
bS12YWx1ZXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNj
ZXNzaWJpbGl0eS9tZW51LWl0ZW0tdmFsdWVzLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9tZW51LWl0ZW0tdmFsdWVzLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHkgaWQ9ImJvZHkiPgorCis8ZGl2IGlkPSJjb250ZW50Ij4KKworPGRpdiBpZD0iaXRlbTEiIHJv
bGU9Im1lbnVpdGVtcmFkaW8iIGFyaWEtY2hlY2tlZD0iZmFsc2UiPjE8L2Rpdj4KKzxkaXYgaWQ9
Iml0ZW0yIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9InRydWUiPjI8L2Rpdj4K
KzxkaXYgaWQ9Iml0ZW0zIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9Im1peGVk
Ij4zPC9kaXY+ICAgPCEtLSBtaXhlZCBzaG91bGQgYmUgdGhlIHNhbWUgYXMgZmFsc2UgZm9yIG1l
bnUgaXRlbSByYWRpbyAtLT4KKzxkaXYgaWQ9Iml0ZW00IiByb2xlPSJtZW51aXRlbXJhZGlvIiBh
cmlhLWNoZWNrZWQ9IiI+NDwvZGl2PgorPGRpdiBpZD0iaXRlbTUiIHJvbGU9Im1lbnVpdGVtcmFk
aW8iIGFyaWEtY2hlY2tlZD0idW5kZWZpbmVkIj41PC9kaXY+CisKKzxkaXYgaWQ9Iml0ZW02IiBy
b2xlPSJtZW51aXRlbWNoZWNrYm94IiBhcmlhLWNoZWNrZWQ9ImZhbHNlIj4xPC9kaXY+Cis8ZGl2
IGlkPSJpdGVtNyIgcm9sZT0ibWVudWl0ZW1jaGVja2JveCIgYXJpYS1jaGVja2VkPSJ0cnVlIj4y
PC9kaXY+Cis8ZGl2IGlkPSJpdGVtOCIgcm9sZT0ibWVudWl0ZW1jaGVja2JveCIgYXJpYS1jaGVj
a2VkPSJtaXhlZCI+MzwvZGl2PiA8IS0tIG1peGVkIHNob3VsZCBiZSBtYXJrZWQgYXMgbWl4ZWQg
Zm9yIG1lbnUgaXRlbSBjaGVja2JveCAtLT4KKzxkaXYgaWQ9Iml0ZW05IiByb2xlPSJtZW51aXRl
bWNoZWNrYm94IiBhcmlhLWNoZWNrZWQ9IiI+NDwvZGl2PgorPGRpdiBpZD0iaXRlbTEwIiByb2xl
PSJtZW51aXRlbWNoZWNrYm94IiBhcmlhLWNoZWNrZWQ9InVuZGVmaW5lZCI+NTwvZGl2PgorCis8
L2Rpdj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KKworPHNjcmlwdD4KKworICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgdGhlIHBy
b3BlciB2YWx1ZSBpcyByZXBvcnRlZCBmb3IgbWVudSBpdGVtIHJhZGlvIHR5cGVzLiIpOworCisg
ICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworCisgICAgICAgICAgZm9y
ICh2YXIgayA9IDE7IGsgPCAxMTsgaysrKSB7CisgICAgICAgICAgICAgIHZhciBpdGVtID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJpdGVtIiArIGspOwor
ICAgICAgICAgICAgICBkZWJ1ZygiSXRlbSAiICsgayArICIgVmFsdWU6ICIgKyBpdGVtLnN0cmlu
Z1ZhbHVlKTsKKyAgICAgICAgICAgICAgZGVidWcoIkl0ZW0gIiArIGsgKyAiIENoYXIgbWFyazog
IiArIGl0ZW0uc3RyaW5nQXR0cmlidXRlVmFsdWUoJ0FYTWVudUl0ZW1NYXJrQ2hhcicpKTsKKyAg
ICAgICAgICAgICAgc2hvdWxkQmVUcnVlKCJpdGVtLmlzQXR0cmlidXRlU3VwcG9ydGVkKCdBWFZh
bHVlJykiKTsKKyAgICAgICAgICAgICAgZGVidWcoIlxuIik7CisgICAgICAgICAgfQorCisgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKS5zdHlsZS52aXNpYmlsaXR5
ID0gImhpZGRlbiI7CisgICAgfQorCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+Cg==
</data>
<flag name="review"
          id="233156"
          type_id="1"
          status="+"
          setter="mario"
    />
          </attachment>
      

    </bug>

</bugzilla>