<?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>169906</bug_id>
          
          <creation_ts>2017-03-20 21:02:05 -0700</creation_ts>
          <short_desc>Resource Load Statistics: Fix partitioning bug for client-side cookie access</short_desc>
          <delta_ts>2017-03-22 12:43:32 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="John Wilander">wilander</reporter>
          <assigned_to name="John Wilander">wilander</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1289705</commentid>
    <comment_count>0</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-20 21:02:05 -0700</bug_when>
    <thetext>The partitioning list should be checked for client-side cookie access.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289706</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-03-20 21:03:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/31164456&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289710</commentid>
    <comment_count>2</comment_count>
      <attachid>304988</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-20 21:16:15 -0700</bug_when>
    <thetext>Created attachment 304988
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289711</commentid>
    <comment_count>3</comment_count>
      <attachid>304989</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-20 21:31:04 -0700</bug_when>
    <thetext>Created attachment 304989
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289713</commentid>
    <comment_count>4</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-20 21:50:36 -0700</bug_when>
    <thetext>I realized I can simplify this and make it more efficient. In essence, fold these two code paths into one which would have avoided the bug from the beginning. New patch coming up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289714</commentid>
    <comment_count>5</comment_count>
      <attachid>304990</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-20 22:26:31 -0700</bug_when>
    <thetext>Created attachment 304990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289789</commentid>
    <comment_count>6</comment_count>
      <attachid>304990</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2017-03-21 09:06:16 -0700</bug_when>
    <thetext>Comment on attachment 304990
Patch

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

Looks good -- please have Alex give final review.

&gt; Source/WebCore/platform/network/cf/NetworkStorageSessionCFNet.cpp:120
&gt; +    auto domain = url.host();

Delete this line.

&gt; Source/WebCore/platform/network/cf/NetworkStorageSessionCFNet.cpp:122
&gt; +    domain = topPrivatelyControlledDomain(domain);

Make this &quot;auto domain = top....&quot;

&gt; Source/WebCore/platform/network/cf/NetworkStorageSessionCFNet.cpp:124
&gt; +        domain = url.host();

#else
    auto domain = url.host();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289879</commentid>
    <comment_count>7</comment_count>
      <attachid>304990</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-03-21 16:09:03 -0700</bug_when>
    <thetext>Comment on attachment 304990
Patch

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

&gt; Source/WebKit2/ChangeLog:17
&gt; +2017-03-20  John Wilander  &lt;wilander@apple.com&gt;

This has two ChangeLog entries.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289895</commentid>
    <comment_count>8</comment_count>
      <attachid>305050</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-21 16:45:19 -0700</bug_when>
    <thetext>Created attachment 305050
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289897</commentid>
    <comment_count>9</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-21 16:47:00 -0700</bug_when>
    <thetext>Thanks for the review comments, Brent and Alex! I&apos;ll just let the patch go through an EWS build and then put it on the commit queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289900</commentid>
    <comment_count>10</comment_count>
      <attachid>305050</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-21 16:50:05 -0700</bug_when>
    <thetext>Comment on attachment 305050
Patch

Adding to commit queue. Don&apos;t know what&apos;s up with EWS but the analysis seems to have been dropped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290132</commentid>
    <comment_count>11</comment_count>
      <attachid>305050</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-22 11:12:05 -0700</bug_when>
    <thetext>Comment on attachment 305050
Patch

Rejecting attachment 305050 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 305050, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
a9396d15124a3b355073e9b2cac25b706b5
r214262 = dd961cd4754677276d05cbdf98f7c6a25cc89142
r214263 = 86e77173f6c6125d25b9b58efb5a2f507881bd43
r214264 = 4011743cf6bfcc8528801fa32ec45fc9d20e3f64
r214265 = 00cf9f48b91a26af60292ed1cd25efb2864f3664
r214266 = 756915c25fcb57ddb4b94b8c936ebb0dface6d93
Done rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc
First, rewinding head to replay your work on top of it...
Fast-forwarded master to refs/remotes/origin/master.

Full output: http://webkit-queues.webkit.org/results/3388543</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290139</commentid>
    <comment_count>12</comment_count>
      <attachid>305113</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-22 11:32:33 -0700</bug_when>
    <thetext>Created attachment 305113
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290140</commentid>
    <comment_count>13</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2017-03-22 11:33:31 -0700</bug_when>
    <thetext>Let&apos;s see if EWS is in a better mood today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290162</commentid>
    <comment_count>14</comment_count>
      <attachid>305113</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-22 12:43:28 -0700</bug_when>
    <thetext>Comment on attachment 305113
Patch

Clearing flags on attachment: 305113

Committed r214270: &lt;http://trac.webkit.org/changeset/214270&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290163</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-22 12:43:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>304988</attachid>
            <date>2017-03-20 21:16:15 -0700</date>
            <delta_ts>2017-03-20 21:30:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169906-20170320211614.patch</filename>
            <type>text/plain</type>
            <size>11213</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDE3LTAzLTIwICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nl
c3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkw
NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGV4aXN0aW5nIHRlc3QgY2FzZSB3YXMg
ZXhwYW5kZWQgdG8gY292ZXIgdGhpcyBjaGFuZ2UuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oOgorICAgICAgICAgICAgTW92ZWQgdGhlIHR3byBj
b29raWVTdG9yYWdlUGFydGl0aW9uKCkgZnVuY3Rpb25zIGludG8gdGhlIGNsYXNzLgorICAgICAg
ICAgICAgQWxzbyBkZWNsYXJlZCB0aGVtIGNvbnN0LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKToKKyAgICAgICAg
ICAgIE5vdyBjaGVja3Mgd2hldGhlciBpdCBzaG91bGQgcGFydGl0aW9uIG9yIG5vdC4KKyAgICAg
ICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9uQ29va2ll
c0Zvckhvc3QpOgorICAgICAgICAgICAgQWRkZWQgYSBjaGVjayBmb3IgRU5BQkxFKFBVQkxJQ19T
VUZGSVhfTElTVCkuCisgICAgICAgIChXZWJDb3JlOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKTog
RGVsZXRlZC4KKyAgICAgICAgICAgIFRoaXMgbW92ZWQgaW50byBOZXR3b3JrU3RvcmFnZVNlc3Np
b24uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6Y29va2llc0luUGFydGl0aW9uRm9yVVJMKToKKyAgICAgICAgICAgIE5v
dyBjYWxscyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0
aXRpb24oKS4KKyAgICAgICAgKFdlYkNvcmU6OnNldENvb2tpZXNGcm9tRE9NKToKKyAgICAgICAg
ICAgIE5vdyBjYWxscyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3Jh
Z2VQYXJ0aXRpb24oKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhh
bmRsZU1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpjcmVhdGVOU1VS
TENvbm5lY3Rpb24pOgorICAgICAgICAgICAgTm93IGNhbGxzIFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbigpLgorCiAyMDE3LTAzLTE3ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYSByZWxvYWQgcG9s
aWN5IHdoZXJlIG9ubHkgZXhwaXJlZCBzdWJyZXNvdXJjZXMgYXJlIHJldmFsaWRhdGVkCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0
b3JhZ2VTZXNzaW9uLmgJKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTc5
LDYgKzc5LDggQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDRkhUVFBD
b29raWVTdG9yYWdlUmVmPiBjb29raWVTdG9yYWdlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBP
UlQgc3RhdGljIHZvaWQgc2V0Q29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQoYm9vbCk7
CiAjaWYgSEFWRShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCisgICAgV0VCQ09SRV9F
WFBPUlQgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JikgY29uc3Q7CisgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgVVJMJiBm
aXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSkgY29uc3Q7CiAgICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdChjb25zdCBTdHJp
bmcmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFNob3VsZFBhcnRpdGlvbkNvb2tpZXNG
b3JIb3N0cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkKTsKICNlbmRpZgpAQCAtMTMzLDcgKzEzNSw0IEBAIHBy
aXZhdGU6CiAjZW5kaWYKIH07CiAKLVdFQkNPUkVfRVhQT1JUIFN0cmluZyBjb29raWVTdG9yYWdl
UGFydGl0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwotU3RyaW5nIGNvb2tpZVN0b3JhZ2VQ
YXJ0aXRpb24oY29uc3QgVVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNv
dXJjZSk7Ci0KIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0
d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCShyZXZp
c2lvbiAyMTQxMTMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL05ldHdv
cmtTdG9yYWdlU2Vzc2lvbkNGTmV0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTEwLDcgKzExMCw3
IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzZXRDb29raWVTdG8KIAogI2lmIFBMQVRG
T1JNKENPQ09BKQogCi1TdHJpbmcgY29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QpCitTdHJpbmcgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVT
dG9yYWdlUGFydGl0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkgY29uc3QKIHsK
ICAgICByZXR1cm4gY29va2llU3RvcmFnZVBhcnRpdGlvbihyZXF1ZXN0LmZpcnN0UGFydHlGb3JD
b29raWVzKCksIHJlcXVlc3QudXJsKCkpOwogfQpAQCAtMTI1LDkgKzEyNSwxOCBAQCBzdGF0aWMg
aW5saW5lIGJvb2wgaG9zdElzSW5Eb21haW4oU3RyaW5nCiAgICAgcmV0dXJuIHN1ZmZpeE9mZnNl
dCA9PSAwIHx8IGhvc3Rbc3VmZml4T2Zmc2V0IC0gMV0gPT0gJy4nOwogfQogCi1TdHJpbmcgY29v
a2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBVUkwmIGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25z
dCBVUkwmIHJlc291cmNlKQorU3RyaW5nIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3Rv
cmFnZVBhcnRpdGlvbihjb25zdCBVUkwmIGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwm
IHJlc291cmNlKSBjb25zdAogewotICAgIGlmICghY29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0Vu
YWJsZWQpCisgICAgYXV0byBkb21haW4gPSByZXNvdXJjZS5ob3N0KCk7CisjaWYgRU5BQkxFKFBV
QkxJQ19TVUZGSVhfTElTVCkKKyAgICBkb21haW4gPSB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9t
YWluKGRvbWFpbik7CisgICAgaWYgKGRvbWFpbi5pc0VtcHR5KCkpCisgICAgICAgIGRvbWFpbiA9
IHJlc291cmNlLmhvc3QoKTsKKyNlbmRpZgorCisgICAgaWYgKCFjb29raWVTdG9yYWdlUGFydGl0
aW9uaW5nRW5hYmxlZAorICAgICAgICB8fCBkb21haW4uaXNFbXB0eSgpCisgICAgICAgIHx8ICFt
X3RvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW5zRm9yQ29va2llUGFydGl0aW9uaW5nLmNvbnRh
aW5zKGRvbWFpbikpCiAgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogCiAgICAgU3RyaW5n
IGZpcnN0UGFydHlEb21haW4gPSBmaXJzdFBhcnR5Rm9yQ29va2llcy5ob3N0KCk7CkBAIC0xNDcs
OSArMTU2LDEzIEBAIGJvb2wgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXQKICAg
ICBpZiAoaG9zdC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorI2lmIEVOQUJM
RShQVUJMSUNfU1VGRklYX0xJU1QpCiAgICAgYXV0byBkb21haW4gPSB0b3BQcml2YXRlbHlDb250
cm9sbGVkRG9tYWluKGhvc3QpOwogICAgIGlmIChkb21haW4uaXNFbXB0eSgpKQogICAgICAgICBk
b21haW4gPSBob3N0OworI2Vsc2UKKyAgICBhdXRvIGRvbWFpbiA9IGhvc3Q7CisjZW5kaWYKIAog
ICAgIHJldHVybiBtX3RvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW5zRm9yQ29va2llUGFydGl0
aW9uaW5nLmNvbnRhaW5zKGRvbWFpbik7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL21hYy9Db29raWVKYXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tCShyZXZpc2lvbiAyMTQxMTMp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9Db29raWVKYXJNYWMubW0J
KHdvcmtpbmcgY29weSkKQEAgLTk4LDcgKzk4LDcgQEAgc3RhdGljIE5TQXJyYXkgKmFwcGx5UGFy
dGl0aW9uVG9Db29raWVzKAogCiBzdGF0aWMgTlNBcnJheSAqY29va2llc0luUGFydGl0aW9uRm9y
VVJMKGNvbnN0IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJz
dFBhcnR5LCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICBTdHJpbmcgcGFydGl0aW9uID0gY29va2ll
U3RvcmFnZVBhcnRpdGlvbihmaXJzdFBhcnR5LCB1cmwpOworICAgIFN0cmluZyBwYXJ0aXRpb24g
PSBzZXNzaW9uLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKICAgICBp
ZiAocGFydGl0aW9uLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIG5pbDsKIApAQCAtMTk3LDcg
KzE5Nyw3IEBAIHZvaWQgc2V0Q29va2llc0Zyb21ET00oY29uc3QgTmV0d29ya1N0b3IKICAgICBB
U1NFUlQoW2ZpbHRlcmVkQ29va2llcy5nZXQoKSBjb3VudF0gPD0gMSk7CiAKICNpZiBIQVZFKENG
TkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklORykKLSAgICBTdHJpbmcgcGFydGl0aW9uID0gY29v
a2llU3RvcmFnZVBhcnRpdGlvbihmaXJzdFBhcnR5LCB1cmwpOworICAgIFN0cmluZyBwYXJ0aXRp
b24gPSBzZXNzaW9uLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKICAg
ICBpZiAoIXBhcnRpdGlvbi5pc0VtcHR5KCkpCiAgICAgICAgIGZpbHRlcmVkQ29va2llcyA9IGFw
cGx5UGFydGl0aW9uVG9Db29raWVzKHBhcnRpdGlvbiwgZmlsdGVyZWRDb29raWVzLmdldCgpKTsK
ICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3Vy
Y2VIYW5kbGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW0JKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZTo6Y3JlYXRl
TlNVUkxDb25uZWN0aQogICAgIH0KIAogI2lmIEhBVkUoQ0ZORVRXT1JLX1NUT1JBR0VfUEFSVElU
SU9OSU5HKQotICAgIFN0cmluZyBzdG9yYWdlUGFydGl0aW9uID0gY29va2llU3RvcmFnZVBhcnRp
dGlvbihmaXJzdFJlcXVlc3QoKSk7CisgICAgU3RyaW5nIHN0b3JhZ2VQYXJ0aXRpb24gPSBkLT5t
X2NvbnRleHQtPnN0b3JhZ2VTZXNzaW9uKCkuY29va2llU3RvcmFnZVBhcnRpdGlvbihmaXJzdFJl
cXVlc3QoKSk7CiAgICAgaWYgKCFzdG9yYWdlUGFydGl0aW9uLmlzRW1wdHkoKSkgewogICAgICAg
ICBOU011dGFibGVVUkxSZXF1ZXN0ICptdXRhYmxlUmVxdWVzdCA9IFtbbnNSZXF1ZXN0IG11dGFi
bGVDb3B5XSBhdXRvcmVsZWFzZV07CiAgICAgICAgIFttdXRhYmxlUmVxdWVzdCBfc2V0UHJvcGVy
dHk6c3RvcmFnZVBhcnRpdGlvbiBmb3JLZXk6QCJfX1NUT1JBR0VfUEFSVElUSU9OX0lERU5USUZJ
RVIiXTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDIxMCkKKysrIFNvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDE3LTAzLTIwICBK
b2huIFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExv
YWQgU3RhdGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tp
ZSBhY2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2OTkwNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFU
YXNrQ29jb2E6Ok5ldHdvcmtEYXRhVGFza0NvY29hKToKKyAgICAgICAgICAgIE5vdyBjYWxscyBX
ZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKS4K
KwogMjAxNy0wMy0yMCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFdlYlBhZ2VQcm94eSBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
IGFuZCBEZWNpZGVQb2xpY3lGb3JSZXNwb25zZVN5bmMgc2hvdWxkIGJlIERlbGF5ZWQgcmVwbHkg
bWVzc2FnZXMKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdv
cmtEYXRhVGFza0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQ
cm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29hLm1tCShyZXZpc2lvbiAyMTQxMTMpCisr
KyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2Nv
YS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTI1LDcgKzEyNSw3IEBAIE5ldHdvcmtEYXRhVGFza0Nv
Y29hOjpOZXR3b3JrRGF0YVRhc2tDb2MKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJ
VElPTklORykKICAgICBpZiAoc2Vzc2lvbi5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKS5zaG91bGRQ
YXJ0aXRpb25Db29raWVzRm9ySG9zdCh1cmwuaG9zdCgpKSkgewogICAgICAgICBMT0coTmV0d29y
a1Nlc3Npb24sICIlbGx1IFBhcnRpdGlvbmluZyBjb29raWVzIGZvciBVUkwgJXMiLCBbbV90YXNr
IHRhc2tJZGVudGlmaWVyXSwgbnNSZXF1ZXN0LlVSTC5hYnNvbHV0ZVN0cmluZy5VVEY4U3RyaW5n
KTsKLSAgICAgICAgU3RyaW5nIHN0b3JhZ2VQYXJ0aXRpb24gPSBXZWJDb3JlOjpjb29raWVTdG9y
YWdlUGFydGl0aW9uKHJlcXVlc3QpOworICAgICAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9
IHNlc3Npb24ubmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkuY29va2llU3RvcmFnZVBhcnRpdGlvbihy
ZXF1ZXN0KTsKICAgICAgICAgaWYgKCFzdG9yYWdlUGFydGl0aW9uLmlzRW1wdHkoKSkKICAgICAg
ICAgICAgIG1fdGFzay5nZXQoKS5fc3RvcmFnZVBhcnRpdGlvbklkZW50aWZpZXIgPSBzdG9yYWdl
UGFydGl0aW9uOwogICAgIH0KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDExMykKKysrIExheW91dFRl
c3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDE3LTAzLTIw
ICBKb2huIFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNl
IExvYWQgU3RhdGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNv
b2tpZSBhY2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE2OTkwNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2xvYWRp
bmcvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wYXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdp
dGhvdXQtdXNlci1pbnRlcmFjdGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0
cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBo
cDoKKyAgICAgICAgICAgIE5vdyBhbHNvIG91dHB1dHMgZG9jdW1lbnQuY29va2llIGNsaWVudC1z
aWRlLgorCiAyMDE3LTAzLTE3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAog
ICAgICAgICBBZGQgYSByZWxvYWQgcG9saWN5IHdoZXJlIG9ubHkgZXhwaXJlZCBzdWJyZXNvdXJj
ZXMgYXJlIHJldmFsaWRhdGVkCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcv
cmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wYXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhv
dXQtdXNlci1pbnRlcmFjdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQt
Y29va2llcy13aXRoLWFuZC13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAyMTQxMTMpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy9wYXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNl
ci1pbnRlcmFjdGlvbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTUwLDcgKzUwLDcg
QEAgRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPgogU2hvdWxkIHJlY2Vp
dmUgbm8gY29va2llcy4KIERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlD
b29raWUnLgogRGlkIG5vdCByZWNlaXZlIGNvb2tpZSBuYW1lZCAndGhpcmRQYXJ0eUNvb2tpZScu
Ci0KK0NsaWVudC1zaWRlIGRvY3VtZW50LmNvb2tpZToKIAogLS0tLS0tLS0KIEZyYW1lOiAnPCEt
LWZyYW1lUGF0aCAvLzwhLS1mcmFtZTEtLT4tLT4nCkBAIC02NCw3ICs2NCw3IEBAIEZyYW1lOiAn
PCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTItLT4tLT4KIFNob3VsZCBvbmx5IHJlY2VpdmUgcGFy
dGl0aW9uZWQsIHRoaXJkIHBhcnR5IGNvb2tpZS4KIERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFt
ZWQgJ2ZpcnN0UGFydHlDb29raWUnLgogUmVjZWl2ZWQgY29va2llIG5hbWVkICd0aGlyZFBhcnR5
Q29va2llJy4KLQorQ2xpZW50LXNpZGUgZG9jdW1lbnQuY29va2llOiB0aGlyZFBhcnR5Q29va2ll
PXZhbHVlCiAKIC0tLS0tLS0tCiBGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUzLS0+
LS0+JwpAQCAtNzIsNCArNzIsNCBAQCBGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUz
LS0+LS0+CiBBZnRlciB1c2VyIGludGVyYWN0aW9uLCBzaG91bGQgb25seSByZWNlaXZlIG5vbi1w
YXJ0aXRpb25lZCwgZmlyc3QgcGFydHkgY29va2llLgogUmVjZWl2ZWQgY29va2llIG5hbWVkICdm
aXJzdFBhcnR5Q29va2llJy4KIERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ3RoaXJkUGFy
dHlDb29raWUnLgotCitDbGllbnQtc2lkZSBkb2N1bWVudC5jb29raWU6IGZpcnN0UGFydHlDb29r
aWU9dmFsdWUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQtY29va2llcy5waHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3Vy
Y2VzL2dldC1jb29raWVzLnBocAkocmV2aXNpb24gMjE0MTEzKQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29r
aWVzLnBocAkod29ya2luZyBjb3B5KQpAQCAtMTEsMyArMTEsNyBAQCBpZighaXNzZXQoJF9DT09L
SUVbJF9HRVRbIm5hbWUyIl1dKSkgewogICAgIGVjaG8gIlJlY2VpdmVkIGNvb2tpZSBuYW1lZCAn
IiAuICRfR0VUWyJuYW1lMiJdIC4gIicuPGJyPiI7CiB9CiA/PgorPHAgaWQ9Im91dHB1dCI+PC9w
PgorPHNjcmlwdD4KKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IikudGV4dENv
bnRlbnQgPSAiQ2xpZW50LXNpZGUgZG9jdW1lbnQuY29va2llOiAiICsgZG9jdW1lbnQuY29va2ll
OworPC9zY3JpcHQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>304989</attachid>
            <date>2017-03-20 21:31:04 -0700</date>
            <delta_ts>2017-03-20 22:26:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169906-20170320213103.patch</filename>
            <type>text/plain</type>
            <size>11547</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDE3LTAzLTIwICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nl
