<?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>155022</bug_id>
          
          <creation_ts>2016-03-04 08:55:12 -0800</creation_ts>
          <short_desc>Enable DOM class create functions to take parameters in case of JSBuiltinConstructor</short_desc>
          <delta_ts>2016-03-06 12:44:44 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>154729</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1170709</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-04 08:55:12 -0800</bug_when>
    <thetext>This is needed for bug 154729</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170751</commentid>
    <comment_count>1</comment_count>
      <attachid>273002</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-04 09:06:24 -0800</bug_when>
    <thetext>Created attachment 273002
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170812</commentid>
    <comment_count>2</comment_count>
      <attachid>273005</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-04 09:42:47 -0800</bug_when>
    <thetext>Created attachment 273005
Fixing DOMWrapper::create(...) case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171342</commentid>
    <comment_count>3</comment_count>
      <attachid>273005</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-03-05 18:07:32 -0800</bug_when>
    <thetext>Comment on attachment 273005
Fixing DOMWrapper::create(...) case

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

&gt; Source/WebCore/bindings/js/JSDOMConstructor.h:125
&gt; +    JSC::EncodedJSValue callConstructor(JSC::ExecState&amp;, JSC::JSObject&amp;);
&gt; +    JSC::EncodedJSValue callConstructor(JSC::ExecState&amp;, JSC::JSObject*);
&gt;      // Usually defined for each specialization class.

I don’t think these two should be grouped with the comment below. Consider adding a blank line.

&gt; Source/WebCore/bindings/js/JSDOMConstructor.h:261
&gt; +    ASSERT(castedThis);

Not sure this assertion is valuable.

&gt; Source/WebCore/bindings/js/JSDOMWrapper.h:83
&gt; +    template&lt;typename T&gt;
&gt; +    static constexpr auto test(int) -&gt; decltype(T::create(), bool()) { return true; }
&gt; +    template&lt;typename T&gt;
&gt; +    static constexpr bool test(...) { return false; }

I think the would read better as one liners instead of split into two lines.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171425</commentid>
    <comment_count>4</comment_count>
      <attachid>273137</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-06 09:44:50 -0800</bug_when>
    <thetext>Created attachment 273137
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171428</commentid>
    <comment_count>5</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-03-06 09:52:43 -0800</bug_when>
    <thetext>Thanks for the review.
Landing patch uploaded according comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171448</commentid>
    <comment_count>6</comment_count>
      <attachid>273137</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-06 12:44:39 -0800</bug_when>
    <thetext>Comment on attachment 273137
Patch for landing

Clearing flags on attachment: 273137

Committed r197642: &lt;http://trac.webkit.org/changeset/197642&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171449</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-06 12:44:44 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273002</attachid>
            <date>2016-03-04 09:06:24 -0800</date>
            <delta_ts>2016-03-04 09:42:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155022-20160304180609.patch</filename>
            <type>text/plain</type>
            <size>12955</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NTU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTVjMTNkNmIzNjc1MTll
MGY3ZDg4MjllYzQ5OWNlYzk3NDIzZjA4OS4uYTNjYTkxNTgyN2Q4MGEzMDc5NzZlMWRiYWIwNmNk
ZGNhM2IwODIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE2LTAzLTA0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgRW5hYmxl
IERPTSBjbGFzcyBjcmVhdGUgZnVuY3Rpb25zIHRvIHRha2UgcGFyYW1ldGVycyBpbiBjYXNlIG9m
IEpTQnVpbHRpbkNvbnN0cnVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNTUwMjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2luZyBKU0RPTU9iamVjdEluc3BlY3RvciB0byBjaGVjayB3
aGV0aGVyIGEgZ2l2ZW4gSlMgY2xhc3MgaXMgYnVpbHQtaW4gKG5vIERPTSBjbGFzcykuCisgICAg
ICAgIElmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCB0aGUgSlMgY2xhc3Mgd3JhcHMgYSBET00gY2xh
c3MuCisgICAgICAgIFRoZSBpbnNwZWN0b3IgZGV0ZWN0cyB3aGV0aGVyIHRoZSBET00gY2xhc3Mg
Y3JlYXRlIHN0YXRpYyBtZXRob2QgdGFrZXMgbm8gcGFyYW1ldGVyIG9yIHNvbWUgcGFyYW1ldGVy
cy4KKyAgICAgICAgVGhpcyBpcyB1c2VkIGluIEpTRE9NQ29uc3RydWN0b3IuaCB0byBnZW5lcmF0
ZSBjb3JyZWN0bHkgdGhlIGNyZWF0ZUpTT2JqZWN0IGZ1bmN0aW9ucyBuZWVkZWQgYnkgSlNCdWls
dGluQ29uc3RydWN0b3IuCisKKyAgICAgICAgVXBkYXRlZCBiaW5kaW5nIGdlbmVyYXRvciB0byBu
b3QgZ2VuZXJhdGUgYW55bW9yZSBjcmVhdGVKU09iamVjdCBhcyBpdCBpcyBoYW5kbGVkIGRpcmVj
dGx5IGluIEpTRE9NQ29uc3RydWN0b3IuaC4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5n
IHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oOgorICAg
ICAgICAoV2ViQ29yZTo6SlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNhbGxDb25zdHJ1
Y3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVKU09iamVjdCk6CisgICAgICAgIChXZWJD
b3JlOjpKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y29uc3RydWN0KToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0tl
eVZhbHVlSXRlcmF0b3IuaDogVGFraW5nIGJlbmVmaXQgb2YgSlNDbGFzczo6RE9NV3JhcHBlciB0
eXBlIGRlY2xhcmF0aW9uLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Q
cml2YXRlQ29uc3RydWN0b3JzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTQnVpbHRpblJlYWRh
YmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yOjppbml0aWFsaXplRXhlY3V0YWJsZSk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRy
b2xsZXJQcml2YXRlQ29uc3RydWN0b3I6OmluaXRpYWxpemVFeGVjdXRhYmxlKTogRGVsZXRlZC4K
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAg
KEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3JDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKTogRGVsZXRlZC4KKwogMjAxNi0w
My0wMyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgQ29tcG9z
ZWRUcmVlSXRlcmF0b3IgbWF5IHRyYXZlcnNlIHNsb3R0ZWQgbm9kZXMgbXVsdGlwbGUgdGltZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3IuaAppbmRleCBl
YjVkZmZmNjgxNTM1ZGQ4ZDczZjRiMTZiNmJjMWE3M2M3Njc1ZjcwLi41ZTMyODcwNWI2ZDlkODg3
ZjZmOTgxMTMzNGE2YTMyNzFjZjRjMTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01Db25zdHJ1Y3Rvci5oCkBAIC0xMDQsNyArMTA0LDcgQEAgcHJpdmF0ZToKIAogdGVt
cGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNCdWlsdGluQ29uc3RydWN0b3IgOiBwdWJs
aWMgRE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYg
RE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gRE9N
Q29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3Q7CiAKICAgICBzdGF0aWMgSlNCdWlsdGluQ29uc3Ry
dWN0b3IqIGNyZWF0ZShKU0M6OlZNJiwgSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVj
dCYpOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
LCBKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSk7CkBAIC0xMTks
OCArMTE5LDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mLCBK
U0RPTUdsb2JhbE9iamVjdCYpOwogICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpOwogICAgIHN0YXRp
YyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0KEpTQzo6RXhlY1N0
YXRlKik7Ci0gICAgSlNDOjpKU09iamVjdCogY3JlYXRlSlNPYmplY3QoKTsKIAorICAgIEpTQzo6
RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU09i
amVjdCYpOworICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6RXhl
Y1N0YXRlJiwgSlNDOjpKU09iamVjdCopOwogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFj
aCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0aWVzKEpT
Qzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpIHsgfQogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBm
b3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KQEAgLTIxNiwxNyArMjE3LDQ5IEBAIHRlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSB2b2lkIEpTQnVpbHRpbkNvbnN0cnVjdG9yPEpT
Q2xhc3M+OjpmaW5pc2hDcmVhCiAgICAgaW5pdGlhbGl6ZVByb3BlcnRpZXModm0sIGdsb2JhbE9i
amVjdCk7CiB9CiAKLXRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNv
bnN0cnVjdChKU0M6OkV4ZWNTdGF0ZSogc3RhdGUpCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNz
PiBpbmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNz
Pjo6Y2FsbENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgSlNDOjpKU09iamVjdCYg
b2JqZWN0KQogewotICAgIGF1dG8qIGNhc3RlZFRoaXMgPSBKU0M6OmpzQ2FzdDxKU0J1aWx0aW5D
b25zdHJ1Y3Rvcio+KHN0YXRlLT5jYWxsZWUoKSk7Ci0gICAgYXV0byogb2JqZWN0ID0gY2FzdGVk
VGhpcy0+Y3JlYXRlSlNPYmplY3QoKTsKLSAgICBjYWxsRnVuY3Rpb25XaXRoQ3VycmVudEFyZ3Vt
ZW50cygqc3RhdGUsICpvYmplY3QsICpjYXN0ZWRUaGlzLT5pbml0aWFsaXplRnVuY3Rpb24oKSk7
Ci0gICAgcmV0dXJuIEpTQzo6SlNWYWx1ZTo6ZW5jb2RlKG9iamVjdCk7CisgICAgY2FsbEZ1bmN0
aW9uV2l0aEN1cnJlbnRBcmd1bWVudHMoc3RhdGUsIG9iamVjdCwgKmluaXRpYWxpemVGdW5jdGlv
bigpKTsKKyAgICByZXR1cm4gSlNDOjpKU1ZhbHVlOjplbmNvZGUoJm9iamVjdCk7Cit9CisKK3Rl
bXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQnVp
bHRpbkNvbnN0cnVjdG9yPEpTQ2xhc3M+OjpjYWxsQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUm
IHN0YXRlLCBKU0M6OkpTT2JqZWN0KiBvYmplY3QpCit7CisgICAgaWYgKCFvYmplY3QpCisgICAg
ICAgIHJldHVybiB0aHJvd0NvbnN0cnVjdG9yRG9jdW1lbnRVbmF2YWlsYWJsZUVycm9yKHN0YXRl
LCBpbmZvKCktPmNsYXNzTmFtZSk7CisgICAgcmV0dXJuIGNhbGxDb25zdHJ1Y3RvcihzdGF0ZSwg
Km9iamVjdCk7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZQordHlwZW5h
bWUgc3RkOjplbmFibGVfaWY8SlNET01PYmplY3RJbnNwZWN0b3I8SlNDbGFzcz46OmlzU2ltcGxl
V3JhcHBlciwgSlNDOjpKU09iamVjdCY+Ojp0eXBlIGNyZWF0ZUpTT2JqZWN0KEpTQnVpbHRpbkNv
bnN0cnVjdG9yPEpTQ2xhc3M+JiBjb25zdHJ1Y3RvcikKK3sKKyAgICBhdXRvJiBnbG9iYWxPYmpl
Y3QgPSAqY29uc3RydWN0b3IuZ2xvYmFsT2JqZWN0KCk7CisgICAgcmV0dXJuICpKU0NsYXNzOjpj
cmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTQ2xhc3M+KGdsb2JhbE9iamVjdC52bSgpLCBnbG9iYWxP
YmplY3QpLCAmZ2xvYmFsT2JqZWN0LCBKU0NsYXNzOjpET01XcmFwcGVkOjpjcmVhdGUoKSk7CiB9
CiAKLXRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkpTT2JqZWN0KiBKU0J1
aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y3JlYXRlSlNPYmplY3QoKQordGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gaW5saW5lCit0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxKU0RPTU9iamVj
dEluc3BlY3RvcjxKU0NsYXNzPjo6aXNCdWlsdGluLCBKU0M6OkpTT2JqZWN0Jj46OnR5cGUgY3Jl
YXRlSlNPYmplY3QoSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz4mIGNvbnN0cnVjdG9yKQog
ewotICAgIHJldHVybiBKU0NsYXNzOjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTQ2xhc3M+KGds
b2JhbE9iamVjdCgpLT52bSgpLCAqZ2xvYmFsT2JqZWN0KCkpLCBnbG9iYWxPYmplY3QoKSk7Cisg
ICAgYXV0byYgZ2xvYmFsT2JqZWN0ID0gKmNvbnN0cnVjdG9yLmdsb2JhbE9iamVjdCgpOworICAg
IHJldHVybiAqSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVjdHVyZTxKU0NsYXNzPihnbG9iYWxP
YmplY3Qudm0oKSwgZ2xvYmFsT2JqZWN0KSwgJmdsb2JhbE9iamVjdCk7Cit9CisKK3RlbXBsYXRl
PHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZQordHlwZW5hbWUgc3RkOjplbmFibGVfaWY8SlNET01P
YmplY3RJbnNwZWN0b3I8SlNDbGFzcz46OmlzQ29tcGxleFdyYXBwZXIsIEpTQzo6SlNPYmplY3Qq
Pjo6dHlwZSBjcmVhdGVKU09iamVjdChKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPiYgY29u
c3RydWN0b3IpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCA9IGNvbnN0
cnVjdG9yLnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICBpZiAoIWNvbnRleHQpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8mIGdsb2JhbE9iamVjdCA9ICpjb25zdHJ1Y3Rv
ci5nbG9iYWxPYmplY3QoKTsKKyAgICByZXR1cm4gSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVj
dHVyZTxKU0NsYXNzPihnbG9iYWxPYmplY3Qudm0oKSwgZ2xvYmFsT2JqZWN0KSwgJmdsb2JhbE9i
amVjdCwgSlNDbGFzczo6RE9NV3JhcHBlZDo6Y3JlYXRlKCpjb250ZXh0KSk7Cit9CisKK3RlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNvbnN0cnVjdChKU0M6OkV4ZWNT
dGF0ZSogc3RhdGUpCit7CisgICAgQVNTRVJUKHN0YXRlKTsKKyAgICBhdXRvKiBjYXN0ZWRUaGlz
ID0gSlNDOjpqc0Nhc3Q8SlNCdWlsdGluQ29uc3RydWN0b3IqPihzdGF0ZS0+Y2FsbGVlKCkpOwor
ICAgIEFTU0VSVChjYXN0ZWRUaGlzKTsKKyAgICByZXR1cm4gY2FzdGVkVGhpcy0+Y2FsbENvbnN0
cnVjdG9yKCpzdGF0ZSwgY3JlYXRlSlNPYmplY3QoKmNhc3RlZFRoaXMpKTsKIH0KIAogdGVtcGxh
dGU8dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTQzo6Q29uc3RydWN0VHlwZSBKU0J1aWx0aW5D
b25zdHJ1Y3RvcjxKU0NsYXNzPjo6Z2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6
Q29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01XcmFwcGVyLmgKaW5kZXggMjRhMzBlZjJjZTU3Y2IyOGIzZDEyMTc5NzcxZjNiOTk1MTdm
MzlhOS4uMjYzZDRmNTUyZDc3YzUzYzc4MDhhMDgwM2ZlZjgzMzlhN2M0NDdhNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKQEAgLTM2LDYgKzM2LDcgQEAgc3Rh
dGljIGNvbnN0IHVpbnQ4X3QgSlNFbGVtZW50VHlwZSA9IEpTQzo6TGFzdEpTQ09iamVjdFR5cGUg
KyAzOwogY2xhc3MgSlNET01PYmplY3QgOiBwdWJsaWMgSlNDOjpKU0Rlc3RydWN0aWJsZU9iamVj
dCB7CiBwdWJsaWM6CiAgICAgdHlwZWRlZiBKU0M6OkpTRGVzdHJ1Y3RpYmxlT2JqZWN0IEJhc2U7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzRE9NV3JhcHBlciA9IGZhbHNlOwogCiAgICAg
SlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIEpTQzo6anND
YXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oSlNDOjpKU05vbkZpbmFsT2JqZWN0OjpnbG9iYWxPYmpl
Y3QoKSk7IH0KICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCkgY29uc3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKTsgfQpAQCAtNTEsNiArNTIsOCBAQCBwcm90ZWN0ZWQ6CiB0ZW1wbGF0ZTx0eXBlbmFtZSBJ
bXBsZW1lbnRhdGlvbkNsYXNzPiBjbGFzcyBKU0RPTVdyYXBwZXIgOiBwdWJsaWMgSlNET01PYmpl
Y3QgewogcHVibGljOgogICAgIHR5cGVkZWYgSlNET01PYmplY3QgQmFzZTsKKyAgICB0eXBlZGVm
IEltcGxlbWVudGF0aW9uQ2xhc3MgRE9NV3JhcHBlZDsKKyAgICBzdGF0aWMgY29uc3RleHByIGJv
b2wgaXNET01XcmFwcGVyID0gdHJ1ZTsKIAogICAgIEltcGxlbWVudGF0aW9uQ2xhc3MmIHdyYXBw
ZWQoKSBjb25zdCB7IHJldHVybiBjb25zdF9jYXN0PEltcGxlbWVudGF0aW9uQ2xhc3MmPihtX3dy
YXBwZWQuZ2V0KCkpOyB9CiAKQEAgLTYzLDYgKzY2LDI2IEBAIHByaXZhdGU6CiAgICAgUmVmPElt
cGxlbWVudGF0aW9uQ2xhc3M+IG1fd3JhcHBlZDsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIEpT
Q2xhc3MsIHR5cGVuYW1lIEVuYWJsZSA9IHZvaWQ+CitzdHJ1Y3QgSlNET01PYmplY3RJbnNwZWN0
b3IgeworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc1NpbXBsZVdyYXBwZXIg
PSBmYWxzZTsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNDb21wbGV4V3JhcHBlciA9IGZh
bHNlOworICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0J1aWx0aW4gPSB0cnVlOworfTsKKwor
dGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4KK3N0cnVjdCBKU0RPTU9iamVjdEluc3BlY3RvcjxK
U0NsYXNzLCB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxKU0NsYXNzOjppc0RPTVdyYXBwZXI+Ojp0
eXBlPiB7Citwcml2YXRlOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byB0ZXN0KGludCkgLT4g
ZGVjbHR5cGUoSlNDbGFzczo6RE9NV3JhcHBlZDo6Y3JlYXRlKCksIGJvb2woKSkgeyByZXR1cm4g
dHJ1ZTsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB0ZXN0KC4uLikgeyByZXR1cm4gZmFs
c2U7IH0KKworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc1NpbXBsZVdyYXBw
ZXIgPSB0ZXN0KDApOworICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0NvbXBsZXhXcmFwcGVy
ID0gIWlzU2ltcGxlV3JhcHBlcjsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNCdWlsdGlu
ID0gZmFsc2U7Cit9OworCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBKU0RP
TVdyYXBwZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNLZXlW
YWx1ZUl0ZXJhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0tleVZhbHVlSXRl
cmF0b3IuaAppbmRleCA2MjI3MmY1MWQ1NGY4NTBiZjY5YjMyNDllYWE4ZGI0NTE3Nzk1Y2I4Li44
ZTQyYmEwYTM2OWMxZWEwY2I1ODVlMmQ4OWI1ZWIwZTMyZmY3MWE1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0tleVZhbHVlSXRlcmF0b3IuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0tleVZhbHVlSXRlcmF0b3IuaApAQCAtMzUsOCArMzUsOCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBKU1dyYXBwZXI+CiBjbGFz
cyBKU0tleVZhbHVlSXRlcmF0b3JQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2Jq
ZWN0IHsKIHB1YmxpYzoKLSAgICB1c2luZyBET01XcmFwcGVkID0gdHlwZW5hbWUgc3RkOjpyZW1v
dmVfcmVmZXJlbmNlPGRlY2x0eXBlKHN0ZDo6ZGVjbHZhbDxKU1dyYXBwZXI+KCkud3JhcHBlZCgp
KT46OnR5cGU7CiAgICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5hbE9iamVjdDsKKyAgICB1
c2luZyBET01XcmFwcGVkID0gdHlwZW5hbWUgSlNXcmFwcGVyOjpET01XcmFwcGVkOwogCiAgICAg
c3RhdGljIEpTS2V5VmFsdWVJdGVyYXRvclByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFk
YWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDQxZmU0
ZGJhNmMyYTAwMjE1ZjEzMzA0YmJiOTk1NWU2NTJiMDA4MWQuLmM2NjA4NjE1Mzk4YjBiZjA3MWUw
NTc2ZDhjNDA4MDlhMjFkMmU5M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtUHJpdmF0ZUNvbnN0cnVjdG9ycy5j
cHAKQEAgLTYzLDE2ICs2Myw2IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlCiB0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQnVpbHRpblJlYWRh
YmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKSB9OwogdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNCdWlsdGluUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQnVpbHRpblJlYWRh
YmxlU3RyZWFtQ29udHJvbGxlclByaXZhdGVDb25zdHJ1Y3RvcikgfTsKIAotdGVtcGxhdGU8PiBK
U09iamVjdCogSlNCdWlsdGluUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0b3I6
OmNyZWF0ZUpTT2JqZWN0KCkKLXsKLSAgICByZXR1cm4gSlNSZWFkYWJsZVN0cmVhbVJlYWRlcjo6
Y3JlYXRlKGdldERPTVN0cnVjdHVyZTxKU1JlYWRhYmxlU3RyZWFtUmVhZGVyPihnbG9iYWxPYmpl
Y3QoKS0+dm0oKSwgKmdsb2JhbE9iamVjdCgpKSwgZ2xvYmFsT2JqZWN0KCkpOwotfQotCi10ZW1w
bGF0ZTw+IEpTT2JqZWN0KiBKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRl
Q29uc3RydWN0b3I6OmNyZWF0ZUpTT2JqZWN0KCkKLXsKLSAgICByZXR1cm4gSlNSZWFkYWJsZVN0
cmVhbUNvbnRyb2xsZXI6OmNyZWF0ZShnZXRET01TdHJ1Y3R1cmU8SlNSZWFkYWJsZVN0cmVhbUNv
bnRyb2xsZXI+KGdsb2JhbE9iamVjdCgpLT52bSgpLCAqZ2xvYmFsT2JqZWN0KCkpLCBnbG9iYWxP
YmplY3QoKSk7Ci19Ci0KIHRlbXBsYXRlPD4gRnVuY3Rpb25FeGVjdXRhYmxlKiBKU0J1aWx0aW5S
ZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZUV4ZWN1dGFi
bGUoSlNDOjpWTSYgdm0pCiB7CiAgICAgcmV0dXJuIHJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzUHJp
dmF0ZUluaXRpYWxpemVSZWFkYWJsZVN0cmVhbVJlYWRlckNvZGVHZW5lcmF0b3Iodm0pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMu
cG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpp
bmRleCAyN2I0YmRiOThiZGYwYzJiNThlMmIyMjE1N2VkNGY5YWU5MmZlZWY5Li4xYTdiNDQ3OTUw
YzBmODExMjFhMDMzNjg5YmRlOWNjMDA0NWQ0ZGNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtNDc4MSwxOCArNDc4MSw3
IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbgogICAgIG15ICRnZW5lcmF0aW5n
TmFtZWRDb25zdHJ1Y3RvciA9IHNoaWZ0OwogICAgIG15ICRmdW5jdGlvbiA9IHNoaWZ0OwogCi0K
ICAgICBpZiAoSXNKU0J1aWx0aW5Db25zdHJ1Y3RvcigkaW50ZXJmYWNlKSkgewotICAgICAgICBp
ZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9y
In0pIHsKLSAgICAgICAgICAgICMgRklYTUU6IEFkZCBzdXBwb3J0IGZvciBDb25zdHJ1Y3RvckNh
bGxXaXRoCi0gICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksIDw8RU5EKTsKLXRlbXBsYXRl
PD4gSlNDOjpKU09iamVjdCogJHtjbGFzc05hbWV9Q29uc3RydWN0b3I6OmNyZWF0ZUpTT2JqZWN0
KCkKLXsKLSAgICByZXR1cm4gJHtjbGFzc05hbWV9OjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPCR7
Y2xhc3NOYW1lfT4oZ2xvYmFsT2JqZWN0KCktPnZtKCksICpnbG9iYWxPYmplY3QoKSksIGdsb2Jh
bE9iamVjdCgpLCAke2ludGVyZmFjZU5hbWV9OjpjcmVhdGUoKSk7Ci19Ci0KLUVORAotICAgICAg
ICB9CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCmluZGV4IDAzMjI4N2Q4ZTljOGZjNjMw
MzE0OTRmZmM1NzA4NjQzMWIxYWM0NTAuLjAyY2Q4YTk5NzVhZDZjMDBiNjNlYzFiMGEwNmM3NmI2
NjJhMjc2NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmNwcApAQCAtNjMsMTEgKzYzLDYgQEAgcHJpdmF0ZToKIAogdHlwZWRlZiBK
U0J1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4g
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3RvcjsKIAotdGVtcGxh
dGU8PiBKU0M6OkpTT2JqZWN0KiBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckNv
bnN0cnVjdG9yOjpjcmVhdGVKU09iamVjdCgpCi17Ci0gICAgcmV0dXJuIEpTVGVzdENsYXNzV2l0
aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTVGVzdENsYXNz
V2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPihnbG9iYWxPYmplY3QoKS0+dm0oKSwgKmdsb2JhbE9i
amVjdCgpKSwgZ2xvYmFsT2JqZWN0KCksIFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
cjo6Y3JlYXRlKCkpOwotfQotCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewogICAgIFVO
VVNFRF9QQVJBTSh2bSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273005</attachid>
            <date>2016-03-04 09:42:47 -0800</date>
            <delta_ts>2016-03-06 09:44:44 -0800</delta_ts>
            <desc>Fixing DOMWrapper::create(...) case</desc>
            <filename>bug-155022-20160304184231.patch</filename>
            <type>text/plain</type>
            <size>13019</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NTU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTVjMTNkNmIzNjc1MTll
MGY3ZDg4MjllYzQ5OWNlYzk3NDIzZjA4OS4uYTNjYTkxNTgyN2Q4MGEzMDc5NzZlMWRiYWIwNmNk
ZGNhM2IwODIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE2LTAzLTA0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgRW5hYmxl
IERPTSBjbGFzcyBjcmVhdGUgZnVuY3Rpb25zIHRvIHRha2UgcGFyYW1ldGVycyBpbiBjYXNlIG9m
IEpTQnVpbHRpbkNvbnN0cnVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNTUwMjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbnRyb2R1Y2luZyBKU0RPTU9iamVjdEluc3BlY3RvciB0byBjaGVjayB3
aGV0aGVyIGEgZ2l2ZW4gSlMgY2xhc3MgaXMgYnVpbHQtaW4gKG5vIERPTSBjbGFzcykuCisgICAg
ICAgIElmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCB0aGUgSlMgY2xhc3Mgd3JhcHMgYSBET00gY2xh
c3MuCisgICAgICAgIFRoZSBpbnNwZWN0b3IgZGV0ZWN0cyB3aGV0aGVyIHRoZSBET00gY2xhc3Mg
Y3JlYXRlIHN0YXRpYyBtZXRob2QgdGFrZXMgbm8gcGFyYW1ldGVyIG9yIHNvbWUgcGFyYW1ldGVy
cy4KKyAgICAgICAgVGhpcyBpcyB1c2VkIGluIEpTRE9NQ29uc3RydWN0b3IuaCB0byBnZW5lcmF0
ZSBjb3JyZWN0bHkgdGhlIGNyZWF0ZUpTT2JqZWN0IGZ1bmN0aW9ucyBuZWVkZWQgYnkgSlNCdWls
dGluQ29uc3RydWN0b3IuCisKKyAgICAgICAgVXBkYXRlZCBiaW5kaW5nIGdlbmVyYXRvciB0byBu
b3QgZ2VuZXJhdGUgYW55bW9yZSBjcmVhdGVKU09iamVjdCBhcyBpdCBpcyBoYW5kbGVkIGRpcmVj
dGx5IGluIEpTRE9NQ29uc3RydWN0b3IuaC4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5n
IHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oOgorICAg
ICAgICAoV2ViQ29yZTo6SlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNhbGxDb25zdHJ1
Y3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVKU09iamVjdCk6CisgICAgICAgIChXZWJD
b3JlOjpKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y29uc3RydWN0KToKKyAgICAgICAg
KiBiaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0tl
eVZhbHVlSXRlcmF0b3IuaDogVGFraW5nIGJlbmVmaXQgb2YgSlNDbGFzczo6RE9NV3JhcHBlciB0
eXBlIGRlY2xhcmF0aW9uLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Q
cml2YXRlQ29uc3RydWN0b3JzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTQnVpbHRpblJlYWRh
YmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yOjppbml0aWFsaXplRXhlY3V0YWJsZSk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRy
b2xsZXJQcml2YXRlQ29uc3RydWN0b3I6OmluaXRpYWxpemVFeGVjdXRhYmxlKTogRGVsZXRlZC4K
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAg
KEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3JDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKTogRGVsZXRlZC4KKwogMjAxNi0w
My0wMyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgQ29tcG9z
ZWRUcmVlSXRlcmF0b3IgbWF5IHRyYXZlcnNlIHNsb3R0ZWQgbm9kZXMgbXVsdGlwbGUgdGltZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3IuaAppbmRleCBl
YjVkZmZmNjgxNTM1ZGQ4ZDczZjRiMTZiNmJjMWE3M2M3Njc1ZjcwLi41ZTMyODcwNWI2ZDlkODg3
ZjZmOTgxMTMzNGE2YTMyNzFjZjRjMTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01Db25zdHJ1Y3Rvci5oCkBAIC0xMDQsNyArMTA0LDcgQEAgcHJpdmF0ZToKIAogdGVt
cGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNCdWlsdGluQ29uc3RydWN0b3IgOiBwdWJs
aWMgRE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYg
RE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gRE9N
Q29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3Q7CiAKICAgICBzdGF0aWMgSlNCdWlsdGluQ29uc3Ry
dWN0b3IqIGNyZWF0ZShKU0M6OlZNJiwgSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVj
dCYpOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
LCBKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSk7CkBAIC0xMTks
OCArMTE5LDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mLCBK
U0RPTUdsb2JhbE9iamVjdCYpOwogICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpOwogICAgIHN0YXRp
YyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0KEpTQzo6RXhlY1N0
YXRlKik7Ci0gICAgSlNDOjpKU09iamVjdCogY3JlYXRlSlNPYmplY3QoKTsKIAorICAgIEpTQzo6
RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU09i
amVjdCYpOworICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6RXhl
Y1N0YXRlJiwgSlNDOjpKU09iamVjdCopOwogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFj
aCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0aWVzKEpT
Qzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpIHsgfQogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBm
b3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KQEAgLTIxNiwxNyArMjE3LDQ5IEBAIHRlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSB2b2lkIEpTQnVpbHRpbkNvbnN0cnVjdG9yPEpT
Q2xhc3M+OjpmaW5pc2hDcmVhCiAgICAgaW5pdGlhbGl6ZVByb3BlcnRpZXModm0sIGdsb2JhbE9i
amVjdCk7CiB9CiAKLXRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNv
bnN0cnVjdChKU0M6OkV4ZWNTdGF0ZSogc3RhdGUpCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNz
PiBpbmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNz
Pjo6Y2FsbENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgSlNDOjpKU09iamVjdCYg
b2JqZWN0KQogewotICAgIGF1dG8qIGNhc3RlZFRoaXMgPSBKU0M6OmpzQ2FzdDxKU0J1aWx0aW5D
b25zdHJ1Y3Rvcio+KHN0YXRlLT5jYWxsZWUoKSk7Ci0gICAgYXV0byogb2JqZWN0ID0gY2FzdGVk
VGhpcy0+Y3JlYXRlSlNPYmplY3QoKTsKLSAgICBjYWxsRnVuY3Rpb25XaXRoQ3VycmVudEFyZ3Vt
ZW50cygqc3RhdGUsICpvYmplY3QsICpjYXN0ZWRUaGlzLT5pbml0aWFsaXplRnVuY3Rpb24oKSk7
Ci0gICAgcmV0dXJuIEpTQzo6SlNWYWx1ZTo6ZW5jb2RlKG9iamVjdCk7CisgICAgY2FsbEZ1bmN0
aW9uV2l0aEN1cnJlbnRBcmd1bWVudHMoc3RhdGUsIG9iamVjdCwgKmluaXRpYWxpemVGdW5jdGlv
bigpKTsKKyAgICByZXR1cm4gSlNDOjpKU1ZhbHVlOjplbmNvZGUoJm9iamVjdCk7Cit9CisKK3Rl
bXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQnVp
bHRpbkNvbnN0cnVjdG9yPEpTQ2xhc3M+OjpjYWxsQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUm
IHN0YXRlLCBKU0M6OkpTT2JqZWN0KiBvYmplY3QpCit7CisgICAgaWYgKCFvYmplY3QpCisgICAg
ICAgIHJldHVybiB0aHJvd0NvbnN0cnVjdG9yRG9jdW1lbnRVbmF2YWlsYWJsZUVycm9yKHN0YXRl
LCBpbmZvKCktPmNsYXNzTmFtZSk7CisgICAgcmV0dXJuIGNhbGxDb25zdHJ1Y3RvcihzdGF0ZSwg
Km9iamVjdCk7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZQordHlwZW5h
bWUgc3RkOjplbmFibGVfaWY8SlNET01PYmplY3RJbnNwZWN0b3I8SlNDbGFzcz46OmlzU2ltcGxl
V3JhcHBlciwgSlNDOjpKU09iamVjdCY+Ojp0eXBlIGNyZWF0ZUpTT2JqZWN0KEpTQnVpbHRpbkNv
bnN0cnVjdG9yPEpTQ2xhc3M+JiBjb25zdHJ1Y3RvcikKK3sKKyAgICBhdXRvJiBnbG9iYWxPYmpl
Y3QgPSAqY29uc3RydWN0b3IuZ2xvYmFsT2JqZWN0KCk7CisgICAgcmV0dXJuICpKU0NsYXNzOjpj
cmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTQ2xhc3M+KGdsb2JhbE9iamVjdC52bSgpLCBnbG9iYWxP
YmplY3QpLCAmZ2xvYmFsT2JqZWN0LCBKU0NsYXNzOjpET01XcmFwcGVkOjpjcmVhdGUoKSk7CiB9
CiAKLXRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkpTT2JqZWN0KiBKU0J1
aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y3JlYXRlSlNPYmplY3QoKQordGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gaW5saW5lCit0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxKU0RPTU9iamVj
dEluc3BlY3RvcjxKU0NsYXNzPjo6aXNCdWlsdGluLCBKU0M6OkpTT2JqZWN0Jj46OnR5cGUgY3Jl
YXRlSlNPYmplY3QoSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz4mIGNvbnN0cnVjdG9yKQog
ewotICAgIHJldHVybiBKU0NsYXNzOjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTQ2xhc3M+KGds
b2JhbE9iamVjdCgpLT52bSgpLCAqZ2xvYmFsT2JqZWN0KCkpLCBnbG9iYWxPYmplY3QoKSk7Cisg
ICAgYXV0byYgZ2xvYmFsT2JqZWN0ID0gKmNvbnN0cnVjdG9yLmdsb2JhbE9iamVjdCgpOworICAg
IHJldHVybiAqSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVjdHVyZTxKU0NsYXNzPihnbG9iYWxP
YmplY3Qudm0oKSwgZ2xvYmFsT2JqZWN0KSwgJmdsb2JhbE9iamVjdCk7Cit9CisKK3RlbXBsYXRl
PHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZQordHlwZW5hbWUgc3RkOjplbmFibGVfaWY8SlNET01P
YmplY3RJbnNwZWN0b3I8SlNDbGFzcz46OmlzQ29tcGxleFdyYXBwZXIsIEpTQzo6SlNPYmplY3Qq
Pjo6dHlwZSBjcmVhdGVKU09iamVjdChKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPiYgY29u
c3RydWN0b3IpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCA9IGNvbnN0
cnVjdG9yLnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICBpZiAoIWNvbnRleHQpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8mIGdsb2JhbE9iamVjdCA9ICpjb25zdHJ1Y3Rv
ci5nbG9iYWxPYmplY3QoKTsKKyAgICByZXR1cm4gSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVj
dHVyZTxKU0NsYXNzPihnbG9iYWxPYmplY3Qudm0oKSwgZ2xvYmFsT2JqZWN0KSwgJmdsb2JhbE9i
amVjdCwgSlNDbGFzczo6RE9NV3JhcHBlZDo6Y3JlYXRlKCpjb250ZXh0KSk7Cit9CisKK3RlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNvbnN0cnVjdChKU0M6OkV4ZWNT
dGF0ZSogc3RhdGUpCit7CisgICAgQVNTRVJUKHN0YXRlKTsKKyAgICBhdXRvKiBjYXN0ZWRUaGlz
ID0gSlNDOjpqc0Nhc3Q8SlNCdWlsdGluQ29uc3RydWN0b3IqPihzdGF0ZS0+Y2FsbGVlKCkpOwor
ICAgIEFTU0VSVChjYXN0ZWRUaGlzKTsKKyAgICByZXR1cm4gY2FzdGVkVGhpcy0+Y2FsbENvbnN0
cnVjdG9yKCpzdGF0ZSwgY3JlYXRlSlNPYmplY3QoKmNhc3RlZFRoaXMpKTsKIH0KIAogdGVtcGxh
dGU8dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTQzo6Q29uc3RydWN0VHlwZSBKU0J1aWx0aW5D
b25zdHJ1Y3RvcjxKU0NsYXNzPjo6Z2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6
Q29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01XcmFwcGVyLmgKaW5kZXggMjRhMzBlZjJjZTU3Y2IyOGIzZDEyMTc5NzcxZjNiOTk1MTdm
MzlhOS4uZGMzMjc3ZjA4MzZmYzEwMGZhYzg5MTliYjUyZmVhMmVkOTRjYjFlYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKQEAgLTM2LDYgKzM2LDcgQEAgc3Rh
dGljIGNvbnN0IHVpbnQ4X3QgSlNFbGVtZW50VHlwZSA9IEpTQzo6TGFzdEpTQ09iamVjdFR5cGUg
KyAzOwogY2xhc3MgSlNET01PYmplY3QgOiBwdWJsaWMgSlNDOjpKU0Rlc3RydWN0aWJsZU9iamVj
dCB7CiBwdWJsaWM6CiAgICAgdHlwZWRlZiBKU0M6OkpTRGVzdHJ1Y3RpYmxlT2JqZWN0IEJhc2U7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzRE9NV3JhcHBlciA9IGZhbHNlOwogCiAgICAg
SlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIEpTQzo6anND
YXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oSlNDOjpKU05vbkZpbmFsT2JqZWN0OjpnbG9iYWxPYmpl
Y3QoKSk7IH0KICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCkgY29uc3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKTsgfQpAQCAtNTEsNiArNTIsOCBAQCBwcm90ZWN0ZWQ6CiB0ZW1wbGF0ZTx0eXBlbmFtZSBJ
bXBsZW1lbnRhdGlvbkNsYXNzPiBjbGFzcyBKU0RPTVdyYXBwZXIgOiBwdWJsaWMgSlNET01PYmpl
Y3QgewogcHVibGljOgogICAgIHR5cGVkZWYgSlNET01PYmplY3QgQmFzZTsKKyAgICB0eXBlZGVm
IEltcGxlbWVudGF0aW9uQ2xhc3MgRE9NV3JhcHBlZDsKKyAgICBzdGF0aWMgY29uc3RleHByIGJv
b2wgaXNET01XcmFwcGVyID0gdHJ1ZTsKIAogICAgIEltcGxlbWVudGF0aW9uQ2xhc3MmIHdyYXBw
ZWQoKSBjb25zdCB7IHJldHVybiBjb25zdF9jYXN0PEltcGxlbWVudGF0aW9uQ2xhc3MmPihtX3dy
YXBwZWQuZ2V0KCkpOyB9CiAKQEAgLTYzLDYgKzY2LDI4IEBAIHByaXZhdGU6CiAgICAgUmVmPElt
cGxlbWVudGF0aW9uQ2xhc3M+IG1fd3JhcHBlZDsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIEpT
Q2xhc3MsIHR5cGVuYW1lIEVuYWJsZSA9IHZvaWQ+CitzdHJ1Y3QgSlNET01PYmplY3RJbnNwZWN0
b3IgeworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc1NpbXBsZVdyYXBwZXIg
PSBmYWxzZTsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNDb21wbGV4V3JhcHBlciA9IGZh
bHNlOworICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0J1aWx0aW4gPSB0cnVlOworfTsKKwor
dGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4KK3N0cnVjdCBKU0RPTU9iamVjdEluc3BlY3RvcjxK
U0NsYXNzLCB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxKU0NsYXNzOjppc0RPTVdyYXBwZXI+Ojp0
eXBlPiB7Citwcml2YXRlOgorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CisgICAgc3RhdGljIGNv
bnN0ZXhwciBhdXRvIHRlc3QoaW50KSAtPiBkZWNsdHlwZShUOjpjcmVhdGUoKSwgYm9vbCgpKSB7
IHJldHVybiB0cnVlOyB9CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KKyAgICBzdGF0aWMgY29u
c3RleHByIGJvb2wgdGVzdCguLi4pIHsgcmV0dXJuIGZhbHNlOyB9CisKK3B1YmxpYzoKKyAgICBz
dGF0aWMgY29uc3RleHByIGJvb2wgaXNTaW1wbGVXcmFwcGVyID0gdGVzdDx0eXBlbmFtZSBKU0Ns
YXNzOjpET01XcmFwcGVkPigwKTsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNDb21wbGV4
V3JhcHBlciA9ICFpc1NpbXBsZVdyYXBwZXI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlz
QnVpbHRpbiA9IGZhbHNlOworfTsKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gSlNET01XcmFwcGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTS2V5VmFsdWVJdGVyYXRvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNLZXlW
YWx1ZUl0ZXJhdG9yLmgKaW5kZXggNjIyNzJmNTFkNTRmODUwYmY2OWIzMjQ5ZWFhOGRiNDUxNzc5
NWNiOC4uOGU0MmJhMGEzNjljMWVhMGNiNTg1ZTJkODliNWViMGUzMmZmNzFhNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNLZXlWYWx1ZUl0ZXJhdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNLZXlWYWx1ZUl0ZXJhdG9yLmgKQEAgLTM1LDgg
KzM1LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdGVtcGxhdGU8dHlwZW5hbWUgSlNXcmFwcGVy
PgogY2xhc3MgSlNLZXlWYWx1ZUl0ZXJhdG9yUHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25G
aW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdXNpbmcgRE9NV3JhcHBlZCA9IHR5cGVuYW1lIHN0
ZDo6cmVtb3ZlX3JlZmVyZW5jZTxkZWNsdHlwZShzdGQ6OmRlY2x2YWw8SlNXcmFwcGVyPigpLndy
YXBwZWQoKSk+Ojp0eXBlOwogICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7
CisgICAgdXNpbmcgRE9NV3JhcHBlZCA9IHR5cGVuYW1lIEpTV3JhcHBlcjo6RE9NV3JhcHBlZDsK
IAogICAgIHN0YXRpYyBKU0tleVZhbHVlSXRlcmF0b3JQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZN
JiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSog
c3RydWN0dXJlKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29uc3RydWN0b3JzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29uc3RydWN0b3JzLmNwcAppbmRl
eCA0MWZlNGRiYTZjMmEwMDIxNWYxMzMwNGJiYjk5NTVlNjUyYjAwODFkLi5jNjYwODYxNTM5OGIw
YmYwNzFlMDU3NmQ4YzQwODA5YTIxZDJlOTNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtUHJpdmF0ZUNvbnN0cnVjdG9ycy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1
Y3RvcnMuY3BwCkBAIC02MywxNiArNjMsNiBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoSlNCdWlsdGluUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZQogdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNCdWlsdGluUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2
YXRlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNv
bnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0J1aWx0
aW5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3RvcikgfTsKIHRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTQnVpbHRpblJlYWRhYmxlU3RyZWFtQ29udHJvbGxlclByaXZhdGVD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZUNv
bnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0J1aWx0
aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3IpIH07CiAKLXRlbXBs
YXRlPD4gSlNPYmplY3QqIEpTQnVpbHRpblJlYWRhYmxlU3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0
cnVjdG9yOjpjcmVhdGVKU09iamVjdCgpCi17Ci0gICAgcmV0dXJuIEpTUmVhZGFibGVTdHJlYW1S
ZWFkZXI6OmNyZWF0ZShnZXRET01TdHJ1Y3R1cmU8SlNSZWFkYWJsZVN0cmVhbVJlYWRlcj4oZ2xv
YmFsT2JqZWN0KCktPnZtKCksICpnbG9iYWxPYmplY3QoKSksIGdsb2JhbE9iamVjdCgpKTsKLX0K
LQotdGVtcGxhdGU8PiBKU09iamVjdCogSlNCdWlsdGluUmVhZGFibGVTdHJlYW1Db250cm9sbGVy
UHJpdmF0ZUNvbnN0cnVjdG9yOjpjcmVhdGVKU09iamVjdCgpCi17Ci0gICAgcmV0dXJuIEpTUmVh
ZGFibGVTdHJlYW1Db250cm9sbGVyOjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyPihnbG9iYWxPYmplY3QoKS0+dm0oKSwgKmdsb2JhbE9iamVjdCgpKSwg
Z2xvYmFsT2JqZWN0KCkpOwotfQotCiB0ZW1wbGF0ZTw+IEZ1bmN0aW9uRXhlY3V0YWJsZSogSlNC
dWlsdGluUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0b3I6OmluaXRpYWxpemVF
eGVjdXRhYmxlKEpTQzo6Vk0mIHZtKQogewogICAgIHJldHVybiByZWFkYWJsZVN0cmVhbUludGVy
bmFsc1ByaXZhdGVJbml0aWFsaXplUmVhZGFibGVTdHJlYW1SZWFkZXJDb2RlR2VuZXJhdG9yKHZt
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KaW5kZXggMjdiNGJkYjk4YmRmMGMyYjU4ZTJiMjIxNTdlZDRmOWFlOTJmZWVmOS4uMWE3
YjQ0Nzk1MGMwZjgxMTIxYTAzMzY4OWJkZTljYzAwNDVkNGRjZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTQ3ODEsMTgg
KzQ3ODEsNyBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb24KICAgICBteSAkZ2Vu
ZXJhdGluZ05hbWVkQ29uc3RydWN0b3IgPSBzaGlmdDsKICAgICBteSAkZnVuY3Rpb24gPSBzaGlm
dDsKIAotCiAgICAgaWYgKElzSlNCdWlsdGluQ29uc3RydWN0b3IoJGludGVyZmFjZSkpIHsKLSAg
ICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW5Db25z
dHJ1Y3RvciJ9KSB7Ci0gICAgICAgICAgICAjIEZJWE1FOiBBZGQgc3VwcG9ydCBmb3IgQ29uc3Ry
dWN0b3JDYWxsV2l0aAotICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCA8PEVORCk7Ci10
ZW1wbGF0ZTw+IEpTQzo6SlNPYmplY3QqICR7Y2xhc3NOYW1lfUNvbnN0cnVjdG9yOjpjcmVhdGVK
U09iamVjdCgpCi17Ci0gICAgcmV0dXJuICR7Y2xhc3NOYW1lfTo6Y3JlYXRlKGdldERPTVN0cnVj
dHVyZTwke2NsYXNzTmFtZX0+KGdsb2JhbE9iamVjdCgpLT52bSgpLCAqZ2xvYmFsT2JqZWN0KCkp
LCBnbG9iYWxPYmplY3QoKSwgJHtpbnRlcmZhY2VOYW1lfTo6Y3JlYXRlKCkpOwotfQotCi1FTkQK
LSAgICAgICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAppbmRleCAwMzIyODdkOGU5
YzhmYzYzMDMxNDk0ZmZjNTcwODY0MzFiMWFjNDUwLi4wMmNkOGE5OTc1YWQ2YzAwYjYzZWMxYjBh
MDZjNzZiNjYyYTI3NjQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKQEAgLTYzLDExICs2Myw2IEBAIHByaXZhdGU6CiAKIHR5
cGVkZWYgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3I+IEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3I7CiAK
LXRlbXBsYXRlPD4gSlNDOjpKU09iamVjdCogSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3JDb25zdHJ1Y3Rvcjo6Y3JlYXRlSlNPYmplY3QoKQotewotICAgIHJldHVybiBKU1Rlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcjo6Y3JlYXRlKGdldERPTVN0cnVjdHVyZTxKU1Rl
c3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4oZ2xvYmFsT2JqZWN0KCktPnZtKCksICpn
bG9iYWxPYmplY3QoKSksIGdsb2JhbE9iamVjdCgpLCBUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29u
c3RydWN0b3I6OmNyZWF0ZSgpKTsKLX0KLQogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENsYXNz
V2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
ICAgICBVTlVTRURfUEFSQU0odm0pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273137</attachid>
            <date>2016-03-06 09:44:50 -0800</date>
            <delta_ts>2016-03-06 12:44:39 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-155022-20160306184435.patch</filename>
            <type>text/plain</type>
            <size>12943</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NjM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzM4YmE0MDE0OTE4MWI1
