<?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>150246</bug_id>
          
          <creation_ts>2015-10-16 12:56:50 -0700</creation_ts>
          <short_desc>&quot;enum class&quot; some IDB enums</short_desc>
          <delta_ts>2015-10-16 14:11:39 -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>WebCore Misc.</component>
          <version>Safari 9</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>
          
          <blocked>149117</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>alecflett</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1133986</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2015-10-16 12:56:50 -0700</bug_when>
    <thetext>&quot;enum class&quot; some IDB enums</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134002</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2015-10-16 13:21:56 -0700</bug_when>
    <thetext>Very mechanical task - The patch I&apos;m about to land was reviewed in person by Alex Christensen</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134003</commentid>
    <comment_count>2</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2015-10-16 13:22:14 -0700</bug_when>
    <thetext>Actually, no - I&apos;ll use CQ</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134004</commentid>
    <comment_count>3</comment_count>
      <attachid>263315</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2015-10-16 13:23:08 -0700</bug_when>
    <thetext>Created attachment 263315
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134006</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-16 13:25:34 -0700</bug_when>
    <thetext>Attachment 263315 did not pass style-queue:


ERROR: Source/WebCore/Modules/indexeddb/IDBKeyPath.cpp:284:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 9 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134041</commentid>
    <comment_count>5</comment_count>
      <attachid>263315</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-16 14:11:36 -0700</bug_when>
    <thetext>Comment on attachment 263315
Patch for landing

Clearing flags on attachment: 263315

Committed r191210: &lt;http://trac.webkit.org/changeset/191210&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134042</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-16 14:11:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263315</attachid>
            <date>2015-10-16 13:23:08 -0700</date>
            <delta_ts>2015-10-16 14:11:36 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>16977</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4OTcwYTYzLi5lNzA0MWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIg
QEAKKzIwMTUtMTAtMTYgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgICJlbnVtIGNsYXNzIiBzb21lIElEQiBlbnVtcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MDI0NgorCisgICAgICAgIFJldmlld2VkIGJ5IEFs
ZXggQ2hyaXN0ZW5zZW4uCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChObyBjaGFuZ2UgaW4gYmVo
YXZpb3IpLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJREJJc1ZhbGlkS2V5UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpJ
REJQYXJzZUtleVBhdGgpOgorICAgICAgICAoV2ViQ29yZTo6SURCS2V5UGF0aDo6SURCS2V5UGF0
aCk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlQYXRoOjppc1ZhbGlkKToKKyAgICAgICAgKFdl
YkNvcmU6OklEQktleVBhdGg6Om9wZXJhdG9yPT0pOgorICAgICAgICAoV2ViQ29yZTo6SURCS2V5
UGF0aDo6ZW5jb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQktleVBhdGg6OmRlY29kZSk6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oOgorICAgICAgICAoV2ViQ29y
ZTo6SURCS2V5UGF0aDo6SURCS2V5UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlQYXRo
Ojp0eXBlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQktleVBhdGg6OmFycmF5KToKKyAgICAgICAg
KFdlYkNvcmU6OklEQktleVBhdGg6OnN0cmluZyk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlQ
YXRoOjppc051bGwpOgorICAgICAgICAoV2ViQ29yZTo6SURCS2V5UGF0aDo6ZW5jb2RlKToKKyAg
ICAgICAgKFdlYkNvcmU6OklEQktleVBhdGg6OmRlY29kZSk6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSW5kZXhlZERCLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvbGVnYWN5
L0xlZ2FjeURhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeURhdGFiYXNlOjpj
cmVhdGVPYmplY3RTdG9yZSk6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvbGVnYWN5L0xl
Z2FjeU9iamVjdFN0b3JlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeU9iamVjdFN0b3Jl
OjpjcmVhdGVJbmRleCk6CisgICAgICAgICogYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGll
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjppbnRlcm5hbENyZWF0ZUlEQktleUZyb21TY3JpcHRW
YWx1ZUFuZEtleVBhdGgpOgorICAgICAgICAoV2ViQ29yZTo6aW5qZWN0SURCS2V5SW50b1Njcmlw
dFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUlEQktleUZyb21TY3JpcHRWYWx1ZUFu
ZEtleVBhdGgpOgorICAgICAgICAoV2ViQ29yZTo6Y2FuSW5qZWN0SURCS2V5SW50b1NjcmlwdFZh
bHVlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lEQkFueUN1c3RvbS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERC
QWdlbnQuY3BwOgorCiAyMDE1LTEwLTE2ICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFwcGxlLmNv
bT4KIAogICAgICAgICBUaGUgdmFsdWUgc2FuaXRpemF0aW9uIGFsZ29yaXRobSBmb3IgaW5wdXRb
dHlwZT11cmxdIHNob3VsZCBzdHJpcCB3aGl0ZXNwYWNlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmNwcAppbmRleCAxMTJiMDAxLi4zZWI3NzFiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmNwcApA
QCAtMTI1LDcgKzEyNSw3IEBAIHN0YXRpYyBib29sIElEQklzVmFsaWRLZXlQYXRoKGNvbnN0IFN0
cmluZyYga2V5UGF0aCkKICAgICBJREJLZXlQYXRoUGFyc2VFcnJvciBlcnJvcjsKICAgICBWZWN0
b3I8U3RyaW5nPiBrZXlQYXRoRWxlbWVudHM7CiAgICAgSURCUGFyc2VLZXlQYXRoKGtleVBhdGgs
IGtleVBhdGhFbGVtZW50cywgZXJyb3IpOwotICAgIHJldHVybiBlcnJvciA9PSBJREJLZXlQYXRo
UGFyc2VFcnJvck5vbmU7CisgICAgcmV0dXJuIGVycm9yID09IElEQktleVBhdGhQYXJzZUVycm9y
OjpOb25lOwogfQogCiB2b2lkIElEQlBhcnNlS2V5UGF0aChjb25zdCBTdHJpbmcmIGtleVBhdGgs
IFZlY3RvcjxTdHJpbmc+JiBlbGVtZW50cywgSURCS2V5UGF0aFBhcnNlRXJyb3ImIGVycm9yKQpA
QCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSURCUGFyc2VLZXlQYXRoKGNvbnN0IFN0cmluZyYga2V5
UGF0aCwgVmVjdG9yPFN0cmluZz4mIGVsZW1lbnRzLCBJREJLZXlQYXRoCiAgICAgZWxzZSBpZiAo
dG9rZW5UeXBlID09IElEQktleVBhdGhMZXhlcjo6VG9rZW5FbmQpCiAgICAgICAgIHN0YXRlID0g
RW5kOwogICAgIGVsc2UgewotICAgICAgICBlcnJvciA9IElEQktleVBhdGhQYXJzZUVycm9yU3Rh
cnQ7CisgICAgICAgIGVycm9yID0gSURCS2V5UGF0aFBhcnNlRXJyb3I6OlN0YXJ0OwogICAgICAg
ICByZXR1cm47CiAgICAgfQogCkBAIC0xNjUsNyArMTY1LDcgQEAgdm9pZCBJREJQYXJzZUtleVBh
dGgoY29uc3QgU3RyaW5nJiBrZXlQYXRoLCBWZWN0b3I8U3RyaW5nPiYgZWxlbWVudHMsIElEQktl
eVBhdGgKICAgICAgICAgICAgIGVsc2UgaWYgKHRva2VuVHlwZSA9PSBJREJLZXlQYXRoTGV4ZXI6
OlRva2VuRW5kKQogICAgICAgICAgICAgICAgIHN0YXRlID0gRW5kOwogICAgICAgICAgICAgZWxz
ZSB7Ci0gICAgICAgICAgICAgICAgZXJyb3IgPSBJREJLZXlQYXRoUGFyc2VFcnJvcklkZW50aWZp
ZXI7CisgICAgICAgICAgICAgICAgZXJyb3IgPSBJREJLZXlQYXRoUGFyc2VFcnJvcjo6SWRlbnRp
ZmllcjsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBicmVhazsKQEAgLTE3OCwxMyArMTc4LDEzIEBAIHZvaWQgSURCUGFyc2VLZXlQYXRoKGNvbnN0
IFN0cmluZyYga2V5UGF0aCwgVmVjdG9yPFN0cmluZz4mIGVsZW1lbnRzLCBJREJLZXlQYXRoCiAg
ICAgICAgICAgICBpZiAodG9rZW5UeXBlID09IElEQktleVBhdGhMZXhlcjo6VG9rZW5JZGVudGlm
aWVyKQogICAgICAgICAgICAgICAgIHN0YXRlID0gSWRlbnRpZmllcjsKICAgICAgICAgICAgIGVs
c2UgewotICAgICAgICAgICAgICAgIGVycm9yID0gSURCS2V5UGF0aFBhcnNlRXJyb3JEb3Q7Cisg
ICAgICAgICAgICAgICAgZXJyb3IgPSBJREJLZXlQYXRoUGFyc2VFcnJvcjo6RG90OwogICAgICAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgRW5kOiB7Ci0gICAgICAgICAgICBlcnJvciA9IElEQktleVBh
dGhQYXJzZUVycm9yTm9uZTsKKyAgICAgICAgICAgIGVycm9yID0gSURCS2V5UGF0aFBhcnNlRXJy
b3I6Ok5vbmU7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAgfQpAQCAt
MTkyLDE0ICsxOTIsMTQgQEAgdm9pZCBJREJQYXJzZUtleVBhdGgoY29uc3QgU3RyaW5nJiBrZXlQ
YXRoLCBWZWN0b3I8U3RyaW5nPiYgZWxlbWVudHMsIElEQktleVBhdGgKIH0KIAogSURCS2V5UGF0
aDo6SURCS2V5UGF0aChjb25zdCBTdHJpbmcmIHN0cmluZykKLSAgICA6IG1fdHlwZShTdHJpbmdU
eXBlKQorICAgIDogbV90eXBlKEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OlN0cmluZykKICAgICAs
IG1fc3RyaW5nKHN0cmluZykKIHsKICAgICBBU1NFUlQoIW1fc3RyaW5nLmlzTnVsbCgpKTsKIH0K
IAogSURCS2V5UGF0aDo6SURCS2V5UGF0aChjb25zdCBWZWN0b3I8U3RyaW5nPiYgYXJyYXkpCi0g
ICAgOiBtX3R5cGUoQXJyYXlUeXBlKQorICAgIDogbV90eXBlKEluZGV4ZWREQjo6S2V5UGF0aFR5
cGU6OkFycmF5KQogICAgICwgbV9hcnJheShhcnJheSkKIHsKICNpZm5kZWYgTkRFQlVHCkBAIC0y
MTEsMTMgKzIxMSwxMyBAQCBJREJLZXlQYXRoOjpJREJLZXlQYXRoKGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBhcnJheSkKIGJvb2wgSURCS2V5UGF0aDo6aXNWYWxpZCgpIGNvbnN0CiB7CiAgICAgc3dp
dGNoIChtX3R5cGUpIHsKLSAgICBjYXNlIE51bGxUeXBlOgorICAgIGNhc2UgSW5kZXhlZERCOjpL
ZXlQYXRoVHlwZTo6TnVsbDoKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgY2FzZSBTdHJp
bmdUeXBlOgorICAgIGNhc2UgSW5kZXhlZERCOjpLZXlQYXRoVHlwZTo6U3RyaW5nOgogICAgICAg
ICByZXR1cm4gSURCSXNWYWxpZEtleVBhdGgobV9zdHJpbmcpOwogCi0gICAgY2FzZSBBcnJheVR5
cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpBcnJheToKICAgICAgICAgaWYg
KG1fYXJyYXkuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICBm
b3IgKGF1dG8mIGtleSA6IG1fYXJyYXkpIHsKQEAgLTIzNiwxMSArMjM2LDExIEBAIGJvb2wgSURC
S2V5UGF0aDo6b3BlcmF0b3I9PShjb25zdCBJREJLZXlQYXRoJiBvdGhlcikgY29uc3QKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCiAgICAgc3dpdGNoIChtX3R5cGUpIHsKLSAgICBjYXNlIE51bGxU
eXBlOgorICAgIGNhc2UgSW5kZXhlZERCOjpLZXlQYXRoVHlwZTo6TnVsbDoKICAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgY2FzZSBTdHJpbmdUeXBlOgorICAgIGNhc2UgSW5kZXhlZERCOjpLZXlQ
YXRoVHlwZTo6U3RyaW5nOgogICAgICAgICByZXR1cm4gbV9zdHJpbmcgPT0gb3RoZXIubV9zdHJp
bmc7Ci0gICAgY2FzZSBBcnJheVR5cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBl
OjpBcnJheToKICAgICAgICAgcmV0dXJuIG1fYXJyYXkgPT0gb3RoZXIubV9hcnJheTsKICAgICB9
CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0yNjQsMTIgKzI2NCwxMiBAQCB2b2lkIElE
QktleVBhdGg6OmVuY29kZShLZXllZEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiB7CiAgICAgZW5j
b2Rlci5lbmNvZGVFbnVtKCJ0eXBlIiwgbV90eXBlKTsKICAgICBzd2l0Y2ggKG1fdHlwZSkgewot
ICAgIGNhc2UgSURCS2V5UGF0aDo6TnVsbFR5cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBh
dGhUeXBlOjpOdWxsOgogICAgICAgICBicmVhazsKLSAgICBjYXNlIElEQktleVBhdGg6OlN0cmlu
Z1R5cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmc6CiAgICAgICAg
IGVuY29kZXIuZW5jb2RlU3RyaW5nKCJzdHJpbmciLCBtX3N0cmluZyk7CiAgICAgICAgIGJyZWFr
OwotICAgIGNhc2UgSURCS2V5UGF0aDo6QXJyYXlUeXBlOgorICAgIGNhc2UgSW5kZXhlZERCOjpL
ZXlQYXRoVHlwZTo6QXJyYXk6CiAgICAgICAgIGVuY29kZXIuZW5jb2RlT2JqZWN0cygiYXJyYXki
LCBtX2FycmF5LmJlZ2luKCksIG1fYXJyYXkuZW5kKCksIFtdKFdlYkNvcmU6OktleWVkRW5jb2Rl
ciYgZW5jb2RlciwgY29uc3QgU3RyaW5nJiBzdHJpbmcpIHsKICAgICAgICAgICAgIGVuY29kZXIu
ZW5jb2RlU3RyaW5nKCJzdHJpbmciLCBzdHJpbmcpOwogICAgICAgICB9KTsKQEAgLTI4MSwyMCAr
MjgxLDIwIEBAIHZvaWQgSURCS2V5UGF0aDo6ZW5jb2RlKEtleWVkRW5jb2RlciYgZW5jb2Rlcikg
Y29uc3QKIAogYm9vbCBJREJLZXlQYXRoOjpkZWNvZGUoS2V5ZWREZWNvZGVyJiBkZWNvZGVyLCBJ
REJLZXlQYXRoJiByZXN1bHQpCiB7Ci0gICAgYXV0byBlbnVtRnVuY3Rpb24gPSBbXShpbnQ2NF90
IHZhbHVlKSB7Ci0gICAgICAgIHJldHVybiB2YWx1ZSA9PSBOdWxsVHlwZSB8fCB2YWx1ZSA9PSBT
dHJpbmdUeXBlIHx8IHZhbHVlID09IEFycmF5VHlwZTsKKyAgICBhdXRvIGVudW1GdW5jdGlvbiA9
IFtdKEluZGV4ZWREQjo6S2V5UGF0aFR5cGUgdmFsdWUpIHsKKyAgICAgICAgcmV0dXJuIHZhbHVl
ID09IEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6Ok51bGwgfHwgdmFsdWUgPT0gSW5kZXhlZERCOjpL
ZXlQYXRoVHlwZTo6U3RyaW5nIHx8IHZhbHVlID09IEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OkFy
cmF5OwogICAgIH07CiAKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bSgidHlwZSIsIHJlc3Vs
dC5tX3R5cGUsIGVudW1GdW5jdGlvbikpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlm
IChyZXN1bHQubV90eXBlID09IE51bGxUeXBlKQorICAgIGlmIChyZXN1bHQubV90eXBlID09IElu
ZGV4ZWREQjo6S2V5UGF0aFR5cGU6Ok51bGwpCiAgICAgICAgIHJldHVybiB0cnVlOwogCi0gICAg
aWYgKHJlc3VsdC5tX3R5cGUgPT0gU3RyaW5nVHlwZSkKKyAgICBpZiAocmVzdWx0Lm1fdHlwZSA9
PSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmcpCiAgICAgICAgIHJldHVybiBkZWNvZGVy
LmRlY29kZVN0cmluZygic3RyaW5nIiwgcmVzdWx0Lm1fc3RyaW5nKTsKIAotICAgIEFTU0VSVChy
ZXN1bHQubV90eXBlID09IEFycmF5VHlwZSk7CisgICAgQVNTRVJUKHJlc3VsdC5tX3R5cGUgPT0g
SW5kZXhlZERCOjpLZXlQYXRoVHlwZTo6QXJyYXkpOwogCiAgICAgYXV0byBhcnJheUZ1bmN0aW9u
ID0gW10oS2V5ZWREZWNvZGVyJiBkZWNvZGVyLCBTdHJpbmcmIHJlc3VsdCkgewogICAgICAgICBy
ZXR1cm4gZGVjb2Rlci5kZWNvZGVTdHJpbmcoInN0cmluZyIsIHJlc3VsdCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgKaW5kZXggYmM5OWI3NS4uMTI3
YWM3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5
UGF0aC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGgu
aApAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAKKyNp
bmNsdWRlICJJbmRleGVkREIuaCIKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTM2LDQyICszNywzNiBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiBjbGFzcyBLZXllZERlY29kZXI7CiBjbGFzcyBLZXllZEVuY29kZXI7CiAKLWVudW0g
SURCS2V5UGF0aFBhcnNlRXJyb3IgewotICAgIElEQktleVBhdGhQYXJzZUVycm9yTm9uZSwKLSAg
ICBJREJLZXlQYXRoUGFyc2VFcnJvclN0YXJ0LAotICAgIElEQktleVBhdGhQYXJzZUVycm9ySWRl
bnRpZmllciwKLSAgICBJREJLZXlQYXRoUGFyc2VFcnJvckRvdCwKK2VudW0gY2xhc3MgSURCS2V5
UGF0aFBhcnNlRXJyb3IgeworICAgIE5vbmUsCisgICAgU3RhcnQsCisgICAgSWRlbnRpZmllciwK
KyAgICBEb3QsCiB9OwogCiB2b2lkIElEQlBhcnNlS2V5UGF0aChjb25zdCBTdHJpbmcmLCBWZWN0
b3I8U3RyaW5nPiYsIElEQktleVBhdGhQYXJzZUVycm9yJik7CiAKIGNsYXNzIElEQktleVBhdGgg
ewogcHVibGljOgotICAgIElEQktleVBhdGgoKSA6IG1fdHlwZShOdWxsVHlwZSkgeyB9CisgICAg
SURCS2V5UGF0aCgpIHsgfQogICAgIFdFQkNPUkVfRVhQT1JUIGV4cGxpY2l0IElEQktleVBhdGgo
Y29uc3QgU3RyaW5nJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgZXhwbGljaXQgSURCS2V5UGF0aChj
b25zdCBWZWN0b3I8U3RyaW5nPiYgYXJyYXkpOwogCi0gICAgZW51bSBUeXBlIHsKLSAgICAgICAg
TnVsbFR5cGUgPSAwLAotICAgICAgICBTdHJpbmdUeXBlLAotICAgICAgICBBcnJheVR5cGUKLSAg
ICB9OwotCi0gICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CisgICAgSW5k
ZXhlZERCOjpLZXlQYXRoVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKICAg
ICBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYXJyYXkoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNT
RVJUKG1fdHlwZSA9PSBBcnJheVR5cGUpOworICAgICAgICBBU1NFUlQobV90eXBlID09IEluZGV4
ZWREQjo6S2V5UGF0aFR5cGU6OkFycmF5KTsKICAgICAgICAgcmV0dXJuIG1fYXJyYXk7CiAgICAg
fQogCiAgICAgY29uc3QgU3RyaW5nJiBzdHJpbmcoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNT
RVJUKG1fdHlwZSA9PSBTdHJpbmdUeXBlKTsKKyAgICAgICAgQVNTRVJUKG1fdHlwZSA9PSBJbmRl
eGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmcpOwogICAgICAgICByZXR1cm4gbV9zdHJpbmc7CiAg
ICAgfQogCi0gICAgYm9vbCBpc051bGwoKSBjb25zdCB7IHJldHVybiBtX3R5cGUgPT0gTnVsbFR5
cGU7IH0KKyAgICBib29sIGlzTnVsbCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBJbmRleGVk
REI6OktleVBhdGhUeXBlOjpOdWxsOyB9CiAgICAgYm9vbCBpc1ZhbGlkKCkgY29uc3Q7CiAgICAg
Ym9vbCBvcGVyYXRvcj09KGNvbnN0IElEQktleVBhdGgmIG90aGVyKSBjb25zdDsKIApAQCAtODQs
NyArNzksNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIGJvb2wgZGVjb2Rl
KEtleWVkRGVjb2RlciYsIElEQktleVBhdGgmKTsKIAogcHJpdmF0ZToKLSAgICBUeXBlIG1fdHlw
ZTsKKyAgICBJbmRleGVkREI6OktleVBhdGhUeXBlIG1fdHlwZSB7IEluZGV4ZWREQjo6S2V5UGF0
aFR5cGU6Ok51bGwgfTsKICAgICBTdHJpbmcgbV9zdHJpbmc7CiAgICAgVmVjdG9yPFN0cmluZz4g
bV9hcnJheTsKIH07CkBAIC05NSwxMiArOTAsMTIgQEAgdm9pZCBJREJLZXlQYXRoOjplbmNvZGUo
RW5jb2RlciYgZW5jb2RlcikgY29uc3QKICAgICBlbmNvZGVyLmVuY29kZUVudW0obV90eXBlKTsK
IAogICAgIHN3aXRjaCAobV90eXBlKSB7Ci0gICAgY2FzZSBJREJLZXlQYXRoOjpOdWxsVHlwZToK
KyAgICBjYXNlIEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6Ok51bGw6CiAgICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgSURCS2V5UGF0aDo6U3RyaW5nVHlwZToKKyAgICBjYXNlIEluZGV4ZWREQjo6S2V5
UGF0aFR5cGU6OlN0cmluZzoKICAgICAgICAgZW5jb2RlciA8PCBtX3N0cmluZzsKICAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBJREJLZXlQYXRoOjpBcnJheVR5cGU6CisgICAgY2FzZSBJbmRleGVk
REI6OktleVBhdGhUeXBlOjpBcnJheToKICAgICAgICAgZW5jb2RlciA8PCBtX2FycmF5OwogICAg
ICAgICBicmVhazsKICAgICBkZWZhdWx0OgpAQCAtMTExLDE2ICsxMDYsMTYgQEAgdm9pZCBJREJL
ZXlQYXRoOjplbmNvZGUoRW5jb2RlciYgZW5jb2RlcikgY29uc3QKIHRlbXBsYXRlPGNsYXNzIERl
Y29kZXI+CiBib29sIElEQktleVBhdGg6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyLCBJREJLZXlQ
YXRoJiBrZXlQYXRoKQogewotICAgIElEQktleVBhdGg6OlR5cGUgdHlwZTsKKyAgICBJbmRleGVk
REI6OktleVBhdGhUeXBlIHR5cGU7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0odHlwZSkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHN3aXRjaCAodHlwZSkgewotICAgIGNhc2Ug
SURCS2V5UGF0aDo6TnVsbFR5cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpO
dWxsOgogICAgICAgICBrZXlQYXRoID0gSURCS2V5UGF0aCgpOwogICAgICAgICByZXR1cm4gdHJ1
ZTsKIAotICAgIGNhc2UgSURCS2V5UGF0aDo6U3RyaW5nVHlwZTogeworICAgIGNhc2UgSW5kZXhl
ZERCOjpLZXlQYXRoVHlwZTo6U3RyaW5nOiB7CiAgICAgICAgIFN0cmluZyBzdHJpbmc7CiAgICAg
ICAgIGlmICghZGVjb2Rlci5kZWNvZGUoc3RyaW5nKSkKICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKQEAgLTEyOCw3ICsxMjMsNyBAQCBib29sIElEQktleVBhdGg6OmRlY29kZShEZWNvZGVyJiBk
ZWNvZGVyLCBJREJLZXlQYXRoJiBrZXlQYXRoKQogICAgICAgICBrZXlQYXRoID0gSURCS2V5UGF0
aChzdHJpbmcpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9Ci0gICAgY2FzZSBJREJLZXlQ
YXRoOjpBcnJheVR5cGU6IHsKKyAgICBjYXNlIEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OkFycmF5
OiB7CiAgICAgICAgIFZlY3RvcjxTdHJpbmc+IGFycmF5OwogICAgICAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKGFycmF5KSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0luZGV4ZWREQi5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSW5kZXhlZERCLmgKaW5kZXggNzE2ZWZhMS4uN2ZjNTFkYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSW5kZXhlZERCLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSW5kZXhlZERCLmgKQEAgLTY0
LDYgKzY0LDEyIEBAIGVudW0gY2xhc3MgVmVyc2lvbk51bGxuZXNzIHsKICAgICBOdWxsLAogICAg
IE5vbk51bGwsCiB9OworCitlbnVtIGNsYXNzIEtleVBhdGhUeXBlIHsKKyAgICBOdWxsLAorICAg
IFN0cmluZywKKyAgICBBcnJheSwKK307CiAgICAgCiAvLyBJbiBvcmRlciBvZiB0aGUgbGVhc3Qg
dG8gdGhlIGhpZ2hlc3QgcHJlY2VkZW50IGluIHRlcm1zIG9mIHNvcnQgb3JkZXIuCiBlbnVtIEtl
eVR5cGUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvbGVn
YWN5L0xlZ2FjeURhdGFiYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L2xlZ2FjeS9MZWdhY3lEYXRhYmFzZS5jcHAKaW5kZXggNTQ4NTVhZi4uYjAxNGU2NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvbGVnYWN5L0xlZ2FjeURhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9sZWdhY3kvTGVn
YWN5RGF0YWJhc2UuY3BwCkBAIC0yMDEsNyArMjAxLDcgQEAgUmVmUHRyPElEQk9iamVjdFN0b3Jl
PiBMZWdhY3lEYXRhYmFzZTo6Y3JlYXRlT2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBuYW1lLCBj
b24KICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgaWYgKGF1dG9JbmNyZW1lbnQgJiYg
KChrZXlQYXRoLnR5cGUoKSA9PSBJREJLZXlQYXRoOjpTdHJpbmdUeXBlICYmIGtleVBhdGguc3Ry
aW5nKCkuaXNFbXB0eSgpKSB8fCBrZXlQYXRoLnR5cGUoKSA9PSBJREJLZXlQYXRoOjpBcnJheVR5
cGUpKSB7CisgICAgaWYgKGF1dG9JbmNyZW1lbnQgJiYgKChrZXlQYXRoLnR5cGUoKSA9PSBJbmRl
eGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmcgJiYga2V5UGF0aC5zdHJpbmcoKS5pc0VtcHR5KCkp
IHx8IGtleVBhdGgudHlwZSgpID09IEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OkFycmF5KSkgewog
ICAgICAgICBlYyA9IElEQkRhdGFiYXNlRXhjZXB0aW9uOjpJbnZhbGlkQWNjZXNzRXJyb3I7CiAg
ICAgICAgIHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL2xlZ2FjeS9MZWdhY3lPYmplY3RTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9sZWdhY3kvTGVnYWN5T2JqZWN0U3RvcmUuY3BwCmluZGV4IDc4
MGE5ZTAuLjk3MDAxM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL2xlZ2FjeS9MZWdhY3lPYmplY3RTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvbGVnYWN5L0xlZ2FjeU9iamVjdFN0b3JlLmNwcApAQCAtMzg1LDcgKzM4
NSw3IEBAIFJlZlB0cjxJREJJbmRleD4gTGVnYWN5T2JqZWN0U3RvcmU6OmNyZWF0ZUluZGV4KFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsCiAgICAgICAgIHJldHVybiAwOwogICAgIH0K
IAotICAgIGlmIChrZXlQYXRoLnR5cGUoKSA9PSBJREJLZXlQYXRoOjpBcnJheVR5cGUgJiYgbXVs
dGlFbnRyeSkgeworICAgIGlmIChrZXlQYXRoLnR5cGUoKSA9PSBJbmRleGVkREI6OktleVBhdGhU
eXBlOjpBcnJheSAmJiBtdWx0aUVudHJ5KSB7CiAgICAgICAgIGVjID0gSURCRGF0YWJhc2VFeGNl
cHRpb246OkludmFsaWRBY2Nlc3NFcnJvcjsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGllcy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcApp
bmRleCBjMWRmYzkxLi5hN2NiZDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcApAQCAtMTg3LDcgKzE4Nyw3IEBAIHN0YXRpYyBS
ZWZQdHI8SURCS2V5PiBpbnRlcm5hbENyZWF0ZUlEQktleUZyb21TY3JpcHRWYWx1ZUFuZEtleVBh
dGgoRXhlY1N0YXRlKiBlCiAgICAgVmVjdG9yPFN0cmluZz4ga2V5UGF0aEVsZW1lbnRzOwogICAg
IElEQktleVBhdGhQYXJzZUVycm9yIGVycm9yOwogICAgIElEQlBhcnNlS2V5UGF0aChrZXlQYXRo
LCBrZXlQYXRoRWxlbWVudHMsIGVycm9yKTsKLSAgICBBU1NFUlQoZXJyb3IgPT0gSURCS2V5UGF0
aFBhcnNlRXJyb3JOb25lKTsKKyAgICBBU1NFUlQoZXJyb3IgPT0gSURCS2V5UGF0aFBhcnNlRXJy
b3I6Ok5vbmUpOwogCiAgICAgSlNWYWx1ZSBqc1ZhbHVlID0gdmFsdWUuanNWYWx1ZSgpOwogICAg
IGpzVmFsdWUgPSBnZXROdGhWYWx1ZU9uS2V5UGF0aChleGVjLCBqc1ZhbHVlLCBrZXlQYXRoRWxl
bWVudHMsIGtleVBhdGhFbGVtZW50cy5zaXplKCkpOwpAQCAtMjM2LDEyICsyMzYsMTIgQEAgYm9v
bCBpbmplY3RJREJLZXlJbnRvU2NyaXB0VmFsdWUoRE9NUmVxdWVzdFN0YXRlKiByZXF1ZXN0U3Rh
dGUsIFBhc3NSZWZQdHI8SURCS2UKIHsKICAgICBMT0coU3RvcmFnZUFQSSwgImluamVjdElEQktl
eUludG9TY3JpcHRWYWx1ZSIpOwogCi0gICAgQVNTRVJUKGtleVBhdGgudHlwZSgpID09IElEQktl
eVBhdGg6OlN0cmluZ1R5cGUpOworICAgIEFTU0VSVChrZXlQYXRoLnR5cGUoKSA9PSBJbmRleGVk
REI6OktleVBhdGhUeXBlOjpTdHJpbmcpOwogCiAgICAgVmVjdG9yPFN0cmluZz4ga2V5UGF0aEVs
ZW1lbnRzOwogICAgIElEQktleVBhdGhQYXJzZUVycm9yIGVycm9yOwogICAgIElEQlBhcnNlS2V5
UGF0aChrZXlQYXRoLnN0cmluZygpLCBrZXlQYXRoRWxlbWVudHMsIGVycm9yKTsKLSAgICBBU1NF
UlQoZXJyb3IgPT0gSURCS2V5UGF0aFBhcnNlRXJyb3JOb25lKTsKKyAgICBBU1NFUlQoZXJyb3Ig
PT0gSURCS2V5UGF0aFBhcnNlRXJyb3I6Ok5vbmUpOwogCiAgICAgaWYgKGtleVBhdGhFbGVtZW50
cy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTI2Myw3ICsyNjMsNyBAQCBS
ZWZQdHI8SURCS2V5PiBjcmVhdGVJREJLZXlGcm9tU2NyaXB0VmFsdWVBbmRLZXlQYXRoKEV4ZWNT
dGF0ZSogZXhlYywgY29uc3QgRGVwcgogICAgIExPRyhTdG9yYWdlQVBJLCAiY3JlYXRlSURCS2V5
RnJvbVNjcmlwdFZhbHVlQW5kS2V5UGF0aCIpOwogICAgIEFTU0VSVCgha2V5UGF0aC5pc051bGwo
KSk7CiAKLSAgICBpZiAoa2V5UGF0aC50eXBlKCkgPT0gSURCS2V5UGF0aDo6QXJyYXlUeXBlKSB7
CisgICAgaWYgKGtleVBhdGgudHlwZSgpID09IEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OkFycmF5
KSB7CiAgICAgICAgIFZlY3RvcjxSZWZQdHI8SURCS2V5Pj4gcmVzdWx0OwogICAgICAgICBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgYXJyYXkgPSBrZXlQYXRoLmFycmF5KCk7CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgYXJyYXkuc2l6ZSgpOyBpKyspIHsKQEAgLTI3NSw3ICsyNzUsNyBA
QCBSZWZQdHI8SURCS2V5PiBjcmVhdGVJREJLZXlGcm9tU2NyaXB0VmFsdWVBbmRLZXlQYXRoKEV4
ZWNTdGF0ZSogZXhlYywgY29uc3QgRGVwcgogICAgICAgICByZXR1cm4gSURCS2V5OjpjcmVhdGVB
cnJheShyZXN1bHQpOwogICAgIH0KIAotICAgIEFTU0VSVChrZXlQYXRoLnR5cGUoKSA9PSBJREJL
ZXlQYXRoOjpTdHJpbmdUeXBlKTsKKyAgICBBU1NFUlQoa2V5UGF0aC50eXBlKCkgPT0gSW5kZXhl
ZERCOjpLZXlQYXRoVHlwZTo6U3RyaW5nKTsKICAgICByZXR1cm4gaW50ZXJuYWxDcmVhdGVJREJL
ZXlGcm9tU2NyaXB0VmFsdWVBbmRLZXlQYXRoKGV4ZWMsIHZhbHVlLCBrZXlQYXRoLnN0cmluZygp
KTsKIH0KIApAQCAtMjgzLDExICsyODMsMTEgQEAgYm9vbCBjYW5JbmplY3RJREJLZXlJbnRvU2Ny
aXB0VmFsdWUoRE9NUmVxdWVzdFN0YXRlKiByZXF1ZXN0U3RhdGUsIGNvbnN0IERlcHJlY2EKIHsK
ICAgICBMT0coU3RvcmFnZUFQSSwgImNhbkluamVjdElEQktleUludG9TY3JpcHRWYWx1ZSIpOwog
Ci0gICAgQVNTRVJUKGtleVBhdGgudHlwZSgpID09IElEQktleVBhdGg6OlN0cmluZ1R5cGUpOwor
ICAgIEFTU0VSVChrZXlQYXRoLnR5cGUoKSA9PSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpTdHJp
bmcpOwogICAgIFZlY3RvcjxTdHJpbmc+IGtleVBhdGhFbGVtZW50czsKICAgICBJREJLZXlQYXRo
UGFyc2VFcnJvciBlcnJvcjsKICAgICBJREJQYXJzZUtleVBhdGgoa2V5UGF0aC5zdHJpbmcoKSwg
a2V5UGF0aEVsZW1lbnRzLCBlcnJvcik7Ci0gICAgQVNTRVJUKGVycm9yID09IElEQktleVBhdGhQ
YXJzZUVycm9yTm9uZSk7CisgICAgQVNTRVJUKGVycm9yID09IElEQktleVBhdGhQYXJzZUVycm9y
OjpOb25lKTsKIAogICAgIGlmICgha2V5UGF0aEVsZW1lbnRzLnNpemUoKSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJB
bnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJBbnlDdXN0b20u
Y3BwCmluZGV4IDY2NGI2ZmEuLjdkNmYzZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSURCQW55Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0lEQkFueUN1c3RvbS5jcHAKQEAgLTU2LDExICs1NiwxMSBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiBzdGF0aWMgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgSURCS2V5UGF0aCYgdmFsdWUpCiB7CiAgICAgc3dp
dGNoICh2YWx1ZS50eXBlKCkpIHsKLSAgICBjYXNlIElEQktleVBhdGg6Ok51bGxUeXBlOgorICAg
IGNhc2UgSW5kZXhlZERCOjpLZXlQYXRoVHlwZTo6TnVsbDoKICAgICAgICAgcmV0dXJuIGpzTnVs
bCgpOwotICAgIGNhc2UgSURCS2V5UGF0aDo6U3RyaW5nVHlwZToKKyAgICBjYXNlIEluZGV4ZWRE
Qjo6S2V5UGF0aFR5cGU6OlN0cmluZzoKICAgICAgICAgcmV0dXJuIGpzU3RyaW5nV2l0aENhY2hl
KGV4ZWMsIHZhbHVlLnN0cmluZygpKTsKLSAgICBjYXNlIElEQktleVBhdGg6OkFycmF5VHlwZToK
KyAgICBjYXNlIEluZGV4ZWREQjo6S2V5UGF0aFR5cGU6OkFycmF5OgogICAgICAgICBSZWZQdHI8
RE9NU3RyaW5nTGlzdD4ga2V5UGF0aHMgPSBET01TdHJpbmdMaXN0OjpjcmVhdGUoKTsKICAgICAg
ICAgZm9yIChWZWN0b3I8U3RyaW5nPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSB2YWx1ZS5hcnJheSgp
LmJlZ2luKCk7IGl0ICE9IHZhbHVlLmFycmF5KCkuZW5kKCk7ICsraXQpCiAgICAgICAgICAgICBr
ZXlQYXRocy0+YXBwZW5kKCppdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckluZGV4ZWREQkFnZW50LmNwcAppbmRleCA5OWQ2MjhkLi5lMGUzMzNjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbmRleGVkREJBZ2Vu
dC5jcHAKQEAgLTI1MCwxOSArMjUwLDE5IEBAIHN0YXRpYyBSZWZQdHI8S2V5UGF0aD4ga2V5UGF0
aEZyb21JREJLZXlQYXRoKGNvbnN0IElEQktleVBhdGgmIGlkYktleVBhdGgpCiB7CiAgICAgUmVm
UHRyPEtleVBhdGg+IGtleVBhdGg7CiAgICAgc3dpdGNoIChpZGJLZXlQYXRoLnR5cGUoKSkgewot
ICAgIGNhc2UgSURCS2V5UGF0aDo6TnVsbFR5cGU6CisgICAgY2FzZSBJbmRleGVkREI6OktleVBh
dGhUeXBlOjpOdWxsOgogICAgICAgICBrZXlQYXRoID0gS2V5UGF0aDo6Y3JlYXRlKCkKICAgICAg
ICAgICAgIC5zZXRUeXBlKEtleVBhdGg6OlR5cGU6Ok51bGwpCiAgICAgICAgICAgICAucmVsZWFz
ZSgpOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIElEQktleVBhdGg6OlN0cmluZ1R5cGU6Cisg
ICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmc6CiAgICAgICAgIGtleVBhdGgg
PSBLZXlQYXRoOjpjcmVhdGUoKQogICAgICAgICAgICAgLnNldFR5cGUoS2V5UGF0aDo6VHlwZTo6
U3RyaW5nKQogICAgICAgICAgICAgLnJlbGVhc2UoKTsKICAgICAgICAga2V5UGF0aC0+c2V0U3Ry
aW5nKGlkYktleVBhdGguc3RyaW5nKCkpOwogCiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgSURC
S2V5UGF0aDo6QXJyYXlUeXBlOiB7CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpB
cnJheTogewogICAgICAgICBhdXRvIGFycmF5ID0gSW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8
U3RyaW5nPjo6Y3JlYXRlKCk7CiAgICAgICAgIGZvciAoYXV0byYgc3RyaW5nIDogaWRiS2V5UGF0
aC5hcnJheSgpKQogICAgICAgICAgICAgYXJyYXktPmFkZEl0ZW0oc3RyaW5nKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>