c3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkw
NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGV4aXN0aW5nIHRlc3QgY2FzZSB3YXMg
ZXhwYW5kZWQgdG8gY292ZXIgdGhpcyBjaGFuZ2UuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oOgorICAgICAgICAgICAgTW92ZWQgdGhlIHR3byBj
b29raWVTdG9yYWdlUGFydGl0aW9uKCkgZnVuY3Rpb25zIGludG8gdGhlIGNsYXNzLgorICAgICAg
ICAgICAgQWxzbyBkZWNsYXJlZCB0aGVtIGNvbnN0LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKToKKyAgICAgICAg
ICAgIE5vdyBjaGVja3Mgd2hldGhlciBpdCBzaG91bGQgcGFydGl0aW9uIG9yIG5vdC4KKyAgICAg
ICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9uQ29va2ll
c0Zvckhvc3QpOgorICAgICAgICAgICAgQWRkZWQgYSBjaGVjayBmb3IgRU5BQkxFKFBVQkxJQ19T
VUZGSVhfTElTVCkuCisgICAgICAgIChXZWJDb3JlOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKTog
RGVsZXRlZC4KKyAgICAgICAgICAgIFRoaXMgbW92ZWQgaW50byBOZXR3b3JrU3RvcmFnZVNlc3Np
b24uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6Y29va2llc0luUGFydGl0aW9uRm9yVVJMKToKKyAgICAgICAgICAgIE5v
dyBjYWxscyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0
aXRpb24oKS4KKyAgICAgICAgKFdlYkNvcmU6OnNldENvb2tpZXNGcm9tRE9NKToKKyAgICAgICAg
ICAgIE5vdyBjYWxscyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3Jh
Z2VQYXJ0aXRpb24oKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhh
bmRsZU1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpjcmVhdGVOU1VS
TENvbm5lY3Rpb24pOgorICAgICAgICAgICAgTm93IGNhbGxzIFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbigpLgorCiAyMDE3LTAzLTE3ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYSByZWxvYWQgcG9s
aWN5IHdoZXJlIG9ubHkgZXhwaXJlZCBzdWJyZXNvdXJjZXMgYXJlIHJldmFsaWRhdGVkCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0
b3JhZ2VTZXNzaW9uLmgJKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTc5
LDYgKzc5LDggQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDRkhUVFBD
b29raWVTdG9yYWdlUmVmPiBjb29raWVTdG9yYWdlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBP
UlQgc3RhdGljIHZvaWQgc2V0Q29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQoYm9vbCk7
CiAjaWYgSEFWRShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCisgICAgV0VCQ09SRV9F
WFBPUlQgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JikgY29uc3Q7CisgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgVVJMJiBm
aXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSkgY29uc3Q7CiAgICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdChjb25zdCBTdHJp
bmcmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFNob3VsZFBhcnRpdGlvbkNvb2tpZXNG
b3JIb3N0cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkKTsKICNlbmRpZgpAQCAtMTMzLDcgKzEzNSw0IEBAIHBy
aXZhdGU6CiAjZW5kaWYKIH07CiAKLVdFQkNPUkVfRVhQT1JUIFN0cmluZyBjb29raWVTdG9yYWdl
UGFydGl0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwotU3RyaW5nIGNvb2tpZVN0b3JhZ2VQ
YXJ0aXRpb24oY29uc3QgVVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNv
dXJjZSk7Ci0KIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0
d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCShyZXZp
c2lvbiAyMTQxMTMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL05ldHdv
cmtTdG9yYWdlU2Vzc2lvbkNGTmV0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA4LDkgKzEwOCw5
IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzZXRDb29raWVTdG8KICAgICBjb29raWVT
dG9yYWdlUGFydGl0aW9uaW5nRW5hYmxlZCA9IGVuYWJsZWQ7CiB9CiAKLSNpZiBQTEFURk9STShD
T0NPQSkKKyNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklORykKIAotU3RyaW5n
IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQor
U3RyaW5nIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbihjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGNvb2tpZVN0
b3JhZ2VQYXJ0aXRpb24ocmVxdWVzdC5maXJzdFBhcnR5Rm9yQ29va2llcygpLCByZXF1ZXN0LnVy
bCgpKTsKIH0KQEAgLTEyNSw5ICsxMjUsMTggQEAgc3RhdGljIGlubGluZSBib29sIGhvc3RJc0lu
RG9tYWluKFN0cmluZwogICAgIHJldHVybiBzdWZmaXhPZmZzZXQgPT0gMCB8fCBob3N0W3N1ZmZp
eE9mZnNldCAtIDFdID09ICcuJzsKIH0KIAotU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24o
Y29uc3QgVVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSkKK1N0
cmluZyBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3Qg
VVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSkgY29uc3QKIHsK
LSAgICBpZiAoIWNvb2tpZVN0b3JhZ2VQYXJ0aXRpb25pbmdFbmFibGVkKQorICAgIGF1dG8gZG9t
YWluID0gcmVzb3VyY2UuaG9zdCgpOworI2lmIEVOQUJMRShQVUJMSUNfU1VGRklYX0xJU1QpCisg
ICAgZG9tYWluID0gdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbihkb21haW4pOworICAgIGlm
IChkb21haW4uaXNFbXB0eSgpKQorICAgICAgICBkb21haW4gPSByZXNvdXJjZS5ob3N0KCk7Cisj
ZW5kaWYKKworICAgIGlmICghY29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQKKyAgICAg
ICAgfHwgZG9tYWluLmlzRW1wdHkoKQorICAgICAgICB8fCAhbV90b3BQcml2YXRlbHlDb250cm9s
bGVkRG9tYWluc0ZvckNvb2tpZVBhcnRpdGlvbmluZy5jb250YWlucyhkb21haW4pKQogICAgICAg
ICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIAogICAgIFN0cmluZyBmaXJzdFBhcnR5RG9tYWluID0g
Zmlyc3RQYXJ0eUZvckNvb2tpZXMuaG9zdCgpOwpAQCAtMTM4LDE4ICsxNDcsMTggQEAgU3RyaW5n
IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgVVJMJgogICAgIHJldHVybiBob3N0SXNJbkRv
bWFpbihyZXNvdXJjZS5ob3N0KCksIGZpcnN0UGFydHlEb21haW4pID8gZW1wdHlTdHJpbmcoKSA6
IGZpcnN0UGFydHlEb21haW47CiB9CiAKLSNlbmRpZgotCi0jaWYgSEFWRShDRk5FVFdPUktfU1RP
UkFHRV9QQVJUSVRJT05JTkcpCi0KIGJvb2wgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQ
YXJ0aXRpb25Db29raWVzRm9ySG9zdChjb25zdCBTdHJpbmcmIGhvc3QpCiB7CiAgICAgaWYgKGhv
c3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyNpZiBFTkFCTEUoUFVCTElD
X1NVRkZJWF9MSVNUKQogICAgIGF1dG8gZG9tYWluID0gdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERv
bWFpbihob3N0KTsKICAgICBpZiAoZG9tYWluLmlzRW1wdHkoKSkKICAgICAgICAgZG9tYWluID0g
aG9zdDsKKyNlbHNlCisgICAgYXV0byBkb21haW4gPSBob3N0OworI2VuZGlmCiAKICAgICByZXR1
cm4gbV90b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluc0ZvckNvb2tpZVBhcnRpdGlvbmluZy5j
b250YWlucyhkb21haW4pOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9tYWMvQ29va2llSmFyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvbWFjL0Nvb2tpZUphck1hYy5tbQkocmV2aXNpb24gMjE0MTEzKQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRpYyBOU0FycmF5ICphcHBseVBhcnRpdGlvblRv
Q29va2llcygKIAogc3RhdGljIE5TQXJyYXkgKmNvb2tpZXNJblBhcnRpdGlvbkZvclVSTChjb25z
dCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwg
Y29uc3QgVVJMJiB1cmwpCiB7Ci0gICAgU3RyaW5nIHBhcnRpdGlvbiA9IGNvb2tpZVN0b3JhZ2VQ
YXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcgcGFydGl0aW9uID0gc2Vzc2lv
bi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVybCk7CiAgICAgaWYgKHBhcnRp
dGlvbi5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBuaWw7CiAKQEAgLTE5Nyw3ICsxOTcsNyBA
QCB2b2lkIHNldENvb2tpZXNGcm9tRE9NKGNvbnN0IE5ldHdvcmtTdG9yCiAgICAgQVNTRVJUKFtm
aWx0ZXJlZENvb2tpZXMuZ2V0KCkgY291bnRdIDw9IDEpOwogCiAjaWYgSEFWRShDRk5FVFdPUktf
U1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgU3RyaW5nIHBhcnRpdGlvbiA9IGNvb2tpZVN0b3Jh
Z2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcgcGFydGl0aW9uID0gc2Vz
c2lvbi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVybCk7CiAgICAgaWYgKCFw
YXJ0aXRpb24uaXNFbXB0eSgpKQogICAgICAgICBmaWx0ZXJlZENvb2tpZXMgPSBhcHBseVBhcnRp
dGlvblRvQ29va2llcyhwYXJ0aXRpb24sIGZpbHRlcmVkQ29va2llcy5nZXQoKSk7CiAjZW5kaWYK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxl
TWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFj
L1Jlc291cmNlSGFuZGxlTWFjLm1tCShyZXZpc2lvbiAyMTQxMTMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhhbmRsZU1hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0ZU5TVVJMQ29u
bmVjdGkKICAgICB9CiAKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklORykK
LSAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmly
c3RSZXF1ZXN0KCkpOworICAgIFN0cmluZyBzdG9yYWdlUGFydGl0aW9uID0gZC0+bV9jb250ZXh0
LT5zdG9yYWdlU2Vzc2lvbigpLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RSZXF1ZXN0KCkp
OwogICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5pc0VtcHR5KCkpIHsKICAgICAgICAgTlNNdXRh
YmxlVVJMUmVxdWVzdCAqbXV0YWJsZVJlcXVlc3QgPSBbW25zUmVxdWVzdCBtdXRhYmxlQ29weV0g
YXV0b3JlbGVhc2VdOwogICAgICAgICBbbXV0YWJsZVJlcXVlc3QgX3NldFByb3BlcnR5OnN0b3Jh
Z2VQYXJ0aXRpb24gZm9yS2V5OkAiX19TVE9SQUdFX1BBUlRJVElPTl9JREVOVElGSUVSIl07Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMTQyMTApCisrKyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0wMy0yMCAgSm9obiBXaWxh
bmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZSBMb2FkIFN0YXRp
c3RpY3M6IEZpeCBwYXJ0aXRpb25pbmcgYnVnIGZvciBjbGllbnQtc2lkZSBjb29raWUgYWNjZXNz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjk5MDYK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTY0NDU2PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29y
a0RhdGFUYXNrQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29h
OjpOZXR3b3JrRGF0YVRhc2tDb2NvYSk6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisKIDIwMTct
MDMtMjAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBXZWJQYWdlUHJveHkgRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbiBhbmQgRGVj
aWRlUG9saWN5Rm9yUmVzcG9uc2VTeW5jIHNob3VsZCBiZSBEZWxheWVkIHJlcGx5IG1lc3NhZ2Vz
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRh
c2tDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQkocmV2aXNpb24gMjE0MTEzKQorKysgU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNSw3ICsxMjUsNyBAQCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6TmV0
d29ya0RhdGFUYXNrQ29jCiAjaWYgSEFWRShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcp
CiAgICAgaWYgKHNlc3Npb24ubmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkuc2hvdWxkUGFydGl0aW9u
Q29va2llc0Zvckhvc3QodXJsLmhvc3QoKSkpIHsKICAgICAgICAgTE9HKE5ldHdvcmtTZXNzaW9u
LCAiJWxsdSBQYXJ0aXRpb25pbmcgY29va2llcyBmb3IgVVJMICVzIiwgW21fdGFzayB0YXNrSWRl
bnRpZmllcl0sIG5zUmVxdWVzdC5VUkwuYWJzb2x1dGVTdHJpbmcuVVRGOFN0cmluZyk7Ci0gICAg
ICAgIFN0cmluZyBzdG9yYWdlUGFydGl0aW9uID0gV2ViQ29yZTo6Y29va2llU3RvcmFnZVBhcnRp
dGlvbihyZXF1ZXN0KTsKKyAgICAgICAgU3RyaW5nIHN0b3JhZ2VQYXJ0aXRpb24gPSBzZXNzaW9u
Lm5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24ocmVxdWVzdCk7
CiAgICAgICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5pc0VtcHR5KCkpCiAgICAgICAgICAgICBt
X3Rhc2suZ2V0KCkuX3N0b3JhZ2VQYXJ0aXRpb25JZGVudGlmaWVyID0gc3RvcmFnZVBhcnRpdGlv
bjsKICAgICB9CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMTQxMTMpCisrKyBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0wMy0yMCAgSm9obiBX
aWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZSBMb2FkIFN0
YXRpc3RpY3M6IEZpeCBwYXJ0aXRpb25pbmcgYnVnIGZvciBjbGllbnQtc2lkZSBjb29raWUgYWNj
ZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjk5
MDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTY0NDU2PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291
cmNlTG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVz
ZXItaW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGlu
Zy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQtY29va2llcy5waHA6CisgICAg
ICAgICAgICBOb3cgYWxzbyBvdXRwdXRzIGRvY3VtZW50LmNvb2tpZSBjbGllbnQtc2lkZS4KKwog
MjAxNy0wMy0xNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAg
QWRkIGEgcmVsb2FkIHBvbGljeSB3aGVyZSBvbmx5IGV4cGlyZWQgc3VicmVzb3VyY2VzIGFyZSBy
ZXZhbGlkYXRlZApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVzZXIt
aW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3BhcnRpdGlvbmVkLWNvb2tpZXMt
d2l0aC1hbmQtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MjE0MTEzKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVzZXItaW50ZXJh
Y3Rpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC01MCw3ICs1MCw3IEBAIEZyYW1l
OiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4KIFNob3VsZCByZWNlaXZlIG5vIGNv
b2tpZXMuCiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICdmaXJzdFBhcnR5Q29va2llJy4K
IERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ3RoaXJkUGFydHlDb29raWUnLgotCitDbGll
bnQtc2lkZSBkb2N1bWVudC5jb29raWU6CiAKIC0tLS0tLS0tCiBGcmFtZTogJzwhLS1mcmFtZVBh
dGggLy88IS0tZnJhbWUxLS0+LS0+JwpAQCAtNjQsNyArNjQsNyBAQCBGcmFtZTogJzwhLS1mcmFt
ZVBhdGggLy88IS0tZnJhbWUyLS0+LS0+CiBTaG91bGQgb25seSByZWNlaXZlIHBhcnRpdGlvbmVk
LCB0aGlyZCBwYXJ0eSBjb29raWUuCiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICdmaXJz
dFBhcnR5Q29va2llJy4KIFJlY2VpdmVkIGNvb2tpZSBuYW1lZCAndGhpcmRQYXJ0eUNvb2tpZScu
Ci0KK0NsaWVudC1zaWRlIGRvY3VtZW50LmNvb2tpZTogdGhpcmRQYXJ0eUNvb2tpZT12YWx1ZQog
CiAtLS0tLS0tLQogRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMy0tPi0tPicKQEAg
LTcyLDQgKzcyLDQgQEAgRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMy0tPi0tPgog
QWZ0ZXIgdXNlciBpbnRlcmFjdGlvbiwgc2hvdWxkIG9ubHkgcmVjZWl2ZSBub24tcGFydGl0aW9u
ZWQsIGZpcnN0IHBhcnR5IGNvb2tpZS4KIFJlY2VpdmVkIGNvb2tpZSBuYW1lZCAnZmlyc3RQYXJ0
eUNvb2tpZScuCiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICd0aGlyZFBhcnR5Q29va2ll
Jy4KLQorQ2xpZW50LXNpZGUgZG9jdW1lbnQuY29va2llOiBmaXJzdFBhcnR5Q29va2llPXZhbHVl
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9yZXNvdXJjZXMvZ2V0LWNvb2tpZXMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQt
Y29va2llcy5waHAJKHJldmlzaW9uIDIxNDExMykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
bG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQtY29va2llcy5waHAJ
KHdvcmtpbmcgY29weSkKQEAgLTExLDMgKzExLDcgQEAgaWYoIWlzc2V0KCRfQ09PS0lFWyRfR0VU
WyJuYW1lMiJdXSkpIHsKICAgICBlY2hvICJSZWNlaXZlZCBjb29raWUgbmFtZWQgJyIgLiAkX0dF
VFsibmFtZTIiXSAuICInLjxicj4iOwogfQogPz4KKzxwIGlkPSJvdXRwdXQiPjwvcD4KKzxzY3Jp
cHQ+CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLnRleHRDb250ZW50ID0g
IkNsaWVudC1zaWRlIGRvY3VtZW50LmNvb2tpZTogIiArIGRvY3VtZW50LmNvb2tpZTsKKzwvc2Ny
aXB0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>304990</attachid>
            <date>2017-03-20 22:26:31 -0700</date>
            <delta_ts>2017-03-21 16:45:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169906-20170320222630.patch</filename>
            <type>text/plain</type>
            <size>14045</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDE3LTAzLTIwICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nl