NzFiMTMyNmM2MmY5YTk1M2VmMjM5ZTdkYy4uMjFmNjdlMjdhNGRjYjQ5MDg4NjcwM2I1OGY1ZjBl
Mzc3ZWE2ZjdjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE2LTAzLTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgRW5hYmxl
IERPTSBjbGFzcyBjcmVhdGUgZnVuY3Rpb25zIHRvIHRha2UgcGFyYW1ldGVycyBpbiBjYXNlIG9m
IEpTQnVpbHRpbkNvbnN0cnVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNTUwMjIKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4K
KworICAgICAgICBJbnRyb2R1Y2luZyBKU0RPTU9iamVjdEluc3BlY3RvciB0byBjaGVjayB3aGV0
aGVyIGEgZ2l2ZW4gSlMgY2xhc3MgaXMgYnVpbHQtaW4gKG5vIERPTSBjbGFzcykuCisgICAgICAg
IElmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCB0aGUgSlMgY2xhc3Mgd3JhcHMgYSBET00gY2xhc3Mu
CisgICAgICAgIFRoZSBpbnNwZWN0b3IgZGV0ZWN0cyB3aGV0aGVyIHRoZSBET00gY2xhc3MgY3Jl
YXRlIHN0YXRpYyBtZXRob2QgdGFrZXMgbm8gcGFyYW1ldGVyIG9yIHNvbWUgcGFyYW1ldGVycy4K
KyAgICAgICAgVGhpcyBpcyB1c2VkIGluIEpTRE9NQ29uc3RydWN0b3IuaCB0byBnZW5lcmF0ZSBj
b3JyZWN0bHkgdGhlIGNyZWF0ZUpTT2JqZWN0IGZ1bmN0aW9ucyBuZWVkZWQgYnkgSlNCdWlsdGlu
Q29uc3RydWN0b3IuCisKKyAgICAgICAgVXBkYXRlZCBiaW5kaW5nIGdlbmVyYXRvciB0byBub3Qg
Z2VuZXJhdGUgYW55bW9yZSBjcmVhdGVKU09iamVjdCBhcyBpdCBpcyBoYW5kbGVkIGRpcmVjdGx5
IGluIEpTRE9NQ29uc3RydWN0b3IuaC4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRl
c3RzLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oOgorICAgICAg
ICAoV2ViQ29yZTo6SlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNhbGxDb25zdHJ1Y3Rv
cik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVKU09iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
OjpKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y29uc3RydWN0KToKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0tleVZh
bHVlSXRlcmF0b3IuaDogVGFraW5nIGJlbmVmaXQgb2YgSlNDbGFzczo6RE9NV3JhcHBlciB0eXBl
IGRlY2xhcmF0aW9uLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Qcml2
YXRlQ29uc3RydWN0b3JzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTQnVpbHRpblJlYWRhYmxl
U3RyZWFtUmVhZGVyUHJpdmF0ZUNvbnN0cnVjdG9yOjppbml0aWFsaXplRXhlY3V0YWJsZSk6IERl
bGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xs
ZXJQcml2YXRlQ29uc3RydWN0b3I6OmluaXRpYWxpemVFeGVjdXRhYmxlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdl
bmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JD
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKTogRGVsZXRlZC4KKwogMjAxNi0wMy0w
NiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVuZGVyVGV4
dENvbnRyb2xTaW5nbGVMaW5lIHNob3VsZG4ndCBtdXRhdGUgcGxhY2Vob2xkZXIgZWxlbWVudCBp
bmxpbmUgc3R5bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
Q29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0
b3IuaAppbmRleCBjYmJlODAxOTZiNjM2OWQyMzg1NDJhZmEzMzZlZDQ5ZDRjMWJiYTQxLi4yNTdh
YjdlM2JlYWJhODMzZWU4NjczNmZlYjExMzJkNjNmMzEyOTRkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCkBAIC0xMDQsNyArMTA0LDcgQEAgcHJp
dmF0ZToKIAogdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNCdWlsdGluQ29uc3Ry
dWN0b3IgOiBwdWJsaWMgRE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgewogcHVibGljOgot
ICAgIHR5cGVkZWYgRE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3QgQmFzZTsKKyAgICB1c2lu
ZyBCYXNlID0gRE9NQ29uc3RydWN0b3JKU0J1aWx0aW5PYmplY3Q7CiAKICAgICBzdGF0aWMgSlNC
dWlsdGluQ29uc3RydWN0b3IqIGNyZWF0ZShKU0M6OlZNJiwgSlNDOjpTdHJ1Y3R1cmUqLCBKU0RP
TUdsb2JhbE9iamVjdCYpOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mLCBKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSk7CkBAIC0xMTksNyArMTE5LDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9u
KEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpOwogICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVj
dFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYp
OwogICAgIHN0YXRpYyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0
KEpTQzo6RXhlY1N0YXRlKik7Ci0gICAgSlNDOjpKU09iamVjdCogY3JlYXRlSlNPYmplY3QoKTsK
KworICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRl
JiwgSlNDOjpKU09iamVjdCYpOworICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgY2FsbENvbnN0cnVj
dG9yKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU09iamVjdCopOwogCiAgICAgLy8gVXN1YWxseSBk
ZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgogICAgIHZvaWQgaW5pdGlhbGl6
ZVByb3BlcnRpZXMoSlNDOjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0JikgeyB9CkBAIC0yMTYsMTcg
KzIxOCw0OCBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgdm9pZCBKU0J1aWx0
aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6ZmluaXNoQ3JlYQogICAgIGluaXRpYWxpemVQcm9wZXJ0
aWVzKHZtLCBnbG9iYWxPYmplY3QpOwogfQogCi10ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBp
bmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTQnVpbHRpbkNvbnN0cnVj
dG9yPEpTQ2xhc3M+Ojpjb25zdHJ1Y3QoSlNDOjpFeGVjU3RhdGUqIHN0YXRlKQordGVtcGxhdGU8
dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNCdWlsdGluQ29u
c3RydWN0b3I8SlNDbGFzcz46OmNhbGxDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUs
IEpTQzo6SlNPYmplY3QmIG9iamVjdCkKIHsKLSAgICBhdXRvKiBjYXN0ZWRUaGlzID0gSlNDOjpq
c0Nhc3Q8SlNCdWlsdGluQ29uc3RydWN0b3IqPihzdGF0ZS0+Y2FsbGVlKCkpOwotICAgIGF1dG8q
IG9iamVjdCA9IGNhc3RlZFRoaXMtPmNyZWF0ZUpTT2JqZWN0KCk7Ci0gICAgY2FsbEZ1bmN0aW9u
V2l0aEN1cnJlbnRBcmd1bWVudHMoKnN0YXRlLCAqb2JqZWN0LCAqY2FzdGVkVGhpcy0+aW5pdGlh
bGl6ZUZ1bmN0aW9uKCkpOwotICAgIHJldHVybiBKU0M6OkpTVmFsdWU6OmVuY29kZShvYmplY3Qp
OworICAgIGNhbGxGdW5jdGlvbldpdGhDdXJyZW50QXJndW1lbnRzKHN0YXRlLCBvYmplY3QsICpp
bml0aWFsaXplRnVuY3Rpb24oKSk7CisgICAgcmV0dXJuIEpTQzo6SlNWYWx1ZTo6ZW5jb2RlKCZv
YmplY3QpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPjo6Y2FsbENvbnN0cnVjdG9y
KEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgSlNDOjpKU09iamVjdCogb2JqZWN0KQoreworICAgIGlm
ICghb2JqZWN0KQorICAgICAgICByZXR1cm4gdGhyb3dDb25zdHJ1Y3RvckRvY3VtZW50VW5hdmFp
bGFibGVFcnJvcihzdGF0ZSwgaW5mbygpLT5jbGFzc05hbWUpOworICAgIHJldHVybiBjYWxsQ29u
c3RydWN0b3Ioc3RhdGUsICpvYmplY3QpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNz
PiBpbmxpbmUKK3R5cGVuYW1lIHN0ZDo6ZW5hYmxlX2lmPEpTRE9NT2JqZWN0SW5zcGVjdG9yPEpT
Q2xhc3M+Ojppc1NpbXBsZVdyYXBwZXIsIEpTQzo6SlNPYmplY3QmPjo6dHlwZSBjcmVhdGVKU09i
amVjdChKU0J1aWx0aW5Db25zdHJ1Y3RvcjxKU0NsYXNzPiYgY29uc3RydWN0b3IpCit7CisgICAg
YXV0byYgZ2xvYmFsT2JqZWN0ID0gKmNvbnN0cnVjdG9yLmdsb2JhbE9iamVjdCgpOworICAgIHJl
dHVybiAqSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVjdHVyZTxKU0NsYXNzPihnbG9iYWxPYmpl
Y3Qudm0oKSwgZ2xvYmFsT2JqZWN0KSwgJmdsb2JhbE9iamVjdCwgSlNDbGFzczo6RE9NV3JhcHBl
ZDo6Y3JlYXRlKCkpOwogfQogCi10ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlND
OjpKU09iamVjdCogSlNCdWlsdGluQ29uc3RydWN0b3I8SlNDbGFzcz46OmNyZWF0ZUpTT2JqZWN0
KCkKK3RlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZQordHlwZW5hbWUgc3RkOjplbmFi
bGVfaWY8SlNET01PYmplY3RJbnNwZWN0b3I8SlNDbGFzcz46OmlzQnVpbHRpbiwgSlNDOjpKU09i
amVjdCY+Ojp0eXBlIGNyZWF0ZUpTT2JqZWN0KEpTQnVpbHRpbkNvbnN0cnVjdG9yPEpTQ2xhc3M+
JiBjb25zdHJ1Y3RvcikKIHsKLSAgICByZXR1cm4gSlNDbGFzczo6Y3JlYXRlKGdldERPTVN0cnVj
dHVyZTxKU0NsYXNzPihnbG9iYWxPYmplY3QoKS0+dm0oKSwgKmdsb2JhbE9iamVjdCgpKSwgZ2xv
YmFsT2JqZWN0KCkpOworICAgIGF1dG8mIGdsb2JhbE9iamVjdCA9ICpjb25zdHJ1Y3Rvci5nbG9i
YWxPYmplY3QoKTsKKyAgICByZXR1cm4gKkpTQ2xhc3M6OmNyZWF0ZShnZXRET01TdHJ1Y3R1cmU8
SlNDbGFzcz4oZ2xvYmFsT2JqZWN0LnZtKCksIGdsb2JhbE9iamVjdCksICZnbG9iYWxPYmplY3Qp
OworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUKK3R5cGVuYW1lIHN0ZDo6
ZW5hYmxlX2lmPEpTRE9NT2JqZWN0SW5zcGVjdG9yPEpTQ2xhc3M+Ojppc0NvbXBsZXhXcmFwcGVy
LCBKU0M6OkpTT2JqZWN0Kj46OnR5cGUgY3JlYXRlSlNPYmplY3QoSlNCdWlsdGluQ29uc3RydWN0
b3I8SlNDbGFzcz4mIGNvbnN0cnVjdG9yKQoreworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQgPSBjb25zdHJ1Y3Rvci5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CisgICAgaWYg
KCFjb250ZXh0KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBhdXRvJiBnbG9iYWxPYmpl
Y3QgPSAqY29uc3RydWN0b3IuZ2xvYmFsT2JqZWN0KCk7CisgICAgcmV0dXJuIEpTQ2xhc3M6OmNy
ZWF0ZShnZXRET01TdHJ1Y3R1cmU8SlNDbGFzcz4oZ2xvYmFsT2JqZWN0LnZtKCksIGdsb2JhbE9i
amVjdCksICZnbG9iYWxPYmplY3QsIEpTQ2xhc3M6OkRPTVdyYXBwZWQ6OmNyZWF0ZSgqY29udGV4
dCkpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNDOjpFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTQnVpbHRpbkNvbnN0cnVjdG9yPEpTQ2xhc3M+Ojpjb25z
dHJ1Y3QoSlNDOjpFeGVjU3RhdGUqIHN0YXRlKQoreworICAgIEFTU0VSVChzdGF0ZSk7CisgICAg
YXV0byogY2FzdGVkVGhpcyA9IEpTQzo6anNDYXN0PEpTQnVpbHRpbkNvbnN0cnVjdG9yKj4oc3Rh
dGUtPmNhbGxlZSgpKTsKKyAgICByZXR1cm4gY2FzdGVkVGhpcy0+Y2FsbENvbnN0cnVjdG9yKCpz
dGF0ZSwgY3JlYXRlSlNPYmplY3QoKmNhc3RlZFRoaXMpKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5h
bWUgSlNDbGFzcz4gaW5saW5lIEpTQzo6Q29uc3RydWN0VHlwZSBKU0J1aWx0aW5Db25zdHJ1Y3Rv
cjxKU0NsYXNzPjo6Z2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0
RGF0YSYgY29uc3RydWN0RGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFw
cGVyLmgKaW5kZXggMjRhMzBlZjJjZTU3Y2IyOGIzZDEyMTc5NzcxZjNiOTk1MTdmMzlhOS4uNzE1
NjAxZWYyZjRkMjAwMjAyNjMyMjk2M2EzZjc5NGJmMWJmZTlmYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01XcmFwcGVyLmgKQEAgLTM2LDYgKzM2LDcgQEAgc3RhdGljIGNvbnN0
IHVpbnQ4X3QgSlNFbGVtZW50VHlwZSA9IEpTQzo6TGFzdEpTQ09iamVjdFR5cGUgKyAzOwogY2xh
c3MgSlNET01PYmplY3QgOiBwdWJsaWMgSlNDOjpKU0Rlc3RydWN0aWJsZU9iamVjdCB7CiBwdWJs
aWM6CiAgICAgdHlwZWRlZiBKU0M6OkpTRGVzdHJ1Y3RpYmxlT2JqZWN0IEJhc2U7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBib29sIGlzRE9NV3JhcHBlciA9IGZhbHNlOwogCiAgICAgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIEpTQzo6anNDYXN0PEpTRE9N
R2xvYmFsT2JqZWN0Kj4oSlNDOjpKU05vbkZpbmFsT2JqZWN0OjpnbG9iYWxPYmplY3QoKSk7IH0K
ICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29u
c3QgeyByZXR1cm4gZ2xvYmFsT2JqZWN0KCktPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsgfQpA
QCAtNTEsNiArNTIsOCBAQCBwcm90ZWN0ZWQ6CiB0ZW1wbGF0ZTx0eXBlbmFtZSBJbXBsZW1lbnRh
dGlvbkNsYXNzPiBjbGFzcyBKU0RPTVdyYXBwZXIgOiBwdWJsaWMgSlNET01PYmplY3QgewogcHVi
bGljOgogICAgIHR5cGVkZWYgSlNET01PYmplY3QgQmFzZTsKKyAgICB0eXBlZGVmIEltcGxlbWVu
dGF0aW9uQ2xhc3MgRE9NV3JhcHBlZDsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNET01X
cmFwcGVyID0gdHJ1ZTsKIAogICAgIEltcGxlbWVudGF0aW9uQ2xhc3MmIHdyYXBwZWQoKSBjb25z
dCB7IHJldHVybiBjb25zdF9jYXN0PEltcGxlbWVudGF0aW9uQ2xhc3MmPihtX3dyYXBwZWQuZ2V0
KCkpOyB9CiAKQEAgLTYzLDYgKzY2LDI2IEBAIHByaXZhdGU6CiAgICAgUmVmPEltcGxlbWVudGF0
aW9uQ2xhc3M+IG1fd3JhcHBlZDsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3MsIHR5
cGVuYW1lIEVuYWJsZSA9IHZvaWQ+CitzdHJ1Y3QgSlNET01PYmplY3RJbnNwZWN0b3IgeworcHVi
bGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc1NpbXBsZVdyYXBwZXIgPSBmYWxzZTsK
KyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNDb21wbGV4V3JhcHBlciA9IGZhbHNlOworICAg
IHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0J1aWx0aW4gPSB0cnVlOworfTsKKwordGVtcGxhdGU8
dHlwZW5hbWUgSlNDbGFzcz4KK3N0cnVjdCBKU0RPTU9iamVjdEluc3BlY3RvcjxKU0NsYXNzLCB0
eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjxKU0NsYXNzOjppc0RPTVdyYXBwZXI+Ojp0eXBlPiB7Citw
cml2YXRlOgorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyBjb25zdGV4cHIgYXV0byB0
ZXN0KGludCkgLT4gZGVjbHR5cGUoVDo6Y3JlYXRlKCksIGJvb2woKSkgeyByZXR1cm4gdHJ1ZTsg
fQorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyBjb25zdGV4cHIgYm9vbCB0ZXN0KC4u
LikgeyByZXR1cm4gZmFsc2U7IH0KKworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgYm9v
bCBpc1NpbXBsZVdyYXBwZXIgPSB0ZXN0PHR5cGVuYW1lIEpTQ2xhc3M6OkRPTVdyYXBwZWQ+KDAp
OworICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0NvbXBsZXhXcmFwcGVyID0gIWlzU2ltcGxl
V3JhcHBlcjsKKyAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNCdWlsdGluID0gZmFsc2U7Cit9
OworCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBKU0RPTVdyYXBwZXJfaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNLZXlWYWx1ZUl0ZXJhdG9y
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0tleVZhbHVlSXRlcmF0b3IuaAppbmRl
eCBjMjZlOTQ2YTFlNGI0YmIzNjQwZjEyYzYxMzkyMjNhMWYzN2I1NDZiLi5jMjUwY2JjYjExMjJi
NWM4NjA4Njc2YTg0OTI5YzljNWQzYjAwMjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0tleVZhbHVlSXRlcmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0tleVZhbHVlSXRlcmF0b3IuaApAQCAtMzUsOCArMzUsOCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBKU1dyYXBwZXI+CiBjbGFzcyBKU0tleVZhbHVl
SXRlcmF0b3JQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1Ymxp
YzoKLSAgICB1c2luZyBET01XcmFwcGVkID0gdHlwZW5hbWUgc3RkOjpyZW1vdmVfcmVmZXJlbmNl
PGRlY2x0eXBlKHN0ZDo6ZGVjbHZhbDxKU1dyYXBwZXI+KCkud3JhcHBlZCgpKT46OnR5cGU7CiAg
ICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5hbE9iamVjdDsKKyAgICB1c2luZyBET01XcmFw
cGVkID0gdHlwZW5hbWUgSlNXcmFwcGVyOjpET01XcmFwcGVkOwogCiAgICAgc3RhdGljIEpTS2V5
VmFsdWVJdGVyYXRvclByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbVBy
aXZhdGVDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFk
YWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDQxZmU0ZGJhNmMyYTAwMjE1
ZjEzMzA0YmJiOTk1NWU2NTJiMDA4MWQuLmM2NjA4NjE1Mzk4YjBiZjA3MWUwNTc2ZDhjNDA4MDlh
MjFkMmU5M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVhZGFi
bGVTdHJlYW1Qcml2YXRlQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtUHJpdmF0ZUNvbnN0cnVjdG9ycy5jcHAKQEAgLTYzLDE2
ICs2Myw2IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0J1aWx0
aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlCiB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0b3IiLCAmQmFzZTo6
c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQnVpbHRpblJlYWRhYmxlU3RyZWFtUmVh
ZGVyUHJpdmF0ZUNvbnN0cnVjdG9yKSB9OwogdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNC
dWlsdGluUmVhZGFibGVTdHJlYW1Db250cm9sbGVyUHJpdmF0ZUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3IiLCAmQmFzZTo6
c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQnVpbHRpblJlYWRhYmxlU3RyZWFtQ29u
dHJvbGxlclByaXZhdGVDb25zdHJ1Y3RvcikgfTsKIAotdGVtcGxhdGU8PiBKU09iamVjdCogSlNC
dWlsdGluUmVhZGFibGVTdHJlYW1SZWFkZXJQcml2YXRlQ29uc3RydWN0b3I6OmNyZWF0ZUpTT2Jq
ZWN0KCkKLXsKLSAgICByZXR1cm4gSlNSZWFkYWJsZVN0cmVhbVJlYWRlcjo6Y3JlYXRlKGdldERP
TVN0cnVjdHVyZTxKU1JlYWRhYmxlU3RyZWFtUmVhZGVyPihnbG9iYWxPYmplY3QoKS0+dm0oKSwg
Kmdsb2JhbE9iamVjdCgpKSwgZ2xvYmFsT2JqZWN0KCkpOwotfQotCi10ZW1wbGF0ZTw+IEpTT2Jq
ZWN0KiBKU0J1aWx0aW5SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJQcml2YXRlQ29uc3RydWN0b3I6
OmNyZWF0ZUpTT2JqZWN0KCkKLXsKLSAgICByZXR1cm4gSlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xs
ZXI6OmNyZWF0ZShnZXRET01TdHJ1Y3R1cmU8SlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI+KGds
b2JhbE9iamVjdCgpLT52bSgpLCAqZ2xvYmFsT2JqZWN0KCkpLCBnbG9iYWxPYmplY3QoKSk7Ci19
Ci0KIHRlbXBsYXRlPD4gRnVuY3Rpb25FeGVjdXRhYmxlKiBKU0J1aWx0aW5SZWFkYWJsZVN0cmVh
bVJlYWRlclByaXZhdGVDb25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZUV4ZWN1dGFibGUoSlNDOjpWTSYg
dm0pCiB7CiAgICAgcmV0dXJuIHJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzUHJpdmF0ZUluaXRpYWxp
emVSZWFkYWJsZVN0cmVhbVJlYWRlckNvZGVHZW5lcmF0b3Iodm0pOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBiZTFmOGU2
ODNiYWM3YzE2NTdmOWJmYWQ1OGY3NTNmODkxOTA3NGM4Li5jNmQ0YjBkNjljY2EwZDZkOGQzNjFl
MzZmZjNjNDBmYzc0NTc3NTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtNDc4OCwxOCArNDc4OCw3IEBAIHN1YiBHZW5l
cmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbgogICAgIG15ICRnZW5lcmF0aW5nTmFtZWRDb25zdHJ1
Y3RvciA9IHNoaWZ0OwogICAgIG15ICRmdW5jdGlvbiA9IHNoaWZ0OwogCi0KICAgICBpZiAoSXNK
U0J1aWx0aW5Db25zdHJ1Y3RvcigkaW50ZXJmYWNlKSkgewotICAgICAgICBpZiAoJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9yIn0pIHsKLSAgICAg
ICAgICAgICMgRklYTUU6IEFkZCBzdXBwb3J0IGZvciBDb25zdHJ1Y3RvckNhbGxXaXRoCi0gICAg
ICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksIDw8RU5EKTsKLXRlbXBsYXRlPD4gSlNDOjpKU09i
amVjdCogJHtjbGFzc05hbWV9Q29uc3RydWN0b3I6OmNyZWF0ZUpTT2JqZWN0KCkKLXsKLSAgICBy
ZXR1cm4gJHtjbGFzc05hbWV9OjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPCR7Y2xhc3NOYW1lfT4o
Z2xvYmFsT2JqZWN0KCktPnZtKCksICpnbG9iYWxPYmplY3QoKSksIGdsb2JhbE9iamVjdCgpLCAk
e2ludGVyZmFjZU5hbWV9OjpjcmVhdGUoKSk7Ci19Ci0KLUVORAotICAgICAgICB9CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3IuY3BwCmluZGV4IDAzMjI4N2Q4ZTljOGZjNjMwMzE0OTRmZmM1NzA4
NjQzMWIxYWM0NTAuLjAyY2Q4YTk5NzVhZDZjMDBiNjNlYzFiMGEwNmM3NmI2NjJhMjc2NDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9y
LmNwcApAQCAtNjMsMTEgKzYzLDYgQEAgcHJpdmF0ZToKIAogdHlwZWRlZiBKU0J1aWx0aW5Db25z
dHJ1Y3RvcjxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4gSlNUZXN0Q2xhc3NX
aXRoSlNCdWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3RvcjsKIAotdGVtcGxhdGU8PiBKU0M6OkpT
T2JqZWN0KiBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckNvbnN0cnVjdG9yOjpj
cmVhdGVKU09iamVjdCgpCi17Ci0gICAgcmV0dXJuIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNv
bnN0cnVjdG9yOjpjcmVhdGUoZ2V0RE9NU3RydWN0dXJlPEpTVGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yPihnbG9iYWxPYmplY3QoKS0+dm0oKSwgKmdsb2JhbE9iamVjdCgpKSwgZ2xv
YmFsT2JqZWN0KCksIFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcjo6Y3JlYXRlKCkp
OwotfQotCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3JDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewogICAgIFVOVVNFRF9QQVJBTSh2
bSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>