<?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>165876</bug_id>
          
          <creation_ts>2016-12-14 15:10:16 -0800</creation_ts>
          <short_desc>[CSS Parser] Rename StyleKeyframe to StyleRuleKeyframe</short_desc>
          <delta_ts>2016-12-14 15:16:11 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1259927</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2016-12-14 15:10:16 -0800</bug_when>
    <thetext>[CSS Parser] Rename StyleKeyframe to StyleRuleKeyframe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259928</commentid>
    <comment_count>1</comment_count>
      <attachid>297134</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2016-12-14 15:11:15 -0800</bug_when>
    <thetext>Created attachment 297134
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259929</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2016-12-14 15:16:11 -0800</bug_when>
    <thetext>Landed in r209838.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>297134</attachid>
            <date>2016-12-14 15:11:15 -0800</date>
            <delta_ts>2016-12-14 15:14:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-165876-20161214171022.patch</filename>
            <type>text/plain</type>
            <size>21667</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwOTgzNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ4IEBACisyMDE2LTEyLTE0ICBEYXZlIEh5
YXR0ICA8aHlhdHRAYXBwbGUuY29tPgorCisgICAgICAgIFtDU1MgUGFyc2VyXSBSZW5hbWUgU3R5
bGVLZXlmcmFtZSB0byBTdHlsZVJ1bGVLZXlmcmFtZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1ODc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjc3MvQ1NTS2V5ZnJhbWVSdWxlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlUnVsZUtleWZyYW1lOjpTdHlsZVJ1bGVLZXlmcmFtZSk6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZVJ1bGVLZXlmcmFtZTo6flN0eWxlUnVsZUtleWZyYW1lKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlUnVsZUtleWZyYW1lOjptdXRhYmxlUHJvcGVydGllcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZVJ1bGVLZXlmcmFtZTo6a2V5VGV4dCk6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZVJ1bGVLZXlmcmFtZTo6c2V0S2V5VGV4dCk6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZVJ1bGVLZXlmcmFtZTo6Y3NzVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NLZXlm
cmFtZVJ1bGU6OkNTU0tleWZyYW1lUnVsZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUtleWZy
YW1lOjpTdHlsZUtleWZyYW1lKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlS2V5
ZnJhbWU6On5TdHlsZUtleWZyYW1lKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
S2V5ZnJhbWU6Om11dGFibGVQcm9wZXJ0aWVzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlS2V5ZnJhbWU6OmtleVRleHQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGVLZXlmcmFtZTo6c2V0S2V5VGV4dCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTdHls
ZUtleWZyYW1lOjpjc3NUZXh0KTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvQ1NTS2V5ZnJhbWVS
dWxlLmg6CisgICAgICAgICogY3NzL0NTU0tleWZyYW1lc1J1bGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVSdWxlS2V5ZnJhbWVzOjprZXlmcmFtZXMpOgorICAgICAgICAoV2ViQ29yZTo6
U3R5bGVSdWxlS2V5ZnJhbWVzOjpwYXJzZXJBcHBlbmRLZXlmcmFtZSk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZVJ1bGVLZXlmcmFtZXM6OndyYXBwZXJBcHBlbmRLZXlmcmFtZSk6CisgICAgICAg
IChXZWJDb3JlOjpDU1NLZXlmcmFtZXNSdWxlOjphcHBlbmRSdWxlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU0tleWZyYW1lc1J1bGU6Oml0ZW0pOgorICAgICAgICAqIGNzcy9DU1NLZXlmcmFtZXNS
dWxlLmg6CisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSZXNvbHZlcjo6c3R5bGVGb3JLZXlmcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZVJlc29sdmVyOjprZXlmcmFtZVN0eWxlc0ZvckFuaW1hdGlvbik6CisgICAgICAgICogY3Nz
L1N0eWxlUmVzb2x2ZXIuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVSdWxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlUnVsZUJhc2U6OmRlc3Ryb3kpOgorICAgICAgICAqIGNzcy9TdHlsZVJ1
bGUuaDoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXI6OnBhcnNlS2V5ZnJhbWVSdWxlKToKKyAgICAgICAgKiBjc3MvcGFyc2Vy
L0NTU1BhcnNlci5oOgorICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJJbXBsOjpwYXJzZURlZmVycmVkS2V5ZnJhbWVMaXN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckltcGw6OmNvbnN1bWVLZXlmcmFtZXNSdWxl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckltcGw6OmNvbnN1bWVLZXlmcmFtZVN0eWxl
UnVsZSk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQYXJzZXJJbXBsLmg6CisKIDIwMTYtMTIt
MTQgIERhdmUgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgW0NTUyBQYXJzZXJd
IE1ha2UgZGVmZXJyZWQgcGFyc2luZyByZXRhaW4gdGhlIHNoZWV0IHRleHQuIEZpeCBpbnZhbGlk
YXRpb24gdG8gYXZvaWQgZGVmZXJyZWQgcGFyc2luZy4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NLZXlmcmFtZVJ1bGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NLZXlmcmFtZVJ1bGUuY3BwCShyZXZpc2lvbiAyMDk4MDQpCisrKyBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTS2V5ZnJhbWVSdWxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzMsMzEgKzMzLDMxIEBA
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotU3R5bGVLZXlmcmFtZTo6U3R5bGVLZXlmcmFtZShS
ZWY8U3R5bGVQcm9wZXJ0aWVzPiYmIHByb3BlcnRpZXMpCitTdHlsZVJ1bGVLZXlmcmFtZTo6U3R5
bGVSdWxlS2V5ZnJhbWUoUmVmPFN0eWxlUHJvcGVydGllcz4mJiBwcm9wZXJ0aWVzKQogICAgIDog
U3R5bGVSdWxlQmFzZShLZXlmcmFtZSkKICAgICAsIG1fcHJvcGVydGllcyhXVEZNb3ZlKHByb3Bl
cnRpZXMpKQogewogfQogCi1TdHlsZUtleWZyYW1lOjpTdHlsZUtleWZyYW1lKHN0ZDo6dW5pcXVl
X3B0cjxWZWN0b3I8ZG91YmxlPj4ga2V5cywgUmVmPFN0eWxlUHJvcGVydGllcz4mJiBwcm9wZXJ0
aWVzKQorU3R5bGVSdWxlS2V5ZnJhbWU6OlN0eWxlUnVsZUtleWZyYW1lKHN0ZDo6dW5pcXVlX3B0
cjxWZWN0b3I8ZG91YmxlPj4ga2V5cywgUmVmPFN0eWxlUHJvcGVydGllcz4mJiBwcm9wZXJ0aWVz
KQogICAgIDogU3R5bGVSdWxlQmFzZShLZXlmcmFtZSkKICAgICAsIG1fcHJvcGVydGllcyhXVEZN
b3ZlKHByb3BlcnRpZXMpKQogICAgICwgbV9rZXlzKCprZXlzKQogewogfQogICAgIAotU3R5bGVL
ZXlmcmFtZTo6flN0eWxlS2V5ZnJhbWUoKQorU3R5bGVSdWxlS2V5ZnJhbWU6On5TdHlsZVJ1bGVL
ZXlmcmFtZSgpCiB7CiB9CiAKLU11dGFibGVTdHlsZVByb3BlcnRpZXMmIFN0eWxlS2V5ZnJhbWU6
Om11dGFibGVQcm9wZXJ0aWVzKCkKK011dGFibGVTdHlsZVByb3BlcnRpZXMmIFN0eWxlUnVsZUtl
eWZyYW1lOjptdXRhYmxlUHJvcGVydGllcygpCiB7CiAgICAgaWYgKCFpczxNdXRhYmxlU3R5bGVQ
cm9wZXJ0aWVzPihtX3Byb3BlcnRpZXMuZ2V0KCkpKQogICAgICAgICBtX3Byb3BlcnRpZXMgPSBt
X3Byb3BlcnRpZXMtPm11dGFibGVDb3B5KCk7CiAgICAgcmV0dXJuIGRvd25jYXN0PE11dGFibGVT
dHlsZVByb3BlcnRpZXM+KG1fcHJvcGVydGllcy5nZXQoKSk7CiB9CiAKLVN0cmluZyBTdHlsZUtl
eWZyYW1lOjprZXlUZXh0KCkgY29uc3QKK1N0cmluZyBTdHlsZVJ1bGVLZXlmcmFtZTo6a2V5VGV4
dCgpIGNvbnN0CiB7CiAgICAgU3RyaW5nQnVpbGRlciBrZXlUZXh0OwogCkBAIC03MSw3ICs3MSw3
IEBAIFN0cmluZyBTdHlsZUtleWZyYW1lOjprZXlUZXh0KCkgY29uc3QKICAgICByZXR1cm4ga2V5
VGV4dC50b1N0cmluZygpOwogfQogICAgIAotYm9vbCBTdHlsZUtleWZyYW1lOjpzZXRLZXlUZXh0
KGNvbnN0IFN0cmluZyYga2V5VGV4dCkKK2Jvb2wgU3R5bGVSdWxlS2V5ZnJhbWU6OnNldEtleVRl
eHQoY29uc3QgU3RyaW5nJiBrZXlUZXh0KQogewogICAgIEFTU0VSVCgha2V5VGV4dC5pc051bGwo
KSk7CiAgICAgYXV0byBrZXlzID0gQ1NTUGFyc2VyOjpwYXJzZUtleWZyYW1lS2V5TGlzdChrZXlU
ZXh0KTsKQEAgLTgxLDcgKzgxLDcgQEAgYm9vbCBTdHlsZUtleWZyYW1lOjpzZXRLZXlUZXh0KGNv
bnN0IFN0cgogICAgIHJldHVybiB0cnVlOwogfQogCi1TdHJpbmcgU3R5bGVLZXlmcmFtZTo6Y3Nz
VGV4dCgpIGNvbnN0CitTdHJpbmcgU3R5bGVSdWxlS2V5ZnJhbWU6OmNzc1RleHQoKSBjb25zdAog
ewogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwogICAgIHJlc3VsdC5hcHBlbmQoa2V5VGV4dCgp
KTsKQEAgLTk0LDcgKzk0LDcgQEAgU3RyaW5nIFN0eWxlS2V5ZnJhbWU6OmNzc1RleHQoKSBjb25z
dAogICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKIH0KIAotQ1NTS2V5ZnJhbWVSdWxlOjpD
U1NLZXlmcmFtZVJ1bGUoU3R5bGVLZXlmcmFtZSYga2V5ZnJhbWUsIENTU0tleWZyYW1lc1J1bGUq
IHBhcmVudCkKK0NTU0tleWZyYW1lUnVsZTo6Q1NTS2V5ZnJhbWVSdWxlKFN0eWxlUnVsZUtleWZy
YW1lJiBrZXlmcmFtZSwgQ1NTS2V5ZnJhbWVzUnVsZSogcGFyZW50KQogICAgIDogQ1NTUnVsZSgw
KQogICAgICwgbV9rZXlmcmFtZShrZXlmcmFtZSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NLZXlmcmFtZVJ1bGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
S2V5ZnJhbWVSdWxlLmgJKHJldmlzaW9uIDIwOTgwNCkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NLZXlmcmFtZVJ1bGUuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsMjAgKzM2LDE4IEBAIGNsYXNz
IENTU1N0eWxlRGVjbGFyYXRpb247CiBjbGFzcyBTdHlsZVJ1bGVDU1NTdHlsZURlY2xhcmF0aW9u
OwogY2xhc3MgQ1NTS2V5ZnJhbWVzUnVsZTsKIAotLy8gRklYTUUtTkVXUEFSU0VSOiBSZW5hbWUg
dGhpcyB0byBTdHlsZVJ1bGVLZXlmcmFtZQotY2xhc3MgU3R5bGVLZXlmcmFtZSBmaW5hbCA6IHB1
YmxpYyBTdHlsZVJ1bGVCYXNlIHsKK2NsYXNzIFN0eWxlUnVsZUtleWZyYW1lIGZpbmFsIDogcHVi
bGljIFN0eWxlUnVsZUJhc2UgewogcHVibGljOgotICAgIC8vIEZJWE1FLU5FV1BBUlNFUjogUmVt
b3ZlIHRoaXMgY3JlYXRlIGZ1bmN0aW9uIG9uY2Ugd2UgZ2V0IHJpZCBvZiB0aGUgb2xkIHBhcnNl
ci4KLSAgICBzdGF0aWMgUmVmPFN0eWxlS2V5ZnJhbWU+IGNyZWF0ZShSZWY8U3R5bGVQcm9wZXJ0
aWVzPiYmIHByb3BlcnRpZXMpCisgICAgc3RhdGljIFJlZjxTdHlsZVJ1bGVLZXlmcmFtZT4gY3Jl
YXRlKFJlZjxTdHlsZVByb3BlcnRpZXM+JiYgcHJvcGVydGllcykKICAgICB7Ci0gICAgICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IFN0eWxlS2V5ZnJhbWUoV1RGTW92ZShwcm9wZXJ0aWVzKSkpOwor
ICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHlsZVJ1bGVLZXlmcmFtZShXVEZNb3ZlKHBy
b3BlcnRpZXMpKSk7CiAgICAgfQogCi0gICAgc3RhdGljIFJlZjxTdHlsZUtleWZyYW1lPiBjcmVh
dGUoc3RkOjp1bmlxdWVfcHRyPFZlY3Rvcjxkb3VibGU+PiBrZXlzLCBSZWY8U3R5bGVQcm9wZXJ0
aWVzPiYmIHByb3BlcnRpZXMpCisgICAgc3RhdGljIFJlZjxTdHlsZVJ1bGVLZXlmcmFtZT4gY3Jl
YXRlKHN0ZDo6dW5pcXVlX3B0cjxWZWN0b3I8ZG91YmxlPj4ga2V5cywgUmVmPFN0eWxlUHJvcGVy
dGllcz4mJiBwcm9wZXJ0aWVzKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
U3R5bGVLZXlmcmFtZShXVEZNb3ZlKGtleXMpLCBXVEZNb3ZlKHByb3BlcnRpZXMpKSk7CisgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlUnVsZUtleWZyYW1lKFdURk1vdmUoa2V5cyks
IFdURk1vdmUocHJvcGVydGllcykpKTsKICAgICB9Ci0gICAgflN0eWxlS2V5ZnJhbWUoKTsKKyAg
ICB+U3R5bGVSdWxlS2V5ZnJhbWUoKTsKIAogICAgIFN0cmluZyBrZXlUZXh0KCkgY29uc3Q7CiAg
ICAgYm9vbCBzZXRLZXlUZXh0KGNvbnN0IFN0cmluZyYpOwpAQCAtNjgsOCArNjYsOCBAQCBwdWJs
aWM6CiAgICAgU3RyaW5nIGNzc1RleHQoKSBjb25zdDsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNp
dCBTdHlsZUtleWZyYW1lKFJlZjxTdHlsZVByb3BlcnRpZXM+JiYpOwotICAgIFN0eWxlS2V5ZnJh
bWUoc3RkOjp1bmlxdWVfcHRyPFZlY3Rvcjxkb3VibGU+PiwgUmVmPFN0eWxlUHJvcGVydGllcz4m
Jik7CisgICAgZXhwbGljaXQgU3R5bGVSdWxlS2V5ZnJhbWUoUmVmPFN0eWxlUHJvcGVydGllcz4m
Jik7CisgICAgU3R5bGVSdWxlS2V5ZnJhbWUoc3RkOjp1bmlxdWVfcHRyPFZlY3Rvcjxkb3VibGU+
PiwgUmVmPFN0eWxlUHJvcGVydGllcz4mJik7CiAKICAgICBSZWY8U3R5bGVQcm9wZXJ0aWVzPiBt
X3Byb3BlcnRpZXM7CiAgICAgVmVjdG9yPGRvdWJsZT4gbV9rZXlzOwpAQCAtODgsMTEgKzg2LDEx
IEBAIHB1YmxpYzoKICAgICBDU1NTdHlsZURlY2xhcmF0aW9uJiBzdHlsZSgpOwogCiBwcml2YXRl
OgotICAgIENTU0tleWZyYW1lUnVsZShTdHlsZUtleWZyYW1lJiwgQ1NTS2V5ZnJhbWVzUnVsZSog
cGFyZW50KTsKKyAgICBDU1NLZXlmcmFtZVJ1bGUoU3R5bGVSdWxlS2V5ZnJhbWUmLCBDU1NLZXlm
cmFtZXNSdWxlKiBwYXJlbnQpOwogCiAgICAgQ1NTUnVsZTo6VHlwZSB0eXBlKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gS0VZRlJBTUVfUlVMRTsgfQogCi0gICAgUmVmPFN0eWxlS2V5ZnJhbWU+IG1f
a2V5ZnJhbWU7CisgICAgUmVmPFN0eWxlUnVsZUtleWZyYW1lPiBtX2tleWZyYW1lOwogICAgIG11
dGFibGUgUmVmUHRyPFN0eWxlUnVsZUNTU1N0eWxlRGVjbGFyYXRpb24+IG1fcHJvcGVydGllc0NT
U09NV3JhcHBlcjsKICAgICAKICAgICBmcmllbmQgY2xhc3MgQ1NTS2V5ZnJhbWVzUnVsZTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NLZXlmcmFtZXNSdWxlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTS2V5ZnJhbWVzUnVsZS5jcHAJKHJldmlzaW9uIDIwOTgy
NikKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NLZXlmcmFtZXNSdWxlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNzQsMjAgKzc0LDIwIEBAIHZvaWQgU3R5bGVSdWxlS2V5ZnJhbWVzOjpwYXJzZURl
ZmVycmVkUnUKICAgICBtX2RlZmVycmVkUnVsZXMgPSBudWxscHRyOwogfQogCi1jb25zdCBWZWN0
b3I8UmVmPFN0eWxlS2V5ZnJhbWU+PiYgU3R5bGVSdWxlS2V5ZnJhbWVzOjprZXlmcmFtZXMoKSBj
b25zdAorY29uc3QgVmVjdG9yPFJlZjxTdHlsZVJ1bGVLZXlmcmFtZT4+JiBTdHlsZVJ1bGVLZXlm
cmFtZXM6OmtleWZyYW1lcygpIGNvbnN0CiB7CiAgICAgcGFyc2VEZWZlcnJlZFJ1bGVzSWZOZWVk
ZWQoKTsKICAgICByZXR1cm4gbV9rZXlmcmFtZXM7CiB9CiAKLXZvaWQgU3R5bGVSdWxlS2V5ZnJh
bWVzOjpwYXJzZXJBcHBlbmRLZXlmcmFtZShSZWZQdHI8U3R5bGVLZXlmcmFtZT4mJiBrZXlmcmFt
ZSkKK3ZvaWQgU3R5bGVSdWxlS2V5ZnJhbWVzOjpwYXJzZXJBcHBlbmRLZXlmcmFtZShSZWZQdHI8
U3R5bGVSdWxlS2V5ZnJhbWU+JiYga2V5ZnJhbWUpCiB7CiAgICAgaWYgKCFrZXlmcmFtZSkKICAg
ICAgICAgcmV0dXJuOwogICAgIG1fa2V5ZnJhbWVzLmFwcGVuZChrZXlmcmFtZS5yZWxlYXNlTm9u
TnVsbCgpKTsKIH0KIAotdm9pZCBTdHlsZVJ1bGVLZXlmcmFtZXM6OndyYXBwZXJBcHBlbmRLZXlm
cmFtZShSZWY8U3R5bGVLZXlmcmFtZT4mJiBrZXlmcmFtZSkKK3ZvaWQgU3R5bGVSdWxlS2V5ZnJh
bWVzOjp3cmFwcGVyQXBwZW5kS2V5ZnJhbWUoUmVmPFN0eWxlUnVsZUtleWZyYW1lPiYmIGtleWZy
YW1lKQogewogICAgIHBhcnNlRGVmZXJyZWRSdWxlc0lmTmVlZGVkKCk7CiAgICAgbV9rZXlmcmFt
ZXMuYXBwZW5kKFdURk1vdmUoa2V5ZnJhbWUpKTsKQEAgLTE0Miw3ICsxNDIsNyBAQCB2b2lkIENT
U0tleWZyYW1lc1J1bGU6OmFwcGVuZFJ1bGUoY29uc3QgCiAgICAgQVNTRVJUKG1fY2hpbGRSdWxl
Q1NTT01XcmFwcGVycy5zaXplKCkgPT0gbV9rZXlmcmFtZXNSdWxlLT5rZXlmcmFtZXMoKS5zaXpl
KCkpOwogCiAgICAgQ1NTUGFyc2VyIHBhcnNlcihwYXJzZXJDb250ZXh0KCkpOwotICAgIFJlZlB0
cjxTdHlsZUtleWZyYW1lPiBrZXlmcmFtZSA9IHBhcnNlci5wYXJzZUtleWZyYW1lUnVsZShydWxl
VGV4dCk7CisgICAgUmVmUHRyPFN0eWxlUnVsZUtleWZyYW1lPiBrZXlmcmFtZSA9IHBhcnNlci5w
YXJzZUtleWZyYW1lUnVsZShydWxlVGV4dCk7CiAgICAgaWYgKCFrZXlmcmFtZSkKICAgICAgICAg
cmV0dXJuOwogCkBAIC0yMTUsNyArMjE1LDcgQEAgQ1NTS2V5ZnJhbWVSdWxlKiBDU1NLZXlmcmFt
ZXNSdWxlOjppdGVtKAogICAgIEFTU0VSVChtX2NoaWxkUnVsZUNTU09NV3JhcHBlcnMuc2l6ZSgp
ID09IG1fa2V5ZnJhbWVzUnVsZS0+a2V5ZnJhbWVzKCkuc2l6ZSgpKTsKICAgICBSZWZQdHI8Q1NT
S2V5ZnJhbWVSdWxlPiYgcnVsZSA9IG1fY2hpbGRSdWxlQ1NTT01XcmFwcGVyc1tpbmRleF07CiAg
ICAgaWYgKCFydWxlKQotICAgICAgICBydWxlID0gYWRvcHRSZWYobmV3IENTU0tleWZyYW1lUnVs
ZShjb25zdF9jYXN0PFN0eWxlS2V5ZnJhbWUmPihtX2tleWZyYW1lc1J1bGUtPmtleWZyYW1lcygp
W2luZGV4XS5nZXQoKSksIGNvbnN0X2Nhc3Q8Q1NTS2V5ZnJhbWVzUnVsZSo+KHRoaXMpKSk7Cisg
ICAgICAgIHJ1bGUgPSBhZG9wdFJlZihuZXcgQ1NTS2V5ZnJhbWVSdWxlKGNvbnN0X2Nhc3Q8U3R5
bGVSdWxlS2V5ZnJhbWUmPihtX2tleWZyYW1lc1J1bGUtPmtleWZyYW1lcygpW2luZGV4XS5nZXQo
KSksIGNvbnN0X2Nhc3Q8Q1NTS2V5ZnJhbWVzUnVsZSo+KHRoaXMpKSk7CiAKICAgICByZXR1cm4g
cnVsZS5nZXQoKTsgCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTS2V5ZnJhbWVzUnVs
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NLZXlmcmFtZXNSdWxlLmgJ
KHJldmlzaW9uIDIwOTgyNikKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NLZXlmcmFtZXNSdWxl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgQ1NTUnVsZUxpc3Q7Ci1jbGFzcyBTdHlsZUtleWZyYW1lOworY2xhc3MgU3R5bGVS
dWxlS2V5ZnJhbWU7CiBjbGFzcyBDU1NLZXlmcmFtZVJ1bGU7CiAKIGNsYXNzIFN0eWxlUnVsZUtl
eWZyYW1lcyBmaW5hbCA6IHB1YmxpYyBTdHlsZVJ1bGVCYXNlIHsKQEAgLTQ0LDE0ICs0NCwxNCBA
QCBwdWJsaWM6CiAgICAgCiAgICAgflN0eWxlUnVsZUtleWZyYW1lcygpOwogICAgIAotICAgIGNv
bnN0IFZlY3RvcjxSZWY8U3R5bGVLZXlmcmFtZT4+JiBrZXlmcmFtZXMoKSBjb25zdDsKLSAgICBj
b25zdCBWZWN0b3I8UmVmPFN0eWxlS2V5ZnJhbWU+Pioga2V5ZnJhbWVzV2l0aG91dERlZmVycmVk
UGFyc2luZygpIGNvbnN0CisgICAgY29uc3QgVmVjdG9yPFJlZjxTdHlsZVJ1bGVLZXlmcmFtZT4+
JiBrZXlmcmFtZXMoKSBjb25zdDsKKyAgICBjb25zdCBWZWN0b3I8UmVmPFN0eWxlUnVsZUtleWZy
YW1lPj4qIGtleWZyYW1lc1dpdGhvdXREZWZlcnJlZFBhcnNpbmcoKSBjb25zdAogICAgIHsKICAg
ICAgICAgcmV0dXJuICFtX2RlZmVycmVkUnVsZXMgPyAmbV9rZXlmcmFtZXMgOiBudWxscHRyOwog
ICAgIH0KIAotICAgIHZvaWQgcGFyc2VyQXBwZW5kS2V5ZnJhbWUoUmVmUHRyPFN0eWxlS2V5ZnJh
bWU+JiYpOwotICAgIHZvaWQgd3JhcHBlckFwcGVuZEtleWZyYW1lKFJlZjxTdHlsZUtleWZyYW1l
PiYmKTsKKyAgICB2b2lkIHBhcnNlckFwcGVuZEtleWZyYW1lKFJlZlB0cjxTdHlsZVJ1bGVLZXlm
cmFtZT4mJik7CisgICAgdm9pZCB3cmFwcGVyQXBwZW5kS2V5ZnJhbWUoUmVmPFN0eWxlUnVsZUtl
eWZyYW1lPiYmKTsKICAgICB2b2lkIHdyYXBwZXJSZW1vdmVLZXlmcmFtZSh1bnNpZ25lZCk7CiAK
ICAgICBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0K
QEAgLTY4LDcgKzY4LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgcGFyc2VEZWZlcnJlZFJ1bGVz
SWZOZWVkZWQoKSBjb25zdDsKICAgICAKLSAgICBtdXRhYmxlIFZlY3RvcjxSZWY8U3R5bGVLZXlm
cmFtZT4+IG1fa2V5ZnJhbWVzOworICAgIG11dGFibGUgVmVjdG9yPFJlZjxTdHlsZVJ1bGVLZXlm
cmFtZT4+IG1fa2V5ZnJhbWVzOwogICAgIEF0b21pY1N0cmluZyBtX25hbWU7CiAgICAgCiAgICAg
bXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8RGVmZXJyZWRTdHlsZUdyb3VwUnVsZUxpc3Q+IG1fZGVm
ZXJyZWRSdWxlczsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAJKHJldmlz
aW9uIDIwOTgwNSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNDQ0LDcgKzQ0NCw3IEBAIEVsZW1lbnRTdHlsZSBTdHlsZVJlc29sdmVy
OjpzdHlsZUZvckVsZW0KICAgICByZXR1cm4geyBzdGF0ZS50YWtlU3R5bGUoKSwgV1RGTW92ZShl
bGVtZW50U3R5bGVSZWxhdGlvbnMpIH07CiB9CiAKLXN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHls
ZT4gU3R5bGVSZXNvbHZlcjo6c3R5bGVGb3JLZXlmcmFtZShjb25zdCBSZW5kZXJTdHlsZSogZWxl
bWVudFN0eWxlLCBjb25zdCBTdHlsZUtleWZyYW1lKiBrZXlmcmFtZSwgS2V5ZnJhbWVWYWx1ZSYg
a2V5ZnJhbWVWYWx1ZSkKK3N0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gU3R5bGVSZXNvbHZl
cjo6c3R5bGVGb3JLZXlmcmFtZShjb25zdCBSZW5kZXJTdHlsZSogZWxlbWVudFN0eWxlLCBjb25z
dCBTdHlsZVJ1bGVLZXlmcmFtZSoga2V5ZnJhbWUsIEtleWZyYW1lVmFsdWUmIGtleWZyYW1lVmFs
dWUpCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoIW1faXNEZWxldGVkKTsKIApAQCAtNTE2LDcgKzUx
Niw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6a2V5ZnJhbWVTdHlsZXNGb3JBbmkKICAgICBjb25z
dCBTdHlsZVJ1bGVLZXlmcmFtZXMqIGtleWZyYW1lc1J1bGUgPSBpdC0+dmFsdWUuZ2V0KCk7CiAK
ICAgICBhdXRvKiBrZXlmcmFtZXMgPSAma2V5ZnJhbWVzUnVsZS0+a2V5ZnJhbWVzKCk7Ci0gICAg
VmVjdG9yPFJlZjxTdHlsZUtleWZyYW1lPj4gbmV3S2V5ZnJhbWVzSWZOZWNlc3Nhcnk7CisgICAg
VmVjdG9yPFJlZjxTdHlsZVJ1bGVLZXlmcmFtZT4+IG5ld0tleWZyYW1lc0lmTmVjZXNzYXJ5Owog
CiAgICAgYm9vbCBoYXNEdXBsaWNhdGVLZXlzID0gZmFsc2U7CiAgICAgSGFzaFNldDxkb3VibGU+
IGtleWZyYW1lS2V5czsKQEAgLTUzNSwxNyArNTM1LDE3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6
a2V5ZnJhbWVTdHlsZXNGb3JBbmkKICAgICAvLyB0byBjb3B5IHRoZSBIYXNoTWFwIGludG8gYSBW
ZWN0b3IuCiAgICAgaWYgKGhhc0R1cGxpY2F0ZUtleXMpIHsKICAgICAgICAgLy8gTWVyZ2UgZHVw
bGljYXRlIGtleSB0aW1lcy4KLSAgICAgICAgSGFzaE1hcDxkb3VibGUsIFJlZlB0cjxTdHlsZUtl
eWZyYW1lPj4ga2V5ZnJhbWVzTWFwOworICAgICAgICBIYXNoTWFwPGRvdWJsZSwgUmVmUHRyPFN0
eWxlUnVsZUtleWZyYW1lPj4ga2V5ZnJhbWVzTWFwOwogCiAgICAgICAgIGZvciAoYXV0byYgb3Jp
Z2luYWxLZXlmcmFtZSA6IGtleWZyYW1lc1J1bGUtPmtleWZyYW1lcygpKSB7CiAgICAgICAgICAg
ICBmb3IgKGF1dG8ga2V5IDogb3JpZ2luYWxLZXlmcmFtZS0+a2V5cygpKSB7CiAgICAgICAgICAg
ICAgICAgaWYgKGF1dG8ga2V5ZnJhbWUgPSBrZXlmcmFtZXNNYXAuZ2V0KGtleSkpCiAgICAgICAg
ICAgICAgICAgICAgIGtleWZyYW1lLT5tdXRhYmxlUHJvcGVydGllcygpLm1lcmdlQW5kT3ZlcnJp
ZGVPbkNvbmZsaWN0KG9yaWdpbmFsS2V5ZnJhbWUtPnByb3BlcnRpZXMoKSk7CiAgICAgICAgICAg
ICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIGF1dG8gc3R5bGVLZXlmcmFtZSA9IFN0
eWxlS2V5ZnJhbWU6OmNyZWF0ZShNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzOjpjcmVhdGUoKSk7Ci0g
ICAgICAgICAgICAgICAgICAgIHN0eWxlS2V5ZnJhbWUucHRyKCktPnNldEtleShrZXkpOwotICAg
ICAgICAgICAgICAgICAgICBzdHlsZUtleWZyYW1lLnB0cigpLT5tdXRhYmxlUHJvcGVydGllcygp
Lm1lcmdlQW5kT3ZlcnJpZGVPbkNvbmZsaWN0KG9yaWdpbmFsS2V5ZnJhbWUtPnByb3BlcnRpZXMo
KSk7Ci0gICAgICAgICAgICAgICAgICAgIGtleWZyYW1lc01hcC5zZXQoa2V5LCBzdHlsZUtleWZy
YW1lLnB0cigpKTsKKyAgICAgICAgICAgICAgICAgICAgYXV0byBTdHlsZVJ1bGVLZXlmcmFtZSA9
IFN0eWxlUnVsZUtleWZyYW1lOjpjcmVhdGUoTXV0YWJsZVN0eWxlUHJvcGVydGllczo6Y3JlYXRl
KCkpOworICAgICAgICAgICAgICAgICAgICBTdHlsZVJ1bGVLZXlmcmFtZS5wdHIoKS0+c2V0S2V5
KGtleSk7CisgICAgICAgICAgICAgICAgICAgIFN0eWxlUnVsZUtleWZyYW1lLnB0cigpLT5tdXRh
YmxlUHJvcGVydGllcygpLm1lcmdlQW5kT3ZlcnJpZGVPbkNvbmZsaWN0KG9yaWdpbmFsS2V5ZnJh
bWUtPnByb3BlcnRpZXMoKSk7CisgICAgICAgICAgICAgICAgICAgIGtleWZyYW1lc01hcC5zZXQo
a2V5LCBTdHlsZVJ1bGVLZXlmcmFtZS5wdHIoKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfQogICAgICAgICB9CkBAIC01NzMsOSArNTczLDkgQEAgdm9pZCBTdHlsZVJlc29sdmVy
OjprZXlmcmFtZVN0eWxlc0ZvckFuaQogICAgIC8vIElmIHRoZSAwJSBrZXlmcmFtZSBpcyBtaXNz
aW5nLCBjcmVhdGUgaXQgKGJ1dCBvbmx5IGlmIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBvdGhlciBr
ZXlmcmFtZSkuCiAgICAgaW50IGluaXRpYWxMaXN0U2l6ZSA9IGxpc3Quc2l6ZSgpOwogICAgIGlm
IChpbml0aWFsTGlzdFNpemUgPiAwICYmIGxpc3RbMF0ua2V5KCkpIHsKLSAgICAgICAgc3RhdGlj
IFN0eWxlS2V5ZnJhbWUqIHplcm9QZXJjZW50S2V5ZnJhbWU7CisgICAgICAgIHN0YXRpYyBTdHls
ZVJ1bGVLZXlmcmFtZSogemVyb1BlcmNlbnRLZXlmcmFtZTsKICAgICAgICAgaWYgKCF6ZXJvUGVy
Y2VudEtleWZyYW1lKSB7Ci0gICAgICAgICAgICB6ZXJvUGVyY2VudEtleWZyYW1lID0gJlN0eWxl
S2V5ZnJhbWU6OmNyZWF0ZShNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzOjpjcmVhdGUoKSkubGVha1Jl
ZigpOworICAgICAgICAgICAgemVyb1BlcmNlbnRLZXlmcmFtZSA9ICZTdHlsZVJ1bGVLZXlmcmFt
ZTo6Y3JlYXRlKE11dGFibGVTdHlsZVByb3BlcnRpZXM6OmNyZWF0ZSgpKS5sZWFrUmVmKCk7CiAg
ICAgICAgICAgICB6ZXJvUGVyY2VudEtleWZyYW1lLT5zZXRLZXkoMCk7CiAgICAgICAgIH0KICAg
ICAgICAgS2V5ZnJhbWVWYWx1ZSBrZXlmcmFtZVZhbHVlKDAsIG51bGxwdHIpOwpAQCAtNTg1LDkg
KzU4NSw5IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6a2V5ZnJhbWVTdHlsZXNGb3JBbmkKIAogICAg
IC8vIElmIHRoZSAxMDAlIGtleWZyYW1lIGlzIG1pc3NpbmcsIGNyZWF0ZSBpdCAoYnV0IG9ubHkg
aWYgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIG90aGVyIGtleWZyYW1lKS4KICAgICBpZiAoaW5pdGlh
bExpc3RTaXplID4gMCAmJiAobGlzdFtsaXN0LnNpemUoKSAtIDFdLmtleSgpICE9IDEpKSB7Ci0g
ICAgICAgIHN0YXRpYyBTdHlsZUtleWZyYW1lKiBodW5kcmVkUGVyY2VudEtleWZyYW1lOworICAg
ICAgICBzdGF0aWMgU3R5bGVSdWxlS2V5ZnJhbWUqIGh1bmRyZWRQZXJjZW50S2V5ZnJhbWU7CiAg
ICAgICAgIGlmICghaHVuZHJlZFBlcmNlbnRLZXlmcmFtZSkgewotICAgICAgICAgICAgaHVuZHJl
ZFBlcmNlbnRLZXlmcmFtZSA9ICZTdHlsZUtleWZyYW1lOjpjcmVhdGUoTXV0YWJsZVN0eWxlUHJv
cGVydGllczo6Y3JlYXRlKCkpLmxlYWtSZWYoKTsKKyAgICAgICAgICAgIGh1bmRyZWRQZXJjZW50
S2V5ZnJhbWUgPSAmU3R5bGVSdWxlS2V5ZnJhbWU6OmNyZWF0ZShNdXRhYmxlU3R5bGVQcm9wZXJ0
aWVzOjpjcmVhdGUoKSkubGVha1JlZigpOwogICAgICAgICAgICAgaHVuZHJlZFBlcmNlbnRLZXlm
cmFtZS0+c2V0S2V5KDEpOwogICAgICAgICB9CiAgICAgICAgIEtleWZyYW1lVmFsdWUga2V5ZnJh
bWVWYWx1ZSgxLCBudWxscHRyKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAko
cmV2aXNpb24gMjA5ODA0KQorKysgU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtNzUsNyArNzUsNyBAQCBjbGFzcyBTZXR0aW5nczsKIGNsYXNzIFN0
eWxlQ2FjaGVkSW1hZ2U7CiBjbGFzcyBTdHlsZUdlbmVyYXRlZEltYWdlOwogY2xhc3MgU3R5bGVJ
bWFnZTsKLWNsYXNzIFN0eWxlS2V5ZnJhbWU7CitjbGFzcyBTdHlsZVJ1bGVLZXlmcmFtZTsKIGNs
YXNzIFN0eWxlUHJvcGVydGllczsKIGNsYXNzIFN0eWxlUnVsZTsKIGNsYXNzIFN0eWxlUnVsZUtl
eWZyYW1lczsKQEAgLTE2Miw3ICsxNjIsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRPdmVycmlk
ZURvY3VtZW50RWxlbWVudFN0eWxlKFJlbmRlclN0eWxlKiBzdHlsZSkgeyBtX292ZXJyaWRlRG9j
dW1lbnRFbGVtZW50U3R5bGUgPSBzdHlsZTsgfQogCiBwcml2YXRlOgotICAgIHN0ZDo6dW5pcXVl
X3B0cjxSZW5kZXJTdHlsZT4gc3R5bGVGb3JLZXlmcmFtZShjb25zdCBSZW5kZXJTdHlsZSosIGNv
bnN0IFN0eWxlS2V5ZnJhbWUqLCBLZXlmcmFtZVZhbHVlJik7CisgICAgc3RkOjp1bmlxdWVfcHRy
PFJlbmRlclN0eWxlPiBzdHlsZUZvcktleWZyYW1lKGNvbnN0IFJlbmRlclN0eWxlKiwgY29uc3Qg
U3R5bGVSdWxlS2V5ZnJhbWUqLCBLZXlmcmFtZVZhbHVlJik7CiAKIHB1YmxpYzoKICAgICAvLyBU
aGVzZSBtZXRob2RzIHdpbGwgZ2l2ZSBiYWNrIHRoZSBzZXQgb2YgcnVsZXMgdGhhdCBtYXRjaGVk
IGZvciBhIGdpdmVuIGVsZW1lbnQgKG9yIGEgcHNldWRvLWVsZW1lbnQpLgpJbmRleDogU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUnVsZS5jcHAJKHJldmlzaW9uIDIwOTgyNikKKysrIFNvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJ1bGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NSw3ICs5NSw3IEBAIHZvaWQgU3R5
bGVSdWxlQmFzZTo6ZGVzdHJveSgpCiAgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxTdHlsZVJ1bGVO
YW1lc3BhY2U+KHRoaXMpOwogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBLZXlmcmFtZToKLSAg
ICAgICAgZGVsZXRlIGRvd25jYXN0PFN0eWxlS2V5ZnJhbWU+KHRoaXMpOworICAgICAgICBkZWxl
dGUgZG93bmNhc3Q8U3R5bGVSdWxlS2V5ZnJhbWU+KHRoaXMpOwogICAgICAgICByZXR1cm47CiAg
ICAgY2FzZSBDaGFyc2V0OgogICAgICAgICBkZWxldGUgZG93bmNhc3Q8U3R5bGVSdWxlQ2hhcnNl
dD4odGhpcyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oCShyZXZpc2lvbiAyMDk4MjYpCisr
KyBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDcg
KzMzLDcgQEAgY2xhc3MgQ1NTU3R5bGVSdWxlOwogY2xhc3MgQ1NTU3R5bGVTaGVldDsKIGNsYXNz
IE1lZGlhUXVlcnlTZXQ7CiBjbGFzcyBNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzOwotY2xhc3MgU3R5
bGVLZXlmcmFtZTsKK2NsYXNzIFN0eWxlUnVsZUtleWZyYW1lOwogY2xhc3MgU3R5bGVQcm9wZXJ0
aWVzOwogY2xhc3MgU3R5bGVSdWxlS2V5ZnJhbWVzOwogICAgIApAQCAtNDksNyArNDksNyBAQCBw
dWJsaWM6CiAgICAgICAgIEZvbnRGYWNlLAogICAgICAgICBQYWdlLAogICAgICAgICBLZXlmcmFt
ZXMsCi0gICAgICAgIEtleWZyYW1lLCAvLyBOb3QgdXNlZC4gVGhlc2UgYXJlIGludGVybmFsbHkg
bm9uLXJ1bGUgU3R5bGVLZXlmcmFtZSBvYmplY3RzLgorICAgICAgICBLZXlmcmFtZSwgLy8gTm90
IHVzZWQuIFRoZXNlIGFyZSBpbnRlcm5hbGx5IG5vbi1ydWxlIFN0eWxlUnVsZUtleWZyYW1lIG9i
amVjdHMuCiAgICAgICAgIE5hbWVzcGFjZSwKICAgICAgICAgU3VwcG9ydHMgPSAxMiwKICNpZiBF
TkFCTEUoQ1NTX0RFVklDRV9BREFQVEFUSU9OKQpAQCAtMzkzLDcgKzM5Myw3IEBAIFNQRUNJQUxJ
WkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6U3QKICAgICBzdGF0aWMgYm9vbCBpc1R5cGUo
Y29uc3QgV2ViQ29yZTo6U3R5bGVSdWxlQmFzZSYgcnVsZSkgeyByZXR1cm4gcnVsZS5pc05hbWVz
cGFjZVJ1bGUoKTsgfQogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQogCi1TUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlN0eWxlS2V5ZnJhbWUpCitTUEVDSUFMSVpFX1RZ
UEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlN0eWxlUnVsZUtleWZyYW1lKQogc3RhdGljIGJvb2wg
aXNUeXBlKGNvbnN0IFdlYkNvcmU6OlN0eWxlUnVsZUJhc2UmIHJ1bGUpIHsgcmV0dXJuIHJ1bGUu
aXNLZXlmcmFtZVJ1bGUoKTsgfQogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQogCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXIuY3BwCShyZXZpc2lvbiAyMDk4MjYp
CisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE1MCwxMCArMTUwLDEwIEBAIFJlZlB0cjxTdHlsZVJ1bGVCYXNlPiBDU1NQYXJzZXI6
OnBhcnNlUnUKICAgICByZXR1cm4gQ1NTUGFyc2VySW1wbDo6cGFyc2VSdWxlKHN0cmluZywgY29u
dGV4dCwgc2hlZXQsIENTU1BhcnNlckltcGw6OkFsbG93SW1wb3J0UnVsZXMpOwogfQogCi1SZWZQ
dHI8U3R5bGVLZXlmcmFtZT4gQ1NTUGFyc2VyOjpwYXJzZUtleWZyYW1lUnVsZShjb25zdCBTdHJp
bmcmIHN0cmluZykKK1JlZlB0cjxTdHlsZVJ1bGVLZXlmcmFtZT4gQ1NTUGFyc2VyOjpwYXJzZUtl
eWZyYW1lUnVsZShjb25zdCBTdHJpbmcmIHN0cmluZykKIHsKICAgICBSZWZQdHI8U3R5bGVSdWxl
QmFzZT4ga2V5ZnJhbWUgPSBDU1NQYXJzZXJJbXBsOjpwYXJzZVJ1bGUoc3RyaW5nLCBtX2NvbnRl
eHQsIG51bGxwdHIsIENTU1BhcnNlckltcGw6OktleWZyYW1lUnVsZXMpOwotICAgIHJldHVybiBk
b3duY2FzdDxTdHlsZUtleWZyYW1lPihrZXlmcmFtZS5nZXQoKSk7CisgICAgcmV0dXJuIGRvd25j
YXN0PFN0eWxlUnVsZUtleWZyYW1lPihrZXlmcmFtZS5nZXQoKSk7CiB9CiAKIGJvb2wgQ1NTUGFy
c2VyOjpwYXJzZVN1cHBvcnRzQ29uZGl0aW9uKGNvbnN0IFN0cmluZyYgY29uZGl0aW9uKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlci5oCShyZXZpc2lvbiAyMDk4MjYpCisr
KyBTb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0zNiw3ICszNiw3IEBAIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBJbW11dGFibGVTdHlsZVByb3Bl
cnRpZXM7CiBjbGFzcyBNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzOwogY2xhc3MgU3R5bGVSdWxlQmFz
ZTsKLWNsYXNzIFN0eWxlS2V5ZnJhbWU7CitjbGFzcyBTdHlsZVJ1bGVLZXlmcmFtZTsKIGNsYXNz
IFN0eWxlU2hlZXRDb250ZW50czsKIAogY2xhc3MgQ1NTUGFyc2VyIHsKQEAgLTU1LDcgKzU1LDcg
QEAgcHVibGljOgogICAgIAogICAgIHN0YXRpYyBSZWZQdHI8U3R5bGVSdWxlQmFzZT4gcGFyc2VS
dWxlKGNvbnN0IENTU1BhcnNlckNvbnRleHQmLCBTdHlsZVNoZWV0Q29udGVudHMqLCBjb25zdCBT
dHJpbmcmKTsKICAgICAKLSAgICBSZWZQdHI8U3R5bGVLZXlmcmFtZT4gcGFyc2VLZXlmcmFtZVJ1
bGUoY29uc3QgU3RyaW5nJik7CisgICAgUmVmUHRyPFN0eWxlUnVsZUtleWZyYW1lPiBwYXJzZUtl
eWZyYW1lUnVsZShjb25zdCBTdHJpbmcmKTsKICAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFZl
Y3Rvcjxkb3VibGU+PiBwYXJzZUtleWZyYW1lS2V5TGlzdChjb25zdCBTdHJpbmcmKTsKICAgICAK
ICAgICBib29sIHBhcnNlU3VwcG9ydHNDb25kaXRpb24oY29uc3QgU3RyaW5nJik7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAJKHJldmlzaW9uIDIw
OTgzNSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIENTU1BhcnNlckltcGw6OnBhcnNl
RGVmZXJyZWRLZXlmcmFtCiAgICAgICAgIHJldHVybjsKICAgICBDU1NQYXJzZXJJbXBsIHBhcnNl
cihkZWZlcnJlZFBhcnNlcik7CiAgICAgcGFyc2VyLmNvbnN1bWVSdWxlTGlzdCh0b2tlblJhbmdl
LCBLZXlmcmFtZXNSdWxlTGlzdCwgWyZrZXlmcmFtZVJ1bGVdKGNvbnN0IFJlZlB0cjxTdHlsZVJ1
bGVCYXNlPiYga2V5ZnJhbWUpIHsKLSAgICAgICAga2V5ZnJhbWVSdWxlLnBhcnNlckFwcGVuZEtl
eWZyYW1lKGRvd25jYXN0PGNvbnN0IFN0eWxlS2V5ZnJhbWU+KGtleWZyYW1lLmdldCgpKSk7Cisg
ICAgICAgIGtleWZyYW1lUnVsZS5wYXJzZXJBcHBlbmRLZXlmcmFtZShkb3duY2FzdDxjb25zdCBT
dHlsZVJ1bGVLZXlmcmFtZT4oa2V5ZnJhbWUuZ2V0KCkpKTsKICAgICB9KTsKIH0KIApAQCAtNjQ5
LDcgKzY0OSw3IEBAIFJlZlB0cjxTdHlsZVJ1bGVLZXlmcmFtZXM+IENTU1BhcnNlckltcGwKIAog
ICAgIFJlZlB0cjxTdHlsZVJ1bGVLZXlmcmFtZXM+IGtleWZyYW1lUnVsZSA9IFN0eWxlUnVsZUtl
eWZyYW1lczo6Y3JlYXRlKG5hbWUpOwogICAgIGNvbnN1bWVSdWxlTGlzdChibG9jaywgS2V5ZnJh
bWVzUnVsZUxpc3QsIFtrZXlmcmFtZVJ1bGVdKGNvbnN0IFJlZlB0cjxTdHlsZVJ1bGVCYXNlPiYg
a2V5ZnJhbWUpIHsKLSAgICAgICAga2V5ZnJhbWVSdWxlLT5wYXJzZXJBcHBlbmRLZXlmcmFtZShk
b3duY2FzdDxjb25zdCBTdHlsZUtleWZyYW1lPihrZXlmcmFtZS5nZXQoKSkpOworICAgICAgICBr
ZXlmcmFtZVJ1bGUtPnBhcnNlckFwcGVuZEtleWZyYW1lKGRvd25jYXN0PGNvbnN0IFN0eWxlUnVs
ZUtleWZyYW1lPihrZXlmcmFtZS5nZXQoKSkpOwogICAgIH0pOwogCiAgICAgLy8gRklYTUUtTkVX
UEFSU0VSOiBGaW5kIG91dCB3aHkgdGhpcyBpcyBkb25lLiBCZWhhdmlvciBkaWZmZXJlbmNlIHdo
ZW4gcHJlZml4ZWQ/CkBAIC03MTQsNyArNzE0LDcgQEAgUmVmUHRyPFN0eWxlUnVsZVJlZ2lvbj4g
Q1NTUGFyc2VySW1wbDo6YwogfQogKi8KICAgICAKLVJlZlB0cjxTdHlsZUtleWZyYW1lPiBDU1NQ
YXJzZXJJbXBsOjpjb25zdW1lS2V5ZnJhbWVTdHlsZVJ1bGUoQ1NTUGFyc2VyVG9rZW5SYW5nZSBw
cmVsdWRlLCBDU1NQYXJzZXJUb2tlblJhbmdlIGJsb2NrKQorUmVmUHRyPFN0eWxlUnVsZUtleWZy
YW1lPiBDU1NQYXJzZXJJbXBsOjpjb25zdW1lS2V5ZnJhbWVTdHlsZVJ1bGUoQ1NTUGFyc2VyVG9r
ZW5SYW5nZSBwcmVsdWRlLCBDU1NQYXJzZXJUb2tlblJhbmdlIGJsb2NrKQogewogICAgIHN0ZDo6
dW5pcXVlX3B0cjxWZWN0b3I8ZG91YmxlPj4ga2V5TGlzdCA9IGNvbnN1bWVLZXlmcmFtZUtleUxp
c3QocHJlbHVkZSk7CiAgICAgaWYgKCFrZXlMaXN0KQpAQCAtNzI2LDcgKzcyNiw3IEBAIFJlZlB0
cjxTdHlsZUtleWZyYW1lPiBDU1NQYXJzZXJJbXBsOjpjb24KICAgICB9CiAKICAgICBjb25zdW1l
RGVjbGFyYXRpb25MaXN0KGJsb2NrLCBTdHlsZVJ1bGU6OktleWZyYW1lKTsKLSAgICByZXR1cm4g
U3R5bGVLZXlmcmFtZTo6Y3JlYXRlKFdURk1vdmUoa2V5TGlzdCksIGNyZWF0ZVN0eWxlUHJvcGVy
dGllcyhtX3BhcnNlZFByb3BlcnRpZXMsIG1fY29udGV4dC5tb2RlKSk7CisgICAgcmV0dXJuIFN0
eWxlUnVsZUtleWZyYW1lOjpjcmVhdGUoV1RGTW92ZShrZXlMaXN0KSwgY3JlYXRlU3R5bGVQcm9w
ZXJ0aWVzKG1fcGFyc2VkUHJvcGVydGllcywgbV9jb250ZXh0Lm1vZGUpKTsKIH0KIAogc3RhdGlj
IHZvaWQgb2JzZXJ2ZVNlbGVjdG9ycyhDU1NQYXJzZXJPYnNlcnZlcldyYXBwZXImIHdyYXBwZXIs
IENTU1BhcnNlclRva2VuUmFuZ2Ugc2VsZWN0b3JzKQpJbmRleDogU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NQYXJzZXJJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NQYXJzZXJJbXBsLmgJKHJldmlzaW9uIDIwOTgyNikKKysrIFNvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC00OCw3ICs0
OCw3IEBAIGNsYXNzIENTU1BhcnNlck9ic2VydmVyOwogY2xhc3MgQ1NTUGFyc2VyT2JzZXJ2ZXJX
cmFwcGVyOwogY2xhc3MgQ1NTU2VsZWN0b3JMaXN0OwogY2xhc3MgQ1NTVG9rZW5pemVyOwotY2xh
c3MgU3R5bGVLZXlmcmFtZTsKK2NsYXNzIFN0eWxlUnVsZUtleWZyYW1lOwogY2xhc3MgU3R5bGVS
dWxlOwogY2xhc3MgU3R5bGVSdWxlQmFzZTsKIGNsYXNzIFN0eWxlUnVsZUNoYXJzZXQ7CkBAIC0x
NDIsNyArMTQyLDcgQEAgcHJpdmF0ZToKICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFN1cHBvcnQg
ImFwcGx5IgogICAgIC8vIHZvaWQgY29uc3VtZUFwcGx5UnVsZShDU1NQYXJzZXJUb2tlblJhbmdl
IHByZWx1ZGUpOwogCi0gICAgUmVmUHRyPFN0eWxlS2V5ZnJhbWU+IGNvbnN1bWVLZXlmcmFtZVN0
eWxlUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1ZGUsIENTU1BhcnNlclRva2VuUmFuZ2Ug
YmxvY2spOworICAgIFJlZlB0cjxTdHlsZVJ1bGVLZXlmcmFtZT4gY29uc3VtZUtleWZyYW1lU3R5
bGVSdWxlKENTU1BhcnNlclRva2VuUmFuZ2UgcHJlbHVkZSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSBi
bG9jayk7CiAgICAgUmVmUHRyPFN0eWxlUnVsZT4gY29uc3VtZVN0eWxlUnVsZShDU1NQYXJzZXJU
b2tlblJhbmdlIHByZWx1ZGUsIENTU1BhcnNlclRva2VuUmFuZ2UgYmxvY2spOwogCiAgICAgdm9p
ZCBjb25zdW1lRGVjbGFyYXRpb25MaXN0KENTU1BhcnNlclRva2VuUmFuZ2UsIFN0eWxlUnVsZTo6
VHlwZSk7Cg==
</data>
<flag name="review"
          id="319470"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>