<?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>87088</bug_id>
          
          <creation_ts>2012-05-21 23:44:07 -0700</creation_ts>
          <short_desc>Disable private names by default in WebCore</short_desc>
          <delta_ts>2012-05-22 23:43:47 -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>JavaScriptCore</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="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          <cc>hausmann</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ossy</cc>
    
    <cc>pnormand</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>629990</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2012-05-21 23:44:07 -0700</bug_when>
    <thetext>r117859 introduced a preliminary implementation of ES6-like private name objects to JSC.  These are probably not yet ready to be web-facing, so disabling by default in WebCore.
Opting-in for JSC &amp; DumpRenderTree so that we can still run the fast/js/names.html test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630016</commentid>
    <comment_count>1</comment_count>
      <attachid>143206</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2012-05-22 00:09:47 -0700</bug_when>
    <thetext>Created attachment 143206
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630599</commentid>
    <comment_count>2</comment_count>
      <attachid>143206</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-05-22 11:41:29 -0700</bug_when>
    <thetext>Comment on attachment 143206
Fix

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630640</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2012-05-22 12:09:54 -0700</bug_when>
    <thetext>Fixed in r118018</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>631283</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-05-22 23:43:47 -0700</bug_when>
    <thetext>After disabling private names, fast/js/names.html started to fail on GTK and Qt, because r118018 made the necessarry changes to be able run this test for Mac only. 

I skipped this test on Qt - r118130.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143206</attachid>
            <date>2012-05-22 00:09:47 -0700</date>
            <delta_ts>2012-05-22 11:41:29 -0700</delta_ts>
            <desc>Fix</desc>
            <filename>87088.patch</filename>
            <type>text/plain</type>
            <size>29587</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTE3OTA1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBA
CisyMDEyLTA1LTIxICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4K
KworICAgICAgICBEaXNhYmxlIHByaXZhdGUgbmFtZXMgYnkgZGVmYXVsdCBpbiBXZWJDb3JlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzA4OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHIxMTc4NTkgaW50
cm9kdWNlZCBhIHByZWxpbWluYXJ5IGltcGxlbWVudGF0aW9uIG9mIEVTNi1saWtlIHByaXZhdGUg
bmFtZSBvYmplY3RzIHRvIEpTQy4KKyAgICAgICAgVGhlc2UgYXJlIHByb2JhYmx5IG5vdCB5ZXQg
cmVhZHkgdG8gYmUgd2ViLWZhY2luZywgc28gZGlzYWJsaW5nIGJ5IGRlZmF1bHQgaW4gV2ViQ29y
ZS4KKyAgICAgICAgT3B0aW5nLWluIGZvciBKU0MgJiBEdW1wUmVuZGVyVHJlZSBzbyB0aGF0IHdl
IGNhbiBzdGlsbCBydW4gdGhlIGZhc3QvanMvbmFtZXMuaHRtbCB0ZXN0LgorCisgICAgICAgICog
anNjLmNwcDoKKyAgICAgICAgKEdsb2JhbE9iamVjdCk6CisgICAgICAgIChHbG9iYWxPYmplY3Q6
OmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQpOgorICAgICAgICAgICAgLSBJbXBsZW1lbnRl
ZCBuZXcgdHJhcCB0byBvcHQtaW4gdG8gcHJpdmF0ZSBuYW1lcyBzdXBwb3J0LgorICAgICAgICAq
IHJ1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoSlNDKToKKyAgICAgICAgKEpT
Qzo6SlNHbG9iYWxPYmplY3Q6OnJlc2V0KToKKyAgICAgICAgICAgIC0gT25seSBhZGQgdGhlIE5h
bWUgcHJvcGVydHkgdG8gdGhlIGdsb2JhbCBvYmplY3QgaWYgZXhwZXJpbWVudHMgYXJlIGVuYWJs
ZWQuCisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5oOgorICAgICAgICAoR2xvYmFs
T2JqZWN0TWV0aG9kVGFibGUpOgorICAgICAgICAgICAgLSBBZGRlZCBuZXcgdHJhcCB0byBlbmFi
bGVkIGV4cGVyaW1lbnRzLgorICAgICAgICAoSlNHbG9iYWxPYmplY3QpOgorICAgICAgICAoSlND
OjpKU0dsb2JhbE9iamVjdDo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAgICAgLSBTZXQgdGhl
IGdsb2JhbCBvYmplY3QncyBtX2V4cGVyaW1lbnRzRW5hYmxlZCBzdGF0ZSBvbiBjb25zdHJ1Y3Rp
b24uCisgICAgICAgIChKU0M6OkpTR2xvYmFsT2JqZWN0OjpqYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkKToKKyAgICAgICAgICAgIC0gRGVmYXVsdHMgdG8gb2ZmLgorCiAyMDEyLTA1LTIxICBD
c2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CiAKICAgICAgICAgREZHIHNob3Vs
ZCBiZSBhYmxlIHRvIGNvbXB1dGUgZG9taW5hdG9ycwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL2pzYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAJ
KHJldmlzaW9uIDExNzg1OCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNjksMTIgKzE2OSwxNSBAQCBwdWJsaWM6CiAgICAgfQogCiAgICAgc3Rh
dGljIGNvbnN0IENsYXNzSW5mbyBzX2luZm87CisgICAgc3RhdGljIGNvbnN0IEdsb2JhbE9iamVj
dE1ldGhvZFRhYmxlIHNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGU7CiAKICAgICBzdGF0aWMgU3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBKU1ZhbHVl
IHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZShnbG9i
YWxEYXRhLCAwLCBwcm90b3R5cGUsIFR5cGVJbmZvKEdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgJnNfaW5mbyk7CiAgICAgfQogCisgICAgc3RhdGljIGJvb2wgamF2YVNjcmlwdEV4
cGVyaW1lbnRzRW5hYmxlZChjb25zdCBKU0dsb2JhbE9iamVjdCopIHsgcmV0dXJuIHRydWU7IH0K
KwogcHJvdGVjdGVkOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiBnbG9i
YWxEYXRhLCBjb25zdCBWZWN0b3I8VVN0cmluZz4mIGFyZ3VtZW50cykKICAgICB7CkBAIC0yMzEs
OSArMjM0LDExIEBAIENPTVBJTEVfQVNTRVJUKCFJc0ludGVnZXI8R2xvYmFsT2JqZWN0PjoKIEFT
U0VSVF9DTEFTU19GSVRTX0lOX0NFTEwoR2xvYmFsT2JqZWN0KTsKIAogY29uc3QgQ2xhc3NJbmZv
IEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2lu
Zm8sIDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
R2xvYmFsT2JqZWN0KSB9OworY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgR2xvYmFsT2Jq
ZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmYWxsb3dzQWNjZXNzRnJvbSwgJnN1
cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywgJnNob3VsZEludGVycnVw
dFNjcmlwdCwgJmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQgfTsKKwogCiBHbG9iYWxPYmpl
Y3Q6Okdsb2JhbE9iamVjdChKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3Ry
dWN0dXJlKQotICAgIDogSlNHbG9iYWxPYmplY3QoZ2xvYmFsRGF0YSwgc3RydWN0dXJlKQorICAg
IDogSlNHbG9iYWxPYmplY3QoZ2xvYmFsRGF0YSwgc3RydWN0dXJlLCAmc19nbG9iYWxPYmplY3RN
ZXRob2RUYWJsZSkKIHsKIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHbG9iYWxPYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAkocmV2aXNpb24gMTE3ODU5KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC04MSw3ICs4MSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSlNHbG9i
YWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZKU1ZhcmlhYmxlT2JqZWN0Ojpz
X2luZm8sIDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNHbG9iYWxPYmplY3QpIH07CiAKLWNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpT
R2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmYWxsb3dzQWNjZXNz
RnJvbSwgJnN1cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywgJnNob3Vs
ZEludGVycnVwdFNjcmlwdCB9OworY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNHbG9i
YWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxvd3NBY2Nlc3NGcm9t
LCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLCAmc2hvdWxkSW50
ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCB9OwogCiAvKiBTb3Vy
Y2UgZm9yIEpTR2xvYmFsT2JqZWN0Lmx1dC5oCiBAYmVnaW4gZ2xvYmFsT2JqZWN0VGFibGUKQEAg
LTI0Nyw5ICsyNDcsNiBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjpyZXNldChKU1ZhbHVlIHByb3Rv
CiAgICAgRXJyb3JQcm90b3R5cGUqIGVycm9yUHJvdG90eXBlID0gRXJyb3JQcm90b3R5cGU6OmNy
ZWF0ZShleGVjLCB0aGlzLCBFcnJvclByb3RvdHlwZTo6Y3JlYXRlU3RydWN0dXJlKGV4ZWMtPmds
b2JhbERhdGEoKSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKTsKICAgICBtX2Vycm9y
U3RydWN0dXJlLnNldChleGVjLT5nbG9iYWxEYXRhKCksIHRoaXMsIEVycm9ySW5zdGFuY2U6OmNy
ZWF0ZVN0cnVjdHVyZShleGVjLT5nbG9iYWxEYXRhKCksIHRoaXMsIGVycm9yUHJvdG90eXBlKSk7
CiAKLSAgICBOYW1lUHJvdG90eXBlKiBwcml2YXRlTmFtZVByb3RvdHlwZSA9IE5hbWVQcm90b3R5
cGU6OmNyZWF0ZShleGVjLCBOYW1lUHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUoZXhlYy0+Z2xv
YmFsRGF0YSgpLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOwotICAgIG1fcHJpdmF0
ZU5hbWVTdHJ1Y3R1cmUuc2V0KGV4ZWMtPmdsb2JhbERhdGEoKSwgdGhpcywgTmFtZUluc3RhbmNl
OjpjcmVhdGVTdHJ1Y3R1cmUoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBwcml2YXRlTmFtZVBy
b3RvdHlwZSkpOwotCiAgICAgLy8gQ29uc3RydWN0b3JzCiAKICAgICBKU0NlbGwqIG9iamVjdENv
bnN0cnVjdG9yID0gT2JqZWN0Q29uc3RydWN0b3I6OmNyZWF0ZShleGVjLCB0aGlzLCBPYmplY3RD
b25zdHJ1Y3Rvcjo6Y3JlYXRlU3RydWN0dXJlKGV4ZWMtPmdsb2JhbERhdGEoKSwgdGhpcywgbV9m
dW5jdGlvblByb3RvdHlwZS5nZXQoKSksIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKTsKQEAgLTI2
Myw3ICsyNjAsNiBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjpyZXNldChKU1ZhbHVlIHByb3RvCiAg
ICAgbV9yZWdFeHBDb25zdHJ1Y3Rvci5zZXQoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBSZWdF
eHBDb25zdHJ1Y3Rvcjo6Y3JlYXRlKGV4ZWMsIHRoaXMsIFJlZ0V4cENvbnN0cnVjdG9yOjpjcmVh
dGVTdHJ1Y3R1cmUoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBtX2Z1bmN0aW9uUHJvdG90eXBl
LmdldCgpKSwgbV9yZWdFeHBQcm90b3R5cGUuZ2V0KCkpKTsKIAogICAgIG1fZXJyb3JDb25zdHJ1
Y3Rvci5zZXQoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBFcnJvckNvbnN0cnVjdG9yOjpjcmVh
dGUoZXhlYywgdGhpcywgRXJyb3JDb25zdHJ1Y3Rvcjo6Y3JlYXRlU3RydWN0dXJlKGV4ZWMtPmds
b2JhbERhdGEoKSwgdGhpcywgbV9mdW5jdGlvblByb3RvdHlwZS5nZXQoKSksIGVycm9yUHJvdG90
eXBlKSk7Ci0gICAgSlNDZWxsKiBwcml2YXRlTmFtZUNvbnN0cnVjdG9yID0gTmFtZUNvbnN0cnVj
dG9yOjpjcmVhdGUoZXhlYywgdGhpcywgTmFtZUNvbnN0cnVjdG9yOjpjcmVhdGVTdHJ1Y3R1cmUo
ZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBtX2Z1bmN0aW9uUHJvdG90eXBlLmdldCgpKSwgcHJp
dmF0ZU5hbWVQcm90b3R5cGUpOwogCiAgICAgU3RydWN0dXJlKiBuYXRpdmVFcnJvclByb3RvdHlw
ZVN0cnVjdHVyZSA9IE5hdGl2ZUVycm9yUHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUoZXhlYy0+
Z2xvYmFsRGF0YSgpLCB0aGlzLCBlcnJvclByb3RvdHlwZSk7CiAgICAgU3RydWN0dXJlKiBuYXRp
dmVFcnJvclN0cnVjdHVyZSA9IE5hdGl2ZUVycm9yQ29uc3RydWN0b3I6OmNyZWF0ZVN0cnVjdHVy
ZShleGVjLT5nbG9iYWxEYXRhKCksIHRoaXMsIG1fZnVuY3Rpb25Qcm90b3R5cGUuZ2V0KCkpOwpA
QCAtMjgzLDcgKzI3OSw2IEBAIHZvaWQgSlNHbG9iYWxPYmplY3Q6OnJlc2V0KEpTVmFsdWUgcHJv
dG8KICAgICBtX2RhdGVQcm90b3R5cGUtPnB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKGV4ZWMt
Pmdsb2JhbERhdGEoKSwgZXhlYy0+cHJvcGVydHlOYW1lcygpLmNvbnN0cnVjdG9yLCBkYXRlQ29u
c3RydWN0b3IsIERvbnRFbnVtKTsKICAgICBtX3JlZ0V4cFByb3RvdHlwZS0+cHV0RGlyZWN0V2l0
aG91dFRyYW5zaXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCku
Y29uc3RydWN0b3IsIG1fcmVnRXhwQ29uc3RydWN0b3IuZ2V0KCksIERvbnRFbnVtKTsKICAgICBl
cnJvclByb3RvdHlwZS0+cHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+Z2xvYmFsRGF0
YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkuY29uc3RydWN0b3IsIG1fZXJyb3JDb25zdHJ1Y3Rv
ci5nZXQoKSwgRG9udEVudW0pOwotICAgIHByaXZhdGVOYW1lUHJvdG90eXBlLT5wdXREaXJlY3RX
aXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMo
KS5jb25zdHJ1Y3RvciwgcHJpdmF0ZU5hbWVDb25zdHJ1Y3RvciwgRG9udEVudW0pOwogCiAgICAg
cHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBJZGVudGlmaWVy
KGV4ZWMsICJPYmplY3QiKSwgb2JqZWN0Q29uc3RydWN0b3IsIERvbnRFbnVtKTsKICAgICBwdXRE
aXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIElkZW50aWZpZXIoZXhl
YywgIkZ1bmN0aW9uIiksIGZ1bmN0aW9uQ29uc3RydWN0b3IsIERvbnRFbnVtKTsKQEAgLTMwMCw3
ICsyOTUsNiBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjpyZXNldChKU1ZhbHVlIHByb3RvCiAgICAg
cHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBJZGVudGlmaWVy
KGV4ZWMsICJTeW50YXhFcnJvciIpLCBtX3N5bnRheEVycm9yQ29uc3RydWN0b3IuZ2V0KCksIERv
bnRFbnVtKTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRh
KCksIElkZW50aWZpZXIoZXhlYywgIlR5cGVFcnJvciIpLCBtX3R5cGVFcnJvckNvbnN0cnVjdG9y
LmdldCgpLCBEb250RW51bSk7CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+
Z2xvYmFsRGF0YSgpLCBJZGVudGlmaWVyKGV4ZWMsICJVUklFcnJvciIpLCBtX1VSSUVycm9yQ29u
c3RydWN0b3IuZ2V0KCksIERvbnRFbnVtKTsKLSAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlv
bihleGVjLT5nbG9iYWxEYXRhKCksIElkZW50aWZpZXIoZXhlYywgIk5hbWUiKSwgcHJpdmF0ZU5h
bWVDb25zdHJ1Y3RvciwgRG9udEVudW0pOwogCiAgICAgbV9ldmFsRnVuY3Rpb24uc2V0KGV4ZWMt
Pmdsb2JhbERhdGEoKSwgdGhpcywgSlNGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMsIHRoaXMsIDEsIGV4
ZWMtPnByb3BlcnR5TmFtZXMoKS5ldmFsLnVzdHJpbmcoKSwgZ2xvYmFsRnVuY0V2YWwpKTsKICAg
ICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnBy
b3BlcnR5TmFtZXMoKS5ldmFsLCBtX2V2YWxGdW5jdGlvbi5nZXQoKSwgRG9udEVudW0pOwpAQCAt
MzE1LDYgKzMwOSwxNSBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjpyZXNldChKU1ZhbHVlIHByb3Rv
CiAgICAgfTsKICAgICBhZGRTdGF0aWNHbG9iYWxzKHN0YXRpY0dsb2JhbHMsIFdURl9BUlJBWV9M
RU5HVEgoc3RhdGljR2xvYmFscykpOwogCisgICAgaWYgKG1fZXhwZXJpbWVudHNFbmFibGVkKSB7
CisgICAgICAgIE5hbWVQcm90b3R5cGUqIHByaXZhdGVOYW1lUHJvdG90eXBlID0gTmFtZVByb3Rv
dHlwZTo6Y3JlYXRlKGV4ZWMsIE5hbWVQcm90b3R5cGU6OmNyZWF0ZVN0cnVjdHVyZShleGVjLT5n
bG9iYWxEYXRhKCksIHRoaXMsIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSk7CisgICAgICAgIG1f
cHJpdmF0ZU5hbWVTdHJ1Y3R1cmUuc2V0KGV4ZWMtPmdsb2JhbERhdGEoKSwgdGhpcywgTmFtZUlu
c3RhbmNlOjpjcmVhdGVTdHJ1Y3R1cmUoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aGlzLCBwcml2YXRl
TmFtZVByb3RvdHlwZSkpOworCisgICAgICAgIEpTQ2VsbCogcHJpdmF0ZU5hbWVDb25zdHJ1Y3Rv
ciA9IE5hbWVDb25zdHJ1Y3Rvcjo6Y3JlYXRlKGV4ZWMsIHRoaXMsIE5hbWVDb25zdHJ1Y3Rvcjo6
Y3JlYXRlU3RydWN0dXJlKGV4ZWMtPmdsb2JhbERhdGEoKSwgdGhpcywgbV9mdW5jdGlvblByb3Rv
dHlwZS5nZXQoKSksIHByaXZhdGVOYW1lUHJvdG90eXBlKTsKKyAgICAgICAgcHJpdmF0ZU5hbWVQ
cm90b3R5cGUtPnB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwg
ZXhlYy0+cHJvcGVydHlOYW1lcygpLmNvbnN0cnVjdG9yLCBwcml2YXRlTmFtZUNvbnN0cnVjdG9y
LCBEb250RW51bSk7CisgICAgICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKGV4ZWMtPmds
b2JhbERhdGEoKSwgSWRlbnRpZmllcihleGVjLCAiTmFtZSIpLCBwcml2YXRlTmFtZUNvbnN0cnVj
dG9yLCBEb250RW51bSk7CisgICAgfQorCiAgICAgcmVzZXRQcm90b3R5cGUoZXhlYy0+Z2xvYmFs
RGF0YSgpLCBwcm90b3R5cGUpOwogfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmgJKHJldmlzaW9uIDExNzg1OSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAg
LTY4LDYgKzY4LDkgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgdHlwZWRlZiBib29sICgq
U2hvdWxkSW50ZXJydXB0U2NyaXB0RnVuY3Rpb25QdHIpKGNvbnN0IEpTR2xvYmFsT2JqZWN0Kik7
CiAgICAgICAgIFNob3VsZEludGVycnVwdFNjcmlwdEZ1bmN0aW9uUHRyIHNob3VsZEludGVycnVw
dFNjcmlwdDsKKworICAgICAgICB0eXBlZGVmIGJvb2wgKCpKYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkRnVuY3Rpb25QdHIpKGNvbnN0IEpTR2xvYmFsT2JqZWN0Kik7CisgICAgICAgIEphdmFT
Y3JpcHRFeHBlcmltZW50c0VuYWJsZWRGdW5jdGlvblB0ciBqYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkOwogICAgIH07CiAKICAgICBjbGFzcyBKU0dsb2JhbE9iamVjdCA6IHB1YmxpYyBKU1Zh
cmlhYmxlT2JqZWN0IHsKQEAgLTE0NSw2ICsxNDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAg
ICAgU3ltYm9sVGFibGUgbV9zeW1ib2xUYWJsZTsKIAogICAgICAgICBib29sIG1fZXZhbEVuYWJs
ZWQ7CisgICAgICAgIGJvb2wgbV9leHBlcmltZW50c0VuYWJsZWQ7CiAKICAgICAgICAgc3RhdGlj
IEpTX0VYUE9SVERBVEEgY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgc19nbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZTsKICAgICAgICAgY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUqIG1f
Z2xvYmFsT2JqZWN0TWV0aG9kVGFibGU7CkBAIC0xODQsNiArMTg4LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAgICAgICAgIHsKICAgICAgICAgICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGdsb2JhbERh
dGEpOwogICAgICAgICAgICAgc3RydWN0dXJlKCktPnNldEdsb2JhbE9iamVjdChnbG9iYWxEYXRh
LCB0aGlzKTsKKyAgICAgICAgICAgIG1fZXhwZXJpbWVudHNFbmFibGVkID0gbV9nbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZS0+amF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCh0aGlzKTsKICAgICAg
ICAgICAgIGluaXQodGhpcyk7CiAgICAgICAgIH0KIApAQCAtMTkxLDYgKzE5Niw3IEBAIG5hbWVz
cGFjZSBKU0MgewogICAgICAgICB7CiAgICAgICAgICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbihn
bG9iYWxEYXRhKTsKICAgICAgICAgICAgIHN0cnVjdHVyZSgpLT5zZXRHbG9iYWxPYmplY3QoZ2xv
YmFsRGF0YSwgdGhpcyk7CisgICAgICAgICAgICBtX2V4cGVyaW1lbnRzRW5hYmxlZCA9IG1fZ2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUtPmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQodGhpcyk7
CiAgICAgICAgICAgICBpbml0KHRoaXNWYWx1ZSk7CiAgICAgICAgIH0KIApAQCAtMjkyLDYgKzI5
OCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBKU19FWFBPUlRfUFJJVkFURSBFeGVjU3Rh
dGUqIGdsb2JhbEV4ZWMoKTsKIAogICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRlcnJ1cHRT
Y3JpcHQoY29uc3QgSlNHbG9iYWxPYmplY3QqKSB7IHJldHVybiB0cnVlOyB9CisgICAgICAgIHN0
YXRpYyBib29sIGphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQoY29uc3QgSlNHbG9iYWxPYmpl
Y3QqKSB7IHJldHVybiBmYWxzZTsgfQogCiAgICAgICAgIGJvb2wgaXNEeW5hbWljU2NvcGUoYm9v
bCYgcmVxdWlyZXNEeW5hbWljQ2hlY2tzKSBjb25zdDsKIApJbmRleDogU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNp
b24gMTE3OTA1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzIgQEAKKzIwMTItMDUtMjEgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91
Z2hAYXBwbGUuY29tPgorCisgICAgICAgIERpc2FibGUgcHJpdmF0ZSBuYW1lcyBieSBkZWZhdWx0
IGluIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg3MDg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgcjExNzg1OSBpbnRyb2R1Y2VkIGEgcHJlbGltaW5hcnkgaW1wbGVtZW50YXRpb24gb2YgRVM2
LWxpa2UgcHJpdmF0ZSBuYW1lIG9iamVjdHMgdG8gSlNDLgorICAgICAgICBUaGVzZSBhcmUgcHJv
YmFibHkgbm90IHlldCByZWFkeSB0byBiZSB3ZWItZmFjaW5nLCBzbyBkaXNhYmxpbmcgYnkgZGVm
YXVsdCBpbiBXZWJDb3JlLgorICAgICAgICBPcHRpbmctaW4gZm9yIEpTQyAmIER1bXBSZW5kZXJU
cmVlIHNvIHRoYXQgd2UgY2FuIHN0aWxsIHJ1biB0aGUgZmFzdC9qcy9uYW1lcy5odG1sIHRlc3Qu
CisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgICAgIC0gQWRkZWQgZXhwb3J0
LgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkpTRE9NV2luZG93QmFzZTo6amF2YVNjcmlwdEV4
cGVyaW1lbnRzRW5hYmxlZCk6CisgICAgICAgICAgICAtIE92ZXJyaWRlIGRlZmF1bHQgZnJvbSBK
U0MsIGVuYWJsZSBiYXNlZCBvbiBjb3JyZXNwb25kaW5nIFNldHRpbmcuCisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmg6CisgICAgICAgIChKU0RPTVdpbmRvd0Jhc2UpOgor
ICAgICAgICAgICAgLSBBZGRlZCBkZWNsYXJhdGlvbiBmb3IgamF2YVNjcmlwdEV4cGVyaW1lbnRz
RW5hYmxlZC4gCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNldEph
dmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
ICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAgICAoU2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29y
ZTo6U2V0dGluZ3M6OmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQpOgorICAgICAgICAgICAg
LSBBZGRlZCBTZXR0aW5nLCByZWZsZWN0aW5nIFdlYlByZWZlcmVuY2UuCisKIDIwMTItMDUtMjEg
IEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgogCiAgICAgICAgIFVzZSBzdGFjay1h
bGxvY2F0ZWQgQml0QXJyYXkgaW4gU3R5bGVQcm9wZXJ0eVNldCBzZXJpYWxpemF0aW9uLgpJbmRl
eDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5leHAuaW4JKHJldmlzaW9uIDExNzg1OCkKKysrIFNvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZXhwLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xMDQyLDYgKzEwNDIsNyBAQCBfX1pO
N1dlYkNvcmU4U2V0dGluZ3MyOXNldFdlYkFyY2hpdmVEZWJ1CiBfX1pON1dlYkNvcmU4U2V0dGlu
Z3MzMHNldEFsbG93RmlsZUFjY2Vzc0Zyb21GaWxlVVJMc0ViCiBfX1pON1dlYkNvcmU4U2V0dGlu
Z3MzMXNldENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmdFYgogX19aTjdXZWJDb3JlOFNldHRp
bmdzMzFzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkRWIKK19fWk43V2ViQ29yZThTZXR0
aW5nczMxc2V0SmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZEViCiBfX1pON1dlYkNvcmU4U2V0
dGluZ3MzMXNldFNocmlua3NTdGFuZGFsb25lSW1hZ2VzVG9GaXRFYgogX19aTjdXZWJDb3JlOFNl
dHRpbmdzMzJzZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZEViCiBfX1pON1dlYkNvcmU4
U2V0dGluZ3MzMnNldE5lZWRzQWRvYmVGcmFtZVJlbG9hZGluZ1F1aXJrRWIKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAkocmV2aXNpb24g
MTE3ODU4KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyArNDMsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZK
U0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93QmFzZSkgfTsKIAotY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5k
b3dCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmYWxsb3dzQWNjZXNzRnJvbSwg
JnN1cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywgJnNob3VsZEludGVy
cnVwdFNjcmlwdCB9OworY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5kb3dC
YXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmYWxsb3dzQWNjZXNzRnJvbSwgJnN1
cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywgJnNob3VsZEludGVycnVw
dFNjcmlwdCwgJmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQgfTsKIAogSlNET01XaW5kb3dC
YXNlOjpKU0RPTVdpbmRvd0Jhc2UoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxET01XaW5kb3c+IHdpbmRvdywgSlNET01XaW5kb3dTaGVs
bCogc2hlbGwpCiAgICAgOiBKU0RPTUdsb2JhbE9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUs
IHNoZWxsLT53b3JsZCgpLCAmc19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSkKQEAgLTE3NSw2ICsx
NzUsMTggQEAgYm9vbCBKU0RPTVdpbmRvd0Jhc2U6OnNob3VsZEludGVycnVwdFNjcgogICAgIHJl
dHVybiBwYWdlLT5jaHJvbWUoKS0+c2hvdWxkSW50ZXJydXB0SmF2YVNjcmlwdCgpOwogfQogCiti
b29sIEpTRE9NV2luZG93QmFzZTo6amF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZChjb25zdCBK
U0dsb2JhbE9iamVjdCogb2JqZWN0KQoreworICAgIGNvbnN0IEpTRE9NV2luZG93QmFzZSogdGhp
c09iamVjdCA9IHN0YXRpY19jYXN0PGNvbnN0IEpTRE9NV2luZG93QmFzZSo+KG9iamVjdCk7Cisg
ICAgRnJhbWUqIGZyYW1lID0gdGhpc09iamVjdC0+aW1wbCgpLT5mcmFtZSgpOworICAgIGlmICgh
ZnJhbWUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBm
cmFtZS0+c2V0dGluZ3MoKTsKKyAgICBpZiAoIXNldHRpbmdzKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgcmV0dXJuIHNldHRpbmdzLT5qYXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkKCk7
Cit9CisKIHZvaWQgSlNET01XaW5kb3dCYXNlOjp3aWxsUmVtb3ZlRnJvbVdpbmRvd1NoZWxsKCkK
IHsKICAgICBzZXRDdXJyZW50RXZlbnQoMCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdpbmRvd0Jhc2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuaAkocmV2aXNpb24gMTE3ODU4KQorKysgU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTYz
LDYgKzYzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBzdGF0aWMgYm9vbCBzdXBw
b3J0c1Byb2ZpbGluZyhjb25zdCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7CiAgICAgICAgIHN0YXRp
YyBib29sIHN1cHBvcnRzUmljaFNvdXJjZUluZm8oY29uc3QgSlNDOjpKU0dsb2JhbE9iamVjdCop
OwogICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRlcnJ1cHRTY3JpcHQoY29uc3QgSlNDOjpK
U0dsb2JhbE9iamVjdCopOworICAgICAgICBzdGF0aWMgYm9vbCBqYXZhU2NyaXB0RXhwZXJpbWVu
dHNFbmFibGVkKGNvbnN0IEpTQzo6SlNHbG9iYWxPYmplY3QqKTsKICAgICAgICAgc3RhdGljIGJv
b2wgYWxsb3dzQWNjZXNzRnJvbShjb25zdCBKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpFeGVj
U3RhdGUqKTsKICAgICAgICAgCiAgICAgICAgIGJvb2wgYWxsb3dzQWNjZXNzRnJvbShKU0M6OkV4
ZWNTdGF0ZSopIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJKHJldmlzaW9u
IDExNzg1OCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNzQsNiArMTc0LDcgQEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAg
ICAgLCBtX3Nob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0KGZhbHNlKQogICAgICwgbV9mb3Jj
ZUZUUERpcmVjdG9yeUxpc3RpbmdzKGZhbHNlKQogICAgICwgbV9kZXZlbG9wZXJFeHRyYXNFbmFi
bGVkKGZhbHNlKQorICAgICwgbV9qYXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkKGZhbHNlKQog
ICAgICwgbV9hdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZCh0cnVlKQogICAgICwgbV9uZWVkc1Np
dGVTcGVjaWZpY1F1aXJrcyhmYWxzZSkKICAgICAsIG1fZm9udFJlbmRlcmluZ01vZGUoMCkKQEAg
LTY2NSw2ICs2NjYsMTEgQEAgdm9pZCBTZXR0aW5nczo6c2V0RGV2ZWxvcGVyRXh0cmFzRW5hYmxl
ZAogICAgIG1fZGV2ZWxvcGVyRXh0cmFzRW5hYmxlZCA9IGRldmVsb3BlckV4dHJhc0VuYWJsZWQ7
CiB9CiAKK3ZvaWQgU2V0dGluZ3M6OnNldEphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQoYm9v
bCBqYXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkKQoreworICAgIG1famF2YVNjcmlwdEV4cGVy
aW1lbnRzRW5hYmxlZCA9IGphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQ7Cit9CisKIHZvaWQg
U2V0dGluZ3M6OnNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJvb2wgYXV0aG9yQW5kVXNl
clN0eWxlc0VuYWJsZWQpCiB7CiAgICAgaWYgKG1fYXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQg
PT0gYXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5o
CShyZXZpc2lvbiAxMTc4NTgpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHdv
cmtpbmcgY29weSkKQEAgLTI2MCw2ICsyNjAsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIAogICAgICAgICB2b2lkIHNldERldmVsb3BlckV4dHJhc0VuYWJsZWQoYm9vbCk7CiAgICAg
ICAgIGJvb2wgZGV2ZWxvcGVyRXh0cmFzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGV2ZWxv
cGVyRXh0cmFzRW5hYmxlZDsgfQorICAgICAgICAKKyAgICAgICAgdm9pZCBzZXRKYXZhU2NyaXB0
RXhwZXJpbWVudHNFbmFibGVkKGJvb2wpOworICAgICAgICBib29sIGphdmFTY3JpcHRFeHBlcmlt
ZW50c0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2phdmFTY3JpcHRFeHBlcmltZW50c0VuYWJs
ZWQ7IH0KIAogICAgICAgICB2b2lkIHNldEZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoYm9vbCk7CiAg
ICAgICAgIGJvb2wgZnJhbWVGbGF0dGVuaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJh
bWVGbGF0dGVuaW5nRW5hYmxlZDsgfQpAQCAtNjM5LDYgKzY0Miw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAgICAgYm9vbCBtX3Nob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0IDogMTsK
ICAgICAgICAgYm9vbCBtX2ZvcmNlRlRQRGlyZWN0b3J5TGlzdGluZ3MgOiAxOwogICAgICAgICBi
b29sIG1fZGV2ZWxvcGVyRXh0cmFzRW5hYmxlZCA6IDE7CisgICAgICAgIGJvb2wgbV9qYXZhU2Ny
aXB0RXhwZXJpbWVudHNFbmFibGVkIDogMTsKICAgICAgICAgYm9vbCBtX2F1dGhvckFuZFVzZXJT
dHlsZXNFbmFibGVkIDogMTsKICAgICAgICAgYm9vbCBtX25lZWRzU2l0ZVNwZWNpZmljUXVpcmtz
IDogMTsKICAgICAgICAgdW5zaWduZWQgbV9mb250UmVuZGVyaW5nTW9kZSA6IDE7CkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMTc5MDUpCisrKyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwyNCBAQAorMjAxMi0wNS0yMSAgR2F2aW4gQmFycmFjbG91
Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CisKKyAgICAgICAgRGlzYWJsZSBwcml2YXRlIG5h
bWVzIGJ5IGRlZmF1bHQgaW4gV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODcwODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICByMTE3ODU5IGludHJvZHVjZWQgYSBwcmVsaW1pbmFyeSBpbXBsZW1l
bnRhdGlvbiBvZiBFUzYtbGlrZSBwcml2YXRlIG5hbWUgb2JqZWN0cyB0byBKU0MuCisgICAgICAg
IFRoZXNlIGFyZSBwcm9iYWJseSBub3QgeWV0IHJlYWR5IHRvIGJlIHdlYi1mYWNpbmcsIHNvIGRp
c2FibGluZyBieSBkZWZhdWx0IGluIFdlYkNvcmUuCisgICAgICAgIE9wdGluZy1pbiBmb3IgSlND
ICYgRHVtcFJlbmRlclRyZWUgc28gdGhhdCB3ZSBjYW4gc3RpbGwgcnVuIHRoZSBmYXN0L2pzL25h
bWVzLmh0bWwgdGVzdC4KKworICAgICAgICAqIFNoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmg6
CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVu
Y2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRKYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRKYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5oOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorICAgICAgICAgICAgLSBBZGRlZCBKYXZhU2Ny
aXB0RXhwZXJpbWVudHNFbmFibGVkIHRvIFdlYlByZWZlcmVuY2VzLgorCiAyMDEyLTA1LTIxICBC
cmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMTE0NjAzMzY+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODcwNjEKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUu
aAkocmV2aXNpb24gMTE3ODU4KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVu
Y2VzU3RvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtNjEsNiArNjEsNyBAQCBuYW1lc3BhY2UgV2Vi
S2l0IHsKICAgICBtYWNybyhYU1NBdWRpdG9yRW5hYmxlZCwgeHNzQXVkaXRvckVuYWJsZWQsIEJv
b2wsIGJvb2wsIHRydWUpIFwKICAgICBtYWNybyhGcmFtZUZsYXR0ZW5pbmdFbmFibGVkLCBmcmFt
ZUZsYXR0ZW5pbmdFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1hY3JvKERldmVs
b3BlckV4dHJhc0VuYWJsZWQsIGRldmVsb3BlckV4dHJhc0VuYWJsZWQsIEJvb2wsIGJvb2wsIGZh
bHNlKSBcCisgICAgbWFjcm8oSmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwgamF2YVNjcmlw
dEV4cGVyaW1lbnRzRW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhQcml2
YXRlQnJvd3NpbmdFbmFibGVkLCBwcml2YXRlQnJvd3NpbmdFbmFibGVkLCBCb29sLCBib29sLCBm
YWxzZSkgXAogICAgIG1hY3JvKFRleHRBcmVhc0FyZVJlc2l6YWJsZSwgdGV4dEFyZWFzQXJlUmVz
aXphYmxlLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8oSmF2YVNjcmlwdENhbk9wZW5X
aW5kb3dzQXV0b21hdGljYWxseSwgamF2YVNjcmlwdENhbk9wZW5XaW5kb3dzQXV0b21hdGljYWxs
eSwgQm9vbCwgYm9vbCwgdHJ1ZSkgXApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLUHJlZmVyZW5jZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAkocmV2aXNpb24gMTE3ODU4KQorKysgU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0zMjgsNiArMzI4LDE2IEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldERldmVsb3BlckV4dHJh
c0VuYWIKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+ZGV2ZWxvcGVyRXh0cmFz
RW5hYmxlZCgpOwogfQogCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRKYXZhU2NyaXB0RXhwZXJpbWVu
dHNFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCkK
K3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRKYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkKGVuYWJsZWQpOworfQorCitib29sIFdLUHJlZmVyZW5jZXNHZXRKYXZhU2NyaXB0RXhw
ZXJpbWVudHNFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7CisgICAg
cmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJs
ZWQoKTsKK30KKwogdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEFyZWFzQXJlUmVzaXphYmxlKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgcmVzaXphYmxlKQogewogICAgIHRv
SW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFRleHRBcmVhc0FyZVJlc2l6YWJsZShyZXNpemFibGUp
OwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
cy5oCShyZXZpc2lvbiAxMTc4NTgpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzMsNiArMTMzLDEwIEBAIFdLX0VY
UE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRQcml2YXRlQnIKIFdLX0VYUE9SVCB2b2lkIFdLUHJl
ZmVyZW5jZXNTZXREZXZlbG9wZXJFeHRyYXNFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVy
ZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0
RGV2ZWxvcGVyRXh0cmFzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsK
IAorLy8gRGVmYXVsdHMgdG8gZmFsc2UuCitXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0
SmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmLCBib29sIGVuYWJsZWQpOworV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEphdmFT
Y3JpcHRFeHBlcmltZW50c0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7
CisKIC8vIERlZmF1bHRzIHRvIHRydWUuCiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0
VGV4dEFyZWFzQXJlUmVzaXphYmxlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJv
b2wgcmVzaXphYmxlKTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXJlYXNB
cmVSZXNpemFibGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAx
MTc4NTgpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE5MzksNiArMTkzOSw3IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRl
UHJlZmVyZW5jZXMoY29uc3QgV2UKICAgICBzZXR0aW5ncy0+c2V0RnJhbWVGbGF0dGVuaW5nRW5h
YmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmZyYW1lRmxh
dHRlbmluZ0VuYWJsZWRLZXkoKSkpOwogICAgIHNldHRpbmdzLT5zZXRQcml2YXRlQnJvd3NpbmdF
bmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZEtleSgpKSk7CiAgICAgc2V0dGluZ3MtPnNldERldmVsb3BlckV4dHJh
c0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjpkZXZl
bG9wZXJFeHRyYXNFbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0aW5ncy0+c2V0SmF2YVNjcmlwdEV4
cGVyaW1lbnRzRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWRLZXkoKSkpOwogICAgIHNldHRpbmdzLT5z
ZXRUZXh0QXJlYXNBcmVSZXNpemFibGUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZl
cmVuY2VzS2V5Ojp0ZXh0QXJlYXNBcmVSZXNpemFibGVLZXkoKSkpOwogICAgIHNldHRpbmdzLT5z
ZXROZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJl
ZmVyZW5jZXNLZXk6Om5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzS2V5KCkpKTsKICAgICBzZXR0aW5n
cy0+c2V0SmF2YVNjcmlwdENhbk9wZW5XaW5kb3dzQXV0b21hdGljYWxseShzdG9yZS5nZXRCb29s
VmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmphdmFTY3JpcHRDYW5PcGVuV2luZG93c0F1
dG9tYXRpY2FsbHlLZXkoKSkpOwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMTE3OTA1
KQorKysgU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMjQgQEAKKzIwMTItMDUtMjEgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBw
bGUuY29tPgorCisgICAgICAgIERpc2FibGUgcHJpdmF0ZSBuYW1lcyBieSBkZWZhdWx0IGluIFdl
YkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3
MDg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgcjEx
Nzg1OSBpbnRyb2R1Y2VkIGEgcHJlbGltaW5hcnkgaW1wbGVtZW50YXRpb24gb2YgRVM2LWxpa2Ug
cHJpdmF0ZSBuYW1lIG9iamVjdHMgdG8gSlNDLgorICAgICAgICBUaGVzZSBhcmUgcHJvYmFibHkg
bm90IHlldCByZWFkeSB0byBiZSB3ZWItZmFjaW5nLCBzbyBkaXNhYmxpbmcgYnkgZGVmYXVsdCBp
biBXZWJDb3JlLgorICAgICAgICBPcHRpbmctaW4gZm9yIEpTQyAmIER1bXBSZW5kZXJUcmVlIHNv
IHRoYXQgd2UgY2FuIHN0aWxsIHJ1biB0aGUgZmFzdC9qcy9uYW1lcy5odG1sIHRlc3QuCisKKyAg
ICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oOgorICAgICAgICAqIFdl
YlZpZXcvV2ViUHJlZmVyZW5jZXMubW06CisgICAgICAgICgrW1dlYlByZWZlcmVuY2VzIGluaXRp
YWxpemVdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgc2V0SmF2YVNjcmlwdEV4cGVyaW1l
bnRzRW5hYmxlZDpdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgamF2YVNjcmlwdEV4cGVy
aW1lbnRzRW5hYmxlZF0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
Lmg6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisgICAgICAgICAgICAtIEFkZGVkIEphdmFTY3JpcHRFeHBl
cmltZW50c0VuYWJsZWQgdG8gV2ViUHJlZmVyZW5jZXMuCisKIDIwMTItMDUtMTUgIEdhdmluIEJh
cnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBwcml2YXRlIG5hbWVzCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgJKHJldmlzaW9uIDExNzg1OCkKKysrIFNv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTc5LDYgKzc5LDcgQEAKICNkZWZpbmUgV2ViS2l0RlRQRGlyZWN0b3J5VGVt
cGxhdGVQYXRoIEAiV2ViS2l0RlRQRGlyZWN0b3J5VGVtcGxhdGVQYXRoIgogI2RlZmluZSBXZWJL
aXRGb3JjZUZUUERpcmVjdG9yeUxpc3RpbmdzIEAiV2ViS2l0Rm9yY2VGVFBEaXJlY3RvcnlMaXN0
aW5ncyIKICNkZWZpbmUgV2ViS2l0RGV2ZWxvcGVyRXh0cmFzRW5hYmxlZFByZWZlcmVuY2VLZXkg
QCJXZWJLaXREZXZlbG9wZXJFeHRyYXNFbmFibGVkUHJlZmVyZW5jZUtleSIKKyNkZWZpbmUgV2Vi
S2l0SmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRKYXZh
U2NyaXB0RXhwZXJpbWVudHNFbmFibGVkUHJlZmVyZW5jZUtleSIKICNkZWZpbmUgV2ViS2l0QXV0
aG9yQW5kVXNlclN0eWxlc0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0QXV0aG9yQW5kVXNl
clN0eWxlc0VuYWJsZWRQcmVmZXJlbmNlS2V5IgogI2RlZmluZSBXZWJLaXRBcHBsaWNhdGlvbkNo
cm9tZU1vZGVFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdEFwcGxpY2F0aW9uQ2hyb21lTW9k
ZUVuYWJsZWRQcmVmZXJlbmNlS2V5IgogI2RlZmluZSBXZWJLaXRXZWJBcmNoaXZlRGVidWdNb2Rl
RW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRXZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZFBy
ZWZlcmVuY2VLZXkiCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVu
Y2VzLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZXMubW0JKHJldmlzaW9uIDExNzg1OCkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUHJlZmVyZW5jZXMubW0JKHdvcmtpbmcgY29weSkKQEAgLTM1Nyw2ICszNTcsNyBAQCArICh2
b2lkKWluaXRpYWxpemUKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhJbnQ6Y2FjaGVNb2Rl
bEZvck1haW5CdW5kbGUoKV0sIFdlYktpdENhY2hlTW9kZWxQcmVmZXJlbmNlS2V5LAogICAgICAg
ICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdFBhZ2VDYWNoZVN1cHBvcnRz
UGx1Z2luc1ByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpO
T10sICAgV2ViS2l0RGV2ZWxvcGVyRXh0cmFzRW5hYmxlZFByZWZlcmVuY2VLZXksCisgICAgICAg
IFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2ViS2l0SmF2YVNjcmlwdEV4cGVyaW1l
bnRzRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9v
bDpZRVNdLCAgV2ViS2l0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWRQcmVmZXJlbmNlS2V5LAog
ICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdEFwcGxpY2F0aW9u
Q2hyb21lTW9kZUVuYWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVy
V2l0aEJvb2w6Tk9dLCAgIFdlYktpdFdlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkUHJlZmVyZW5j
ZUtleSwKQEAgLTg1Miw2ICs4NTMsMTYgQEAgLSAoQk9PTClkZXZlbG9wZXJFeHRyYXNFbmFibGVk
CiAjZW5kaWYKIH0KIAorLSAodm9pZClzZXRKYXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkOihC
T09MKWZsYWcKK3sKKyAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdEph
dmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKK30KKworLSAoQk9PTClq
YXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkCit7CisgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFs
dWVGb3JLZXk6V2ViS2l0SmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZFByZWZlcmVuY2VLZXld
OworfQorCiAtICh2b2lkKXNldERldmVsb3BlckV4dHJhc0VuYWJsZWQ6KEJPT0wpZmxhZwogewog
ICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0RGV2ZWxvcGVyRXh0cmFz
RW5hYmxlZFByZWZlcmVuY2VLZXldOwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJQcmVmZXJlbmNlc1ByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCShyZXZpc2lvbiAxMTc4NTgpCisrKyBTb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC01Nyw2ICs1Nyw5IEBAIEBpbnRlcmZhY2UgV2ViUHJlZmVyZW5jZXMgKFdlYlByaXZh
dGUpCiAtIChCT09MKWRldmVsb3BlckV4dHJhc0VuYWJsZWQ7CiAtICh2b2lkKXNldERldmVsb3Bl
ckV4dHJhc0VuYWJsZWQ6KEJPT0wpZmxhZzsKIAorLSAoQk9PTClqYXZhU2NyaXB0RXhwZXJpbWVu
dHNFbmFibGVkOworLSAodm9pZClzZXRKYXZhU2NyaXB0RXhwZXJpbWVudHNFbmFibGVkOihCT09M
KWZsYWc7CisKIC0gKEJPT0wpYXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQ7CiAtICh2b2lkKXNl
dEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkOihCT09MKWZsYWc7CiAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0JKHJldmlzaW9uIDExNzg1OCkKKysrIFNvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtMTQ1Myw2ICsxNDUz
LDcgQEAgLSAodm9pZClfcHJlZmVyZW5jZXNDaGFuZ2VkOihXZWJQcmVmZXJlbgogICAgIHNldHRp
bmdzLT5zZXRTaG93c1VSTHNJblRvb2xUaXBzKFtwcmVmZXJlbmNlcyBzaG93c1VSTHNJblRvb2xU
aXBzXSk7CiAgICAgc2V0dGluZ3MtPnNldFNob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0KFtw
cmVmZXJlbmNlcyBzaG93c1Rvb2xUaXBPdmVyVHJ1bmNhdGVkVGV4dF0pOwogICAgIHNldHRpbmdz
LT5zZXREZXZlbG9wZXJFeHRyYXNFbmFibGVkKFtwcmVmZXJlbmNlcyBkZXZlbG9wZXJFeHRyYXNF
bmFibGVkXSk7CisgICAgc2V0dGluZ3MtPnNldEphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWQo
W3ByZWZlcmVuY2VzIGphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJsZWRdKTsKICAgICBzZXR0aW5n
cy0+c2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoW3ByZWZlcmVuY2VzIGF1dGhvckFuZFVz
ZXJTdHlsZXNFbmFibGVkXSk7CiAgICAgc2V0dGluZ3MtPnNldEFwcGxpY2F0aW9uQ2hyb21lTW9k
ZShbcHJlZmVyZW5jZXMgYXBwbGljYXRpb25DaHJvbWVNb2RlRW5hYmxlZF0pOwogICAgIGlmIChb
cHJlZmVyZW5jZXMgdXNlclN0eWxlU2hlZXRFbmFibGVkXSkgewpJbmRleDogVG9vbHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMTE3OTA3KQorKysg
VG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDUt
MjEgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgorCisgICAgICAg
IERpc2FibGUgcHJpdmF0ZSBuYW1lcyBieSBkZWZhdWx0IGluIFdlYkNvcmUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MDg4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgcjExNzg1OSBpbnRyb2R1Y2VkIGEg
cHJlbGltaW5hcnkgaW1wbGVtZW50YXRpb24gb2YgRVM2LWxpa2UgcHJpdmF0ZSBuYW1lIG9iamVj
dHMgdG8gSlNDLgorICAgICAgICBUaGVzZSBhcmUgcHJvYmFibHkgbm90IHlldCByZWFkeSB0byBi
ZSB3ZWItZmFjaW5nLCBzbyBkaXNhYmxpbmcgYnkgZGVmYXVsdCBpbiBXZWJDb3JlLgorICAgICAg
ICBPcHRpbmctaW4gZm9yIEpTQyAmIER1bXBSZW5kZXJUcmVlIHNvIHRoYXQgd2UgY2FuIHN0aWxs
IHJ1biB0aGUgZmFzdC9qcy9uYW1lcy5odG1sIHRlc3QuCisKKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW06CisgICAgICAgIChyZXNldERlZmF1bHRzVG9Db25z
aXN0ZW50VmFsdWVzKToKKyAgICAgICAgICAgIC0gRW5hYmxlIHByaXZhdGUgbmFtZSBzdXBwb3J0
IGluIERSVC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoK
KyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xsZXI6OnJlc2V0U3RhdGVUb0NvbnNpc3RlbnRWYWx1
ZXMpOgorICAgICAgICAgICAgLSBFbmFibGUgcHJpdmF0ZSBuYW1lIHN1cHBvcnQgaW4gV0tUUi4K
KwogMjAxMi0wNS0yMSAgQ2hyaXN0b3BoZSBEdW1leiAgPGNocmlzdG9waGUuZHVtZXpAaW50ZWwu
Y29tPgogCiAgICAgICAgIFtFRkxdIEVGTCdzIER1bXBSZW5kZXJUcmVlIGRvZXMgbm90IHByaW50
IGRpZFJlY2VpdmVUaXRsZSBtZXNzYWdlcwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFj
L0R1bXBSZW5kZXJUcmVlLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9EdW1wUmVuZGVyVHJlZS5tbQkocmV2aXNpb24gMTE3ODU4KQorKysgVG9vbHMvRHVtcFJlbmRl
clRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02MzksNiArNjM5
LDcgQEAgc3RhdGljIHZvaWQgcmVzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbAogICAgIFtwcmVm
ZXJlbmNlcyBzZXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkOllFU107CiAgICAgW3ByZWZl
cmVuY2VzIHNldE9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZDpZRVNdOwogICAgIFtw
cmVmZXJlbmNlcyBzZXREZXZlbG9wZXJFeHRyYXNFbmFibGVkOk5PXTsKKyAgICBbcHJlZmVyZW5j
ZXMgc2V0SmF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZDpZRVNdOwogICAgIFtwcmVmZXJlbmNl
cyBzZXRMb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHk6WUVTXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0
TG9hZHNTaXRlSWNvbnNJZ25vcmluZ0ltYWdlTG9hZGluZ1ByZWZlcmVuY2U6Tk9dOwogICAgIFtw
cmVmZXJlbmNlcyBzZXRGcmFtZUZsYXR0ZW5pbmdFbmFibGVkOk5PXTsKSW5kZXg6IFRvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAxMTc4NTgpCisrKyBU
b29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNDQyLDYgKzQ0Miw3IEBAIGJvb2wgVGVzdENvbnRyb2xsZXI6OnJlc2V0U3RhdGVUb0NvbnNp
c3QKICAgICBXS1ByZWZlcmVuY2VzU2V0WFNTQXVkaXRvckVuYWJsZWQocHJlZmVyZW5jZXMsIGZh
bHNlKTsKICAgICBXS1ByZWZlcmVuY2VzU2V0V2ViQXVkaW9FbmFibGVkKHByZWZlcmVuY2VzLCB0
cnVlKTsKICAgICBXS1ByZWZlcmVuY2VzU2V0RGV2ZWxvcGVyRXh0cmFzRW5hYmxlZChwcmVmZXJl
bmNlcywgdHJ1ZSk7CisgICAgV0tQcmVmZXJlbmNlc1NldEphdmFTY3JpcHRFeHBlcmltZW50c0Vu
YWJsZWQocHJlZmVyZW5jZXMsIHRydWUpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRKYXZhU2NyaXB0
Q2FuT3BlbldpbmRvd3NBdXRvbWF0aWNhbGx5KHByZWZlcmVuY2VzLCB0cnVlKTsKICAgICBXS1By
ZWZlcmVuY2VzU2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZChwcmVmZXJlbmNlcywgdHJ1
ZSk7CiAgICAgV0tQcmVmZXJlbmNlc1NldERPTVBhc3RlQWxsb3dlZChwcmVmZXJlbmNlcywgdHJ1
ZSk7Cg==
</data>
<flag name="review"
          id="149714"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>