<?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>189216</bug_id>
          
          <creation_ts>2018-08-31 16:59:44 -0700</creation_ts>
          <short_desc>Add functionality to encode and decode a uint64_t in KeyedCoding</short_desc>
          <delta_ts>2018-09-05 10:05:01 -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>New Bugs</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>
          
          <blocked>187773</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Woodrow Wang">wwang153</reporter>
          <assigned_to name="Woodrow Wang">wwang153</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>japhet</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1455902</commentid>
    <comment_count>0</comment_count>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-08-31 16:59:44 -0700</bug_when>
    <thetext>Added functionality to encode and decode a uint64_t in KeyedDecoding</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455914</commentid>
    <comment_count>1</comment_count>
      <attachid>348689</attachid>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-08-31 17:39:11 -0700</bug_when>
    <thetext>Created attachment 348689
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455916</commentid>
    <comment_count>2</comment_count>
      <attachid>348691</attachid>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-08-31 17:43:01 -0700</bug_when>
    <thetext>Created attachment 348691
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455929</commentid>
    <comment_count>3</comment_count>
      <attachid>348691</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-31 18:57:04 -0700</bug_when>
    <thetext>Comment on attachment 348691
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Added functionality to encode and decode a uint64_t in KeyedCoding. 

This line should be a verbatim copy of the bug title. Please remove the period.

&gt; Source/WebCore/ChangeLog:7
&gt;  

Please explain why you are adding this functionality given that this patch just adds infrastructure and does not make use of it.

&gt; Source/WebCore/ChangeLog:22
&gt; +2018-08-31  Woodrow Wang  &lt;woodrow_wang@apple.com&gt;

Please fix up this file such that it only contains a new change log entry at the top.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455958</commentid>
    <comment_count>4</comment_count>
      <attachid>348691</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-01 06:33:31 -0700</bug_when>
    <thetext>Comment on attachment 348691
Patch

The changes to KeyedEncoderGlib look fine to me.

I agree that, if this is going to land in its own patch, there should be an explanation of how this functionality will be imminently used in a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455967</commentid>
    <comment_count>5</comment_count>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-09-01 10:25:19 -0700</bug_when>
    <thetext>I&apos;ve added this functionality in order to be able to encode and decode the raw uint64_t representation of an OptionSet for my patch here https://bugs.webkit.org/show_bug.cgi?id=187773 