c3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkw
NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGV4aXN0aW5nIHRlc3QgY2FzZSB3YXMg
ZXhwYW5kZWQgdG8gY292ZXIgdGhpcyBjaGFuZ2UuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oOgorICAgICAgICAgICAgTW92ZWQgdGhlIHR3byBj
b29raWVTdG9yYWdlUGFydGl0aW9uKCkgZnVuY3Rpb25zIGludG8gdGhlIGNsYXNzLgorICAgICAg
ICAgICAgQWxzbyBkZWNsYXJlZCB0aGVtIGNvbnN0LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKToKKyAgICAgICAg
ICAgIE5vdyBjaGVja3Mgd2hldGhlciBpdCBzaG91bGQgcGFydGl0aW9uIG9yIG5vdC4KKyAgICAg
ICAgKFdlYkNvcmU6OmdldFBhcnRpdGlvbmluZ0RvbWFpbik6CisgICAgICAgICAgICBJbmxpbmUg
Y29udmVuaWVuY2UgZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb246OnNob3VsZFBhcnRpdGlvbkNvb2tpZXMpOgorICAgICAgICAgICAgUmVuYW1lZCBzaW5j
ZSBpdCBub3cgcmVjZWl2ZXMgYSB0b3AgcHJpdmF0ZWx5IGNvbnRyb2xsZWQgZG9tYWluCisgICAg
ICAgICAgICBpbnN0ZWFkIG9mIGEgaG9zdC4KKyAgICAgICAgKFdlYkNvcmU6OmNvb2tpZVN0b3Jh
Z2VQYXJ0aXRpb24pOiBEZWxldGVkLgorICAgICAgICAgICAgVGhpcyBtb3ZlZCBpbnRvIE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbi4KKyAgICAgICAgKFdlYkNvcmU6Omhvc3RJc0luRG9tYWluKTogRGVs
ZXRlZC4KKyAgICAgICAgICAgIE5vIGxvbmdlciBuZWVkZWQgc2luY2Ugd2UgZ2VuZXJhdGUgdGhl
IHRvcCBwcml2YXRlbHkgY29udHJvbGxlZAorICAgICAgICAgICAgZG9tYWluIGZvciBib3RoIHRo
ZSByZXNvdXJjZSBhbmQgdGhlIHBhcnRpdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9uQ29va2llc0Zvckhvc3QpOiBEZWxldGVkLgor
ICAgICAgICAgICAgUmVuYW1lZCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNob3Vs
ZFBhcnRpdGlvbkNvb2tpZXMoKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9Db29r
aWVKYXJNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzSW5QYXJ0aXRpb25Gb3JVUkwp
OgorICAgICAgICAgICAgTm93IGNhbGxzIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6
Y29va2llU3RvcmFnZVBhcnRpdGlvbigpLgorICAgICAgICAoV2ViQ29yZTo6c2V0Q29va2llc0Zy
b21ET00pOgorICAgICAgICAgICAgTm93IGNhbGxzIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vz
c2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbigpLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VI
YW5kbGU6OmNyZWF0ZU5TVVJMQ29ubmVjdGlvbik6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2Vi
Q29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisK
IDIwMTctMDMtMTcgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCBhIHJlbG9hZCBwb2xpY3kgd2hlcmUgb25seSBleHBpcmVkIHN1YnJlc291cmNlcyBhcmUg
cmV2YWxpZGF0ZWQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29y
a1N0b3JhZ2VTZXNzaW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAkocmV2aXNpb24gMjE0MTEzKQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAkod29y
a2luZyBjb3B5KQpAQCAtNzksNyArNzksOCBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQg
UmV0YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNvb2tpZVN0b3JhZ2UoKSBjb25zdDsK
ICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRDb29raWVTdG9yYWdlUGFydGl0aW9u
aW5nRW5hYmxlZChib29sKTsKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklO
RykKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFBhcnRpdGlvbkNvb2tpZXNGb3JIb3N0
KGNvbnN0IFN0cmluZyYpOworICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBjb29raWVTdG9yYWdl
UGFydGl0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGNvbnN0OworICAgIFN0cmluZyBjb29r
aWVTdG9yYWdlUGFydGl0aW9uKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZvckNvb2tpZXMsIGNvbnN0
IFVSTCYgcmVzb3VyY2UpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0U2hvdWxk
UGFydGl0aW9uQ29va2llc0Zvckhvc3RzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9S
ZW1vdmUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9BZGQpOwogI2VuZGlmCiAjZWxp
ZiBVU0UoU09VUCkKQEAgLTEyOSwxMSArMTMwLDkgQEAgcHJpdmF0ZToKICAgICBDcmVkZW50aWFs
U3RvcmFnZSBtX2NyZWRlbnRpYWxTdG9yYWdlOwogCiAjaWYgSEFWRShDRk5FVFdPUktfU1RPUkFH
RV9QQVJUSVRJT05JTkcpCisgICAgYm9vbCBzaG91bGRQYXJ0aXRpb25Db29raWVzKGNvbnN0IFN0
cmluZyYgdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbikgY29uc3Q7CiAgICAgSGFzaFNldDxT
dHJpbmc+IG1fdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbnNGb3JDb29raWVQYXJ0aXRpb25p
bmc7CiAjZW5kaWYKIH07CiAKLVdFQkNPUkVfRVhQT1JUIFN0cmluZyBjb29raWVTdG9yYWdlUGFy
dGl0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwotU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0
aXRpb24oY29uc3QgVVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJj
ZSk7Ci0KIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0d29y
a1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwCShyZXZpc2lv
biAyMTQxMTMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL05ldHdvcmtT
dG9yYWdlU2Vzc2lvbkNGTmV0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA4LDUwICsxMDgsNDYg
QEAgdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldENvb2tpZVN0bwogICAgIGNvb2tpZVN0
b3JhZ2VQYXJ0aXRpb25pbmdFbmFibGVkID0gZW5hYmxlZDsKIH0KIAotI2lmIFBMQVRGT1JNKENP
Q09BKQorI2lmIEhBVkUoQ0ZORVRXT1JLX1NUT1JBR0VfUEFSVElUSU9OSU5HKQogCi1TdHJpbmcg
Y29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCitT
dHJpbmcgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkgY29uc3QKIHsKICAgICByZXR1cm4gY29va2llU3Rv
cmFnZVBhcnRpdGlvbihyZXF1ZXN0LmZpcnN0UGFydHlGb3JDb29raWVzKCksIHJlcXVlc3QudXJs
KCkpOwogfQogCi1zdGF0aWMgaW5saW5lIGJvb2wgaG9zdElzSW5Eb21haW4oU3RyaW5nVmlldyBo
b3N0LCBTdHJpbmdWaWV3IGRvbWFpbikKK3N0YXRpYyBpbmxpbmUgU3RyaW5nIGdldFBhcnRpdGlv
bmluZ0RvbWFpbihjb25zdCBVUkwmIHVybCkgCiB7Ci0gICAgaWYgKCFob3N0LmVuZHNXaXRoSWdu
b3JpbmdBU0NJSUNhc2UoZG9tYWluKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgQVNT
RVJUKGhvc3QubGVuZ3RoKCkgPj0gZG9tYWluLmxlbmd0aCgpKTsKLSAgICB1bnNpZ25lZCBzdWZm
aXhPZmZzZXQgPSBob3N0Lmxlbmd0aCgpIC0gZG9tYWluLmxlbmd0aCgpOwotICAgIHJldHVybiBz
dWZmaXhPZmZzZXQgPT0gMCB8fCBob3N0W3N1ZmZpeE9mZnNldCAtIDFdID09ICcuJzsKKyAgICBh
dXRvIGRvbWFpbiA9IHVybC5ob3N0KCk7CisjaWYgRU5BQkxFKFBVQkxJQ19TVUZGSVhfTElTVCkK
KyAgICBkb21haW4gPSB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKGRvbWFpbik7CisgICAg
aWYgKGRvbWFpbi5pc0VtcHR5KCkpCisgICAgICAgIGRvbWFpbiA9IHVybC5ob3N0KCk7CisjZW5k
aWYKKyAgICByZXR1cm4gZG9tYWluOwogfQogCi1TdHJpbmcgY29va2llU3RvcmFnZVBhcnRpdGlv
bihjb25zdCBVUkwmIGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKQor
U3RyaW5nIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbihjb25z
dCBVUkwmIGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKSBjb25zdAog
ewogICAgIGlmICghY29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQpCiAgICAgICAgIHJl
dHVybiBlbXB0eVN0cmluZygpOwotCi0gICAgU3RyaW5nIGZpcnN0UGFydHlEb21haW4gPSBmaXJz
dFBhcnR5Rm9yQ29va2llcy5ob3N0KCk7Ci0jaWYgRU5BQkxFKFBVQkxJQ19TVUZGSVhfTElTVCkK
LSAgICBmaXJzdFBhcnR5RG9tYWluID0gdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbihmaXJz
dFBhcnR5RG9tYWluKTsKLSNlbmRpZgogICAgIAotICAgIHJldHVybiBob3N0SXNJbkRvbWFpbihy
ZXNvdXJjZS5ob3N0KCksIGZpcnN0UGFydHlEb21haW4pID8gZW1wdHlTdHJpbmcoKSA6IGZpcnN0
UGFydHlEb21haW47Ci19CisgICAgYXV0byByZXNvdXJjZURvbWFpbiA9IGdldFBhcnRpdGlvbmlu
Z0RvbWFpbihyZXNvdXJjZSk7CisgICAgaWYgKCFzaG91bGRQYXJ0aXRpb25Db29raWVzKHJlc291
cmNlRG9tYWluKSkKKyAgICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CiAKLSNlbmRpZgorICAg
IGF1dG8gZmlyc3RQYXJ0eURvbWFpbiA9IGdldFBhcnRpdGlvbmluZ0RvbWFpbihmaXJzdFBhcnR5
Rm9yQ29va2llcyk7CisgICAgaWYgKGZpcnN0UGFydHlEb21haW4gPT0gcmVzb3VyY2VEb21haW4p
CisgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogCi0jaWYgSEFWRShDRk5FVFdPUktfU1RP
UkFHRV9QQVJUSVRJT05JTkcpCisgICAgcmV0dXJuIGZpcnN0UGFydHlEb21haW47Cit9CiAKLWJv
b2wgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdChj
b25zdCBTdHJpbmcmIGhvc3QpCitib29sIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxkUGFy
dGl0aW9uQ29va2llcyhjb25zdCBTdHJpbmcmIHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4p
IGNvbnN0CiB7Ci0gICAgaWYgKGhvc3QuaXNFbXB0eSgpKQorICAgIGlmICh0b3BQcml2YXRlbHlD
b250cm9sbGVkRG9tYWluLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAg
YXV0byBkb21haW4gPSB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKGhvc3QpOwotICAgIGlm
IChkb21haW4uaXNFbXB0eSgpKQotICAgICAgICBkb21haW4gPSBob3N0OwotCi0gICAgcmV0dXJu
IG1fdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbnNGb3JDb29raWVQYXJ0aXRpb25pbmcuY29u
dGFpbnMoZG9tYWluKTsKKyAgICByZXR1cm4gbV90b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWlu
c0ZvckNvb2tpZVBhcnRpdGlvbmluZy5jb250YWlucyh0b3BQcml2YXRlbHlDb250cm9sbGVkRG9t
YWluKTsKIH0KIAogdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldFNob3VsZFBhcnRpdGlv
bkNvb2tpZXNGb3JIb3N0cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0Nvb2tpZUphck1hYy5tbQkocmV2aXNpb24g
MjE0MTEzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFy
TWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRpYyBOU0FycmF5ICph
cHBseVBhcnRpdGlvblRvQ29va2llcygKIAogc3RhdGljIE5TQXJyYXkgKmNvb2tpZXNJblBhcnRp
dGlvbkZvclVSTChjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Npb24sIGNvbnN0IFVS
TCYgZmlyc3RQYXJ0eSwgY29uc3QgVVJMJiB1cmwpCiB7Ci0gICAgU3RyaW5nIHBhcnRpdGlvbiA9
IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcgcGFy
dGl0aW9uID0gc2Vzc2lvbi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVybCk7
CiAgICAgaWYgKHBhcnRpdGlvbi5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBuaWw7CiAKQEAg
LTE5Nyw3ICsxOTcsNyBAQCB2b2lkIHNldENvb2tpZXNGcm9tRE9NKGNvbnN0IE5ldHdvcmtTdG9y
CiAgICAgQVNTRVJUKFtmaWx0ZXJlZENvb2tpZXMuZ2V0KCkgY291bnRdIDw9IDEpOwogCiAjaWYg
SEFWRShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgU3RyaW5nIHBhcnRpdGlv
biA9IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcg
cGFydGl0aW9uID0gc2Vzc2lvbi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVy
bCk7CiAgICAgaWYgKCFwYXJ0aXRpb24uaXNFbXB0eSgpKQogICAgICAgICBmaWx0ZXJlZENvb2tp
ZXMgPSBhcHBseVBhcnRpdGlvblRvQ29va2llcyhwYXJ0aXRpb24sIGZpbHRlcmVkQ29va2llcy5n
ZXQoKSk7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFj
L1Jlc291cmNlSGFuZGxlTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCShyZXZpc2lvbiAyMTQxMTMpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhhbmRsZU1hYy5t
bQkod29ya2luZyBjb3B5KQpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6
OmNyZWF0ZU5TVVJMQ29ubmVjdGkKICAgICB9CiAKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdF
X1BBUlRJVElPTklORykKLSAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IGNvb2tpZVN0b3Jh
Z2VQYXJ0aXRpb24oZmlyc3RSZXF1ZXN0KCkpOworICAgIFN0cmluZyBzdG9yYWdlUGFydGl0aW9u
ID0gZC0+bV9jb250ZXh0LT5zdG9yYWdlU2Vzc2lvbigpLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24o
Zmlyc3RSZXF1ZXN0KCkpOwogICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5pc0VtcHR5KCkpIHsK
ICAgICAgICAgTlNNdXRhYmxlVVJMUmVxdWVzdCAqbXV0YWJsZVJlcXVlc3QgPSBbW25zUmVxdWVz
dCBtdXRhYmxlQ29weV0gYXV0b3JlbGVhc2VdOwogICAgICAgICBbbXV0YWJsZVJlcXVlc3QgX3Nl
dFByb3BlcnR5OnN0b3JhZ2VQYXJ0aXRpb24gZm9yS2V5OkAiX19TVE9SQUdFX1BBUlRJVElPTl9J
REVOVElGSUVSIl07CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMTQyMTApCisrKyBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzMSBAQAorMjAxNy0w
My0yMCAgSm9obiBXaWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNv
dXJjZSBMb2FkIFN0YXRpc3RpY3M6IEZpeCBwYXJ0aXRpb25pbmcgYnVnIGZvciBjbGllbnQtc2lk
ZSBjb29raWUgYWNjZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNjk5MDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTY0NDU2PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtEYXRhVGFza0NvY29hOjpOZXR3b3JrRGF0YVRhc2tDb2NvYSk6CisgICAgICAgICAgICBUaGlz
IGZ1bmN0aW9uIG5vIGxvbmdlciBhc2tzIHRoZSBOZXR3b3JrU3RvcmFnZVNlc3Npb24KKyAgICAg
ICAgICAgIHdoZXRoZXIgaXQgc2hvdWxkIHBhcnRpdGlvbiBvciBub3QuIFRoYXQgZGVjaXNpb24g
aXMKKyAgICAgICAgICAgIG5vdyBtYWRlIGFzIHBhcnQgb2YKKyAgICAgICAgICAgIFdlYkNvcmU6
Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbigpLgorICAgICAg
ICAgICAgVGhlIGVtcHR5IHBhcnRpdGlvbiBzaWduYWxzIG5vIHBhcnRpdGlvbmluZy4KKworMjAx
Ny0wMy0yMCAgSm9obiBXaWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZXNvdXJjZSBMb2FkIFN0YXRpc3RpY3M6IEZpeCBwYXJ0aXRpb25pbmcgYnVnIGZvciBjbGllbnQt
c2lkZSBjb29raWUgYWNjZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjk5MDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTY0NDU2PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtEYXRhVGFza0NvY29hOjpOZXR3b3JrRGF0YVRhc2tDb2NvYSk6CisgICAgICAgICAgICBO
b3cgY2FsbHMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFy
dGl0aW9uKCkuCisKIDIwMTctMDMtMjAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KIAogICAgICAgICBXZWJQYWdlUHJveHkgRGVjaWRlUG9saWN5Rm9yTmF2aWdh
dGlvbkFjdGlvbiBhbmQgRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTeW5jIHNob3VsZCBiZSBEZWxh
eWVkIHJlcGx5IG1lc3NhZ2VzCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQkocmV2aXNpb24g
MjE0MTEzKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0Rh
dGFUYXNrQ29jb2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyMywxMSArMTIzLDEwIEBAIE5ldHdv
cmtEYXRhVGFza0NvY29hOjpOZXR3b3JrRGF0YVRhc2tDb2MKICAgICBMT0coTmV0d29ya1Nlc3Np
b24sICIlbGx1IENyZWF0aW5nIE5ldHdvcmtEYXRhVGFzayB3aXRoIFVSTCAlcyIsIFttX3Rhc2sg
dGFza0lkZW50aWZpZXJdLCBuc1JlcXVlc3QuVVJMLmFic29sdXRlU3RyaW5nLlVURjhTdHJpbmcp
OwogCiAjaWYgSEFWRShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgaWYgKHNl
c3Npb24ubmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkuc2hvdWxkUGFydGl0aW9uQ29va2llc0Zvckhv
c3QodXJsLmhvc3QoKSkpIHsKKyAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IHNlc3Npb24u
bmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkuY29va2llU3RvcmFnZVBhcnRpdGlvbihyZXF1ZXN0KTsK
KyAgICBpZiAoIXN0b3JhZ2VQYXJ0aXRpb24uaXNFbXB0eSgpKSB7CiAgICAgICAgIExPRyhOZXR3
b3JrU2Vzc2lvbiwgIiVsbHUgUGFydGl0aW9uaW5nIGNvb2tpZXMgZm9yIFVSTCAlcyIsIFttX3Rh
c2sgdGFza0lkZW50aWZpZXJdLCBuc1JlcXVlc3QuVVJMLmFic29sdXRlU3RyaW5nLlVURjhTdHJp
bmcpOwotICAgICAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IFdlYkNvcmU6OmNvb2tpZVN0
b3JhZ2VQYXJ0aXRpb24ocmVxdWVzdCk7Ci0gICAgICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5p
c0VtcHR5KCkpCi0gICAgICAgICAgICBtX3Rhc2suZ2V0KCkuX3N0b3JhZ2VQYXJ0aXRpb25JZGVu
dGlmaWVyID0gc3RvcmFnZVBhcnRpdGlvbjsKKyAgICAgICAgbV90YXNrLmdldCgpLl9zdG9yYWdl
UGFydGl0aW9uSWRlbnRpZmllciA9IHN0b3JhZ2VQYXJ0aXRpb247CiAgICAgfQogI2VuZGlmCiAK
SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIxNDExMykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDE3LTAzLTIwICBKb2huIFdpbGFuZGVyICA8
d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3RhdGlzdGljczog
Rml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nlc3MKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkwNgorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3Rh
dGlzdGljcy9wYXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNlci1pbnRlcmFj
dGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBocDoKKyAgICAgICAgICAgIE5v
dyBhbHNvIG91dHB1dHMgZG9jdW1lbnQuY29va2llIGNsaWVudC1zaWRlLgorCiAyMDE3LTAzLTE3
ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYSByZWxv
YWQgcG9saWN5IHdoZXJlIG9ubHkgZXhwaXJlZCBzdWJyZXNvdXJjZXMgYXJlIHJldmFsaWRhdGVk
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9wYXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlv
bi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2Fk
aW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13
aXRob3V0LXVzZXItaW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMTQxMTMpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9w
YXJ0aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTUwLDcgKzUwLDcgQEAgRnJhbWU6ICc8IS0tZnJh
bWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPgogU2hvdWxkIHJlY2VpdmUgbm8gY29va2llcy4KIERp
ZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29raWUnLgogRGlkIG5vdCBy
ZWNlaXZlIGNvb2tpZSBuYW1lZCAndGhpcmRQYXJ0eUNvb2tpZScuCi0KK0NsaWVudC1zaWRlIGRv
Y3VtZW50LmNvb2tpZToKIAogLS0tLS0tLS0KIEZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1m
cmFtZTEtLT4tLT4nCkBAIC02NCw3ICs2NCw3IEBAIEZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwh
LS1mcmFtZTItLT4tLT4KIFNob3VsZCBvbmx5IHJlY2VpdmUgcGFydGl0aW9uZWQsIHRoaXJkIHBh
cnR5IGNvb2tpZS4KIERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29r
aWUnLgogUmVjZWl2ZWQgY29va2llIG5hbWVkICd0aGlyZFBhcnR5Q29va2llJy4KLQorQ2xpZW50
LXNpZGUgZG9jdW1lbnQuY29va2llOiB0aGlyZFBhcnR5Q29va2llPXZhbHVlCiAKIC0tLS0tLS0t
CiBGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUzLS0+LS0+JwpAQCAtNzIsNCArNzIs
NCBAQCBGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUzLS0+LS0+CiBBZnRlciB1c2Vy
IGludGVyYWN0aW9uLCBzaG91bGQgb25seSByZWNlaXZlIG5vbi1wYXJ0aXRpb25lZCwgZmlyc3Qg
cGFydHkgY29va2llLgogUmVjZWl2ZWQgY29va2llIG5hbWVkICdmaXJzdFBhcnR5Q29va2llJy4K
IERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ3RoaXJkUGFydHlDb29raWUnLgotCitDbGll
bnQtc2lkZSBkb2N1bWVudC5jb29raWU6IGZpcnN0UGFydHlDb29raWU9dmFsdWUKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291
cmNlcy9nZXQtY29va2llcy5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBo
cAkocmV2aXNpb24gMjE0MTEzKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBocAkod29ya2luZyBj
b3B5KQpAQCAtMTEsMyArMTEsNyBAQCBpZighaXNzZXQoJF9DT09LSUVbJF9HRVRbIm5hbWUyIl1d
KSkgewogICAgIGVjaG8gIlJlY2VpdmVkIGNvb2tpZSBuYW1lZCAnIiAuICRfR0VUWyJuYW1lMiJd
IC4gIicuPGJyPiI7CiB9CiA/PgorPHAgaWQ9Im91dHB1dCI+PC9wPgorPHNjcmlwdD4KKyAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IikudGV4dENvbnRlbnQgPSAiQ2xpZW50LXNp
ZGUgZG9jdW1lbnQuY29va2llOiAiICsgZG9jdW1lbnQuY29va2llOworPC9zY3JpcHQ+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305050</attachid>
            <date>2017-03-21 16:45:19 -0700</date>
            <delta_ts>2017-03-22 11:32:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169906-20170321164516.patch</filename>
            <type>text/plain</type>
            <size>13580</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDIzNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDE3LTAzLTIxICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nl
