<?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>137779</bug_id>
          
          <creation_ts>2014-10-16 09:54:29 -0700</creation_ts>
          <short_desc>[iOS] Crashes in CFURLConnection delegates due to unimplemented retain/release</short_desc>
          <delta_ts>2014-10-18 00:40:14 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</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>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>psolanki</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1042126</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 09:54:29 -0700</bug_when>
    <thetext>We need ResourceHandleCFURLConnectionDelegate to remain alive for as long as CFURLConnection is making delegate calls. The only way to guarantee this is to have CFURLConnection retain the delegate, which it does - but we don&apos;t implement retain/release client callbacks!

This causes crashes in Networking process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042128</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 10:01:18 -0700</bug_when>
    <thetext>*** Bug 135027 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042129</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 10:01:57 -0700</bug_when>
    <thetext>rdar://problem/18679320</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042130</commentid>
    <comment_count>3</comment_count>
      <attachid>239950</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 10:14:49 -0700</bug_when>
    <thetext>Created attachment 239950
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042152</commentid>
    <comment_count>4</comment_count>
      <attachid>239957</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 12:19:27 -0700</bug_when>
    <thetext>Created attachment 239957
with a build fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042157</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-16 12:46:44 -0700</bug_when>
    <thetext>Committed &lt;https://trac.webkit.org/r174787&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042572</commentid>
    <comment_count>6</comment_count>
      <attachid>239957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-10-17 23:06:23 -0700</bug_when>
    <thetext>Comment on attachment 239957
with a build fix

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

&gt; Source/WebCore/platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:61
&gt; +    static_cast&lt;ResourceHandleCFURLConnectionDelegate*&gt;(const_cast&lt;void*&gt;(clientInfo))-&gt;ref();

Is this thread-safe?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1042575</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-18 00:40:14 -0700</bug_when>
    <thetext>Yes, ResourceHandleCFURLConnectionDelegate is a ThreadSafeRefCounted object, and it doesn&apos;t have any data members that are unsafe to destruct on any thread.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239950</attachid>
            <date>2014-10-16 10:14:49 -0700</date>
            <delta_ts>2014-10-16 12:19:27 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>RetainClient.txt</filename>
            <type>text/plain</type>
            <size>10875</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NDc4NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE0LTEwLTE2ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoZXMgaW4gUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZSBkdWUgdG8g