The changes in the KeyedEncoder/KeyedDecoder for Glib were made because they are derived classes of KeyedCoding which contains pure virtual functions that need to be implemented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455968</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-09-01 11:38:57 -0700</bug_when>
    <thetext>(In reply to Woodrow Wang from comment #5)
&gt; I&apos;ve added this functionality in order to be able to encode and decode the
&gt; raw uint64_t representation of an OptionSet for my patch here
&gt; https://bugs.webkit.org/show_bug.cgi?id=187773 
&gt; 
&gt; The changes in the KeyedEncoder/KeyedDecoder for Glib were made because they
&gt; are derived classes of KeyedCoding which contains pure virtual functions
&gt; that need to be implemented.

Great! Please explain this in the description portion of the ChangeLog entry: under the Reviewed by line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455971</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-09-01 11:42:39 -0700</bug_when>
    <thetext>More specifically, please upload a new patch that addresses all feedback, substitutes Daniel Bates for “NOBODY (OOPS!)” and mark the patch commit-queue ?.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456328</commentid>
    <comment_count>8</comment_count>
      <attachid>348819</attachid>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-09-04 09:39:01 -0700</bug_when>
    <thetext>Created attachment 348819
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456434</commentid>
    <comment_count>9</comment_count>
      <attachid>348819</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-09-04 13:30:59 -0700</bug_when>
    <thetext>Comment on attachment 348819
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        representation of an OptionSet for my patch here https://bugs.webkit.org/show_bug.cgi?id=187773 

I would put the URL in angle brackets and add a period at the end of this sentence.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456485</commentid>
    <comment_count>10</comment_count>
      <attachid>348860</attachid>
    <who name="Woodrow Wang">wwang153</who>
    <bug_when>2018-09-04 15:47:19 -0700</bug_when>
    <thetext>Created attachment 348860
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456751</commentid>
    <comment_count>11</comment_count>
      <attachid>348860</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-05 10:03:09 -0700</bug_when>
    <thetext>Comment on attachment 348860
Patch

Clearing flags on attachment: 348860

Committed r235673: &lt;https://trac.webkit.org/changeset/235673&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456752</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-05 10:03:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456753</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-05 10:05:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/44142988&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348689</attachid>
            <date>2018-08-31 17:39:11 -0700</date>
            <delta_ts>2018-08-31 17:43:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189216-20180831173910.patch</filename>
            <type>text/plain</type>
            <size>19955</size>
            <attacher name="Woodrow Wang">wwang153</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDE5ZWE5Yzk5YzY1NDM4
NmE4OGJkOGZmZjNmYTA3YjBjNmMyYTFmNS4uMDZhNTZmYTliMDQ5ZDkwNmQzZTEwYThmNGZhNjI4
M2VlN2VkNmVlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE4LTA4LTMxICBXb29k
cm93IFdhbmcgIDx3b29kcm93X3dhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEFkZGVkIGR1bXBp
bmcgZnVuY3Rpb24gZm9yIHRlc3RpbmcgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODkyMTMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzLmg6CisKIDIwMTgtMDgtMzEgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFw
cGxlLmNvbT4KIAogICAgICAgICBbTEZDXSBBZGQgbWFyZ2luIGJveCB2ZXJpZmljYXRpb24gYmFj
ayBub3cgdGhhdCBEaXNwbGF5OjpCb3ggaGFzIG5vbi1jb21wdXRlZCBob3Jpem9udGFsIG1hcmdp
bi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKaW5kZXggMTE4NTY3ODU4YmQ2M2ZiY2ZhNjEwODAwNTBlMWRmNjM3MzI3Y2Y0My4u
MjA4OGNiMDQ3M2U1NjMxZDk1ZjNkMTE1OTRlNmYwOWJlMTFiZGQ0NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMCBAQAorMjAxOC0wOC0zMSAgV29vZHJvdyBXYW5nICA8d29vZHJvd193YW5nQGFwcGxl
LmNvbT4KKworICAgICAgICBBZGRlZCBkdW1waW5nIGZ1bmN0aW9uIGZvciB0ZXN0aW5nIHJlc291
cmNlIGxvYWQgc3RhdGlzdGljcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg5MjEzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0b3JlUmVmLmNwcDoK
KyAgICAgICAgKFdLV2Vic2l0ZURhdGFTdG9yZUR1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0b3JlUmVmLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZS5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZTo6ZHVtcFJl
c291cmNlTG9hZFN0YXRpc3RpY3MgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjpkdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljcyk6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oOgorCiAyMDE4
LTA4LTMxICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXBs
YWNlIE9wdGlvblNldCB8PSBhbmQgLT0gb3BlcmF0b3JzIHdpdGggYWRkKCkgYW5kIHJlbW92ZSgp
IGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRTdGF0aXN0
aWNzLmgKaW5kZXggOGM5ZWQ0YzJiYTFmYjM0YTU5YjYzMjJkOWJlZWJhZmY4M2I2MmQ0MC4uMjdh
MTdmZjkzNTUxNjE5MDEzZWJiOGVjMDVhYzI1ZDNkNTYxYjY2OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3MuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5oCkBAIC01OCw3ICs1OCw3IEBAIHN0
cnVjdCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzIHsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGVu
Y29kZShLZXllZEVuY29kZXImKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGRlY29k
ZShLZXllZERlY29kZXImLCB1bnNpZ25lZCBtb2RlbFZlcnNpb24pOwogCi0gICAgU3RyaW5nIHRv
U3RyaW5nKCkgY29uc3Q7CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHRvU3RyaW5nKCkgY29u
c3Q7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIG1lcmdlKGNvbnN0IFJlc291cmNlTG9hZFN0
YXRpc3RpY3MmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Mv
V0tXZWJzaXRlRGF0YVN0b3JlUmVmLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
L1dLV2Vic2l0ZURhdGFTdG9yZVJlZi5jcHAKaW5kZXggODAyZDFjZDkzOGQ4MzAyMmUwNjFjZGFj
ZmE0ZTMzNzFmOWM2ODk2Ni4uMmM4OTNlZTI1ZjQyNDJmOTAwYTU5OWJiN2MxMmMwZGU4NjJlYjZi
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0
YVN0b3JlUmVmLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1dlYnNp
dGVEYXRhU3RvcmVSZWYuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiQVBJV2Vic2l0
ZURhdGFTdG9yZS5oIgogI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgogI2luY2x1ZGUgIldLU2VjdXJp
dHlPcmlnaW5SZWYuaCIKKyNpbmNsdWRlICJXS1N0cmluZy5oIgogI2luY2x1ZGUgIldlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIgogI2luY2x1ZGUgIldlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NUZWxlbWV0cnkuaCIKICNpbmNsdWRlICJXZWJzaXRlRGF0YS5oIgpAQCAtMTQzLDYgKzE0
NCwxOSBAQCB2b2lkIFdLV2Vic2l0ZURhdGFTdG9yZVNldFN0YXRpc3RpY3NWZXJ5UHJldmFsZW50
UmVzb3VyY2UoV0tXZWJzaXRlRGF0YVN0b3JlUmVmCiAgICAgICAgIH0pOwogfQogCit2b2lkIFdL
V2Vic2l0ZURhdGFTdG9yZUR1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKFdLV2Vic2l0ZURhdGFT
dG9yZVJlZiBkYXRhU3RvcmVSZWYsIHZvaWQqIGNvbnRleHQsIFdLV2Vic2l0ZURhdGFTdG9yZUR1
bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRnVuY3Rpb24gY2FsbGJhY2spCit7CisgICAgYXV0byog
c3RvcmUgPSBXZWJLaXQ6OnRvSW1wbChkYXRhU3RvcmVSZWYpLT53ZWJzaXRlRGF0YVN0b3JlKCku
cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpOworICAgIGlmICghc3RvcmUpIHsKKyAgICAgICAgY2Fs
bGJhY2soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIiIpLCBjb250ZXh0KTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIHN0b3JlLT5kdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cyhbY29udGV4dCwgY2FsbGJhY2tdIChTdHJpbmcgZHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3Mp
IHsKKyAgICAgICAgY2FsbGJhY2soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoZHVtcFJl
c291cmNlTG9hZFN0YXRpc3RpY3MudXRmOCgpLmRhdGEoKSksIGNvbnRleHQpOworICAgIH0pOwor
fQorCiB2b2lkIFdLV2Vic2l0ZURhdGFTdG9yZUlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNl
KFdLV2Vic2l0ZURhdGFTdG9yZVJlZiBkYXRhU3RvcmVSZWYsIFdLU3RyaW5nUmVmIGhvc3QsIHZv
aWQqIGNvbnRleHQsIFdLV2Vic2l0ZURhdGFTdG9yZUlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291
cmNlRnVuY3Rpb24gY2FsbGJhY2spCiB7CiAgICAgYXV0byogc3RvcmUgPSBXZWJLaXQ6OnRvSW1w
bChkYXRhU3RvcmVSZWYpLT53ZWJzaXRlRGF0YVN0b3JlKCkucmVzb3VyY2VMb2FkU3RhdGlzdGlj
cygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRl
RGF0YVN0b3JlUmVmLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1dlYnNpdGVE
YXRhU3RvcmVSZWYuaAppbmRleCAwNjYyZGNmMjgwNzc4M2MwMTkxMmU4Y2RkNzcwODdmZWUxZjkz
NTRmLi44MTUxMWU4YmU4NTQ0YzdjMWVjZTk4MTc2ZDg3NTYxNGVlYTIzZGZlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1dlYnNpdGVEYXRhU3RvcmVSZWYuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1dlYnNpdGVEYXRhU3RvcmVSZWYu
aApAQCAtNDksNiArNDksOCBAQCB0eXBlZGVmIHZvaWQgKCpXS1dlYnNpdGVEYXRhU3RvcmVTdGF0
aXN0aWNzUHJldmFsZW50UmVzb3VyY2VGdW5jdGlvbikodm9pZCogZnVuYwogV0tfRVhQT1JUIHZv
aWQgV0tXZWJzaXRlRGF0YVN0b3JlU2V0U3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKFdLV2Vi
c2l0ZURhdGFTdG9yZVJlZiBkYXRhU3RvcmVSZWYsIFdLU3RyaW5nUmVmIGhvc3QsIGJvb2wgdmFs
dWUsIHZvaWQqIGNvbnRleHQsIFdLV2Vic2l0ZURhdGFTdG9yZVN0YXRpc3RpY3NQcmV2YWxlbnRS
ZXNvdXJjZUZ1bmN0aW9uIGNvbXBsZXRpb25IYW5kbGVyKTsKIHR5cGVkZWYgdm9pZCAoKldLV2Vi
c2l0ZURhdGFTdG9yZVN0YXRpc3RpY3NWZXJ5UHJldmFsZW50UmVzb3VyY2VGdW5jdGlvbikodm9p
ZCogZnVuY3Rpb25Db250ZXh0KTsKIFdLX0VYUE9SVCB2b2lkIFdLV2Vic2l0ZURhdGFTdG9yZVNl
dFN0YXRpc3RpY3NWZXJ5UHJldmFsZW50UmVzb3VyY2UoV0tXZWJzaXRlRGF0YVN0b3JlUmVmIGRh
dGFTdG9yZVJlZiwgV0tTdHJpbmdSZWYgaG9zdCwgYm9vbCB2YWx1ZSwgdm9pZCogY29udGV4dCwg
V0tXZWJzaXRlRGF0YVN0b3JlU3RhdGlzdGljc1ZlcnlQcmV2YWxlbnRSZXNvdXJjZUZ1bmN0aW9u
IGNvbXBsZXRpb25IYW5kbGVyKTsKK3R5cGVkZWYgdm9pZCAoKldLV2Vic2l0ZURhdGFTdG9yZUR1
bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRnVuY3Rpb24pKFdLU3RyaW5nUmVmIGR1bXBSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzLCB2b2lkKiBmdW5jdGlvbkNvbnRleHQpOworV0tfRVhQT1JUIHZvaWQg
V0tXZWJzaXRlRGF0YVN0b3JlRHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3MoV0tXZWJzaXRlRGF0
YVN0b3JlUmVmIGRhdGFTdG9yZVJlZiwgdm9pZCogY29udGV4dCwgV0tXZWJzaXRlRGF0YVN0b3Jl
RHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3NGdW5jdGlvbiBjYWxsYmFjayk7CiB0eXBlZGVmIHZv
aWQgKCpXS1dlYnNpdGVEYXRhU3RvcmVJc1N0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZUZ1bmN0
aW9uKShib29sIGlzUHJldmFsZW50UmVzb3VyY2UsIHZvaWQqIGZ1bmN0aW9uQ29udGV4dCk7CiBX
S19FWFBPUlQgdm9pZCBXS1dlYnNpdGVEYXRhU3RvcmVJc1N0YXRpc3RpY3NQcmV2YWxlbnRSZXNv
dXJjZShXS1dlYnNpdGVEYXRhU3RvcmVSZWYgZGF0YVN0b3JlUmVmLCBXS1N0cmluZ1JlZiBob3N0
LCB2b2lkKiBjb250ZXh0LCBXS1dlYnNpdGVEYXRhU3RvcmVJc1N0YXRpc3RpY3NQcmV2YWxlbnRS
ZXNvdXJjZUZ1bmN0aW9uIGNhbGxiYWNrKTsKIFdLX0VYUE9SVCB2b2lkIFdLV2Vic2l0ZURhdGFT
dG9yZUlzU3RhdGlzdGljc1ZlcnlQcmV2YWxlbnRSZXNvdXJjZShXS1dlYnNpdGVEYXRhU3RvcmVS
ZWYgZGF0YVN0b3JlUmVmLCBXS1N0cmluZ1JlZiBob3N0LCB2b2lkKiBjb250ZXh0LCBXS1dlYnNp
dGVEYXRhU3RvcmVJc1N0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZUZ1bmN0aW9uIGNhbGxiYWNr
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NNZW1vcnlTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuY3BwCmluZGV4IDE3Y2U3YmQwNWM5NDUzOTg1OTMwY2U0
ZTM2MmUzYTU0MmY1MzliMmIuLmE3OTkyZDZjNzViOGU3NTg1NmRjMjM4MDM0NWViZjcxY2FmMGM1
OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NNZW1vcnlTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcApAQCAtNjcxLDcgKzY3MSwxOCBAQCB2b2lk
IFJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZTo6c2V0UHJldmFsZW50UmVzb3VyY2Uo
V2ViQ29yZTo6UmVzb3VyY2VMbwogICAgICAgICBtYXBFbnRyeS0+dmFsdWUuaXNQcmV2YWxlbnRS
ZXNvdXJjZSA9IHRydWU7CiAgICAgfQogfQotCisgICAgCitTdHJpbmcgUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc01lbW9yeVN0b3JlOjpkdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljcygpIGNvbnN0Cit7
CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisgICAgCisgICAgU3RyaW5nQnVpbGRl
ciBkdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljc01hcFN0cmluZzsKKyAgICBkdW1wUmVzb3VyY2VM
b2FkU3RhdGlzdGljc01hcFN0cmluZy5hcHBlbmRMaXRlcmFsKCJSZXNvdXJjZSBsb2FkIHN0YXRp
c3RpY3M6XG5cbiIpOworICAgIGZvciAoYXV0byYgbWFwRW50cnkgOiBtX3Jlc291cmNlU3RhdGlz
dGljc01hcC52YWx1ZXMoKSkKKyAgICAgICAgZHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3NNYXBT
dHJpbmcuYXBwZW5kKG1hcEVudHJ5LnRvU3RyaW5nKCkpOworICAgIHJldHVybiBkdW1wUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc01hcFN0cmluZy50b1N0cmluZygpOworfQorICAgIAogYm9vbCBSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmU6OmlzUHJldmFsZW50UmVzb3VyY2UoY29uc3Qg
U3RyaW5nJiBwcmltYXJ5RG9tYWluKSBjb25zdAogewogICAgIEFTU0VSVCghUnVuTG9vcDo6aXNN
YWluKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc01lbW9yeVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuaAppbmRleCBiNzlmMGZlNTA0Zjc5MjgzZTNkNjcw
NjA5MmZhOGU0YTA3ZGRjNDViLi42MzRiODJkMWZlODQ4ZTQxNzViNDAxMWQ5NmMwNTMxMzgzZGRh
NWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZXNvdXJjZUxvYWRTdGF0
aXN0aWNzTWVtb3J5U3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuaApAQCAtODMsNiArODMsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBpc1JlZ2lzdGVyZWRBc1JlZGlyZWN0aW5nVG8oY29uc3QgU3RyaW5nJiBob3N0UmVk
aXJlY3RlZEZyb21QcmltYXJ5RG9tYWluLCBjb25zdCBTdHJpbmcmIGhvc3RSZWRpcmVjdGVkVG9Q
cmltYXJ5RG9tYWluKSBjb25zdDsKIAogICAgIHZvaWQgY2xlYXJQcmV2YWxlbnRSZXNvdXJjZShj
b25zdCBTdHJpbmcmIHByaW1hcnlEb21haW4pOworICAgIFN0cmluZyBkdW1wUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcygpIGNvbnN0OwogICAgIGJvb2wgaXNQcmV2YWxlbnRSZXNvdXJjZShjb25zdCBT
dHJpbmcmIHByaW1hcnlEb21haW4pIGNvbnN0OwogICAgIGJvb2wgaXNWZXJ5UHJldmFsZW50UmVz
b3VyY2UoY29uc3QgU3RyaW5nJiBwcmltYXJ5RG9tYWluKSBjb25zdDsKICAgICB2b2lkIHNldFBy
ZXZhbGVudFJlc291cmNlKGNvbnN0IFN0cmluZyYgcHJpbWFyeURvbWFpbik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUu
Y3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlLmNwcAppbmRleCA2Y2Q5ZGM0YjdkNzRlMDA4NzkwMWIwNTkwM2IzYmQyMzM2YTdhNDBkLi5m
YzU5ZjQyODk3MzAzNjUzOGM4YmMxNzdlODFiMjY0NDZmOWE2YmFkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZS5jcHAKQEAgLTQ5Myw2ICs0OTMsMTggQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmU6OnNldFZlcnlQcmV2YWxlbnRSZXNvdXJjZShjb25zdCBVUkwmIHVybCwgQ28KICAgICAg
ICAgcG9zdFRhc2tSZXBseShXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAgfSk7CiB9
CisgICAgCit2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6ZHVtcFJlc291cmNl
TG9hZFN0YXRpc3RpY3MoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTdHJpbmcpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgCisgICAg
cG9zdFRhc2soW3RoaXMsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildICgpIG11dGFibGUgeworICAgICAgICBTdHJpbmcgZHVtcFJlc291cmNlTG9hZFN0YXRp
c3RpY3MgPSBtX21lbW9yeVN0b3JlID8gbV9tZW1vcnlTdG9yZS0+ZHVtcFJlc291cmNlTG9hZFN0
YXRpc3RpY3MoKSA6IGVtcHR5U3RyaW5nKCk7CisgICAgICAgIHBvc3RUYXNrUmVwbHkoW2R1bXBS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KGR1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9CiAK
IHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjppc1ByZXZhbGVudFJlc291cmNl
KGNvbnN0IFVSTCYgdXJsLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkIChib29sKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmgKaW5kZXggZmIyNDQwODg3ZDZhMjhlNjI2MTY5
MTk3YjY5YzkxNmUyODZlYTQyMy4uODI2MDg2MzA3ZWMxN2IwOWQ2MTlmMjVhYjU1MDQ1YWExN2Uz
MDJlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0TGFzdFNlZW4oY29uc3QgV2ViQ29yZTo6VVJMJiwgU2Vjb25kcywgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKICAgICB2b2lkIHNldFByZXZhbGVudFJlc291cmNlKGNvbnN0IFdl
YkNvcmU6OlVSTCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAgICAgdm9pZCBzZXRW
ZXJ5UHJldmFsZW50UmVzb3VyY2UoY29uc3QgV2ViQ29yZTo6VVJMJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIGR1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoU3RyaW5nKT4mJik7CiAgICAgdm9pZCBpc1ByZXZhbGVudFJlc291
cmNlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OwogICAgIHZvaWQgaXNWZXJ5UHJldmFsZW50UmVzb3VyY2UoY29uc3QgV2ViQ29yZTo6VVJMJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAgICAgdm9pZCBpc1JlZ2lzdGVyZWRB
c1N1YnJlc291cmNlVW5kZXIoY29uc3QgV2ViQ29yZTo6VVJMJiBzdWJyZXNvdXJjZSwgY29uc3Qg
V2ViQ29yZTo6VVJMJiB0b3BGcmFtZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODhi
OTQ5NDFhN2E0MzgzYjA4ZGYzMGYyODRiNDZlYTNjMjQ1ZjI2NS4uMGRkYTBjNDZhZWNiYzk3YTc1
OTQyZmE3ZDdjMWMxZDY1ZTNjYWFmMSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE4LTA4LTMxICBXb29kcm93IFdh
bmcgIDx3b29kcm93X3dhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEFkZGVkIGR1bXBpbmcgZnVu
Y3Rpb24gZm9yIHRlc3RpbmcgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODkyMTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBmdW5jdGlvbmFsaXR5IHRv
IHNldCBhIGJvb2xlYW4gdG8gZHVtcCB0aGUgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzCisgICAg
ICAgIGF0IHRoZSBjb25jbHVzaW9uIG9mIGEgdGVzdC4gCisKKyAgICAgICAgKiBXZWJLaXRUZXN0
UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsOgorICAgICAgICAq
IFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAg
IChXVFI6OlRlc3RSdW5uZXI6OnNldER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaDoKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6
cmVzb3VyY2VTdGF0aXN0aWNzU3RyaW5nUmVzdWx0Q2FsbGJhY2spOgorICAgICAgICAoV1RSOjpU
ZXN0Q29udHJvbGxlcjo6ZHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3MpOgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL1Rlc3RJbnZvY2F0aW9uLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdEludm9jYXRpb246OmR1
bXBSZXN1bHRzKToKKyAgICAgICAgKFdUUjo6VGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVTeW5j
aHJvbm91c01lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUpOgorICAgICAgICAoV1RSOjpUZXN0SW52
b2NhdGlvbjo6c2V0RHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3MpOgorICAgICAgICAqIFdlYktp
dFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uaDoKKwogMjAxOC0wOC0zMSAgWmFsYW4gQnVqdGFz
ICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdIEFkZCBtYXJnaW4gYm94IHZlcmlm
aWNhdGlvbiBiYWNrIG5vdyB0aGF0IERpc3BsYXk6OkJveCBoYXMgbm9uLWNvbXB1dGVkIGhvcml6
b250YWwgbWFyZ2luLgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKaW5kZXggYTQ2YzQ2ZTViMGY5
NDUzM2ZmNDUxMWYyOThlYTkzZmFiMzJiNGQwNy4uZWNkZGU2ZTVmNGNmNmNiNWI5Zjg4Y2Q0YTg5
OWExZDU2NmViZjllYiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCkBAIC0yNjgsNiArMjY4
LDcgQEAgaW50ZXJmYWNlIFRlc3RSdW5uZXIgewogICAgIHZvaWQgZGlzY29ubmVjdE1vY2tHYW1l
cGFkKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogCiAgICAgLy8gUmVzb3VyY2UgTG9hZCBTdGF0aXN0
aWNzCisgICAgdm9pZCBzZXREdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljcyhib29sZWFuIHNob3Vs
ZER1bXApOwogICAgIHZvaWQgaW5zdGFsbFN0YXRpc3RpY3NEaWRNb2RpZnlEYXRhUmVjb3Jkc0Nh
bGxiYWNrKG9iamVjdCBjYWxsYmFjayk7CiAgICAgdm9pZCBpbnN0YWxsU3RhdGlzdGljc0RpZFNj
YW5EYXRhUmVjb3Jkc0NhbGxiYWNrKG9iamVjdCBjYWxsYmFjayk7CiAgICAgdm9pZCBpbnN0YWxs
U3RhdGlzdGljc0RpZFJ1blRlbGVtZXRyeUNhbGxiYWNrKG9iamVjdCBjYWxsYmFjayk7CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIu
Y3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNw
cAppbmRleCBkNGJjYWFlZjAyM2FjOTUxMjJjMWVmNzIwYzcxMmQxOWM2YWUyMGJhLi41N2FmOTI3
NDdlNDczMjE1ODEzYWZhZTIxYzFjZTBhYzg4OTU4ZWM2IDEwMDY0NAotLS0gYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTE0NTUsNyAr
MTQ1NSwxNCBAQCB2b2lkIFRlc3RSdW5uZXI6OnN0YXRpc3RpY3NDYWxsRGlkU2V0VmVyeVByZXZh
bGVudFJlc291cmNlQ2FsbGJhY2soKQogewogICAgIGNhbGxUZXN0UnVubmVyQ2FsbGJhY2soU2V0
U3RhdGlzdGljc1ZlcnlQcmV2YWxlbnRSZXNvdXJjZUNhbGxiYWNrSUQpOwogfQotCisgICAgCit2
b2lkIFRlc3RSdW5uZXI6OnNldER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKGJvb2wgc2hvdWxk
RHVtcCkKK3sKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gbWVzc2FnZU5hbWUoQWRvcHRX
SywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoInNldER1bXBSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzIikpOworICAgIFdLUmV0YWluUHRyPFdLQm9vbGVhblJlZj4gbWVzc2FnZUJvZHkoQWRv
cHRXSywgV0tCb29sZWFuQ3JlYXRlKHNob3VsZER1bXApKTsKKyAgICBXS0J1bmRsZVBhZ2VQb3N0
U3luY2hyb25vdXNNZXNzYWdlRm9yVGVzdGluZyhJbmplY3RlZEJ1bmRsZTo6c2luZ2xldG9uKCku
cGFnZSgpLT5wYWdlKCksIG1lc3NhZ2VOYW1lLmdldCgpLCBtZXNzYWdlQm9keS5nZXQoKSwgbnVs
bHB0cik7Cit9CisgICAgCiBib29sIFRlc3RSdW5uZXI6OmlzU3RhdGlzdGljc1ByZXZhbGVudFJl
c291cmNlKEpTU3RyaW5nUmVmIGhvc3ROYW1lKQogewogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5n
UmVmPiBtZXNzYWdlTmFtZShBZG9wdFdLLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygi
SXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2UiKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5oCmluZGV4IGJiN2EwY2ZkNGU5NTg3
M2NlY2QyY2VlNjkxNTlhZDBjZDc5YzFjOGMuLjk0OGNjMDA4ZGQzZDU1Mzc1NWVkZmUxMzBhZDgw
ZGVjYzE5NTY5OTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oCkBAIC0zOTEsNiArMzkxLDcgQEAgcHVibGljOgogICAgIHZvaWQg
c3RhdGlzdGljc0NhbGxEaWRTZXRQcmV2YWxlbnRSZXNvdXJjZUNhbGxiYWNrKCk7CiAgICAgdm9p
ZCBzZXRTdGF0aXN0aWNzVmVyeVByZXZhbGVudFJlc291cmNlKEpTU3RyaW5nUmVmIGhvc3ROYW1l
LCBib29sIHZhbHVlLCBKU1ZhbHVlUmVmIGNvbXBsZXRpb25IYW5kbGVyKTsKICAgICB2b2lkIHN0
YXRpc3RpY3NDYWxsRGlkU2V0VmVyeVByZXZhbGVudFJlc291cmNlQ2FsbGJhY2soKTsKKyAgICB2
b2lkIHNldER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKGJvb2wgc2hvdWxkRHVtcCk7CiAgICAg
Ym9vbCBpc1N0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShKU1N0cmluZ1JlZiBob3N0TmFtZSk7
CiAgICAgYm9vbCBpc1N0YXRpc3RpY3NWZXJ5UHJldmFsZW50UmVzb3VyY2UoSlNTdHJpbmdSZWYg
aG9zdE5hbWUpOwogICAgIGJvb2wgaXNTdGF0aXN0aWNzUmVnaXN0ZXJlZEFzU3VicmVzb3VyY2VV
bmRlcihKU1N0cmluZ1JlZiBzdWJyZXNvdXJjZUhvc3QsIEpTU3RyaW5nUmVmIHRvcEZyYW1lSG9z
dCk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNw
cCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDdjZGFh
ZjBhODY5YWJhYzJiYTY2ZDU3ZmJmZWVhMmQ3MzI3OTFhNGYuLmFhYzFlZWJhZTQwMGU3ODBmOGI3
ZDIzMzBjMzIyNmJkMDlhZjc5MTYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
VGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRy
b2xsZXIuY3BwCkBAIC0yODA1LDcgKzI4MDUsMTYgQEAgc3RydWN0IFJlc291cmNlU3RhdGlzdGlj
c0NhbGxiYWNrQ29udGV4dCB7CiAgICAgVGVzdENvbnRyb2xsZXImIHRlc3RDb250cm9sbGVyOwog
ICAgIGJvb2wgZG9uZSB7IGZhbHNlIH07CiAgICAgYm9vbCByZXN1bHQgeyBmYWxzZSB9OworICAg
IFdLU3RyaW5nUmVmIGR1bXA7CiB9OworICAgIAorc3RhdGljIHZvaWQgcmVzb3VyY2VTdGF0aXN0
aWNzU3RyaW5nUmVzdWx0Q2FsbGJhY2soV0tTdHJpbmdSZWYgZHVtcCwgdm9pZCogdXNlckRhdGEp
Cit7CisgICAgYXV0byogY29udGV4dCA9IHN0YXRpY19jYXN0PFJlc291cmNlU3RhdGlzdGljc0Nh
bGxiYWNrQ29udGV4dCo+KHVzZXJEYXRhKTsKKyAgICBjb250ZXh0LT5kdW1wID0gZHVtcDsKKyAg
ICBjb250ZXh0LT5kb25lID0gdHJ1ZTsKKyAgICBjb250ZXh0LT50ZXN0Q29udHJvbGxlci5ub3Rp
ZnlEb25lKCk7Cit9CiAKIHN0YXRpYyB2b2lkIHJlc291cmNlU3RhdGlzdGljc1ZvaWRSZXN1bHRD
YWxsYmFjayh2b2lkKiB1c2VyRGF0YSkKIHsKQEAgLTI4NjYsNiArMjg3NSwxNSBAQCB2b2lkIFRl
c3RDb250cm9sbGVyOjpzZXRTdGF0aXN0aWNzVmVyeVByZXZhbGVudFJlc291cmNlKFdLU3RyaW5n
UmVmIGhvc3QsIGJvb2wgdgogICAgIHJ1blVudGlsKGNvbnRleHQuZG9uZSwgbm9UaW1lb3V0KTsK
ICAgICBtX2N1cnJlbnRJbnZvY2F0aW9uLT5kaWRTZXRWZXJ5UHJldmFsZW50UmVzb3VyY2UoKTsK
IH0KKyAgICAKK1dLU3RyaW5nUmVmIFRlc3RDb250cm9sbGVyOjpkdW1wUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcygpCit7CisgICAgYXV0byogZGF0YVN0b3JlID0gV0tDb250ZXh0R2V0V2Vic2l0ZURh
dGFTdG9yZShwbGF0Zm9ybUNvbnRleHQoKSk7CisgICAgUmVzb3VyY2VTdGF0aXN0aWNzQ2FsbGJh
Y2tDb250ZXh0IGNvbnRleHQoKnRoaXMpOworICAgIFdLV2Vic2l0ZURhdGFTdG9yZUR1bXBSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzKGRhdGFTdG9yZSwgJmNvbnRleHQsIHJlc291cmNlU3RhdGlzdGlj
c1N0cmluZ1Jlc3VsdENhbGxiYWNrKTsKKyAgICBydW5VbnRpbChjb250ZXh0LmRvbmUsIG5vVGlt
ZW91dCk7CisgICAgcmV0dXJuIGNvbnRleHQuZHVtcDsKK30KIAogYm9vbCBUZXN0Q29udHJvbGxl
cjo6aXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2UoV0tTdHJpbmdSZWYgaG9zdCkKIHsKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAppbmRleCBjZjc1ZDY2NzZiZmI0NjEz
NWM2NDA2MTgzMDY0MTlkZTE3Yzg5NWNhLi5hYTRlM2ZlOTA3MTE5ZTQ0YTY4NTdjMjQzZmNiODM3
MzYyNDE2ZmFkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9s
bGVyLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCkBAIC0x
OTEsNiArMTkxLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0U3RhdGlzdGljc0xhc3RTZWVuKFdL
U3RyaW5nUmVmIGhvc3ROYW1lLCBkb3VibGUgc2Vjb25kcyk7CiAgICAgdm9pZCBzZXRTdGF0aXN0
aWNzUHJldmFsZW50UmVzb3VyY2UoV0tTdHJpbmdSZWYgaG9zdE5hbWUsIGJvb2wgdmFsdWUpOwog
ICAgIHZvaWQgc2V0U3RhdGlzdGljc1ZlcnlQcmV2YWxlbnRSZXNvdXJjZShXS1N0cmluZ1JlZiBo
b3N0TmFtZSwgYm9vbCB2YWx1ZSk7CisgICAgV0tTdHJpbmdSZWYgZHVtcFJlc291cmNlTG9hZFN0
YXRpc3RpY3MoKTsKICAgICBib29sIGlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKFdLU3Ry
aW5nUmVmIGhvc3ROYW1lKTsKICAgICBib29sIGlzU3RhdGlzdGljc1ZlcnlQcmV2YWxlbnRSZXNv
dXJjZShXS1N0cmluZ1JlZiBob3N0TmFtZSk7CiAgICAgYm9vbCBpc1N0YXRpc3RpY3NSZWdpc3Rl
cmVkQXNTdWJyZXNvdXJjZVVuZGVyKFdLU3RyaW5nUmVmIHN1YnJlc291cmNlSG9zdCwgV0tTdHJp
bmdSZWYgdG9wRnJhbWVIb3N0KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
VGVzdEludm9jYXRpb24uY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlv
bi5jcHAKaW5kZXggMTNiMjFiZWRkNTE3NDA3MWJkYTdiNjFiMzkwZWZkNzg4NTMzYzQwOS4uNTBh
YzhlNzAyY2QzZDNiNjdjYWNiNTdmOGEzODBmNWQ2MDE2YzNhYiAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHAKQEAgLTI1MCw2ICsyNTAsOSBAQCB2b2lkIFRlc3RJ
bnZvY2F0aW9uOjpmb3JjZVJlcGFpbnREb25lQ2FsbGJhY2soV0tFcnJvclJlZiBlcnJvciwgdm9p
ZCogY29udGV4dCkKIAogdm9pZCBUZXN0SW52b2NhdGlvbjo6ZHVtcFJlc3VsdHMoKQogeworICAg
IGlmIChtX3Nob3VsZER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKQorICAgICAgICBtX3RleHRP
dXRwdXQuYXBwZW5kKG1fc2F2ZWRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzLmlzRW1wdHkoKSA/IHRv
V1RGU3RyaW5nKFRlc3RDb250cm9sbGVyOjpzaW5nbGV0b24oKS5kdW1wUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcygpKSA6IG1fc2F2ZWRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKKwogICAgIGlmICht
X3RleHRPdXRwdXQubGVuZ3RoKCkgfHwgIW1fYXVkaW9SZXN1bHQpCiAgICAgICAgIGR1bXAobV90
ZXh0T3V0cHV0LnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAgICAgZWxzZQpAQCAtMTA2OSw2
ICsxMDcyLDE0IEBAIFdLUmV0YWluUHRyPFdLVHlwZVJlZj4gVGVzdEludm9jYXRpb246OmRpZFJl
Y2VpdmVTeW5jaHJvbm91c01lc3NhZ2VGcm9tSW5qZWN0ZWRCCiAgICAgICAgIHJldHVybiBudWxs
cHRyOwogICAgIH0KICAgICAKKyAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyht
ZXNzYWdlTmFtZSwgInNldER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzIikpIHsKKyAgICAgICAg
QVNTRVJUKFdLR2V0VHlwZUlEKG1lc3NhZ2VCb2R5KSA9PSBXS0Jvb2xlYW5HZXRUeXBlSUQoKSk7
CisKKyAgICAgICAgV0tCb29sZWFuUmVmIHNob3VsZER1bXAgPSBzdGF0aWNfY2FzdDxXS0Jvb2xl
YW5SZWY+KG1lc3NhZ2VCb2R5KTsKKyAgICAgICAgc2V0RHVtcFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3MoV0tCb29sZWFuR2V0VmFsdWUoc2hvdWxkRHVtcCkpOworICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICB9CisgICAgCiAgICAgaWYgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcobWVz
c2FnZU5hbWUsICJJc1N0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZSIpKSB7CiAgICAgICAgIEFT
U0VSVChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tTdHJpbmdHZXRUeXBlSUQoKSk7CiAK
QEAgLTEzNTEsNiArMTM2Miw4IEBAIFdLUmV0YWluUHRyPFdLVHlwZVJlZj4gVGVzdEludm9jYXRp
b246OmRpZFJlY2VpdmVTeW5jaHJvbm91c01lc3NhZ2VGcm9tSW5qZWN0ZWRCCiAgICAgfQogICAg
IAogICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAiU3Rh
dGlzdGljc1Jlc2V0VG9Db25zaXN0ZW50U3RhdGUiKSkgeworICAgICAgICBpZiAobV9zaG91bGRE
dW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljcykKKyAgICAgICAgICAgIG1fc2F2ZWRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzID0gdG9XVEZTdHJpbmcoVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLmR1
bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpOwogICAgICAgICBUZXN0Q29udHJvbGxlcjo6c2lu
Z2xldG9uKCkuc3RhdGlzdGljc1Jlc2V0VG9Db25zaXN0ZW50U3RhdGUoKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgfQpAQCAtMTU3OSw1ICsxNTkyLDEwIEBAIHZvaWQgVGVzdEludm9j
YXRpb246OmRpZFJlbW92ZUFsbFNlc3Npb25DcmVkZW50aWFscygpCiAgICAgV0tSZXRhaW5QdHI8
V0tTdHJpbmdSZWY+IG1lc3NhZ2VOYW1lID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4
Q1N0cmluZygiQ2FsbERpZFJlbW92ZUFsbFNlc3Npb25DcmVkZW50aWFsc0NhbGxiYWNrIikpOwog
ICAgIFdLUGFnZVBvc3RNZXNzYWdlVG9JbmplY3RlZEJ1bmRsZShUZXN0Q29udHJvbGxlcjo6c2lu
Z2xldG9uKCkubWFpbldlYlZpZXcoKS0+cGFnZSgpLCBtZXNzYWdlTmFtZS5nZXQoKSwgMCk7CiB9
CisgICAgCit2b2lkIFRlc3RJbnZvY2F0aW9uOjpzZXREdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cyhib29sIHNob3VsZER1bXApCit7CisgICAgbV9zaG91bGREdW1wUmVzb3VyY2VMb2FkU3RhdGlz
dGljcyA9IHNob3VsZER1bXA7Cit9CiAKIH0gLy8gbmFtZXNwYWNlIFdUUgpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5oIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0SW52b2NhdGlvbi5oCmluZGV4IDNjMDUwZWRhZGIxY2VmZGE5NjJhNWM0NzMx
OWI4ZjExYmNkMjZhZjMuLjczZDZjYjI0MDBjOTZjOGQ5MjNmMjRjNzYzZTM4YjdjYzEyYTRjNDkg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uaAorKysg
Yi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmgKQEAgLTgzLDYgKzgzLDgg
QEAgcHVibGljOgogCiAgICAgdm9pZCBkaWRSZW1vdmVBbGxTZXNzaW9uQ3JlZGVudGlhbHMoKTsK
ICAgICAKKyAgICB2b2lkIHNldER1bXBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKGJvb2wgc2hvdWxk
RHVtcCk7CisgICAgCiBwcml2YXRlOgogICAgIFdLUmV0YWluUHRyPFdLTXV0YWJsZURpY3Rpb25h
cnlSZWY+IGNyZWF0ZVRlc3RTZXR0aW5nc0RpY3Rpb25hcnkoKTsKIApAQCAtMTI5LDkgKzEzMSwx
MSBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzIHsgZmFsc2Ug
fTsKICAgICBib29sIG1fZHVtcFBpeGVscyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3BpeGVsUmVz
dWx0SXNQZW5kaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fc2hvdWxkRHVtcFJlc291cmNlTG9h
ZFN0YXRpc3RpY3MgeyBmYWxzZSB9OwogICAgIFdoYXRUb0R1bXAgbV93aGF0VG9EdW1wIHsgV2hh
dFRvRHVtcDo6UmVuZGVyVHJlZSB9OwogCiAgICAgU3RyaW5nQnVpbGRlciBtX3RleHRPdXRwdXQ7
CisgICAgU3RyaW5nIG1fc2F2ZWRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzOwogICAgIFdLUmV0YWlu
UHRyPFdLRGF0YVJlZj4gbV9hdWRpb1Jlc3VsdDsKICAgICBXS1JldGFpblB0cjxXS0ltYWdlUmVm
PiBtX3BpeGVsUmVzdWx0OwogICAgIFdLUmV0YWluUHRyPFdLQXJyYXlSZWY+IG1fcmVwYWludFJl
Y3RzOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348691</attachid>
            <date>2018-08-31 17:43:01 -0700</date>
            <delta_ts>2018-09-04 09:38:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189216-20180831174300.patch</filename>
            <type>text/plain</type>
            <size>9069</size>
            <attacher name="Woodrow Wang">wwang153</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDZhNTZmYTliMDQ5ZDkw
NmQzZTEwYThmNGZhNjI4M2VlN2VkNmVlNS4uNGI4Y2JjMDcwYWMyYmYwNTk4OGM5ZTMwMWMwNGIy
MDA5MzE2NWM5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwxMSArMSwzMSBAQAogMjAxOC0wOC0zMSAgV29v
ZHJvdyBXYW5nICA8d29vZHJvd193YW5nQGFwcGxlLmNvbT4KIAotICAgICAgICBBZGRlZCBkdW1w
aW5nIGZ1bmN0aW9uIGZvciB0ZXN0aW5nIHJlc291cmNlIGxvYWQgc3RhdGlzdGljcwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5MjEzCisgICAgICAg
IEFkZGVkIGZ1bmN0aW9uYWxpdHkgdG8gZW5jb2RlIGFuZCBkZWNvZGUgYSB1aW50NjRfdCBpbiBL
ZXllZENvZGluZy4gCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODkyMTYKIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAotICAg
ICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzLmg6CisgICAgICAgICogcGxhdGZv
cm0vS2V5ZWRDb2RpbmcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpLZXllZERlY29kZXJDRjo6ZGVjb2RlVUludDY0KToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2NmL0tleWVkRW5jb2RlckNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWVkRW5jb2RlckNG
OjplbmNvZGVVSW50NjQpOgorICAgICAgICAqIHBsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmg6
CisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OktleWVkRGVjb2RlckdsaWI6OmRlY29kZVVJbnQ2NCk6CisgICAgICAgICogcGxh
dGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmg6CisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9L
ZXllZEVuY29kZXJHbGliLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWVkRW5jb2RlckdsaWI6
OmVuY29kZVVJbnQ2NCk6CisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJHbGli
Lmg6CisKKzIwMTgtMDgtMzEgIFdvb2Ryb3cgV2FuZyAgPHdvb2Ryb3dfd2FuZ0BhcHBsZS5jb20+
CisgICAgICAgICBBZGRlZCBkdW1waW5nIGZ1bmN0aW9uIGZvciB0ZXN0aW5nIHJlc291cmNlIGxv
YWQgc3RhdGlzdGljcworICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4OTIxMworIAorICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisg
CisgICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzLmg6CiAKIDIwMTgtMDgt
MzEgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vS2V5ZWRDb2RpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0tleWVkQ29kaW5nLmgKaW5kZXggNWU5ZTk1OTMyNWY4ODU3Y2EyYTRjYWYwMmQ2M2NjOThhZDlm
MDU1Mi4uMjFkNGNlZjc5NTUxNjM5NjMzNWEzMDUyYzc2NjcwYzQ3NjFmZWNiOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vS2V5ZWRDb2RpbmcuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9LZXllZENvZGluZy5oCkBAIC00Miw2ICs0Miw3IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIGJvb2wgZGVjb2RlQnl0ZXMoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IHVpbnQ4
X3QqJiwgc2l6ZV90JikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkZWNvZGVCb29sKGNvbnN0IFN0
cmluZyYga2V5LCBib29sJikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkZWNvZGVVSW50MzIoY29u
c3QgU3RyaW5nJiBrZXksIHVpbnQzMl90JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBkZWNvZGVV
SW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90JikgPSAwOwogICAgIHZpcnR1YWwgYm9v
bCBkZWNvZGVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgaW50MzJfdCYpID0gMDsKICAgICB2aXJ0
dWFsIGJvb2wgZGVjb2RlSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIGludDY0X3QmKSA9IDA7CiAg
ICAgdmlydHVhbCBib29sIGRlY29kZUZsb2F0KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCYpID0g
MDsKQEAgLTE1MCw2ICsxNTEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUJ5
dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90Kiwgc2l6ZV90KSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIGVuY29kZUJvb2woY29uc3QgU3RyaW5nJiBrZXksIGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgZW5jb2RlVUludDMyKGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCkg
PSAwOworICAgIHZpcnR1YWwgdm9pZCBlbmNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVp
bnQ2NF90KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUludDMyKGNvbnN0IFN0cmluZyYg
a2V5LCBpbnQzMl90KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUludDY0KGNvbnN0IFN0
cmluZyYga2V5LCBpbnQ2NF90KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUZsb2F0KGNv
bnN0IFN0cmluZyYga2V5LCBmbG9hdCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y2YvS2V5ZWREZWNvZGVyQ0YuY3BwCmluZGV4IDA1NjkwMzFlNTE0Zjc5MGExOGE5OTI5NDAxN2Uz
MmVlMDhjNDA0OTEuLmI5ODAzYmZhMDIzMjQzNTdjMGRmZTA0NzMxM2QyYzNlYzMwNGNiOTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5jcHAKQEAgLTgx
LDYgKzgxLDExIEBAIGJvb2wgS2V5ZWREZWNvZGVyQ0Y6OmRlY29kZVVJbnQzMihjb25zdCBTdHJp
bmcmIGtleSwgdWludDMyX3QmIHJlc3VsdCkKIHsKICAgICByZXR1cm4gZGVjb2RlSW50MzIoa2V5
LCByZWludGVycHJldF9jYXN0PGludDMyX3QmPihyZXN1bHQpKTsKIH0KKyAgICAKK2Jvb2wgS2V5
ZWREZWNvZGVyQ0Y6OmRlY29kZVVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3QmIHJl
c3VsdCkKK3sKKyAgICByZXR1cm4gZGVjb2RlSW50NjQoa2V5LCByZWludGVycHJldF9jYXN0PGlu
dDY0X3QmPihyZXN1bHQpKTsKK30KIAogYm9vbCBLZXllZERlY29kZXJDRjo6ZGVjb2RlSW50MzIo
Y29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QmIHJlc3VsdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5oCmluZGV4IDU3NjYyMmViY2VhMmQ1OWJlYzg5ZDNk
N2YyNGU5ZDMwM2QxYmY1YTguLjJmY2EyMjA5ZmRjYTE5MjQ3NGE4NTllODhlOWU0MmE2MTJhNDgz
YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNG
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuaApAQCAt
NDEsNiArNDEsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgZGVjb2RlQnl0ZXMoY29uc3QgU3RyaW5n
JiBrZXksIGNvbnN0IHVpbnQ4X3QqJiwgc2l6ZV90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNv
ZGVCb29sKGNvbnN0IFN0cmluZyYga2V5LCBib29sJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNv
ZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90Jikgb3ZlcnJpZGU7CisgICAgYm9v
bCBkZWNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90Jikgb3ZlcnJpZGU7CiAg
ICAgYm9vbCBkZWNvZGVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgaW50MzJfdCYpIG92ZXJyaWRl
OwogICAgIGJvb2wgZGVjb2RlSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIGludDY0X3QmKSBvdmVy
cmlkZTsKICAgICBib29sIGRlY29kZUZsb2F0KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCYpIG92
ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNv
ZGVyQ0YuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNvZGVyQ0YuY3Bw
CmluZGV4IGQwZjBjOWUyNGFjZDU3NWRiY2EzOTUxMWYzZTM3MThiOGY2MDE1MDAuLjFhNjI3ZWEw
MGI5MmNiYWE2Y2Y3YzM1NWQ1ZTQ0NWVjNDg2MWE0MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jZi9LZXllZEVuY29kZXJDRi5jcHAKQEAgLTcxLDYgKzcxLDEyIEBAIHZvaWQgS2V5
ZWRFbmNvZGVyQ0Y6OmVuY29kZVVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgdWludDMyX3QgdmFs
dWUpCiAgICAgYXV0byBudW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRv
ckRlZmF1bHQsIGtDRk51bWJlclNJbnQzMlR5cGUsICZ2YWx1ZSkpOwogICAgIENGRGljdGlvbmFy
eVNldFZhbHVlKG1fZGljdGlvbmFyeVN0YWNrLmxhc3QoKSwga2V5LmNyZWF0ZUNGU3RyaW5nKCku
Z2V0KCksIG51bWJlci5nZXQoKSk7CiB9CisgICAgCit2b2lkIEtleWVkRW5jb2RlckNGOjplbmNv
ZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90IHZhbHVlKQoreworICAgIGF1dG8g
bnVtYmVyID0gYWRvcHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZO
dW1iZXJTSW50NjRUeXBlLCAmdmFsdWUpKTsKKyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShtX2Rp
Y3Rpb25hcnlTdGFjay5sYXN0KCksIGtleS5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBudW1iZXIu
Z2V0KCkpOworfQogCiB2b2lkIEtleWVkRW5jb2RlckNGOjplbmNvZGVJbnQzMihjb25zdCBTdHJp
bmcmIGtleSwgaW50MzJfdCB2YWx1ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9L
ZXllZEVuY29kZXJDRi5oCmluZGV4IDgyYjZiNjE1Njg3N2UwNDNjYzYxZDgzNmJhYTkyYTRiMmM0
NzEyNWIuLmY1ODZjMDJiYjE1YmYzOWI3MjgzZmJhOWFhNWU4YTEyNmI4NGZlZmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNvZGVyQ0YuaApAQCAtNDIsNiArNDIsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgZW5jb2RlQnl0ZXMoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0
IHVpbnQ4X3QqLCBzaXplX3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlQm9vbChjb25zdCBTdHJp
bmcmIGtleSwgYm9vbCkgZmluYWw7CiAgICAgdm9pZCBlbmNvZGVVSW50MzIoY29uc3QgU3RyaW5n
JiBrZXksIHVpbnQzMl90KSBmaW5hbDsKKyAgICB2b2lkIGVuY29kZVVJbnQ2NChjb25zdCBTdHJp
bmcmIGtleSwgdWludDY0X3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50MzIoY29uc3QgU3Ry
aW5nJiBrZXksIGludDMyX3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50NjQoY29uc3QgU3Ry
aW5nJiBrZXksIGludDY0X3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlRmxvYXQoY29uc3QgU3Ry
aW5nJiBrZXksIGZsb2F0KSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
bGliL0tleWVkRGVjb2RlckdsaWIuY3BwCmluZGV4IDU1MTA5MGUwMjAxOGI4ZjI5YzA3MjllNTkz
YzUzODg4OTI1MjM3NDMuLmVjODE3YmIyY2I2ZGJiN2JhOWViYTI4ZDYwYmM4MmZjMzg0MDBkZTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xp
Yi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGli
LmNwcApAQCAtOTMsNiArOTMsMTEgQEAgYm9vbCBLZXllZERlY29kZXJHbGliOjpkZWNvZGVVSW50
MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90JiByZXN1bHQpCiAgICAgcmV0dXJuIGRlY29k
ZVNpbXBsZVZhbHVlKGtleSwgcmVzdWx0LCBnX3ZhcmlhbnRfZ2V0X3VpbnQzMik7CiB9CiAKK2Jv
b2wgS2V5ZWREZWNvZGVyR2xpYjo6ZGVjb2RlVUludDY0KGNvbnN0IFN0cmluZyYga2V5LCB1aW50
NjRfdCYgcmVzdWx0KQoreworICAgIHJldHVybiBkZWNvZGVTaW1wbGVWYWx1ZShrZXksIHJlc3Vs
dCwgZ192YXJpYW50X2dldF91aW50NjQpOworfQorCiBib29sIEtleWVkRGVjb2RlckdsaWI6OmRl
Y29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQzMl90JiByZXN1bHQpCiB7CiAgICAgcmV0
dXJuIGRlY29kZVNpbXBsZVZhbHVlKGtleSwgcmVzdWx0LCBnX3ZhcmlhbnRfZ2V0X2ludDMyKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xp
Yi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmgKaW5k
ZXggYWVlMzY5MmNhYjc1MTAxNzFjYTlmMjExMzY5ZTI2MWFlYTAzMzg1Yi4uYmY3OWMwNzE4ZTlh
YTI4ZWY5MTA2M2UyOGQ5MzNiYTNmNzY4ZWJmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmgKQEAgLTQ0LDYgKzQ0LDcgQEAgcHJpdmF0ZToK
ICAgICBib29sIGRlY29kZUJ5dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90KiYs
IHNpemVfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlQm9vbChjb25zdCBTdHJpbmcmIGtl
eSwgYm9vbCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlVUludDMyKGNvbnN0IFN0cmluZyYg
a2V5LCB1aW50MzJfdCYpIG92ZXJyaWRlOworICAgIGJvb2wgZGVjb2RlVUludDY0KGNvbnN0IFN0
cmluZyYga2V5LCB1aW50NjRfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlSW50MzIoY29u
c3QgU3RyaW5nJiBrZXksIGludDMyX3QmKSBvdmVycmlkZTsKICAgICBib29sIGRlY29kZUludDY0
KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVG
bG9hdChjb25zdCBTdHJpbmcmIGtleSwgZmxvYXQmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVyR2xpYi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIuY3BwCmluZGV4IDgxY2JlZDUz
ZDExNWU0NGYxMzRjMTIyNmQ2MzQ2MmM1OThlNDQ5MjguLjlkMTgyZmFlOTE3ZGNmMjQ3ZGRmZDc2
NGU3ZDZjZWZkZGQ1ZTM4NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ds
aWIvS2V5ZWRFbmNvZGVyR2xpYi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xp
Yi9LZXllZEVuY29kZXJHbGliLmNwcApAQCAtNjUsNiArNjUsMTEgQEAgdm9pZCBLZXllZEVuY29k
ZXJHbGliOjplbmNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90IHZhbHVlKQog
ewogICAgIGdfdmFyaWFudF9idWlsZGVyX2FkZChtX3ZhcmlhbnRCdWlsZGVyU3RhY2subGFzdCgp
LCAie3N2fSIsIGtleS51dGY4KCkuZGF0YSgpLCBnX3ZhcmlhbnRfbmV3X3VpbnQzMih2YWx1ZSkp
OwogfQorICAgIAordm9pZCBLZXllZEVuY29kZXJHbGliOjplbmNvZGVVSW50NjQoY29uc3QgU3Ry
aW5nJiBrZXksIHVpbnQ2NF90IHZhbHVlKQoreworICAgIGdfdmFyaWFudF9idWlsZGVyX2FkZCht
X3ZhcmlhbnRCdWlsZGVyU3RhY2subGFzdCgpLCAie3N2fSIsIGtleS51dGY4KCkuZGF0YSgpLCBn
X3ZhcmlhbnRfbmV3X3VpbnQ2NCh2YWx1ZSkpOworfQogCiB2b2lkIEtleWVkRW5jb2RlckdsaWI6
OmVuY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQzMl90IHZhbHVlKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJHbGliLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIuaAppbmRleCBmOTFi
NGRkYjMzMTVmNjZlYzRlMGMxOWZkMjcwNjczYjZjNDc1ZTc5Li5lNTY0MmJjZjY3MGNlMjU5OWZj
MDRkZjcyOWUyYjRjMWY4MjExZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9nbGliL0tleWVkRW5jb2RlckdsaWIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
bGliL0tleWVkRW5jb2RlckdsaWIuaApAQCAtNDQsNiArNDQsNyBAQCBwcml2YXRlOgogICAgIHZv
aWQgZW5jb2RlQnl0ZXMoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IHVpbnQ4X3QqLCBzaXplX3Qp
IGZpbmFsOwogICAgIHZvaWQgZW5jb2RlQm9vbChjb25zdCBTdHJpbmcmIGtleSwgYm9vbCkgZmlu
YWw7CiAgICAgdm9pZCBlbmNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90KSBm
aW5hbDsKKyAgICB2b2lkIGVuY29kZVVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3Qp
IGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3Qp
IGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIGludDY0X3Qp
IGZpbmFsOwogICAgIHZvaWQgZW5jb2RlRmxvYXQoY29uc3QgU3RyaW5nJiBrZXksIGZsb2F0KSBm
aW5hbDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348819</attachid>
            <date>2018-09-04 09:39:01 -0700</date>
            <delta_ts>2018-09-04 15:47:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189216-20180904093900.patch</filename>
            <type>text/plain</type>
            <size>9106</size>
            <attacher name="Woodrow Wang">wwang153</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDZhNTZmYTliMDQ5ZDkw
NmQzZTEwYThmNGZhNjI4M2VlN2VkNmVlNS4uMTY4ZTg1YmRlMGZiZmI3MTdjMjZhM2E1ZGNhYjhi
YTgyOWYxNjJmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE4LTA5LTA0ICBXb29k
cm93IFdhbmcgIDx3b29kcm93X3dhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEFkZGVkIGZ1bmN0
aW9uYWxpdHkgdG8gZW5jb2RlIGFuZCBkZWNvZGUgYSB1aW50NjRfdCBpbiBLZXllZENvZGluZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5MjE2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJhdGVzLgorCisgICAgICAgIEkndmUgYWRkZWQg
dGhpcyBmdW5jdGlvbmFsaXR5IGluIG9yZGVyIHRvIGJlIGFibGUgdG8gZW5jb2RlIGFuZCBkZWNv
ZGUgdGhlIHJhdyB1aW50NjRfdCAKKyAgICAgICAgcmVwcmVzZW50YXRpb24gb2YgYW4gT3B0aW9u
U2V0IGZvciBteSBwYXRjaCBoZXJlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODc3NzMgCisKKyAgICAgICAgVGhlIGNoYW5nZXMgaW4gdGhlIEtleWVkRW5jb2Rlci9L
ZXllZERlY29kZXIgZm9yIEdsaWIgd2VyZSBtYWRlIGJlY2F1c2UgdGhleSBhcmUgZGVyaXZlZCBj
bGFzc2VzCisgICAgICAgIG9mIEtleWVkQ29kaW5nIHdoaWNoIGNvbnRhaW5zIHB1cmUgdmlydHVh
bCBmdW5jdGlvbnMgdGhhdCBuZWVkIHRvIGJlIGltcGxlbWVudGVkLgorCisgICAgICAgICogcGxh
dGZvcm0vS2V5ZWRDb2RpbmcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jZi9LZXllZERlY29kZXJD
Ri5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXllZERlY29kZXJDRjo6ZGVjb2RlVUludDY0KToK
KyAgICAgICAgKiBwbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5oOgorICAgICAgICAqIHBsYXRm
b3JtL2NmL0tleWVkRW5jb2RlckNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWVkRW5jb2Rl
ckNGOjplbmNvZGVVSW50NjQpOgorICAgICAgICAqIHBsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNG
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OktleWVkRGVjb2RlckdsaWI6OmRlY29kZVVJbnQ2NCk6CisgICAgICAgICog
cGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmg6CisgICAgICAgICogcGxhdGZvcm0vZ2xp
Yi9LZXllZEVuY29kZXJHbGliLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWVkRW5jb2Rlckds
aWI6OmVuY29kZVVJbnQ2NCk6CisgICAgICAgICogcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJH
bGliLmg6CisKIDIwMTgtMDgtMzEgIFdvb2Ryb3cgV2FuZyAgPHdvb2Ryb3dfd2FuZ0BhcHBsZS5j
b20+CiAKICAgICAgICAgQWRkZWQgZHVtcGluZyBmdW5jdGlvbiBmb3IgdGVzdGluZyByZXNvdXJj
ZSBsb2FkIHN0YXRpc3RpY3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0tl
eWVkQ29kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9LZXllZENvZGluZy5oCmluZGV4
IDVlOWU5NTkzMjVmODg1N2NhMmE0Y2FmMDJkNjNjYzk4YWQ5ZjA1NTIuLjIxZDRjZWY3OTU1MTYz
OTYzMzVhMzA1MmM3NjY3MGM0NzYxZmVjYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL0tleWVkQ29kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vS2V5ZWRD
b2RpbmcuaApAQCAtNDIsNiArNDIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGRlY29k
ZUJ5dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90KiYsIHNpemVfdCYpID0gMDsK
ICAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlQm9vbChjb25zdCBTdHJpbmcmIGtleSwgYm9vbCYpID0g
MDsKICAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlVUludDMyKGNvbnN0IFN0cmluZyYga2V5LCB1aW50
MzJfdCYpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlVUludDY0KGNvbnN0IFN0cmluZyYg
a2V5LCB1aW50NjRfdCYpID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlSW50MzIoY29uc3Qg
U3RyaW5nJiBrZXksIGludDMyX3QmKSA9IDA7CiAgICAgdmlydHVhbCBib29sIGRlY29kZUludDY0
KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90JikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkZWNv
ZGVGbG9hdChjb25zdCBTdHJpbmcmIGtleSwgZmxvYXQmKSA9IDA7CkBAIC0xNTAsNiArMTUxLDcg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBlbmNvZGVCeXRlcyhjb25zdCBTdHJpbmcmIGtl
eSwgY29uc3QgdWludDhfdCosIHNpemVfdCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBlbmNvZGVC
b29sKGNvbnN0IFN0cmluZyYga2V5LCBib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVuY29k
ZVVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgdWludDMyX3QpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgZW5jb2RlVUludDY0KGNvbnN0IFN0cmluZyYga2V5LCB1aW50NjRfdCkgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBlbmNvZGVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgaW50MzJfdCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBlbmNvZGVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgaW50NjRfdCkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBlbmNvZGVGbG9hdChjb25zdCBTdHJpbmcmIGtleSwgZmxv
YXQpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRGVj
b2RlckNGLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmNw
cAppbmRleCAwNTY5MDMxZTUxNGY3OTBhMThhOTkyOTQwMTdlMzJlZTA4YzQwNDkxLi5iOTgwM2Jm
YTAyMzI0MzU3YzBkZmUwNDczMTNkMmMzZWMzMDRjYjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuY3BwCkBAIC04MSw2ICs4MSwxMSBAQCBib29sIEtl
eWVkRGVjb2RlckNGOjpkZWNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90JiBy
ZXN1bHQpCiB7CiAgICAgcmV0dXJuIGRlY29kZUludDMyKGtleSwgcmVpbnRlcnByZXRfY2FzdDxp
bnQzMl90Jj4ocmVzdWx0KSk7CiB9CisgICAgCitib29sIEtleWVkRGVjb2RlckNGOjpkZWNvZGVV
SW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90JiByZXN1bHQpCit7CisgICAgcmV0dXJu
IGRlY29kZUludDY0KGtleSwgcmVpbnRlcnByZXRfY2FzdDxpbnQ2NF90Jj4ocmVzdWx0KSk7Cit9
CiAKIGJvb2wgS2V5ZWREZWNvZGVyQ0Y6OmRlY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBp
bnQzMl90JiByZXN1bHQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
Zi9LZXllZERlY29kZXJDRi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWREZWNv
ZGVyQ0YuaAppbmRleCA1NzY2MjJlYmNlYTJkNTliZWM4OWQzZDdmMjRlOWQzMDNkMWJmNWE4Li4y
ZmNhMjIwOWZkY2ExOTI0NzRhODU5ZTg4ZTllNDJhNjEyYTQ4M2I4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmgKQEAgLTQxLDYgKzQxLDcgQEAgcHJpdmF0
ZToKICAgICBib29sIGRlY29kZUJ5dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90
KiYsIHNpemVfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlQm9vbChjb25zdCBTdHJpbmcm
IGtleSwgYm9vbCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlVUludDMyKGNvbnN0IFN0cmlu
ZyYga2V5LCB1aW50MzJfdCYpIG92ZXJyaWRlOworICAgIGJvb2wgZGVjb2RlVUludDY0KGNvbnN0
IFN0cmluZyYga2V5LCB1aW50NjRfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlSW50MzIo
Y29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QmKSBvdmVycmlkZTsKICAgICBib29sIGRlY29kZUlu
dDY0KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNv
ZGVGbG9hdChjb25zdCBTdHJpbmcmIGtleSwgZmxvYXQmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmNwcAppbmRleCBkMGYwYzllMjRhY2Q1
NzVkYmNhMzk1MTFmM2UzNzE4YjhmNjAxNTAwLi4xYTYyN2VhMDBiOTJjYmFhNmNmN2MzNTVkNWU0
NDVlYzQ4NjFhNDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXll
ZEVuY29kZXJDRi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNv
ZGVyQ0YuY3BwCkBAIC03MSw2ICs3MSwxMiBAQCB2b2lkIEtleWVkRW5jb2RlckNGOjplbmNvZGVV
SW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90IHZhbHVlKQogICAgIGF1dG8gbnVtYmVy
ID0gYWRvcHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZOdW1iZXJT
SW50MzJUeXBlLCAmdmFsdWUpKTsKICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShtX2RpY3Rpb25h
cnlTdGFjay5sYXN0KCksIGtleS5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBudW1iZXIuZ2V0KCkp
OwogfQorICAgIAordm9pZCBLZXllZEVuY29kZXJDRjo6ZW5jb2RlVUludDY0KGNvbnN0IFN0cmlu
ZyYga2V5LCB1aW50NjRfdCB2YWx1ZSkKK3sKKyAgICBhdXRvIG51bWJlciA9IGFkb3B0Q0YoQ0ZO
dW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0NGTnVtYmVyU0ludDY0VHlwZSwgJnZh
bHVlKSk7CisgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUobV9kaWN0aW9uYXJ5U3RhY2subGFzdCgp
LCBrZXkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSwgbnVtYmVyLmdldCgpKTsKK30KIAogdm9pZCBL
ZXllZEVuY29kZXJDRjo6ZW5jb2RlSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QgdmFs
dWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZEVuY29k
ZXJDRi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNvZGVyQ0YuaAppbmRl
eCA4MmI2YjYxNTY4NzdlMDQzY2M2MWQ4MzZiYWE5MmE0YjJjNDcxMjViLi5mNTg2YzAyYmIxNWJm
MzliNzI4M2ZiYTlhYTVlOGExMjZiODRmZWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jZi9LZXllZEVuY29kZXJDRi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NmL0tleWVkRW5jb2RlckNGLmgKQEAgLTQyLDYgKzQyLDcgQEAgcHJpdmF0ZToKICAgICB2b2lk
IGVuY29kZUJ5dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90Kiwgc2l6ZV90KSBm
aW5hbDsKICAgICB2b2lkIGVuY29kZUJvb2woY29uc3QgU3RyaW5nJiBrZXksIGJvb2wpIGZpbmFs
OwogICAgIHZvaWQgZW5jb2RlVUludDMyKGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCkgZmlu
YWw7CisgICAgdm9pZCBlbmNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90KSBm
aW5hbDsKICAgICB2b2lkIGVuY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQzMl90KSBm
aW5hbDsKICAgICB2b2lkIGVuY29kZUludDY0KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90KSBm
aW5hbDsKICAgICB2b2lkIGVuY29kZUZsb2F0KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCkgZmlu
YWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRGVjb2Rl
ckdsaWIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGli
LmNwcAppbmRleCA1NTEwOTBlMDIwMThiOGYyOWMwNzI5ZTU5M2M1Mzg4ODkyNTIzNzQzLi5lYzgx
N2JiMmNiNmRiYjdiYTllYmEyOGQ2MGJjODJmYzM4NDAwZGU3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRGVjb2RlckdsaWIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5jcHAKQEAgLTkzLDYgKzkzLDEx
IEBAIGJvb2wgS2V5ZWREZWNvZGVyR2xpYjo6ZGVjb2RlVUludDMyKGNvbnN0IFN0cmluZyYga2V5
LCB1aW50MzJfdCYgcmVzdWx0KQogICAgIHJldHVybiBkZWNvZGVTaW1wbGVWYWx1ZShrZXksIHJl
c3VsdCwgZ192YXJpYW50X2dldF91aW50MzIpOwogfQogCitib29sIEtleWVkRGVjb2RlckdsaWI6
OmRlY29kZVVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3QmIHJlc3VsdCkKK3sKKyAg
ICByZXR1cm4gZGVjb2RlU2ltcGxlVmFsdWUoa2V5LCByZXN1bHQsIGdfdmFyaWFudF9nZXRfdWlu
dDY0KTsKK30KKwogYm9vbCBLZXllZERlY29kZXJHbGliOjpkZWNvZGVJbnQzMihjb25zdCBTdHJp
bmcmIGtleSwgaW50MzJfdCYgcmVzdWx0KQogewogICAgIHJldHVybiBkZWNvZGVTaW1wbGVWYWx1
ZShrZXksIHJlc3VsdCwgZ192YXJpYW50X2dldF9pbnQzMik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRGVjb2RlckdsaWIuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5oCmluZGV4IGFlZTM2OTJjYWI3NTEwMTcx
Y2E5ZjIxMTM2OWUyNjFhZWEwMzM4NWIuLmJmNzljMDcxOGU5YWEyOGVmOTEwNjNlMjhkOTMzYmEz
Zjc2OGViZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWRE
ZWNvZGVyR2xpYi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNv
ZGVyR2xpYi5oCkBAIC00NCw2ICs0NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBkZWNvZGVCeXRl
cyhjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgdWludDhfdComLCBzaXplX3QmKSBvdmVycmlkZTsK
ICAgICBib29sIGRlY29kZUJvb2woY29uc3QgU3RyaW5nJiBrZXksIGJvb2wmKSBvdmVycmlkZTsK
ICAgICBib29sIGRlY29kZVVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgdWludDMyX3QmKSBvdmVy
cmlkZTsKKyAgICBib29sIGRlY29kZVVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3Qm
KSBvdmVycmlkZTsKICAgICBib29sIGRlY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQz
Ml90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwg
aW50NjRfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlRmxvYXQoY29uc3QgU3RyaW5nJiBr
ZXksIGZsb2F0Jikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9nbGliL0tleWVkRW5jb2RlckdsaWIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xp
Yi9LZXllZEVuY29kZXJHbGliLmNwcAppbmRleCA4MWNiZWQ1M2QxMTVlNDRmMTM0YzEyMjZkNjM0
NjJjNTk4ZTQ0OTI4Li45ZDE4MmZhZTkxN2RjZjI0N2RkZmQ3NjRlN2Q2Y2VmZGRkNWUzODVhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVyR2xpYi5j
cHAKQEAgLTY1LDYgKzY1LDExIEBAIHZvaWQgS2V5ZWRFbmNvZGVyR2xpYjo6ZW5jb2RlVUludDMy
KGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCB2YWx1ZSkKIHsKICAgICBnX3ZhcmlhbnRfYnVp
bGRlcl9hZGQobV92YXJpYW50QnVpbGRlclN0YWNrLmxhc3QoKSwgIntzdn0iLCBrZXkudXRmOCgp
LmRhdGEoKSwgZ192YXJpYW50X25ld191aW50MzIodmFsdWUpKTsKIH0KKyAgICAKK3ZvaWQgS2V5
ZWRFbmNvZGVyR2xpYjo6ZW5jb2RlVUludDY0KGNvbnN0IFN0cmluZyYga2V5LCB1aW50NjRfdCB2
YWx1ZSkKK3sKKyAgICBnX3ZhcmlhbnRfYnVpbGRlcl9hZGQobV92YXJpYW50QnVpbGRlclN0YWNr
Lmxhc3QoKSwgIntzdn0iLCBrZXkudXRmOCgpLmRhdGEoKSwgZ192YXJpYW50X25ld191aW50NjQo
dmFsdWUpKTsKK30KIAogdm9pZCBLZXllZEVuY29kZXJHbGliOjplbmNvZGVJbnQzMihjb25zdCBT
dHJpbmcmIGtleSwgaW50MzJfdCB2YWx1ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVyR2xpYi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ2xpYi9LZXllZEVuY29kZXJHbGliLmgKaW5kZXggZjkxYjRkZGIzMzE1ZjY2ZWM0ZTBjMTlm
ZDI3MDY3M2I2YzQ3NWU3OS4uZTU2NDJiY2Y2NzBjZTI1OTlmYzA0ZGY3MjllMmI0YzFmODIxMWYy
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJH
bGliLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJHbGli
LmgKQEAgLTQ0LDYgKzQ0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGVuY29kZUJ5dGVzKGNvbnN0
IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90Kiwgc2l6ZV90KSBmaW5hbDsKICAgICB2b2lkIGVu
Y29kZUJvb2woY29uc3QgU3RyaW5nJiBrZXksIGJvb2wpIGZpbmFsOwogICAgIHZvaWQgZW5jb2Rl
VUludDMyKGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCkgZmluYWw7CisgICAgdm9pZCBlbmNv
ZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90KSBmaW5hbDsKICAgICB2b2lkIGVu
Y29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQzMl90KSBmaW5hbDsKICAgICB2b2lkIGVu
Y29kZUludDY0KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90KSBmaW5hbDsKICAgICB2b2lkIGVu
Y29kZUZsb2F0KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCkgZmluYWw7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348860</attachid>
            <date>2018-09-04 15:47:19 -0700</date>
            <delta_ts>2018-09-05 10:03:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189216-20180904154718.patch</filename>
            <type>text/plain</type>
            <size>9099</size>
            <attacher name="Woodrow Wang">wwang153</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDFkZDg4NmY2YjJkZjYw
ZmFjYWE2YmEzYzA3YzFmYTYzMjBiZjQ0Ny4uMTM2N2UxNmZiNGIyYTY0ZWEwYTczZDU0ZGFmMWM2
OGZjMzExYThjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE4LTA5LTA0ICBXb29k
cm93IFdhbmcgIDx3b29kcm93X3dhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBmdW5jdGlv
bmFsaXR5IHRvIGVuY29kZSBhbmQgZGVjb2RlIGEgdWludDY0X3QgaW4gS2V5ZWRDb2RpbmcKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTIxNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IERhbmllbCBCYXRlcy4KKworICAgICAgICBJJ3ZlIGFkZGVkIHRo
aXMgZnVuY3Rpb25hbGl0eSBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGVuY29kZSBhbmQgZGVjb2Rl
IHRoZSByYXcgdWludDY0X3QgCisgICAgICAgIHJlcHJlc2VudGF0aW9uIG9mIGFuIE9wdGlvblNl
dCBmb3IgbXkgcGF0Y2ggaGVyZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4Nzc3Mz4uIAorCisgICAgICAgIFRoZSBjaGFuZ2VzIGluIHRoZSBLZXllZEVuY29kZXIv
S2V5ZWREZWNvZGVyIGZvciBHbGliIHdlcmUgbWFkZSBiZWNhdXNlIHRoZXkgYXJlIGRlcml2ZWQg
Y2xhc3NlcworICAgICAgICBvZiBLZXllZENvZGluZyB3aGljaCBjb250YWlucyBwdXJlIHZpcnR1
YWwgZnVuY3Rpb25zIHRoYXQgbmVlZCB0byBiZSBpbXBsZW1lbnRlZC4KKworICAgICAgICAqIHBs
YXRmb3JtL0tleWVkQ29kaW5nLmg6CisgICAgICAgICogcGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVy
Q0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5ZWREZWNvZGVyQ0Y6OmRlY29kZVVJbnQ2NCk6
CisgICAgICAgICogcGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9jZi9LZXllZEVuY29kZXJDRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXllZEVuY29k
ZXJDRjo6ZW5jb2RlVUludDY0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9jZi9LZXllZEVuY29kZXJD
Ri5oOgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpLZXllZERlY29kZXJHbGliOjpkZWNvZGVVSW50NjQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5oOgorICAgICAgICAqIHBsYXRmb3JtL2ds
aWIvS2V5ZWRFbmNvZGVyR2xpYi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXllZEVuY29kZXJH
bGliOjplbmNvZGVVSW50NjQpOgorICAgICAgICAqIHBsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVy
R2xpYi5oOgorCiAyMDE4LTA4LTMxICBXb29kcm93IFdhbmcgIDx3b29kcm93X3dhbmdAYXBwbGUu
Y29tPgogCiAgICAgICAgIEFkZCBpbmZyYXN0cnVjdHVyZSB0byBkdW1wIHJlc291cmNlIGxvYWQg
c3RhdGlzdGljcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vS2V5ZWRDb2Rp
bmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0tleWVkQ29kaW5nLmgKaW5kZXggNWU5ZTk1
OTMyNWY4ODU3Y2EyYTRjYWYwMmQ2M2NjOThhZDlmMDU1Mi4uMjFkNGNlZjc5NTUxNjM5NjMzNWEz
MDUyYzc2NjcwYzQ3NjFmZWNiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
S2V5ZWRDb2RpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9LZXllZENvZGluZy5o
CkBAIC00Miw2ICs0Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlQnl0ZXMo
Y29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IHVpbnQ4X3QqJiwgc2l6ZV90JikgPSAwOwogICAgIHZp
cnR1YWwgYm9vbCBkZWNvZGVCb29sKGNvbnN0IFN0cmluZyYga2V5LCBib29sJikgPSAwOwogICAg
IHZpcnR1YWwgYm9vbCBkZWNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90Jikg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBkZWNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVp
bnQ2NF90JikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkZWNvZGVJbnQzMihjb25zdCBTdHJpbmcm
IGtleSwgaW50MzJfdCYpID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZGVjb2RlSW50NjQoY29uc3Qg
U3RyaW5nJiBrZXksIGludDY0X3QmKSA9IDA7CiAgICAgdmlydHVhbCBib29sIGRlY29kZUZsb2F0
KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCYpID0gMDsKQEAgLTE1MCw2ICsxNTEsNyBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUJ5dGVzKGNvbnN0IFN0cmluZyYga2V5LCBjb25z
dCB1aW50OF90Kiwgc2l6ZV90KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVuY29kZUJvb2woY29u
c3QgU3RyaW5nJiBrZXksIGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZW5jb2RlVUludDMy
KGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBlbmNv
ZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90KSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIGVuY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5LCBpbnQzMl90KSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIGVuY29kZUludDY0KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90KSA9IDA7CiAg
ICAgdmlydHVhbCB2b2lkIGVuY29kZUZsb2F0KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCkgPSAw
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0Yu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuY3BwCmluZGV4
IDA1NjkwMzFlNTE0Zjc5MGExOGE5OTI5NDAxN2UzMmVlMDhjNDA0OTEuLmI5ODAzYmZhMDIzMjQz
NTdjMGRmZTA0NzMxM2QyYzNlYzMwNGNiOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jZi9LZXllZERlY29kZXJDRi5jcHAKQEAgLTgxLDYgKzgxLDExIEBAIGJvb2wgS2V5ZWREZWNv
ZGVyQ0Y6OmRlY29kZVVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgdWludDMyX3QmIHJlc3VsdCkK
IHsKICAgICByZXR1cm4gZGVjb2RlSW50MzIoa2V5LCByZWludGVycHJldF9jYXN0PGludDMyX3Qm
PihyZXN1bHQpKTsKIH0KKyAgICAKK2Jvb2wgS2V5ZWREZWNvZGVyQ0Y6OmRlY29kZVVJbnQ2NChj
b25zdCBTdHJpbmcmIGtleSwgdWludDY0X3QmIHJlc3VsdCkKK3sKKyAgICByZXR1cm4gZGVjb2Rl
SW50NjQoa2V5LCByZWludGVycHJldF9jYXN0PGludDY0X3QmPihyZXN1bHQpKTsKK30KIAogYm9v
bCBLZXllZERlY29kZXJDRjo6ZGVjb2RlSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3Qm
IHJlc3VsdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVk
RGVjb2RlckNGLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZERlY29kZXJDRi5o
CmluZGV4IDU3NjYyMmViY2VhMmQ1OWJlYzg5ZDNkN2YyNGU5ZDMwM2QxYmY1YTguLjJmY2EyMjA5
ZmRjYTE5MjQ3NGE4NTllODhlOWU0MmE2MTJhNDgzYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NmL0tleWVkRGVjb2RlckNGLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY2YvS2V5ZWREZWNvZGVyQ0YuaApAQCAtNDEsNiArNDEsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgZGVjb2RlQnl0ZXMoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IHVpbnQ4X3QqJiwgc2l6
ZV90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVCb29sKGNvbnN0IFN0cmluZyYga2V5LCBi
b29sJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXks
IHVpbnQzMl90Jikgb3ZlcnJpZGU7CisgICAgYm9vbCBkZWNvZGVVSW50NjQoY29uc3QgU3RyaW5n
JiBrZXksIHVpbnQ2NF90Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVJbnQzMihjb25zdCBT
dHJpbmcmIGtleSwgaW50MzJfdCYpIG92ZXJyaWRlOwogICAgIGJvb2wgZGVjb2RlSW50NjQoY29u
c3QgU3RyaW5nJiBrZXksIGludDY0X3QmKSBvdmVycmlkZTsKICAgICBib29sIGRlY29kZUZsb2F0
KGNvbnN0IFN0cmluZyYga2V5LCBmbG9hdCYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5ZWRFbmNvZGVyQ0YuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY2YvS2V5ZWRFbmNvZGVyQ0YuY3BwCmluZGV4IGQwZjBjOWUyNGFjZDU3NWRiY2Ez
OTUxMWYzZTM3MThiOGY2MDE1MDAuLjFhNjI3ZWEwMGI5MmNiYWE2Y2Y3YzM1NWQ1ZTQ0NWVjNDg2
MWE0MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2Rl
ckNGLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZEVuY29kZXJDRi5j
cHAKQEAgLTcxLDYgKzcxLDEyIEBAIHZvaWQgS2V5ZWRFbmNvZGVyQ0Y6OmVuY29kZVVJbnQzMihj
b25zdCBTdHJpbmcmIGtleSwgdWludDMyX3QgdmFsdWUpCiAgICAgYXV0byBudW1iZXIgPSBhZG9w
dENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlclNJbnQzMlR5
cGUsICZ2YWx1ZSkpOwogICAgIENGRGljdGlvbmFyeVNldFZhbHVlKG1fZGljdGlvbmFyeVN0YWNr
Lmxhc3QoKSwga2V5LmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCksIG51bWJlci5nZXQoKSk7CiB9Cisg
ICAgCit2b2lkIEtleWVkRW5jb2RlckNGOjplbmNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXks
IHVpbnQ2NF90IHZhbHVlKQoreworICAgIGF1dG8gbnVtYmVyID0gYWRvcHRDRihDRk51bWJlckNy
ZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZOdW1iZXJTSW50NjRUeXBlLCAmdmFsdWUpKTsK
KyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShtX2RpY3Rpb25hcnlTdGFjay5sYXN0KCksIGtleS5j
cmVhdGVDRlN0cmluZygpLmdldCgpLCBudW1iZXIuZ2V0KCkpOworfQogCiB2b2lkIEtleWVkRW5j
b2RlckNGOjplbmNvZGVJbnQzMihjb25zdCBTdHJpbmcmIGtleSwgaW50MzJfdCB2YWx1ZSkKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0tleWVkRW5jb2RlckNGLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9LZXllZEVuY29kZXJDRi5oCmluZGV4IDgyYjZi
NjE1Njg3N2UwNDNjYzYxZDgzNmJhYTkyYTRiMmM0NzEyNWIuLmY1ODZjMDJiYjE1YmYzOWI3Mjgz
ZmJhOWFhNWU4YTEyNmI4NGZlZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NmL0tleWVkRW5jb2RlckNGLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvS2V5
ZWRFbmNvZGVyQ0YuaApAQCAtNDIsNiArNDIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZW5jb2Rl
Qnl0ZXMoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IHVpbnQ4X3QqLCBzaXplX3QpIGZpbmFsOwog
ICAgIHZvaWQgZW5jb2RlQm9vbChjb25zdCBTdHJpbmcmIGtleSwgYm9vbCkgZmluYWw7CiAgICAg
dm9pZCBlbmNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90KSBmaW5hbDsKKyAg
ICB2b2lkIGVuY29kZVVJbnQ2NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3QpIGZpbmFsOwog
ICAgIHZvaWQgZW5jb2RlSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QpIGZpbmFsOwog
ICAgIHZvaWQgZW5jb2RlSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIGludDY0X3QpIGZpbmFsOwog
ICAgIHZvaWQgZW5jb2RlRmxvYXQoY29uc3QgU3RyaW5nJiBrZXksIGZsb2F0KSBmaW5hbDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRGVjb2RlckdsaWIuY3BwCmlu
ZGV4IDU1MTA5MGUwMjAxOGI4ZjI5YzA3MjllNTkzYzUzODg4OTI1MjM3NDMuLmVjODE3YmIyY2I2
ZGJiN2JhOWViYTI4ZDYwYmM4MmZjMzg0MDBkZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmNwcApAQCAtOTMsNiArOTMsMTEgQEAgYm9v
bCBLZXllZERlY29kZXJHbGliOjpkZWNvZGVVSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQz
Ml90JiByZXN1bHQpCiAgICAgcmV0dXJuIGRlY29kZVNpbXBsZVZhbHVlKGtleSwgcmVzdWx0LCBn
X3ZhcmlhbnRfZ2V0X3VpbnQzMik7CiB9CiAKK2Jvb2wgS2V5ZWREZWNvZGVyR2xpYjo6ZGVjb2Rl
VUludDY0KGNvbnN0IFN0cmluZyYga2V5LCB1aW50NjRfdCYgcmVzdWx0KQoreworICAgIHJldHVy
biBkZWNvZGVTaW1wbGVWYWx1ZShrZXksIHJlc3VsdCwgZ192YXJpYW50X2dldF91aW50NjQpOwor
fQorCiBib29sIEtleWVkRGVjb2RlckdsaWI6OmRlY29kZUludDMyKGNvbnN0IFN0cmluZyYga2V5
LCBpbnQzMl90JiByZXN1bHQpCiB7CiAgICAgcmV0dXJuIGRlY29kZVNpbXBsZVZhbHVlKGtleSwg
cmVzdWx0LCBnX3ZhcmlhbnRfZ2V0X2ludDMyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dsaWIvS2V5ZWREZWNvZGVyR2xpYi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ2xpYi9LZXllZERlY29kZXJHbGliLmgKaW5kZXggYWVlMzY5MmNhYjc1MTAxNzFjYTlmMjEx
MzY5ZTI2MWFlYTAzMzg1Yi4uYmY3OWMwNzE4ZTlhYTI4ZWY5MTA2M2UyOGQ5MzNiYTNmNzY4ZWJm
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJH
bGliLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZERlY29kZXJHbGli
LmgKQEAgLTQ0LDYgKzQ0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIGRlY29kZUJ5dGVzKGNvbnN0
IFN0cmluZyYga2V5LCBjb25zdCB1aW50OF90KiYsIHNpemVfdCYpIG92ZXJyaWRlOwogICAgIGJv
b2wgZGVjb2RlQm9vbChjb25zdCBTdHJpbmcmIGtleSwgYm9vbCYpIG92ZXJyaWRlOwogICAgIGJv
b2wgZGVjb2RlVUludDMyKGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJfdCYpIG92ZXJyaWRlOwor
ICAgIGJvb2wgZGVjb2RlVUludDY0KGNvbnN0IFN0cmluZyYga2V5LCB1aW50NjRfdCYpIG92ZXJy
aWRlOwogICAgIGJvb2wgZGVjb2RlSW50MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QmKSBv
dmVycmlkZTsKICAgICBib29sIGRlY29kZUludDY0KGNvbnN0IFN0cmluZyYga2V5LCBpbnQ2NF90
Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBkZWNvZGVGbG9hdChjb25zdCBTdHJpbmcmIGtleSwgZmxv
YXQmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIv
S2V5ZWRFbmNvZGVyR2xpYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVk
RW5jb2RlckdsaWIuY3BwCmluZGV4IDgxY2JlZDUzZDExNWU0NGYxMzRjMTIyNmQ2MzQ2MmM1OThl
NDQ5MjguLjlkMTgyZmFlOTE3ZGNmMjQ3ZGRmZDc2NGU3ZDZjZWZkZGQ1ZTM4NWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVyR2xpYi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2xpYi9LZXllZEVuY29kZXJHbGliLmNwcApAQCAt
NjUsNiArNjUsMTEgQEAgdm9pZCBLZXllZEVuY29kZXJHbGliOjplbmNvZGVVSW50MzIoY29uc3Qg
U3RyaW5nJiBrZXksIHVpbnQzMl90IHZhbHVlKQogewogICAgIGdfdmFyaWFudF9idWlsZGVyX2Fk
ZChtX3ZhcmlhbnRCdWlsZGVyU3RhY2subGFzdCgpLCAie3N2fSIsIGtleS51dGY4KCkuZGF0YSgp
LCBnX3ZhcmlhbnRfbmV3X3VpbnQzMih2YWx1ZSkpOwogfQorICAgIAordm9pZCBLZXllZEVuY29k
ZXJHbGliOjplbmNvZGVVSW50NjQoY29uc3QgU3RyaW5nJiBrZXksIHVpbnQ2NF90IHZhbHVlKQor
eworICAgIGdfdmFyaWFudF9idWlsZGVyX2FkZChtX3ZhcmlhbnRCdWlsZGVyU3RhY2subGFzdCgp
LCAie3N2fSIsIGtleS51dGY4KCkuZGF0YSgpLCBnX3ZhcmlhbnRfbmV3X3VpbnQ2NCh2YWx1ZSkp
OworfQogCiB2b2lkIEtleWVkRW5jb2RlckdsaWI6OmVuY29kZUludDMyKGNvbnN0IFN0cmluZyYg
a2V5LCBpbnQzMl90IHZhbHVlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ2xpYi9LZXllZEVuY29kZXJHbGliLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGli
L0tleWVkRW5jb2RlckdsaWIuaAppbmRleCBmOTFiNGRkYjMzMTVmNjZlYzRlMGMxOWZkMjcwNjcz
YjZjNDc1ZTc5Li5lNTY0MmJjZjY3MGNlMjU5OWZjMDRkZjcyOWUyYjRjMWY4MjExZjJlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIuaApAQCAt
NDQsNiArNDQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZW5jb2RlQnl0ZXMoY29uc3QgU3RyaW5n
JiBrZXksIGNvbnN0IHVpbnQ4X3QqLCBzaXplX3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlQm9v
bChjb25zdCBTdHJpbmcmIGtleSwgYm9vbCkgZmluYWw7CiAgICAgdm9pZCBlbmNvZGVVSW50MzIo
Y29uc3QgU3RyaW5nJiBrZXksIHVpbnQzMl90KSBmaW5hbDsKKyAgICB2b2lkIGVuY29kZVVJbnQ2
NChjb25zdCBTdHJpbmcmIGtleSwgdWludDY0X3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50
MzIoY29uc3QgU3RyaW5nJiBrZXksIGludDMyX3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlSW50
NjQoY29uc3QgU3RyaW5nJiBrZXksIGludDY0X3QpIGZpbmFsOwogICAgIHZvaWQgZW5jb2RlRmxv
YXQoY29uc3QgU3RyaW5nJiBrZXksIGZsb2F0KSBmaW5hbDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>