c3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkw
NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBUaGUgZXhpc3RpbmcgdGVzdCBjYXNlIHdh
cyBleHBhbmRlZCB0byBjb3ZlciB0aGlzIGNoYW5nZS4KKworICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg6CisgICAgICAgICAgICBNb3ZlZCB0aGUgdHdv
IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKSBmdW5jdGlvbnMgaW50byB0aGUgY2xhc3MuCisgICAg
ICAgICAgICBBbHNvIGRlY2xhcmVkIHRoZW0gY29uc3QuCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9jZi9OZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24pOgorICAgICAg
ICAgICAgTm93IGNoZWNrcyB3aGV0aGVyIGl0IHNob3VsZCBwYXJ0aXRpb24gb3Igbm90LgorICAg
ICAgICAoV2ViQ29yZTo6Z2V0UGFydGl0aW9uaW5nRG9tYWluKToKKyAgICAgICAgICAgIElubGlu
ZSBjb252ZW5pZW5jZSBmdW5jdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9uQ29va2llcyk6CisgICAgICAgICAgICBSZW5hbWVkIHNp
bmNlIGl0IG5vdyByZWNlaXZlcyBhIHRvcCBwcml2YXRlbHkgY29udHJvbGxlZCBkb21haW4KKyAg
ICAgICAgICAgIGluc3RlYWQgb2YgYSBob3N0LgorICAgICAgICAoV2ViQ29yZTo6Y29va2llU3Rv
cmFnZVBhcnRpdGlvbik6IERlbGV0ZWQuCisgICAgICAgICAgICBUaGlzIG1vdmVkIGludG8gTmV0
d29ya1N0b3JhZ2VTZXNzaW9uLgorICAgICAgICAoV2ViQ29yZTo6aG9zdElzSW5Eb21haW4pOiBE
ZWxldGVkLgorICAgICAgICAgICAgTm8gbG9uZ2VyIG5lZWRlZCBzaW5jZSB3ZSBnZW5lcmF0ZSB0
aGUgdG9wIHByaXZhdGVseSBjb250cm9sbGVkCisgICAgICAgICAgICBkb21haW4gZm9yIGJvdGgg
dGhlIHJlc291cmNlIGFuZCB0aGUgcGFydGl0aW9uLgorICAgICAgICAoV2ViQ29yZTo6TmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdCk6IERlbGV0ZWQu
CisgICAgICAgICAgICBSZW5hbWVkIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hv
dWxkUGFydGl0aW9uQ29va2llcygpLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvbWFjL0Nv
b2tpZUphck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmNvb2tpZXNJblBhcnRpdGlvbkZvclVS
TCk6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9u
Ojpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisgICAgICAgIChXZWJDb3JlOjpzZXRDb29raWVz
RnJvbURPTSk6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VT
ZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUhhbmRsZTo6Y3JlYXRlTlNVUkxDb25uZWN0aW9uKToKKyAgICAgICAgICAgIE5vdyBjYWxscyBX
ZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKS4K
KwogMjAxNy0wMy0yMSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFRlYXIgZG93biBkZXNjZW5kYW50IHJlbmRlcmVycyB3aGVuIDxzbG90PidzIGRpc3BsYXkgdmFs
dWUgaXMgc2V0IHRvIG5vICJjb250ZW50cyIuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgJKHJldmlzaW9u
IDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTc5LDcgKzc5LDggQEAgcHVibGljOgogICAg
IFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDRkhUVFBDb29raWVTdG9yYWdlUmVmPiBjb29raWVT
dG9yYWdlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0Q29va2ll
U3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQoYm9vbCk7CiAjaWYgSEFWRShDRk5FVFdPUktfU1RP
UkFHRV9QQVJUSVRJT05JTkcpCi0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRQYXJ0aXRp
b25Db29raWVzRm9ySG9zdChjb25zdCBTdHJpbmcmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBTdHJp
bmcgY29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsK
KyAgICBTdHJpbmcgY29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBVUkwmIGZpcnN0UGFydHlG
b3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIHNldFNob3VsZFBhcnRpdGlvbkNvb2tpZXNGb3JIb3N0cyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRk
KTsKICNlbmRpZgogI2VsaWYgVVNFKFNPVVApCkBAIC0xMjksMTEgKzEzMCw5IEBAIHByaXZhdGU6
CiAgICAgQ3JlZGVudGlhbFN0b3JhZ2UgbV9jcmVkZW50aWFsU3RvcmFnZTsKIAogI2lmIEhBVkUo
Q0ZORVRXT1JLX1NUT1JBR0VfUEFSVElUSU9OSU5HKQorICAgIGJvb2wgc2hvdWxkUGFydGl0aW9u
Q29va2llcyhjb25zdCBTdHJpbmcmIHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4pIGNvbnN0
OwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3RvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW5zRm9y
Q29va2llUGFydGl0aW9uaW5nOwogI2VuZGlmCiB9OwogCi1XRUJDT1JFX0VYUE9SVCBTdHJpbmcg
Y29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLVN0cmluZyBj
b29raWVTdG9yYWdlUGFydGl0aW9uKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZvckNvb2tpZXMsIGNv
bnN0IFVSTCYgcmVzb3VyY2UpOwotCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2NmL05ldHdvcmtTdG9yYWdlU2Vzc2lvbkNGTmV0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL05ldHdvcmtTdG9yYWdlU2Vzc2lvbkNG
TmV0LmNwcAkocmV2aXNpb24gMjE0MTEzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9jZi9OZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEwOCw1MCArMTA4LDQ3IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzZXRDb29raWVT
dG8KICAgICBjb29raWVTdG9yYWdlUGFydGl0aW9uaW5nRW5hYmxlZCA9IGVuYWJsZWQ7CiB9CiAK
LSNpZiBQTEFURk9STShDT0NPQSkKKyNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElP
TklORykKIAotU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0KQorU3RyaW5nIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3RvcmFn
ZVBhcnRpdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpIGNvbnN0CiB7CiAgICAg
cmV0dXJuIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24ocmVxdWVzdC5maXJzdFBhcnR5Rm9yQ29va2ll
cygpLCByZXF1ZXN0LnVybCgpKTsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGhvc3RJc0luRG9t
YWluKFN0cmluZ1ZpZXcgaG9zdCwgU3RyaW5nVmlldyBkb21haW4pCitzdGF0aWMgaW5saW5lIFN0
cmluZyBnZXRQYXJ0aXRpb25pbmdEb21haW4oY29uc3QgVVJMJiB1cmwpIAogewotICAgIGlmICgh
aG9zdC5lbmRzV2l0aElnbm9yaW5nQVNDSUlDYXNlKGRvbWFpbikpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKLQotICAgIEFTU0VSVChob3N0Lmxlbmd0aCgpID49IGRvbWFpbi5sZW5ndGgoKSk7Ci0g
ICAgdW5zaWduZWQgc3VmZml4T2Zmc2V0ID0gaG9zdC5sZW5ndGgoKSAtIGRvbWFpbi5sZW5ndGgo
KTsKLSAgICByZXR1cm4gc3VmZml4T2Zmc2V0ID09IDAgfHwgaG9zdFtzdWZmaXhPZmZzZXQgLSAx
XSA9PSAnLic7CisjaWYgRU5BQkxFKFBVQkxJQ19TVUZGSVhfTElTVCkKKyAgICBhdXRvIGRvbWFp
biA9IHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4odXJsLmhvc3QoKSk7CisgICAgaWYgKGRv
bWFpbi5pc0VtcHR5KCkpCisgICAgICAgIGRvbWFpbiA9IHVybC5ob3N0KCk7CisjZWxzZQorICAg
IGF1dG8gZG9tYWluID0gdXJsLmhvc3QoKTsKKyNlbmRpZgorICAgIHJldHVybiBkb21haW47CiB9
CiAKLVN0cmluZyBjb29raWVTdG9yYWdlUGFydGl0aW9uKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZv
ckNvb2tpZXMsIGNvbnN0IFVSTCYgcmVzb3VyY2UpCitTdHJpbmcgTmV0d29ya1N0b3JhZ2VTZXNz
aW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZvckNvb2tp
ZXMsIGNvbnN0IFVSTCYgcmVzb3VyY2UpIGNvbnN0CiB7CiAgICAgaWYgKCFjb29raWVTdG9yYWdl
UGFydGl0aW9uaW5nRW5hYmxlZCkKICAgICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7Ci0KLSAg
ICBTdHJpbmcgZmlyc3RQYXJ0eURvbWFpbiA9IGZpcnN0UGFydHlGb3JDb29raWVzLmhvc3QoKTsK
LSNpZiBFTkFCTEUoUFVCTElDX1NVRkZJWF9MSVNUKQotICAgIGZpcnN0UGFydHlEb21haW4gPSB0
b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKGZpcnN0UGFydHlEb21haW4pOwotI2VuZGlmCiAg
ICAgCi0gICAgcmV0dXJuIGhvc3RJc0luRG9tYWluKHJlc291cmNlLmhvc3QoKSwgZmlyc3RQYXJ0
eURvbWFpbikgPyBlbXB0eVN0cmluZygpIDogZmlyc3RQYXJ0eURvbWFpbjsKLX0KKyAgICBhdXRv
IHJlc291cmNlRG9tYWluID0gZ2V0UGFydGl0aW9uaW5nRG9tYWluKHJlc291cmNlKTsKKyAgICBp
ZiAoIXNob3VsZFBhcnRpdGlvbkNvb2tpZXMocmVzb3VyY2VEb21haW4pKQorICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKIAotI2VuZGlmCisgICAgYXV0byBmaXJzdFBhcnR5RG9tYWluID0g
Z2V0UGFydGl0aW9uaW5nRG9tYWluKGZpcnN0UGFydHlGb3JDb29raWVzKTsKKyAgICBpZiAoZmly
c3RQYXJ0eURvbWFpbiA9PSByZXNvdXJjZURvbWFpbikKKyAgICAgICAgcmV0dXJuIGVtcHR5U3Ry
aW5nKCk7CiAKLSNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklORykKKyAgICBy
ZXR1cm4gZmlyc3RQYXJ0eURvbWFpbjsKK30KIAotYm9vbCBOZXR3b3JrU3RvcmFnZVNlc3Npb246
OnNob3VsZFBhcnRpdGlvbkNvb2tpZXNGb3JIb3N0KGNvbnN0IFN0cmluZyYgaG9zdCkKK2Jvb2wg
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXRpb25Db29raWVzKGNvbnN0IFN0cmlu
ZyYgdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbikgY29uc3QKIHsKLSAgICBpZiAoaG9zdC5p
c0VtcHR5KCkpCisgICAgaWYgKHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4uaXNFbXB0eSgp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBhdXRvIGRvbWFpbiA9IHRvcFByaXZhdGVs
eUNvbnRyb2xsZWREb21haW4oaG9zdCk7Ci0gICAgaWYgKGRvbWFpbi5pc0VtcHR5KCkpCi0gICAg
ICAgIGRvbWFpbiA9IGhvc3Q7Ci0KLSAgICByZXR1cm4gbV90b3BQcml2YXRlbHlDb250cm9sbGVk
RG9tYWluc0ZvckNvb2tpZVBhcnRpdGlvbmluZy5jb250YWlucyhkb21haW4pOworICAgIHJldHVy
biBtX3RvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW5zRm9yQ29va2llUGFydGl0aW9uaW5nLmNv
bnRhaW5zKHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4pOwogfQogCiB2b2lkIE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6c2V0U2hvdWxkUGFydGl0aW9uQ29va2llc0Zvckhvc3RzKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBkb21haW5zVG9SZW1vdmUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21h
aW5zVG9BZGQpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9Db29r
aWVKYXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9tYWMvQ29va2llSmFyTWFjLm1tCShyZXZpc2lvbiAyMTQxMTMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9Db29raWVKYXJNYWMubW0JKHdvcmtpbmcgY29weSkKQEAg
LTk4LDcgKzk4LDcgQEAgc3RhdGljIE5TQXJyYXkgKmFwcGx5UGFydGl0aW9uVG9Db29raWVzKAog
CiBzdGF0aWMgTlNBcnJheSAqY29va2llc0luUGFydGl0aW9uRm9yVVJMKGNvbnN0IE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiYgc2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBVUkwm
IHVybCkKIHsKLSAgICBTdHJpbmcgcGFydGl0aW9uID0gY29va2llU3RvcmFnZVBhcnRpdGlvbihm
aXJzdFBhcnR5LCB1cmwpOworICAgIFN0cmluZyBwYXJ0aXRpb24gPSBzZXNzaW9uLmNvb2tpZVN0
b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKICAgICBpZiAocGFydGl0aW9uLmlzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuIG5pbDsKIApAQCAtMTk3LDcgKzE5Nyw3IEBAIHZvaWQgc2V0
Q29va2llc0Zyb21ET00oY29uc3QgTmV0d29ya1N0b3IKICAgICBBU1NFUlQoW2ZpbHRlcmVkQ29v
a2llcy5nZXQoKSBjb3VudF0gPD0gMSk7CiAKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BB
UlRJVElPTklORykKLSAgICBTdHJpbmcgcGFydGl0aW9uID0gY29va2llU3RvcmFnZVBhcnRpdGlv
bihmaXJzdFBhcnR5LCB1cmwpOworICAgIFN0cmluZyBwYXJ0aXRpb24gPSBzZXNzaW9uLmNvb2tp
ZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKICAgICBpZiAoIXBhcnRpdGlvbi5p
c0VtcHR5KCkpCiAgICAgICAgIGZpbHRlcmVkQ29va2llcyA9IGFwcGx5UGFydGl0aW9uVG9Db29r
aWVzKHBhcnRpdGlvbiwgZmlsdGVyZWRDb29raWVzLmdldCgpKTsKICNlbmRpZgpJbmRleDogU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VI
YW5kbGVNYWMubW0JKHJldmlzaW9uIDIxNDExMykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xNzMs
NyArMTczLDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZTo6Y3JlYXRlTlNVUkxDb25uZWN0aQogICAg
IH0KIAogI2lmIEhBVkUoQ0ZORVRXT1JLX1NUT1JBR0VfUEFSVElUSU9OSU5HKQotICAgIFN0cmlu
ZyBzdG9yYWdlUGFydGl0aW9uID0gY29va2llU3RvcmFnZVBhcnRpdGlvbihmaXJzdFJlcXVlc3Qo
KSk7CisgICAgU3RyaW5nIHN0b3JhZ2VQYXJ0aXRpb24gPSBkLT5tX2NvbnRleHQtPnN0b3JhZ2VT
ZXNzaW9uKCkuY29va2llU3RvcmFnZVBhcnRpdGlvbihmaXJzdFJlcXVlc3QoKSk7CiAgICAgaWYg
KCFzdG9yYWdlUGFydGl0aW9uLmlzRW1wdHkoKSkgewogICAgICAgICBOU011dGFibGVVUkxSZXF1
ZXN0ICptdXRhYmxlUmVxdWVzdCA9IFtbbnNSZXF1ZXN0IG11dGFibGVDb3B5XSBhdXRvcmVsZWFz
ZV07CiAgICAgICAgIFttdXRhYmxlUmVxdWVzdCBfc2V0UHJvcGVydHk6c3RvcmFnZVBhcnRpdGlv
biBmb3JLZXk6QCJfX1NUT1JBR0VfUEFSVElUSU9OX0lERU5USUZJRVIiXTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cJKHJldmlzaW9uIDIxNDIzNSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE3LTAzLTIxICBKb2huIFdpbGFuZGVyICA8d2ls
YW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3RhdGlzdGljczogRml4
IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nlc3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkwNgorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJp
c3RlbnNlbi4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFz
a0NvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDb2NvYTo6TmV0d29y
a0RhdGFUYXNrQ29jb2EpOgorICAgICAgICAgICAgVGhpcyBmdW5jdGlvbiBubyBsb25nZXIgYXNr
cyB0aGUgTmV0d29ya1N0b3JhZ2VTZXNzaW9uCisgICAgICAgICAgICB3aGV0aGVyIGl0IHNob3Vs
ZCBwYXJ0aXRpb24gb3Igbm90LiBUaGF0IGRlY2lzaW9uIGlzCisgICAgICAgICAgICBub3cgbWFk
ZSBhcyBwYXJ0IG9mCisgICAgICAgICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246
OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKS4KKyAgICAgICAgICAgIFRoZSBlbXB0eSBwYXJ0aXRp
b24gc2lnbmFscyBubyBwYXJ0aXRpb25pbmcuCisKIDIwMTctMDMtMTkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggVGV4dEluZGljYXRvciB0
byBlc3RpbWF0ZSB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZ2l2ZW4gUmFuZ2UKSW5kZXg6
IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29h
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtEYXRhVGFza0NvY29hLm1tCShyZXZpc2lvbiAyMTQxMTMpCisrKyBTb3VyY2UvV2ViS2l0
Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQkod29ya2luZyBj
b3B5KQpAQCAtMTIzLDExICsxMjMsMTAgQEAgTmV0d29ya0RhdGFUYXNrQ29jb2E6Ok5ldHdvcmtE
YXRhVGFza0NvYwogICAgIExPRyhOZXR3b3JrU2Vzc2lvbiwgIiVsbHUgQ3JlYXRpbmcgTmV0d29y
a0RhdGFUYXNrIHdpdGggVVJMICVzIiwgW21fdGFzayB0YXNrSWRlbnRpZmllcl0sIG5zUmVxdWVz
dC5VUkwuYWJzb2x1dGVTdHJpbmcuVVRGOFN0cmluZyk7CiAKICNpZiBIQVZFKENGTkVUV09SS19T
VE9SQUdFX1BBUlRJVElPTklORykKLSAgICBpZiAoc2Vzc2lvbi5uZXR3b3JrU3RvcmFnZVNlc3Np
b24oKS5zaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdCh1cmwuaG9zdCgpKSkgeworICAgIFN0
cmluZyBzdG9yYWdlUGFydGl0aW9uID0gc2Vzc2lvbi5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKS5j
b29raWVTdG9yYWdlUGFydGl0aW9uKHJlcXVlc3QpOworICAgIGlmICghc3RvcmFnZVBhcnRpdGlv
bi5pc0VtcHR5KCkpIHsKICAgICAgICAgTE9HKE5ldHdvcmtTZXNzaW9uLCAiJWxsdSBQYXJ0aXRp
b25pbmcgY29va2llcyBmb3IgVVJMICVzIiwgW21fdGFzayB0YXNrSWRlbnRpZmllcl0sIG5zUmVx
dWVzdC5VUkwuYWJzb2x1dGVTdHJpbmcuVVRGOFN0cmluZyk7Ci0gICAgICAgIFN0cmluZyBzdG9y
YWdlUGFydGl0aW9uID0gV2ViQ29yZTo6Y29va2llU3RvcmFnZVBhcnRpdGlvbihyZXF1ZXN0KTsK
LSAgICAgICAgaWYgKCFzdG9yYWdlUGFydGl0aW9uLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIG1f
dGFzay5nZXQoKS5fc3RvcmFnZVBhcnRpdGlvbklkZW50aWZpZXIgPSBzdG9yYWdlUGFydGl0aW9u
OworICAgICAgICBtX3Rhc2suZ2V0KCkuX3N0b3JhZ2VQYXJ0aXRpb25JZGVudGlmaWVyID0gc3Rv
cmFnZVBhcnRpdGlvbjsKICAgICB9CiAjZW5kaWYKIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjE0MjM0
KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTctMDMtMjEgIEpvaG4gV2lsYW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmVzb3VyY2UgTG9hZCBTdGF0aXN0aWNzOiBGaXggcGFydGl0aW9uaW5nIGJ1ZyBmb3Ig
Y2xpZW50LXNpZGUgY29va2llIGFjY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTY5OTA2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMTE2NDQ1
Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgICog
aHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQtY29v
a2llcy13aXRoLWFuZC13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNl
cy9nZXQtY29va2llcy5waHA6CisgICAgICAgICAgICBOb3cgYWxzbyBvdXRwdXRzIGRvY3VtZW50
LmNvb2tpZSBjbGllbnQtc2lkZS4KKwogMjAxNy0wMy0yMSAgWmFsYW4gQnVqdGFzICA8emFsYW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFRlYXIgZG93biBkZXNjZW5kYW50IHJlbmRlcmVycyB3aGVu
IDxzbG90PidzIGRpc3BsYXkgdmFsdWUgaXMgc2V0IHRvIG5vICJjb250ZW50cyIuCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wYXJ0
aXRpb25lZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291
cmNlTG9hZFN0YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVz
ZXItaW50ZXJhY3Rpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMTQxMTMpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wYXJ0aXRpb25l
ZC1jb29raWVzLXdpdGgtYW5kLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTUwLDcgKzUwLDcgQEAgRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8v
PCEtLWZyYW1lMC0tPi0tPgogU2hvdWxkIHJlY2VpdmUgbm8gY29va2llcy4KIERpZCBub3QgcmVj
ZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29raWUnLgogRGlkIG5vdCByZWNlaXZlIGNv
b2tpZSBuYW1lZCAndGhpcmRQYXJ0eUNvb2tpZScuCi0KK0NsaWVudC1zaWRlIGRvY3VtZW50LmNv
b2tpZToKIAogLS0tLS0tLS0KIEZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTEtLT4t
LT4nCkBAIC02NCw3ICs2NCw3IEBAIEZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTIt
LT4tLT4KIFNob3VsZCBvbmx5IHJlY2VpdmUgcGFydGl0aW9uZWQsIHRoaXJkIHBhcnR5IGNvb2tp
ZS4KIERpZCBub3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29raWUnLgogUmVj
ZWl2ZWQgY29va2llIG5hbWVkICd0aGlyZFBhcnR5Q29va2llJy4KLQorQ2xpZW50LXNpZGUgZG9j
dW1lbnQuY29va2llOiB0aGlyZFBhcnR5Q29va2llPXZhbHVlCiAKIC0tLS0tLS0tCiBGcmFtZTog
JzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUzLS0+LS0+JwpAQCAtNzIsNCArNzIsNCBAQCBGcmFt
ZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUzLS0+LS0+CiBBZnRlciB1c2VyIGludGVyYWN0
aW9uLCBzaG91bGQgb25seSByZWNlaXZlIG5vbi1wYXJ0aXRpb25lZCwgZmlyc3QgcGFydHkgY29v
a2llLgogUmVjZWl2ZWQgY29va2llIG5hbWVkICdmaXJzdFBhcnR5Q29va2llJy4KIERpZCBub3Qg
cmVjZWl2ZSBjb29raWUgbmFtZWQgJ3RoaXJkUGFydHlDb29raWUnLgotCitDbGllbnQtc2lkZSBk
b2N1bWVudC5jb29raWU6IGZpcnN0UGFydHlDb29raWU9dmFsdWUKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQt
Y29va2llcy5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5n
L3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBocAkocmV2aXNp
b24gMjE0MTEzKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MvcmVzb3VyY2VzL2dldC1jb29raWVzLnBocAkod29ya2luZyBjb3B5KQpAQCAt
MTEsMyArMTEsNyBAQCBpZighaXNzZXQoJF9DT09LSUVbJF9HRVRbIm5hbWUyIl1dKSkgewogICAg
IGVjaG8gIlJlY2VpdmVkIGNvb2tpZSBuYW1lZCAnIiAuICRfR0VUWyJuYW1lMiJdIC4gIicuPGJy
PiI7CiB9CiA/PgorPHAgaWQ9Im91dHB1dCI+PC9wPgorPHNjcmlwdD4KKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgib3V0cHV0IikudGV4dENvbnRlbnQgPSAiQ2xpZW50LXNpZGUgZG9jdW1l
bnQuY29va2llOiAiICsgZG9jdW1lbnQuY29va2llOworPC9zY3JpcHQ+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305113</attachid>
            <date>2017-03-22 11:32:33 -0700</date>
            <delta_ts>2017-03-22 12:43:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169906-20170322113229.patch</filename>
            <type>text/plain</type>
            <size>13536</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDI1NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDE3LTAzLTIyICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogRml4IHBhcnRpdGlvbmluZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nl
