<?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>126993</bug_id>
          
          <creation_ts>2014-01-14 10:37:52 -0800</creation_ts>
          <short_desc>AX: WebKit is not firing AXMenuOpenedNotification</short_desc>
          <delta_ts>2014-01-16 14:04:41 -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>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="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mario</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>967916</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-01-14 10:37:52 -0800</bug_when>
    <thetext>WebKit is not firing menu open notification

AXMenuOpenedNotification
https://dvcs.w3.org/hg/pfwg/raw-file/default/ARIA-UAIG/1.0/tests/test-files/test93.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>967920</commentid>
    <comment_count>1</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-01-14 10:39:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/15284928&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>967926</commentid>
    <comment_count>2</comment_count>
      <attachid>221180</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-01-14 10:42:06 -0800</bug_when>
    <thetext>Created attachment 221180
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>968254</commentid>
    <comment_count>3</comment_count>
      <attachid>221180</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2014-01-15 02:59:50 -0800</bug_when>
    <thetext>Comment on attachment 221180
patch

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

&gt; Source/WebCore/ChangeLog:29
&gt; +        (WebCore::RenderElement::insertChildInternal):
&gt; +        (WebCore::RenderElement::styleWillChange):

Would it make sense to pass the new child being added in RenderMenuList::addChild too? (probably not)

&gt; Source/WebCore/accessibility/AXObjectCache.cpp:632
&gt; +void AXObjectCache::childrenChanged(Node* node, Node* newChild)
&gt; +{
&gt; +    if (newChild)
&gt; +        checkForOpenMenu(newChild);
&gt;      childrenChanged(get(node));
&gt;  }

I can&apos;t see in this patch any usage of this function (using Node pointers as parameters) passing the new parameter &apos;newChild&apos;.

Maybe it&apos;s not needed to add it then? Or perhaps there&apos;s a missing bit in the attached patch?

&gt; Source/WebCore/accessibility/AXObjectCache.cpp:688
&gt; +    

Extra blank lines

&gt; Source/WebCore/accessibility/AXObjectCache.h:108
&gt; +    void childrenChanged(Node*, Node* newChild = 0);
&gt; +    void childrenChanged(RenderObject*, RenderObject* newChild = 0);

There was a recent discussion in webkit-dev and I think the agreement was to use nullptr in this cases instead of 0 or NULL (with the exception of Objective-C files)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>968397</commentid>
    <comment_count>4</comment_count>
      <attachid>221284</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-01-15 10:36:41 -0800</bug_when>
    <thetext>Created attachment 221284
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>968788</commentid>
    <comment_count>5</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2014-01-16 09:29:45 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/162132</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>968930</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-01-16 14:04:41 -0800</bug_when>
    <thetext>platform/mac/accessibility/aria-multiline.html has started to sometimes hit assertions today, possibly because of this change. Filed bug 127141.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221180</attachid>
            <date>2014-01-14 10:42:06 -0800</date>
            <delta_ts>2014-01-15 10:36:41 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>12034</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2MTk4MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE0LTAxLTE0ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFdlYktpdCBpcyBu
