<?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>114528</bug_id>
          
          <creation_ts>2013-04-12 13:12:10 -0700</creation_ts>
          <short_desc>Make CodeGeneratorJS plant comments to explain failures in the binding validation</short_desc>
          <delta_ts>2013-04-12 13:27:56 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>alecflett</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dgrogan</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>874917</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-12 13:12:10 -0700</bug_when>
    <thetext>Make CodeGeneratorJS plant comments to explain failures in the binding validation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874919</commentid>
    <comment_count>1</comment_count>
      <attachid>197878</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-12 13:13:12 -0700</bug_when>
    <thetext>Created attachment 197878
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874927</commentid>
    <comment_count>2</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-12 13:27:27 -0700</bug_when>
    <thetext>Committed r148301: &lt;http://trac.webkit.org/changeset/148301&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874928</commentid>
    <comment_count>3</comment_count>
      <attachid>197878</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2013-04-12 13:27:56 -0700</bug_when>
    <thetext>Comment on attachment 197878
Patch

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

r=me

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:2758
&gt;          push(@implContent, &lt;&lt;END) if $interface-&gt;extendedAttributes-&gt;{&quot;ImplementationLacksVTable&quot;} &amp;&amp; $vtableNameGnu;
&gt;  #if COMPILER(CLANG)
&gt; -        COMPILE_ASSERT(!__is_polymorphic($implType), ${implType}_is_polymorphic_but_idl_claims_not_to_be);
&gt; +    // If you hit this failure the interface definition has the ImplementationLacksVTable
&gt; +    // attribute. You should remove that attribute. If the class has subclasses
&gt; +    // that may be passed through this toJS() function you should use the SkipVTableValidation
&gt; +    // attribute to $interfaceName.
&gt; +    COMPILE_ASSERT(!__is_polymorphic($implType), ${implType}_is_polymorphic_but_idl_claims_not_to_be);
&gt;  #endif
&gt;  END

The bindings test scripts don&apos;t appear to cover this test case.  Might be something we want to add in the future.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197878</attachid>
            <date>2013-04-12 13:13:12 -0700</date>
            <delta_ts>2013-04-12 13:27:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114528-20130412131250.patch</filename>
            <type>text/plain</type>
            <size>20156</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4Mjk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWI0ZjhkOTA5NTZlMDY0