c3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkw
NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBUaGUgZXhpc3RpbmcgdGVzdCBjYXNlIHdh
cyBleHBhbmRlZCB0byBjb3ZlciB0aGlzIGNoYW5nZS4KKworICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg6CisgICAgICAgICAgICBNb3ZlZCB0aGUgdHdv
IGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKSBmdW5jdGlvbnMgaW50byB0aGUgY2xhc3MuCisgICAg
ICAgICAgICBBbHNvIGRlY2xhcmVkIHRoZW0gY29uc3QuCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9jZi9OZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24pOgorICAgICAg
ICAgICAgTm93IGNoZWNrcyB3aGV0aGVyIGl0IHNob3VsZCBwYXJ0aXRpb24gb3Igbm90LgorICAg
ICAgICAoV2ViQ29yZTo6Z2V0UGFydGl0aW9uaW5nRG9tYWluKToKKyAgICAgICAgICAgIElubGlu
ZSBjb252ZW5pZW5jZSBmdW5jdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9uQ29va2llcyk6CisgICAgICAgICAgICBSZW5hbWVkIHNp
bmNlIGl0IG5vdyByZWNlaXZlcyBhIHRvcCBwcml2YXRlbHkgY29udHJvbGxlZCBkb21haW4KKyAg
ICAgICAgICAgIGluc3RlYWQgb2YgYSBob3N0LgorICAgICAgICAoV2ViQ29yZTo6Y29va2llU3Rv
cmFnZVBhcnRpdGlvbik6IERlbGV0ZWQuCisgICAgICAgICAgICBUaGlzIG1vdmVkIGludG8gTmV0
d29ya1N0b3JhZ2VTZXNzaW9uLgorICAgICAgICAoV2ViQ29yZTo6aG9zdElzSW5Eb21haW4pOiBE
ZWxldGVkLgorICAgICAgICAgICAgTm8gbG9uZ2VyIG5lZWRlZCBzaW5jZSB3ZSBnZW5lcmF0ZSB0
aGUgdG9wIHByaXZhdGVseSBjb250cm9sbGVkCisgICAgICAgICAgICBkb21haW4gZm9yIGJvdGgg
dGhlIHJlc291cmNlIGFuZCB0aGUgcGFydGl0aW9uLgorICAgICAgICAoV2ViQ29yZTo6TmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdCk6IERlbGV0ZWQu
CisgICAgICAgICAgICBSZW5hbWVkIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hv
dWxkUGFydGl0aW9uQ29va2llcygpLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvbWFjL0Nv
b2tpZUphck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmNvb2tpZXNJblBhcnRpdGlvbkZvclVS
TCk6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9u
Ojpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisgICAgICAgIChXZWJDb3JlOjpzZXRDb29raWVz
RnJvbURPTSk6CisgICAgICAgICAgICBOb3cgY2FsbHMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VT
ZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUhhbmRsZTo6Y3JlYXRlTlNVUkxDb25uZWN0aW9uKToKKyAgICAgICAgICAgIE5vdyBjYWxscyBX
ZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oKS4K
KwogMjAxNy0wMy0yMSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAg
ICAgVXNlIEF0b21pY1N0cmluZyBpbiBSdWxlU2V0IGFuZCBSdWxlRmVhdHVyZQpJbmRleDogU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5oCShyZXZpc2lvbiAyMTQyNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC03OSw3ICs3
OSw4IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBSZXRhaW5QdHI8Q0ZIVFRQQ29va2ll
U3RvcmFnZVJlZj4gY29va2llU3RvcmFnZSgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyB2b2lkIHNldENvb2tpZVN0b3JhZ2VQYXJ0aXRpb25pbmdFbmFibGVkKGJvb2wpOwogI2lm
IEhBVkUoQ0ZORVRXT1JLX1NUT1JBR0VfUEFSVElUSU9OSU5HKQotICAgIFdFQkNPUkVfRVhQT1JU
IGJvb2wgc2hvdWxkUGFydGl0aW9uQ29va2llc0Zvckhvc3QoY29uc3QgU3RyaW5nJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JikgY29uc3Q7CisgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29u
c3QgVVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSkgY29uc3Q7
CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRTaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9z
dHMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGRvbWFpbnNUb1JlbW92ZSwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIGRvbWFpbnNUb0FkZCk7CiAjZW5kaWYKICNlbGlmIFVTRShTT1VQKQpAQCAtMTMwLDEx
ICsxMzEsOSBAQCBwcml2YXRlOgogICAgIENyZWRlbnRpYWxTdG9yYWdlIG1fY3JlZGVudGlhbFN0
b3JhZ2U7CiAKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJVElPTklORykKKyAgICBi
b29sIHNob3VsZFBhcnRpdGlvbkNvb2tpZXMoY29uc3QgU3RyaW5nJiB0b3BQcml2YXRlbHlDb250
cm9sbGVkRG9tYWluKSBjb25zdDsKICAgICBIYXNoU2V0PFN0cmluZz4gbV90b3BQcml2YXRlbHlD
b250cm9sbGVkRG9tYWluc0ZvckNvb2tpZVBhcnRpdGlvbmluZzsKICNlbmRpZgogfTsKIAotV0VC
Q09SRV9FWFBPUlQgU3RyaW5nIGNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0Jik7Ci1TdHJpbmcgY29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBVUkwmIGZpcnN0
UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKTsKLQogfQpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9OZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9OZXR3
b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHAJKHJldmlzaW9uIDIxNDI1NSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMDgsNTAgKzEwOCw0NyBAQCB2b2lkIE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6c2V0Q29va2llU3RvCiAgICAgY29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJs
ZWQgPSBlbmFibGVkOwogfQogCi0jaWYgUExBVEZPUk0oQ09DT0EpCisjaWYgSEFWRShDRk5FVFdP
UktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCiAKLVN0cmluZyBjb29raWVTdG9yYWdlUGFydGl0aW9u
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK1N0cmluZyBOZXR3b3JrU3RvcmFnZVNl
c3Npb246OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KSBjb25zdAogewogICAgIHJldHVybiBjb29raWVTdG9yYWdlUGFydGl0aW9uKHJlcXVlc3Qu
Zmlyc3RQYXJ0eUZvckNvb2tpZXMoKSwgcmVxdWVzdC51cmwoKSk7CiB9CiAKLXN0YXRpYyBpbmxp
bmUgYm9vbCBob3N0SXNJbkRvbWFpbihTdHJpbmdWaWV3IGhvc3QsIFN0cmluZ1ZpZXcgZG9tYWlu
KQorc3RhdGljIGlubGluZSBTdHJpbmcgZ2V0UGFydGl0aW9uaW5nRG9tYWluKGNvbnN0IFVSTCYg
dXJsKSAKIHsKLSAgICBpZiAoIWhvc3QuZW5kc1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZShkb21haW4p
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBBU1NFUlQoaG9zdC5sZW5ndGgoKSA+PSBk
b21haW4ubGVuZ3RoKCkpOwotICAgIHVuc2lnbmVkIHN1ZmZpeE9mZnNldCA9IGhvc3QubGVuZ3Ro
KCkgLSBkb21haW4ubGVuZ3RoKCk7Ci0gICAgcmV0dXJuIHN1ZmZpeE9mZnNldCA9PSAwIHx8IGhv
c3Rbc3VmZml4T2Zmc2V0IC0gMV0gPT0gJy4nOworI2lmIEVOQUJMRShQVUJMSUNfU1VGRklYX0xJ
U1QpCisgICAgYXV0byBkb21haW4gPSB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKHVybC5o
b3N0KCkpOworICAgIGlmIChkb21haW4uaXNFbXB0eSgpKQorICAgICAgICBkb21haW4gPSB1cmwu
aG9zdCgpOworI2Vsc2UKKyAgICBhdXRvIGRvbWFpbiA9IHVybC5ob3N0KCk7CisjZW5kaWYKKyAg
ICByZXR1cm4gZG9tYWluOwogfQogCi1TdHJpbmcgY29va2llU3RvcmFnZVBhcnRpdGlvbihjb25z
dCBVUkwmIGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKQorU3RyaW5n
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y29va2llU3RvcmFnZVBhcnRpdGlvbihjb25zdCBVUkwm
IGZpcnN0UGFydHlGb3JDb29raWVzLCBjb25zdCBVUkwmIHJlc291cmNlKSBjb25zdAogewogICAg
IGlmICghY29va2llU3RvcmFnZVBhcnRpdGlvbmluZ0VuYWJsZWQpCiAgICAgICAgIHJldHVybiBl
bXB0eVN0cmluZygpOwotCi0gICAgU3RyaW5nIGZpcnN0UGFydHlEb21haW4gPSBmaXJzdFBhcnR5
Rm9yQ29va2llcy5ob3N0KCk7Ci0jaWYgRU5BQkxFKFBVQkxJQ19TVUZGSVhfTElTVCkKLSAgICBm
aXJzdFBhcnR5RG9tYWluID0gdG9wUHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbihmaXJzdFBhcnR5
RG9tYWluKTsKLSNlbmRpZgogICAgIAotICAgIHJldHVybiBob3N0SXNJbkRvbWFpbihyZXNvdXJj
ZS5ob3N0KCksIGZpcnN0UGFydHlEb21haW4pID8gZW1wdHlTdHJpbmcoKSA6IGZpcnN0UGFydHlE
b21haW47Ci19CisgICAgYXV0byByZXNvdXJjZURvbWFpbiA9IGdldFBhcnRpdGlvbmluZ0RvbWFp
bihyZXNvdXJjZSk7CisgICAgaWYgKCFzaG91bGRQYXJ0aXRpb25Db29raWVzKHJlc291cmNlRG9t
YWluKSkKKyAgICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CiAKLSNlbmRpZgorICAgIGF1dG8g
Zmlyc3RQYXJ0eURvbWFpbiA9IGdldFBhcnRpdGlvbmluZ0RvbWFpbihmaXJzdFBhcnR5Rm9yQ29v
a2llcyk7CisgICAgaWYgKGZpcnN0UGFydHlEb21haW4gPT0gcmVzb3VyY2VEb21haW4pCisgICAg
ICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogCi0jaWYgSEFWRShDRk5FVFdPUktfU1RPUkFHRV9Q
QVJUSVRJT05JTkcpCisgICAgcmV0dXJuIGZpcnN0UGFydHlEb21haW47Cit9CiAKLWJvb2wgTmV0
d29ya1N0b3JhZ2VTZXNzaW9uOjpzaG91bGRQYXJ0aXRpb25Db29raWVzRm9ySG9zdChjb25zdCBT
dHJpbmcmIGhvc3QpCitib29sIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxkUGFydGl0aW9u
Q29va2llcyhjb25zdCBTdHJpbmcmIHRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4pIGNvbnN0
CiB7Ci0gICAgaWYgKGhvc3QuaXNFbXB0eSgpKQorICAgIGlmICh0b3BQcml2YXRlbHlDb250cm9s
bGVkRG9tYWluLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBk
b21haW4gPSB0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKGhvc3QpOwotICAgIGlmIChkb21h
aW4uaXNFbXB0eSgpKQotICAgICAgICBkb21haW4gPSBob3N0OwotCi0gICAgcmV0dXJuIG1fdG9w
UHJpdmF0ZWx5Q29udHJvbGxlZERvbWFpbnNGb3JDb29raWVQYXJ0aXRpb25pbmcuY29udGFpbnMo
ZG9tYWluKTsKKyAgICByZXR1cm4gbV90b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluc0ZvckNv
b2tpZVBhcnRpdGlvbmluZy5jb250YWlucyh0b3BQcml2YXRlbHlDb250cm9sbGVkRG9tYWluKTsK
IH0KIAogdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldFNob3VsZFBhcnRpdGlvbkNvb2tp
ZXNGb3JIb3N0cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL0Nvb2tpZUphck1hYy5tbQkocmV2aXNpb24gMjE0MjU1
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRpYyBOU0FycmF5ICphcHBseVBh
cnRpdGlvblRvQ29va2llcygKIAogc3RhdGljIE5TQXJyYXkgKmNvb2tpZXNJblBhcnRpdGlvbkZv
clVSTChjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Npb24sIGNvbnN0IFVSTCYgZmly
c3RQYXJ0eSwgY29uc3QgVVJMJiB1cmwpCiB7Ci0gICAgU3RyaW5nIHBhcnRpdGlvbiA9IGNvb2tp
ZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcgcGFydGl0aW9u
ID0gc2Vzc2lvbi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVybCk7CiAgICAg
aWYgKHBhcnRpdGlvbi5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBuaWw7CiAKQEAgLTE5Nyw3
ICsxOTcsNyBAQCB2b2lkIHNldENvb2tpZXNGcm9tRE9NKGNvbnN0IE5ldHdvcmtTdG9yCiAgICAg
QVNTRVJUKFtmaWx0ZXJlZENvb2tpZXMuZ2V0KCkgY291bnRdIDw9IDEpOwogCiAjaWYgSEFWRShD
Rk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgU3RyaW5nIHBhcnRpdGlvbiA9IGNv
b2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RQYXJ0eSwgdXJsKTsKKyAgICBTdHJpbmcgcGFydGl0
aW9uID0gc2Vzc2lvbi5jb29raWVTdG9yYWdlUGFydGl0aW9uKGZpcnN0UGFydHksIHVybCk7CiAg
ICAgaWYgKCFwYXJ0aXRpb24uaXNFbXB0eSgpKQogICAgICAgICBmaWx0ZXJlZENvb2tpZXMgPSBh
cHBseVBhcnRpdGlvblRvQ29va2llcyhwYXJ0aXRpb24sIGZpbHRlcmVkQ29va2llcy5nZXQoKSk7
CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291
cmNlSGFuZGxlTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCShyZXZpc2lvbiAyMTQyNTUpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhhbmRsZU1hYy5tbQkod29y
a2luZyBjb3B5KQpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmNyZWF0
ZU5TVVJMQ29ubmVjdGkKICAgICB9CiAKICNpZiBIQVZFKENGTkVUV09SS19TVE9SQUdFX1BBUlRJ
VElPTklORykKLSAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IGNvb2tpZVN0b3JhZ2VQYXJ0
aXRpb24oZmlyc3RSZXF1ZXN0KCkpOworICAgIFN0cmluZyBzdG9yYWdlUGFydGl0aW9uID0gZC0+
bV9jb250ZXh0LT5zdG9yYWdlU2Vzc2lvbigpLmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24oZmlyc3RS
ZXF1ZXN0KCkpOwogICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5pc0VtcHR5KCkpIHsKICAgICAg
ICAgTlNNdXRhYmxlVVJMUmVxdWVzdCAqbXV0YWJsZVJlcXVlc3QgPSBbW25zUmVxdWVzdCBtdXRh
YmxlQ29weV0gYXV0b3JlbGVhc2VdOwogICAgICAgICBbbXV0YWJsZVJlcXVlc3QgX3NldFByb3Bl
cnR5OnN0b3JhZ2VQYXJ0aXRpb24gZm9yS2V5OkAiX19TVE9SQUdFX1BBUlRJVElPTl9JREVOVElG
SUVSIl07CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMTQyNTUpCisrKyBTb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxNy0wMy0yMiAg
Sm9obiBXaWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZSBM
b2FkIFN0YXRpc3RpY3M6IEZpeCBwYXJ0aXRpb25pbmcgYnVnIGZvciBjbGllbnQtc2lkZSBjb29r
aWUgYWNjZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNjk5MDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTY0NDU2PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Rh
dGFUYXNrQ29jb2E6Ok5ldHdvcmtEYXRhVGFza0NvY29hKToKKyAgICAgICAgICAgIFRoaXMgZnVu
Y3Rpb24gbm8gbG9uZ2VyIGFza3MgdGhlIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgorICAgICAgICAg
ICAgd2hldGhlciBpdCBzaG91bGQgcGFydGl0aW9uIG9yIG5vdC4gVGhhdCBkZWNpc2lvbiBpcwor
ICAgICAgICAgICAgbm93IG1hZGUgYXMgcGFydCBvZgorICAgICAgICAgICAgV2ViQ29yZTo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uOjpjb29raWVTdG9yYWdlUGFydGl0aW9uKCkuCisgICAgICAgICAg
ICBUaGUgZW1wdHkgcGFydGl0aW9uIHNpZ25hbHMgbm8gcGFydGl0aW9uaW5nLgorCiAyMDE3LTAz
LTIxICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtTb3VwXSAiT25seSBmcm9tIHdlYnNpdGVzIEkgdmlzaXQiIGNvb2tpZSBwb2xpY3kgaXMgYnJv
a2VuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0
YVRhc2tDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vz
cy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQkocmV2aXNpb24gMjE0MjU1KQorKysgU291
cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0J
KHdvcmtpbmcgY29weSkKQEAgLTEyMywxMSArMTIzLDEwIEBAIE5ldHdvcmtEYXRhVGFza0NvY29h
OjpOZXR3b3JrRGF0YVRhc2tDb2MKICAgICBMT0coTmV0d29ya1Nlc3Npb24sICIlbGx1IENyZWF0
aW5nIE5ldHdvcmtEYXRhVGFzayB3aXRoIFVSTCAlcyIsIFttX3Rhc2sgdGFza0lkZW50aWZpZXJd
LCBuc1JlcXVlc3QuVVJMLmFic29sdXRlU3RyaW5nLlVURjhTdHJpbmcpOwogCiAjaWYgSEFWRShD
Rk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgaWYgKHNlc3Npb24ubmV0d29ya1N0
b3JhZ2VTZXNzaW9uKCkuc2hvdWxkUGFydGl0aW9uQ29va2llc0Zvckhvc3QodXJsLmhvc3QoKSkp
IHsKKyAgICBTdHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IHNlc3Npb24ubmV0d29ya1N0b3JhZ2VT
ZXNzaW9uKCkuY29va2llU3RvcmFnZVBhcnRpdGlvbihyZXF1ZXN0KTsKKyAgICBpZiAoIXN0b3Jh
Z2VQYXJ0aXRpb24uaXNFbXB0eSgpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2Vzc2lvbiwgIiVs
bHUgUGFydGl0aW9uaW5nIGNvb2tpZXMgZm9yIFVSTCAlcyIsIFttX3Rhc2sgdGFza0lkZW50aWZp
ZXJdLCBuc1JlcXVlc3QuVVJMLmFic29sdXRlU3RyaW5nLlVURjhTdHJpbmcpOwotICAgICAgICBT
dHJpbmcgc3RvcmFnZVBhcnRpdGlvbiA9IFdlYkNvcmU6OmNvb2tpZVN0b3JhZ2VQYXJ0aXRpb24o
cmVxdWVzdCk7Ci0gICAgICAgIGlmICghc3RvcmFnZVBhcnRpdGlvbi5pc0VtcHR5KCkpCi0gICAg
ICAgICAgICBtX3Rhc2suZ2V0KCkuX3N0b3JhZ2VQYXJ0aXRpb25JZGVudGlmaWVyID0gc3RvcmFn
ZVBhcnRpdGlvbjsKKyAgICAgICAgbV90YXNrLmdldCgpLl9zdG9yYWdlUGFydGl0aW9uSWRlbnRp
ZmllciA9IHN0b3JhZ2VQYXJ0aXRpb247CiAgICAgfQogI2VuZGlmCiAKSW5kZXg6IExheW91dFRl
c3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlz
aW9uIDIxNDI1NSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE1IEBACisyMDE3LTAzLTIyICBKb2huIFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUu
Y29tPgorCisgICAgICAgIFJlc291cmNlIExvYWQgU3RhdGlzdGljczogRml4IHBhcnRpdGlvbmlu
ZyBidWcgZm9yIGNsaWVudC1zaWRlIGNvb2tpZSBhY2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTkwNgorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMzExNjQ0NTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKwor
ICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3BhcnRp
dGlvbmVkLWNvb2tpZXMtd2l0aC1hbmQtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy9yZXNvdXJjZXMvZ2V0LWNvb2tpZXMucGhwOgorICAgICAgICAgICAgTm93IGFsc28gb3V0cHV0
cyBkb2N1bWVudC5jb29raWUgY2xpZW50LXNpZGUuCisKIDIwMTctMDMtMjIgIENhcmxvcyBHYXJj
aWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgR1RL
KyBnYXJkZW5pbmcuIFJlYmFzZWxpbmUgZmFzdC90ZXh0L2h5cGhlbmF0ZS1saW1pdC1saW5lcy5o
dG1sLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVzZXItaW50ZXJh
Y3Rpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
bG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3BhcnRpdGlvbmVkLWNvb2tpZXMtd2l0aC1h
bmQtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjE0MjU1
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvcGFydGl0aW9uZWQtY29va2llcy13aXRoLWFuZC13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24t
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC01MCw3ICs1MCw3IEBAIEZyYW1lOiAnPCEt
LWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4KIFNob3VsZCByZWNlaXZlIG5vIGNvb2tpZXMu
CiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICdmaXJzdFBhcnR5Q29va2llJy4KIERpZCBu
b3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ3RoaXJkUGFydHlDb29raWUnLgotCitDbGllbnQtc2lk
ZSBkb2N1bWVudC5jb29raWU6CiAKIC0tLS0tLS0tCiBGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88
IS0tZnJhbWUxLS0+LS0+JwpAQCAtNjQsNyArNjQsNyBAQCBGcmFtZTogJzwhLS1mcmFtZVBhdGgg
Ly88IS0tZnJhbWUyLS0+LS0+CiBTaG91bGQgb25seSByZWNlaXZlIHBhcnRpdGlvbmVkLCB0aGly
ZCBwYXJ0eSBjb29raWUuCiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICdmaXJzdFBhcnR5
Q29va2llJy4KIFJlY2VpdmVkIGNvb2tpZSBuYW1lZCAndGhpcmRQYXJ0eUNvb2tpZScuCi0KK0Ns
aWVudC1zaWRlIGRvY3VtZW50LmNvb2tpZTogdGhpcmRQYXJ0eUNvb2tpZT12YWx1ZQogCiAtLS0t
LS0tLQogRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMy0tPi0tPicKQEAgLTcyLDQg
KzcyLDQgQEAgRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMy0tPi0tPgogQWZ0ZXIg
dXNlciBpbnRlcmFjdGlvbiwgc2hvdWxkIG9ubHkgcmVjZWl2ZSBub24tcGFydGl0aW9uZWQsIGZp
cnN0IHBhcnR5IGNvb2tpZS4KIFJlY2VpdmVkIGNvb2tpZSBuYW1lZCAnZmlyc3RQYXJ0eUNvb2tp
ZScuCiBEaWQgbm90IHJlY2VpdmUgY29va2llIG5hbWVkICd0aGlyZFBhcnR5Q29va2llJy4KLQor
Q2xpZW50LXNpZGUgZG9jdW1lbnQuY29va2llOiBmaXJzdFBhcnR5Q29va2llPXZhbHVlCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9y
ZXNvdXJjZXMvZ2V0LWNvb2tpZXMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbG9hZGluZy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQtY29va2ll
cy5waHAJKHJldmlzaW9uIDIxNDI1NSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGlu
Zy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy9nZXQtY29va2llcy5waHAJKHdvcmtp
bmcgY29weSkKQEAgLTExLDMgKzExLDcgQEAgaWYoIWlzc2V0KCRfQ09PS0lFWyRfR0VUWyJuYW1l
MiJdXSkpIHsKICAgICBlY2hvICJSZWNlaXZlZCBjb29raWUgbmFtZWQgJyIgLiAkX0dFVFsibmFt
ZTIiXSAuICInLjxicj4iOwogfQogPz4KKzxwIGlkPSJvdXRwdXQiPjwvcD4KKzxzY3JpcHQ+Cisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLnRleHRDb250ZW50ID0gIkNsaWVu
dC1zaWRlIGRvY3VtZW50LmNvb2tpZTogIiArIGRvY3VtZW50LmNvb2tpZTsKKzwvc2NyaXB0Pgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>