<?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>124635</bug_id>
          
          <creation_ts>2013-11-19 22:18:53 -0800</creation_ts>
          <short_desc>Cleanup getOrEstablishIDBDatabaseMetadata and stub it out in WK2</short_desc>
          <delta_ts>2013-11-20 07:57:59 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <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>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>952429</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-19 22:18:53 -0800</bug_when>
    <thetext>Cleanup getOrEstablishIDBDatabaseMetadata and stub it out in WK2

-getOrEstablishIDBDatabaseMetadata should not have to take a database name parameter because the server connection should already know what database name it represents.
-Stub out the message for getOrEstablishIDBDatabaseMetadata in the DatabaseProcess in WK2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952430</commentid>
    <comment_count>1</comment_count>
      <attachid>217383</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-19 22:21:07 -0800</bug_when>
    <thetext>Created attachment 217383
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952431</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-11-19 22:22:12 -0800</bug_when>
    <thetext>You forgot the code I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952433</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-19 22:25:10 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; You forgot the code I think.

One of these days, git and I will get along.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952434</commentid>
    <comment_count>4</comment_count>
      <attachid>217384</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-19 22:25:31 -0800</bug_when>
    <thetext>Created attachment 217384
Patch v1 with code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952447</commentid>
    <comment_count>5</comment_count>
      <attachid>217384</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-11-19 23:17:25 -0800</bug_when>
    <thetext>Comment on attachment 217384
Patch v1 with code.

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

&gt; Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.h:-63
&gt; -    virtual void open(const String&amp; name, uint64_t version, int64_t transactionId, PassRefPtr&lt;IDBCallbacks&gt;, PassRefPtr&lt;IDBDatabaseCallbacks&gt;, const SecurityOrigin&amp; openingOrigin, const SecurityOrigin&amp; mainFrameOrigin) = 0;

what&apos;s with the deconstification? (will probably be explained later in the patch). Weren&apos;t we bitten by mutable securityorigins in the past?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>952585</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-11-20 07:57:59 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/159563</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217383</attachid>
            <date>2013-11-19 22:21:07 -0800</date>
            <delta_ts>2013-11-19 22:25:31 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>3064</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxNTkxMmI1Li5iYTc5YmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTMtMTEtMTkgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIENsZWFudXAgZ2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhIGFuZCBzdHViIGl0
IG91dCBpbiBXSzIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEyNDYzNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIGdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSgpIHNob3VsZCBub3QgaGF2ZSB0
byB0YWtlIGEgZGF0YWJhc2UgbmFtZSBwYXJhbWV0ZXIgYmVjYXVzZSB0aGUgCisgICAgICAgIHNl
cnZlciBjb25uZWN0aW9uIHNob3VsZCBhbHJlYWR5IGtub3cgd2hhdCBkYXRhYmFzZSBuYW1lIGl0
IHJlcHJlc2VudHMuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZUJh
Y2tlbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VCYWNrZW5kOjpvcGVuSW50
ZXJuYWxBc3luYyk6CisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5QmFj
a2VuZEludGVyZmFjZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2xldmVsZGIvSURC
RmFjdG9yeUJhY2tlbmRMZXZlbERCLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkZhY3RvcnlC
YWNrZW5kTGV2ZWxEQjo6ZGVsZXRlRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRmFj
dG9yeUJhY2tlbmRMZXZlbERCOjpvcGVuKToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9s
ZXZlbGRiL0lEQkZhY3RvcnlCYWNrZW5kTGV2ZWxEQi5oOgorCisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSURCU2VydmVyQ29ubmVjdGlvbi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL2xldmVsZGIvSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SURCU2VydmVyQ29ubmVjdGlvbkxldmVsREI6OklEQlNlcnZlckNvbm5lY3Rpb25MZXZl
bERCKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlckNvbm5lY3Rpb25MZXZlbERCOjpnZXRP
ckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEpOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL2xldmVsZGIvSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIuaDoKKwogMjAxMy0xMS0xOSAg
U2Vva2p1IEt3b24gIDxzZW9ranVAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmFsIG9mIHJl
ZHVuZGFudCBmdW5jdGlvbiBjYWxsIGluIEVkaXRvcjo6aW5zZXJ0VGV4dFdpdGhvdXRTZW5kaW5n
VGV4dEV2ZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNmY2IyZS4uZGI5Zjc4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAt
MSw1ICsxLDMwIEBACiAyMDEzLTExLTE5ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNv
bT4KIAorICAgICAgICBDbGVhbnVwIGdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSBh
bmQgc3R1YiBpdCBvdXQgaW4gV0syCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMjQ2MzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdHViIG91dCB0aGUgbWVzc2FnZSBmb3IgZ2V0T3JFc3RhYmxpc2hJREJE
YXRhYmFzZU1ldGFkYXRhIGluIHRoZSBEYXRhYmFzZVByb2Nlc3MuCisKKyAgICAgICAgKiBEYXRh
YmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uY3BwOgor
ICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjplc3RhYmxpc2hD
b25uZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlv
bjo6Z2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKToKKyAgICAgICAgKiBEYXRhYmFz
ZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uaDoKKyAgICAg
ICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVk
REIvV2ViSURCRmFjdG9yeUJhY2tlbmQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJGYWN0
b3J5QmFja2VuZDo6b3Blbik6CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQkZhY3RvcnlCYWNrZW5kLmg6CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFi
YXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQlNlcnZlckNvbm5lY3Rpb246OldlYklEQlNlcnZlckNvbm5lY3Rpb24pOgorICAg
ICAgICAoV2ViS2l0OjpXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpkZWxldGVEYXRhYmFzZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYklEQlNlcnZlckNvbm5lY3Rpb246OmdldE9yRXN0YWJsaXNoSURC
RGF0YWJhc2VNZXRhZGF0YSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uaDoKKworMjAxMy0xMS0xOSAgQnJhZHkgRWlkc29u
ICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgQWRkIFdlYklEQlNlcnZlckNvbm5lY3Rp
b24gYW5kIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gc3R1YnMKICAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDU2MgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217384</attachid>
            <date>2013-11-19 22:25:31 -0800</date>
            <delta_ts>2013-11-19 23:17:24 -0800</delta_ts>
            <desc>Patch v1 with code.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>23179</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxNTkxMmI1Li5iYTc5YmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTMtMTEtMTkgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIENsZWFudXAgZ2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhIGFuZCBzdHViIGl0
IG91dCBpbiBXSzIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEyNDYzNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIGdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSgpIHNob3VsZCBub3QgaGF2ZSB0
byB0YWtlIGEgZGF0YWJhc2UgbmFtZSBwYXJhbWV0ZXIgYmVjYXVzZSB0aGUgCisgICAgICAgIHNl
cnZlciBjb25uZWN0aW9uIHNob3VsZCBhbHJlYWR5IGtub3cgd2hhdCBkYXRhYmFzZSBuYW1lIGl0
IHJlcHJlc2VudHMuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZUJh
Y2tlbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VCYWNrZW5kOjpvcGVuSW50
ZXJuYWxBc3luYyk6CisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5QmFj
a2VuZEludGVyZmFjZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2xldmVsZGIvSURC
RmFjdG9yeUJhY2tlbmRMZXZlbERCLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkZhY3RvcnlC
YWNrZW5kTGV2ZWxEQjo6ZGVsZXRlRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRmFj
dG9yeUJhY2tlbmRMZXZlbERCOjpvcGVuKToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9s
ZXZlbGRiL0lEQkZhY3RvcnlCYWNrZW5kTGV2ZWxEQi5oOgorCisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSURCU2VydmVyQ29ubmVjdGlvbi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL2xldmVsZGIvSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SURCU2VydmVyQ29ubmVjdGlvbkxldmVsREI6OklEQlNlcnZlckNvbm5lY3Rpb25MZXZl
bERCKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlckNvbm5lY3Rpb25MZXZlbERCOjpnZXRP
ckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEpOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL2xldmVsZGIvSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIuaDoKKwogMjAxMy0xMS0xOSAg
U2Vva2p1IEt3b24gIDxzZW9ranVAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmFsIG9mIHJl
ZHVuZGFudCBmdW5jdGlvbiBjYWxsIGluIEVkaXRvcjo6aW5zZXJ0VGV4dFdpdGhvdXRTZW5kaW5n
VGV4dEV2ZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJEYXRhYmFzZUJhY2tlbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2VCYWNrZW5kLmNwcAppbmRleCA0OGM4NDY5Li44OWI2Yzc3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZUJhY2tlbmQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlQmFja2Vu
ZC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIElEQkRhdGFiYXNlQmFja2VuZDo6cmVtb3Zl
SW5kZXgoaW50NjRfdCBvYmplY3RTdG9yZUlkLCBpbnQ2NF90IGluZGV4SWQpCiB2b2lkIElEQkRh
dGFiYXNlQmFja2VuZDo6b3BlbkludGVybmFsQXN5bmMoKQogewogICAgIFJlZlB0cjxJREJEYXRh
YmFzZUJhY2tlbmQ+IHNlbGYgPSB0aGlzOwotICAgIG1fc2VydmVyQ29ubmVjdGlvbi0+Z2V0T3JF
c3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKG1fbWV0YWRhdGEubmFtZSwgW3NlbGZdKGNvbnN0
IElEQkRhdGFiYXNlTWV0YWRhdGEmIG1ldGFkYXRhLCBib29sIHN1Y2Nlc3MpIHsKKyAgICBtX3Nl
cnZlckNvbm5lY3Rpb24tPmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShbc2VsZl0o
Y29uc3QgSURCRGF0YWJhc2VNZXRhZGF0YSYgbWV0YWRhdGEsIGJvb2wgc3VjY2VzcykgewogICAg
ICAgICBzZWxmLT5kaWRPcGVuSW50ZXJuYWxBc3luYyhtZXRhZGF0YSwgc3VjY2Vzcyk7CiAgICAg
fSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5QmFja2VuZEludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCRmFjdG9yeUJhY2tlbmRJbnRlcmZhY2UuaAppbmRleCAzYzdjNTkzLi41NDQ4ZWIzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5QmFj
a2VuZEludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkZhY3RvcnlCYWNrZW5kSW50ZXJmYWNlLmgKQEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgfklEQkZhY3RvcnlCYWNrZW5kSW50ZXJmYWNlKCkgeyB9CiAKICAgICB2aXJ0dWFs
IHZvaWQgZ2V0RGF0YWJhc2VOYW1lcyhQYXNzUmVmUHRyPElEQkNhbGxiYWNrcz4sIFBhc3NSZWZQ
dHI8U2VjdXJpdHlPcmlnaW4+LCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5n
JiBkYXRhRGlyKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIG9wZW4oY29uc3QgU3RyaW5nJiBuYW1l
LCB1aW50NjRfdCB2ZXJzaW9uLCBpbnQ2NF90IHRyYW5zYWN0aW9uSWQsIFBhc3NSZWZQdHI8SURC
Q2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrcz4sIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1l
T3JpZ2luKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIG9wZW4oY29uc3QgU3RyaW5nJiBuYW1lLCB1
aW50NjRfdCB2ZXJzaW9uLCBpbnQ2NF90IHRyYW5zYWN0aW9uSWQsIFBhc3NSZWZQdHI8SURCQ2Fs
bGJhY2tzPiwgUGFzc1JlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrcz4sIFNlY3VyaXR5T3JpZ2lu
JiBvcGVuaW5nT3JpZ2luLCBTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKSA9IDA7CiAg
ICAgdmlydHVhbCB2b2lkIGRlbGV0ZURhdGFiYXNlKGNvbnN0IFN0cmluZyYgbmFtZSwgUGFzc1Jl
ZlB0cjxJREJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgZGF0YURpcikgPSAwOwogCiAgICAgdmlydHVh
bCB2b2lkIHJlbW92ZUlEQkRhdGFiYXNlQmFja2VuZChjb25zdCBTdHJpbmcmIHVuaXF1ZUlkZW50
aWZpZXIpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlNlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlNlcnZlckNvbm5lY3Rpb24uaAppbmRleCA3MTMyZDY3Li5hY2E0ODg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJTZXJ2ZXJDb25uZWN0aW9uLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCU2VydmVyQ29ubmVjdGlv
bi5oCkBAIC01NywxMCArNTcsMTIgQEAgcHVibGljOgogCiAgICAgdHlwZWRlZiBzdGQ6OmZ1bmN0
aW9uPHZvaWQgKGJvb2wgc3VjY2Vzcyk+IEJvb2xDYWxsYmFja0Z1bmN0aW9uOwogCisgICAgLy8g
RmFjdG9yeS1sZXZlbCBvcGVyYXRpb25zCisgICAgdmlydHVhbCB2b2lkIGRlbGV0ZURhdGFiYXNl
KGNvbnN0IFN0cmluZyYgbmFtZSwgQm9vbENhbGxiYWNrRnVuY3Rpb24gc3VjY2Vzc0NhbGxiYWNr
KSA9IDA7CisKICAgICAvLyBEYXRhYmFzZS1sZXZlbCBvcGVyYXRpb25zCiAgICAgdHlwZWRlZiBz
dGQ6OmZ1bmN0aW9uPHZvaWQgKGNvbnN0IElEQkRhdGFiYXNlTWV0YWRhdGEmLCBib29sIHN1Y2Nl
c3MpPiBHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVuY3Rpb247Ci0gICAgdmlydHVhbCB2b2lkIGdl
dE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShjb25zdCBTdHJpbmcmIG5hbWUsIEdldElE
QkRhdGFiYXNlTWV0YWRhdGFGdW5jdGlvbikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkZWxldGVE
YXRhYmFzZShjb25zdCBTdHJpbmcmIG5hbWUsIEJvb2xDYWxsYmFja0Z1bmN0aW9uIHN1Y2Nlc3ND
YWxsYmFjaykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRPckVzdGFibGlzaElEQkRhdGFiYXNl
TWV0YWRhdGEoR2V0SURCRGF0YWJhc2VNZXRhZGF0YUZ1bmN0aW9uKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGNsb3NlKCkgPSAwOwogCiAgICAgLy8gVHJhbnNhY3Rpb24tbGV2ZWwgb3BlcmF0aW9u
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvbGV2ZWxkYi9J
REJGYWN0b3J5QmFja2VuZExldmVsREIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvbGV2ZWxkYi9JREJGYWN0b3J5QmFja2VuZExldmVsREIuY3BwCmluZGV4IDFjYjU5ZmIu
LjU0ZDMyNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2xl
dmVsZGIvSURCRmFjdG9yeUJhY2tlbmRMZXZlbERCLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9sZXZlbGRiL0lEQkZhY3RvcnlCYWNrZW5kTGV2ZWxEQi5jcHAKQEAg
LTEyMyw3ICsxMjMsNyBAQCB2b2lkIElEQkZhY3RvcnlCYWNrZW5kTGV2ZWxEQjo6ZGVsZXRlRGF0
YWJhc2UoY29uc3QgU3RyaW5nJiBuYW1lLCBQYXNzUmVmUHRyPElEQgogICAgICAgICByZXR1cm47
CiAgICAgfQogCi0gICAgUmVmUHRyPElEQlNlcnZlckNvbm5lY3Rpb24+IHNlcnZlckNvbm5lY3Rp
b24gPSBJREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQjo6Y3JlYXRlKGJhY2tpbmdTdG9yZS5nZXQo
KSk7CisgICAgUmVmUHRyPElEQlNlcnZlckNvbm5lY3Rpb24+IHNlcnZlckNvbm5lY3Rpb24gPSBJ
REJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQjo6Y3JlYXRlKG5hbWUsIGJhY2tpbmdTdG9yZS5nZXQo
KSk7CiAgICAgUmVmUHRyPElEQkRhdGFiYXNlQmFja2VuZD4gZGF0YWJhc2VCYWNrZW5kID0gSURC
RGF0YWJhc2VCYWNrZW5kOjpjcmVhdGUobmFtZSwgdW5pcXVlSWRlbnRpZmllciwgdGhpcywgKnNl
cnZlckNvbm5lY3Rpb24pOwogICAgIGlmIChkYXRhYmFzZUJhY2tlbmQpIHsKICAgICAgICAgbV9k
YXRhYmFzZUJhY2tlbmRNYXAuc2V0KHVuaXF1ZUlkZW50aWZpZXIsIGRhdGFiYXNlQmFja2VuZC5n
ZXQoKSk7CkBAIC0xNjQsNyArMTY0LDcgQEAgUGFzc1JlZlB0cjxJREJCYWNraW5nU3RvcmVMZXZl
bERCPiBJREJGYWN0b3J5QmFja2VuZExldmVsREI6Om9wZW5CYWNraW5nU3RvcmUoY28KICAgICBy
ZXR1cm4gMDsKIH0KIAotdm9pZCBJREJGYWN0b3J5QmFja2VuZExldmVsREI6Om9wZW4oY29uc3Qg
U3RyaW5nJiBuYW1lLCB1aW50NjRfdCB2ZXJzaW9uLCBpbnQ2NF90IHRyYW5zYWN0aW9uSWQsIFBh
c3NSZWZQdHI8SURCQ2FsbGJhY2tzPiBjYWxsYmFja3MsIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VD
YWxsYmFja3M+IGRhdGFiYXNlQ2FsbGJhY2tzLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgb3Blbmlu
Z09yaWdpbiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mKQordm9pZCBJREJGYWN0b3J5QmFja2VuZExl
dmVsREI6Om9wZW4oY29uc3QgU3RyaW5nJiBuYW1lLCB1aW50NjRfdCB2ZXJzaW9uLCBpbnQ2NF90
IHRyYW5zYWN0aW9uSWQsIFBhc3NSZWZQdHI8SURCQ2FsbGJhY2tzPiBjYWxsYmFja3MsIFBhc3NS
ZWZQdHI8SURCRGF0YWJhc2VDYWxsYmFja3M+IGRhdGFiYXNlQ2FsbGJhY2tzLCBTZWN1cml0eU9y
aWdpbiYgb3BlbmluZ09yaWdpbiwgU2VjdXJpdHlPcmlnaW4mKQogewogICAgIExPRyhTdG9yYWdl
QVBJLCAiSURCRmFjdG9yeUJhY2tlbmRMZXZlbERCOjpvcGVuIik7CiAgICAgY29uc3QgU3RyaW5n
IHVuaXF1ZUlkZW50aWZpZXIgPSBjb21wdXRlVW5pcXVlSWRlbnRpZmllcihuYW1lLCBvcGVuaW5n
T3JpZ2luKTsKQEAgLTE3OCw3ICsxNzgsNyBAQCB2b2lkIElEQkZhY3RvcnlCYWNrZW5kTGV2ZWxE
Qjo6b3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIHVpbnQ2NF90IHZlcnNpb24sIGludDY0XwogICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgUmVmUHRyPElEQlNlcnZlckNv
bm5lY3Rpb24+IHNlcnZlckNvbm5lY3Rpb24gPSBJREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQjo6
Y3JlYXRlKGJhY2tpbmdTdG9yZS5nZXQoKSk7CisgICAgICAgIFJlZlB0cjxJREJTZXJ2ZXJDb25u
ZWN0aW9uPiBzZXJ2ZXJDb25uZWN0aW9uID0gSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREI6OmNy
ZWF0ZShuYW1lLCBiYWNraW5nU3RvcmUuZ2V0KCkpOwogICAgICAgICBkYXRhYmFzZUJhY2tlbmQg
PSBJREJEYXRhYmFzZUJhY2tlbmQ6OmNyZWF0ZShuYW1lLCB1bmlxdWVJZGVudGlmaWVyLCB0aGlz
LCAqc2VydmVyQ29ubmVjdGlvbik7CiAgICAgICAgIGlmIChkYXRhYmFzZUJhY2tlbmQpCiAgICAg
ICAgICAgICBtX2RhdGFiYXNlQmFja2VuZE1hcC5zZXQodW5pcXVlSWRlbnRpZmllciwgZGF0YWJh
c2VCYWNrZW5kLmdldCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL2xldmVsZGIvSURCRmFjdG9yeUJhY2tlbmRMZXZlbERCLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9sZXZlbGRiL0lEQkZhY3RvcnlCYWNrZW5kTGV2ZWxEQi5oCmlu
ZGV4IDQ3YjFlOWYuLmEwMzFkOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL2xldmVsZGIvSURCRmFjdG9yeUJhY2tlbmRMZXZlbERCLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvbGV2ZWxkYi9JREJGYWN0b3J5QmFja2VuZExldmVs
REIuaApAQCAtNTksNyArNTksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZUlE
QkRhdGFiYXNlQmFja2VuZChjb25zdCBTdHJpbmcmIHVuaXF1ZUlkZW50aWZpZXIpIE9WRVJSSURF
IEZJTkFMOwogCiAgICAgdmlydHVhbCB2b2lkIGdldERhdGFiYXNlTmFtZXMoUGFzc1JlZlB0cjxJ
REJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IFN0cmluZyYgZGF0YURpcikgT1ZFUlJJREUgRklOQUw7Ci0gICAgdmly
dHVhbCB2b2lkIG9wZW4oY29uc3QgU3RyaW5nJiBuYW1lLCB1aW50NjRfdCB2ZXJzaW9uLCBpbnQ2
NF90IHRyYW5zYWN0aW9uSWQsIFBhc3NSZWZQdHI8SURCQ2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxJ
REJEYXRhYmFzZUNhbGxiYWNrcz4sIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2lu
LCBjb25zdCBTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKSBPVkVSUklERSBGSU5BTDsK
KyAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIHVpbnQ2NF90IHZlcnNp
b24sIGludDY0X3QgdHJhbnNhY3Rpb25JZCwgUGFzc1JlZlB0cjxJREJDYWxsYmFja3M+LCBQYXNz
UmVmUHRyPElEQkRhdGFiYXNlQ2FsbGJhY2tzPiwgU2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmln
aW4sIFNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pIE9WRVJSSURFIEZJTkFMOwogCiAg
ICAgdmlydHVhbCB2b2lkIGRlbGV0ZURhdGFiYXNlKGNvbnN0IFN0cmluZyYgbmFtZSwgUGFzc1Jl
ZlB0cjxJREJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgZGF0YURpcikgT1ZFUlJJREUgRklOQUw7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2xldmVsZGIvSURC
U2VydmVyQ29ubmVjdGlvbkxldmVsREIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvbGV2ZWxkYi9JREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQi5jcHAKaW5kZXggMGU4MWM5
Ny4uNzdjMTcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
bGV2ZWxkYi9JREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvbGV2ZWxkYi9JREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQi5j
cHAKQEAgLTU1LDEwICs1NSwxMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUlEQlNlcnZl
ckNvbm5lY3Rpb25MZXZlbERCOjpJREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQihJREJCYWNraW5n
U3RvcmVMZXZlbERCKiBiYWNraW5nU3RvcmUpCitJREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQjo6
SURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIoY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIElE
QkJhY2tpbmdTdG9yZUxldmVsREIqIGJhY2tpbmdTdG9yZSkKICAgICA6IG1fYmFja2luZ1N0b3Jl
KGJhY2tpbmdTdG9yZSkKICAgICAsIG1fbmV4dEN1cnNvcklEKDEpCiAgICAgLCBtX2Nsb3NlZChm
YWxzZSkKKyAgICAsIG1fZGF0YWJhc2VOYW1lKGRhdGFiYXNlTmFtZSkKIHsKIH0KIApAQCAtNzEs
MTAgKzcyLDEwIEBAIGJvb2wgSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREI6OmlzQ2xvc2VkKCkK
ICAgICByZXR1cm4gbV9jbG9zZWQ7CiB9CiAKLXZvaWQgSURCU2VydmVyQ29ubmVjdGlvbkxldmVs
REI6OmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShjb25zdCBTdHJpbmcmIG5hbWUs
IEdldElEQkRhdGFiYXNlTWV0YWRhdGFGdW5jdGlvbiBjYWxsYmFjaykKK3ZvaWQgSURCU2VydmVy
Q29ubmVjdGlvbkxldmVsREI6OmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShHZXRJ
REJEYXRhYmFzZU1ldGFkYXRhRnVuY3Rpb24gY2FsbGJhY2spCiB7CiAgICAgUmVmUHRyPElEQlNl
cnZlckNvbm5lY3Rpb24+IHNlbGYodGhpcyk7Ci0gICAgbV9iYWNraW5nU3RvcmUtPmdldE9yRXN0
YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShuYW1lLCBbc2VsZiwgdGhpcywgY2FsbGJhY2tdKGNv
bnN0IElEQkRhdGFiYXNlTWV0YWRhdGEmIG1ldGFkYXRhLCBib29sIHN1Y2Nlc3MpIHsKKyAgICBt
X2JhY2tpbmdTdG9yZS0+Z2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKG1fZGF0YWJh
c2VOYW1lLCBbc2VsZiwgdGhpcywgY2FsbGJhY2tdKGNvbnN0IElEQkRhdGFiYXNlTWV0YWRhdGEm
IG1ldGFkYXRhLCBib29sIHN1Y2Nlc3MpIHsKICAgICAgICAgY2FsbGJhY2sobWV0YWRhdGEsIHN1
Y2Nlc3MpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvbGV2ZWxkYi9JREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxEQi5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvbGV2ZWxkYi9JREJTZXJ2ZXJDb25uZWN0aW9uTGV2ZWxE
Qi5oCmluZGV4IGM0MjQ1NjAuLjJmNmI4N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL2xldmVsZGIvSURCU2VydmVyQ29ubmVjdGlvbkxldmVsREIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9sZXZlbGRiL0lEQlNlcnZlckNvbm5l
Y3Rpb25MZXZlbERCLmgKQEAgLTM5LDE4ICszOSwyMCBAQCBjbGFzcyBJREJCYWNraW5nU3RvcmVU
cmFuc2FjdGlvbkxldmVsREI7CiAKIGNsYXNzIElEQlNlcnZlckNvbm5lY3Rpb25MZXZlbERCIEZJ
TkFMIDogcHVibGljIElEQlNlcnZlckNvbm5lY3Rpb24gewogcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPElEQlNlcnZlckNvbm5lY3Rpb24+IGNyZWF0ZShJREJCYWNraW5nU3RvcmVMZXZl
bERCKiBiYWNraW5nU3RvcmUpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SURCU2VydmVyQ29ubmVj
dGlvbj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBJREJCYWNraW5nU3RvcmVM
ZXZlbERCKiBiYWNraW5nU3RvcmUpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3
IElEQlNlcnZlckNvbm5lY3Rpb25MZXZlbERCKGJhY2tpbmdTdG9yZSkpOworICAgICAgICByZXR1
cm4gYWRvcHRSZWYobmV3IElEQlNlcnZlckNvbm5lY3Rpb25MZXZlbERCKGRhdGFiYXNlTmFtZSwg
YmFja2luZ1N0b3JlKSk7CiAgICAgfQogCiAgICAgdmlydHVhbCB+SURCU2VydmVyQ29ubmVjdGlv
bkxldmVsREIoKTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc0Nsb3NlZCgpIE9WRVJSSURFOwogCi0g
ICAgLy8gRGF0YWJhc2UtbGV2ZWwgb3BlcmF0aW9ucwotICAgIHZpcnR1YWwgdm9pZCBnZXRPckVz
dGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEoY29uc3QgU3RyaW5nJiBuYW1lLCBHZXRJREJEYXRh
YmFzZU1ldGFkYXRhRnVuY3Rpb24pIE9WRVJSSURFOworICAgIC8vIEZhY3RvcnktbGV2ZWwgb3Bl
cmF0aW9ucwogICAgIHZpcnR1YWwgdm9pZCBkZWxldGVEYXRhYmFzZShjb25zdCBTdHJpbmcmIG5h
bWUsIEJvb2xDYWxsYmFja0Z1bmN0aW9uIHN1Y2Nlc3NDYWxsYmFjaykgT1ZFUlJJREU7CisKKyAg
ICAvLyBEYXRhYmFzZS1sZXZlbCBvcGVyYXRpb25zCisgICAgdmlydHVhbCB2b2lkIGdldE9yRXN0
YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YShHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVuY3Rpb24p
IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBjbG9zZSgpIE9WRVJSSURFOwogCiAgICAgLy8g
VHJhbnNhY3Rpb24tbGV2ZWwgb3BlcmF0aW9ucwpAQCAtODAsNyArODIsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIGN1cnNvclByZWZldGNoUmVzZXQoSURCQ3Vyc29yQmFja2VuZCYsIGlu
dCB1c2VkUHJlZmV0Y2hlcykgT1ZFUlJJREU7CiAKIHByaXZhdGU6Ci0gICAgSURCU2VydmVyQ29u
bmVjdGlvbkxldmVsREIoSURCQmFja2luZ1N0b3JlTGV2ZWxEQiopOworICAgIElEQlNlcnZlckNv
bm5lY3Rpb25MZXZlbERCKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBJREJCYWNraW5nU3Rv
cmVMZXZlbERCKik7CiAKICAgICBSZWZQdHI8SURCQmFja2luZ1N0b3JlTGV2ZWxEQj4gbV9iYWNr
aW5nU3RvcmU7CiAgICAgSGFzaE1hcDxpbnQ2NF90LCBSZWZQdHI8SURCQmFja2luZ1N0b3JlVHJh
bnNhY3Rpb25MZXZlbERCPj4gbV9iYWNraW5nU3RvcmVUcmFuc2FjdGlvbnM7CkBAIC04OSw2ICs5
MSw4IEBAIHByaXZhdGU6CiAgICAgaW50NjRfdCBtX25leHRDdXJzb3JJRDsKIAogICAgIGJvb2wg
bV9jbG9zZWQ7CisKKyAgICBTdHJpbmcgbV9kYXRhYmFzZU5hbWU7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNmY2IyZS4uZGI5Zjc4ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSw1ICsxLDMwIEBACiAyMDEzLTExLTE5ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxl
LmNvbT4KIAorICAgICAgICBDbGVhbnVwIGdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0
YSBhbmQgc3R1YiBpdCBvdXQgaW4gV0syCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMjQ2MzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBTdHViIG91dCB0aGUgbWVzc2FnZSBmb3IgZ2V0T3JFc3RhYmxpc2hJ
REJEYXRhYmFzZU1ldGFkYXRhIGluIHRoZSBEYXRhYmFzZVByb2Nlc3MuCisKKyAgICAgICAgKiBE
YXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjplc3RhYmxp
c2hDb25uZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVj
dGlvbjo6Z2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKToKKyAgICAgICAgKiBEYXRh
YmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uaDoKKyAg
ICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5l
Y3Rpb24ubWVzc2FnZXMuaW46CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRl
eGVkREIvV2ViSURCRmFjdG9yeUJhY2tlbmQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJG
YWN0b3J5QmFja2VuZDo6b3Blbik6CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5k
ZXhlZERCL1dlYklEQkZhY3RvcnlCYWNrZW5kLmg6CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0Rh
dGFiYXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYklEQlNlcnZlckNvbm5lY3Rpb246OldlYklEQlNlcnZlckNvbm5lY3Rpb24pOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpkZWxldGVEYXRhYmFzZSk6
CisgICAgICAgIChXZWJLaXQ6OldlYklEQlNlcnZlckNvbm5lY3Rpb246OmdldE9yRXN0YWJsaXNo
SURCRGF0YWJhc2VNZXRhZGF0YSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5k
ZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uaDoKKworMjAxMy0xMS0xOSAgQnJhZHkgRWlk
c29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgQWRkIFdlYklEQlNlcnZlckNvbm5l
Y3Rpb24gYW5kIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gc3R1YnMKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDU2MgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vz
c0lEQkNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4
ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmNwcAppbmRleCBmM2VjNTVjMS4uYjFh
ODg2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWRE
Qi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9E
YXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uY3Bw
CkBAIC00MSw3ICs0MSwxMyBAQCBEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjp+RGF0YWJh
c2VQcm9jZXNzSURCQ29ubmVjdGlvbigpCiB7CiB9CiAKLXZvaWQgRGF0YWJhc2VQcm9jZXNzSURC
Q29ubmVjdGlvbjo6ZXN0YWJsaXNoQ29ubmVjdGlvbigpCit2b2lkIERhdGFiYXNlUHJvY2Vzc0lE
QkNvbm5lY3Rpb246OmVzdGFibGlzaENvbm5lY3Rpb24oY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5h
bWUsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgb3BlbmluZ09yaWdpbiwgY29uc3QgU2VjdXJp
dHlPcmlnaW5EYXRhJiBtYWluRnJhbWVPcmlnaW4pCit7CisgICAgLy8gRklYTUU6IFRoaXMgbWV0
aG9kIGlzIHN1Y2Nlc3NmdWxseSBjYWxsZWQgYnkgbWVzc2FnaW5nIGZyb20gdGhlIFdlYlByb2Nl
c3MuCisgICAgLy8gTm93IGltcGxlbWVudCBpdC4KK30KKwordm9pZCBEYXRhYmFzZVByb2Nlc3NJ
REJDb25uZWN0aW9uOjpnZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEoKQogewogICAg
IC8vIEZJWE1FOiBUaGlzIG1ldGhvZCBpcyBzdWNjZXNzZnVsbHkgY2FsbGVkIGJ5IG1lc3NhZ2lu
ZyBmcm9tIHRoZSBXZWJQcm9jZXNzLgogICAgIC8vIE5vdyBpbXBsZW1lbnQgaXQuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJv
Y2Vzc0lEQkNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRl
eGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5oCmluZGV4IDNlYzdiNTcuLjdjZTJj
OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIv
RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFi
YXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5oCkBAIC0z
NCw2ICszNCw4IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBEYXRhYmFzZVRvV2ViUHJv
Y2Vzc0Nvbm5lY3Rpb247CiAKK3N0cnVjdCBTZWN1cml0eU9yaWdpbkRhdGE7CisKIGNsYXNzIERh
dGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhYmFzZVBy
b2Nlc3NJREJDb25uZWN0aW9uPiwgcHVibGljIENvcmVJUEM6Ok1lc3NhZ2VTZW5kZXIgewogcHVi
bGljOgogICAgIHN0YXRpYyBSZWZQdHI8RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbj4gY3Jl
YXRlKHVpbnQ2NF90IGJhY2tlbmRJZGVudGlmaWVyKQpAQCAtNTQsNyArNTYsOCBAQCBwcml2YXRl
OgogICAgIHZpcnR1YWwgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBPVkVS
UklERSB7IHJldHVybiBtX2JhY2tlbmRJZGVudGlmaWVyOyB9CiAKICAgICAvLyBNZXNzYWdlIGhh
bmRsZXJzLgotICAgIHZvaWQgZXN0YWJsaXNoQ29ubmVjdGlvbigpOworICAgIHZvaWQgZXN0YWJs
aXNoQ29ubmVjdGlvbihjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgU2VjdXJpdHlP
cmlnaW5EYXRhJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIG1haW5G
cmFtZU9yaWdpbik7CisgICAgdm9pZCBnZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEo
KTsKIAogICAgIFJlZlB0cjxEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24+IG1fY29ubmVj
dGlvbjsKICAgICB1aW50NjRfdCBtX2JhY2tlbmRJZGVudGlmaWVyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJD
b25uZWN0aW9uLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0lu
ZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IGYx
NmIxZjEuLmRlNDU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vz
cy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vz
c0lEQkNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KQEAgLTIzLDcgKzIzLDggQEAKICNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkgJiYgRU5BQkxFKERBVEFCQVNFX1BST0NFU1MpCiAKIG1lc3NhZ2Vz
IC0+IERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gTGVnYWN5UmVjZWl2ZXIgewotICAgIEVz
dGFibGlzaENvbm5lY3Rpb24oKQorICAgIEVzdGFibGlzaENvbm5lY3Rpb24oV1RGOjpTdHJpbmcg
ZGF0YWJhc2VOYW1lLCBXZWJLaXQ6OlNlY3VyaXR5T3JpZ2luRGF0YSBvcGVuaW5nT3JpZ2luLCBX
ZWJLaXQ6OlNlY3VyaXR5T3JpZ2luRGF0YSBtYWluRnJhbWVPcmlnaW4pCisgICAgR2V0T3JFc3Rh
Ymxpc2hJREJEYXRhYmFzZU1ldGFkYXRhKCkKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKSAmJiBFTkFCTEUoREFUQUJBU0VfUFJPQ0VTUykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJGYWN0b3J5QmFj
a2VuZC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIv
V2ViSURCRmFjdG9yeUJhY2tlbmQuY3BwCmluZGV4IDI4MDhkNzAuLmIwZDg1NjMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJG
YWN0b3J5QmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFz
ZXMvSW5kZXhlZERCL1dlYklEQkZhY3RvcnlCYWNrZW5kLmNwcApAQCAtNzAsNyArNzAsNyBAQCB2
b2lkIFdlYklEQkZhY3RvcnlCYWNrZW5kOjpnZXREYXRhYmFzZU5hbWVzKFBhc3NSZWZQdHI8SURC
Q2FsbGJhY2tzPiwgUGFzc1JlZlB0cgogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQg
V2ViSURCRmFjdG9yeUJhY2tlbmQ6Om9wZW4oY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIHVp
bnQ2NF90IHZlcnNpb24sIGludDY0X3QgdHJhbnNhY3Rpb25JZCwgUGFzc1JlZlB0cjxJREJDYWxs
YmFja3M+IGNhbGxiYWNrcywgUGFzc1JlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrcz4gZGF0YWJh
c2VDYWxsYmFja3MsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBT
ZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKQordm9pZCBXZWJJREJGYWN0b3J5QmFja2Vu
ZDo6b3Blbihjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgdWludDY0X3QgdmVyc2lvbiwgaW50
NjRfdCB0cmFuc2FjdGlvbklkLCBQYXNzUmVmUHRyPElEQkNhbGxiYWNrcz4gY2FsbGJhY2tzLCBQ
YXNzUmVmUHRyPElEQkRhdGFiYXNlQ2FsbGJhY2tzPiBkYXRhYmFzZUNhbGxiYWNrcywgU2VjdXJp
dHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIFNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4p
CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKICAgICBMT0coU3RvcmFnZUFQSSwgIldl
YklEQkZhY3RvcnlCYWNrZW5kOjpvcGVuIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCRmFjdG9yeUJhY2tlbmQuaCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJGYWN0b3J5
QmFja2VuZC5oCmluZGV4IGFiNGFjYzEuLjE5MjY2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJGYWN0b3J5QmFja2VuZC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJ
REJGYWN0b3J5QmFja2VuZC5oCkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IH5XZWJJREJGYWN0b3J5QmFja2VuZCgpOwogCiAgICAgdmlydHVhbCB2b2lkIGdldERhdGFiYXNl
TmFtZXMoUGFzc1JlZlB0cjxXZWJDb3JlOjpJREJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luPiwgV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IFN0cmluZyYgZGF0YURpcikgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIG9wZW4oY29u
c3QgU3RyaW5nJiBuYW1lLCB1aW50NjRfdCB2ZXJzaW9uLCBpbnQ2NF90IHRyYW5zYWN0aW9uSWQs
IFBhc3NSZWZQdHI8V2ViQ29yZTo6SURCQ2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpJ
REJEYXRhYmFzZUNhbGxiYWNrcz4sIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVu
aW5nT3JpZ2luLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2lu
KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIHVp
bnQ2NF90IHZlcnNpb24sIGludDY0X3QgdHJhbnNhY3Rpb25JZCwgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpJREJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tz
PiwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBk
ZWxldGVEYXRhYmFzZShjb25zdCBTdHJpbmcmIG5hbWUsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SURC
Q2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4sIFdlYkNvcmU6
OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIGRhdGFEaXIpIE9WRVJSSURF
OwogCiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZUlEQkRhdGFiYXNlQmFja2VuZChjb25zdCBTdHJp
bmcmIHVuaXF1ZUlkZW50aWZpZXIpIE9WRVJSSURFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24u
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklE
QlNlcnZlckNvbm5lY3Rpb24uY3BwCmluZGV4IDliMGI2MTUuLmQ3MjdiODEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2
ZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNl
cy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHAKQEAgLTMxLDkgKzMxLDEyIEBA
CiAKICNpbmNsdWRlICJEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uTWVzc2FnZXMuaCIKICNp
bmNsdWRlICJEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb25NZXNzYWdlcy5oIgorI2luY2x1
ZGUgIlNlY3VyaXR5T3JpZ2luRGF0YS5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKICNpbmNs
dWRlICJXZWJUb0RhdGFiYXNlUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKIAorI2luY2x1ZGUgPFdlYkNv
cmUvU2VjdXJpdHlPcmlnaW4uaD4KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIHN0YXRpYyB1aW50
NjRfdCBnZW5lcmF0ZUJhY2tlbmRJZGVudGlmaWVyKCkKQEAgLTQzLDExICs0NiwxNCBAQCBzdGF0
aWMgdWludDY0X3QgZ2VuZXJhdGVCYWNrZW5kSWRlbnRpZmllcigpCiAgICAgcmV0dXJuICsraWRl
bnRpZmllcjsKIH0KIAotV2ViSURCU2VydmVyQ29ubmVjdGlvbjo6V2ViSURCU2VydmVyQ29ubmVj
dGlvbihjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWlu
RnJhbWVPcmlnaW4pCitXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpXZWJJREJTZXJ2ZXJDb25uZWN0
aW9uKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYg
b3BlbmluZ09yaWdpbiwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG1haW5GcmFtZU9yaWdpbikK
ICAgICA6IG1fYmFja2VuZElkZW50aWZpZXIoZ2VuZXJhdGVCYWNrZW5kSWRlbnRpZmllcigpKQor
ICAgICwgbV9kYXRhYmFzZU5hbWUoZGF0YWJhc2VOYW1lKQorICAgICwgbV9vcGVuaW5nT3JpZ2lu
KG9wZW5pbmdPcmlnaW4pCisgICAgLCBtX21haW5GcmFtZU9yaWdpbihtYWluRnJhbWVPcmlnaW4p
CiB7CiAgICAgc2VuZChNZXNzYWdlczo6RGF0YWJhc2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uOjpF
c3RhYmxpc2hJREJDb25uZWN0aW9uKG1fYmFja2VuZElkZW50aWZpZXIpKTsKLSAgICBzZW5kKE1l
c3NhZ2VzOjpEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjpFc3RhYmxpc2hDb25uZWN0aW9u
KCkpOworICAgIHNlbmQoTWVzc2FnZXM6OkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OkVz
dGFibGlzaENvbm5lY3Rpb24oZGF0YWJhc2VOYW1lLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21T
ZWN1cml0eU9yaWdpbigmb3BlbmluZ09yaWdpbiksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNl
Y3VyaXR5T3JpZ2luKCZtYWluRnJhbWVPcmlnaW4pKSk7CiB9CiAKIFdlYklEQlNlcnZlckNvbm5l
Y3Rpb246On5XZWJJREJTZXJ2ZXJDb25uZWN0aW9uKCkKQEAgLTU5LDEyICs2NSwxMyBAQCBib29s
IFdlYklEQlNlcnZlckNvbm5lY3Rpb246OmlzQ2xvc2VkKCkKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotdm9pZCBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uOjpnZXRPckVzdGFibGlzaElEQkRhdGFiYXNl
TWV0YWRhdGEoY29uc3QgU3RyaW5nJiBuYW1lLCBHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVuY3Rp
b24pCit2b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rpb246OmRlbGV0ZURhdGFiYXNlKGNvbnN0IFN0
cmluZyYgbmFtZSwgQm9vbENhbGxiYWNrRnVuY3Rpb24gc3VjY2Vzc0NhbGxiYWNrKQogewogfQog
Ci12b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rpb246OmRlbGV0ZURhdGFiYXNlKGNvbnN0IFN0cmlu
ZyYgbmFtZSwgQm9vbENhbGxiYWNrRnVuY3Rpb24gc3VjY2Vzc0NhbGxiYWNrKQordm9pZCBXZWJJ
REJTZXJ2ZXJDb25uZWN0aW9uOjpnZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEoR2V0
SURCRGF0YWJhc2VNZXRhZGF0YUZ1bmN0aW9uIGNvbXBsZXRpb25DYWxsYmFjaykKIHsKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjpHZXRPckVzdGFibGlz
aElEQkRhdGFiYXNlTWV0YWRhdGEoKSk7CiB9CiAKIHZvaWQgV2ViSURCU2VydmVyQ29ubmVjdGlv
bjo6Y2xvc2UoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFz
ZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmgKaW5k
ZXggZmQ2MGE4NC4uZWEyM2Y4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29u
bmVjdGlvbi5oCkBAIC0zNiw3ICszNiw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBX
ZWJJREJTZXJ2ZXJDb25uZWN0aW9uIEZJTkFMIDogcHVibGljIFdlYkNvcmU6OklEQlNlcnZlckNv
bm5lY3Rpb24sIHB1YmxpYyBDb3JlSVBDOjpNZXNzYWdlU2VuZGVyIHsKIHB1YmxpYzoKLSAgICBz
dGF0aWMgUGFzc1JlZlB0cjxXZWJJREJTZXJ2ZXJDb25uZWN0aW9uPiBjcmVhdGUoY29uc3QgU3Ry
aW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVuaW5n
T3JpZ2luLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKQor
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYklEQlNlcnZlckNvbm5lY3Rpb24+IGNyZWF0ZShjb25z
dCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdP
cmlnaW4sIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pCiAgICAgewog
ICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYklEQlNlcnZlckNvbm5lY3Rpb24oZGF0YWJh
c2VOYW1lLCBvcGVuaW5nT3JpZ2luLCBtYWluRnJhbWVPcmlnaW4pKTsKICAgICB9CkBAIC00Nywx
MCArNDcsMTEgQEAgcHVibGljOgogCiAgICAgdHlwZWRlZiBzdGQ6OmZ1bmN0aW9uPHZvaWQgKGJv
b2wgc3VjY2Vzcyk+IEJvb2xDYWxsYmFja0Z1bmN0aW9uOwogCi0gICAgLy8gRGF0YWJhc2UtbGV2
ZWwgb3BlcmF0aW9ucwotICAgIHR5cGVkZWYgc3RkOjpmdW5jdGlvbjx2b2lkIChjb25zdCBXZWJD
b3JlOjpJREJEYXRhYmFzZU1ldGFkYXRhJiwgYm9vbCBzdWNjZXNzKT4gR2V0SURCRGF0YWJhc2VN
ZXRhZGF0YUZ1bmN0aW9uOwotICAgIHZpcnR1YWwgdm9pZCBnZXRPckVzdGFibGlzaElEQkRhdGFi
YXNlTWV0YWRhdGEoY29uc3QgU3RyaW5nJiBuYW1lLCBHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVu
Y3Rpb24pIE9WRVJSSURFOworICAgIC8vIEZhY3RvcnktbGV2ZWwgb3BlcmF0aW9ucwogICAgIHZp
cnR1YWwgdm9pZCBkZWxldGVEYXRhYmFzZShjb25zdCBTdHJpbmcmIG5hbWUsIEJvb2xDYWxsYmFj
a0Z1bmN0aW9uIHN1Y2Nlc3NDYWxsYmFjaykgT1ZFUlJJREU7CisKKyAgICAvLyBEYXRhYmFzZS1s
ZXZlbCBvcGVyYXRpb25zCisgICAgdmlydHVhbCB2b2lkIGdldE9yRXN0YWJsaXNoSURCRGF0YWJh
c2VNZXRhZGF0YShHZXRJREJEYXRhYmFzZU1ldGFkYXRhRnVuY3Rpb24pIE9WRVJSSURFOwogICAg
IHZpcnR1YWwgdm9pZCBjbG9zZSgpIE9WRVJSSURFOwogCiAgICAgLy8gVHJhbnNhY3Rpb24tbGV2
ZWwgb3BlcmF0aW9ucwpAQCAtODEsMTMgKzgyLDE3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgY3Vyc29yUHJlZmV0Y2hSZXNldChXZWJDb3JlOjpJREJDdXJzb3JCYWNrZW5kJiwgaW50IHVz
ZWRQcmVmZXRjaGVzKSBPVkVSUklERTsKIAogcHJpdmF0ZToKLSAgICBXZWJJREJTZXJ2ZXJDb25u
ZWN0aW9uKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0
eU9yaWdpbiYgb3BlbmluZ09yaWdpbiwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG1h
aW5GcmFtZU9yaWdpbik7CisgICAgV2ViSURCU2VydmVyQ29ubmVjdGlvbihjb25zdCBTdHJpbmcm
IGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pOwogCiAgICAgLy8gQ29yZUlQ
Qzo6TWVzc2FnZVNlbmRlcgogICAgIHZpcnR1YWwgQ29yZUlQQzo6Q29ubmVjdGlvbiogbWVzc2Fn
ZVNlbmRlckNvbm5lY3Rpb24oKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHVpbnQ2NF90IG1lc3Nh
Z2VTZW5kZXJEZXN0aW5hdGlvbklEKCkgT1ZFUlJJREUgeyByZXR1cm4gbV9iYWNrZW5kSWRlbnRp
ZmllcjsgfQogCiAgICAgdWludDY0X3QgbV9iYWNrZW5kSWRlbnRpZmllcjsKKworICAgIFN0cmlu
ZyBtX2RhdGFiYXNlTmFtZTsKKyAgICBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+IG1fb3Bl
bmluZ09yaWdpbjsKKyAgICBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+IG1fbWFpbkZyYW1l
T3JpZ2luOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>
<flag name="review"
          id="240501"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>