OTU3N2MwNjE0Mzc1OTU1YjMzNGYyOTA0Ni4uNmI3YTYxMjM2MWEyY2M1MGM5OWViYzk3YjQwZmZj
ZTI2YjU0ZTRlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEzLTA0LTEyICBPbGl2
ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBDb2RlR2VuZXJhdG9y
SlMgcGxhbnQgY29tbWVudHMgdG8gZXhwbGFpbiBmYWlsdXJlcyBpbiB0aGUgYmluZGluZyB2YWxp
ZGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTQ1MjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBO
byBjaGFuZ2UgaW4gYmVoYXZpb3VyLCBqdXN0IG1ha2UgdGhlIGdlbmVyYXRlZCBiaW5kaW5ncyBp
bmNsdWRlIGNvbW1lbnRzCisgICAgICAgIHRvIGFpZCBkaWFnbm9zaW5nIGlzc3VlcyB0aGF0IG1h
eSBiZSBub24tb2J2aW91cy4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9iamVjdC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMp
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjp0b0pTKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnRvSlMpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9K
Uyk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorCiAyMDEzLTA0LTEyICBNYXJ0aW4gUm9iaW5z
b24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICByMTQ4MTk3IGJyb2tlIHRoZSBH
VEsrIGJ1aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckpTLnBtCmluZGV4IGY2NTVhYjJhYTBkMTRkNTk0N2NlM2ZjOTQ4MTZkNDllZWNiNDI1
ZTAuLmZlNjhkOTc5NjdiZWViOTc0OWE1MzhkZjM2MGI1Y2U0ZGE4MjNiYjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0y
NzM1LDE1ICsyNzM1LDI1IEBAIEVORAogI2Vsc2UKICAgICB2b2lkKiBleHBlY3RlZFZUYWJsZVBv
aW50ZXIgPSAke3Z0YWJsZVJlZkdudX07CiAjaWYgQ09NUElMRVIoQ0xBTkcpCisgICAgLy8gSWYg
dGhpcyBmYWlscyAkaW1wbFR5cGUgZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQg
dG8gYWRkIHRoZQorICAgIC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRv
IHRoZSBpbnRlcmZhY2UgZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1v
cnBoaWMoJGltcGxUeXBlKSwgJHtpbXBsVHlwZX1faXNfbm90X3BvbHltb3JwaGljKTsKICNlbmRp
ZgogI2VuZGlmCisgICAgLy8gSWYgeW91IGhpdCB0aGlzIGFzc2VydGlvbiB5b3UgZWl0aGVyIGhh
dmUgYSB1c2UgYWZ0ZXIgZnJlZSBidWcsIG9yCisgICAgLy8gJGltcGxUeXBlIGhhcyBzdWJjbGFz
c2VzLiBJZiAkaW1wbFR5cGUgaGFzIHN1YmNsYXNzZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8g
dG8gdG9KUygpIHdlIGN1cnJlbnRseSByZXF1aXJlICRpbnRlcmZhY2VOYW1lIHlvdSB0byBvcHQg
b3V0IG9mIGJpbmRpbmcgaGFyZGVuaW5nCisgICAgLy8gYnkgYWRkaW5nIHRoZSBTa2lwVlRhYmxl
VmFsaWRhdGlvbiBhdHRyaWJ1dGUgdG8gdGhlIGludGVyZmFjZSBJREwgZGVmaW5pdGlvbgogICAg
IFJFTEVBU0VfQVNTRVJUKGFjdHVhbFZUYWJsZVBvaW50ZXIgPT0gZXhwZWN0ZWRWVGFibGVQb2lu
dGVyKTsKICNlbmRpZgogRU5ECiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCkgaWYg
JGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGF0aW9uTGFja3NWVGFi
bGUifSAmJiAkdnRhYmxlTmFtZUdudTsKICNpZiBDT01QSUxFUihDTEFORykKLSAgICAgICAgQ09N
UElMRV9BU1NFUlQoIV9faXNfcG9seW1vcnBoaWMoJGltcGxUeXBlKSwgJHtpbXBsVHlwZX1faXNf
cG9seW1vcnBoaWNfYnV0X2lkbF9jbGFpbXNfbm90X3RvX2JlKTsKKyAgICAvLyBJZiB5b3UgaGl0
IHRoaXMgZmFpbHVyZSB0aGUgaW50ZXJmYWNlIGRlZmluaXRpb24gaGFzIHRoZSBJbXBsZW1lbnRh
dGlvbkxhY2tzVlRhYmxlCisgICAgLy8gYXR0cmlidXRlLiBZb3Ugc2hvdWxkIHJlbW92ZSB0aGF0
IGF0dHJpYnV0ZS4gSWYgdGhlIGNsYXNzIGhhcyBzdWJjbGFzc2VzCisgICAgLy8gdGhhdCBtYXkg
YmUgcGFzc2VkIHRocm91Z2ggdGhpcyB0b0pTKCkgZnVuY3Rpb24geW91IHNob3VsZCB1c2UgdGhl
IFNraXBWVGFibGVWYWxpZGF0aW9uCisgICAgLy8gYXR0cmlidXRlIHRvICRpbnRlcmZhY2VOYW1l
LgorICAgIENPTVBJTEVfQVNTRVJUKCFfX2lzX3BvbHltb3JwaGljKCRpbXBsVHlwZSksICR7aW1w
bFR5cGV9X2lzX3BvbHltb3JwaGljX2J1dF9pZGxfY2xhaW1zX25vdF90b19iZSk7CiAjZW5kaWYK
IEVORAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3BwCmluZGV4IGI5NjM3N2JkMWIx
MzE3OTcxOTEwMmIyZDNiZDBkMzlmNjQzNjg4ZmEuLmQ1OGIyMjBjMzQ4M2EyY2QyNDY5Yzc2YTAz
ZTEwODJlZjNjYWE3ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3BwCkBAIC0y
NTYsOSArMjU2LDE1IEBAIEpTQzo6SlNWYWx1ZSB0b0pTKEpTQzo6RXhlY1N0YXRlKiBleGVjLCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUZXN0QWN0CiAjZWxzZQogICAgIHZvaWQq
IGV4cGVjdGVkVlRhYmxlUG9pbnRlciA9ICZfWlRWTjdXZWJDb3JlMTlUZXN0QWN0aXZlRE9NT2Jq
ZWN0RVsyXTsKICNpZiBDT01QSUxFUihDTEFORykKKyAgICAvLyBJZiB0aGlzIGZhaWxzIFRlc3RB
Y3RpdmVET01PYmplY3QgZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRk
IHRoZQorICAgIC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBp
bnRlcmZhY2UgZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMo
VGVzdEFjdGl2ZURPTU9iamVjdCksIFRlc3RBY3RpdmVET01PYmplY3RfaXNfbm90X3BvbHltb3Jw
aGljKTsKICNlbmRpZgogI2VuZGlmCisgICAgLy8gSWYgeW91IGhpdCB0aGlzIGFzc2VydGlvbiB5
b3UgZWl0aGVyIGhhdmUgYSB1c2UgYWZ0ZXIgZnJlZSBidWcsIG9yCisgICAgLy8gVGVzdEFjdGl2
ZURPTU9iamVjdCBoYXMgc3ViY2xhc3Nlcy4gSWYgVGVzdEFjdGl2ZURPTU9iamVjdCBoYXMgc3Vi
Y2xhc3NlcyB0aGF0IGdldCBwYXNzZWQKKyAgICAvLyB0byB0b0pTKCkgd2UgY3VycmVudGx5IHJl
cXVpcmUgVGVzdEFjdGl2ZURPTU9iamVjdCB5b3UgdG8gb3B0IG91dCBvZiBiaW5kaW5nIGhhcmRl
bmluZworICAgIC8vIGJ5IGFkZGluZyB0aGUgU2tpcFZUYWJsZVZhbGlkYXRpb24gYXR0cmlidXRl
IHRvIHRoZSBpbnRlcmZhY2UgSURMIGRlZmluaXRpb24KICAgICBSRUxFQVNFX0FTU0VSVChhY3R1
YWxWVGFibGVQb2ludGVyID09IGV4cGVjdGVkVlRhYmxlUG9pbnRlcik7CiAjZW5kaWYKICAgICBy
ZXR1cm4gY3JlYXRlTmV3V3JhcHBlcjxKU1Rlc3RBY3RpdmVET01PYmplY3Q+KGV4ZWMsIGdsb2Jh
bE9iamVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcAppbmRl
eCAxYmU1YmFhZjY1MTU2NTQ3ZDQ1Y2MxYjBmY2JlNzFmNWMyNjA1MzFhLi43MjQyNWFmZmMxYjMz
MmE5ODczOTU3NTM3ZWQ1OGNhOGJkNzJhNGU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21OYW1l
ZEdldHRlci5jcHAKQEAgLTI0MCw5ICsyNDAsMTUgQEAgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpF
eGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRlc3RDdXMK
ICNlbHNlCiAgICAgdm9pZCogZXhwZWN0ZWRWVGFibGVQb2ludGVyID0gJl9aVFZON1dlYkNvcmUy
MVRlc3RDdXN0b21OYW1lZEdldHRlckVbMl07CiAjaWYgQ09NUElMRVIoQ0xBTkcpCisgICAgLy8g
SWYgdGhpcyBmYWlscyBUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIgZG9lcyBub3QgaGF2ZSBhIHZ0YWJs
ZSwgc28geW91IG5lZWQgdG8gYWRkIHRoZQorICAgIC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFi
bGUgYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNT
RVJUKF9faXNfcG9seW1vcnBoaWMoVGVzdEN1c3RvbU5hbWVkR2V0dGVyKSwgVGVzdEN1c3RvbU5h
bWVkR2V0dGVyX2lzX25vdF9wb2x5bW9ycGhpYyk7CiAjZW5kaWYKICNlbmRpZgorICAgIC8vIElm
IHlvdSBoaXQgdGhpcyBhc3NlcnRpb24geW91IGVpdGhlciBoYXZlIGEgdXNlIGFmdGVyIGZyZWUg
YnVnLCBvcgorICAgIC8vIFRlc3RDdXN0b21OYW1lZEdldHRlciBoYXMgc3ViY2xhc3Nlcy4gSWYg
VGVzdEN1c3RvbU5hbWVkR2V0dGVyIGhhcyBzdWJjbGFzc2VzIHRoYXQgZ2V0IHBhc3NlZAorICAg
IC8vIHRvIHRvSlMoKSB3ZSBjdXJyZW50bHkgcmVxdWlyZSBUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIg
eW91IHRvIG9wdCBvdXQgb2YgYmluZGluZyBoYXJkZW5pbmcKKyAgICAvLyBieSBhZGRpbmcgdGhl
IFNraXBWVGFibGVWYWxpZGF0aW9uIGF0dHJpYnV0ZSB0byB0aGUgaW50ZXJmYWNlIElETCBkZWZp
bml0aW9uCiAgICAgUkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRhYmxlUG9pbnRlciA9PSBleHBlY3Rl
ZFZUYWJsZVBvaW50ZXIpOwogI2VuZGlmCiAgICAgcmV0dXJuIGNyZWF0ZU5ld1dyYXBwZXI8SlNU
ZXN0Q3VzdG9tTmFtZWRHZXR0ZXI+KGV4ZWMsIGdsb2JhbE9iamVjdCwgaW1wbCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRD
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggOTY5M2U5ZjBjYzZhMzEzZjg4MDE3Y2Yy
YjkyZTg2YzNjNWY0ZjIwNy4uZDg4Y2QxM2ZiOWYwZDZkM2U3ODMxNGEwN2U4MjVkMWU0MzA1NDFi
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcApAQCAtMjU1LDkgKzI1NSwx
NSBAQCBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgVGVzdEV2ZQogI2Vsc2UKICAgICB2b2lkKiBleHBlY3RlZFZU
YWJsZVBvaW50ZXIgPSAmX1pUVk43V2ViQ29yZTIwVGVzdEV2ZW50Q29uc3RydWN0b3JFWzJdOwog
I2lmIENPTVBJTEVSKENMQU5HKQorICAgIC8vIElmIHRoaXMgZmFpbHMgVGVzdEV2ZW50Q29uc3Ry
dWN0b3IgZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRoZQorICAg
IC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2Ug
ZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVzdEV2ZW50
Q29uc3RydWN0b3IpLCBUZXN0RXZlbnRDb25zdHJ1Y3Rvcl9pc19ub3RfcG9seW1vcnBoaWMpOwog
I2VuZGlmCiAjZW5kaWYKKyAgICAvLyBJZiB5b3UgaGl0IHRoaXMgYXNzZXJ0aW9uIHlvdSBlaXRo
ZXIgaGF2ZSBhIHVzZSBhZnRlciBmcmVlIGJ1Zywgb3IKKyAgICAvLyBUZXN0RXZlbnRDb25zdHJ1
Y3RvciBoYXMgc3ViY2xhc3Nlcy4gSWYgVGVzdEV2ZW50Q29uc3RydWN0b3IgaGFzIHN1YmNsYXNz
ZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8gdG8gdG9KUygpIHdlIGN1cnJlbnRseSByZXF1aXJl
IFRlc3RFdmVudENvbnN0cnVjdG9yIHlvdSB0byBvcHQgb3V0IG9mIGJpbmRpbmcgaGFyZGVuaW5n
CisgICAgLy8gYnkgYWRkaW5nIHRoZSBTa2lwVlRhYmxlVmFsaWRhdGlvbiBhdHRyaWJ1dGUgdG8g
dGhlIGludGVyZmFjZSBJREwgZGVmaW5pdGlvbgogICAgIFJFTEVBU0VfQVNTRVJUKGFjdHVhbFZU
YWJsZVBvaW50ZXIgPT0gZXhwZWN0ZWRWVGFibGVQb2ludGVyKTsKICNlbmRpZgogICAgIHJldHVy
biBjcmVhdGVOZXdXcmFwcGVyPEpTVGVzdEV2ZW50Q29uc3RydWN0b3I+KGV4ZWMsIGdsb2JhbE9i
amVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAppbmRleCBlNzA3MjZhYjA3Y2Fm
NTFiYmQxMGY2MDA5ODRhMGZlN2YzNTk5MDEzLi5hOTFjMGRlNWU2NWRlODY2ZmMzOTRjNDgzYTE0
OGRhMTQyZGUyN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKQEAgLTM2MSw5ICszNjEs
MTUgQEAgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFRlc3RFdmUKICNlbHNlCiAgICAgdm9pZCogZXhwZWN0ZWRW
VGFibGVQb2ludGVyID0gJl9aVFZON1dlYkNvcmUxNVRlc3RFdmVudFRhcmdldEVbMl07CiAjaWYg
Q09NUElMRVIoQ0xBTkcpCisgICAgLy8gSWYgdGhpcyBmYWlscyBUZXN0RXZlbnRUYXJnZXQgZG9l
cyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRoZQorICAgIC8vIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgZGVmaW5pdGlv
bgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVzdEV2ZW50VGFyZ2V0KSwg
VGVzdEV2ZW50VGFyZ2V0X2lzX25vdF9wb2x5bW9ycGhpYyk7CiAjZW5kaWYKICNlbmRpZgorICAg
IC8vIElmIHlvdSBoaXQgdGhpcyBhc3NlcnRpb24geW91IGVpdGhlciBoYXZlIGEgdXNlIGFmdGVy
IGZyZWUgYnVnLCBvcgorICAgIC8vIFRlc3RFdmVudFRhcmdldCBoYXMgc3ViY2xhc3Nlcy4gSWYg
VGVzdEV2ZW50VGFyZ2V0IGhhcyBzdWJjbGFzc2VzIHRoYXQgZ2V0IHBhc3NlZAorICAgIC8vIHRv
IHRvSlMoKSB3ZSBjdXJyZW50bHkgcmVxdWlyZSBUZXN0RXZlbnRUYXJnZXQgeW91IHRvIG9wdCBv
dXQgb2YgYmluZGluZyBoYXJkZW5pbmcKKyAgICAvLyBieSBhZGRpbmcgdGhlIFNraXBWVGFibGVW
YWxpZGF0aW9uIGF0dHJpYnV0ZSB0byB0aGUgaW50ZXJmYWNlIElETCBkZWZpbml0aW9uCiAgICAg
UkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRhYmxlUG9pbnRlciA9PSBleHBlY3RlZFZUYWJsZVBvaW50
ZXIpOwogI2VuZGlmCiAgICAgcmV0dXJuIGNyZWF0ZU5ld1dyYXBwZXI8SlNUZXN0RXZlbnRUYXJn
ZXQ+KGV4ZWMsIGdsb2JhbE9iamVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwCmluZGV4
IDMzNDhiNmNjMzdmZTk3MjcyZjVmYzhjZDBkZDdhNTU2NDA5NWU0YjkuLjRhMTgzYWNiZTYyZDVi
YjZkZjNjOGQ2ODZjMWE3YzdlMWM3YjZmNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwCkBAIC0x
OTcsOSArMTk3LDE1IEBAIEpTQzo6SlNWYWx1ZSB0b0pTKEpTQzo6RXhlY1N0YXRlKiBleGVjLCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUZXN0RXhjCiAjZWxzZQogICAgIHZvaWQq
IGV4cGVjdGVkVlRhYmxlUG9pbnRlciA9ICZfWlRWTjdXZWJDb3JlMTNUZXN0RXhjZXB0aW9uRVsy
XTsKICNpZiBDT01QSUxFUihDTEFORykKKyAgICAvLyBJZiB0aGlzIGZhaWxzIFRlc3RFeGNlcHRp
b24gZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRoZQorICAgIC8v
IEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgZGVm
aW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVzdEV4Y2VwdGlv
biksIFRlc3RFeGNlcHRpb25faXNfbm90X3BvbHltb3JwaGljKTsKICNlbmRpZgogI2VuZGlmCisg
ICAgLy8gSWYgeW91IGhpdCB0aGlzIGFzc2VydGlvbiB5b3UgZWl0aGVyIGhhdmUgYSB1c2UgYWZ0
ZXIgZnJlZSBidWcsIG9yCisgICAgLy8gVGVzdEV4Y2VwdGlvbiBoYXMgc3ViY2xhc3Nlcy4gSWYg
VGVzdEV4Y2VwdGlvbiBoYXMgc3ViY2xhc3NlcyB0aGF0IGdldCBwYXNzZWQKKyAgICAvLyB0byB0
b0pTKCkgd2UgY3VycmVudGx5IHJlcXVpcmUgVGVzdEV4Y2VwdGlvbiB5b3UgdG8gb3B0IG91dCBv
ZiBiaW5kaW5nIGhhcmRlbmluZworICAgIC8vIGJ5IGFkZGluZyB0aGUgU2tpcFZUYWJsZVZhbGlk
YXRpb24gYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgSURMIGRlZmluaXRpb24KICAgICBSRUxF
QVNFX0FTU0VSVChhY3R1YWxWVGFibGVQb2ludGVyID09IGV4cGVjdGVkVlRhYmxlUG9pbnRlcik7
CiAjZW5kaWYKICAgICByZXR1cm4gY3JlYXRlTmV3V3JhcHBlcjxKU1Rlc3RFeGNlcHRpb24+KGV4
ZWMsIGdsb2JhbE9iamVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCmluZGV4IGM5MTA1
OGUzNjcyOWJmM2ZlMzAxNTJjMmJhMjQ3OGE1ZWZjNjJjZDIuLmQxMWNmMDBkOTBjYTM0NDgxMzgw
NGEwY2ZjODAyMTUyNmVkNTI3ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCkBAIC01MjAsOSAr
NTIwLDE1IEBAIEpTQzo6SlNWYWx1ZSB0b0pTKEpTQzo6RXhlY1N0YXRlKiBleGVjLCBKU0RPTUds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUZXN0SW50CiAjZWxzZQogICAgIHZvaWQqIGV4cGVj
dGVkVlRhYmxlUG9pbnRlciA9ICZfWlRWTjdXZWJDb3JlMTNUZXN0SW50ZXJmYWNlRVsyXTsKICNp
ZiBDT01QSUxFUihDTEFORykKKyAgICAvLyBJZiB0aGlzIGZhaWxzIFRlc3RJbnRlcmZhY2UgZG9l
cyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRoZQorICAgIC8vIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgZGVmaW5pdGlv
bgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVzdEludGVyZmFjZSksIFRl
c3RJbnRlcmZhY2VfaXNfbm90X3BvbHltb3JwaGljKTsKICNlbmRpZgogI2VuZGlmCisgICAgLy8g
SWYgeW91IGhpdCB0aGlzIGFzc2VydGlvbiB5b3UgZWl0aGVyIGhhdmUgYSB1c2UgYWZ0ZXIgZnJl
ZSBidWcsIG9yCisgICAgLy8gVGVzdEludGVyZmFjZSBoYXMgc3ViY2xhc3Nlcy4gSWYgVGVzdElu
dGVyZmFjZSBoYXMgc3ViY2xhc3NlcyB0aGF0IGdldCBwYXNzZWQKKyAgICAvLyB0byB0b0pTKCkg
d2UgY3VycmVudGx5IHJlcXVpcmUgVGVzdEludGVyZmFjZSB5b3UgdG8gb3B0IG91dCBvZiBiaW5k
aW5nIGhhcmRlbmluZworICAgIC8vIGJ5IGFkZGluZyB0aGUgU2tpcFZUYWJsZVZhbGlkYXRpb24g
YXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgSURMIGRlZmluaXRpb24KICAgICBSRUxFQVNFX0FT
U0VSVChhY3R1YWxWVGFibGVQb2ludGVyID09IGV4cGVjdGVkVlRhYmxlUG9pbnRlcik7CiAjZW5k
aWYKICAgICByZXR1cm4gY3JlYXRlTmV3V3JhcHBlcjxKU1Rlc3RJbnRlcmZhY2U+KGV4ZWMsIGds
b2JhbE9iamVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lci5jcHAKaW5kZXggMDExNjQ0YWYzNDg1OGU3ZmY0MGZhNmJmZDBmZTk0YjdjYWM5ZGM1MS4u
MjhjOTMwMjViNGU1N2JkYWU5NzRmNWVjMDQ4YzIyNTA5NzQ0MjUxYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0
TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcApAQCAtMjE4LDkgKzIxOCwxNSBAQCBK
U0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgVGVzdE1lZAogI2Vsc2UKICAgICB2b2lkKiBleHBlY3RlZFZUYWJsZVBv
aW50ZXIgPSAmX1pUVk43V2ViQ29yZTI2VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJFWzJdOwog
I2lmIENPTVBJTEVSKENMQU5HKQorICAgIC8vIElmIHRoaXMgZmFpbHMgVGVzdE1lZGlhUXVlcnlM
aXN0TGlzdGVuZXIgZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRo
ZQorICAgIC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRl
cmZhY2UgZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVz
dE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIpLCBUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcl9pc19u
b3RfcG9seW1vcnBoaWMpOwogI2VuZGlmCiAjZW5kaWYKKyAgICAvLyBJZiB5b3UgaGl0IHRoaXMg
YXNzZXJ0aW9uIHlvdSBlaXRoZXIgaGF2ZSBhIHVzZSBhZnRlciBmcmVlIGJ1Zywgb3IKKyAgICAv
LyBUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lciBoYXMgc3ViY2xhc3Nlcy4gSWYgVGVzdE1lZGlh
UXVlcnlMaXN0TGlzdGVuZXIgaGFzIHN1YmNsYXNzZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8g
dG8gdG9KUygpIHdlIGN1cnJlbnRseSByZXF1aXJlIFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVy
IHlvdSB0byBvcHQgb3V0IG9mIGJpbmRpbmcgaGFyZGVuaW5nCisgICAgLy8gYnkgYWRkaW5nIHRo
ZSBTa2lwVlRhYmxlVmFsaWRhdGlvbiBhdHRyaWJ1dGUgdG8gdGhlIGludGVyZmFjZSBJREwgZGVm
aW5pdGlvbgogICAgIFJFTEVBU0VfQVNTRVJUKGFjdHVhbFZUYWJsZVBvaW50ZXIgPT0gZXhwZWN0
ZWRWVGFibGVQb2ludGVyKTsKICNlbmRpZgogICAgIHJldHVybiBjcmVhdGVOZXdXcmFwcGVyPEpT
VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI+KGV4ZWMsIGdsb2JhbE9iamVjdCwgaW1wbCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNmI1MDViM2ZiZTUyNjNmOTFl
NGQ0ZDk0YmEwZmRiODllNzJiN2ZhOS4uMDU1ZjU1NjA1MzZjYWI0YzRhZjU4NTIzYTI1YjdkYzRi
M2JkZTVkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENvbnN0cnVjdG9yLmNwcApAQCAtMjMyLDkg
KzIzMiwxNSBAQCBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGVzdE5hbQogI2Vsc2UKICAgICB2b2lkKiBleHBl
Y3RlZFZUYWJsZVBvaW50ZXIgPSAmX1pUVk43V2ViQ29yZTIwVGVzdE5hbWVkQ29uc3RydWN0b3JF
WzJdOwogI2lmIENPTVBJTEVSKENMQU5HKQorICAgIC8vIElmIHRoaXMgZmFpbHMgVGVzdE5hbWVk
Q29uc3RydWN0b3IgZG9lcyBub3QgaGF2ZSBhIHZ0YWJsZSwgc28geW91IG5lZWQgdG8gYWRkIHRo
ZQorICAgIC8vIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUgYXR0cmlidXRlIHRvIHRoZSBpbnRl
cmZhY2UgZGVmaW5pdGlvbgogICAgIENPTVBJTEVfQVNTRVJUKF9faXNfcG9seW1vcnBoaWMoVGVz
dE5hbWVkQ29uc3RydWN0b3IpLCBUZXN0TmFtZWRDb25zdHJ1Y3Rvcl9pc19ub3RfcG9seW1vcnBo
aWMpOwogI2VuZGlmCiAjZW5kaWYKKyAgICAvLyBJZiB5b3UgaGl0IHRoaXMgYXNzZXJ0aW9uIHlv
dSBlaXRoZXIgaGF2ZSBhIHVzZSBhZnRlciBmcmVlIGJ1Zywgb3IKKyAgICAvLyBUZXN0TmFtZWRD
b25zdHJ1Y3RvciBoYXMgc3ViY2xhc3Nlcy4gSWYgVGVzdE5hbWVkQ29uc3RydWN0b3IgaGFzIHN1
YmNsYXNzZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8gdG8gdG9KUygpIHdlIGN1cnJlbnRseSBy
ZXF1aXJlIFRlc3ROYW1lZENvbnN0cnVjdG9yIHlvdSB0byBvcHQgb3V0IG9mIGJpbmRpbmcgaGFy
ZGVuaW5nCisgICAgLy8gYnkgYWRkaW5nIHRoZSBTa2lwVlRhYmxlVmFsaWRhdGlvbiBhdHRyaWJ1
dGUgdG8gdGhlIGludGVyZmFjZSBJREwgZGVmaW5pdGlvbgogICAgIFJFTEVBU0VfQVNTRVJUKGFj
dHVhbFZUYWJsZVBvaW50ZXIgPT0gZXhwZWN0ZWRWVGFibGVQb2ludGVyKTsKICNlbmRpZgogICAg
IHJldHVybiBjcmVhdGVOZXdXcmFwcGVyPEpTVGVzdE5hbWVkQ29uc3RydWN0b3I+KGV4ZWMsIGds
b2JhbE9iamVjdCwgaW1wbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IGNjZDQzZTU5ZjlhMzQ3YjViYmExMjVl
MTAyMTljMGFkMDQzZmVjZTQuLjFmMmI1MWUzOTA5ZjU2M2ExMjQwNmI4OTA2YTU0YjRiNDM4ZmUw
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RPYmouY3BwCkBAIC0zMTAyLDkgKzMxMDIsMTUgQEAgSlNDOjpKU1ZhbHVlIHRvSlMo
SlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRl
c3RPYmoKICNlbHNlCiAgICAgdm9pZCogZXhwZWN0ZWRWVGFibGVQb2ludGVyID0gJl9aVFZON1dl
YkNvcmU3VGVzdE9iakVbMl07CiAjaWYgQ09NUElMRVIoQ0xBTkcpCisgICAgLy8gSWYgdGhpcyBm
YWlscyBUZXN0T2JqIGRvZXMgbm90IGhhdmUgYSB2dGFibGUsIHNvIHlvdSBuZWVkIHRvIGFkZCB0
aGUKKyAgICAvLyBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlIGF0dHJpYnV0ZSB0byB0aGUgaW50
ZXJmYWNlIGRlZmluaXRpb24KICAgICBDT01QSUxFX0FTU0VSVChfX2lzX3BvbHltb3JwaGljKFRl
c3RPYmopLCBUZXN0T2JqX2lzX25vdF9wb2x5bW9ycGhpYyk7CiAjZW5kaWYKICNlbmRpZgorICAg
IC8vIElmIHlvdSBoaXQgdGhpcyBhc3NlcnRpb24geW91IGVpdGhlciBoYXZlIGEgdXNlIGFmdGVy
IGZyZWUgYnVnLCBvcgorICAgIC8vIFRlc3RPYmogaGFzIHN1YmNsYXNzZXMuIElmIFRlc3RPYmog
aGFzIHN1YmNsYXNzZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8gdG8gdG9KUygpIHdlIGN1cnJl
bnRseSByZXF1aXJlIFRlc3RPYmogeW91IHRvIG9wdCBvdXQgb2YgYmluZGluZyBoYXJkZW5pbmcK
KyAgICAvLyBieSBhZGRpbmcgdGhlIFNraXBWVGFibGVWYWxpZGF0aW9uIGF0dHJpYnV0ZSB0byB0
aGUgaW50ZXJmYWNlIElETCBkZWZpbml0aW9uCiAgICAgUkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRh
YmxlUG9pbnRlciA9PSBleHBlY3RlZFZUYWJsZVBvaW50ZXIpOwogI2VuZGlmCiAgICAgcmV0dXJu
IGNyZWF0ZU5ld1dyYXBwZXI8SlNUZXN0T2JqPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IGI1MDBj
OTkwMDU3ZDVhM2Y1YjVjZThkOWE3MjA3ZjhhMzU4N2VlMzcuLjEwODk2NjcwNjQ1ZDg5NmJkOWNl
Njg2ODZjOTQxNTAyMWViMjdkNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9ycy5jcHAKQEAgLTI2Miw5ICsyNjIsMTUgQEAgSlNDOjpKU1ZhbHVlIHRvSlMoSlND
OjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRlc3RP
dmUKICNlbHNlCiAgICAgdm9pZCogZXhwZWN0ZWRWVGFibGVQb2ludGVyID0gJl9aVFZON1dlYkNv
cmUyNlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRVsyXTsKICNpZiBDT01QSUxFUihDTEFORykK
KyAgICAvLyBJZiB0aGlzIGZhaWxzIFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIGRvZXMgbm90
IGhhdmUgYSB2dGFibGUsIHNvIHlvdSBuZWVkIHRvIGFkZCB0aGUKKyAgICAvLyBJbXBsZW1lbnRh
dGlvbkxhY2tzVlRhYmxlIGF0dHJpYnV0ZSB0byB0aGUgaW50ZXJmYWNlIGRlZmluaXRpb24KICAg
ICBDT01QSUxFX0FTU0VSVChfX2lzX3BvbHltb3JwaGljKFRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzKSwgVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNfaXNfbm90X3BvbHltb3JwaGljKTsKICNl
bmRpZgogI2VuZGlmCisgICAgLy8gSWYgeW91IGhpdCB0aGlzIGFzc2VydGlvbiB5b3UgZWl0aGVy
IGhhdmUgYSB1c2UgYWZ0ZXIgZnJlZSBidWcsIG9yCisgICAgLy8gVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnMgaGFzIHN1YmNsYXNzZXMuIElmIFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIGhh
cyBzdWJjbGFzc2VzIHRoYXQgZ2V0IHBhc3NlZAorICAgIC8vIHRvIHRvSlMoKSB3ZSBjdXJyZW50
bHkgcmVxdWlyZSBUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyB5b3UgdG8gb3B0IG91dCBvZiBi
aW5kaW5nIGhhcmRlbmluZworICAgIC8vIGJ5IGFkZGluZyB0aGUgU2tpcFZUYWJsZVZhbGlkYXRp
b24gYXR0cmlidXRlIHRvIHRoZSBpbnRlcmZhY2UgSURMIGRlZmluaXRpb24KICAgICBSRUxFQVNF
X0FTU0VSVChhY3R1YWxWVGFibGVQb2ludGVyID09IGV4cGVjdGVkVlRhYmxlUG9pbnRlcik7CiAj
ZW5kaWYKICAgICByZXR1cm4gY3JlYXRlTmV3V3JhcHBlcjxKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAppbmRleCA3YmViNzYyOWRj
NTk4MDgyZDc2MTJjNDllMjhmYjZkMDcwOTA5NGQwLi42MmJlNWExMzNiMzRlODE1MmY0NWNjYjM2
YjI5YjZjOWI4NzI2NTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcApAQCAtNDEwLDkgKzQxMCwxNSBAQCBKU0M6OkpTVmFs
dWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGVzdFNlcgogI2Vsc2UKICAgICB2b2lkKiBleHBlY3RlZFZUYWJsZVBvaW50ZXIgPSAm
X1pUVk43V2ViQ29yZTM0VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZUVbMl07CiAj
aWYgQ09NUElMRVIoQ0xBTkcpCisgICAgLy8gSWYgdGhpcyBmYWlscyBUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlIGRvZXMgbm90IGhhdmUgYSB2dGFibGUsIHNvIHlvdSBuZWVkIHRv
IGFkZCB0aGUKKyAgICAvLyBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlIGF0dHJpYnV0ZSB0byB0
aGUgaW50ZXJmYWNlIGRlZmluaXRpb24KICAgICBDT01QSUxFX0FTU0VSVChfX2lzX3BvbHltb3Jw
aGljKFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UpLCBUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlX2lzX25vdF9wb2x5bW9ycGhpYyk7CiAjZW5kaWYKICNlbmRpZgor
ICAgIC8vIElmIHlvdSBoaXQgdGhpcyBhc3NlcnRpb24geW91IGVpdGhlciBoYXZlIGEgdXNlIGFm
dGVyIGZyZWUgYnVnLCBvcgorICAgIC8vIFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UgaGFzIHN1YmNsYXNzZXMuIElmIFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Ug
aGFzIHN1YmNsYXNzZXMgdGhhdCBnZXQgcGFzc2VkCisgICAgLy8gdG8gdG9KUygpIHdlIGN1cnJl
bnRseSByZXF1aXJlIFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UgeW91IHRvIG9w
dCBvdXQgb2YgYmluZGluZyBoYXJkZW5pbmcKKyAgICAvLyBieSBhZGRpbmcgdGhlIFNraXBWVGFi
bGVWYWxpZGF0aW9uIGF0dHJpYnV0ZSB0byB0aGUgaW50ZXJmYWNlIElETCBkZWZpbml0aW9uCiAg
ICAgUkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRhYmxlUG9pbnRlciA9PSBleHBlY3RlZFZUYWJsZVBv
aW50ZXIpOwogI2VuZGlmCiAgICAgcmV0dXJuIGNyZWF0ZU5ld1dyYXBwZXI8SlNUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5
cGVkZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUeXBlZGVmcy5jcHAKaW5kZXggNjk0NDQyZDdiMzgzZmFmYmI5Yzg3MTc2YzUyZDM0Yjc4N2Mw
Yzk5Yy4uZmZiZTIwNzY5Zjk4YTQyMGJjNjBjZDUyZDBiZjdiOWQ3ZTRiYjdmMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
VHlwZWRlZnMuY3BwCkBAIC02NDgsOSArNjQ4LDE1IEBAIEpTQzo6SlNWYWx1ZSB0b0pTKEpTQzo6
RXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUZXN0VHlw
CiAjZWxzZQogICAgIHZvaWQqIGV4cGVjdGVkVlRhYmxlUG9pbnRlciA9ICZfWlRWTjdXZWJDb3Jl
MTJUZXN0VHlwZWRlZnNFWzJdOwogI2lmIENPTVBJTEVSKENMQU5HKQorICAgIC8vIElmIHRoaXMg
ZmFpbHMgVGVzdFR5cGVkZWZzIGRvZXMgbm90IGhhdmUgYSB2dGFibGUsIHNvIHlvdSBuZWVkIHRv
IGFkZCB0aGUKKyAgICAvLyBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlIGF0dHJpYnV0ZSB0byB0
aGUgaW50ZXJmYWNlIGRlZmluaXRpb24KICAgICBDT01QSUxFX0FTU0VSVChfX2lzX3BvbHltb3Jw
aGljKFRlc3RUeXBlZGVmcyksIFRlc3RUeXBlZGVmc19pc19ub3RfcG9seW1vcnBoaWMpOwogI2Vu
ZGlmCiAjZW5kaWYKKyAgICAvLyBJZiB5b3UgaGl0IHRoaXMgYXNzZXJ0aW9uIHlvdSBlaXRoZXIg
aGF2ZSBhIHVzZSBhZnRlciBmcmVlIGJ1Zywgb3IKKyAgICAvLyBUZXN0VHlwZWRlZnMgaGFzIHN1
YmNsYXNzZXMuIElmIFRlc3RUeXBlZGVmcyBoYXMgc3ViY2xhc3NlcyB0aGF0IGdldCBwYXNzZWQK
KyAgICAvLyB0byB0b0pTKCkgd2UgY3VycmVudGx5IHJlcXVpcmUgVGVzdFR5cGVkZWZzIHlvdSB0
byBvcHQgb3V0IG9mIGJpbmRpbmcgaGFyZGVuaW5nCisgICAgLy8gYnkgYWRkaW5nIHRoZSBTa2lw
VlRhYmxlVmFsaWRhdGlvbiBhdHRyaWJ1dGUgdG8gdGhlIGludGVyZmFjZSBJREwgZGVmaW5pdGlv
bgogICAgIFJFTEVBU0VfQVNTRVJUKGFjdHVhbFZUYWJsZVBvaW50ZXIgPT0gZXhwZWN0ZWRWVGFi
bGVQb2ludGVyKTsKICNlbmRpZgogICAgIHJldHVybiBjcmVhdGVOZXdXcmFwcGVyPEpTVGVzdFR5
cGVkZWZzPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwpOwo=
</data>
<flag name="review"
          id="219717"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>