dW5pbXBsZW1lbnRlZCByZXRhaW4vcmVsZWFzZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3Nzc5CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzE4Njc5
MzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZTo6cmV0YWluKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGU6OnJlbGVhc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5k
bGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6bWFrZUNvbm5lY3Rpb25DbGllbnQpOgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZS5oOgorICAgICAgICBJbXBsZW1lbnRlZCByZXRhaW4vcmVsZWFzZS4gVGhleSBhcmUgbmVj
ZXNzYXJ5LCBhcyBSZXNvdXJjZUhhbmRsZSBnb2VzIGF3YXkgd2hlbgorICAgICAgICBpdCdzIGNh
bmNlbGVkLCBhbmQgdGhlcmUgaXMgbm9vbmUgZWxzZSB0byBrZWVwIHRoZSBjbGllbnQgb2JqZWN0
IGFsaXZlIGJ1dAorICAgICAgICBDRlVSTENvbm5lY3Rpb24gaXRzZWxmLgorCisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
V2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxl
Q0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OndpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25R
dWV1ZTo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGlu
Zyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRGYWlsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OndpbGxD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZFJlY2VpdmVDaGFsbGVuZ2UpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdp
dGhPcGVyYXRpb25RdWV1ZTo6ZGlkU2VuZEJvZHlEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmNh
blJlc3BvbmRUb1Byb3RlY3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhh
bmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZl
RGF0YUFycmF5KToKKyAgICAgICAgQWRkZWQgYSBGSVhNRSBhYm91dCBwb3RlbnRpYWwgaW1wcm92
ZW1lbnRzIHRoYXQgSSBzcG90dGVkIHdoaWxlIGludnNlc3RpZ2F0aW5nIHRoaXMuCisKIDIwMTQt
MTAtMTUgIEFuZHJlaSBCdWN1ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgQVNTRVJU
SU9OICBGQUlMRUQgaW4gV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6Z2V0UmVnaW9uUmFuZ2VG
b3JCb3gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VI
YW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRl
bGVnYXRlLmNwcAkocmV2aXNpb24gMTc0NjU0KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNTYsNiArNTYsMTYgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29u
bmVjdGlvbkRlbGVnYQogICAgIG1faGFuZGxlID0gbnVsbHB0cjsKIH0KIAorY29uc3Qgdm9pZCog
UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmV0YWluKGNvbnN0IHZvaWQq
IGNsaWVudEluZm8pCit7CisgICAgc3RhdGljX2Nhc3Q8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZSo+KGNvbnN0X2Nhc3Q8dm9pZCo+KGNsaWVudEluZm8pKS0+cmVmKCk7Cit9
CisKK3ZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmVsZWFzZShj
b25zdCB2b2lkKiBjbGllbnRJbmZvKQoreworICAgIHN0YXRpY19jYXN0PFJlc291cmNlSGFuZGxl
Q0ZVUkxDb25uZWN0aW9uRGVsZWdhdGUqPihjb25zdF9jYXN0PHZvaWQqPihjbGllbnRJbmZvKSkt
PmRlcmVmKCk7Cit9CisKIENGVVJMUmVxdWVzdFJlZiBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVj
dGlvbkRlbGVnYXRlOjp3aWxsU2VuZFJlcXVlc3RDYWxsYmFjayhDRlVSTENvbm5lY3Rpb25SZWYs
IENGVVJMUmVxdWVzdFJlZiBjZlJlcXVlc3QsIENGVVJMUmVzcG9uc2VSZWYgb3JpZ2luYWxSZWRp
cmVjdFJlc3BvbnNlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIHJldHVybiBzdGF0
aWNfY2FzdDxSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlKj4oY29uc3RfY2Fz
dDx2b2lkKj4oY2xpZW50SW5mbykpLT53aWxsU2VuZFJlcXVlc3QoY2ZSZXF1ZXN0LCBvcmlnaW5h
bFJlZGlyZWN0UmVzcG9uc2UpOwpAQCAtMTczLDcgKzE4MywxMCBAQCBSZXNvdXJjZVJlcXVlc3Qg
UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lCiAKIENGVVJMQ29ubmVjdGlvbkNsaWVudF9WNiBSZXNv
dXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlOjptYWtlQ29ubmVjdGlvbkNsaWVudCgp
IGNvbnN0CiB7Ci0gICAgQ0ZVUkxDb25uZWN0aW9uQ2xpZW50X1Y2IGNsaWVudCA9IHsgNiwgdGhp
cywgMCwgMCwgMCwKKyAgICBDRlVSTENvbm5lY3Rpb25DbGllbnRfVjYgY2xpZW50ID0geyA2LCB0
aGlzLAorICAgICAgICAmUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmV0
YWluLAorICAgICAgICAmUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmVs
ZWFzZSwKKyAgICAgICAgMCwgLy8gY29weURlc2NyaXB0aW9uCiAgICAgICAgICZSZXNvdXJjZUhh
bmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlOjp3aWxsU2VuZFJlcXVlc3RDYWxsYmFjaywKICAg
ICAgICAgJlJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGU6OmRpZFJlY2VpdmVS
ZXNwb25zZUNhbGxiYWNrLAogICAgICAgICAmUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25E
ZWxlZ2F0ZTo6ZGlkUmVjZWl2ZURhdGFDYWxsYmFjaywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5oCShyZXZpc2lvbiAxNzQ2NTQpCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTksNiArNTksOCBAQCBwcm90ZWN0
ZWQ6CiAgICAgUmVzb3VyY2VSZXF1ZXN0IGNyZWF0ZVJlc291cmNlUmVxdWVzdChDRlVSTFJlcXVl
c3RSZWYsIENGVVJMUmVzcG9uc2VSZWYpOwogCiBwcml2YXRlOgorICAgIHN0YXRpYyBjb25zdCB2
b2lkKiByZXRhaW4oY29uc3Qgdm9pZCopOworICAgIHN0YXRpYyB2b2lkIHJlbGVhc2UoY29uc3Qg
dm9pZCopOwogICAgIHN0YXRpYyBDRlVSTFJlcXVlc3RSZWYgd2lsbFNlbmRSZXF1ZXN0Q2FsbGJh
Y2soQ0ZVUkxDb25uZWN0aW9uUmVmLCBDRlVSTFJlcXVlc3RSZWYsIENGVVJMUmVzcG9uc2VSZWYs
IGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZUNhbGxiYWNrKENGVVJMQ29ubmVjdGlvblJlZiwgQ0ZVUkxSZXNwb25zZVJlZiwgY29uc3Qg
dm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGFDYWxsYmFj
ayhDRlVSTENvbm5lY3Rpb25SZWYsIENGRGF0YVJlZiwgQ0ZJbmRleCBvcmlnaW5hbExlbmd0aCwg
Y29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0
aW9uUXVldWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25R
dWV1ZS5jcHAJKHJldmlzaW9uIDE3NDY1NCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRp
b25RdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw2ICsxMDEsOCBAQCBDRlVSTFJlcXVl
c3RSZWYgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lCiAKICAgICBBU1NFUlQoIWlzTWFpblRocmVh
ZCgpKTsKIAorICAgIC8vIEZJWE1FOiBUaGUgYmxvY2sgaW1wbGljaXRseSBjb3BpZXMgcHJvdGVj
dG9yIG9iamVjdCwgd2hpY2ggaXMgd2FzdGVmdWwuIFdlIHNob3VsZCBqdXN0IGNhbGwgcmVmKCks
CisgICAgLy8gY2FwdHVyZSAidGhpcyIgYnkgcG9pbnRlciB2YWx1ZSwgYW5kIHVzZSBhIEMrKyBs
YW1iZGEgdG8gcHJldmVudCBvdGhlciB1bmludGVudGlvbmFsIGNhcHR1cmluZy4KICAgICBSZWZQ
dHI8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1
ZT4gcHJvdGVjdG9yKHRoaXMpOwogCiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21h
aW5fcXVldWUoKSwgXnsKQEAgLTEyNSw2ICsxMjcsOCBAQCBDRlVSTFJlcXVlc3RSZWYgUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lCiAKIHZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25E
ZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKENGVVJMQ29ubmVj
dGlvblJlZiBjb25uZWN0aW9uLCBDRlVSTFJlc3BvbnNlUmVmIGNmUmVzcG9uc2UpCiB7CisgICAg
Ly8gRklYTUU6IFRoZSBibG9jayBpbXBsaWNpdGx5IGNvcGllcyBwcm90ZWN0b3Igb2JqZWN0LCB3
aGljaCBpcyB3YXN0ZWZ1bC4gV2Ugc2hvdWxkIGp1c3QgY2FsbCByZWYoKSwKKyAgICAvLyBjYXB0
dXJlICJ0aGlzIiBieSBwb2ludGVyIHZhbHVlLCBhbmQgdXNlIGEgQysrIGxhbWJkYSB0byBwcmV2
ZW50IG90aGVyIHVuaW50ZW50aW9uYWwgY2FwdHVyaW5nLgogICAgIFJlZlB0cjxSZXNvdXJjZUhh
bmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlPiBwcm90ZWN0b3Io
dGhpcyk7CiAKICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBe
ewpAQCAtMTYxLDYgKzE2NSw4IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25E
ZWxlZ2EKIAogdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9w
ZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZlRGF0YShDRkRhdGFSZWYgZGF0YSwgQ0ZJbmRleCBvcmln
aW5hbExlbmd0aCkKIHsKKyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkgY29waWVz
IHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVzdCBjYWxs
IHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2Ug
YSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJpbmcuCiAg
ICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0
aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAgICBDRlJldGFpbihkYXRhKTsKIApAQCAtMTc3
LDYgKzE4Myw4IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2EKIAog
dm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1
ZXVlOjpkaWRGaW5pc2hMb2FkaW5nKCkKIHsKKyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxp
Y2l0bHkgY29waWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91
bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFs
dWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBj
YXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdh
dGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAgICBkaXNwYXRjaF9hc3lu
YyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeewogICAgICAgICBpZiAoIXByb3RlY3Rvci0+
aGFzSGFuZGxlKCkpCkBAIC0xOTAsNiArMTk4LDggQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJM
Q29ubmVjdGlvbkRlbGVnYQogCiB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVs
ZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZhaWwoQ0ZFcnJvclJlZiBlcnJvcikKIHsKKyAg
ICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkgY29waWVzIHByb3RlY3RvciBvYmplY3Qs
IHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNh
cHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHBy
ZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rv
cih0aGlzKTsKICAgICBDRlJldGFpbihlcnJvcik7CiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0
Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKQEAgLTIwNSw2ICsyMTUsOCBAQCB2b2lkIFJlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhCiAKIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgUmVz
b3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6d2ls
bENhY2hlUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkKIHsK
KyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkgY29waWVzIHByb3RlY3RvciBvYmpl
Y3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8v
IGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRv
IHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291
cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3Rl
Y3Rvcih0aGlzKTsKIAogICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVl
KCksIF57CkBAIC0yMjMsNiArMjM1LDggQEAgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBSZXNvdXJj
ZUhhbmRsZUNGVQogCiB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVX
aXRoT3BlcmF0aW9uUXVldWU6OmRpZFJlY2VpdmVDaGFsbGVuZ2UoQ0ZVUkxBdXRoQ2hhbGxlbmdl
UmVmIGNoYWxsZW5nZSkKIHsKKyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkgY29w
aWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVzdCBj
YWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1
c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJpbmcu
CiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3Bl
cmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAgICBDRlJldGFpbihjaGFsbGVuZ2UpOwog
ICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CkBAIC0yMzgs
NiArMjUyLDggQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYQogCiB2
b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVl
dWU6OmRpZFNlbmRCb2R5RGF0YShDRkluZGV4IHRvdGFsQnl0ZXNXcml0dGVuLCBDRkluZGV4IHRv
dGFsQnl0ZXNFeHBlY3RlZFRvV3JpdGUpCiB7CisgICAgLy8gRklYTUU6IFRoZSBibG9jayBpbXBs
aWNpdGx5IGNvcGllcyBwcm90ZWN0b3Igb2JqZWN0LCB3aGljaCBpcyB3YXN0ZWZ1bC4gV2Ugc2hv
dWxkIGp1c3QgY2FsbCByZWYoKSwKKyAgICAvLyBjYXB0dXJlICJ0aGlzIiBieSBwb2ludGVyIHZh
bHVlLCBhbmQgdXNlIGEgQysrIGxhbWJkYSB0byBwcmV2ZW50IG90aGVyIHVuaW50ZW50aW9uYWwg
Y2FwdHVyaW5nLgogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlPiBwcm90ZWN0b3IodGhpcyk7CiAgICAgZGlzcGF0Y2hfYXN5
bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKICAgICAgICAgaWYgKCFwcm90ZWN0b3It
Pmhhc0hhbmRsZSgpKQpAQCAtMjU3LDYgKzI3Myw4IEBAIEJvb2xlYW4gUmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWwKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNL
KQogQm9vbGVhbiBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJh
dGlvblF1ZXVlOjpjYW5SZXNwb25kVG9Qcm90ZWN0aW9uU3BhY2UoQ0ZVUkxQcm90ZWN0aW9uU3Bh
Y2VSZWYgcHJvdGVjdGlvblNwYWNlKQogeworICAgIC8vIEZJWE1FOiBUaGUgYmxvY2sgaW1wbGlj
aXRseSBjb3BpZXMgcHJvdGVjdG9yIG9iamVjdCwgd2hpY2ggaXMgd2FzdGVmdWwuIFdlIHNob3Vs
ZCBqdXN0IGNhbGwgcmVmKCksCisgICAgLy8gY2FwdHVyZSAidGhpcyIgYnkgcG9pbnRlciB2YWx1
ZSwgYW5kIHVzZSBhIEMrKyBsYW1iZGEgdG8gcHJldmVudCBvdGhlciB1bmludGVudGlvbmFsIGNh
cHR1cmluZy4KICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0
ZVdpdGhPcGVyYXRpb25RdWV1ZT4gcHJvdGVjdG9yKHRoaXMpOwogCiAgICAgZGlzcGF0Y2hfYXN5
bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKQEAgLTI4NSw2ICszMDMsOCBAQCBCb29s
ZWFuIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsCiAjaWYgVVNFKE5FVFdPUktfQ0ZE
QVRBX0FSUkFZX0NBTExCQUNLKQogdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRl
bGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZlRGF0YUFycmF5KENGQXJyYXlSZWYg
ZGF0YUFycmF5KQogeworICAgIC8vIEZJWE1FOiBUaGUgYmxvY2sgaW1wbGljaXRseSBjb3BpZXMg
cHJvdGVjdG9yIG9iamVjdCwgd2hpY2ggaXMgd2FzdGVmdWwuIFdlIHNob3VsZCBqdXN0IGNhbGwg
cmVmKCksCisgICAgLy8gY2FwdHVyZSAidGhpcyIgYnkgcG9pbnRlciB2YWx1ZSwgYW5kIHVzZSBh
IEMrKyBsYW1iZGEgdG8gcHJldmVudCBvdGhlciB1bmludGVudGlvbmFsIGNhcHR1cmluZy4KICAg
ICBSZWZQdHI8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRp
b25RdWV1ZT4gcHJvdGVjdG9yKHRoaXMpOwogICAgIENGUmV0YWluKGRhdGFBcnJheSk7CiAgICAg
ZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239957</attachid>
            <date>2014-10-16 12:19:27 -0700</date>
            <delta_ts>2014-10-16 12:36:49 -0700</delta_ts>
            <desc>with a build fix</desc>
            <filename>RetainClient.txt</filename>
            <type>text/plain</type>
            <size>10899</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NDc4NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE0LTEwLTE2ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoZXMgaW4gUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZSBkdWUgdG8g
