<?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>101072</bug_id>
          
          <creation_ts>2012-11-02 11:15:20 -0700</creation_ts>
          <short_desc>[GTK] Simplify GObject DOM bindings code for handling properties</short_desc>
          <delta_ts>2012-12-04 01:43:10 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>101074</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>757360</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-02 11:15:20 -0700</bug_when>
    <thetext>We can avoid some GObject boilerplate by not defining get/set_property methods when the object doesn&apos;t have properties, or writable properties.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757368</commentid>
    <comment_count>1</comment_count>
      <attachid>172091</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-02 11:22:20 -0700</bug_when>
    <thetext>Created attachment 172091
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757442</commentid>
    <comment_count>2</comment_count>
      <attachid>172102</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-02 12:08:06 -0700</bug_when>
    <thetext>Created attachment 172102
Updated patch including new test results</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780701</commentid>
    <comment_count>3</comment_count>
      <attachid>172102</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2012-12-01 02:36:12 -0800</bug_when>
    <thetext>Comment on attachment 172102
Updated patch including new test results

Yeah, looks great.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782378</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-12-04 01:43:10 -0800</bug_when>
    <thetext>Committed r136491: &lt;http://trac.webkit.org/changeset/136491&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172091</attachid>
            <date>2012-11-02 11:22:20 -0700</date>
            <delta_ts>2012-11-02 12:08:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk-dom-properties.diff</filename>
            <type>text/plain</type>
            <size>7709</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhMmUxYjA2Li40NzVjYTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMTEtMDIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFNpbXBsaWZ5IEdPYmplY3QgRE9NIGJpbmRpbmdzIGNvZGUgZm9y
IGhhbmRsaW5nIHByb3BlcnRpZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwMTA3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIERvIG5vdCBvdmVycmlkZSBHT2JqZWN0Q2xhc3M6OnNldF9wcm9wZXJ0eSBp
ZiB0aGUgd3JhcHBlZCBvYmplY3QKKyAgICAgICAgZG9lc24ndCBoYXZlIHdyaXRhYmxlIHByb3Bl
cnRpZXMsIGFuZCBkb24ndCBvdmVycmlkZQorICAgICAgICBHT2JqZWN0Q2xhc3M6OmdldF9wcm9w
ZXJ0eSBpZiB0aGUgd3JhcHBlZCBvYmplY3QgZG9lc24ndCBoYXZlCisgICAgICAgIHByb3BlcnRp
ZXMgYXQgYWxsLiBJdCByZWR1Y2VzIHNvbWUgR09iamVjdCBib2lsZXJwbGF0ZSBpbgorICAgICAg
ICBnZW5lcmF0ZWQgY29kZSBmb3Igc29tZSBvYmplY3RzLgorCisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbToKKyAgICAgICAgKEdlbmVyYXRlUHJvcGVy
dGllcyk6CisKIDIwMTItMTEtMDEgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogTWlkZGxlIGNsaWNrIGNsb3NlcyBhbiBlZGl0
b3IgYW5kIHBhc3RlcyBzZWxlY3Rpb24gaW50byBjdXJyZW50IGVkaXRvciBvbiBMaW51eApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09i
amVjdC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdP
YmplY3QucG0KaW5kZXggYWNiN2EzNC4uNTNkMjY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JHT2JqZWN0LnBtCkBAIC01NTIs
MjUgKzU1MiwyNiBAQCBzdWIgR2VuZXJhdGVQcm9wZXJ0aWVzIHsKIAogICAgICMgUHJvcGVydGll
cwogICAgIG15ICRpbXBsQ29udGVudCA9ICIiOworICAgIG15IEByZWFkYWJsZVByb3BlcnRpZXMg
PSBHZXRSZWFkYWJsZVByb3BlcnRpZXMoJGRhdGFOb2RlLT5hdHRyaWJ1dGVzKTsKKyAgICBteSBA
d3JpdGVhYmxlUHJvcGVydGllcyA9IEdldFdyaXRlYWJsZVByb3BlcnRpZXMoXEByZWFkYWJsZVBy
b3BlcnRpZXMpOworICAgIG15ICRudW1Qcm9wZXJ0aWVzID0gc2NhbGFyIEByZWFkYWJsZVByb3Bl
cnRpZXM7CiAKICAgICAjIFByb3BlcnRpZXMKLSAgICAkaW1wbENvbnRlbnQgPSA8PCAiRU9GIjsK
KyAgICBteSAkcHJpdkZ1bmN0aW9uID0gR2V0Q29yZU9iamVjdCgkaW50ZXJmYWNlTmFtZSwgImNv
cmVTZWxmIiwgInNlbGYiKTsKKworICAgIGlmICgkbnVtUHJvcGVydGllcyA+IDApIHsKKyAgICAg
ICAgJGltcGxDb250ZW50ID0gPDwgIkVPRiI7CiBlbnVtIHsKICAgICBQUk9QXzAsCiBFT0YKLSAg
ICBwdXNoKEBjQm9keVByb3BlcnRpZXMsICRpbXBsQ29udGVudCk7CisgICAgICAgIHB1c2goQGNC
b2R5UHJvcGVydGllcywgJGltcGxDb250ZW50KTsKIAotICAgIG15IEByZWFkYWJsZVByb3BlcnRp
ZXMgPSBHZXRSZWFkYWJsZVByb3BlcnRpZXMoJGRhdGFOb2RlLT5hdHRyaWJ1dGVzKTsKLQotICAg
IG15ICRwcml2RnVuY3Rpb24gPSBHZXRDb3JlT2JqZWN0KCRpbnRlcmZhY2VOYW1lLCAiY29yZVNl
bGYiLCAic2VsZiIpOwotCi0gICAgbXkgJHR4dEdldFByb3AgPSA8PCAiRU9GIjsKKyAgICAgICAg
bXkgJHR4dEdldFByb3AgPSA8PCAiRU9GIjsKIHN0YXRpYyB2b2lkICR7bG93ZXJDYXNlSWZhY2VO
YW1lfV9nZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBHVmFs
dWUqIHZhbHVlLCBHUGFyYW1TcGVjKiBwc3BlYykKIHsKICAgICBXZWJDb3JlOjpKU01haW5UaHJl
YWROdWxsU3RhdGUgc3RhdGU7CiBFT0YKLSAgICBwdXNoKEB0eHRHZXRQcm9wcywgJHR4dEdldFBy
b3ApOwotICAgIGlmIChzY2FsYXIgQHJlYWRhYmxlUHJvcGVydGllcyA+IDApIHsKKyAgICAgICAg
cHVzaChAdHh0R2V0UHJvcHMsICR0eHRHZXRQcm9wKTsKICAgICAgICAgJHR4dEdldFByb3AgPSA8
PCAiRU9GIjsKICRjb25kaXRpb25HdWFyZFN0YXJ0CiAgICAgJHtjbGFzc05hbWV9KiBzZWxmID0g
V0VCS0lUX0RPTV8ke2Nsc0NhcHN9KG9iamVjdCk7CkBAIC01NzgsNjMgKzU3OSw2MyBAQCAkY29u
ZGl0aW9uR3VhcmRTdGFydAogJGNvbmRpdGlvbkd1YXJkRW5kCiBFT0YKICAgICAgICAgcHVzaChA
dHh0R2V0UHJvcHMsICR0eHRHZXRQcm9wKTsKLSAgICB9CiAKLSAgICAkdHh0R2V0UHJvcCA9IDw8
ICJFT0YiOworICAgICAgICAkdHh0R2V0UHJvcCA9IDw8ICJFT0YiOwogICAgIHN3aXRjaCAocHJv
cGVydHlJZCkgewogRU9GCi0gICAgcHVzaChAdHh0R2V0UHJvcHMsICR0eHRHZXRQcm9wKTsKLQot
ICAgIG15IEB3cml0ZWFibGVQcm9wZXJ0aWVzID0gR2V0V3JpdGVhYmxlUHJvcGVydGllcyhcQHJl
YWRhYmxlUHJvcGVydGllcyk7CisgICAgICAgIHB1c2goQHR4dEdldFByb3BzLCAkdHh0R2V0UHJv
cCk7CiAKLSAgICBteSAkdHh0U2V0UHJvcHMgPSA8PCAiRU9GIjsKKyAgICAgICAgaWYgKHNjYWxh
ciBAd3JpdGVhYmxlUHJvcGVydGllcyA+IDApIHsKKyAgICAgICAgICAgIG15ICR0eHRTZXRQcm9w
cyA9IDw8ICJFT0YiOwogc3RhdGljIHZvaWQgJHtsb3dlckNhc2VJZmFjZU5hbWV9X3NldF9wcm9w
ZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIGNvbnN0IEdWYWx1ZSogdmFs
dWUsIEdQYXJhbVNwZWMqIHBzcGVjKQogewogICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxT
dGF0ZSBzdGF0ZTsKIEVPRgotICAgIHB1c2goQHR4dFNldFByb3BzLCAkdHh0U2V0UHJvcHMpOwor
ICAgICAgICAgICAgcHVzaChAdHh0U2V0UHJvcHMsICR0eHRTZXRQcm9wcyk7CiAKLSAgICBpZiAo
c2NhbGFyIEB3cml0ZWFibGVQcm9wZXJ0aWVzID4gMCkgewotICAgICAgICAkdHh0U2V0UHJvcHMg
PSA8PCAiRU9GIjsKKyAgICAgICAgICAgICR0eHRTZXRQcm9wcyA9IDw8ICJFT0YiOwogJGNvbmRp
dGlvbkd1YXJkU3RhcnQKICAgICAke2NsYXNzTmFtZX0qIHNlbGYgPSBXRUJLSVRfRE9NXyR7Y2xz
Q2Fwc30ob2JqZWN0KTsKICAgICAkcHJpdkZ1bmN0aW9uCiAkY29uZGl0aW9uR3VhcmRFbmQKIEVP
RgotICAgICAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKLSAgICB9CisgICAg
ICAgICAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKIAotICAgICR0eHRTZXRQ
cm9wcyA9IDw8ICJFT0YiOworICAgICAgICAgICAgJHR4dFNldFByb3BzID0gPDwgIkVPRiI7CiAg
ICAgc3dpdGNoIChwcm9wZXJ0eUlkKSB7CiBFT0YKLSAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4
dFNldFByb3BzKTsKKyAgICAgICAgICAgIHB1c2goQHR4dFNldFByb3BzLCAkdHh0U2V0UHJvcHMp
OworICAgICAgICB9CiAKLSAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEByZWFkYWJsZVByb3Bl
cnRpZXMpIHsKLSAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSBuZSAiRXZl
bnRMaXN0ZW5lciIgJiYKLSAgICAgICAgICAgICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSBu
ZSAiTWVkaWFRdWVyeUxpc3RMaXN0ZW5lciIpIHsKLSAgICAgICAgICAgIEdlbmVyYXRlUHJvcGVy
dHkoJGF0dHJpYnV0ZSwgJGludGVyZmFjZU5hbWUsIFxAd3JpdGVhYmxlUHJvcGVydGllcywgJGRh
dGFOb2RlKTsKKyAgICAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAcmVhZGFibGVQcm9wZXJ0
aWVzKSB7CisgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlIG5lICJF
dmVudExpc3RlbmVyIiAmJgorICAgICAgICAgICAgICAgICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
dHlwZSBuZSAiTWVkaWFRdWVyeUxpc3RMaXN0ZW5lciIpIHsKKyAgICAgICAgICAgICAgICBHZW5l
cmF0ZVByb3BlcnR5KCRhdHRyaWJ1dGUsICRpbnRlcmZhY2VOYW1lLCBcQHdyaXRlYWJsZVByb3Bl
cnRpZXMsICRkYXRhTm9kZSk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICB9CiAKLSAg
ICBwdXNoKEBjQm9keVByb3BlcnRpZXMsICJ9O1xuXG4iKTsKKyAgICAgICAgcHVzaChAY0JvZHlQ
cm9wZXJ0aWVzLCAifTtcblxuIik7CiAKLSAgICAkdHh0R2V0UHJvcCA9IDw8ICJFT0YiOworICAg
ICAgICAkdHh0R2V0UHJvcCA9IDw8ICJFT0YiOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEdfT0JK
RUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRChvYmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgfQogfQogRU9GCi0gICAgcHVzaChAdHh0R2V0UHJvcHMsICR0
eHRHZXRQcm9wKTsKKyAgICAgICAgcHVzaChAdHh0R2V0UHJvcHMsICR0eHRHZXRQcm9wKTsKIAot
ICAgICR0eHRTZXRQcm9wcyA9IDw8ICJFT0YiOworICAgICAgICBpZiAoc2NhbGFyIEB3cml0ZWFi
bGVQcm9wZXJ0aWVzID4gMCkgeworICAgICAgICAgICAgJHR4dFNldFByb3BzID0gPDwgIkVPRiI7
CiAgICAgZGVmYXVsdDoKICAgICAgICAgR19PQkpFQ1RfV0FSTl9JTlZBTElEX1BST1BFUlRZX0lE
KG9iamVjdCwgcHJvcGVydHlJZCwgcHNwZWMpOwogICAgICAgICBicmVhazsKICAgICB9CiB9CiBF
T0YKLSAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKKyAgICAgICAgICAgIHB1
c2goQHR4dFNldFByb3BzLCAkdHh0U2V0UHJvcHMpOworICAgICAgICB9CisgICAgfQogCiAgICAg
IyBEbyBub3QgaW5zZXJ0IGV4dHJhIHNwYWNlcyB3aGVuIGludGVycG9sYXRpbmcgYXJyYXkgdmFy
aWFibGVzCiAgICAgJCIgPSAiIjsKQEAgLTY1OCwzMSArNjU5LDYxIEBAICRjb25kaXRpb25HdWFy
ZEVuZAogICAgIEdfT0JKRUNUX0NMQVNTKCR7bG93ZXJDYXNlSWZhY2VOYW1lfV9wYXJlbnRfY2xh
c3MpLT5maW5hbGl6ZShvYmplY3QpOwogfQogCi1AdHh0U2V0UHJvcHMKK0VPRgorICAgIHB1c2go
QGNCb2R5UHJvcGVydGllcywgJGltcGxDb250ZW50KTsKIAotQHR4dEdldFByb3BzCisgICAgaWYg
KCRudW1Qcm9wZXJ0aWVzID4gMCkgeworICAgICAgICBpZiAoc2NhbGFyIEB3cml0ZWFibGVQcm9w
ZXJ0aWVzID4gMCkgeworICAgICAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCBAdHh0U2V0
UHJvcHMpOworICAgICAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCAiXG4iKTsKKyAgICAg
ICAgfQorICAgICAgICBwdXNoKEBjQm9keVByb3BlcnRpZXMsIEB0eHRHZXRQcm9wcyk7CisgICAg
ICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgIlxuIik7CisgICAgfQogCisgICAgaWYgKHNjYWxh
ciBAdHh0SW5zdGFsbEV2ZW50TGlzdGVuZXJzID4gMCkgeworICAgICAgICAkaW1wbENvbnRlbnQg
PSA8PCAiRU9GIjsKIHN0YXRpYyB2b2lkICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9jb25zdHJ1Y3Rl
ZChHT2JqZWN0KiBvYmplY3QpCiB7CisgICAgR19PQkpFQ1RfQ0xBU1MoJHtsb3dlckNhc2VJZmFj
ZU5hbWV9X3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVjdCk7CiBFT0YKLSAgICBwdXNo
KEBjQm9keVByb3BlcnRpZXMsICRpbXBsQ29udGVudCk7CisgICAgICAgIHB1c2goQGNCb2R5UHJv
cGVydGllcywgJGltcGxDb250ZW50KTsKKyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCAi
XG4iKTsKKyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCBAdHh0SW5zdGFsbEV2ZW50TGlz
dGVuZXJzKTsKIAotICAgICRpbXBsQ29udGVudCA9IDw8ICJFT0YiOwotQHR4dEluc3RhbGxFdmVu
dExpc3RlbmVycwotICAgIGlmIChHX09CSkVDVF9DTEFTUygke2xvd2VyQ2FzZUlmYWNlTmFtZX1f
cGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQpCi0gICAgICAgIEdfT0JKRUNUX0NMQVNTKCR7bG93
ZXJDYXNlSWZhY2VOYW1lfV9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZChvYmplY3QpOworICAg
ICAgICAkaW1wbENvbnRlbnQgPSA8PCAiRU9GIjsKIH0KIAorRU9GCisgICAgICAgIHB1c2goQGNC
b2R5UHJvcGVydGllcywgJGltcGxDb250ZW50KTsKKyAgICB9CisKKyAgICAkaW1wbENvbnRlbnQg
PSA8PCAiRU9GIjsKIHN0YXRpYyB2b2lkICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9jbGFzc19pbml0
KCR7Y2xhc3NOYW1lfUNsYXNzKiByZXF1ZXN0Q2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBn
b2JqZWN0Q2xhc3MgPSBHX09CSkVDVF9DTEFTUyhyZXF1ZXN0Q2xhc3MpOwogICAgIGdvYmplY3RD
bGFzcy0+ZmluYWxpemUgPSAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fZmluYWxpemU7Ci0gICAgZ29i
amVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fc2V0X3Byb3Bl
cnR5OwotICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0gJHtsb3dlckNhc2VJZmFjZU5h
bWV9X2dldF9wcm9wZXJ0eTsKLSAgICBnb2JqZWN0Q2xhc3MtPmNvbnN0cnVjdGVkID0gJHtsb3dl
ckNhc2VJZmFjZU5hbWV9X2NvbnN0cnVjdGVkOworRU9GCisgICAgcHVzaChAY0JvZHlQcm9wZXJ0
aWVzLCAkaW1wbENvbnRlbnQpOworCisgICAgaWYgKHNjYWxhciBAdHh0SW5zdGFsbEV2ZW50TGlz
dGVuZXJzID4gMCkgeworICAgICAgICBwdXNoKEBjQm9keVByb3BlcnRpZXMsICIgICAgZ29iamVj
dENsYXNzLT5jb25zdHJ1Y3RlZCA9ICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9jb25zdHJ1Y3RlZDtc
biIpOworICAgIH0KIAotQHR4dEluc3RhbGxQcm9wcwotQHR4dEluc3RhbGxTaWduYWxzCisgICAg
aWYgKCRudW1Qcm9wZXJ0aWVzID4gMCkgeworICAgICAgICBpZiAoc2NhbGFyIEB3cml0ZWFibGVQ
cm9wZXJ0aWVzID4gMCkgeworICAgICAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCAiICAg
IGdvYmplY3RDbGFzcy0+c2V0X3Byb3BlcnR5ID0gJHtsb3dlckNhc2VJZmFjZU5hbWV9X3NldF9w
cm9wZXJ0eTtcbiIpOworICAgICAgICB9CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywg
IiAgICBnb2JqZWN0Q2xhc3MtPmdldF9wcm9wZXJ0eSA9ICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9n
ZXRfcHJvcGVydHk7XG4iKTsKKyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCAiXG4iKTsK
KyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCBAdHh0SW5zdGFsbFByb3BzKTsKKyAgICB9
CisKKyAgICBpZiAoc2NhbGFyIEB0eHRJbnN0YWxsU2lnbmFscyA+IDApIHsKKyAgICAgICAgcHVz
aChAY0JvZHlQcm9wZXJ0aWVzLCAiXG4iKTsKKyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVz
LCBAdHh0SW5zdGFsbFNpZ25hbHMpOworICAgIH0KKyAgICAkaW1wbENvbnRlbnQgPSA8PCAiRU9G
IjsKIH0KIAogc3RhdGljIHZvaWQgJHtsb3dlckNhc2VJZmFjZU5hbWV9X2luaXQoJHtjbGFzc05h
bWV9KiByZXF1ZXN0KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172102</attachid>
            <date>2012-11-02 12:08:06 -0700</date>
            <delta_ts>2012-12-01 02:36:10 -0800</delta_ts>
            <desc>Updated patch including new test results</desc>
            <filename>wk-dom-properties2.diff</filename>
            <type>text/plain</type>
            <size>39654</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhMmUxYjA2Li5lM2QxYmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUg
QEAKKzIwMTItMTEtMDIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFNpbXBsaWZ5IEdPYmplY3QgRE9NIGJpbmRpbmdzIGNvZGUgZm9y
IGhhbmRsaW5nIHByb3BlcnRpZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwMTA3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIERvIG5vdCBvdmVycmlkZSBHT2JqZWN0Q2xhc3M6OnNldF9wcm9wZXJ0eSBp
ZiB0aGUgd3JhcHBlZCBvYmplY3QKKyAgICAgICAgZG9lc24ndCBoYXZlIHdyaXRhYmxlIHByb3Bl
cnRpZXMsIGFuZCBkb24ndCBvdmVycmlkZQorICAgICAgICBHT2JqZWN0Q2xhc3M6OmdldF9wcm9w
ZXJ0eSBpZiB0aGUgd3JhcHBlZCBvYmplY3QgZG9lc24ndCBoYXZlCisgICAgICAgIHByb3BlcnRp
ZXMgYXQgYWxsLiBJdCByZWR1Y2VzIHNvbWUgR09iamVjdCBib2lsZXJwbGF0ZSBpbgorICAgICAg
ICBnZW5lcmF0ZWQgY29kZSBmb3Igc29tZSBvYmplY3RzLgorCisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbToKKyAgICAgICAgKEdlbmVyYXRlUHJvcGVy
dGllcyk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9N
RmxvYXQ2NEFycmF5LmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb21fZmxvYXQ2NGFycmF5X2NsYXNz
X2luaXQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERP
TVRlc3RBY3RpdmVET01PYmplY3QuY3BwOgorICAgICAgICAod2Via2l0X2RvbV90ZXN0X2FjdGl2
ZV9kb21fb2JqZWN0X2NsYXNzX2luaXQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9HT2JqZWN0L1dlYktpdERPTVRlc3RDYWxsYmFjay5jcHA6CisgICAgICAgICh3ZWJraXRfZG9t
X3Rlc3RfY2FsbGJhY2tfY2xhc3NfaW5pdCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcDoKKyAgICAgICAg
KHdlYmtpdF9kb21fdGVzdF9jdXN0b21fbmFtZWRfZ2V0dGVyX2NsYXNzX2luaXQpOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RFdmVudENvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb21fdGVzdF9ldmVudF9jb25zdHJ1Y3Rvcl9j
bGFzc19pbml0KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJL
aXRET01UZXN0RXZlbnRUYXJnZXQuY3BwOgorICAgICAgICAod2Via2l0X2RvbV90ZXN0X2V2ZW50
X3RhcmdldF9jbGFzc19pbml0KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09i
amVjdC9XZWJLaXRET01UZXN0RXhjZXB0aW9uLmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb21fdGVz
dF9leGNlcHRpb25fY2xhc3NfaW5pdCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0dPYmplY3QvV2ViS2l0RE9NVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAgICh3ZWJraXRfZG9t
X3Rlc3RfaW50ZXJmYWNlX2NsYXNzX2luaXQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcDoKKyAg
ICAgICAgKHdlYmtpdF9kb21fdGVzdF9tZWRpYV9xdWVyeV9saXN0X2xpc3RlbmVyX2NsYXNzX2lu
aXQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRl
c3ROYW1lZENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb21fdGVzdF9uYW1lZF9j
b25zdHJ1Y3Rvcl9jbGFzc19pbml0KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
R09iamVjdC9XZWJLaXRET01UZXN0Tm9kZS5jcHA6CisgICAgICAgICh3ZWJraXRfZG9tX3Rlc3Rf
bm9kZV9jbGFzc19pbml0KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVj
dC9XZWJLaXRET01UZXN0T2JqLmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb21fdGVzdF9vYmpfY2xh
c3NfaW5pdCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0
RE9NVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHA6CisgICAgICAgICh3ZWJr
aXRfZG9tX3Rlc3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNlX2NsYXNzX2luaXQp
OgorCiAyMDEyLTExLTAxICBWc2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IE1pZGRsZSBjbGljayBjbG9zZXMgYW4gZWRpdG9yIGFu
ZCBwYXN0ZXMgc2VsZWN0aW9uIGludG8gY3VycmVudCBlZGl0b3Igb24gTGludXgKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmplY3Qu
cG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JHT2JqZWN0
LnBtCmluZGV4IGFjYjdhMzQuLjUzZDI2NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmplY3QucG0KKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbQpAQCAtNTUyLDI1ICs1
NTIsMjYgQEAgc3ViIEdlbmVyYXRlUHJvcGVydGllcyB7CiAKICAgICAjIFByb3BlcnRpZXMKICAg
ICBteSAkaW1wbENvbnRlbnQgPSAiIjsKKyAgICBteSBAcmVhZGFibGVQcm9wZXJ0aWVzID0gR2V0
UmVhZGFibGVQcm9wZXJ0aWVzKCRkYXRhTm9kZS0+YXR0cmlidXRlcyk7CisgICAgbXkgQHdyaXRl
YWJsZVByb3BlcnRpZXMgPSBHZXRXcml0ZWFibGVQcm9wZXJ0aWVzKFxAcmVhZGFibGVQcm9wZXJ0
aWVzKTsKKyAgICBteSAkbnVtUHJvcGVydGllcyA9IHNjYWxhciBAcmVhZGFibGVQcm9wZXJ0aWVz
OwogCiAgICAgIyBQcm9wZXJ0aWVzCi0gICAgJGltcGxDb250ZW50ID0gPDwgIkVPRiI7CisgICAg
bXkgJHByaXZGdW5jdGlvbiA9IEdldENvcmVPYmplY3QoJGludGVyZmFjZU5hbWUsICJjb3JlU2Vs
ZiIsICJzZWxmIik7CisKKyAgICBpZiAoJG51bVByb3BlcnRpZXMgPiAwKSB7CisgICAgICAgICRp
bXBsQ29udGVudCA9IDw8ICJFT0YiOwogZW51bSB7CiAgICAgUFJPUF8wLAogRU9GCi0gICAgcHVz
aChAY0JvZHlQcm9wZXJ0aWVzLCAkaW1wbENvbnRlbnQpOworICAgICAgICBwdXNoKEBjQm9keVBy
b3BlcnRpZXMsICRpbXBsQ29udGVudCk7CiAKLSAgICBteSBAcmVhZGFibGVQcm9wZXJ0aWVzID0g
R2V0UmVhZGFibGVQcm9wZXJ0aWVzKCRkYXRhTm9kZS0+YXR0cmlidXRlcyk7Ci0KLSAgICBteSAk
cHJpdkZ1bmN0aW9uID0gR2V0Q29yZU9iamVjdCgkaW50ZXJmYWNlTmFtZSwgImNvcmVTZWxmIiwg
InNlbGYiKTsKLQotICAgIG15ICR0eHRHZXRQcm9wID0gPDwgIkVPRiI7CisgICAgICAgIG15ICR0
eHRHZXRQcm9wID0gPDwgIkVPRiI7CiBzdGF0aWMgdm9pZCAke2xvd2VyQ2FzZUlmYWNlTmFtZX1f
Z2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwgR1ZhbHVlKiB2
YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCiB7CiAgICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVs
bFN0YXRlIHN0YXRlOwogRU9GCi0gICAgcHVzaChAdHh0R2V0UHJvcHMsICR0eHRHZXRQcm9wKTsK
LSAgICBpZiAoc2NhbGFyIEByZWFkYWJsZVByb3BlcnRpZXMgPiAwKSB7CisgICAgICAgIHB1c2go
QHR4dEdldFByb3BzLCAkdHh0R2V0UHJvcCk7CiAgICAgICAgICR0eHRHZXRQcm9wID0gPDwgIkVP
RiI7CiAkY29uZGl0aW9uR3VhcmRTdGFydAogICAgICR7Y2xhc3NOYW1lfSogc2VsZiA9IFdFQktJ
VF9ET01fJHtjbHNDYXBzfShvYmplY3QpOwpAQCAtNTc4LDYzICs1NzksNjMgQEAgJGNvbmRpdGlv
bkd1YXJkU3RhcnQKICRjb25kaXRpb25HdWFyZEVuZAogRU9GCiAgICAgICAgIHB1c2goQHR4dEdl
dFByb3BzLCAkdHh0R2V0UHJvcCk7Ci0gICAgfQogCi0gICAgJHR4dEdldFByb3AgPSA8PCAiRU9G
IjsKKyAgICAgICAgJHR4dEdldFByb3AgPSA8PCAiRU9GIjsKICAgICBzd2l0Y2ggKHByb3BlcnR5
SWQpIHsKIEVPRgotICAgIHB1c2goQHR4dEdldFByb3BzLCAkdHh0R2V0UHJvcCk7Ci0KLSAgICBt
eSBAd3JpdGVhYmxlUHJvcGVydGllcyA9IEdldFdyaXRlYWJsZVByb3BlcnRpZXMoXEByZWFkYWJs
ZVByb3BlcnRpZXMpOworICAgICAgICBwdXNoKEB0eHRHZXRQcm9wcywgJHR4dEdldFByb3ApOwog
Ci0gICAgbXkgJHR4dFNldFByb3BzID0gPDwgIkVPRiI7CisgICAgICAgIGlmIChzY2FsYXIgQHdy
aXRlYWJsZVByb3BlcnRpZXMgPiAwKSB7CisgICAgICAgICAgICBteSAkdHh0U2V0UHJvcHMgPSA8
PCAiRU9GIjsKIHN0YXRpYyB2b2lkICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9zZXRfcHJvcGVydHko
R09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBjb25zdCBHVmFsdWUqIHZhbHVlLCBH
UGFyYW1TcGVjKiBwc3BlYykKIHsKICAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUg
c3RhdGU7CiBFT0YKLSAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKKyAgICAg
ICAgICAgIHB1c2goQHR4dFNldFByb3BzLCAkdHh0U2V0UHJvcHMpOwogCi0gICAgaWYgKHNjYWxh
ciBAd3JpdGVhYmxlUHJvcGVydGllcyA+IDApIHsKLSAgICAgICAgJHR4dFNldFByb3BzID0gPDwg
IkVPRiI7CisgICAgICAgICAgICAkdHh0U2V0UHJvcHMgPSA8PCAiRU9GIjsKICRjb25kaXRpb25H
dWFyZFN0YXJ0CiAgICAgJHtjbGFzc05hbWV9KiBzZWxmID0gV0VCS0lUX0RPTV8ke2Nsc0NhcHN9
KG9iamVjdCk7CiAgICAgJHByaXZGdW5jdGlvbgogJGNvbmRpdGlvbkd1YXJkRW5kCiBFT0YKLSAg
ICAgICAgcHVzaChAdHh0U2V0UHJvcHMsICR0eHRTZXRQcm9wcyk7Ci0gICAgfQorICAgICAgICAg
ICAgcHVzaChAdHh0U2V0UHJvcHMsICR0eHRTZXRQcm9wcyk7CiAKLSAgICAkdHh0U2V0UHJvcHMg
PSA8PCAiRU9GIjsKKyAgICAgICAgICAgICR0eHRTZXRQcm9wcyA9IDw8ICJFT0YiOwogICAgIHN3
aXRjaCAocHJvcGVydHlJZCkgewogRU9GCi0gICAgcHVzaChAdHh0U2V0UHJvcHMsICR0eHRTZXRQ
cm9wcyk7CisgICAgICAgICAgICBwdXNoKEB0eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKKyAg
ICAgICAgfQogCi0gICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAcmVhZGFibGVQcm9wZXJ0aWVz
KSB7Ci0gICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgbmUgIkV2ZW50TGlz
dGVuZXIiICYmCi0gICAgICAgICAgICAkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgbmUgIk1l
ZGlhUXVlcnlMaXN0TGlzdGVuZXIiKSB7Ci0gICAgICAgICAgICBHZW5lcmF0ZVByb3BlcnR5KCRh
dHRyaWJ1dGUsICRpbnRlcmZhY2VOYW1lLCBcQHdyaXRlYWJsZVByb3BlcnRpZXMsICRkYXRhTm9k
ZSk7CisgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHJlYWRhYmxlUHJvcGVydGllcykg
eworICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSBuZSAiRXZlbnRM
aXN0ZW5lciIgJiYKKyAgICAgICAgICAgICAgICAkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUg
bmUgIk1lZGlhUXVlcnlMaXN0TGlzdGVuZXIiKSB7CisgICAgICAgICAgICAgICAgR2VuZXJhdGVQ
cm9wZXJ0eSgkYXR0cmlidXRlLCAkaW50ZXJmYWNlTmFtZSwgXEB3cml0ZWFibGVQcm9wZXJ0aWVz
LCAkZGF0YU5vZGUpOworICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgfQogCi0gICAgcHVz
aChAY0JvZHlQcm9wZXJ0aWVzLCAifTtcblxuIik7CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVy
dGllcywgIn07XG5cbiIpOwogCi0gICAgJHR4dEdldFByb3AgPSA8PCAiRU9GIjsKKyAgICAgICAg
JHR4dEdldFByb3AgPSA8PCAiRU9GIjsKICAgICBkZWZhdWx0OgogICAgICAgICBHX09CSkVDVF9X
QVJOX0lOVkFMSURfUFJPUEVSVFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7CiAgICAg
ICAgIGJyZWFrOwogICAgIH0KIH0KIEVPRgotICAgIHB1c2goQHR4dEdldFByb3BzLCAkdHh0R2V0
UHJvcCk7CisgICAgICAgIHB1c2goQHR4dEdldFByb3BzLCAkdHh0R2V0UHJvcCk7CiAKLSAgICAk
dHh0U2V0UHJvcHMgPSA8PCAiRU9GIjsKKyAgICAgICAgaWYgKHNjYWxhciBAd3JpdGVhYmxlUHJv
cGVydGllcyA+IDApIHsKKyAgICAgICAgICAgICR0eHRTZXRQcm9wcyA9IDw8ICJFT0YiOwogICAg
IGRlZmF1bHQ6CiAgICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRChvYmpl
Y3QsIHByb3BlcnR5SWQsIHBzcGVjKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogfQogRU9GCi0g
ICAgcHVzaChAdHh0U2V0UHJvcHMsICR0eHRTZXRQcm9wcyk7CisgICAgICAgICAgICBwdXNoKEB0
eHRTZXRQcm9wcywgJHR4dFNldFByb3BzKTsKKyAgICAgICAgfQorICAgIH0KIAogICAgICMgRG8g
bm90IGluc2VydCBleHRyYSBzcGFjZXMgd2hlbiBpbnRlcnBvbGF0aW5nIGFycmF5IHZhcmlhYmxl
cwogICAgICQiID0gIiI7CkBAIC02NTgsMzEgKzY1OSw2MSBAQCAkY29uZGl0aW9uR3VhcmRFbmQK
ICAgICBHX09CSkVDVF9DTEFTUygke2xvd2VyQ2FzZUlmYWNlTmFtZX1fcGFyZW50X2NsYXNzKS0+
ZmluYWxpemUob2JqZWN0KTsKIH0KIAotQHR4dFNldFByb3BzCitFT0YKKyAgICBwdXNoKEBjQm9k
eVByb3BlcnRpZXMsICRpbXBsQ29udGVudCk7CiAKLUB0eHRHZXRQcm9wcworICAgIGlmICgkbnVt
UHJvcGVydGllcyA+IDApIHsKKyAgICAgICAgaWYgKHNjYWxhciBAd3JpdGVhYmxlUHJvcGVydGll
cyA+IDApIHsKKyAgICAgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgQHR4dFNldFByb3Bz
KTsKKyAgICAgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgIlxuIik7CisgICAgICAgIH0K
KyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCBAdHh0R2V0UHJvcHMpOworICAgICAgICBw
dXNoKEBjQm9keVByb3BlcnRpZXMsICJcbiIpOworICAgIH0KIAorICAgIGlmIChzY2FsYXIgQHR4
dEluc3RhbGxFdmVudExpc3RlbmVycyA+IDApIHsKKyAgICAgICAgJGltcGxDb250ZW50ID0gPDwg
IkVPRiI7CiBzdGF0aWMgdm9pZCAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fY29uc3RydWN0ZWQoR09i
amVjdCogb2JqZWN0KQogeworICAgIEdfT0JKRUNUX0NMQVNTKCR7bG93ZXJDYXNlSWZhY2VOYW1l
fV9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZChvYmplY3QpOwogRU9GCi0gICAgcHVzaChAY0Jv
ZHlQcm9wZXJ0aWVzLCAkaW1wbENvbnRlbnQpOworICAgICAgICBwdXNoKEBjQm9keVByb3BlcnRp
ZXMsICRpbXBsQ29udGVudCk7CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgIlxuIik7
CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgQHR4dEluc3RhbGxFdmVudExpc3RlbmVy
cyk7CiAKLSAgICAkaW1wbENvbnRlbnQgPSA8PCAiRU9GIjsKLUB0eHRJbnN0YWxsRXZlbnRMaXN0
ZW5lcnMKLSAgICBpZiAoR19PQkpFQ1RfQ0xBU1MoJHtsb3dlckNhc2VJZmFjZU5hbWV9X3BhcmVu
dF9jbGFzcyktPmNvbnN0cnVjdGVkKQotICAgICAgICBHX09CSkVDVF9DTEFTUygke2xvd2VyQ2Fz
ZUlmYWNlTmFtZX1fcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0KTsKKyAgICAgICAg
JGltcGxDb250ZW50ID0gPDwgIkVPRiI7CiB9CiAKK0VPRgorICAgICAgICBwdXNoKEBjQm9keVBy
b3BlcnRpZXMsICRpbXBsQ29udGVudCk7CisgICAgfQorCisgICAgJGltcGxDb250ZW50ID0gPDwg
IkVPRiI7CiBzdGF0aWMgdm9pZCAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fY2xhc3NfaW5pdCgke2Ns
YXNzTmFtZX1DbGFzcyogcmVxdWVzdENsYXNzKQogewogICAgIEdPYmplY3RDbGFzcyogZ29iamVj
dENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVxdWVzdENsYXNzKTsKICAgICBnb2JqZWN0Q2xhc3Mt
PmZpbmFsaXplID0gJHtsb3dlckNhc2VJZmFjZU5hbWV9X2ZpbmFsaXplOwotICAgIGdvYmplY3RD
bGFzcy0+c2V0X3Byb3BlcnR5ID0gJHtsb3dlckNhc2VJZmFjZU5hbWV9X3NldF9wcm9wZXJ0eTsK
LSAgICBnb2JqZWN0Q2xhc3MtPmdldF9wcm9wZXJ0eSA9ICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9n
ZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5jb25zdHJ1Y3RlZCA9ICR7bG93ZXJDYXNl
SWZhY2VOYW1lfV9jb25zdHJ1Y3RlZDsKK0VPRgorICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywg
JGltcGxDb250ZW50KTsKKworICAgIGlmIChzY2FsYXIgQHR4dEluc3RhbGxFdmVudExpc3RlbmVy
cyA+IDApIHsKKyAgICAgICAgcHVzaChAY0JvZHlQcm9wZXJ0aWVzLCAiICAgIGdvYmplY3RDbGFz
cy0+Y29uc3RydWN0ZWQgPSAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fY29uc3RydWN0ZWQ7XG4iKTsK
KyAgICB9CiAKLUB0eHRJbnN0YWxsUHJvcHMKLUB0eHRJbnN0YWxsU2lnbmFscworICAgIGlmICgk
bnVtUHJvcGVydGllcyA+IDApIHsKKyAgICAgICAgaWYgKHNjYWxhciBAd3JpdGVhYmxlUHJvcGVy
dGllcyA+IDApIHsKKyAgICAgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgIiAgICBnb2Jq
ZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9ICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9zZXRfcHJvcGVy
dHk7XG4iKTsKKyAgICAgICAgfQorICAgICAgICBwdXNoKEBjQm9keVByb3BlcnRpZXMsICIgICAg
Z29iamVjdENsYXNzLT5nZXRfcHJvcGVydHkgPSAke2xvd2VyQ2FzZUlmYWNlTmFtZX1fZ2V0X3By
b3BlcnR5O1xuIik7CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgIlxuIik7CisgICAg
ICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgQHR4dEluc3RhbGxQcm9wcyk7CisgICAgfQorCisg
ICAgaWYgKHNjYWxhciBAdHh0SW5zdGFsbFNpZ25hbHMgPiAwKSB7CisgICAgICAgIHB1c2goQGNC
b2R5UHJvcGVydGllcywgIlxuIik7CisgICAgICAgIHB1c2goQGNCb2R5UHJvcGVydGllcywgQHR4
dEluc3RhbGxTaWduYWxzKTsKKyAgICB9CisgICAgJGltcGxDb250ZW50ID0gPDwgIkVPRiI7CiB9
CiAKIHN0YXRpYyB2b2lkICR7bG93ZXJDYXNlSWZhY2VOYW1lfV9pbml0KCR7Y2xhc3NOYW1lfSog
cmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9HT2JqZWN0L1dlYktpdERPTUZsb2F0NjRBcnJheS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01GbG9hdDY0QXJyYXkuY3BwCmluZGV4
IDNhYjhkNGEuLjVjMWRjN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTUZsb2F0NjRBcnJheS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NRmxvYXQ2NEFy
cmF5LmNwcApAQCAtNzcsMTAgKzc3LDYgQEAgV2ViS2l0RE9NRmxvYXQ2NEFycmF5KiB3cmFwRmxv
YXQ2NEFycmF5KFdlYkNvcmU6OkZsb2F0NjRBcnJheSogY29yZU9iamVjdCkKIAogR19ERUZJTkVf
VFlQRShXZWJLaXRET01GbG9hdDY0QXJyYXksIHdlYmtpdF9kb21fZmxvYXQ2NGFycmF5LCBXRUJL
SVRfVFlQRV9ET01fQVJSQVlfQlVGRkVSX1ZJRVcpCiAKLWVudW0gewotICAgIFBST1BfMCwKLX07
Ci0KIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fZmxvYXQ2NGFycmF5X2ZpbmFsaXplKEdPYmplY3Qq
IG9iamVjdCkKIHsKIApAQCAtOTksNDUgKzk1LDEwIEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21f
ZmxvYXQ2NGFycmF5X2ZpbmFsaXplKEdPYmplY3QqIG9iamVjdCkKICAgICBHX09CSkVDVF9DTEFT
Uyh3ZWJraXRfZG9tX2Zsb2F0NjRhcnJheV9wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZShvYmplY3Qp
OwogfQogCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX2Zsb2F0NjRhcnJheV9zZXRfcHJvcGVydHko
R09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBjb25zdCBHVmFsdWUqIHZhbHVlLCBH
UGFyYW1TcGVjKiBwc3BlYykKLXsKLSAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUg
c3RhdGU7Ci0gICAgc3dpdGNoIChwcm9wZXJ0eUlkKSB7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAg
R19PQkpFQ1RfV0FSTl9JTlZBTElEX1BST1BFUlRZX0lEKG9iamVjdCwgcHJvcGVydHlJZCwgcHNw
ZWMpOwotICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLQotc3RhdGljIHZvaWQgd2Via2l0X2Rv
bV9mbG9hdDY0YXJyYXlfZ2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVy
dHlJZCwgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCi17Ci0gICAgV2ViQ29yZTo6
SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOwotICAgIHN3aXRjaCAocHJvcGVydHlJZCkgewot
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRChv
YmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotfQotCi0K
LXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fZmxvYXQ2NGFycmF5X2NvbnN0cnVjdGVkKEdPYmplY3Qq
IG9iamVjdCkKLXsKLQotICAgIGlmIChHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX2Zsb2F0NjRh
cnJheV9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZCkKLSAgICAgICAgR19PQkpFQ1RfQ0xBU1Mo
d2Via2l0X2RvbV9mbG9hdDY0YXJyYXlfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0
KTsKLX0KLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV9mbG9hdDY0YXJyYXlfY2xhc3NfaW5pdChX
ZWJLaXRET01GbG9hdDY0QXJyYXlDbGFzcyogcmVxdWVzdENsYXNzKQogewogICAgIEdPYmplY3RD
bGFzcyogZ29iamVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVxdWVzdENsYXNzKTsKICAgICBn
b2JqZWN0Q2xhc3MtPmZpbmFsaXplID0gd2Via2l0X2RvbV9mbG9hdDY0YXJyYXlfZmluYWxpemU7
Ci0gICAgZ29iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9tX2Zsb2F0NjRhcnJh
eV9zZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5nZXRfcHJvcGVydHkgPSB3ZWJraXRf
ZG9tX2Zsb2F0NjRhcnJheV9nZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5jb25zdHJ1
Y3RlZCA9IHdlYmtpdF9kb21fZmxvYXQ2NGFycmF5X2NvbnN0cnVjdGVkOwotCi0KLQogfQogCiBz
dGF0aWMgdm9pZCB3ZWJraXRfZG9tX2Zsb2F0NjRhcnJheV9pbml0KFdlYktpdERPTUZsb2F0NjRB
cnJheSogcmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RBY3RpdmVET01PYmplY3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEFjdGl2
ZURPTU9iamVjdC5jcHAKaW5kZXggMzExMGQ0Zi4uMjkyMWQwYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEFjdGl2
ZURPTU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0dPYmplY3QvV2ViS2l0RE9NVGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKQEAgLTk3LDE3ICs5Nyw2
IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9hY3RpdmVfZG9tX29iamVjdF9maW5hbGl6
ZShHT2JqZWN0KiBvYmplY3QpCiAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2Fj
dGl2ZV9kb21fb2JqZWN0X3BhcmVudF9jbGFzcyktPmZpbmFsaXplKG9iamVjdCk7CiB9CiAKLXN0
YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9hY3RpdmVfZG9tX29iamVjdF9zZXRfcHJvcGVydHko
R09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBjb25zdCBHVmFsdWUqIHZhbHVlLCBH
UGFyYW1TcGVjKiBwc3BlYykKLXsKLSAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUg
c3RhdGU7Ci0gICAgc3dpdGNoIChwcm9wZXJ0eUlkKSB7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAg
R19PQkpFQ1RfV0FSTl9JTlZBTElEX1BST1BFUlRZX0lEKG9iamVjdCwgcHJvcGVydHlJZCwgcHNw
ZWMpOwotICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLQogc3RhdGljIHZvaWQgd2Via2l0X2Rv
bV90ZXN0X2FjdGl2ZV9kb21fb2JqZWN0X2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1
aW50IHByb3BlcnR5SWQsIEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMqIHBzcGVjKQogewogICAg
IFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKQEAgLTEyNiwyMSArMTE1LDEx
IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9hY3RpdmVfZG9tX29iamVjdF9nZXRfcHJv
cGVydHkoR09iamVjdCogb2JqZWN0LCBndWluCiAgICAgfQogfQogCi0KLXN0YXRpYyB2b2lkIHdl
YmtpdF9kb21fdGVzdF9hY3RpdmVfZG9tX29iamVjdF9jb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmpl
Y3QpCi17Ci0KLSAgICBpZiAoR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2FjdGl2ZV9k
b21fb2JqZWN0X3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKQotICAgICAgICBHX09CSkVDVF9D
TEFTUyh3ZWJraXRfZG9tX3Rlc3RfYWN0aXZlX2RvbV9vYmplY3RfcGFyZW50X2NsYXNzKS0+Y29u
c3RydWN0ZWQob2JqZWN0KTsKLX0KLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2FjdGl2
ZV9kb21fb2JqZWN0X2NsYXNzX2luaXQoV2ViS2l0RE9NVGVzdEFjdGl2ZURPTU9iamVjdENsYXNz
KiByZXF1ZXN0Q2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBnb2JqZWN0Q2xhc3MgPSBHX09C
SkVDVF9DTEFTUyhyZXF1ZXN0Q2xhc3MpOwogICAgIGdvYmplY3RDbGFzcy0+ZmluYWxpemUgPSB3
ZWJraXRfZG9tX3Rlc3RfYWN0aXZlX2RvbV9vYmplY3RfZmluYWxpemU7Ci0gICAgZ29iamVjdENs
YXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9tX3Rlc3RfYWN0aXZlX2RvbV9vYmplY3Rfc2V0
X3Byb3BlcnR5OwogICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0gd2Via2l0X2RvbV90
ZXN0X2FjdGl2ZV9kb21fb2JqZWN0X2dldF9wcm9wZXJ0eTsKLSAgICBnb2JqZWN0Q2xhc3MtPmNv
bnN0cnVjdGVkID0gd2Via2l0X2RvbV90ZXN0X2FjdGl2ZV9kb21fb2JqZWN0X2NvbnN0cnVjdGVk
OwogCiAgICAgZ19vYmplY3RfY2xhc3NfaW5zdGFsbF9wcm9wZXJ0eShnb2JqZWN0Q2xhc3MsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUk9QX0VYQ0lUSU5HX0FUVFIsCkBA
IC0xNTEsOCArMTMwLDYgQEAgc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2FjdGl2ZV9kb21f
b2JqZWN0X2NsYXNzX2luaXQoV2ViS2l0RE9NVGVzdEFjdGl2ZURPTU8KIEdfTUFYTE9ORywgLyog
bWF4ICovCiAwLCAvKiBkZWZhdWx0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdFQktJVF9QQVJBTV9SRUFEQUJMRSkpOwotCi0K
IH0KIAogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2FjdGl2ZV9kb21fb2JqZWN0X2luaXQo
V2ViS2l0RE9NVGVzdEFjdGl2ZURPTU9iamVjdCogcmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RDYWxs
YmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9X
ZWJLaXRET01UZXN0Q2FsbGJhY2suY3BwCmluZGV4IDVjYjIxZmUuLjFkNzc3MzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERP
TVRlc3RDYWxsYmFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdENhbGxiYWNrLmNwcApAQCAtODgsMTAgKzg4LDYgQEAg
V2ViS2l0RE9NVGVzdENhbGxiYWNrKiB3cmFwVGVzdENhbGxiYWNrKFdlYkNvcmU6OlRlc3RDYWxs
YmFjayogY29yZU9iamVjdCkKIAogR19ERUZJTkVfVFlQRShXZWJLaXRET01UZXN0Q2FsbGJhY2ss
IHdlYmtpdF9kb21fdGVzdF9jYWxsYmFjaywgV0VCS0lUX1RZUEVfRE9NX09CSkVDVCkKIAotZW51
bSB7Ci0gICAgUFJPUF8wLAotfTsKLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2NhbGxi
YWNrX2ZpbmFsaXplKEdPYmplY3QqIG9iamVjdCkKIHsKICNpZiBFTkFCTEUoU1FMX0RBVEFCQVNF
KQpAQCAtMTEwLDQ1ICsxMDYsMTAgQEAgc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2NhbGxi
YWNrX2ZpbmFsaXplKEdPYmplY3QqIG9iamVjdCkKICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRf
ZG9tX3Rlc3RfY2FsbGJhY2tfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKIH0KIAot
c3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2NhbGxiYWNrX3NldF9wcm9wZXJ0eShHT2JqZWN0
KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIGNvbnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNw
ZWMqIHBzcGVjKQotewotICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsK
LSAgICBzd2l0Y2ggKHByb3BlcnR5SWQpIHsKLSAgICBkZWZhdWx0OgotICAgICAgICBHX09CSkVD
VF9XQVJOX0lOVkFMSURfUFJPUEVSVFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7Ci0g
ICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQotCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rf
Y2FsbGJhY2tfZ2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwg
R1ZhbHVlKiB2YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCi17Ci0gICAgV2ViQ29yZTo6SlNNYWlu
VGhyZWFkTnVsbFN0YXRlIHN0YXRlOwotICAgIHN3aXRjaCAocHJvcGVydHlJZCkgewotICAgIGRl
ZmF1bHQ6Ci0gICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRChvYmplY3Qs
IHByb3BlcnR5SWQsIHBzcGVjKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotfQotCi0KLXN0YXRp
YyB2b2lkIHdlYmtpdF9kb21fdGVzdF9jYWxsYmFja19jb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmpl
Y3QpCi17Ci0KLSAgICBpZiAoR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2NhbGxiYWNr
X3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKQotICAgICAgICBHX09CSkVDVF9DTEFTUyh3ZWJr
aXRfZG9tX3Rlc3RfY2FsbGJhY2tfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0KTsK
LX0KLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2NhbGxiYWNrX2NsYXNzX2luaXQoV2Vi
S2l0RE9NVGVzdENhbGxiYWNrQ2xhc3MqIHJlcXVlc3RDbGFzcykKIHsKICAgICBHT2JqZWN0Q2xh
c3MqIGdvYmplY3RDbGFzcyA9IEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFzcyk7CiAgICAgZ29i
amVjdENsYXNzLT5maW5hbGl6ZSA9IHdlYmtpdF9kb21fdGVzdF9jYWxsYmFja19maW5hbGl6ZTsK
LSAgICBnb2JqZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9IHdlYmtpdF9kb21fdGVzdF9jYWxsYmFj
a19zZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5nZXRfcHJvcGVydHkgPSB3ZWJraXRf
ZG9tX3Rlc3RfY2FsbGJhY2tfZ2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFzcy0+Y29uc3Ry
dWN0ZWQgPSB3ZWJraXRfZG9tX3Rlc3RfY2FsbGJhY2tfY29uc3RydWN0ZWQ7Ci0KLQotCiB9CiAK
IHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9jYWxsYmFja19pbml0KFdlYktpdERPTVRlc3RD
YWxsYmFjayogcmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RDdXN0b21OYW1lZEdldHRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0
Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwCmluZGV4IDMwNmJhZWEuLmVhMWM2ZjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRl
c3RDdXN0b21OYW1lZEdldHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcApAQCAt
NzIsMTAgKzcyLDYgQEAgV2ViS2l0RE9NVGVzdEN1c3RvbU5hbWVkR2V0dGVyKiB3cmFwVGVzdEN1
c3RvbU5hbWVkR2V0dGVyKFdlYkNvcmU6OlRlc3RDdXN0b21OYW0KIAogR19ERUZJTkVfVFlQRShX
ZWJLaXRET01UZXN0Q3VzdG9tTmFtZWRHZXR0ZXIsIHdlYmtpdF9kb21fdGVzdF9jdXN0b21fbmFt
ZWRfZ2V0dGVyLCBXRUJLSVRfVFlQRV9ET01fT0JKRUNUKQogCi1lbnVtIHsKLSAgICBQUk9QXzAs
Ci19OwotCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfY3VzdG9tX25hbWVkX2dldHRlcl9m
aW5hbGl6ZShHT2JqZWN0KiBvYmplY3QpCiB7CiAKQEAgLTk0LDQ1ICs5MCwxMCBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRfZG9tX3Rlc3RfY3VzdG9tX25hbWVkX2dldHRlcl9maW5hbGl6ZShHT2JqZWN0
KiBvYmplY3QpCiAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1l
ZF9nZXR0ZXJfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKIH0KIAotc3RhdGljIHZv
aWQgd2Via2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1lZF9nZXR0ZXJfc2V0X3Byb3BlcnR5KEdPYmpl
Y3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwgY29uc3QgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFt
U3BlYyogcHNwZWMpCi17Ci0gICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRl
OwotICAgIHN3aXRjaCAocHJvcGVydHlJZCkgewotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEdfT0JK
RUNUX1dBUk5fSU5WQUxJRF9QUk9QRVJUWV9JRChvYmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsK
LSAgICAgICAgYnJlYWs7Ci0gICAgfQotfQotCi0KLXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVz
dF9jdXN0b21fbmFtZWRfZ2V0dGVyX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50
IHByb3BlcnR5SWQsIEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMqIHBzcGVjKQotewotICAgIFdl
YkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKLSAgICBzd2l0Y2ggKHByb3BlcnR5
SWQpIHsKLSAgICBkZWZhdWx0OgotICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJPUEVS
VFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0K
LX0KLQotCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfY3VzdG9tX25hbWVkX2dldHRlcl9j
b25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCi17Ci0KLSAgICBpZiAoR19PQkpFQ1RfQ0xBU1Mo
d2Via2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1lZF9nZXR0ZXJfcGFyZW50X2NsYXNzKS0+Y29uc3Ry
dWN0ZWQpCi0gICAgICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9jdXN0b21fbmFt
ZWRfZ2V0dGVyX3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVjdCk7Ci19Ci0KIHN0YXRp
YyB2b2lkIHdlYmtpdF9kb21fdGVzdF9jdXN0b21fbmFtZWRfZ2V0dGVyX2NsYXNzX2luaXQoV2Vi
S2l0RE9NVGVzdEN1c3RvbU5hbWVkR2V0dGVyQ2xhc3MqIHJlcXVlc3RDbGFzcykKIHsKICAgICBH
T2JqZWN0Q2xhc3MqIGdvYmplY3RDbGFzcyA9IEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFzcyk7
CiAgICAgZ29iamVjdENsYXNzLT5maW5hbGl6ZSA9IHdlYmtpdF9kb21fdGVzdF9jdXN0b21fbmFt
ZWRfZ2V0dGVyX2ZpbmFsaXplOwotICAgIGdvYmplY3RDbGFzcy0+c2V0X3Byb3BlcnR5ID0gd2Vi
a2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1lZF9nZXR0ZXJfc2V0X3Byb3BlcnR5OwotICAgIGdvYmpl
Y3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0gd2Via2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1lZF9nZXR0
ZXJfZ2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFzcy0+Y29uc3RydWN0ZWQgPSB3ZWJraXRf
ZG9tX3Rlc3RfY3VzdG9tX25hbWVkX2dldHRlcl9jb25zdHJ1Y3RlZDsKLQotCi0KIH0KIAogc3Rh
dGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2N1c3RvbV9uYW1lZF9nZXR0ZXJfaW5pdChXZWJLaXRE
T01UZXN0Q3VzdG9tTmFtZWRHZXR0ZXIqIHJlcXVlc3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0RXZlbnRDb25z
dHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVj
dC9XZWJLaXRET01UZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggOWVkNzQ1Ni4uOGRmYTll
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmpl
Y3QvV2ViS2l0RE9NVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RFdmVudENvbnN0cnVj
dG9yLmNwcApAQCAtOTYsMTcgKzk2LDYgQEAgc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2V2
ZW50X2NvbnN0cnVjdG9yX2ZpbmFsaXplKEdPYmplY3QqIG9iamVjdCkKICAgICBHX09CSkVDVF9D
TEFTUyh3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfY29uc3RydWN0b3JfcGFyZW50X2NsYXNzKS0+Zmlu
YWxpemUob2JqZWN0KTsKIH0KIAotc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2V2ZW50X2Nv
bnN0cnVjdG9yX3NldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQs
IGNvbnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMqIHBzcGVjKQotewotICAgIFdlYkNvcmU6
OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKLSAgICBzd2l0Y2ggKHByb3BlcnR5SWQpIHsK
LSAgICBkZWZhdWx0OgotICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJPUEVSVFlfSUQo
b2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQot
CiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfY29uc3RydWN0b3JfZ2V0X3Byb3Bl
cnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwgR1ZhbHVlKiB2YWx1ZSwgR1Bh
cmFtU3BlYyogcHNwZWMpCiB7CiAgICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0
YXRlOwpAQCAtMTI5LDIxICsxMTgsMTEgQEAgc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2V2
ZW50X2NvbnN0cnVjdG9yX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW4KICAgICB9
CiB9CiAKLQotc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2V2ZW50X2NvbnN0cnVjdG9yX2Nv
bnN0cnVjdGVkKEdPYmplY3QqIG9iamVjdCkKLXsKLQotICAgIGlmIChHX09CSkVDVF9DTEFTUyh3
ZWJraXRfZG9tX3Rlc3RfZXZlbnRfY29uc3RydWN0b3JfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0
ZWQpCi0gICAgICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9ldmVudF9jb25zdHJ1
Y3Rvcl9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZChvYmplY3QpOwotfQotCiBzdGF0aWMgdm9p
ZCB3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfY29uc3RydWN0b3JfY2xhc3NfaW5pdChXZWJLaXRET01U
ZXN0RXZlbnRDb25zdHJ1Y3RvckNsYXNzKiByZXF1ZXN0Q2xhc3MpCiB7CiAgICAgR09iamVjdENs
YXNzKiBnb2JqZWN0Q2xhc3MgPSBHX09CSkVDVF9DTEFTUyhyZXF1ZXN0Q2xhc3MpOwogICAgIGdv
YmplY3RDbGFzcy0+ZmluYWxpemUgPSB3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfY29uc3RydWN0b3Jf
ZmluYWxpemU7Ci0gICAgZ29iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9tX3Rl
c3RfZXZlbnRfY29uc3RydWN0b3Jfc2V0X3Byb3BlcnR5OwogICAgIGdvYmplY3RDbGFzcy0+Z2V0
X3Byb3BlcnR5ID0gd2Via2l0X2RvbV90ZXN0X2V2ZW50X2NvbnN0cnVjdG9yX2dldF9wcm9wZXJ0
eTsKLSAgICBnb2JqZWN0Q2xhc3MtPmNvbnN0cnVjdGVkID0gd2Via2l0X2RvbV90ZXN0X2V2ZW50
X2NvbnN0cnVjdG9yX2NvbnN0cnVjdGVkOwogCiAgICAgZ19vYmplY3RfY2xhc3NfaW5zdGFsbF9w
cm9wZXJ0eShnb2JqZWN0Q2xhc3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBQUk9QX0FUVFIxLApAQCAtMTU5LDggKzEzOCw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21f
dGVzdF9ldmVudF9jb25zdHJ1Y3Rvcl9jbGFzc19pbml0KFdlYktpdERPTVRlc3RFdmVudENvbnN0
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJyZWFkLW9ubHkgIGdjaGFyKiBUZXN0RXZlbnRDb25zdHJ1Y3Rvci5hdHRyMiIsIC8qIGxv
bmdlciAtIGNvdWxkIGRvIHdpdGggc29tZSBleHRyYSBkb2Mgc3R1ZmYgaGVyZSAqLwogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIiwg
LyogZGVmYXVsdCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBXRUJLSVRfUEFSQU1fUkVBREFCTEUpKTsKLQotCiB9CiAKIHN0YXRp
YyB2b2lkIHdlYmtpdF9kb21fdGVzdF9ldmVudF9jb25zdHJ1Y3Rvcl9pbml0KFdlYktpdERPTVRl
c3RFdmVudENvbnN0cnVjdG9yKiByZXF1ZXN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEV2ZW50VGFyZ2V0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERP
TVRlc3RFdmVudFRhcmdldC5jcHAKaW5kZXggMDIzM2NkZi4uZWI0ZjMxMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVz
dEV2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvR09iamVjdC9XZWJLaXRET01UZXN0RXZlbnRUYXJnZXQuY3BwCkBAIC0xMTIsMTAgKzExMiw2
IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fZXZlbnRfdGFyZ2V0X2luaXQoV2ViS2l0RE9NRXZl
bnRUYXJnZXRJZmFjZSogaWZhY2UpCiAKIEdfREVGSU5FX1RZUEVfV0lUSF9DT0RFKFdlYktpdERP
TVRlc3RFdmVudFRhcmdldCwgd2Via2l0X2RvbV90ZXN0X2V2ZW50X3RhcmdldCwgV0VCS0lUX1RZ
UEVfRE9NX09CSkVDVCwgR19JTVBMRU1FTlRfSU5URVJGQUNFKFdFQktJVF9UWVBFX0RPTV9FVkVO
VF9UQVJHRVQsIHdlYmtpdF9kb21fZXZlbnRfdGFyZ2V0X2luaXQpKQogCi1lbnVtIHsKLSAgICBQ
Uk9QXzAsCi19OwotCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfdGFyZ2V0X2Zp
bmFsaXplKEdPYmplY3QqIG9iamVjdCkKIHsKIApAQCAtMTM0LDQ1ICsxMzAsMTAgQEAgc3RhdGlj
IHZvaWQgd2Via2l0X2RvbV90ZXN0X2V2ZW50X3RhcmdldF9maW5hbGl6ZShHT2JqZWN0KiBvYmpl
Y3QpCiAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2V2ZW50X3RhcmdldF9wYXJl
bnRfY2xhc3MpLT5maW5hbGl6ZShvYmplY3QpOwogfQogCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9t
X3Rlc3RfZXZlbnRfdGFyZ2V0X3NldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHBy
b3BlcnR5SWQsIGNvbnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMqIHBzcGVjKQotewotICAg
IFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKLSAgICBzd2l0Y2ggKHByb3Bl
cnR5SWQpIHsKLSAgICBkZWZhdWx0OgotICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJP
UEVSVFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7Ci0gICAgICAgIGJyZWFrOwotICAg
IH0KLX0KLQotCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfdGFyZ2V0X2dldF9w
cm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIEdWYWx1ZSogdmFsdWUs
IEdQYXJhbVNwZWMqIHBzcGVjKQotewotICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0
ZSBzdGF0ZTsKLSAgICBzd2l0Y2ggKHByb3BlcnR5SWQpIHsKLSAgICBkZWZhdWx0OgotICAgICAg
ICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJPUEVSVFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBw
c3BlYyk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQotCi1zdGF0aWMgdm9pZCB3ZWJraXRf
ZG9tX3Rlc3RfZXZlbnRfdGFyZ2V0X2NvbnN0cnVjdGVkKEdPYmplY3QqIG9iamVjdCkKLXsKLQot
ICAgIGlmIChHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3RfZXZlbnRfdGFyZ2V0X3BhcmVu
dF9jbGFzcyktPmNvbnN0cnVjdGVkKQotICAgICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9t
X3Rlc3RfZXZlbnRfdGFyZ2V0X3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVjdCk7Ci19
Ci0KIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9ldmVudF90YXJnZXRfY2xhc3NfaW5pdChX
ZWJLaXRET01UZXN0RXZlbnRUYXJnZXRDbGFzcyogcmVxdWVzdENsYXNzKQogewogICAgIEdPYmpl
Y3RDbGFzcyogZ29iamVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVxdWVzdENsYXNzKTsKICAg
ICBnb2JqZWN0Q2xhc3MtPmZpbmFsaXplID0gd2Via2l0X2RvbV90ZXN0X2V2ZW50X3RhcmdldF9m
aW5hbGl6ZTsKLSAgICBnb2JqZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9IHdlYmtpdF9kb21fdGVz
dF9ldmVudF90YXJnZXRfc2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3Bl
cnR5ID0gd2Via2l0X2RvbV90ZXN0X2V2ZW50X3RhcmdldF9nZXRfcHJvcGVydHk7Ci0gICAgZ29i
amVjdENsYXNzLT5jb25zdHJ1Y3RlZCA9IHdlYmtpdF9kb21fdGVzdF9ldmVudF90YXJnZXRfY29u
c3RydWN0ZWQ7Ci0KLQotCiB9CiAKIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9ldmVudF90
YXJnZXRfaW5pdChXZWJLaXRET01UZXN0RXZlbnRUYXJnZXQqIHJlcXVlc3QpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01U
ZXN0RXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9H
T2JqZWN0L1dlYktpdERPTVRlc3RFeGNlcHRpb24uY3BwCmluZGV4IDA4OWU5MWYuLjcwOWJkODcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0
L1dlYktpdERPTVRlc3RFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RFeGNlcHRpb24uY3BwCkBAIC05NSwx
NyArOTUsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfZXhjZXB0aW9uX2ZpbmFsaXpl
KEdPYmplY3QqIG9iamVjdCkKICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3RfZXhj
ZXB0aW9uX3BhcmVudF9jbGFzcyktPmZpbmFsaXplKG9iamVjdCk7CiB9CiAKLXN0YXRpYyB2b2lk
IHdlYmtpdF9kb21fdGVzdF9leGNlcHRpb25fc2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwg
Z3VpbnQgcHJvcGVydHlJZCwgY29uc3QgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMp
Ci17Ci0gICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOwotICAgIHN3aXRj
aCAocHJvcGVydHlJZCkgewotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEdfT0JKRUNUX1dBUk5fSU5W
QUxJRF9QUk9QRVJUWV9JRChvYmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsKLSAgICAgICAgYnJl
YWs7Ci0gICAgfQotfQotCi0KIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9leGNlcHRpb25f
Z2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwgR1ZhbHVlKiB2
YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCiB7CiAgICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVs
bFN0YXRlIHN0YXRlOwpAQCAtMTI0LDIxICsxMTMsMTEgQEAgc3RhdGljIHZvaWQgd2Via2l0X2Rv
bV90ZXN0X2V4Y2VwdGlvbl9nZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9w
ZXIKICAgICB9CiB9CiAKLQotc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2V4Y2VwdGlvbl9j
b25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCi17Ci0KLSAgICBpZiAoR19PQkpFQ1RfQ0xBU1Mo
d2Via2l0X2RvbV90ZXN0X2V4Y2VwdGlvbl9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZCkKLSAg
ICAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X2V4Y2VwdGlvbl9wYXJlbnRfY2xh
c3MpLT5jb25zdHJ1Y3RlZChvYmplY3QpOwotfQotCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rl
c3RfZXhjZXB0aW9uX2NsYXNzX2luaXQoV2ViS2l0RE9NVGVzdEV4Y2VwdGlvbkNsYXNzKiByZXF1
ZXN0Q2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBnb2JqZWN0Q2xhc3MgPSBHX09CSkVDVF9D
TEFTUyhyZXF1ZXN0Q2xhc3MpOwogICAgIGdvYmplY3RDbGFzcy0+ZmluYWxpemUgPSB3ZWJraXRf
ZG9tX3Rlc3RfZXhjZXB0aW9uX2ZpbmFsaXplOwotICAgIGdvYmplY3RDbGFzcy0+c2V0X3Byb3Bl
cnR5ID0gd2Via2l0X2RvbV90ZXN0X2V4Y2VwdGlvbl9zZXRfcHJvcGVydHk7CiAgICAgZ29iamVj
dENsYXNzLT5nZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9tX3Rlc3RfZXhjZXB0aW9uX2dldF9wcm9w
ZXJ0eTsKLSAgICBnb2JqZWN0Q2xhc3MtPmNvbnN0cnVjdGVkID0gd2Via2l0X2RvbV90ZXN0X2V4
Y2VwdGlvbl9jb25zdHJ1Y3RlZDsKIAogICAgIGdfb2JqZWN0X2NsYXNzX2luc3RhbGxfcHJvcGVy
dHkoZ29iamVjdENsYXNzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJP
UF9OQU1FLApAQCAtMTQ3LDggKzEyNiw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9l
eGNlcHRpb25fY2xhc3NfaW5pdChXZWJLaXRET01UZXN0RXhjZXB0aW9uQ2xhc3MqIHJlCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJy
ZWFkLW9ubHkgIGdjaGFyKiBUZXN0RXhjZXB0aW9uLm5hbWUiLCAvKiBsb25nZXIgLSBjb3VsZCBk
byB3aXRoIHNvbWUgZXh0cmEgZG9jIHN0dWZmIGhlcmUgKi8KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIsIC8qIGRlZmF1bHQgKi8K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgV0VCS0lUX1BBUkFNX1JFQURBQkxFKSk7Ci0KLQogfQogCiBzdGF0aWMgdm9pZCB3ZWJraXRf
ZG9tX3Rlc3RfZXhjZXB0aW9uX2luaXQoV2ViS2l0RE9NVGVzdEV4Y2VwdGlvbiogcmVxdWVzdCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0
L1dlYktpdERPTVRlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEludGVyZmFjZS5jcHAKaW5kZXggNDUyNTNk
Zi4uMDhlNDU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdEludGVyZmFjZS5j
cHAKQEAgLTEzNiw3ICsxMzYsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfaW50ZXJm
YWNlX3NldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcgogICAgIH0KIH0K
IAotCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfaW50ZXJmYWNlX2dldF9wcm9wZXJ0eShH
T2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNw
ZWMqIHBzcGVjKQogewogICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsK
QEAgLTE5NCwyMSArMTkzLDEyIEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9pbnRlcmZh
Y2VfZ2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVyCiAgICAgfQogfQog
Ci0KLXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9pbnRlcmZhY2VfY29uc3RydWN0ZWQoR09i
amVjdCogb2JqZWN0KQotewotCi0gICAgaWYgKEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVz
dF9pbnRlcmZhY2VfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQpCi0gICAgICAgIEdfT0JKRUNU
X0NMQVNTKHdlYmtpdF9kb21fdGVzdF9pbnRlcmZhY2VfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0
ZWQob2JqZWN0KTsKLX0KLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2ludGVyZmFjZV9j
bGFzc19pbml0KFdlYktpdERPTVRlc3RJbnRlcmZhY2VDbGFzcyogcmVxdWVzdENsYXNzKQogewog
ICAgIEdPYmplY3RDbGFzcyogZ29iamVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVxdWVzdENs
YXNzKTsKICAgICBnb2JqZWN0Q2xhc3MtPmZpbmFsaXplID0gd2Via2l0X2RvbV90ZXN0X2ludGVy
ZmFjZV9maW5hbGl6ZTsKICAgICBnb2JqZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9IHdlYmtpdF9k
b21fdGVzdF9pbnRlcmZhY2Vfc2V0X3Byb3BlcnR5OwogICAgIGdvYmplY3RDbGFzcy0+Z2V0X3By
b3BlcnR5ID0gd2Via2l0X2RvbV90ZXN0X2ludGVyZmFjZV9nZXRfcHJvcGVydHk7Ci0gICAgZ29i
amVjdENsYXNzLT5jb25zdHJ1Y3RlZCA9IHdlYmtpdF9kb21fdGVzdF9pbnRlcmZhY2VfY29uc3Ry
dWN0ZWQ7CiAKICAgICBnX29iamVjdF9jbGFzc19pbnN0YWxsX3Byb3BlcnR5KGdvYmplY3RDbGFz
cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBST1BfU1VQUExFTUVOVEFM
X1NUUjEsCkBAIC0yMzEsOCArMjIxLDYgQEAgc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X2lu
dGVyZmFjZV9jbGFzc19pbml0KFdlYktpdERPTVRlc3RJbnRlcmZhY2VDbGFzcyogcmUKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJl
YWQtd3JpdGUgIFdlYktpdERPTU5vZGUqIFRlc3RJbnRlcmZhY2Uuc3VwcGxlbWVudGFsLW5vZGUi
LCAvKiBsb25nZXIgLSBjb3VsZCBkbyB3aXRoIHNvbWUgZXh0cmEgZG9jIHN0dWZmIGhlcmUgKi8K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgV0VCS0lUX1RZUEVfRE9NX05PREUsIC8qIGdvYmplY3QgdHlwZSAqLwogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXRUJLSVRfUEFS
QU1fUkVBRFdSSVRFKSk7Ci0KLQogfQogCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfaW50
ZXJmYWNlX2luaXQoV2ViS2l0RE9NVGVzdEludGVyZmFjZSogcmVxdWVzdCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRl
c3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNw
cAppbmRleCBiNWNiZGZmLi5hOTI1OWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmpl
Y3QvV2ViS2l0RE9NVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCkBAIC03MiwxMCArNzIs
NiBAQCBXZWJLaXRET01UZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lciogd3JhcFRlc3RNZWRpYVF1
ZXJ5TGlzdExpc3RlbmVyKFdlYkNvcmU6OlRlcwogCiBHX0RFRklORV9UWVBFKFdlYktpdERPTVRl
c3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLCB3ZWJraXRfZG9tX3Rlc3RfbWVkaWFfcXVlcnlfbGlz
dF9saXN0ZW5lciwgV0VCS0lUX1RZUEVfRE9NX09CSkVDVCkKIAotZW51bSB7Ci0gICAgUFJPUF8w
LAotfTsKLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X21lZGlhX3F1ZXJ5X2xpc3RfbGlz
dGVuZXJfZmluYWxpemUoR09iamVjdCogb2JqZWN0KQogewogCkBAIC05NCw0NSArOTAsMTAgQEAg
c3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X21lZGlhX3F1ZXJ5X2xpc3RfbGlzdGVuZXJfZmlu
YWxpemUoR09iamVjdCogb2JqZWN0KQogICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVz
dF9tZWRpYV9xdWVyeV9saXN0X2xpc3RlbmVyX3BhcmVudF9jbGFzcyktPmZpbmFsaXplKG9iamVj
dCk7CiB9CiAKLXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9tZWRpYV9xdWVyeV9saXN0X2xp
c3RlbmVyX3NldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIGNv
bnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMqIHBzcGVjKQotewotICAgIFdlYkNvcmU6OkpT
TWFpblRocmVhZE51bGxTdGF0ZSBzdGF0ZTsKLSAgICBzd2l0Y2ggKHByb3BlcnR5SWQpIHsKLSAg
ICBkZWZhdWx0OgotICAgICAgICBHX09CSkVDVF9XQVJOX0lOVkFMSURfUFJPUEVSVFlfSUQob2Jq
ZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQotCi1z
dGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfbWVkaWFfcXVlcnlfbGlzdF9saXN0ZW5lcl9nZXRf
cHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBHVmFsdWUqIHZhbHVl
LCBHUGFyYW1TcGVjKiBwc3BlYykKLXsKLSAgICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3Rh
dGUgc3RhdGU7Ci0gICAgc3dpdGNoIChwcm9wZXJ0eUlkKSB7Ci0gICAgZGVmYXVsdDoKLSAgICAg
ICAgR19PQkpFQ1RfV0FSTl9JTlZBTElEX1BST1BFUlRZX0lEKG9iamVjdCwgcHJvcGVydHlJZCwg
cHNwZWMpOwotICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLQotc3RhdGljIHZvaWQgd2Via2l0
X2RvbV90ZXN0X21lZGlhX3F1ZXJ5X2xpc3RfbGlzdGVuZXJfY29uc3RydWN0ZWQoR09iamVjdCog
b2JqZWN0KQotewotCi0gICAgaWYgKEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9tZWRp
YV9xdWVyeV9saXN0X2xpc3RlbmVyX3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKQotICAgICAg
ICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3RfbWVkaWFfcXVlcnlfbGlzdF9saXN0ZW5l
cl9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZChvYmplY3QpOwotfQotCiBzdGF0aWMgdm9pZCB3
ZWJraXRfZG9tX3Rlc3RfbWVkaWFfcXVlcnlfbGlzdF9saXN0ZW5lcl9jbGFzc19pbml0KFdlYktp
dERPTVRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyQ2xhc3MqIHJlcXVlc3RDbGFzcykKIHsKICAg
ICBHT2JqZWN0Q2xhc3MqIGdvYmplY3RDbGFzcyA9IEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFz
cyk7CiAgICAgZ29iamVjdENsYXNzLT5maW5hbGl6ZSA9IHdlYmtpdF9kb21fdGVzdF9tZWRpYV9x
dWVyeV9saXN0X2xpc3RlbmVyX2ZpbmFsaXplOwotICAgIGdvYmplY3RDbGFzcy0+c2V0X3Byb3Bl
cnR5ID0gd2Via2l0X2RvbV90ZXN0X21lZGlhX3F1ZXJ5X2xpc3RfbGlzdGVuZXJfc2V0X3Byb3Bl
cnR5OwotICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0gd2Via2l0X2RvbV90ZXN0X21l
ZGlhX3F1ZXJ5X2xpc3RfbGlzdGVuZXJfZ2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFzcy0+
Y29uc3RydWN0ZWQgPSB3ZWJraXRfZG9tX3Rlc3RfbWVkaWFfcXVlcnlfbGlzdF9saXN0ZW5lcl9j
b25zdHJ1Y3RlZDsKLQotCi0KIH0KIAogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X21lZGlh
X3F1ZXJ5X2xpc3RfbGlzdGVuZXJfaW5pdChXZWJLaXRET01UZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lciogcmVxdWVzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3ROYW1lZENvbnN0cnVjdG9yLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktpdERPTVRlc3ROYW1l
ZENvbnN0cnVjdG9yLmNwcAppbmRleCBiYmE3YjczLi4zZGZjZjNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0TmFt
ZWRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdE5hbWVkQ29uc3RydWN0b3IuY3BwCkBAIC03MiwxMCAr
NzIsNiBAQCBXZWJLaXRET01UZXN0TmFtZWRDb25zdHJ1Y3Rvciogd3JhcFRlc3ROYW1lZENvbnN0
cnVjdG9yKFdlYkNvcmU6OlRlc3ROYW1lZENvbnN0cgogCiBHX0RFRklORV9UWVBFKFdlYktpdERP
TVRlc3ROYW1lZENvbnN0cnVjdG9yLCB3ZWJraXRfZG9tX3Rlc3RfbmFtZWRfY29uc3RydWN0b3Is
IFdFQktJVF9UWVBFX0RPTV9PQkpFQ1QpCiAKLWVudW0gewotICAgIFBST1BfMCwKLX07Ci0KIHN0
YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9uYW1lZF9jb25zdHJ1Y3Rvcl9maW5hbGl6ZShHT2Jq
ZWN0KiBvYmplY3QpCiB7CiAKQEAgLTk0LDQ1ICs5MCwxMCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRf
ZG9tX3Rlc3RfbmFtZWRfY29uc3RydWN0b3JfZmluYWxpemUoR09iamVjdCogb2JqZWN0KQogICAg
IEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9uYW1lZF9jb25zdHJ1Y3Rvcl9wYXJlbnRf
Y2xhc3MpLT5maW5hbGl6ZShvYmplY3QpOwogfQogCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rl
c3RfbmFtZWRfY29uc3RydWN0b3Jfc2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQg
cHJvcGVydHlJZCwgY29uc3QgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCi17Ci0g
ICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOwotICAgIHN3aXRjaCAocHJv
cGVydHlJZCkgewotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9Q
Uk9QRVJUWV9JRChvYmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgfQotfQotCi0KLXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9uYW1lZF9jb25zdHJ1Y3Rv
cl9nZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9wZXJ0eUlkLCBHVmFsdWUq
IHZhbHVlLCBHUGFyYW1TcGVjKiBwc3BlYykKLXsKLSAgICBXZWJDb3JlOjpKU01haW5UaHJlYWRO
dWxsU3RhdGUgc3RhdGU7Ci0gICAgc3dpdGNoIChwcm9wZXJ0eUlkKSB7Ci0gICAgZGVmYXVsdDoK
LSAgICAgICAgR19PQkpFQ1RfV0FSTl9JTlZBTElEX1BST1BFUlRZX0lEKG9iamVjdCwgcHJvcGVy
dHlJZCwgcHNwZWMpOwotICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLQotc3RhdGljIHZvaWQg
d2Via2l0X2RvbV90ZXN0X25hbWVkX2NvbnN0cnVjdG9yX2NvbnN0cnVjdGVkKEdPYmplY3QqIG9i
amVjdCkKLXsKLQotICAgIGlmIChHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3RfbmFtZWRf
Y29uc3RydWN0b3JfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQpCi0gICAgICAgIEdfT0JKRUNU
X0NMQVNTKHdlYmtpdF9kb21fdGVzdF9uYW1lZF9jb25zdHJ1Y3Rvcl9wYXJlbnRfY2xhc3MpLT5j
b25zdHJ1Y3RlZChvYmplY3QpOwotfQotCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfbmFt
ZWRfY29uc3RydWN0b3JfY2xhc3NfaW5pdChXZWJLaXRET01UZXN0TmFtZWRDb25zdHJ1Y3RvckNs
YXNzKiByZXF1ZXN0Q2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBnb2JqZWN0Q2xhc3MgPSBH
X09CSkVDVF9DTEFTUyhyZXF1ZXN0Q2xhc3MpOwogICAgIGdvYmplY3RDbGFzcy0+ZmluYWxpemUg
PSB3ZWJraXRfZG9tX3Rlc3RfbmFtZWRfY29uc3RydWN0b3JfZmluYWxpemU7Ci0gICAgZ29iamVj
dENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9tX3Rlc3RfbmFtZWRfY29uc3RydWN0b3Jf
c2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0gd2Via2l0X2Rv
bV90ZXN0X25hbWVkX2NvbnN0cnVjdG9yX2dldF9wcm9wZXJ0eTsKLSAgICBnb2JqZWN0Q2xhc3Mt
PmNvbnN0cnVjdGVkID0gd2Via2l0X2RvbV90ZXN0X25hbWVkX2NvbnN0cnVjdG9yX2NvbnN0cnVj
dGVkOwotCi0KLQogfQogCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3RfbmFtZWRfY29uc3Ry
dWN0b3JfaW5pdChXZWJLaXRET01UZXN0TmFtZWRDb25zdHJ1Y3RvciogcmVxdWVzdCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2JqZWN0L1dlYktp
dERPTVRlc3ROb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9H
T2JqZWN0L1dlYktpdERPTVRlc3ROb2RlLmNwcAppbmRleCBkNzQ4NzczLi44ZDc5OTdjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJL
aXRET01UZXN0Tm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdE5vZGUuY3BwCkBAIC0xMDcsMTAgKzEwNyw2IEBAIHN0
YXRpYyB2b2lkIHdlYmtpdF9kb21fZXZlbnRfdGFyZ2V0X2luaXQoV2ViS2l0RE9NRXZlbnRUYXJn
ZXRJZmFjZSogaWZhY2UpCiAKIEdfREVGSU5FX1RZUEVfV0lUSF9DT0RFKFdlYktpdERPTVRlc3RO
b2RlLCB3ZWJraXRfZG9tX3Rlc3Rfbm9kZSwgV0VCS0lUX1RZUEVfRE9NX05PREUsIEdfSU1QTEVN
RU5UX0lOVEVSRkFDRShXRUJLSVRfVFlQRV9ET01fRVZFTlRfVEFSR0VULCB3ZWJraXRfZG9tX2V2
ZW50X3RhcmdldF9pbml0KSkKIAotZW51bSB7Ci0gICAgUFJPUF8wLAotfTsKLQogc3RhdGljIHZv
aWQgd2Via2l0X2RvbV90ZXN0X25vZGVfZmluYWxpemUoR09iamVjdCogb2JqZWN0KQogewogCkBA
IC0xMjksNDUgKzEyNSwxMCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rfbm9kZV9maW5h
bGl6ZShHT2JqZWN0KiBvYmplY3QpCiAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0
X25vZGVfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKIH0KIAotc3RhdGljIHZvaWQg
d2Via2l0X2RvbV90ZXN0X25vZGVfc2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQg
cHJvcGVydHlJZCwgY29uc3QgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFtU3BlYyogcHNwZWMpCi17Ci0g
ICAgV2ViQ29yZTo6SlNNYWluVGhyZWFkTnVsbFN0YXRlIHN0YXRlOwotICAgIHN3aXRjaCAocHJv
cGVydHlJZCkgewotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEdfT0JKRUNUX1dBUk5fSU5WQUxJRF9Q
Uk9QRVJUWV9JRChvYmplY3QsIHByb3BlcnR5SWQsIHBzcGVjKTsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgfQotfQotCi0KLXN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9ub2RlX2dldF9wcm9wZXJ0
eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BlcnR5SWQsIEdWYWx1ZSogdmFsdWUsIEdQYXJh
bVNwZWMqIHBzcGVjKQotewotICAgIFdlYkNvcmU6OkpTTWFpblRocmVhZE51bGxTdGF0ZSBzdGF0
ZTsKLSAgICBzd2l0Y2ggKHByb3BlcnR5SWQpIHsKLSAgICBkZWZhdWx0OgotICAgICAgICBHX09C
SkVDVF9XQVJOX0lOVkFMSURfUFJPUEVSVFlfSUQob2JqZWN0LCBwcm9wZXJ0eUlkLCBwc3BlYyk7
Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLX0KLQotCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rl
c3Rfbm9kZV9jb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCi17Ci0KLSAgICBpZiAoR19PQkpF
Q1RfQ0xBU1Mod2Via2l0X2RvbV90ZXN0X25vZGVfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQp
Ci0gICAgICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9ub2RlX3BhcmVudF9jbGFz
cyktPmNvbnN0cnVjdGVkKG9iamVjdCk7Ci19Ci0KIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVz
dF9ub2RlX2NsYXNzX2luaXQoV2ViS2l0RE9NVGVzdE5vZGVDbGFzcyogcmVxdWVzdENsYXNzKQog
ewogICAgIEdPYmplY3RDbGFzcyogZ29iamVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVxdWVz
dENsYXNzKTsKICAgICBnb2JqZWN0Q2xhc3MtPmZpbmFsaXplID0gd2Via2l0X2RvbV90ZXN0X25v
ZGVfZmluYWxpemU7Ci0gICAgZ29iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRfZG9t
X3Rlc3Rfbm9kZV9zZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5nZXRfcHJvcGVydHkg
PSB3ZWJraXRfZG9tX3Rlc3Rfbm9kZV9nZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5j
b25zdHJ1Y3RlZCA9IHdlYmtpdF9kb21fdGVzdF9ub2RlX2NvbnN0cnVjdGVkOwotCi0KLQogfQog
CiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rfbm9kZV9pbml0KFdlYktpdERPTVRlc3ROb2Rl
KiByZXF1ZXN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0T2JqLmNwcAppbmRleCAyOTZkYTk1
Li5jM2Y2MjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvR09iamVjdC9XZWJLaXRET01UZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvR09iamVjdC9XZWJLaXRET01UZXN0T2JqLmNwcApAQCAtMzAzLDcg
KzMwMyw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9vYmpfc2V0X3Byb3BlcnR5KEdP
YmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcGVydHlJZCwKICAgICB9CiB9CiAKLQogc3RhdGljIHZv
aWQgd2Via2l0X2RvbV90ZXN0X29ial9nZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWlu
dCBwcm9wZXJ0eUlkLCBHVmFsdWUqIHZhbHVlLCBHUGFyYW1TcGVjKiBwc3BlYykKIHsKICAgICBX
ZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CkBAIC01MzksMjEgKzUzOCwxMiBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rfb2JqX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBv
YmplY3QsIGd1aW50IHByb3BlcnR5SWQsCiAgICAgfQogfQogCi0KLXN0YXRpYyB2b2lkIHdlYmtp
dF9kb21fdGVzdF9vYmpfY29uc3RydWN0ZWQoR09iamVjdCogb2JqZWN0KQotewotCi0gICAgaWYg
KEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9vYmpfcGFyZW50X2NsYXNzKS0+Y29uc3Ry
dWN0ZWQpCi0gICAgICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9vYmpfcGFyZW50
X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0KTsKLX0KLQogc3RhdGljIHZvaWQgd2Via2l0X2Rv
bV90ZXN0X29ial9jbGFzc19pbml0KFdlYktpdERPTVRlc3RPYmpDbGFzcyogcmVxdWVzdENsYXNz
KQogewogICAgIEdPYmplY3RDbGFzcyogZ29iamVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1MocmVx
dWVzdENsYXNzKTsKICAgICBnb2JqZWN0Q2xhc3MtPmZpbmFsaXplID0gd2Via2l0X2RvbV90ZXN0
X29ial9maW5hbGl6ZTsKICAgICBnb2JqZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9IHdlYmtpdF9k
b21fdGVzdF9vYmpfc2V0X3Byb3BlcnR5OwogICAgIGdvYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5
ID0gd2Via2l0X2RvbV90ZXN0X29ial9nZXRfcHJvcGVydHk7Ci0gICAgZ29iamVjdENsYXNzLT5j
b25zdHJ1Y3RlZCA9IHdlYmtpdF9kb21fdGVzdF9vYmpfY29uc3RydWN0ZWQ7CiAKICAgICBnX29i
amVjdF9jbGFzc19pbnN0YWxsX3Byb3BlcnR5KGdvYmplY3RDbGFzcywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFBST1BfUkVBRF9PTkxZX0xPTkdfQVRUUiwKQEAgLTkxNyw4
ICs5MDcsNiBAQCBHX01BWExPTkcsIC8qIG1heCAqLwogR19NQVhMT05HLCAvKiBtYXggKi8KIDAs
IC8qIGRlZmF1bHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgV0VCS0lUX1BBUkFNX1JFQURBQkxFKSk7Ci0KLQogfQogCiBzdGF0
aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rfb2JqX2luaXQoV2ViS2l0RE9NVGVzdE9iaiogcmVxdWVz
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9HT2Jq
ZWN0L1dlYktpdERPTVRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXggY2Y5ZmQzYS4uNjk0ODkwOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3Qv
V2ViS2l0RE9NVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0dPYmplY3QvV2ViS2l0RE9NVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKQEAgLTExMSwxNyArMTExLDYgQEAgc3Rh
dGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X3NlcmlhbGl6ZWRfc2NyaXB0X3ZhbHVlX2ludGVyZmFj
ZV9maW5hbGl6ZShHT2JqZWN0KgogICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9kb21fdGVzdF9z
ZXJpYWxpemVkX3NjcmlwdF92YWx1ZV9pbnRlcmZhY2VfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUo
b2JqZWN0KTsKIH0KIAotc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X3NlcmlhbGl6ZWRfc2Ny
aXB0X3ZhbHVlX2ludGVyZmFjZV9zZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBw
cm9wZXJ0eUlkLCBjb25zdCBHVmFsdWUqIHZhbHVlLCBHUGFyYW1TcGVjKiBwc3BlYykKLXsKLSAg
ICBXZWJDb3JlOjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7Ci0gICAgc3dpdGNoIChwcm9w
ZXJ0eUlkKSB7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgR19PQkpFQ1RfV0FSTl9JTlZBTElEX1BS
T1BFUlRZX0lEKG9iamVjdCwgcHJvcGVydHlJZCwgcHNwZWMpOwotICAgICAgICBicmVhazsKLSAg
ICB9Ci19Ci0KLQogc3RhdGljIHZvaWQgd2Via2l0X2RvbV90ZXN0X3NlcmlhbGl6ZWRfc2NyaXB0
X3ZhbHVlX2ludGVyZmFjZV9nZXRfcHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9w
ZXJ0eUlkLCBHVmFsdWUqIHZhbHVlLCBHUGFyYW1TcGVjKiBwc3BlYykKIHsKICAgICBXZWJDb3Jl
OjpKU01haW5UaHJlYWROdWxsU3RhdGUgc3RhdGU7CkBAIC0xODYsMjEgKzE3NSwxMSBAQCBzdGF0
aWMgdm9pZCB3ZWJraXRfZG9tX3Rlc3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNl
X2dldF9wcm9wZXJ0eShHT2JqZQogICAgIH0KIH0KIAotCi1zdGF0aWMgdm9pZCB3ZWJraXRfZG9t
X3Rlc3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNlX2NvbnN0cnVjdGVkKEdPYmpl
Y3QqIG9iamVjdCkKLXsKLQotICAgIGlmIChHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3Rf
c2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNlX3BhcmVudF9jbGFzcyktPmNvbnN0cnVj
dGVkKQotICAgICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfZG9tX3Rlc3Rfc2VyaWFsaXplZF9z
Y3JpcHRfdmFsdWVfaW50ZXJmYWNlX3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVjdCk7
Ci19Ci0KIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVzdF9zZXJpYWxpemVkX3NjcmlwdF92YWx1
ZV9pbnRlcmZhY2VfY2xhc3NfaW5pdChXZWJLaXRET01UZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlQ2xhc3MqIHJlcXVlc3RDbGFzcykKIHsKICAgICBHT2JqZWN0Q2xhc3MqIGdvYmpl
Y3RDbGFzcyA9IEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFzcyk7CiAgICAgZ29iamVjdENsYXNz
LT5maW5hbGl6ZSA9IHdlYmtpdF9kb21fdGVzdF9zZXJpYWxpemVkX3NjcmlwdF92YWx1ZV9pbnRl
cmZhY2VfZmluYWxpemU7Ci0gICAgZ29iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJraXRf
ZG9tX3Rlc3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNlX3NldF9wcm9wZXJ0eTsK
ICAgICBnb2JqZWN0Q2xhc3MtPmdldF9wcm9wZXJ0eSA9IHdlYmtpdF9kb21fdGVzdF9zZXJpYWxp
emVkX3NjcmlwdF92YWx1ZV9pbnRlcmZhY2VfZ2V0X3Byb3BlcnR5OwotICAgIGdvYmplY3RDbGFz
cy0+Y29uc3RydWN0ZWQgPSB3ZWJraXRfZG9tX3Rlc3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVf
aW50ZXJmYWNlX2NvbnN0cnVjdGVkOwogCiAgICAgZ19vYmplY3RfY2xhc3NfaW5zdGFsbF9wcm9w
ZXJ0eShnb2JqZWN0Q2xhc3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ
Uk9QX1ZBTFVFLApAQCAtMjM3LDggKzIxNiw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9kb21fdGVz
dF9zZXJpYWxpemVkX3NjcmlwdF92YWx1ZV9pbnRlcmZhY2VfY2xhc3NfaW5pdChXZWJLaXRECiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICJyZWFkLW9ubHkgIFdlYktpdERPTVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSogVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jYWNoZWQtcmVhZG9ubHktdmFsdWUiLCAvKiBsb25nZXIg
LSBjb3VsZCBkbyB3aXRoIHNvbWUgZXh0cmEgZG9jIHN0dWZmIGhlcmUgKi8KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZ
UEVfRE9NX1NFUklBTElaRURfU0NSSVBUX1ZBTFVFLCAvKiBnb2JqZWN0IHR5cGUgKi8KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV0VC
S0lUX1BBUkFNX1JFQURBQkxFKSk7Ci0KLQogfQogCiBzdGF0aWMgdm9pZCB3ZWJraXRfZG9tX3Rl
c3Rfc2VyaWFsaXplZF9zY3JpcHRfdmFsdWVfaW50ZXJmYWNlX2luaXQoV2ViS2l0RE9NVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSogcmVxdWVzdCkK
</data>
<flag name="review"
          id="186289"
          type_id="1"
          status="+"
          setter="xan.lopez"
    />
          </attachment>
      

    </bug>

</bugzilla>