<?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>120654</bug_id>
          
          <creation_ts>2013-09-03 16:01:47 -0700</creation_ts>
          <short_desc>Support structured clone of Map and Set</short_desc>
          <delta_ts>2013-09-03 17:05:48 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (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="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>alecflett</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>924202</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-09-03 16:01:47 -0700</bug_when>
    <thetext>Support structured clone of Map and Set</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924203</commentid>
    <comment_count>1</comment_count>
      <attachid>210416</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-09-03 16:05:11 -0700</bug_when>
    <thetext>Created attachment 210416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924205</commentid>
    <comment_count>2</comment_count>
      <attachid>210416</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-09-03 16:17:12 -0700</bug_when>
    <thetext>Comment on attachment 210416
Patch

r+ but please add new test output.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924207</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-09-03 16:22:36 -0700</bug_when>
    <thetext>Committed r155008: &lt;http://trac.webkit.org/changeset/155008&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>924218</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-09-03 17:05:48 -0700</bug_when>
    <thetext>fast/storage/serialized-script-value.html started failing on the bots after r155008.

Can you please have a look?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>210416</attachid>
            <date>2013-09-03 16:05:11 -0700</date>
            <delta_ts>2013-09-03 16:17:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-120654-20130903160511.patch</filename>
            <type>text/plain</type>
            <size>22594</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU0OTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
ZjlkYTE1MzQ3M2Q2ZTYxMTJhODhiZWU0ZmIyYmZlYmZjZmYxOGIwLi42MzgwMTlkMjU4MWRiYWQw
ZDliODQwN2E1Y2E1NTJlOWI1YzViMzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxMy0wOS0wMyAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgor
CisgICAgICAgIFN1cHBvcnQgc3RydWN0dXJlZCBjbG9uZSBvZiBNYXAgYW5kIFNldAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIwNjU0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSB4Y29kZSBjb3B5
IHRoZSByZXF1aXJlZCBoZWFkZXJzLCBhbmQgYWRkIGFwcHJvcHJpYXRlIGV4cG9ydCBhdHRyaWJ1
dGVzCisKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXAuaDoKKyAgICAgICAgKiBydW50aW1lL0pTU2V0Lmg6
CisgICAgICAgICogcnVudGltZS9NYXBEYXRhLmg6CisKIDIwMTMtMDktMDIgIEZpbGlwIFBpemxv
ICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAgICBDb2RlQmxvY2s6OmpldHRpc29uKCkgc2hv
dWxkIGJlIGltcGxpY2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDgxNTZkZTY4YTE2MDY4OWQ5OWFkNTkyY2Q4
MGMwZDA2OWUxYzlhYi4uNDI0MjZlNzNkNDhlZjhlNTg5ZDdhNTBiYjFiMGJiZWUzN2RjNzMxNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTA5LTAzICBPbGl2ZXIgSHVudCAgPG9s
aXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgU3VwcG9ydCBzdHJ1Y3R1cmVkIGNsb25lIG9mIE1h
cCBhbmQgU2V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMjA2NTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgY2xvbmluZyBNYXAgYW5kIFNldC4gIEZhaXJseSBzZWxmIGV4cGxh
bmF0b3J5IGNoYW5nZS4KKyAgICAgICAgTmVlZGVkIHRvIGFkZCBGb3J3YXJkaW5nIGhlYWRlcnMg
Zm9yIHRoZSBKU01hcCwgSlNTZXQgYW5kIE1hcERhdGEgY2xhc3Nlcy4KKworICAgICAgICAqIEZv
cndhcmRpbmdIZWFkZXJzL3J1bnRpbWUvSlNNYXAuaDogQWRkZWQuCisgICAgICAgICogRm9yd2Fy
ZGluZ0hlYWRlcnMvcnVudGltZS9KU1NldC5oOiBBZGRlZC4KKyAgICAgICAgKiBGb3J3YXJkaW5n
SGVhZGVycy9ydW50aW1lL01hcERhdGEuaDogQWRkZWQuCisgICAgICAgICogYmluZGluZ3MvanMv
U2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNsb25lU2VyaWFs
aXplcjo6aXNNYXApOgorICAgICAgICAoV2ViQ29yZTo6Q2xvbmVTZXJpYWxpemVyOjppc1NldCk6
CisgICAgICAgIChXZWJDb3JlOjpDbG9uZVNlcmlhbGl6ZXI6OnN0YXJ0U2V0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNsb25lU2VyaWFsaXplcjo6c3RhcnRNYXApOgorICAgICAgICAoV2ViQ29yZTo6
Q2xvbmVTZXJpYWxpemVyOjpzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29yZTo6Q2xvbmVEZXNl
cmlhbGl6ZXI6OmNvbnN1bWVNYXBEYXRhVGVybWluYXRpb25JZlBvc3NpYmxlKToKKyAgICAgICAg
KFdlYkNvcmU6OkNsb25lRGVzZXJpYWxpemVyOjpkZXNlcmlhbGl6ZSk6CisKIDIwMTMtMDktMDMg
IEFuZHJlIE1vcmVpcmEgTWFnYWxoYWVzICAgPGFuZHJlLm1hZ2FsaGFlc0Bjb2xsYWJvcmEuY28u
dWs+CiAKICAgICAgICAgW0dTdHJlYW1lcl0gRG9uJ3Qgc2V0IHN0YXRlIHRvIE5VTEwgdW50aWwg
ZWxlbWVudCBpcyBkZXN0cm95ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggODZj
OWQ5ZTljODJiZmZmNTZiN2FiNmFlYWIyMDc5YzU2YTllOGM5NC4uNDBjNGU2Nzk2NDdhMTNjZjg5
ZWFlOWY0MDc3MTk2OWM4ODBlMmFiMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTgxNSw3ICs4MTUsNyBAQAogCQlBNzAwODczRDE3Q0JFOEQzMDBDM0U2NDMgLyogTWFwUHJvdG90
eXBlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3
MDA4NzNCMTdDQkU4RDMwMEMzRTY0MyAvKiBNYXBQcm90b3R5cGUuY3BwICovOyB9OwogCQlBNzAw
ODczRTE3Q0JFOEQzMDBDM0U2NDMgLyogTWFwUHJvdG90eXBlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzAwODczQzE3Q0JFOEQzMDBDM0U2NDMgLyog
TWFwUHJvdG90eXBlLmggKi87IH07CiAJCUE3MDA4NzQxMTdDQkU4RUIwMEMzRTY0MyAvKiBKU01h
cC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzAw
ODczRjE3Q0JFOEVCMDBDM0U2NDMgLyogSlNNYXAuY3BwICovOyB9OwotCQlBNzAwODc0MjE3Q0JF
OEVCMDBDM0U2NDMgLyogSlNNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE3MDA4NzQwMTdDQkU4RUIwMEMzRTY0MyAvKiBKU01hcC5oICovOyB9Owor
CQlBNzAwODc0MjE3Q0JFOEVCMDBDM0U2NDMgLyogSlNNYXAuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3MDA4NzQwMTdDQkU4RUIwMEMzRTY0MyAvKiBK
U01hcC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUE3MDQ0N0VBMTdBMEJENDYwMEY1ODk4RSAvKiBPcGVyYW5kc0lubGluZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3MDQ0N0U5MTdBMEJENDYwMEY1
ODk4RSAvKiBPcGVyYW5kc0lubGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQlBNzA0NDdFRDE3QTBCRDcwMDBGNTg5OEUgLyogRHVtcENvbnRl
eHQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTcw
NDQ3RUIxN0EwQkQ3MDAwRjU4OThFIC8qIER1bXBDb250ZXh0LmNwcCAqLzsgfTsKIAkJQTcwNDQ3
RUUxN0EwQkQ3MDAwRjU4OThFIC8qIER1bXBDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzA0NDdFQzE3QTBCRDcwMDBGNTg5OEUgLyogRHVt
cENvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtODM4LDcgKzgzOCw3IEBACiAJCUE3MjgwQTI4MTE1NTdFMzAwMEQ1Njk1NyAvKiBKU09i
amVjdFJlZlByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE3OUVEQjA4MTE1MzFDRDYwMDE5RTkxMiAvKiBKU09iamVjdFJlZlByaXZhdGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBNzI5MDA5
QzE3OTc2QzYwMDAzMTcyOTggLyogTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzI5MDA5QjE3OTc2QzYwMDAzMTcy
OTggLyogTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAgKi87IH07CiAJCUE3Mjk5RDlEMTdEMTI4Mzcw
MDVGNUZGOSAvKiBKU1NldC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBNzI5OUQ5QjE3RDEyODM3MDA1RjVGRjkgLyogSlNTZXQuY3BwICovOyB9Owot
CQlBNzI5OUQ5RTE3RDEyODM3MDA1RjVGRjkgLyogSlNTZXQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Mjk5RDlDMTdEMTI4MzcwMDVGNUZGOSAvKiBK
U1NldC5oICovOyB9OworCQlBNzI5OUQ5RTE3RDEyODM3MDA1RjVGRjkgLyogSlNTZXQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Mjk5RDlDMTdEMTI4
MzcwMDVGNUZGOSAvKiBKU1NldC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCUE3Mjk5REExMTdEMTI4NDgwMDVGNUZGOSAvKiBTZXRQcm90b3R5cGUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTcyOTlE
OUYxN0QxMjg0ODAwNUY1RkY5IC8qIFNldFByb3RvdHlwZS5jcHAgKi87IH07CiAJCUE3Mjk5REEy
MTdEMTI4NDgwMDVGNUZGOSAvKiBTZXRQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Mjk5REEwMTdEMTI4NDgwMDVGNUZGOSAvKiBTZXRQ
cm90b3R5cGUuaCAqLzsgfTsKIAkJQTcyOTlEQTUxN0QxMjg1ODAwNUY1RkY5IC8qIFNldENvbnN0
cnVjdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE3Mjk5REEzMTdEMTI4NTgwMDVGNUZGOSAvKiBTZXRDb25zdHJ1Y3Rvci5jcHAgKi87IH07CkBA
IC04ODIsNyArODgyLDcgQEAKIAkJQTc4NEEyNjExMUQxNjYyMjAwNTc3NkFDIC8qIEFTVEJ1aWxk
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3QTdF
RTc0MTFCOThCOEQwMDY1QTE0RiAvKiBBU1RCdWlsZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTc4NEEyNjQxMUQxNjYyMjAwNTc3NkFDIC8q
IFN5bnRheENoZWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE3QTdFRTc3MTFCOThCOEQwMDY1QTE0RiAvKiBTeW50YXhDaGVja2VyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTc4NTA3RDYxN0NC
QzZGRDAwMTFGNkU3IC8qIE1hcERhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTc4NTA3RDQxN0NCQzZGRDAwMTFGNkU3IC8qIE1hcERhdGEuY3Bw
ICovOyB9OwotCQlBNzg1MDdENzE3Q0JDNkZEMDAxMUY2RTcgLyogTWFwRGF0YS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc4NTA3RDUxN0NCQzZGRDAw
MTFGNkU3IC8qIE1hcERhdGEuaCAqLzsgfTsKKwkJQTc4NTA3RDcxN0NCQzZGRDAwMTFGNkU3IC8q
IE1hcERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE3ODUwN0Q1MTdDQkM2RkQwMDExRjZFNyAvKiBNYXBEYXRhLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTc4ODUzRjkxNzk3MjYyOTAwMTQ0MEU0
IC8qIEludGVuZGVkU3RydWN0dXJlQ2hhaW4uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTc4ODUzRjcxNzk3MjYyOTAwMTQ0MEU0IC8qIEludGVuZGVk
U3RydWN0dXJlQ2hhaW4uY3BwICovOyB9OwogCQlBNzg4NTNGQTE3OTcyNjI5MDAxNDQwRTQgLyog
SW50ZW5kZWRTdHJ1Y3R1cmVDaGFpbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTc4ODUzRjgxNzk3MjYyOTAwMTQ0MEU0IC8qIEludGVuZGVkU3RydWN0
dXJlQ2hhaW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQlBNzhBOTc3NDE3OTczOEI4MDA5REY3NDQgLyogREZHRmFpbGVkRmluYWxpemVyLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3OEE5NzZDMTc5
NzM4QjgwMDlERjc0NCAvKiBERkdGYWlsZWRGaW5hbGl6ZXIuY3BwICovOyB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTWFwLmgKaW5kZXggOTY1OTI5MzVkNzZmYTA4YzQ3ZDMxMDYzNzAy
MzE0ODU4ZGY0NWU0NC4uNmQwNDkyMTk2NTAxYWJiODAxZDFhZDA0Yzc1YTk5ZTRkMTNkNzBhNyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5oCkBAIC0zNiw3ICszNiw3IEBAIGNs
YXNzIEpTTWFwIDogcHVibGljIEpTTm9uRmluYWxPYmplY3QgewogcHVibGljOgogICAgIHR5cGVk
ZWYgSlNOb25GaW5hbE9iamVjdCBCYXNlOwogCi0gICAgREVDTEFSRV9JTkZPOworICAgIERFQ0xB
UkVfRVhQT1JUX0lORk87CiAKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CkBAIC02Niw3ICs2Niw3IEBAIHByaXZhdGU6CiAgICAgewogICAgIH0KIAotICAgIHZv
aWQgZmluaXNoQ3JlYXRpb24oVk0mLCBKU0dsb2JhbE9iamVjdCopOworICAgIEpTX0VYUE9SVF9Q
UklWQVRFIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mLCBKU0dsb2JhbE9iamVjdCopOwogCiAgICAg
c3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBTbG90VmlzaXRvciYpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuaAppbmRleCBlZDA5YmVjNmVkODRkMzc3NjMxODRm
ZDJjZWIzYmFmZDFiY2NlYmIzLi40MjdiYjdiYzVjMTk2OGQ5M2EyODc4N2Y2NDk0ODk1MmE5YjE4
MjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmgKQEAgLTM2LDcgKzM2LDcg
QEAgY2xhc3MgSlNTZXQgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6CiAgICAg
dHlwZWRlZiBKU05vbkZpbmFsT2JqZWN0IEJhc2U7CiAKLSAgICBERUNMQVJFX0lORk87CisgICAg
REVDTEFSRV9FWFBPUlRfSU5GTzsKIAogICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKQEAgLTY2LDcgKzY2LDcgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgfQogCi0g
ICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisgICAgSlNfRVhQ
T1JUX1BSSVZBVEUgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CiAg
ICAgCiAgICAgc3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBTbG90VmlzaXRvciYp
OwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwRGF0
YS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwRGF0YS5oCmluZGV4IDVkODg1
Y2VhYzZjN2I0YjJlNjA4MTRjYTc2MzdjYjJmMTNlMTAxZmMuLjE5YzA5ZjU1M2U0OTMyMGM4ZTA3
Njk4NTg3NWIxYjgzMGY3NzQ4YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcERhdGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBE
YXRhLmgKQEAgLTgwLDcgKzgwLDcgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gU3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBUeXBlSW5mbyhPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7CiAgICAgfQogCi0gICAgdm9pZCBzZXQoQ2FsbEZy
YW1lKiwgS2V5VHlwZSwgSlNWYWx1ZSk7CisgICAgSlNfRVhQT1JUX1BSSVZBVEUgdm9pZCBzZXQo
Q2FsbEZyYW1lKiwgS2V5VHlwZSwgSlNWYWx1ZSk7CiAgICAgSlNWYWx1ZSBnZXQoQ2FsbEZyYW1l
KiwgS2V5VHlwZSk7CiAgICAgYm9vbCByZW1vdmUoQ2FsbEZyYW1lKiwgS2V5VHlwZSk7CiAgICAg
Ym9vbCBjb250YWlucyhDYWxsRnJhbWUqLCBLZXlUeXBlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL3J1bnRpbWUvSlNNYXAuaCBiL1NvdXJjZS9XZWJDb3Jl
L0ZvcndhcmRpbmdIZWFkZXJzL3J1bnRpbWUvSlNNYXAuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMGJjMDljMWI3
ODg5NzY2NmU3Y2Y5NmU0YTNhNzRjMDQyOWM2MjIzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvcnVudGltZS9KU01hcC5oCkBAIC0wLDAgKzEsNCBA
QAorI2lmbmRlZiBXZWJDb3JlX0ZXRF9KU01hcF9oCisjZGVmaW5lIFdlYkNvcmVfRldEX0pTTWFw
X2gKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU01hcC5oPgorI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9ydW50aW1lL0pTU2V0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9ydW50aW1lL0pTU2V0LmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OGNmMDlmOGVhNWUxNWEwODVhMGU1NjIwN2RlZjYyN2IwN2E2NzM1ZQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL3J1bnRpbWUvSlNTZXQuaApAQCAt
MCwwICsxLDQgQEAKKyNpZm5kZWYgV2ViQ29yZV9GV0RfSlNTZXRfaAorI2RlZmluZSBXZWJDb3Jl
X0ZXRF9KU1NldF9oCisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNTZXQuaD4KKyNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvcnVudGltZS9NYXBE
YXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9ydW50aW1lL01hcERhdGEu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iYjM0NzM2ZTZiYjA1NzhlNmRkMjI2ZGFlNDRkMDEzNjIxNTdjNTI3Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvRm9yd2FyZGluZ0hlYWRlcnMvcnVudGlt
ZS9NYXBEYXRhLmgKQEAgLTAsMCArMSw0IEBACisjaWZuZGVmIFdlYkNvcmVfRldEX01hcERhdGFf
aAorI2RlZmluZSBXZWJDb3JlX0ZXRF9NYXBEYXRhX2gKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29y
ZS9NYXBEYXRhLmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwCmluZGV4IGMyMmY0OTMwMmM4ODE1MTY1NzZiMzQy
MjQ0NzI4ZTAzZWJmMzQxZmYuLmM4YjlhZjQyOTQ4NTQ4ZWRiNWIzZWMwMzE1YmI2Y2NjZjUzYzMy
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNj
cmlwdFZhbHVlLmNwcApAQCAtNTQsNyArNTQsMTAgQEAKICNpbmNsdWRlIDxydW50aW1lL0pTQXJy
YXlCdWZmZXIuaD4KICNpbmNsdWRlIDxydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3Lmg+CiAjaW5j
bHVkZSA8cnVudGltZS9KU0RhdGFWaWV3Lmg+CisjaW5jbHVkZSA8cnVudGltZS9KU01hcC5oPgor
I2luY2x1ZGUgPHJ1bnRpbWUvSlNTZXQuaD4KICNpbmNsdWRlIDxydW50aW1lL0pTVHlwZWRBcnJh
eXMuaD4KKyNpbmNsdWRlIDxydW50aW1lL01hcERhdGEuaD4KICNpbmNsdWRlIDxydW50aW1lL09i
amVjdENvbnN0cnVjdG9yLmg+CiAjaW5jbHVkZSA8cnVudGltZS9PcGVyYXRpb25zLmg+CiAjaW5j
bHVkZSA8cnVudGltZS9Qcm9wZXJ0eU5hbWVBcnJheS5oPgpAQCAtNzksNyArODIsOCBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bUZpbHRlclJlY3Vy
c2lvbiA9IDQwMDAwOwogCiBlbnVtIFdhbGtlclN0YXRlIHsgU3RhdGVVbmtub3duLCBBcnJheVN0
YXJ0U3RhdGUsIEFycmF5U3RhcnRWaXNpdE1lbWJlciwgQXJyYXlFbmRWaXNpdE1lbWJlciwKLSAg
ICBPYmplY3RTdGFydFN0YXRlLCBPYmplY3RTdGFydFZpc2l0TWVtYmVyLCBPYmplY3RFbmRWaXNp
dE1lbWJlciB9OworICAgIE9iamVjdFN0YXJ0U3RhdGUsIE9iamVjdFN0YXJ0VmlzaXRNZW1iZXIs
IE9iamVjdEVuZFZpc2l0TWVtYmVyLAorICAgIE1hcERhdGFTdGFydFZpc2l0RW50cnksIE1hcERh
dGFFbmRWaXNpdEtleSwgTWFwRGF0YUVuZFZpc2l0VmFsdWUgfTsKIAogLy8gVGhlc2UgY2FuJ3Qg
YmUgcmVvcmRlcmVkLCBhbmQgYW55IG5ldyB0eXBlcyBtdXN0IGJlIGFkZGVkIHRvIHRoZSBlbmQg
b2YgdGhlIGxpc3QKIGVudW0gU2VyaWFsaXphdGlvblRhZyB7CkBAIC0xMTEsNiArMTE1LDkgQEAg
ZW51bSBTZXJpYWxpemF0aW9uVGFnIHsKICAgICBTdHJpbmdPYmplY3RUYWcgPSAyNiwKICAgICBF
bXB0eVN0cmluZ09iamVjdFRhZyA9IDI3LAogICAgIE51bWJlck9iamVjdFRhZyA9IDI4LAorICAg
IFNldE9iamVjdFRhZyA9IDI5LAorICAgIE1hcE9iamVjdFRhZyA9IDMwLAorICAgIE5vbk1hcFBy
b3BlcnRpZXNUYWcgPSAzMSwKICAgICBFcnJvclRhZyA9IDI1NQogfTsKIApAQCAtMTU4LDggKzE2
NSw5IEBAIHN0YXRpYyB1bnNpZ25lZCB0eXBlZEFycmF5RWxlbWVudFNpemUoQXJyYXlCdWZmZXJW
aWV3U3VidGFnIHRhZykKICAqIFZlcnNpb24gMy4gYWRkZWQgdGhlIEZhbHNlT2JqZWN0VGFnLCBU
cnVlT2JqZWN0VGFnLCBOdW1iZXJPYmplY3RUYWcsIFN0cmluZ09iamVjdFRhZwogICogYW5kIEVt
cHR5U3RyaW5nT2JqZWN0VGFnIGZvciBzZXJpYWxpemF0aW9uIG9mIEJvb2xlYW4sIE51bWJlciBh
bmQgU3RyaW5nIG9iamVjdHMuCiAgKiBWZXJzaW9uIDQuIGFkZGVkIHN1cHBvcnQgZm9yIHNlcmlh
bGl6aW5nIG5vbi1pbmRleCBwcm9wZXJ0aWVzIG9mIGFycmF5cy4KKyAqIFZlcnNpb24gNS4gYWRk
ZWQgc3VwcG9ydCBmb3IgTWFwIGFuZCBTZXQgdHlwZXMuCiAgKi8KLXN0YXRpYyBjb25zdCB1bnNp
Z25lZCBDdXJyZW50VmVyc2lvbiA9IDQ7CitzdGF0aWMgY29uc3QgdW5zaWduZWQgQ3VycmVudFZl
cnNpb24gPSA1Owogc3RhdGljIGNvbnN0IHVuc2lnbmVkIFRlcm1pbmF0b3JUYWcgPSAweEZGRkZG
RkZGOwogc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cmluZ1Bvb2xUYWcgPSAweEZGRkZGRkZFOwog
c3RhdGljIGNvbnN0IHVuc2lnbmVkIE5vbkluZGV4UHJvcGVydGllc1RhZyA9IDB4RkZGRkZGRkQ7
CkBAIC0xNzMsNyArMTgxLDcgQEAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIE5vbkluZGV4UHJvcGVy
dGllc1RhZyA9IDB4RkZGRkZGRkQ7CiAgKiBpbiB0aGUgY29uc3RhbnQgcG9vbC4KICAqCiAgKiBT
ZXJpYWxpemVkVmFsdWUgOi0gPEN1cnJlbnRWZXJzaW9uOnVpbnQzMl90PiBWYWx1ZQotICogVmFs
dWUgOi0gQXJyYXkgfCBPYmplY3QgfCBUZXJtaW5hbAorICogVmFsdWUgOi0gQXJyYXkgfCBPYmpl
Y3QgfCBNYXAgfCBTZXQgfCBUZXJtaW5hbAogICoKICAqIEFycmF5IDotCiAgKiAgICAgQXJyYXlU
YWcgPGxlbmd0aDp1aW50MzJfdD4oPGluZGV4OnVpbnQzMl90Pjx2YWx1ZTpWYWx1ZT4pKiBUZXJt
aW5hdG9yVGFnCkBAIC0xODEsNiArMTg5LDEyIEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBOb25J
bmRleFByb3BlcnRpZXNUYWcgPSAweEZGRkZGRkZEOwogICogT2JqZWN0IDotCiAgKiAgICAgT2Jq
ZWN0VGFnICg8bmFtZTpTdHJpbmdEYXRhPjx2YWx1ZTpWYWx1ZT4pKiBUZXJtaW5hdG9yVGFnCiAg
KgorICogTWFwIDotIE1hcE9iamVjdFRhZyBNYXBEYXRhCisgKgorICogU2V0IDotIFNldE9iamVj
dFRhZyBNYXBEYXRhCisgKgorICogTWFwRGF0YSA6LSAoPGtleTpWYWx1ZT48dmFsdWU6VmFsdWU+
KSBOb25NYXBQcm9wZXJ0aWVzVGFnICg8bmFtZTpTdHJpbmdEYXRhPjx2YWx1ZTpWYWx1ZT4pKiBU
ZXJtaW5hdG9yVGFnCisgKgogICogVGVybWluYWwgOi0KICAqICAgICAgVW5kZWZpbmVkVGFnCiAg
KiAgICB8IE51bGxUYWcKQEAgLTM5OSw2ICs0MTMsMjEgQEAgcHJpdmF0ZToKICAgICAgICAgcmV0
dXJuIGlzSlNBcnJheShvYmplY3QpIHx8IG9iamVjdC0+aW5oZXJpdHMoSlNBcnJheTo6aW5mbygp
KTsKICAgICB9CiAKKyAgICBib29sIGlzTWFwKEpTVmFsdWUgdmFsdWUpCisgICAgeworICAgICAg
ICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
ICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1ZSk7CisgICAgICAgIHJldHVybiBv
YmplY3QtPmluaGVyaXRzKEpTTWFwOjppbmZvKCkpOworICAgIH0KKyAgICBib29sIGlzU2V0KEpT
VmFsdWUgdmFsdWUpCisgICAgeworICAgICAgICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVj
dCh2YWx1ZSk7CisgICAgICAgIHJldHVybiBvYmplY3QtPmluaGVyaXRzKEpTU2V0OjppbmZvKCkp
OworICAgIH0KKwogICAgIGJvb2wgY2hlY2tGb3JEdXBsaWNhdGUoSlNPYmplY3QqIG9iamVjdCkK
ICAgICB7CiAgICAgICAgIC8vIFJlY29yZCBvYmplY3QgZm9yIGdyYXBoIHJlY29uc3RydWN0aW9u
CkBAIC00NDgsNiArNDc3LDI0IEBAIHByaXZhdGU6CiAgICAgICAgIHJldHVybiB0cnVlOwogICAg
IH0KIAorICAgIGJvb2wgc3RhcnRTZXQoSlNTZXQqIHNldCkKKyAgICB7CisgICAgICAgIGlmICgh
c3RhcnRPYmplY3RJbnRlcm5hbChzZXQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgICAgIHdyaXRlKFNldE9iamVjdFRhZyk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0K
KworICAgIGJvb2wgc3RhcnRNYXAoSlNNYXAqIG1hcCkKKyAgICB7CisgICAgICAgIGlmICghc3Rh
cnRPYmplY3RJbnRlcm5hbChtYXApKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
ICAgIHdyaXRlKE1hcE9iamVjdFRhZyk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKwog
ICAgIHZvaWQgZW5kT2JqZWN0KCkKICAgICB7CiAgICAgICAgIHdyaXRlKFRlcm1pbmF0b3JUYWcp
OwpAQCAtODIxLDYgKzg2OCw4IEBAIFNlcmlhbGl6YXRpb25SZXR1cm5Db2RlIENsb25lU2VyaWFs
aXplcjo6c2VyaWFsaXplKEpTVmFsdWUgaW4pCiAgICAgVmVjdG9yPHVpbnQzMl90LCAxNj4gbGVu
Z3RoU3RhY2s7CiAgICAgVmVjdG9yPFByb3BlcnR5TmFtZUFycmF5LCAxNj4gcHJvcGVydHlTdGFj
azsKICAgICBWZWN0b3I8SlNPYmplY3QqLCAzMj4gaW5wdXRPYmplY3RTdGFjazsKKyAgICBWZWN0
b3I8TWFwRGF0YSosIDQ+IG1hcERhdGFTdGFjazsKKyAgICBWZWN0b3I8TWFwRGF0YTo6Y29uc3Rf
aXRlcmF0b3IsIDQ+IGl0ZXJhdG9yU3RhY2s7CiAgICAgVmVjdG9yPFdhbGtlclN0YXRlLCAxNj4g
c3RhdGVTdGFjazsKICAgICBXYWxrZXJTdGF0ZSBzdGF0ZSA9IFN0YXRlVW5rbm93bjsKICAgICBK
U1ZhbHVlIGluVmFsdWUgPSBpbjsKQEAgLTk0NSw2ICs5OTQsNjMgQEAgU2VyaWFsaXphdGlvblJl
dHVybkNvZGUgQ2xvbmVTZXJpYWxpemVyOjpzZXJpYWxpemUoSlNWYWx1ZSBpbikKICAgICAgICAg
ICAgICAgICBpbmRleFN0YWNrLmxhc3QoKSsrOwogICAgICAgICAgICAgICAgIGdvdG8gb2JqZWN0
U3RhcnRWaXNpdE1lbWJlcjsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1hcFN0YXJ0U3Rh
dGU6IHsKKyAgICAgICAgICAgICAgICBBU1NFUlQoaW5WYWx1ZS5pc09iamVjdCgpKTsKKyAgICAg
ICAgICAgICAgICBpZiAoaW5wdXRPYmplY3RTdGFjay5zaXplKCkgPiBtYXhpbXVtRmlsdGVyUmVj
dXJzaW9uKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gU3RhY2tPdmVyZmxvd0Vycm9yOwor
ICAgICAgICAgICAgICAgIEpTTWFwKiBpbk1hcCA9IGpzQ2FzdDxKU01hcCo+KGluVmFsdWUpOwor
ICAgICAgICAgICAgICAgIGlmICghc3RhcnRNYXAoaW5NYXApKQorICAgICAgICAgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgICAgICBNYXBEYXRhKiBtYXBEYXRhID0gaW5NYXAtPm1hcERh
dGEoKTsKKyAgICAgICAgICAgICAgICBtX2djQnVmZmVyLmFwcGVuZChtYXBEYXRhKTsKKyAgICAg
ICAgICAgICAgICBtYXBEYXRhU3RhY2suYXBwZW5kKG1hcERhdGEpOworICAgICAgICAgICAgICAg
IGl0ZXJhdG9yU3RhY2suYXBwZW5kKG1hcERhdGEtPmJlZ2luKCkpOworICAgICAgICAgICAgICAg
IGlucHV0T2JqZWN0U3RhY2suYXBwZW5kKGluTWFwKTsKKyAgICAgICAgICAgICAgICBnb3RvIG1h
cERhdGFTdGFydFZpc2l0RW50cnk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBzZXRTdGFy
dFN0YXRlOiB7CisgICAgICAgICAgICAgICAgQVNTRVJUKGluVmFsdWUuaXNPYmplY3QoKSk7Cisg
ICAgICAgICAgICAgICAgaWYgKGlucHV0T2JqZWN0U3RhY2suc2l6ZSgpID4gbWF4aW11bUZpbHRl
clJlY3Vyc2lvbikKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFN0YWNrT3ZlcmZsb3dFcnJv
cjsKKyAgICAgICAgICAgICAgICBKU1NldCogaW5TZXQgPSBqc0Nhc3Q8SlNTZXQqPihpblZhbHVl
KTsKKyAgICAgICAgICAgICAgICBpZiAoIXN0YXJ0U2V0KGluU2V0KSkKKyAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgTWFwRGF0YSogbWFwRGF0YSA9IGluU2V0LT5t
YXBEYXRhKCk7CisgICAgICAgICAgICAgICAgbV9nY0J1ZmZlci5hcHBlbmQobWFwRGF0YSk7Cisg
ICAgICAgICAgICAgICAgbWFwRGF0YVN0YWNrLmFwcGVuZChtYXBEYXRhKTsKKyAgICAgICAgICAg
ICAgICBpdGVyYXRvclN0YWNrLmFwcGVuZChtYXBEYXRhLT5iZWdpbigpKTsKKyAgICAgICAgICAg
ICAgICBpbnB1dE9iamVjdFN0YWNrLmFwcGVuZChpblNldCk7CisgICAgICAgICAgICAgICAgZ290
byBtYXBEYXRhU3RhcnRWaXNpdEVudHJ5OworICAgICAgICAgICAgfQorICAgICAgICAgICAgbWFw
RGF0YVN0YXJ0VmlzaXRFbnRyeToKKyAgICAgICAgICAgIGNhc2UgTWFwRGF0YVN0YXJ0VmlzaXRF
bnRyeTogeworICAgICAgICAgICAgICAgIE1hcERhdGE6OmNvbnN0X2l0ZXJhdG9yJiBwdHIgPSBp
dGVyYXRvclN0YWNrLmxhc3QoKTsKKyAgICAgICAgICAgICAgICBNYXBEYXRhKiBtYXBEYXRhID0g
bWFwRGF0YVN0YWNrLmxhc3QoKTsKKyAgICAgICAgICAgICAgICBpZiAocHRyID09IG1hcERhdGEt
PmVuZCgpKSB7CisgICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yU3RhY2sucmVtb3ZlTGFzdCgp
OworICAgICAgICAgICAgICAgICAgICBtYXBEYXRhU3RhY2sucmVtb3ZlTGFzdCgpOworICAgICAg
ICAgICAgICAgICAgICBKU09iamVjdCogb2JqZWN0ID0gaW5wdXRPYmplY3RTdGFjay5sYXN0KCk7
CisgICAgICAgICAgICAgICAgICAgIEFTU0VSVChqc0R5bmFtaWNDYXN0PEpTU2V0Kj4ob2JqZWN0
KSB8fCBqc0R5bmFtaWNDYXN0PEpTTWFwKj4ob2JqZWN0KSk7CisgICAgICAgICAgICAgICAgICAg
IHByb3BlcnR5U3RhY2suYXBwZW5kKFByb3BlcnR5TmFtZUFycmF5KG1fZXhlYykpOworICAgICAg
ICAgICAgICAgICAgICBvYmplY3QtPm1ldGhvZFRhYmxlKCktPmdldE93blByb3BlcnR5TmFtZXMo
b2JqZWN0LCBtX2V4ZWMsIHByb3BlcnR5U3RhY2subGFzdCgpLCBFeGNsdWRlRG9udEVudW1Qcm9w
ZXJ0aWVzKTsKKyAgICAgICAgICAgICAgICAgICAgd3JpdGUoTm9uTWFwUHJvcGVydGllc1RhZyk7
CisgICAgICAgICAgICAgICAgICAgIGluZGV4U3RhY2suYXBwZW5kKDApOworICAgICAgICAgICAg
ICAgICAgICBnb3RvIG9iamVjdFN0YXJ0VmlzaXRNZW1iZXI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgIGluVmFsdWUgPSBwdHIua2V5KCk7CisgICAgICAgICAgICAgICAgc3Rh
dGVTdGFjay5hcHBlbmQoTWFwRGF0YUVuZFZpc2l0S2V5KTsKKyAgICAgICAgICAgICAgICBnb3Rv
IHN0YXRlVW5rbm93bjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNhc2UgTWFwRGF0YUVu
ZFZpc2l0S2V5OiB7CisgICAgICAgICAgICAgICAgaW5WYWx1ZSA9IGl0ZXJhdG9yU3RhY2subGFz
dCgpLnZhbHVlKCk7CisgICAgICAgICAgICAgICAgc3RhdGVTdGFjay5hcHBlbmQoTWFwRGF0YUVu
ZFZpc2l0VmFsdWUpOworICAgICAgICAgICAgICAgIGdvdG8gc3RhdGVVbmtub3duOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgY2FzZSBNYXBEYXRhRW5kVmlzaXRWYWx1ZTogeworICAgICAg
ICAgICAgICAgICsraXRlcmF0b3JTdGFjay5sYXN0KCk7CisgICAgICAgICAgICAgICAgZ290byBt
YXBEYXRhU3RhcnRWaXNpdEVudHJ5OworICAgICAgICAgICAgfQorCiAgICAgICAgICAgICBzdGF0
ZVVua25vd246CiAgICAgICAgICAgICBjYXNlIFN0YXRlVW5rbm93bjogewogICAgICAgICAgICAg
ICAgIFNlcmlhbGl6YXRpb25SZXR1cm5Db2RlIHRlcm1pbmFsQ29kZSA9IFN1Y2Nlc3NmdWxseUNv
bXBsZXRlZDsKQEAgLTk1Niw2ICsxMDYyLDEwIEBAIFNlcmlhbGl6YXRpb25SZXR1cm5Db2RlIENs
b25lU2VyaWFsaXplcjo6c2VyaWFsaXplKEpTVmFsdWUgaW4pCiAKICAgICAgICAgICAgICAgICBp
ZiAoaXNBcnJheShpblZhbHVlKSkKICAgICAgICAgICAgICAgICAgICAgZ290byBhcnJheVN0YXJ0
U3RhdGU7CisgICAgICAgICAgICAgICAgaWYgKGlzTWFwKGluVmFsdWUpKQorICAgICAgICAgICAg
ICAgICAgICBnb3RvIG1hcFN0YXJ0U3RhdGU7CisgICAgICAgICAgICAgICAgaWYgKGlzU2V0KGlu
VmFsdWUpKQorICAgICAgICAgICAgICAgICAgICBnb3RvIHNldFN0YXJ0U3RhdGU7CiAgICAgICAg
ICAgICAgICAgZ290byBvYmplY3RTdGFydFN0YXRlOwogICAgICAgICAgICAgfQogICAgICAgICB9
CkBAIC0xNTU3LDYgKzE2NjcsMTQgQEAgcHJpdmF0ZToKICAgICAgICAgfQogICAgIH0KIAorICAg
IGJvb2wgY29uc3VtZU1hcERhdGFUZXJtaW5hdGlvbklmUG9zc2libGUoKQorICAgIHsKKyAgICAg
ICAgaWYgKHJlYWRUYWcoKSA9PSBOb25NYXBQcm9wZXJ0aWVzVGFnKQorICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgICAgIG1fcHRyLS07CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9
CisKICAgICBKU0dsb2JhbE9iamVjdCogbV9nbG9iYWxPYmplY3Q7CiAgICAgYm9vbCBtX2lzRE9N
R2xvYmFsT2JqZWN0OwogICAgIGNvbnN0IHVpbnQ4X3QqIG1fcHRyOwpAQCAtMTU3Myw2ICsxNjkx
LDggQEAgRGVzZXJpYWxpemF0aW9uUmVzdWx0IENsb25lRGVzZXJpYWxpemVyOjpkZXNlcmlhbGl6
ZSgpCiAgICAgVmVjdG9yPHVpbnQzMl90LCAxNj4gaW5kZXhTdGFjazsKICAgICBWZWN0b3I8SWRl
bnRpZmllciwgMTY+IHByb3BlcnR5TmFtZVN0YWNrOwogICAgIFZlY3RvcjxKU09iamVjdCosIDMy
PiBvdXRwdXRPYmplY3RTdGFjazsKKyAgICBWZWN0b3I8SlNWYWx1ZSwgND4ga2V5U3RhY2s7Cisg
ICAgVmVjdG9yPE1hcERhdGEqLCA0PiBtYXBEYXRhU3RhY2s7CiAgICAgVmVjdG9yPFdhbGtlclN0
YXRlLCAxNj4gc3RhdGVTdGFjazsKICAgICBXYWxrZXJTdGF0ZSBzdGF0ZSA9IFN0YXRlVW5rbm93
bjsKICAgICBKU1ZhbHVlIG91dFZhbHVlOwpAQCAtMTY1OSw2ICsxNzc5LDQ3IEBAIERlc2VyaWFs
aXphdGlvblJlc3VsdCBDbG9uZURlc2VyaWFsaXplcjo6ZGVzZXJpYWxpemUoKQogICAgICAgICAg
ICAgcHJvcGVydHlOYW1lU3RhY2sucmVtb3ZlTGFzdCgpOwogICAgICAgICAgICAgZ290byBvYmpl
Y3RTdGFydFZpc2l0TWVtYmVyOwogICAgICAgICB9CisgICAgICAgIG1hcE9iamVjdFN0YXJ0U3Rh
dGU6IHsKKyAgICAgICAgICAgIGlmIChvdXRwdXRPYmplY3RTdGFjay5zaXplKCkgPiBtYXhpbXVt
RmlsdGVyUmVjdXJzaW9uKQorICAgICAgICAgICAgICAgIHJldHVybiBtYWtlX3BhaXIoSlNWYWx1
ZSgpLCBTdGFja092ZXJmbG93RXJyb3IpOworICAgICAgICAgICAgSlNNYXAqIG1hcCA9IEpTTWFw
OjpjcmVhdGUobV9leGVjLT52bSgpLCBtX2dsb2JhbE9iamVjdC0+bWFwU3RydWN0dXJlKCkpOwor
ICAgICAgICAgICAgbV9nY0J1ZmZlci5hcHBlbmQobWFwKTsKKyAgICAgICAgICAgIG91dHB1dE9i
amVjdFN0YWNrLmFwcGVuZChtYXApOworICAgICAgICAgICAgTWFwRGF0YSogbWFwRGF0YSA9IG1h
cC0+bWFwRGF0YSgpOworICAgICAgICAgICAgbWFwRGF0YVN0YWNrLmFwcGVuZChtYXBEYXRhKTsK
KyAgICAgICAgICAgIGdvdG8gbWFwRGF0YVN0YXJ0VmlzaXRFbnRyeTsKKyAgICAgICAgfQorICAg
ICAgICBzZXRPYmplY3RTdGFydFN0YXRlOiB7CisgICAgICAgICAgICBpZiAob3V0cHV0T2JqZWN0
U3RhY2suc2l6ZSgpID4gbWF4aW11bUZpbHRlclJlY3Vyc2lvbikKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gbWFrZV9wYWlyKEpTVmFsdWUoKSwgU3RhY2tPdmVyZmxvd0Vycm9yKTsKKyAgICAgICAg
ICAgIEpTU2V0KiBzZXQgPSBKU1NldDo6Y3JlYXRlKG1fZXhlYy0+dm0oKSwgbV9nbG9iYWxPYmpl
Y3QtPnNldFN0cnVjdHVyZSgpKTsKKyAgICAgICAgICAgIG1fZ2NCdWZmZXIuYXBwZW5kKHNldCk7
CisgICAgICAgICAgICBvdXRwdXRPYmplY3RTdGFjay5hcHBlbmQoc2V0KTsKKyAgICAgICAgICAg
IE1hcERhdGEqIG1hcERhdGEgPSBzZXQtPm1hcERhdGEoKTsKKyAgICAgICAgICAgIG1hcERhdGFT
dGFjay5hcHBlbmQobWFwRGF0YSk7CisgICAgICAgICAgICBnb3RvIG1hcERhdGFTdGFydFZpc2l0
RW50cnk7CisgICAgICAgIH0KKyAgICAgICAgbWFwRGF0YVN0YXJ0VmlzaXRFbnRyeToKKyAgICAg
ICAgY2FzZSBNYXBEYXRhU3RhcnRWaXNpdEVudHJ5OiB7CisgICAgICAgICAgICBpZiAoY29uc3Vt
ZU1hcERhdGFUZXJtaW5hdGlvbklmUG9zc2libGUoKSkgeworICAgICAgICAgICAgICAgIG1hcERh
dGFTdGFjay5yZW1vdmVMYXN0KCk7CisgICAgICAgICAgICAgICAgZ290byBvYmplY3RTdGFydFZp
c2l0TWVtYmVyOworICAgICAgICAgICAgfQorICAgICAgICAgICAgc3RhdGVTdGFjay5hcHBlbmQo
TWFwRGF0YUVuZFZpc2l0S2V5KTsKKyAgICAgICAgICAgIGdvdG8gc3RhdGVVbmtub3duOworICAg
ICAgICB9CisKKyAgICAgICAgY2FzZSBNYXBEYXRhRW5kVmlzaXRLZXk6IHsKKyAgICAgICAgICAg
IGtleVN0YWNrLmFwcGVuZChvdXRWYWx1ZSk7CisgICAgICAgICAgICBzdGF0ZVN0YWNrLmFwcGVu
ZChNYXBEYXRhRW5kVmlzaXRWYWx1ZSk7CisgICAgICAgICAgICBnb3RvIHN0YXRlVW5rbm93bjsK
KyAgICAgICAgfQorCisgICAgICAgIGNhc2UgTWFwRGF0YUVuZFZpc2l0VmFsdWU6IHsKKyAgICAg
ICAgICAgIG1hcERhdGFTdGFjay5sYXN0KCktPnNldChtX2V4ZWMsIGtleVN0YWNrLmxhc3QoKSwg
b3V0VmFsdWUpOworICAgICAgICAgICAga2V5U3RhY2sucmVtb3ZlTGFzdCgpOworICAgICAgICAg
ICAgZ290byBtYXBEYXRhU3RhcnRWaXNpdEVudHJ5OworICAgICAgICB9CiAgICAgICAgIHN0YXRl
VW5rbm93bjoKICAgICAgICAgY2FzZSBTdGF0ZVVua25vd246CiAgICAgICAgICAgICBpZiAoSlNW
YWx1ZSB0ZXJtaW5hbCA9IHJlYWRUZXJtaW5hbCgpKSB7CkBAIC0xNjcwLDYgKzE4MzEsMTAgQEAg
RGVzZXJpYWxpemF0aW9uUmVzdWx0IENsb25lRGVzZXJpYWxpemVyOjpkZXNlcmlhbGl6ZSgpCiAg
ICAgICAgICAgICAgICAgZ290byBhcnJheVN0YXJ0U3RhdGU7CiAgICAgICAgICAgICBpZiAodGFn
ID09IE9iamVjdFRhZykKICAgICAgICAgICAgICAgICBnb3RvIG9iamVjdFN0YXJ0U3RhdGU7Cisg
ICAgICAgICAgICBpZiAodGFnID09IE1hcE9iamVjdFRhZykKKyAgICAgICAgICAgICAgICBnb3Rv
IG1hcE9iamVjdFN0YXJ0U3RhdGU7CisgICAgICAgICAgICBpZiAodGFnID09IFNldE9iamVjdFRh
ZykKKyAgICAgICAgICAgICAgICBnb3RvIHNldE9iamVjdFN0YXJ0U3RhdGU7CiAgICAgICAgICAg
ICBnb3RvIGVycm9yOwogICAgICAgICB9CiAgICAgICAgIGlmIChzdGF0ZVN0YWNrLmlzRW1wdHko
KSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCA5MjQzNGUyNGE5MTBkNmMyOTY3YmExY2RlNGIxZTdlZjQ2MGJmMzgzLi5iZTFi
MmU4NTQyN2I5ZWQzNDQwYzAwYzJkZWY2MDczOGY4ZGIxN2RiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTMtMDktMDMgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KKworICAgICAg
ICBTdXBwb3J0IHN0cnVjdHVyZWQgY2xvbmUgb2YgTWFwIGFuZCBTZXQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMDY1NAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzIQorCisgICAgICAgICogZmFz
dC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy9wb3N0bWVzc2FnZS1jbG9uZS5qczoKKyAgICAgICAg
KHNldCBuZXcpOgorICAgICAgICAoc2V0IGFkZC5zZXQgYWRkKToKKwogMjAxMy0wOS0wMyAgTWlo
bmVhIE92aWRlbmllICA8bWlobmVhQGFkb2JlLmNvbT4KIAogICAgICAgICBbQ1NTUmVnaW9uc10g
UHNldWRvLWVsZW1lbnRzIGFzIHJlZ2lvbnMgc2hvdWxkIG5vdCBiZSBleHBvc2VkIHRvIEpTCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3Bvc3Rt
ZXNzYWdlLWNsb25lLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0
cy9wb3N0bWVzc2FnZS1jbG9uZS5qcwppbmRleCA1OWQyNGI0ZDI5OTJlNDMyNDZlM2E4MjYzOTZm
ZDI4ZGUyNTZjNzBiLi4zMGRlOWQ1ZjI5ZjM3ODZmODM4ZDE4ZDBiNjI0ZmMzNjZkZTk0YjQ3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3Bvc3Rt
ZXNzYWdlLWNsb25lLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy9zY3JpcHQt
dGVzdHMvcG9zdG1lc3NhZ2UtY2xvbmUuanMKQEAgLTQzLDYgKzQzLDI4IEBAIHRyeVBvc3RNZXNz
YWdlKCdhcnJheUdyYXBoJywgZmFsc2UsICJhcnJheUdyYXBoIik7CiB0cnlQb3N0TWVzc2FnZSgn
d2luZG93JywgdHJ1ZSk7CiB0cnlQb3N0TWVzc2FnZSgnKHtnZXQgYSgpIHsgdGhyb3cgIngiIH19
KScsIHRydWUpOwogCit2YXIgbWFwID0gbmV3IE1hcDsKK3ZhciBzZXQgPSBuZXcgU2V0OworbWFw
LmV4cGFuZG8xID0ge307CittYXAuZXhwYW5kbzIgPSB7fTsKK21hcC5hU2V0ID0gc2V0OworbWFw
LnNldCgxLCAyLjUpCittYXAuc2V0KCJlbnRyeSIsIG1hcC5leHBhbmRvMSk7CittYXAuc2V0KHRy
dWUsIHNldCk7CittYXAuc2V0KG1hcC5leHBhbmRvMiwgbWFwKTsKK3NldC5hZGQoZmFsc2UpCitz
ZXQuYWRkKG1hcCkKK3RyeVBvc3RNZXNzYWdlKCJtYXAiLCBmYWxzZSwgImV2YWxUaHVuayIsIGZ1
bmN0aW9uICh2KSB7CisgICAgbmV3TWFwID0gdgorICAgIGRvUGFzc0ZhaWwobmV3TWFwLmdldCgi
ZW50cnkiKSA9PT0gbmV3TWFwLmV4cGFuZG8xLCAiU3RyaW5nIGtleWVkIGVudHJ5IHdhcyBjbG9u
ZWQgY29ycmVjdGx5Iik7CisgICAgZG9QYXNzRmFpbChuZXdNYXAuZ2V0KG5ld01hcC5leHBhbmRv
MikgPT09IG5ld01hcCwgIk9iamVjdCBrZXkgZW50cnkgd2FzIGNsb25lZCBjb3JyZWN0bHkiKTsK
KyAgICBzaG91bGRCZSgibmV3TWFwLmdldCh0cnVlKSIsICJuZXdNYXAuYVNldCIpCisgICAgc2hv
dWxkQmUoIm5ld01hcC5hU2V0LmhhcyhuZXdNYXApIiwgInRydWUiKQorICAgIG5ld01hcC5mb3JF
YWNoKGZ1bmN0aW9uICh2YWx1ZSwga2V5KSB7IAorICAgICAgICBjb25zb2xlLmlubmVySFRNTCAr
PSAiTE9HOiAiICsgdmFsdWUgKyAiID0+ICIgKyBrZXkgKyAiPGJyPiIKKyAgICB9KQorfSkKKwog
aWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgIHZhciBmaWxlSW5wdXQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZmlsZUlucHV0Iik7CiAgICAgdmFyIGZpbGVSZWN0ID0gZmlsZUlucHV0
LmdldENsaWVudFJlY3RzKClbMF07Cg==
</data>
<flag name="review"
          id="232516"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>