dW5pbXBsZW1lbnRlZCByZXRhaW4vcmVsZWFzZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3Nzc5CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzE4Njc5
MzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZTo6cmV0YWluKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGU6OnJlbGVhc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5k
bGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6bWFrZUNvbm5lY3Rpb25DbGllbnQpOgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZS5oOgorICAgICAgICBJbXBsZW1lbnRlZCByZXRhaW4vcmVsZWFzZS4gVGhleSBhcmUgbmVj
ZXNzYXJ5LCBhcyBSZXNvdXJjZUhhbmRsZSBnb2VzIGF3YXkgd2hlbgorICAgICAgICBpdCdzIGNh
bmNlbGVkLCBhbmQgdGhlcmUgaXMgbm9vbmUgZWxzZSB0byBrZWVwIHRoZSBjbGllbnQgb2JqZWN0
IGFsaXZlIGJ1dAorICAgICAgICBDRlVSTENvbm5lY3Rpb24gaXRzZWxmLgorCisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
V2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxl
Q0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OndpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25R
dWV1ZTo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGlu
Zyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRGYWlsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OndpbGxD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZFJlY2VpdmVDaGFsbGVuZ2UpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdp
dGhPcGVyYXRpb25RdWV1ZTo6ZGlkU2VuZEJvZHlEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmNh
blJlc3BvbmRUb1Byb3RlY3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhh
bmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZl
RGF0YUFycmF5KToKKyAgICAgICAgQWRkZWQgYSBGSVhNRSBhYm91dCBwb3RlbnRpYWwgaW1wcm92
ZW1lbnRzIHRoYXQgSSBzcG90dGVkIHdoaWxlIGludnNlc3RpZ2F0aW5nIHRoaXMuCisKIDIwMTQt
MTAtMTUgIEFuZHJlaSBCdWN1ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgQVNTRVJU
SU9OICBGQUlMRUQgaW4gV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6Z2V0UmVnaW9uUmFuZ2VG
b3JCb3gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VI
YW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRl
bGVnYXRlLmNwcAkocmV2aXNpb24gMTc0Nzg1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNTYsNiArNTYsMTcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29u
bmVjdGlvbkRlbGVnYQogICAgIG1faGFuZGxlID0gbnVsbHB0cjsKIH0KIAorY29uc3Qgdm9pZCog
UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmV0YWluKGNvbnN0IHZvaWQq
IGNsaWVudEluZm8pCit7CisgICAgc3RhdGljX2Nhc3Q8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZSo+KGNvbnN0X2Nhc3Q8dm9pZCo+KGNsaWVudEluZm8pKS0+cmVmKCk7Cisg
ICAgcmV0dXJuIGNsaWVudEluZm87Cit9CisKK3ZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZTo6cmVsZWFzZShjb25zdCB2b2lkKiBjbGllbnRJbmZvKQoreworICAgIHN0
YXRpY19jYXN0PFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGUqPihjb25zdF9j
YXN0PHZvaWQqPihjbGllbnRJbmZvKSktPmRlcmVmKCk7Cit9CisKIENGVVJMUmVxdWVzdFJlZiBS
ZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlOjp3aWxsU2VuZFJlcXVlc3RDYWxs
YmFjayhDRlVSTENvbm5lY3Rpb25SZWYsIENGVVJMUmVxdWVzdFJlZiBjZlJlcXVlc3QsIENGVVJM
UmVzcG9uc2VSZWYgb3JpZ2luYWxSZWRpcmVjdFJlc3BvbnNlLCBjb25zdCB2b2lkKiBjbGllbnRJ
bmZvKQogewogICAgIHJldHVybiBzdGF0aWNfY2FzdDxSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVj
dGlvbkRlbGVnYXRlKj4oY29uc3RfY2FzdDx2b2lkKj4oY2xpZW50SW5mbykpLT53aWxsU2VuZFJl
cXVlc3QoY2ZSZXF1ZXN0LCBvcmlnaW5hbFJlZGlyZWN0UmVzcG9uc2UpOwpAQCAtMTczLDcgKzE4
NCwxMCBAQCBSZXNvdXJjZVJlcXVlc3QgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lCiAKIENGVVJM
Q29ubmVjdGlvbkNsaWVudF9WNiBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
OjptYWtlQ29ubmVjdGlvbkNsaWVudCgpIGNvbnN0CiB7Ci0gICAgQ0ZVUkxDb25uZWN0aW9uQ2xp
ZW50X1Y2IGNsaWVudCA9IHsgNiwgdGhpcywgMCwgMCwgMCwKKyAgICBDRlVSTENvbm5lY3Rpb25D
bGllbnRfVjYgY2xpZW50ID0geyA2LCB0aGlzLAorICAgICAgICAmUmVzb3VyY2VIYW5kbGVDRlVS
TENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmV0YWluLAorICAgICAgICAmUmVzb3VyY2VIYW5kbGVDRlVS
TENvbm5lY3Rpb25EZWxlZ2F0ZTo6cmVsZWFzZSwKKyAgICAgICAgMCwgLy8gY29weURlc2NyaXB0
aW9uCiAgICAgICAgICZSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlOjp3aWxs
U2VuZFJlcXVlc3RDYWxsYmFjaywKICAgICAgICAgJlJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0
aW9uRGVsZWdhdGU6OmRpZFJlY2VpdmVSZXNwb25zZUNhbGxiYWNrLAogICAgICAgICAmUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZTo6ZGlkUmVjZWl2ZURhdGFDYWxsYmFjaywK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZS5o
CShyZXZpc2lvbiAxNzQ3ODUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2Nm
L1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGUuaAkod29ya2luZyBjb3B5KQpA
QCAtNTksNiArNTksOCBAQCBwcm90ZWN0ZWQ6CiAgICAgUmVzb3VyY2VSZXF1ZXN0IGNyZWF0ZVJl
c291cmNlUmVxdWVzdChDRlVSTFJlcXVlc3RSZWYsIENGVVJMUmVzcG9uc2VSZWYpOwogCiBwcml2
YXRlOgorICAgIHN0YXRpYyBjb25zdCB2b2lkKiByZXRhaW4oY29uc3Qgdm9pZCopOworICAgIHN0
YXRpYyB2b2lkIHJlbGVhc2UoY29uc3Qgdm9pZCopOwogICAgIHN0YXRpYyBDRlVSTFJlcXVlc3RS
ZWYgd2lsbFNlbmRSZXF1ZXN0Q2FsbGJhY2soQ0ZVUkxDb25uZWN0aW9uUmVmLCBDRlVSTFJlcXVl
c3RSZWYsIENGVVJMUmVzcG9uc2VSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogICAgIHN0
YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUNhbGxiYWNrKENGVVJMQ29ubmVjdGlvblJlZiwg
Q0ZVUkxSZXNwb25zZVJlZiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZv
aWQgZGlkUmVjZWl2ZURhdGFDYWxsYmFjayhDRlVSTENvbm5lY3Rpb25SZWYsIENGRGF0YVJlZiwg
Q0ZJbmRleCBvcmlnaW5hbExlbmd0aCwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rp
b25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAJKHJldmlzaW9uIDE3NDc4NSkKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEw
MSw2ICsxMDEsOCBAQCBDRlVSTFJlcXVlc3RSZWYgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lCiAK
ICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKIAorICAgIC8vIEZJWE1FOiBUaGUgYmxvY2sg
aW1wbGljaXRseSBjb3BpZXMgcHJvdGVjdG9yIG9iamVjdCwgd2hpY2ggaXMgd2FzdGVmdWwuIFdl
IHNob3VsZCBqdXN0IGNhbGwgcmVmKCksCisgICAgLy8gY2FwdHVyZSAidGhpcyIgYnkgcG9pbnRl
ciB2YWx1ZSwgYW5kIHVzZSBhIEMrKyBsYW1iZGEgdG8gcHJldmVudCBvdGhlciB1bmludGVudGlv
bmFsIGNhcHR1cmluZy4KICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25E
ZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZT4gcHJvdGVjdG9yKHRoaXMpOwogCiAgICAgZGlzcGF0
Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKQEAgLTEyNSw2ICsxMjcsOCBA
QCBDRlVSTFJlcXVlc3RSZWYgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lCiAKIHZvaWQgUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKENGVVJMQ29ubmVjdGlvblJlZiBjb25uZWN0aW9uLCBDRlVSTFJlc3BvbnNl
UmVmIGNmUmVzcG9uc2UpCiB7CisgICAgLy8gRklYTUU6IFRoZSBibG9jayBpbXBsaWNpdGx5IGNv
cGllcyBwcm90ZWN0b3Igb2JqZWN0LCB3aGljaCBpcyB3YXN0ZWZ1bC4gV2Ugc2hvdWxkIGp1c3Qg
Y2FsbCByZWYoKSwKKyAgICAvLyBjYXB0dXJlICJ0aGlzIiBieSBwb2ludGVyIHZhbHVlLCBhbmQg
dXNlIGEgQysrIGxhbWJkYSB0byBwcmV2ZW50IG90aGVyIHVuaW50ZW50aW9uYWwgY2FwdHVyaW5n
LgogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9w
ZXJhdGlvblF1ZXVlPiBwcm90ZWN0b3IodGhpcyk7CiAKICAgICBkaXNwYXRjaF9hc3luYyhkaXNw
YXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeewpAQCAtMTYxLDYgKzE2NSw4IEBAIHZvaWQgUmVzb3Vy
Y2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2EKIAogdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJM
Q29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNlaXZlRGF0YShDRkRh
dGFSZWYgZGF0YSwgQ0ZJbmRleCBvcmlnaW5hbExlbmd0aCkKIHsKKyAgICAvLyBGSVhNRTogVGhl
IGJsb2NrIGltcGxpY2l0bHkgY29waWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3Rl
ZnVsLiBXZSBzaG91bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5
IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5p
bnRlbnRpb25hbCBjYXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25u
ZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAgICBD
RlJldGFpbihkYXRhKTsKIApAQCAtMTc3LDYgKzE4Myw4IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWxlZ2EKIAogdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlv
bkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRGaW5pc2hMb2FkaW5nKCkKIHsKKyAgICAv
LyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkgY29waWVzIHByb3RlY3RvciBvYmplY3QsIHdo
aWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1
cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZl
bnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFu
ZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0
aGlzKTsKICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeewog
ICAgICAgICBpZiAoIXByb3RlY3Rvci0+aGFzSGFuZGxlKCkpCkBAIC0xOTAsNiArMTk4LDggQEAg
dm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYQogCiB2b2lkIFJlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZhaWwo
Q0ZFcnJvclJlZiBlcnJvcikKIHsKKyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0bHkg
Y29waWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQganVz
dCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUsIGFu
ZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0dXJp
bmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAgICBDRlJldGFpbihlcnJvcik7CiAg
ICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKQEAgLTIwNSw2
ICsyMTUsOCBAQCB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhCiAKIENG
Q2FjaGVkVVJMUmVzcG9uc2VSZWYgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0
ZVdpdGhPcGVyYXRpb25RdWV1ZTo6d2lsbENhY2hlUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25z
ZVJlZiBjYWNoZWRSZXNwb25zZSkKIHsKKyAgICAvLyBGSVhNRTogVGhlIGJsb2NrIGltcGxpY2l0
bHkgY29waWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdhc3RlZnVsLiBXZSBzaG91bGQg
anVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMiIGJ5IHBvaW50ZXIgdmFsdWUs
IGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIgdW5pbnRlbnRpb25hbCBjYXB0
dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVX
aXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKIAogICAgIGRpc3BhdGNoX2FzeW5j
KGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CkBAIC0yMjMsNiArMjM1LDggQEAgQ0ZDYWNo
ZWRVUkxSZXNwb25zZVJlZiBSZXNvdXJjZUhhbmRsZUNGVQogCiB2b2lkIFJlc291cmNlSGFuZGxl
Q0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZFJlY2VpdmVDaGFs
bGVuZ2UoQ0ZVUkxBdXRoQ2hhbGxlbmdlUmVmIGNoYWxsZW5nZSkKIHsKKyAgICAvLyBGSVhNRTog
VGhlIGJsb2NrIGltcGxpY2l0bHkgY29waWVzIHByb3RlY3RvciBvYmplY3QsIHdoaWNoIGlzIHdh
c3RlZnVsLiBXZSBzaG91bGQganVzdCBjYWxsIHJlZigpLAorICAgIC8vIGNhcHR1cmUgInRoaXMi
IGJ5IHBvaW50ZXIgdmFsdWUsIGFuZCB1c2UgYSBDKysgbGFtYmRhIHRvIHByZXZlbnQgb3RoZXIg
dW5pbnRlbnRpb25hbCBjYXB0dXJpbmcuCiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlQ0ZVUkxD
b25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU+IHByb3RlY3Rvcih0aGlzKTsKICAg
ICBDRlJldGFpbihjaGFsbGVuZ2UpOwogICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9t
YWluX3F1ZXVlKCksIF57CkBAIC0yMzgsNiArMjUyLDggQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNG
VVJMQ29ubmVjdGlvbkRlbGVnYQogCiB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9u
RGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZFNlbmRCb2R5RGF0YShDRkluZGV4IHRvdGFs
Qnl0ZXNXcml0dGVuLCBDRkluZGV4IHRvdGFsQnl0ZXNFeHBlY3RlZFRvV3JpdGUpCiB7CisgICAg
Ly8gRklYTUU6IFRoZSBibG9jayBpbXBsaWNpdGx5IGNvcGllcyBwcm90ZWN0b3Igb2JqZWN0LCB3
aGljaCBpcyB3YXN0ZWZ1bC4gV2Ugc2hvdWxkIGp1c3QgY2FsbCByZWYoKSwKKyAgICAvLyBjYXB0
dXJlICJ0aGlzIiBieSBwb2ludGVyIHZhbHVlLCBhbmQgdXNlIGEgQysrIGxhbWJkYSB0byBwcmV2
ZW50IG90aGVyIHVuaW50ZW50aW9uYWwgY2FwdHVyaW5nLgogICAgIFJlZlB0cjxSZXNvdXJjZUhh
bmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlPiBwcm90ZWN0b3Io
dGhpcyk7CiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsK
ICAgICAgICAgaWYgKCFwcm90ZWN0b3ItPmhhc0hhbmRsZSgpKQpAQCAtMjU3LDYgKzI3Myw4IEBA
IEJvb2xlYW4gUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWwKICNpZiBVU0UoUFJPVEVD
VElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQogQm9vbGVhbiBSZXNvdXJjZUhhbmRsZUNGVVJMQ29u
bmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpjYW5SZXNwb25kVG9Qcm90ZWN0aW9u
U3BhY2UoQ0ZVUkxQcm90ZWN0aW9uU3BhY2VSZWYgcHJvdGVjdGlvblNwYWNlKQogeworICAgIC8v
IEZJWE1FOiBUaGUgYmxvY2sgaW1wbGljaXRseSBjb3BpZXMgcHJvdGVjdG9yIG9iamVjdCwgd2hp
Y2ggaXMgd2FzdGVmdWwuIFdlIHNob3VsZCBqdXN0IGNhbGwgcmVmKCksCisgICAgLy8gY2FwdHVy
ZSAidGhpcyIgYnkgcG9pbnRlciB2YWx1ZSwgYW5kIHVzZSBhIEMrKyBsYW1iZGEgdG8gcHJldmVu
dCBvdGhlciB1bmludGVudGlvbmFsIGNhcHR1cmluZy4KICAgICBSZWZQdHI8UmVzb3VyY2VIYW5k
bGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZT4gcHJvdGVjdG9yKHRo
aXMpOwogCiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsK
QEAgLTI4NSw2ICszMDMsOCBAQCBCb29sZWFuIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9u
RGVsCiAjaWYgVVNFKE5FVFdPUktfQ0ZEQVRBX0FSUkFZX0NBTExCQUNLKQogdm9pZCBSZXNvdXJj
ZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRSZWNl
aXZlRGF0YUFycmF5KENGQXJyYXlSZWYgZGF0YUFycmF5KQogeworICAgIC8vIEZJWE1FOiBUaGUg
YmxvY2sgaW1wbGljaXRseSBjb3BpZXMgcHJvdGVjdG9yIG9iamVjdCwgd2hpY2ggaXMgd2FzdGVm
dWwuIFdlIHNob3VsZCBqdXN0IGNhbGwgcmVmKCksCisgICAgLy8gY2FwdHVyZSAidGhpcyIgYnkg
cG9pbnRlciB2YWx1ZSwgYW5kIHVzZSBhIEMrKyBsYW1iZGEgdG8gcHJldmVudCBvdGhlciB1bmlu
dGVudGlvbmFsIGNhcHR1cmluZy4KICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZT4gcHJvdGVjdG9yKHRoaXMpOwogICAgIENG
UmV0YWluKGRhdGFBcnJheSk7CiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5f
cXVldWUoKSwgXnsK
</data>
<flag name="review"
          id="264707"
          type_id="1"
          status="+"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>