b3QgZmlyaW5nIEFYTWVudU9wZW5lZE5vdGlmaWNhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2OTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVG8gbW9uaXRvciBmb3IgbWVudSBvcGVuIG5vdGlm
aWNhdGlvbnMsIHdlIG5lZWQgdG8ga25vdyB3aGljaCBjaGlsZHJlbiBhcmUgYWRkZWQgdG8KKyAg
ICAgICAgdGhlIHJlbmRlciB0cmVlLCBzbyB0aGUgY2hpbGRyZW5DaGFuZ2VkKCkgbWV0aG9kIGhh
cyBiZWVuIHVwZGF0ZWQgdG8gYWxsb3cgZm9yIHRoYXQuCisgICAgICAgIE9uY2Ugd2Uga25vdyB0
aGUgbmV3IGNoaWxkLCB3ZSBjYW4gdGhlbiBjaGVjayB3aGF0IGtpbmQgb2Ygcm9sZSBpdCBoYXMu
CisKKyAgICAgICAgSSBhbHNvIGZvdW5kIGEgZmxha2luZXNzIGlzc3VlIHdpdGggRFJUIHdoZXJl
IHBvc3RpbmcgYSBub3RpZmljYXRpb24gYmFjayB0byBEUlQKKyAgICAgICAgd291bGQgc29tZXRp
bWVzIGNhdXNlIGEgbmV3IG5vdGlmaWNhdGlvbiB0byBiZSBxdWV1ZWQsIHdoaWNoIHdvdWxkIHRo
ZW4gYmUgbG9zdCB3aGVuIHRoZQorICAgICAgICBxdWV1ZSB3YXMgY2xlYXJlZC4gVGhpcyB3YXMg
Zml4ZWQgYnkgY29weWluZyB0aGUgbm90aWZpY2F0aW9ucyB0byBwb3N0IGJlZm9yZSBpdGVyYXRp
bmcgdGhlbS4KKworICAgICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlh
LW1lbnUtb3Blbi1ub3RpZmljYXRpb24uaHRtbAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
WE9iamVjdENhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OmNoZWNr
Rm9yT3Blbk1lbnUpOgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5D
aGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6Om5vdGlmaWNhdGlvblBv
c3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZCk6CisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5oOgorICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvbWFjL0FYT2JqZWN0Q2FjaGVNYWMubW06CisgICAgICAgIChXZWJDb3Jl
OjpBWE9iamVjdENhY2hlOjpwb3N0UGxhdGZvcm1Ob3RpZmljYXRpb24pOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1l
bnQ6Omluc2VydENoaWxkSW50ZXJuYWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRWxlbWVu
dDo6c3R5bGVXaWxsQ2hhbmdlKToKKwogMjAxNC0wMS0xNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0
LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE2
MTk3OC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmNwcAkocmV2aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWE9iamVjdENhY2hlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjE1LDEzICs2MTUsMjkgQEAK
ICAgICBnZXQobm9kZSk7CiB9CiAKLXZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2Vk
KE5vZGUqIG5vZGUpCit2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoZWNrRm9yT3Blbk1lbnUoTm9kZSog
bm9kZSkKIHsKKyAgICBpZiAoIW5vZGUpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBpZiAo
bm9kZS0+cmVuZGVyZXIoKSAmJiBub2RlSGFzUm9sZShub2RlLCAibWVudSIpKQorICAgICAgICBw
b3N0Tm90aWZpY2F0aW9uKGdldE9yQ3JlYXRlKG5vZGUpLCAmZG9jdW1lbnQoKSwgQVhNZW51T3Bl
bmVkKTsKK30KKyAgICAKK3ZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2VkKE5vZGUq
IG5vZGUsIE5vZGUqIG5ld0NoaWxkKQoreworICAgIGlmIChuZXdDaGlsZCkKKyAgICAgICAgY2hl
Y2tGb3JPcGVuTWVudShuZXdDaGlsZCk7CiAgICAgY2hpbGRyZW5DaGFuZ2VkKGdldChub2RlKSk7
CiB9CiAKLXZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2VkKFJlbmRlck9iamVjdCog
cmVuZGVyZXIpCit2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZChSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyLCBSZW5kZXJPYmplY3QqIG5ld0NoaWxkKQogeworICAgIGlmICghcmVuZGVy
ZXIpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAobmV3Q2hpbGQpCisgICAgICAgIGNoZWNrRm9y
T3Blbk1lbnUobmV3Q2hpbGQtPm5vZGUoKSk7CisgICAgCiAgICAgY2hpbGRyZW5DaGFuZ2VkKGdl
dChyZW5kZXJlcikpOwogfQogCkBAIC02MzYsMTIgKzY1MiwxNSBAQAogdm9pZCBBWE9iamVjdENh
Y2hlOjpub3RpZmljYXRpb25Qb3N0VGltZXJGaXJlZChUaW1lcjxBWE9iamVjdENhY2hlPiYpCiB7
CiAgICAgUmVmPERvY3VtZW50PiBwcm90ZWN0b3JGb3JDYWNoZU93bmVyKG1fZG9jdW1lbnQpOwot
CiAgICAgbV9ub3RpZmljYXRpb25Qb3N0VGltZXIuc3RvcCgpOwotCi0gICAgdW5zaWduZWQgaSA9
IDAsIGNvdW50ID0gbV9ub3RpZmljYXRpb25zVG9Qb3N0LnNpemUoKTsKLSAgICBmb3IgKGkgPSAw
OyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmogPSBt
X25vdGlmaWNhdGlvbnNUb1Bvc3RbaV0uZmlyc3QuZ2V0KCk7CisgICAgCisgICAgLy8gSW4gRFJU
LCBwb3N0aW5nIG5vdGlmaWNhdGlvbnMgaGFzIGEgdGVuZGVuY3kgdG8gaW1tZWRpYXRlbHkgcXVl
dWUgdXAgb3RoZXIgbm90aWZpY2F0aW9ucywgd2hpY2ggY2FuIGxlYWQgdG8gdW5leHBlY3RlZCBi
ZWhhdmlvcgorICAgIC8vIHdoZW4gdGhlIG5vdGlmaWNhdGlvbiBsaXN0IGlzIGNsZWFyZWQgYXQg
dGhlIGVuZC4gSW5zdGVhZCBjb3B5IHRoaXMgbGlzdCBhdCB0aGUgc3RhcnQuCisgICAgYXV0byBu
b3RpZmljYXRpb25zID0gbV9ub3RpZmljYXRpb25zVG9Qb3N0OworICAgIG1fbm90aWZpY2F0aW9u
c1RvUG9zdC5jbGVhcigpOworICAgIAorICAgIGZvciAoY29uc3QgYXV0byYgbm90ZSA6IG5vdGlm
aWNhdGlvbnMpIHsKKyAgICAgICAgQWNjZXNzaWJpbGl0eU9iamVjdCogb2JqID0gbm90ZS5maXJz
dC5nZXQoKTsKICAgICAgICAgaWYgKCFvYmotPmF4T2JqZWN0SUQoKSkKICAgICAgICAgICAgIGNv
bnRpbnVlOwogCkBAIC02NTgsMTUgKzY3NywxNSBAQAogICAgICAgICAgICAgICAgIEFTU0VSVCgh
cmVuZGVyZXItPnZpZXcoKS5sYXlvdXRTdGF0ZSgpKTsKICAgICAgICAgfQogI2VuZGlmCi0gICAg
ICAgIAotICAgICAgICBBWE5vdGlmaWNhdGlvbiBub3RpZmljYXRpb24gPSBtX25vdGlmaWNhdGlv
bnNUb1Bvc3RbaV0uc2Vjb25kOworCisgICAgICAgIEFYTm90aWZpY2F0aW9uIG5vdGlmaWNhdGlv
biA9IG5vdGUuc2Vjb25kOwogICAgICAgICBwb3N0UGxhdGZvcm1Ob3RpZmljYXRpb24ob2JqLCBu
b3RpZmljYXRpb24pOwogCiAgICAgICAgIGlmIChub3RpZmljYXRpb24gPT0gQVhDaGlsZHJlbkNo
YW5nZWQgJiYgb2JqLT5wYXJlbnRPYmplY3RJZkV4aXN0cygpICYmIG9iai0+bGFzdEtub3duSXNJ
Z25vcmVkVmFsdWUoKSAhPSBvYmotPmFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKSkKICAgICAgICAg
ICAgIGNoaWxkcmVuQ2hhbmdlZChvYmotPnBhcmVudE9iamVjdCgpKTsKICAgICB9CiAgICAgCi0g
ICAgbV9ub3RpZmljYXRpb25zVG9Qb3N0LmNsZWFyKCk7CisgICAgCiB9CiAgICAgCiB2b2lkIEFY
T2JqZWN0Q2FjaGU6OnBvc3ROb3RpZmljYXRpb24oUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgQVhO
b3RpZmljYXRpb24gbm90aWZpY2F0aW9uLCBQb3N0VGFyZ2V0IHBvc3RUYXJnZXQsIFBvc3RUeXBl
IHBvc3RUeXBlKQpJbmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVj
dENhY2hlLmgJKHJldmlzaW9uIDE2MTk4MSkKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQVhPYmplY3RDYWNoZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDQsOCArMTA0LDggQEAKIAog
ICAgIHZvaWQgZGV0YWNoV3JhcHBlcihBY2Nlc3NpYmlsaXR5T2JqZWN0KiwgQWNjZXNzaWJpbGl0
eURldGFjaG1lbnRUeXBlKTsKICAgICB2b2lkIGF0dGFjaFdyYXBwZXIoQWNjZXNzaWJpbGl0eU9i
amVjdCopOwotICAgIHZvaWQgY2hpbGRyZW5DaGFuZ2VkKE5vZGUqKTsKLSAgICB2b2lkIGNoaWxk
cmVuQ2hhbmdlZChSZW5kZXJPYmplY3QqKTsKKyAgICB2b2lkIGNoaWxkcmVuQ2hhbmdlZChOb2Rl
KiwgTm9kZSogbmV3Q2hpbGQgPSAwKTsKKyAgICB2b2lkIGNoaWxkcmVuQ2hhbmdlZChSZW5kZXJP
YmplY3QqLCBSZW5kZXJPYmplY3QqIG5ld0NoaWxkID0gMCk7CiAgICAgdm9pZCBjaGlsZHJlbkNo
YW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdCopOwogICAgIHZvaWQgY2hlY2tlZFN0YXRlQ2hhbmdl
ZChOb2RlKik7CiAgICAgdm9pZCBzZWxlY3RlZENoaWxkcmVuQ2hhbmdlZChOb2RlKik7CkBAIC0x
NzAsNiArMTcwLDcgQEAKICAgICAgICAgQVhNZW51TGlzdEl0ZW1TZWxlY3RlZCwKICAgICAgICAg
QVhNZW51TGlzdFZhbHVlQ2hhbmdlZCwKICAgICAgICAgQVhNZW51Q2xvc2VkLAorICAgICAgICBB
WE1lbnVPcGVuZWQsCiAgICAgICAgIEFYUm93Q291bnRDaGFuZ2VkLAogICAgICAgICBBWFJvd0Nv
bGxhcHNlZCwKICAgICAgICAgQVhSb3dFeHBhbmRlZCwKQEAgLTE5OSw3ICsyMDAsNiBAQAogCiAg
ICAgdm9pZCBmcmFtZUxvYWRpbmdFdmVudE5vdGlmaWNhdGlvbihGcmFtZSosIEFYTG9hZGluZ0V2
ZW50KTsKIAotICAgIGJvb2wgbm9kZUhhc1JvbGUoTm9kZSosIGNvbnN0IEF0b21pY1N0cmluZyYg
cm9sZSk7CiAgICAgdm9pZCBjbGVhclRleHRNYXJrZXJOb2Rlc0luVXNlKERvY3VtZW50Kik7CiAK
ICAgICB2b2lkIHN0YXJ0Q2FjaGluZ0NvbXB1dGVkT2JqZWN0QXR0cmlidXRlc1VudGlsVHJlZU11
dGF0ZXMoKTsKQEAgLTIzNyw2ICsyMzcsNyBAQAogICAgIFRpbWVyPEFYT2JqZWN0Q2FjaGU+IG1f
bm90aWZpY2F0aW9uUG9zdFRpbWVyOwogICAgIFZlY3RvcjxzdGQ6OnBhaXI8UmVmUHRyPEFjY2Vz
c2liaWxpdHlPYmplY3Q+LCBBWE5vdGlmaWNhdGlvbj4+IG1fbm90aWZpY2F0aW9uc1RvUG9zdDsK
ICAgICB2b2lkIG5vdGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKFRpbWVyPEFYT2JqZWN0Q2FjaGU+
Jik7CisgICAgdm9pZCBjaGVja0Zvck9wZW5NZW51KE5vZGUqKTsKICAgICAKICAgICBzdGF0aWMg
QWNjZXNzaWJpbGl0eU9iamVjdCogZm9jdXNlZEltYWdlTWFwVUlFbGVtZW50KEhUTUxBcmVhRWxl
bWVudCopOwogICAgIApAQCAtMjgwLDggKzI4MSw4IEBACiBpbmxpbmUgY29uc3QgRWxlbWVudCog
QVhPYmplY3RDYWNoZTo6cm9vdEFYRWRpdGFibGVFbGVtZW50KGNvbnN0IE5vZGUqKSB7IHJldHVy
biAwOyB9CiBpbmxpbmUgdm9pZCBBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKEFjY2Vzc2li
aWxpdHlPYmplY3QqKSB7IH0KIGlubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoZWNrZWRTdGF0
ZUNoYW5nZWQoTm9kZSopIHsgfQotaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5D
aGFuZ2VkKFJlbmRlck9iamVjdCopIHsgfQotaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6Y2hp
bGRyZW5DaGFuZ2VkKE5vZGUqKSB7IH0KK2lubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoaWxk
cmVuQ2hhbmdlZChSZW5kZXJPYmplY3QqLCBSZW5kZXJPYmplY3QqKSB7IH0KK2lubGluZSB2b2lk
IEFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZChOb2RlKiwgTm9kZSopIHsgfQogaW5saW5l
IHZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2VkKEFjY2Vzc2liaWxpdHlPYmplY3Qq
KSB7IH0KIGlubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OnRleHRDaGFuZ2VkKFJlbmRlck9iamVj
dCopIHsgfQogaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6dGV4dENoYW5nZWQoTm9kZSopIHsg
fQpJbmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9i
amVjdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU5vZGVPYmplY3QuaAkocmV2aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xODUsNiArMTg1LDcgQEAKICAgICB2b2lkIGVsZW1lbnRzRnJvbUF0dHJpYnV0ZShWZWN0b3I8
RWxlbWVudCo+JiBlbGVtZW50cywgY29uc3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0OwogICAgIHZp
cnR1YWwgTGF5b3V0UmVjdCBib3VuZGluZ0JveFJlY3QoKSBjb25zdCBPVkVSUklERTsKICAgICB2
aXJ0dWFsIFN0cmluZyBhcmlhRGVzY3JpYmVkQnlBdHRyaWJ1dGUoKSBjb25zdCBPVkVSUklERTsK
KyAgICB2b2lkIGNoZWNrRm9yTWVudU9wZW5lZCgpOwogICAgIAogICAgIEVsZW1lbnQqIG1lbnVF
bGVtZW50Rm9yTWVudUJ1dHRvbigpIGNvbnN0OwogICAgIEVsZW1lbnQqIG1lbnVJdGVtRWxlbWVu
dEZvck1lbnUoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFj
L0FYT2JqZWN0Q2FjaGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9tYWMvQVhPYmplY3RDYWNoZU1hYy5tbQkocmV2aXNpb24gMTYxOTgxKQorKysgU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvQVhPYmplY3RDYWNoZU1hYy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTIxLDYgKzEyMSw5IEBACiAgICAgICAgIGNhc2UgQVhNZW51Q2xvc2VkOgog
ICAgICAgICAgICAgbWFjTm90aWZpY2F0aW9uID0gKGlkKWtBWE1lbnVDbG9zZWROb3RpZmljYXRp
b247CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBWE1lbnVPcGVuZWQ6CisgICAg
ICAgICAgICBtYWNOb3RpZmljYXRpb24gPSAoaWQpa0FYTWVudU9wZW5lZE5vdGlmaWNhdGlvbjsK
KyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEFYQ2hlY2tlZFN0YXRlQ2hhbmdlZDoK
ICAgICAgICAgICAgIC8vIERvZXMgbm90IGV4aXN0IG9uIE1hYy4KICAgICAgICAgZGVmYXVsdDoK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAJKHJldmlz
aW9uIDE2MTg5MikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNTkzLDcgKzU5Myw3IEBACiAgICAgICAgIHNldENoaWxkTmVl
ZHNMYXlvdXQoKTsgLy8gV2UgbWF5IHN1cHBseSB0aGUgc3RhdGljIHBvc2l0aW9uIGZvciBhbiBh
YnNvbHV0ZSBwb3NpdGlvbmVkIGNoaWxkLgogCiAgICAgaWYgKEFYT2JqZWN0Q2FjaGUqIGNhY2hl
ID0gZG9jdW1lbnQoKS5heE9iamVjdENhY2hlKCkpCi0gICAgICAgIGNhY2hlLT5jaGlsZHJlbkNo
YW5nZWQodGhpcyk7CisgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQodGhpcywgbmV3Q2hp
bGQpOwogfQogCiB2b2lkIFJlbmRlckVsZW1lbnQ6OnJlbW92ZUNoaWxkSW50ZXJuYWwoUmVuZGVy
T2JqZWN0JiBvbGRDaGlsZCwgTm90aWZ5Q2hpbGRyZW5UeXBlIG5vdGlmeUNoaWxkcmVuKQpAQCAt
ODQyLDcgKzg0Miw3IEBACiAjZW5kaWYKICAgICAgICAgaWYgKHZpc2liaWxpdHlDaGFuZ2VkKSB7
CiAgICAgICAgICAgICBpZiAoQVhPYmplY3RDYWNoZSogY2FjaGUgPSBkb2N1bWVudCgpLmV4aXN0
aW5nQVhPYmplY3RDYWNoZSgpKQotICAgICAgICAgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5n
ZWQocGFyZW50KCkpOworICAgICAgICAgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQocGFy
ZW50KCksIHRoaXMpOwogICAgICAgICB9CiAKICAgICAgICAgLy8gS2VlcCBsYXllciBoaWVyYXJj
aHkgdmlzaWJpbGl0eSBiaXRzIHVwIHRvIGRhdGUgaWYgdmlzaWJpbGl0eSBjaGFuZ2VzLgpJbmRl
eDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTYxOTgzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMDEtMTQgIENocmlzIEZsZWl6YWNoICA8Y2Zs
ZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogV2ViS2l0IGlzIG5vdCBmaXJpbmcgQVhN
ZW51T3BlbmVkTm90aWZpY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMjY5OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtbWVudS1vcGVu
LW5vdGlmaWNhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy9hY2Nlc3NpYmlsaXR5L2FyaWEtbWVudS1vcGVuLW5vdGlmaWNhdGlvbi5odG1sOiBBZGRlZC4K
KwogMjAxNC0wMS0xNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE2MTk3OC4KSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtbWVudS1vcGVuLW5vdGlmaWNhdGlv
bi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Fj
Y2Vzc2liaWxpdHkvYXJpYS1tZW51LW9wZW4tbm90aWZpY2F0aW9uLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEt
bWVudS1vcGVuLW5vdGlmaWNhdGlvbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwxNCBAQAorTWVudSBpdGVtIDEKK01lbnUgaXRlbSAyCitUaGlzIHRlc3RzIHRoYXQgdGhl
IEFYTWVudU9wZW5lZCBub3RpZmljYXRpb24gZ2V0cyBmaXJlZCB3aGVuIGFuIEFSSUEgbWVudSBw
b3B1cCBvcGVucy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYWRkZWRO
b3RpZmljYXRpb24gaXMgdHJ1ZQorUmVjZWl2ZWQgbWVudSBvcGVuZWQgbm90aWZpY2F0aW9uOiBB
WE1lbnVPcGVuZWQKK01lbnUgZWxlbWVudDogQVhSb2xlOiBBWE1lbnUKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlhLW1lbnUtb3Blbi1ub3RpZmljYXRpb24uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9h
cmlhLW1lbnUtb3Blbi1ub3RpZmljYXRpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtbWVudS1vcGVuLW5vdGlmaWNhdGlv
bi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBIVE1MIFBV
QkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5IGlkPSJib2R5Ij4KKworPGRpdiBpZD0ibWVudSIgcm9sZT0ibWVudSIgaGlkZGVuPgor
ICAgIDxkaXYgcm9sZT0ibWVudWl0ZW0iIGlkPSJpdGVtMSIgdGFiaW5kZXg9IjAiPk1lbnUgaXRl
bSAxPC9kaXY+CisgICAgPGRpdiByb2xlPSJtZW51aXRlbSIgaWQ9Iml0ZW0yIiB0YWJpbmRleD0i
MCI+TWVudSBpdGVtIDI8L2Rpdj4KKzwvZGl2PgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorCisgICAgZGVzY3JpcHRpb24o
IlRoaXMgdGVzdHMgdGhhdCB0aGUgQVhNZW51T3BlbmVkIG5vdGlmaWNhdGlvbiBnZXRzIGZpcmVk
IHdoZW4gYW4gQVJJQSBtZW51IHBvcHVwIG9wZW5zLiIpOworCisgICAgZnVuY3Rpb24gc2hvd01l
bnUoKSB7CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtZW51IikucmVtb3ZlQXR0
cmlidXRlKCJoaWRkZW4iKTsKKyAgICB9CisKKyAgICB2YXIgbm90aWZpY2F0aW9uID0gMDsKKyAg
ICB2YXIgZWxlbWVudCA9IDA7CisgICAgZnVuY3Rpb24gYXJpYUNhbGxiYWNrKGVsZW1lbnQsIG5v
dGlmaWNhdGlvbikgeworICAgICAgICBpZiAobm90aWZpY2F0aW9uID09ICJBWE1lbnVPcGVuZWQi
KSB7CisgICAgICAgICAgIGRlYnVnKCJSZWNlaXZlZCBtZW51IG9wZW5lZCBub3RpZmljYXRpb246
ICIgKyBub3RpZmljYXRpb24pOworICAgICAgICAgICBkZWJ1ZygiTWVudSBlbGVtZW50OiAiICsg
ZWxlbWVudC5yb2xlKTsKKyAgICAgICAgICAgYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucmVtb3Zl
Tm90aWZpY2F0aW9uTGlzdGVuZXIoKTsKKyAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAg
ICAgIH0KKyAgICB9CisKKyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgaWYg
KHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICB2YXIgYWRkZWROb3Rp
ZmljYXRpb24gPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hZGROb3RpZmljYXRpb25MaXN0ZW5l
cihhcmlhQ2FsbGJhY2spOworICAgICAgICBzaG91bGRCZSgiYWRkZWROb3RpZmljYXRpb24iLCAi
dHJ1ZSIpOworCisgICAgICAgIC8vIE1ha2Ugc3VyZSBBWCBpcyBlbmFibGVkIGJ5IGFjY2Vzc2lu
ZyByb290IGVsZW1lbnQuCisgICAgICAgIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLnJvb3RFbGVt
ZW50OworCisgICAgICAgIHNldFRpbWVvdXQoInNob3dNZW51KCk7IiwgMSk7CisgICAgfQorICAg
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CisKKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221284</attachid>
            <date>2014-01-15 10:36:41 -0800</date>
            <delta_ts>2014-01-16 01:58:41 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>12389</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2MTk4MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE0LTAxLTE0ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFdlYktpdCBpcyBu
b3QgZmlyaW5nIEFYTWVudU9wZW5lZE5vdGlmaWNhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2OTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVG8gbW9uaXRvciBmb3IgbWVudSBvcGVuIG5vdGlm
aWNhdGlvbnMsIHdlIG5lZWQgdG8ga25vdyB3aGljaCBjaGlsZHJlbiBhcmUgYWRkZWQgdG8KKyAg
ICAgICAgdGhlIHJlbmRlciB0cmVlLCBzbyB0aGUgY2hpbGRyZW5DaGFuZ2VkKCkgbWV0aG9kIGhh
cyBiZWVuIHVwZGF0ZWQgdG8gYWxsb3cgZm9yIHRoYXQuCisgICAgICAgIE9uY2Ugd2Uga25vdyB0
aGUgbmV3IGNoaWxkLCB3ZSBjYW4gdGhlbiBjaGVjayB3aGF0IGtpbmQgb2Ygcm9sZSBpdCBoYXMu
CisKKyAgICAgICAgSSBhbHNvIGZvdW5kIGEgZmxha2luZXNzIGlzc3VlIHdpdGggRFJUIHdoZXJl
IHBvc3RpbmcgYSBub3RpZmljYXRpb24gYmFjayB0byBEUlQKKyAgICAgICAgd291bGQgc29tZXRp
bWVzIGNhdXNlIGEgbmV3IG5vdGlmaWNhdGlvbiB0byBiZSBxdWV1ZWQsIHdoaWNoIHdvdWxkIHRo
ZW4gYmUgbG9zdCB3aGVuIHRoZQorICAgICAgICBxdWV1ZSB3YXMgY2xlYXJlZC4gVGhpcyB3YXMg
Zml4ZWQgYnkgY29weWluZyB0aGUgbm90aWZpY2F0aW9ucyB0byBwb3N0IGJlZm9yZSBpdGVyYXRp
bmcgdGhlbS4KKworICAgICAgICBUZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlh
LW1lbnUtb3Blbi1ub3RpZmljYXRpb24uaHRtbAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
WE9iamVjdENhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OmNoZWNr
Rm9yT3Blbk1lbnUpOgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5D
aGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6Om5vdGlmaWNhdGlvblBv
c3RUaW1lckZpcmVkKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZCk6CisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5oOgorICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvbWFjL0FYT2JqZWN0Q2FjaGVNYWMubW06CisgICAgICAgIChXZWJDb3Jl
OjpBWE9iamVjdENhY2hlOjpwb3N0UGxhdGZvcm1Ob3RpZmljYXRpb24pOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1l
bnQ6Omluc2VydENoaWxkSW50ZXJuYWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRWxlbWVu
dDo6c3R5bGVXaWxsQ2hhbmdlKToKKwogMjAxNC0wMS0xNCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0
LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE2
MTk3OC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmNwcAkocmV2aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWE9iamVjdENhY2hlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjE1LDEzICs2MTUsMjcgQEAK
ICAgICBnZXQobm9kZSk7CiB9CiAKK3ZvaWQgQVhPYmplY3RDYWNoZTo6Y2hlY2tGb3JPcGVuTWVu
dShOb2RlKiBub2RlKQoreworICAgIGlmICghbm9kZSkKKyAgICAgICAgcmV0dXJuOworICAgIAor
ICAgIGlmIChub2RlLT5yZW5kZXJlcigpICYmIG5vZGVIYXNSb2xlKG5vZGUsICJtZW51IikpCisg
ICAgICAgIHBvc3ROb3RpZmljYXRpb24oZ2V0T3JDcmVhdGUobm9kZSksICZkb2N1bWVudCgpLCBB
WE1lbnVPcGVuZWQpOworfQorICAgIAogdm9pZCBBWE9iamVjdENhY2hlOjpjaGlsZHJlbkNoYW5n
ZWQoTm9kZSogbm9kZSkKIHsKICAgICBjaGlsZHJlbkNoYW5nZWQoZ2V0KG5vZGUpKTsKIH0KIAot
dm9pZCBBWE9iamVjdENhY2hlOjpjaGlsZHJlbkNoYW5nZWQoUmVuZGVyT2JqZWN0KiByZW5kZXJl
cikKK3ZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2VkKFJlbmRlck9iamVjdCogcmVu
ZGVyZXIsIFJlbmRlck9iamVjdCogbmV3Q2hpbGQpCiB7CisgICAgaWYgKCFyZW5kZXJlcikKKyAg
ICAgICAgcmV0dXJuOworICAgIGlmIChuZXdDaGlsZCkKKyAgICAgICAgY2hlY2tGb3JPcGVuTWVu
dShuZXdDaGlsZC0+bm9kZSgpKTsKKyAgICAKICAgICBjaGlsZHJlbkNoYW5nZWQoZ2V0KHJlbmRl
cmVyKSk7CiB9CiAKQEAgLTYzNiwxMiArNjUwLDE1IEBACiB2b2lkIEFYT2JqZWN0Q2FjaGU6Om5v
dGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKFRpbWVyPEFYT2JqZWN0Q2FjaGU+JikKIHsKICAgICBS
ZWY8RG9jdW1lbnQ+IHByb3RlY3RvckZvckNhY2hlT3duZXIobV9kb2N1bWVudCk7Ci0KICAgICBt
X25vdGlmaWNhdGlvblBvc3RUaW1lci5zdG9wKCk7Ci0KLSAgICB1bnNpZ25lZCBpID0gMCwgY291
bnQgPSBtX25vdGlmaWNhdGlvbnNUb1Bvc3Quc2l6ZSgpOwotICAgIGZvciAoaSA9IDA7IGkgPCBj
b3VudDsgKytpKSB7Ci0gICAgICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIG9iaiA9IG1fbm90aWZp
Y2F0aW9uc1RvUG9zdFtpXS5maXJzdC5nZXQoKTsKKyAgICAKKyAgICAvLyBJbiBEUlQsIHBvc3Rp
bmcgbm90aWZpY2F0aW9ucyBoYXMgYSB0ZW5kZW5jeSB0byBpbW1lZGlhdGVseSBxdWV1ZSB1cCBv
dGhlciBub3RpZmljYXRpb25zLCB3aGljaCBjYW4gbGVhZCB0byB1bmV4cGVjdGVkIGJlaGF2aW9y
CisgICAgLy8gd2hlbiB0aGUgbm90aWZpY2F0aW9uIGxpc3QgaXMgY2xlYXJlZCBhdCB0aGUgZW5k
LiBJbnN0ZWFkIGNvcHkgdGhpcyBsaXN0IGF0IHRoZSBzdGFydC4KKyAgICBhdXRvIG5vdGlmaWNh
dGlvbnMgPSBtX25vdGlmaWNhdGlvbnNUb1Bvc3Q7CisgICAgbV9ub3RpZmljYXRpb25zVG9Qb3N0
LmNsZWFyKCk7CisgICAgCisgICAgZm9yIChjb25zdCBhdXRvJiBub3RlIDogbm90aWZpY2F0aW9u
cykgeworICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmogPSBub3RlLmZpcnN0LmdldCgp
OwogICAgICAgICBpZiAoIW9iai0+YXhPYmplY3RJRCgpKQogICAgICAgICAgICAgY29udGludWU7
CiAKQEAgLTY1OCwxNSArNjc1LDEzIEBACiAgICAgICAgICAgICAgICAgQVNTRVJUKCFyZW5kZXJl
ci0+dmlldygpLmxheW91dFN0YXRlKCkpOwogICAgICAgICB9CiAjZW5kaWYKLSAgICAgICAgCi0g
ICAgICAgIEFYTm90aWZpY2F0aW9uIG5vdGlmaWNhdGlvbiA9IG1fbm90aWZpY2F0aW9uc1RvUG9z
dFtpXS5zZWNvbmQ7CisKKyAgICAgICAgQVhOb3RpZmljYXRpb24gbm90aWZpY2F0aW9uID0gbm90
ZS5zZWNvbmQ7CiAgICAgICAgIHBvc3RQbGF0Zm9ybU5vdGlmaWNhdGlvbihvYmosIG5vdGlmaWNh
dGlvbik7CiAKICAgICAgICAgaWYgKG5vdGlmaWNhdGlvbiA9PSBBWENoaWxkcmVuQ2hhbmdlZCAm
JiBvYmotPnBhcmVudE9iamVjdElmRXhpc3RzKCkgJiYgb2JqLT5sYXN0S25vd25Jc0lnbm9yZWRW
YWx1ZSgpICE9IG9iai0+YWNjZXNzaWJpbGl0eUlzSWdub3JlZCgpKQogICAgICAgICAgICAgY2hp
bGRyZW5DaGFuZ2VkKG9iai0+cGFyZW50T2JqZWN0KCkpOwogICAgIH0KLSAgICAKLSAgICBtX25v
dGlmaWNhdGlvbnNUb1Bvc3QuY2xlYXIoKTsKIH0KICAgICAKIHZvaWQgQVhPYmplY3RDYWNoZTo6
cG9zdE5vdGlmaWNhdGlvbihSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBBWE5vdGlmaWNhdGlvbiBu
b3RpZmljYXRpb24sIFBvc3RUYXJnZXQgcG9zdFRhcmdldCwgUG9zdFR5cGUgcG9zdFR5cGUpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaAkocmV2
aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENh
Y2hlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwNSw3ICsxMDUsNyBAQAogICAgIHZvaWQgZGV0YWNo
V3JhcHBlcihBY2Nlc3NpYmlsaXR5T2JqZWN0KiwgQWNjZXNzaWJpbGl0eURldGFjaG1lbnRUeXBl
KTsKICAgICB2b2lkIGF0dGFjaFdyYXBwZXIoQWNjZXNzaWJpbGl0eU9iamVjdCopOwogICAgIHZv
aWQgY2hpbGRyZW5DaGFuZ2VkKE5vZGUqKTsKLSAgICB2b2lkIGNoaWxkcmVuQ2hhbmdlZChSZW5k
ZXJPYmplY3QqKTsKKyAgICB2b2lkIGNoaWxkcmVuQ2hhbmdlZChSZW5kZXJPYmplY3QqLCBSZW5k
ZXJPYmplY3QqIG5ld0NoaWxkID0gbnVsbHB0cik7CiAgICAgdm9pZCBjaGlsZHJlbkNoYW5nZWQo
QWNjZXNzaWJpbGl0eU9iamVjdCopOwogICAgIHZvaWQgY2hlY2tlZFN0YXRlQ2hhbmdlZChOb2Rl
Kik7CiAgICAgdm9pZCBzZWxlY3RlZENoaWxkcmVuQ2hhbmdlZChOb2RlKik7CkBAIC0xNzAsNiAr
MTcwLDcgQEAKICAgICAgICAgQVhNZW51TGlzdEl0ZW1TZWxlY3RlZCwKICAgICAgICAgQVhNZW51
TGlzdFZhbHVlQ2hhbmdlZCwKICAgICAgICAgQVhNZW51Q2xvc2VkLAorICAgICAgICBBWE1lbnVP
cGVuZWQsCiAgICAgICAgIEFYUm93Q291bnRDaGFuZ2VkLAogICAgICAgICBBWFJvd0NvbGxhcHNl
ZCwKICAgICAgICAgQVhSb3dFeHBhbmRlZCwKQEAgLTE5OSw3ICsyMDAsNiBAQAogCiAgICAgdm9p
ZCBmcmFtZUxvYWRpbmdFdmVudE5vdGlmaWNhdGlvbihGcmFtZSosIEFYTG9hZGluZ0V2ZW50KTsK
IAotICAgIGJvb2wgbm9kZUhhc1JvbGUoTm9kZSosIGNvbnN0IEF0b21pY1N0cmluZyYgcm9sZSk7
CiAgICAgdm9pZCBjbGVhclRleHRNYXJrZXJOb2Rlc0luVXNlKERvY3VtZW50Kik7CiAKICAgICB2
b2lkIHN0YXJ0Q2FjaGluZ0NvbXB1dGVkT2JqZWN0QXR0cmlidXRlc1VudGlsVHJlZU11dGF0ZXMo
KTsKQEAgLTIzNyw2ICsyMzcsNyBAQAogICAgIFRpbWVyPEFYT2JqZWN0Q2FjaGU+IG1fbm90aWZp
Y2F0aW9uUG9zdFRpbWVyOwogICAgIFZlY3RvcjxzdGQ6OnBhaXI8UmVmUHRyPEFjY2Vzc2liaWxp
dHlPYmplY3Q+LCBBWE5vdGlmaWNhdGlvbj4+IG1fbm90aWZpY2F0aW9uc1RvUG9zdDsKICAgICB2
b2lkIG5vdGlmaWNhdGlvblBvc3RUaW1lckZpcmVkKFRpbWVyPEFYT2JqZWN0Q2FjaGU+Jik7Cisg
ICAgdm9pZCBjaGVja0Zvck9wZW5NZW51KE5vZGUqKTsKICAgICAKICAgICBzdGF0aWMgQWNjZXNz
aWJpbGl0eU9iamVjdCogZm9jdXNlZEltYWdlTWFwVUlFbGVtZW50KEhUTUxBcmVhRWxlbWVudCop
OwogICAgIApAQCAtMjgwLDggKzI4MSw4IEBACiBpbmxpbmUgY29uc3QgRWxlbWVudCogQVhPYmpl
Y3RDYWNoZTo6cm9vdEFYRWRpdGFibGVFbGVtZW50KGNvbnN0IE5vZGUqKSB7IHJldHVybiAwOyB9
CiBpbmxpbmUgdm9pZCBBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKEFjY2Vzc2liaWxpdHlP
YmplY3QqKSB7IH0KIGlubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoZWNrZWRTdGF0ZUNoYW5n
ZWQoTm9kZSopIHsgfQotaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2Vk
KFJlbmRlck9iamVjdCopIHsgfQotaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5D
aGFuZ2VkKE5vZGUqKSB7IH0KK2lubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OmNoaWxkcmVuQ2hh
bmdlZChSZW5kZXJPYmplY3QqLCBSZW5kZXJPYmplY3QqKSB7IH0KK2lubGluZSB2b2lkIEFYT2Jq
ZWN0Q2FjaGU6OmNoaWxkcmVuQ2hhbmdlZChOb2RlKiwgTm9kZSopIHsgfQogaW5saW5lIHZvaWQg
QVhPYmplY3RDYWNoZTo6Y2hpbGRyZW5DaGFuZ2VkKEFjY2Vzc2liaWxpdHlPYmplY3QqKSB7IH0K
IGlubGluZSB2b2lkIEFYT2JqZWN0Q2FjaGU6OnRleHRDaGFuZ2VkKFJlbmRlck9iamVjdCopIHsg
fQogaW5saW5lIHZvaWQgQVhPYmplY3RDYWNoZTo6dGV4dENoYW5nZWQoTm9kZSopIHsgfQpJbmRl
eDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eU5vZGVPYmplY3QuaAkocmV2aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xODUs
NiArMTg1LDcgQEAKICAgICB2b2lkIGVsZW1lbnRzRnJvbUF0dHJpYnV0ZShWZWN0b3I8RWxlbWVu
dCo+JiBlbGVtZW50cywgY29uc3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0OwogICAgIHZpcnR1YWwg
TGF5b3V0UmVjdCBib3VuZGluZ0JveFJlY3QoKSBjb25zdCBPVkVSUklERTsKICAgICB2aXJ0dWFs
IFN0cmluZyBhcmlhRGVzY3JpYmVkQnlBdHRyaWJ1dGUoKSBjb25zdCBPVkVSUklERTsKKyAgICB2
b2lkIGNoZWNrRm9yTWVudU9wZW5lZCgpOwogICAgIAogICAgIEVsZW1lbnQqIG1lbnVFbGVtZW50
Rm9yTWVudUJ1dHRvbigpIGNvbnN0OwogICAgIEVsZW1lbnQqIG1lbnVJdGVtRWxlbWVudEZvck1l
bnUoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL0FYT2Jq
ZWN0Q2FjaGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9tYWMvQVhPYmplY3RDYWNoZU1hYy5tbQkocmV2aXNpb24gMTYxOTgxKQorKysgU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvQVhPYmplY3RDYWNoZU1hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtMTIxLDYgKzEyMSw5IEBACiAgICAgICAgIGNhc2UgQVhNZW51Q2xvc2VkOgogICAgICAg
ICAgICAgbWFjTm90aWZpY2F0aW9uID0gKGlkKWtBWE1lbnVDbG9zZWROb3RpZmljYXRpb247CiAg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBWE1lbnVPcGVuZWQ6CisgICAgICAgICAg
ICBtYWNOb3RpZmljYXRpb24gPSAoaWQpa0FYTWVudU9wZW5lZE5vdGlmaWNhdGlvbjsKKyAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEFYQ2hlY2tlZFN0YXRlQ2hhbmdlZDoKICAgICAg
ICAgICAgIC8vIERvZXMgbm90IGV4aXN0IG9uIE1hYy4KICAgICAgICAgZGVmYXVsdDoKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDE2
MTg5MikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNTkzLDcgKzU5Myw3IEBACiAgICAgICAgIHNldENoaWxkTmVlZHNMYXlv
dXQoKTsgLy8gV2UgbWF5IHN1cHBseSB0aGUgc3RhdGljIHBvc2l0aW9uIGZvciBhbiBhYnNvbHV0
ZSBwb3NpdGlvbmVkIGNoaWxkLgogCiAgICAgaWYgKEFYT2JqZWN0Q2FjaGUqIGNhY2hlID0gZG9j
dW1lbnQoKS5heE9iamVjdENhY2hlKCkpCi0gICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQo
dGhpcyk7CisgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQodGhpcywgbmV3Q2hpbGQpOwog
fQogCiB2b2lkIFJlbmRlckVsZW1lbnQ6OnJlbW92ZUNoaWxkSW50ZXJuYWwoUmVuZGVyT2JqZWN0
JiBvbGRDaGlsZCwgTm90aWZ5Q2hpbGRyZW5UeXBlIG5vdGlmeUNoaWxkcmVuKQpAQCAtODQyLDcg
Kzg0Miw3IEBACiAjZW5kaWYKICAgICAgICAgaWYgKHZpc2liaWxpdHlDaGFuZ2VkKSB7CiAgICAg
ICAgICAgICBpZiAoQVhPYmplY3RDYWNoZSogY2FjaGUgPSBkb2N1bWVudCgpLmV4aXN0aW5nQVhP
YmplY3RDYWNoZSgpKQotICAgICAgICAgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQocGFy
ZW50KCkpOworICAgICAgICAgICAgICAgIGNhY2hlLT5jaGlsZHJlbkNoYW5nZWQocGFyZW50KCks
IHRoaXMpOwogICAgICAgICB9CiAKICAgICAgICAgLy8gS2VlcCBsYXllciBoaWVyYXJjaHkgdmlz
aWJpbGl0eSBiaXRzIHVwIHRvIGRhdGUgaWYgdmlzaWJpbGl0eSBjaGFuZ2VzLgpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCShyZXZpc2lvbiAxNjE4
OTIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xODMsNyArMTgzLDcgQEAKICAgICBBU1NFUlQobV9pbm5lckJsb2NrID09
IGZpcnN0Q2hpbGQoKSk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZSogY2FjaGUgPSBkb2N1bWVu
dCgpLmV4aXN0aW5nQVhPYmplY3RDYWNoZSgpKQotICAgICAgICBjYWNoZS0+Y2hpbGRyZW5DaGFu
Z2VkKHRoaXMpOworICAgICAgICBjYWNoZS0+Y2hpbGRyZW5DaGFuZ2VkKHRoaXMsIG5ld0NoaWxk
KTsKIH0KIAogdm9pZCBSZW5kZXJNZW51TGlzdDo6cmVtb3ZlQ2hpbGQoUmVuZGVyT2JqZWN0JiBv
bGRDaGlsZCkKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2MTk4MykKKysrIExheW91dFRlc3RzL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE0LTAxLTE0ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IFdlYktpdCBpcyBu
b3QgZmlyaW5nIEFYTWVudU9wZW5lZE5vdGlmaWNhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2OTkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9h
cmlhLW1lbnUtb3Blbi1ub3RpZmljYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlhLW1lbnUtb3Blbi1ub3RpZmljYXRpb24u
aHRtbDogQWRkZWQuCisKIDIwMTQtMDEtMTQgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNjE5NzguCklu
ZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlhLW1lbnUtb3Bl
bi1ub3RpZmljYXRpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtbWVudS1vcGVuLW5vdGlmaWNhdGlvbi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9hcmlhLW1lbnUtb3Blbi1ub3RpZmljYXRpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsMTQgQEAKK01lbnUgaXRlbSAxCitNZW51IGl0ZW0gMgorVGhpcyB0
ZXN0cyB0aGF0IHRoZSBBWE1lbnVPcGVuZWQgbm90aWZpY2F0aW9uIGdldHMgZmlyZWQgd2hlbiBh
biBBUklBIG1lbnUgcG9wdXAgb3BlbnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIGFkZGVkTm90aWZpY2F0aW9uIGlzIHRydWUKK1JlY2VpdmVkIG1lbnUgb3BlbmVkIG5v
dGlmaWNhdGlvbjogQVhNZW51T3BlbmVkCitNZW51IGVsZW1lbnQ6IEFYUm9sZTogQVhNZW51CitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvYXJpYS1tZW51LW9wZW4tbm90
aWZpY2F0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Fj
Y2Vzc2liaWxpdHkvYXJpYS1tZW51LW9wZW4tbm90aWZpY2F0aW9uLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9hcmlhLW1lbnUtb3Bl
bi1ub3RpZmljYXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDUxIEBACis8IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keSBpZD0iYm9keSI+CisKKzxkaXYgaWQ9Im1lbnUiIHJvbGU9Im1l
bnUiIGhpZGRlbj4KKyAgICA8ZGl2IHJvbGU9Im1lbnVpdGVtIiBpZD0iaXRlbTEiIHRhYmluZGV4
PSIwIj5NZW51IGl0ZW0gMTwvZGl2PgorICAgIDxkaXYgcm9sZT0ibWVudWl0ZW0iIGlkPSJpdGVt
MiIgdGFiaW5kZXg9IjAiPk1lbnUgaXRlbSAyPC9kaXY+Cis8L2Rpdj4KKworPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKworICAg
IGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgdGhlIEFYTWVudU9wZW5lZCBub3RpZmljYXRp
b24gZ2V0cyBmaXJlZCB3aGVuIGFuIEFSSUEgbWVudSBwb3B1cCBvcGVucy4iKTsKKworICAgIGZ1
bmN0aW9uIHNob3dNZW51KCkgeworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWVu
dSIpLnJlbW92ZUF0dHJpYnV0ZSgiaGlkZGVuIik7CisgICAgfQorCisgICAgdmFyIG5vdGlmaWNh
dGlvbiA9IDA7CisgICAgdmFyIGVsZW1lbnQgPSAwOworICAgIGZ1bmN0aW9uIGFyaWFDYWxsYmFj
ayhlbGVtZW50LCBub3RpZmljYXRpb24pIHsKKyAgICAgICAgaWYgKG5vdGlmaWNhdGlvbiA9PSAi
QVhNZW51T3BlbmVkIikgeworICAgICAgICAgICBkZWJ1ZygiUmVjZWl2ZWQgbWVudSBvcGVuZWQg
bm90aWZpY2F0aW9uOiAiICsgbm90aWZpY2F0aW9uKTsKKyAgICAgICAgICAgZGVidWcoIk1lbnUg
ZWxlbWVudDogIiArIGVsZW1lbnQucm9sZSk7CisgICAgICAgICAgIGFjY2Vzc2liaWxpdHlDb250
cm9sbGVyLnJlbW92ZU5vdGlmaWNhdGlvbkxpc3RlbmVyKCk7CisgICAgICAgICAgIGZpbmlzaEpT
VGVzdCgpOworICAgICAgICB9CisgICAgfQorCisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOworICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAg
dmFyIGFkZGVkTm90aWZpY2F0aW9uID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWRkTm90aWZp
Y2F0aW9uTGlzdGVuZXIoYXJpYUNhbGxiYWNrKTsKKyAgICAgICAgc2hvdWxkQmUoImFkZGVkTm90
aWZpY2F0aW9uIiwgInRydWUiKTsKKworICAgICAgICAvLyBNYWtlIHN1cmUgQVggaXMgZW5hYmxl
ZCBieSBhY2Nlc3Npbmcgcm9vdCBlbGVtZW50LgorICAgICAgICBhY2Nlc3NpYmlsaXR5Q29udHJv
bGxlci5yb290RWxlbWVudDsKKworICAgICAgICBzZXRUaW1lb3V0KCJzaG93TWVudSgpOyIsIDEp
OworICAgIH0KKyAgICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworCis8L3NjcmlwdD4KKwor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="245165"
          type_id="1"
          status="+"
          setter="mario"
    />
          </attachment>
      

    </bug>

</bugzilla>