<?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>114478</bug_id>
          
          <creation_ts>2013-04-11 16:29:53 -0700</creation_ts>
          <short_desc>Add more type validation to debug builds</short_desc>
          <delta_ts>2013-04-12 10:25:10 -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>
          <dependson>114512</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joepeck</cc>
    
    <cc>kling</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>rniwa</cc>
    
    <cc>timothy</cc>
    
    <cc>tommyw</cc>
    
    <cc>zan</cc>
    
    <cc>zarvai</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>874278</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-11 16:29:53 -0700</bug_when>
    <thetext>Add more type validation to debug builds</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874279</commentid>
    <comment_count>1</comment_count>
      <attachid>197698</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-11 16:31:59 -0700</bug_when>
    <thetext>Created attachment 197698
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874283</commentid>
    <comment_count>2</comment_count>
      <attachid>197698</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-11 16:39:28 -0700</bug_when>
    <thetext>Comment on attachment 197698
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874323</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-11 18:41:54 -0700</bug_when>
    <thetext>Committed r148257: &lt;http://trac.webkit.org/changeset/148257&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874404</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-04-12 00:20:08 -0700</bug_when>
    <thetext>It appears that builds are still broken:

http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/47424

6&gt;C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\obj\WebCore\DerivedSources\JSBarInfo.cpp(152) : error C2440: &apos;reinterpret_cast&apos; : cannot convert from &apos;void (__cdecl *const [])(void)&apos; to &apos;void *&apos;
6&gt;        Conversion loses qualifiers
6&gt;C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\obj\WebCore\DerivedSources\JSConsole.cpp(502) : error C2440: &apos;reinterpret_cast&apos; : cannot convert from &apos;void (__cdecl *const [])(void)&apos; to &apos;void *&apos;
6&gt;        Conversion loses qualifiers

...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874433</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-04-12 01:58:33 -0700</bug_when>
    <thetext>I added the SkipVTableValidation attribute to the DOMSettableTokenList interface in r148269 to avoid crashes in the interace&apos;s toJS method. The crashes were occurring on the GTK and EFL builders when running the MicroData layout tests, the two ports being the only ones that enable the feature.

Please let me know if the fix is not appropriate and how to proceed in such case.

http://trac.webkit.org/changeset/148269

Crashes:
http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html
http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874559</commentid>
    <comment_count>6</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-04-12 06:22:02 -0700</bug_when>
    <thetext>Window release build is also borked after this:

12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore8LocationE
12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore15MediaControllerE
12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore11MessagePortE
12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore9NavigatorE
12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore13RadioNodeListE
12&gt;WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol __ZTVN7WebCore6ScreenE
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874706</commentid>
    <comment_count>7</comment_count>
    <who name="Zoltan Arvai">zarvai</who>
    <bug_when>2013-04-12 07:14:53 -0700</bug_when>
    <thetext>Qt Win build also broken, see bug 114512.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874808</commentid>
    <comment_count>8</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-12 09:50:18 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; I added the SkipVTableValidation attribute to the DOMSettableTokenList interface in r148269 to avoid crashes in the interace&apos;s toJS method. The crashes were occurring on the GTK and EFL builders when running the MicroData layout tests, the two ports being the only ones that enable the feature.
&gt; 
&gt; Please let me know if the fix is not appropriate and how to proceed in such case.
&gt; 
&gt; http://trac.webkit.org/changeset/148269
&gt; 
&gt; Crashes:
&gt; http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html
&gt; http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html

I suspect so, but i&apos;ll look to verify -- i need to come up with a better way to manage these than what currently happens (the problems are basically no due to an inability to determine (in the toJS function) whether there are any subclasses, or at codegen time whether there&apos;s a vtable</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874824</commentid>
    <comment_count>9</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-04-12 10:25:10 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #5)
&gt; &gt; I added the SkipVTableValidation attribute to the DOMSettableTokenList interface in r148269 to avoid crashes in the interace&apos;s toJS method. The crashes were occurring on the GTK and EFL builders when running the MicroData layout tests, the two ports being the only ones that enable the feature.
&gt; &gt; 
&gt; &gt; Please let me know if the fix is not appropriate and how to proceed in such case.
&gt; &gt; 
&gt; &gt; http://trac.webkit.org/changeset/148269
&gt; &gt; 
&gt; &gt; Crashes:
&gt; &gt; http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html
&gt; &gt; http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r148268%20(36738)/results.html
&gt; 
&gt; I suspect so, but i&apos;ll look to verify -- i need to come up with a better way to manage these than what currently happens (the problems are basically no due to an inability to determine (in the toJS function) whether there are any subclasses, or at codegen time whether there&apos;s a vtable

yup, thats the right fix -- i need to come up with a way to deal with types that have subclasses :-/</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197698</attachid>
            <date>2013-04-11 16:31:59 -0700</date>
            <delta_ts>2013-04-11 16:39:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114478-20130411163139.patch</filename>
            <type>text/plain</type>
            <size>24014</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGU5MmM3MjhjMDVjYTc1Nzg0MDM3YzY4
NjFhZThmZWYzZWViMDFmMDcuLmQ1YjMyMGRkYjVmMjNjNmY0NTNhMDM4Yzg1MTA4NzNhMDAwNDJj
OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTMtMDQtMTEgIE9saXZlciBIdW50ICA8b2xpdmVy
QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgbW9yZSB0eXBlIHZhbGlkYXRpb24gdG8gZGVidWcg
YnVpbGRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTQ0NzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgZmxhZworCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisKIDIwMTMtMDQtMTAgIFRoaWFn
byBNYXJjb3MgUC4gU2FudG9zICA8dGhpYWdvLnNhbnRvc0BpbnRlbC5jb20+CiAKICAgICAgICAg
W1dURl0gR2V0IHJpZCBvZiB0cnVuY2F0ZWQgdGhyZWFkIG5hbWUgd2FybmluZ3MgZm9yIG5vbi1X
aW5kb3dzIHBsYXRmb3JtcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDc0NGFhMjRmODgxNzE5ODJiNThhY2I0Yjk5
YTFjYzk3NTY0MWE3MjUuLjk3OTkzNzVjZjNkNmExN2MwOTM3MzM2ZDNiNDk2Y2UzNGZhOGFjOTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NSBAQAorMjAxMy0wNC0xMSAgT2xpdmVyIEh1bnQgIDxv
bGl2ZXJAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBtb3JlIHR5cGUgdmFsaWRhdGlvbiB0byBk
ZWJ1ZyBidWlsZHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExNDQ3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBhIGJ1bmNoIG9mIHR5cGUgY2hlY2tzIHRvIGRlYnVnIGFuZCBnYy12YWxpZGF0aW9u
IGJ1aWxkcy4gCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmlk
bDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbDoK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6CisgICAgICAgIChXZWJDb3JlOjpnZXRFeGlzdGlu
Z1dyYXBwZXIpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVO
ZXdXcmFwcGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bToKKyAgICAgICAgKEdldE5hdGl2ZVR5cGVGb3JDb252ZXJzaW9ucyk6CisgICAgICAgIChHZXRH
bnVWVGFibGVSZWZGb3JJbnRlcmZhY2UpOgorICAgICAgICAoR2V0R251VlRhYmxlTmFtZUZvcklu
dGVyZmFjZSk6CisgICAgICAgIChHZXRHbnVNYW5nbGVkTmFtZUZvckludGVyZmFjZSk6CisgICAg
ICAgIChHZXRHbnVWVGFibGVPZmZzZXRGb3JUeXBlKToKKyAgICAgICAgKEdldFdpblZUYWJsZVJl
ZkZvckludGVyZmFjZSk6CisgICAgICAgIChHZXRXaW5WVGFibGVOYW1lRm9ySW50ZXJmYWNlKToK
KyAgICAgICAgKEdldFdpbk1hbmdsZWROYW1lRm9ySW50ZXJmYWNlKToKKyAgICAgICAgKEdldE5h
bWVzcGFjZUZvckludGVyZmFjZSk6CisgICAgICAgIChHZXRJbXBsZW1lbnRhdGlvbkxhY2tzVlRh
YmxlRm9ySW50ZXJmYWNlKToKKyAgICAgICAgKEdldFNraXBWVGFibGVWYWxpZGF0aW9uRm9ySW50
ZXJmYWNlKToKKyAgICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb24pOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6CisgICAgICAgICogY3NzL0NTU1J1bGVM
aXN0LmlkbDoKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGw6CisgICAgICAg
ICogZG9tL0NsaXBib2FyZC5pZGw6CisgICAgICAgICogZG9tL0RPTVN0cmluZ01hcC5pZGw6Cisg
ICAgICAgICogZG9tL011dGF0aW9uUmVjb3JkLmlkbDoKKyAgICAgICAgKiBkb20vTm9kZUxpc3Qu
aWRsOgorICAgICAgICAqIGh0bWwvRE9NVG9rZW5MaXN0LmlkbDoKKyAgICAgICAgKiBodG1sL3Ry
YWNrL1RleHRUcmFjay5pZGw6CisgICAgICAgICogaW5zcGVjdG9yL1NjcmlwdFByb2ZpbGVOb2Rl
LmlkbDoKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2UuaWRsOgorICAgICAgICAqIHhtbC9YUGF0
aE5TUmVzb2x2ZXIuaWRsOgorCiAyMDEzLTA0LTExICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxh
bGxhbi5qZW5zZW5AZGlnaWEuY29tPgogCiAgICAgICAgIGhhbmRsZU1vdXNlTW92ZUV2ZW50IHNo
b3VsZCBsZXQgaGl0LXRlc3RpbmcgaGl0LXRlc3Qgc2Nyb2xsYmFycwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm0uaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgKaW5kZXgg
MDVhNTk1NDVjYzViZWM5NzMzNTFhODI1MmIxYmJlMzRkZjhhZDBkYi4uZGM5Zjg5OTAxYTlhYTE3
N2RkOTkzMmFmYTk3NzAwYTY3N2IwYzcxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxh
dGZvcm0uaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCkBAIC05NjUsNiArOTY1LDEw
IEBACiAjZGVmaW5lIEVOQUJMRV9HQ19WQUxJREFUSU9OIDEKICNlbmRpZgogCisjaWYgIWRlZmlu
ZWQoRU5BQkxFX0JJTkRJTkdfSU5URUdSSVRZKSAmJiAoRU5BQkxFKEdDX1ZBTElEQVRJT04pIHx8
ICFkZWZpbmVkKE5ERUJVRykpCisjZGVmaW5lIEVOQUJMRV9CSU5ESU5HX0lOVEVHUklUWSAxCisj
ZW5kaWYKKwogI2lmIFBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKElPUykgJiYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDcwCiAjZGVmaW5lIFdURl9VU0VfQVZGT1VOREFU
SU9OIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYVN0cmVhbS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L01lZGlhU3RyZWFtLmlkbAppbmRleCAxMzczYzMxYjRjZWQzMzU0ZDk4ZGE0NzFmZWI3ZWQzYmM4
ZDg1NzIzLi4zZmIyZmY5YjMyZWU1NWIwZjZhNWM4NTI3NjJlOTJkY2U5ODQ2OGFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmlkbApA
QCAtMzAsNyArMzAsNyBAQAogICAgIENvbnN0cnVjdG9yKGluIE1lZGlhU3RyZWFtVHJhY2tbXSB0
cmFja3MpLAogICAgIENvbnN0cnVjdG9yUGFyYW1ldGVycz0wLAogICAgIENhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsCi0gICAgVjhTa2lwVlRhYmxlVmFsaWRhdGlvbgorICAgIFNraXBW
VGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBNZWRpYVN0cmVhbSB7CiAgICAgLy8gREVQUkVD
QVRFRAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbGFiZWw7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvRGVzdGluYXRpb25Ob2RlLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9EZXN0aW5hdGlvbk5vZGUu
aWRsCmluZGV4IDU0ODFmZTc3ZjQ3NDQyNzk1NDVjNjM4MGU0YjVlYzNiNTEwOWNmZjMuLjljODBk
ZjEyNDJjMmQyYmE2NWVlODM4MTMzNzBkNzhiZTJiNWQ0YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9EZXN0aW5hdGlvbk5vZGUuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9EZXN0aW5hdGlvbk5vZGUuaWRsCkBA
IC0yNSw3ICsyNSw3IEBACiBbCiAgICAgQ29uZGl0aW9uYWw9V0VCX0FVRElPLAogICAgIEpTR2Vu
ZXJhdGVUb0pTT2JqZWN0LAotICAgIFY4U2tpcFZUYWJsZVZhbGlkYXRpb24KKyAgICBTa2lwVlRh
YmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgQXVkaW9EZXN0aW5hdGlvbk5vZGUgOiBBdWRpb05v
ZGUgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIG1heENoYW5uZWxDb3Vu
dDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggYzgyMjQ0MWY3MzBmMDI5YzBhN2I5ZTgzNmYwOGZkNjgzYjAzYTBhMy4uYTgw
Mzk0OWQ0YTFjOTdjODBjY2I5MTc3YjQxNTYwZGRmZmM1YjQ1MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTk4NSw2ICs5OTg1
LDE0IEBACiAJCUE3REI0MTgxMTRDRTFGMEEwMEEyRTMxNiAvKiBTaGFkb3dSb290LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTaGFkb3dSb290LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTdEQkY4REIxMjc2OTE5QzAwNkI2MDA4IC8qIFRleHRDaGVja2luZ0hlbHBlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0Q2hlY2tpbmdIZWxw
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhEQzEyNzY5MTlDMDA2
QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBN0YxRjRCQTE3MTQ4QkRCMDBDRDQ4NTIgLyogRE9NV2luZG93UXVvdGEuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IERP
TVdpbmRvd1F1b3RhLmlkbDsgcGF0aCA9IE1vZHVsZXMvcXVvdGEvRE9NV2luZG93UXVvdGEuaWRs
OyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE3RjFGNEJCMTcxNDhCREIwMENENDg1
MiAvKiBOYXZpZ2F0b3JTdG9yYWdlUXVvdGEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE5hdmlnYXRvclN0b3JhZ2VRdW90
YS5pZGw7IHBhdGggPSBNb2R1bGVzL3F1b3RhL05hdmlnYXRvclN0b3JhZ2VRdW90YS5pZGw7IHNv
dXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTdGMUY0QkMxNzE0OEJEQjAwQ0Q0ODUyIC8q
IFN0b3JhZ2VFcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBTdG9yYWdlRXJyb3JDYWxsYmFjay5pZGw7
IHBhdGggPSBNb2R1bGVzL3F1b3RhL1N0b3JhZ2VFcnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJl
ZSA9IFNPVVJDRV9ST09UOyB9OworCQlBN0YxRjRCRDE3MTQ4QkRCMDBDRDQ4NTIgLyogU3RvcmFn
ZUluZm8uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgbmFtZSA9IFN0b3JhZ2VJbmZvLmlkbDsgcGF0aCA9IE1vZHVsZXMvcXVvdGEvU3Rv
cmFnZUluZm8uaWRsOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE3RjFGNEJFMTcx
NDhCREIwMENENDg1MiAvKiBTdG9yYWdlUXVvdGEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IFN0b3JhZ2VRdW90YS5pZGw7
IHBhdGggPSBNb2R1bGVzL3F1b3RhL1N0b3JhZ2VRdW90YS5pZGw7IHNvdXJjZVRyZWUgPSBTT1VS
Q0VfUk9PVDsgfTsKKwkJQTdGMUY0QkYxNzE0OEJEQjAwQ0Q0ODUyIC8qIFN0b3JhZ2VRdW90YUNh
bGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IG5hbWUgPSBTdG9yYWdlUXVvdGFDYWxsYmFjay5pZGw7IHBhdGggPSBNb2R1bGVz
L3F1b3RhL1N0b3JhZ2VRdW90YUNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09U
OyB9OworCQlBN0YxRjRDMDE3MTQ4QkRCMDBDRDQ4NTIgLyogU3RvcmFnZVVzYWdlQ2FsbGJhY2su
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgbmFtZSA9IFN0b3JhZ2VVc2FnZUNhbGxiYWNrLmlkbDsgcGF0aCA9IE1vZHVsZXMvcXVvdGEv
U3RvcmFnZVVzYWdlQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJ
CUE3RjFGNEMxMTcxNDhCREIwMENENDg1MiAvKiBXb3JrZXJOYXZpZ2F0b3JTdG9yYWdlUXVvdGEu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgbmFtZSA9IFdvcmtlck5hdmlnYXRvclN0b3JhZ2VRdW90YS5pZGw7IHBhdGggPSBNb2R1bGVz
L3F1b3RhL1dvcmtlck5hdmlnYXRvclN0b3JhZ2VRdW90YS5pZGw7IHNvdXJjZVRyZWUgPSBTT1VS
Q0VfUk9PVDsgfTsKIAkJQTdGNUQ5NEQxMzg0RjAyRDAwQTI5QTg3IC8qIE5vZGVSZW5kZXJpbmdD
b250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vZGVSZW5k
ZXJpbmdDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdGNUQ5NEUx
Mzg0RjAyRDAwQTI5QTg3IC8qIE5vZGVSZW5kZXJpbmdDb250ZXh0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5vZGVSZW5kZXJpbmdDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUE3RjczRUQ5MTY5QUQ3QUEwMENCQUE0QiAvKiBET01TaGFkb3dSb290
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVNoYWRvd1Jvb3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE1NDcyLDYgKzE1NDgwLDE0IEBACiAJCTg5RjYw
QjE3MTU3RjZBMDIwMDc1RTE1NyAvKiBRdW90YSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCisJCQkJQTdGMUY0QkExNzE0OEJEQjAwQ0Q0ODUyIC8qIERPTVdpbmRv
d1F1b3RhLmlkbCAqLywKKwkJCQlBN0YxRjRCQjE3MTQ4QkRCMDBDRDQ4NTIgLyogTmF2aWdhdG9y
U3RvcmFnZVF1b3RhLmlkbCAqLywKKwkJCQlBN0YxRjRCQzE3MTQ4QkRCMDBDRDQ4NTIgLyogU3Rv
cmFnZUVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUE3RjFGNEJEMTcxNDhCREIwMENENDg1MiAv
KiBTdG9yYWdlSW5mby5pZGwgKi8sCisJCQkJQTdGMUY0QkUxNzE0OEJEQjAwQ0Q0ODUyIC8qIFN0
b3JhZ2VRdW90YS5pZGwgKi8sCisJCQkJQTdGMUY0QkYxNzE0OEJEQjAwQ0Q0ODUyIC8qIFN0b3Jh
Z2VRdW90YUNhbGxiYWNrLmlkbCAqLywKKwkJCQlBN0YxRjRDMDE3MTQ4QkRCMDBDRDQ4NTIgLyog
U3RvcmFnZVVzYWdlQ2FsbGJhY2suaWRsICovLAorCQkJCUE3RjFGNEMxMTcxNDhCREIwMENENDg1
MiAvKiBXb3JrZXJOYXZpZ2F0b3JTdG9yYWdlUXVvdGEuaWRsICovLAogCQkJCTg5MkFCRTVGMTZF
RUUyRTUwMDlGMzU4NyAvKiBKU0RPTVdpbmRvd1F1b3RhLmggKi8sCiAJCQkJODkyQUJFNUMxNkVF
RTJBQTAwOUYzNTg3IC8qIEpTTmF2aWdhdG9yU3RvcmFnZVF1b3RhLmNwcCAqLywKIAkJCQk4OTJB
QkU1RDE2RUVFMkFBMDA5RjM1ODcgLyogSlNOYXZpZ2F0b3JTdG9yYWdlUXVvdGEuaCAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5kZXggY2Y0OGU2MjI4ZWRk
ZDVjZWVmZTU3MWRlZWZkZTYzNmI4OGZlNWI4OS4uMTVhZTA5ODNlYzNlZjgwMTYyNjJhNTA2MTA4
OWUxODg4MTdlZTk3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01CaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5n
LmgKQEAgLTIwMCw2ICsyMDAsMTkgQEAgY2xhc3MgRE9NU3RyaW5nTGlzdDsKICAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8V3JhcHBlckNsYXNzPihleGVjLCBnbG9iYWxPYmplY3QsIGRvbU9i
amVjdCk7CiAgICAgfQogCisgICAgdGVtcGxhdGU8Y2xhc3MgV3JhcHBlckNsYXNzLCBjbGFzcyBE
T01DbGFzcz4gaW5saW5lIEpTQzo6SlNWYWx1ZSBnZXRFeGlzdGluZ1dyYXBwZXIoSlNDOjpFeGVj
U3RhdGUqIGV4ZWMsIERPTUNsYXNzKiBkb21PYmplY3QpCisgICAgeworICAgICAgICBBU1NFUlQo
ZG9tT2JqZWN0KTsKKyAgICAgICAgcmV0dXJuIGdldENhY2hlZFdyYXBwZXIoY3VycmVudFdvcmxk
KGV4ZWMpLCBkb21PYmplY3QpOworICAgIH0KKworICAgIHRlbXBsYXRlPGNsYXNzIFdyYXBwZXJD
bGFzcywgY2xhc3MgRE9NQ2xhc3M+IGlubGluZSBKU0M6OkpTVmFsdWUgY3JlYXRlTmV3V3JhcHBl
cihKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
RE9NQ2xhc3MqIGRvbU9iamVjdCkKKyAgICB7CisgICAgICAgIEFTU0VSVChkb21PYmplY3QpOwor
ICAgICAgICBBU1NFUlQoIWdldENhY2hlZFdyYXBwZXIoY3VycmVudFdvcmxkKGV4ZWMpLCBkb21P
YmplY3QpKTsKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8V3JhcHBlckNsYXNzPihleGVj
LCBnbG9iYWxPYmplY3QsIGRvbU9iamVjdCk7CisgICAgfQorCiAgICAgaW5saW5lIEpTQzo6SlNW
YWx1ZSBhcmd1bWVudE9yTnVsbChKU0M6OkV4ZWNTdGF0ZSogZXhlYywgdW5zaWduZWQgaW5kZXgp
CiAgICAgewogICAgICAgICByZXR1cm4gaW5kZXggPj0gZXhlYy0+YXJndW1lbnRDb3VudCgpID8g
SlNDOjpKU1ZhbHVlKCkgOiBleGVjLT5hcmd1bWVudChpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDJhMDM0OGY3
NTk2NmJmMWI0N2ZkZDljMzcxOGYyY2QxMjBkNzg0ZmEuLjZlZDVkMjg1MTcyMWE0NTBkZDA0NTdk
NTZkNjY2MTFhMTU0MDhkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC05LDYgKzksNyBAQAogIyBDb3B5cmlnaHQgKEMp
IDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCiAjIENv
cHlyaWdodCAoQykgMjAxMSBQYXRyaWNrIEdhbnN0ZXJlciA8cGFyb2dhQHdlYmtpdC5vcmc+CiAj
IENvcHlyaWdodCAoQykgMjAxMiBFcmljc3NvbiBBQi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMg
Q29weXJpZ2h0IChDKSAyMDA3LCAyMDA4LCAyMDA5LCAyMDEyIEdvb2dsZSBJbmMuCiAjCiAjIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKICMgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMKQEAgLTEzOTUsNiArMTM5NiwxMjggQEAgRU5ECiBFTkQKIH0KIAorc3ViIEdldE5h
dGl2ZVR5cGVGb3JDb252ZXJzaW9ucworeworICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKKyAg
ICBteSAkaW50ZXJmYWNlTmFtZSA9ICRpbnRlcmZhY2UtPm5hbWU7CisgICAgJGludGVyZmFjZU5h
bWUgPSAkY29kZUdlbmVyYXRvci0+R2V0U1ZHVHlwZU5lZWRpbmdUZWFyT2ZmKCRpbnRlcmZhY2VO
YW1lKSBpZiAkY29kZUdlbmVyYXRvci0+SXNTVkdUeXBlTmVlZGluZ1RlYXJPZmYoJGludGVyZmFj
ZU5hbWUpOworICAgIHJldHVybiAkaW50ZXJmYWNlTmFtZTsKK30KKworIyBTZWUgaHR0cDovL3Jl
ZnNwZWNzLmxpbnV4LWZvdW5kYXRpb24ub3JnL2N4eGFiaS0xLjgzLmh0bWwuCitzdWIgR2V0R251
VlRhYmxlUmVmRm9ySW50ZXJmYWNlCit7CisgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OworICAg
IG15ICR2dGFibGVOYW1lID0gR2V0R251VlRhYmxlTmFtZUZvckludGVyZmFjZSgkaW50ZXJmYWNl
KTsKKyAgICBpZiAoISR2dGFibGVOYW1lKSB7CisgICAgICAgIHJldHVybiAiMCI7CisgICAgfQor
ICAgIG15ICR0eXBlbmFtZSA9IEdldE5hdGl2ZVR5cGVGb3JDb252ZXJzaW9ucygkaW50ZXJmYWNl
KTsKKyAgICBteSAkb2Zmc2V0ID0gR2V0R251VlRhYmxlT2Zmc2V0Rm9yVHlwZSgkdHlwZW5hbWUp
OworICAgIHJldHVybiAiJiIgLiAkdnRhYmxlTmFtZSAuICJbIiAuICRvZmZzZXQgLiAiXSI7Cit9
CisKK3N1YiBHZXRHbnVWVGFibGVOYW1lRm9ySW50ZXJmYWNlCit7CisgICAgbXkgJGludGVyZmFj
ZSA9IHNoaWZ0OworICAgIG15ICR0eXBlbmFtZSA9IEdldE5hdGl2ZVR5cGVGb3JDb252ZXJzaW9u
cygkaW50ZXJmYWNlKTsKKyAgICBteSAkdGVtcGxhdGVQb3NpdGlvbiA9IGluZGV4KCR0eXBlbmFt
ZSwgIjwiKTsKKyAgICByZXR1cm4gIiIgaWYgJHRlbXBsYXRlUG9zaXRpb24gIT0gLTE7CisgICAg
cmV0dXJuICIiIGlmIEdldEltcGxlbWVudGF0aW9uTGFja3NWVGFibGVGb3JJbnRlcmZhY2UoJGlu
dGVyZmFjZSk7CisgICAgcmV0dXJuICIiIGlmIEdldFNraXBWVGFibGVWYWxpZGF0aW9uRm9ySW50
ZXJmYWNlKCRpbnRlcmZhY2UpOworICAgIHJldHVybiAiX1pUViIgLiBHZXRHbnVNYW5nbGVkTmFt
ZUZvckludGVyZmFjZSgkaW50ZXJmYWNlKTsKK30KKworc3ViIEdldEdudU1hbmdsZWROYW1lRm9y
SW50ZXJmYWNlCit7CisgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OworICAgIG15ICR0eXBlbmFt
ZSA9IEdldE5hdGl2ZVR5cGVGb3JDb252ZXJzaW9ucygkaW50ZXJmYWNlKTsKKyAgICBteSAkdGVt
cGxhdGVQb3NpdGlvbiA9IGluZGV4KCR0eXBlbmFtZSwgIjwiKTsKKyAgICBpZiAoJHRlbXBsYXRl
UG9zaXRpb24gIT0gLTEpIHsKKyAgICAgICAgcmV0dXJuICIiOworICAgIH0KKyAgICBteSAkbWFu
Z2xlZFR5cGUgPSBsZW5ndGgoJHR5cGVuYW1lKSAuICR0eXBlbmFtZTsKKyAgICBteSAkbmFtZXNw
YWNlID0gR2V0TmFtZXNwYWNlRm9ySW50ZXJmYWNlKCRpbnRlcmZhY2UpOworICAgIG15ICRtYW5n
bGVkTmFtZXNwYWNlID0gICJOIiAuIGxlbmd0aCgkbmFtZXNwYWNlKSAuICRuYW1lc3BhY2U7Cisg
ICAgcmV0dXJuICRtYW5nbGVkTmFtZXNwYWNlIC4gJG1hbmdsZWRUeXBlIC4gIkUiOworfQorCitz
dWIgR2V0R251VlRhYmxlT2Zmc2V0Rm9yVHlwZQoreworICAgIG15ICR0eXBlbmFtZSA9IHNoaWZ0
OworICAgIGlmICgkdHlwZW5hbWUgZXEgIlNWR0FFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5h
bWUgZXEgIlNWR0NpcmNsZUVsZW1lbnQiCisgICAgICAgIHx8ICR0eXBlbmFtZSBlcSAiU1ZHQ2xp
cFBhdGhFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5hbWUgZXEgIlNWR0RlZnNFbGVtZW50Igor
ICAgICAgICB8fCAkdHlwZW5hbWUgZXEgIlNWR0VsbGlwc2VFbGVtZW50IgorICAgICAgICB8fCAk
dHlwZW5hbWUgZXEgIlNWR0ZvcmVpZ25PYmplY3RFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5h
bWUgZXEgIlNWR0dFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5hbWUgZXEgIlNWR0ltYWdlRWxl
bWVudCIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVxICJTVkdMaW5lRWxlbWVudCIKKyAgICAgICAg
fHwgJHR5cGVuYW1lIGVxICJTVkdQYXRoRWxlbWVudCIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVx
ICJTVkdQb2x5RWxlbWVudCIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVxICJTVkdQb2x5Z29uRWxl
bWVudCIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVxICJTVkdQb2x5bGluZUVsZW1lbnQiCisgICAg
ICAgIHx8ICR0eXBlbmFtZSBlcSAiU1ZHUmVjdEVsZW1lbnQiCisgICAgICAgIHx8ICR0eXBlbmFt
ZSBlcSAiU1ZHU1ZHRWxlbWVudCIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVxICJTVkdTdHlsZWRM
b2NhdGFibGVFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5hbWUgZXEgIlNWR1N0eWxlZFRyYW5z
Zm9ybWFibGVFbGVtZW50IgorICAgICAgICB8fCAkdHlwZW5hbWUgZXEgIlNWR1N3aXRjaEVsZW1l
bnQiCisgICAgICAgIHx8ICR0eXBlbmFtZSBlcSAiU1ZHVGV4dEVsZW1lbnQiCisgICAgICAgIHx8
ICR0eXBlbmFtZSBlcSAiU1ZHVHJhbnNmb3JtYWJsZSIKKyAgICAgICAgfHwgJHR5cGVuYW1lIGVx
ICJTVkdVc2VFbGVtZW50IikgeworICAgICAgICByZXR1cm4gIjMiOworICAgIH0KKyAgICByZXR1
cm4gIjIiOworfQorCisjIFNlZSBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL01pY3Jvc29m
dF9WaXN1YWxfQyUyQiUyQl9OYW1lX01hbmdsaW5nLgorc3ViIEdldFdpblZUYWJsZVJlZkZvcklu
dGVyZmFjZQoreworICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKKyAgICBteSAkdnRhYmxlTmFt
ZSA9IEdldFdpblZUYWJsZU5hbWVGb3JJbnRlcmZhY2UoJGludGVyZmFjZSk7CisgICAgcmV0dXJu
IDAgaWYgISR2dGFibGVOYW1lOworICAgIHJldHVybiAiX19pZGVudGlmaWVyKFwiIiAuICR2dGFi
bGVOYW1lIC4gIlwiKSI7Cit9CisKK3N1YiBHZXRXaW5WVGFibGVOYW1lRm9ySW50ZXJmYWNlCit7
CisgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OworICAgIG15ICR0eXBlbmFtZSA9IEdldE5hdGl2
ZVR5cGVGb3JDb252ZXJzaW9ucygkaW50ZXJmYWNlKTsKKyAgICBteSAkdGVtcGxhdGVQb3NpdGlv
biA9IGluZGV4KCR0eXBlbmFtZSwgIjwiKTsKKyAgICByZXR1cm4gIiIgaWYgJHRlbXBsYXRlUG9z
aXRpb24gIT0gLTE7CisgICAgcmV0dXJuICIiIGlmIEdldEltcGxlbWVudGF0aW9uTGFja3NWVGFi
bGVGb3JJbnRlcmZhY2UoJGludGVyZmFjZSk7CisgICAgcmV0dXJuICIiIGlmIEdldFNraXBWVGFi
bGVWYWxpZGF0aW9uRm9ySW50ZXJmYWNlKCRpbnRlcmZhY2UpOworICAgIHJldHVybiAiPz9fNyIg
LiBHZXRXaW5NYW5nbGVkTmFtZUZvckludGVyZmFjZSgkaW50ZXJmYWNlKSAuICI2QkAiOworfQor
CitzdWIgR2V0V2luTWFuZ2xlZE5hbWVGb3JJbnRlcmZhY2UKK3sKKyAgICBteSAkaW50ZXJmYWNl
ID0gc2hpZnQ7CisgICAgbXkgJHR5cGVuYW1lID0gR2V0TmF0aXZlVHlwZUZvckNvbnZlcnNpb25z
KCRpbnRlcmZhY2UpOworICAgIG15ICRuYW1lc3BhY2UgPSBHZXROYW1lc3BhY2VGb3JJbnRlcmZh
Y2UoJGludGVyZmFjZSk7CisgICAgcmV0dXJuICR0eXBlbmFtZSAuICJAIiAuICRuYW1lc3BhY2Ug
LiAiQEAiOworfQorCitzdWIgR2V0TmFtZXNwYWNlRm9ySW50ZXJmYWNlCit7CisgICAgbXkgJGlu
dGVyZmFjZSA9IHNoaWZ0OworICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSW1wbGVtZW50YXRpb25OYW1lc3BhY2UifSB8fCAiV2ViQ29yZSI7Cit9CisKK3N1YiBH
ZXRJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlRm9ySW50ZXJmYWNlCit7CisgICAgbXkgJGludGVy
ZmFjZSA9IHNoaWZ0OworICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSJ9OworfQorCitzdWIgR2V0U2tpcFZUYWJsZVZh
bGlkYXRpb25Gb3JJbnRlcmZhY2UKK3sKKyAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CisgICAg
cmV0dXJuICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJTa2lwVlRhYmxlVmFsaWRh
dGlvbiJ9OworfQorCisKIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiB7CiAgICAgbXkgKCRv
YmplY3QsICRpbnRlcmZhY2UpID0gQF87CkBAIC0xOTIyLDcgKzIwNDUsNiBAQCBzdWIgR2VuZXJh
dGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNoaWZ0KEBhcmd1bWVudHMsIEBjYWxsV2l0aEFyZ3MpOwotCiAgICAg
ICAgICAgICAgICAgICAgICAgICBteSAkanNUeXBlID0gTmF0aXZlVG9KU1ZhbHVlKCRhdHRyaWJ1
dGUtPnNpZ25hdHVyZSwgMCwgJGludGVyZmFjZU5hbWUsICIke2Z1bmN0aW9uTmFtZX0oIiAuIGpv
aW4oIiwgIiwgQGFyZ3VtZW50cykgLiAiKSIsICJjYXN0ZWRUaGlzIik7CiAgICAgICAgICAgICAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAkaW50ZXJmYWNlTmFtZSogaW1wbCA9
IHN0YXRpY19jYXN0PCRpbnRlcmZhY2VOYW1lKj4oY2FzdGVkVGhpcy0+aW1wbCgpKTtcbiIpIGlm
ICEkYXR0cmlidXRlLT5pc1N0YXRpYzsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkY29k
ZUdlbmVyYXRvci0+SXNTVkdBbmltYXRlZFR5cGUoJHR5cGUpKSB7CkBAIC0yNTc4LDEzICsyNzAw
LDU5IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgfQogCiAgICAgaWYgKFNob3Vs
ZEdlbmVyYXRlVG9KU0ltcGxlbWVudGF0aW9uKCRoYXNQYXJlbnQsICRpbnRlcmZhY2UpKSB7Cisg
ICAgICAgIG15ICR2dGFibGVOYW1lR251ID0gR2V0R251VlRhYmxlTmFtZUZvckludGVyZmFjZSgk
aW50ZXJmYWNlKTsKKyAgICAgICAgbXkgJHZ0YWJsZVJlZkdudSA9IEdldEdudVZUYWJsZVJlZkZv
ckludGVyZmFjZSgkaW50ZXJmYWNlKTsKKyAgICAgICAgbXkgJHZ0YWJsZVJlZldpbiA9IEdldFdp
blZUYWJsZVJlZkZvckludGVyZmFjZSgkaW50ZXJmYWNlKTsKKworICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgPDxFTkQpIGlmICR2dGFibGVOYW1lR251OworI2lmIEVOQUJMRShCSU5ESU5HX0lO
VEVHUklUWSkKKyNpZiBkZWZpbmVkKE9TX1dJTikKKyNwcmFnbWEgd2FybmluZyhkaXNhYmxlOiA0
NDgzKQorZXh0ZXJuICJDIiB7IGV4dGVybiB2b2lkICgqY29uc3QgJHt2dGFibGVSZWZXaW59W10p
KCk7IH0KKyNlbHNlCitleHRlcm4gIkMiIHsgZXh0ZXJuIHZvaWQqICR7dnRhYmxlTmFtZUdudX1b
XTsgfQorI2VuZGlmCisjZW5kaWYKK0VORAogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIkpT
Qzo6SlNWYWx1ZSB0b0pTKEpTQzo6RXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCAkaW1wbFR5cGUqIGltcGwpXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJ7XG4iKTsKKyAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsKKyAgICBp
ZiAoIWltcGwpCisgICAgICAgIHJldHVybiBqc051bGwoKTsKK0VORAorCiAgICAgICAgIGlmICgk
c3ZnUHJvcGVydHlUeXBlKSB7Ci0gICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBy
ZXR1cm4gd3JhcDwkY2xhc3NOYW1lLCAkaW1wbFR5cGU+KGV4ZWMsIGdsb2JhbE9iamVjdCwgaW1w
bCk7XG4iKTsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmIChKU1ZhbHVl
IHJlc3VsdCA9IGdldEV4aXN0aW5nV3JhcHBlcjwkY2xhc3NOYW1lLCAkaW1wbFR5cGU+KGV4ZWMs
IGltcGwpKSByZXR1cm4gcmVzdWx0O1xuIik7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gd3JhcDwkY2xhc3NOYW1lPihleGVjLCBn
bG9iYWxPYmplY3QsIGltcGwpO1xuIik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IiAgICBpZiAoSlNWYWx1ZSByZXN1bHQgPSBnZXRFeGlzdGluZ1dyYXBwZXI8JGNsYXNzTmFtZT4o
ZXhlYywgaW1wbCkpIHJldHVybiByZXN1bHQ7XG4iKTsKICAgICAgICAgfQorICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgPDxFTkQpIGlmICR2dGFibGVOYW1lR251OworCisjaWYgRU5BQkxFKEJJ
TkRJTkdfSU5URUdSSVRZKQorICAgIHZvaWQqIGFjdHVhbFZUYWJsZVBvaW50ZXIgPSAqKHJlaW50
ZXJwcmV0X2Nhc3Q8dm9pZCoqPihpbXBsKSk7CisjaWYgZGVmaW5lZChPU19XSU4pCisgICAgdm9p
ZCogZXhwZWN0ZWRWVGFibGVQb2ludGVyID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oJHt2dGFi
bGVSZWZXaW59KTsKKyNlbHNlCisgICAgdm9pZCogZXhwZWN0ZWRWVGFibGVQb2ludGVyID0gJHt2
dGFibGVSZWZHbnV9OworI2lmIENPTVBJTEVSKENMQU5HKQorICAgIENPTVBJTEVfQVNTRVJUKF9f
aXNfcG9seW1vcnBoaWMoJGltcGxUeXBlKSwgJHtpbXBsVHlwZX1faXNfbm90X3BvbHltb3JwaGlj
KTsKKyNlbmRpZgorI2VuZGlmCisgICAgUkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRhYmxlUG9pbnRl
ciA9PSBleHBlY3RlZFZUYWJsZVBvaW50ZXIpOworI2VuZGlmCitFTkQKKyAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsIDw8RU5EKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSJ9ICYmICR2dGFibGVOYW1lR251OworI2lmIENPTVBJ
TEVSKENMQU5HKQorICAgICAgICBDT01QSUxFX0FTU0VSVCghX19pc19wb2x5bW9ycGhpYygkaW1w
bFR5cGUpLCAke2ltcGxUeXBlfV9pc19wb2x5bW9ycGhpY19idXRfaWRsX2NsYWltc19ub3RfdG9f
YmUpOworI2VuZGlmCitFTkQKKworICAgICAgICBpZiAoJHN2Z1Byb3BlcnR5VHlwZSkgeworICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGNyZWF0ZU5ld1dyYXBwZXI8
JGNsYXNzTmFtZSwgJGltcGxUeXBlPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwpO1xuIik7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1
cm4gY3JlYXRlTmV3V3JhcHBlcjwkY2xhc3NOYW1lPihleGVjLCBnbG9iYWxPYmplY3QsIGltcGwp
O1xuIik7CisgICAgICAgIH0KKwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7
CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lE
TEF0dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRy
aWJ1dGVzLnR4dAppbmRleCA1OWM5YjA1ZjIxODJiNzUxYjJkZmMwMDU5NzgwYWU4MWQwZDgyYjcy
Li5hMzI5NzQ1MjQ1Mzk0YjkwNzJjZjA4ODYxYmU1NzAwZmM1ZGJkMTY0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKQEAgLTEwNCw2
ICsxMDQsNyBAQCBSZWZsZWN0PSoKIFJlcGxhY2VhYmxlCiBSZXBsYWNlYWJsZUNvbnN0cnVjdG9y
CiBSZXR1cm5OZXdPYmplY3QKK1NraXBWVGFibGVWYWxpZGF0aW9uCiBTdHJpY3RUeXBlQ2hlY2tp
bmcKIFN1cHBsZW1lbnRhbD0qCiBTdXBwcmVzc1RvSlNPYmplY3QKQEAgLTEzMCw3ICsxMzEsNiBA
QCBWOE5vV3JhcHBlckNhY2hlCiBWOE1lYXN1cmVBcz0qCiBWOFBlcldvcmxkQmluZGluZ3MKIFY4
UmVhZE9ubHkKLVY4U2tpcFZUYWJsZVZhbGlkYXRpb24KIFY4VW5mb3JnZWFibGUKIFY4V3JhcEFz
RnVuY3Rpb24KIFY4RGVsaXZlckN1c3RvbUVsZW1lbnRDYWxsYmFja3MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UnVsZUxpc3QuaWRsCmluZGV4IDY4OGJhMmU0ZGI1MGI0YjQ3YjE4ZTZiMWIxOTAyOWM0NmJmZTdj
NjUuLjRlYWE4MzE2MjZjNDM2YmU2NWVlM2JhNjE0ZmJhZjFiN2FiZWEzMDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1J1bGVMaXN0LmlkbApAQCAtMjcsNiArMjcsNyBAQAogWwogICAgIEpTQ3VzdG9tSXNS
ZWFjaGFibGUsCiAgICAgSW5kZXhlZEdldHRlciwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgog
XSBpbnRlcmZhY2UgQ1NTUnVsZUxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25l
ZCBsb25nICAgIGxlbmd0aDsKICAgICBDU1NSdWxlICAgICAgICAgICBpdGVtKGluIFtPcHRpb25h
bD1EZWZhdWx0SXNVbmRlZmluZWRdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsCmluZGV4IGVmZDhmNjIyMWZkYjdiM2FmM2Uw
ZDRiN2NlY2EzNDcyYzQzNDI2MDkuLmRlOTkyMWM0NWNlNzY0MzI0NjYzZThiMjAwNDU2MWQ5OWMz
NTM3YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGwKQEAg
LTI3LDYgKzI3LDcgQEAKICAgICBDdXN0b21OYW1lZFNldHRlciwKICAgICBJbmRleGVkR2V0dGVy
LAogICAgIEN1c3RvbUVudW1lcmF0ZVByb3BlcnR5LAorICAgIFNraXBWVGFibGVWYWxpZGF0aW9u
CiBdIGludGVyZmFjZSBDU1NTdHlsZURlY2xhcmF0aW9uIHsKICAgICAgICAgICAgICBbVHJlYXRS
ZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxsLCBUcmVhdE51bGxBcz1OdWxsU3RyaW5nXSBhdHRyaWJ1
dGUgRE9NU3RyaW5nICAgICAgICBjc3NUZXh0CiAgICAgICAgICAgICAgICAgIHNldHRlciByYWlz
ZXMoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGlwYm9h
cmQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZC5pZGwKaW5kZXggODA2MTY5OTU2
NjM1YjcyMTY5MzhjZDk1NTJlNDc2OTBmZTNhYmMxOS4uM2JmNWQ1NjcxN2IzZWY5ZWQ5ODcyNTZj
MDFiMTMxZGE2ODRkYWQ0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2Fy
ZC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaXBib2FyZC5pZGwKQEAgLTI1LDggKzI1
LDkgQEAKICAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwotCi1pbnRlcmZhY2Ug
Q2xpcGJvYXJkIHsKK1sKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgorXSBpbnRlcmZhY2UgQ2xp
cGJvYXJkIHsKICAgICAgICAgICAgICBbVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdBcz1VbmRlZmlu
ZWRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZHJvcEVmZmVjdDsKICAgICAgICAgICAgICBbVHJlYXRS
ZXR1cm5lZE51bGxTdHJpbmdBcz1VbmRlZmluZWRdIGF0dHJpYnV0ZSBET01TdHJpbmcgZWZmZWN0
QWxsb3dlZDsKICAgICBbQ3VzdG9tR2V0dGVyXSByZWFkb25seSBhdHRyaWJ1dGUgQXJyYXkgdHlw
ZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTWFwLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdNYXAuaWRsCmluZGV4IDliMjUzMjRkZDk2NGY2YTJk
OTRjNzAxN2U5MzUzMWJiYWQ0YmUwMTAuLmZkYjQwNDc4YTU5OWZiZmZkZjY5NTA2ODE0ZDQ0NzBl
NDkwZWE2MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdNYXAuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdNYXAuaWRsCkBAIC0yOSw2ICsyOSw3
IEBACiAgICAgQ3VzdG9tRGVsZXRlUHJvcGVydHksCiAgICAgQ3VzdG9tRW51bWVyYXRlUHJvcGVy
dHksCiAgICAgQ3VzdG9tTmFtZWRTZXR0ZXIsCisgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0g
aW50ZXJmYWNlIERPTVN0cmluZ01hcCB7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vTXV0YXRpb25SZWNvcmQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL011dGF0aW9uUmVj
b3JkLmlkbAppbmRleCBmMjgxM2RhNWFkYzM4NWNhMGQ1Mzc2ZTZmNDBkMGJhZGNmNWExNTFkLi41
ZjI1ZGUzOTIxZWUzNDhmZTVjYmZmOGY2Y2YyM2M4OTlhODQwYzQ5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTXV0YXRpb25SZWNvcmQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NdXRhdGlvblJlY29yZC5pZGwKQEAgLTI4LDcgKzI4LDkgQEAKICAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAotaW50ZXJmYWNlIE11dGF0aW9uUmVjb3JkIHsKK1sgICAgCisgICAgU2tpcFZUYWJsZVZh
bGlkYXRpb24KK10gaW50ZXJmYWNlIE11dGF0aW9uUmVjb3JkIHsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIHR5cGU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgdGFyZ2V0
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZUxpc3QuaWRsIGIvU291cmNl
L1dlYkNvcmUvZG9tL05vZGVMaXN0LmlkbAppbmRleCBkMWJjNGRlNGYxNjM3NjBjMWJkMGY5NzZl
YWNiNzU3YjY3MGY0ZjJmLi5hNmRlODkxODU4MDFhYjVkYmE1MWJmMThjMDQ3ZDUwZjZkZmZiMzIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZUxpc3QuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlTGlzdC5pZGwKQEAgLTIyLDYgKzIyLDcgQEAKICAgICBDdXN0b21J
c1JlYWNoYWJsZSwKICAgICBJbmRleGVkR2V0dGVyLAogICAgIE5hbWVkR2V0dGVyLAorICAgIFNr
aXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBOb2RlTGlzdCB7CiAKICAgICBOb2RlIGl0
ZW0oaW4gW0lzSW5kZXgsT3B0aW9uYWw9RGVmYXVsdElzVW5kZWZpbmVkXSB1bnNpZ25lZCBsb25n
IGluZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0LmlkbAppbmRleCBkNGUyMmJmMzhl
NzRjZjZjMDg2NzQyOWIwNmJmMzExMmExYTVjNDRkLi4yYzViYTA3MjI2YWY1MjMxZWRiZGZiMzRi
N2ZhMmUwNGMxYTgwNDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2Vu
TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCkBAIC0y
NSw2ICsyNSw3IEBACiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3Qs
CiAgICAgSW5kZXhlZEdldHRlciwKKyAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZh
Y2UgRE9NVG9rZW5MaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBs
ZW5ndGg7CiAgICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gRE9NU3RyaW5nIGl0
ZW0oaW4gdW5zaWduZWQgbG9uZyBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL1RleHRUcmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRU
cmFjay5pZGwKaW5kZXggZjUyM2I4MmY1OThlMjg2NmM4NDdkZGYwMjFlNDUyNDViOGIyMWM5My4u
MzY2ZGVmMTc2NjJkNGQwNmViZTk3MDQ0ZmY2NmJiMjQ5OGIxNzE4NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbApAQCAtMjgsNiArMjgsNyBAQAogICAgIEV2ZW50VGFy
Z2V0LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIEpTQ3VzdG9tSXNSZWFjaGFibGUs
CisgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIFRleHRUcmFjayB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBraW5kOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgbGFiZWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
U2NyaXB0UHJvZmlsZU5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1NjcmlwdFBy
b2ZpbGVOb2RlLmlkbAppbmRleCA3OTFiNWE5ZTRjMjFhZTg4MDYzMWY5ZGRmOTRjNTRlN2JhM2I3
NzFjLi40NzFlYjcyNzg3ZmVhYmYwMzE0YTEyNzdlNDMwMzk2OGIyY2Y4MDdlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvU2NyaXB0UHJvZmlsZU5vZGUuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9TY3JpcHRQcm9maWxlTm9kZS5pZGwKQEAgLTI2LDcgKzI2
LDggQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUpBVkFTQ1JJUFRfREVCVUdHRVIsCi0gICAgT21p
dENvbnN0cnVjdG9yCisgICAgT21pdENvbnN0cnVjdG9yLAorICAgIEltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGUKIF0gaW50ZXJmYWNlIFNjcmlwdFByb2ZpbGVOb2RlIHsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGZ1bmN0aW9uTmFtZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
RE9NU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFn
ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2UuaWRsCmluZGV4IDk4YzNiNDI1
OTc5MzExNDhhYjE5NDdlMmExYjhiOWVlOGU1NzAyZWUuLmQzYjYxZGM2NDE3NWVkNWYyZDgxMTI2
YWY2ZDY3MWRhYzgyMGE2MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3Rv
cmFnZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlLmlkbApAQCAtMzAs
NiArMzAsNyBAQAogICAgIEN1c3RvbUVudW1lcmF0ZVByb3BlcnR5LAogICAgIFY4Q3VzdG9tSW5k
ZXhlZEdldHRlciwKICAgICBDdXN0b21OYW1lZFNldHRlciwKKyAgICBTa2lwVlRhYmxlVmFsaWRh
dGlvbgogXSBpbnRlcmZhY2UgU3RvcmFnZSB7CiAgICAgW05vdEVudW1lcmFibGVdIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aCBnZXR0ZXIgcmFpc2VzKERPTUV4Y2VwdGlv
bik7CiAgICAgW05vdEVudW1lcmFibGUsIFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0g
RE9NU3RyaW5nIGtleShpbiB1bnNpZ25lZCBsb25nIGluZGV4KQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUveG1sL1hQYXRoTlNSZXNvbHZlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWFBh
dGhOU1Jlc29sdmVyLmlkbAppbmRleCAwZDY0ZjFiOWM0YmI1MzI3MzgyOTI4ZmRjZDJiNzhkOWJk
NzVlZGMxLi5lMjk0OWM5NmFlYzRlMjIyZTZmMGNjMWQ0YmRmYmI5YmU1Y2IyYjkzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWFBhdGhOU1Jlc29sdmVyLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS94bWwvWFBhdGhOU1Jlc29sdmVyLmlkbApAQCAtMjEsNyArMjEsNyBAQAogWwogICAg
IE9iakNQcm90b2NvbCwKICAgICBPbWl0Q29uc3RydWN0b3IsCi0gICAgVjhTa2lwVlRhYmxlVmFs
aWRhdGlvbgorICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBYUGF0aE5TUmVz
b2x2ZXIgewogICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIERPTVN0cmluZyBs
b29rdXBOYW1lc3BhY2VVUkkoaW4gW09wdGlvbmFsPURlZmF1bHRJc1VuZGVmaW5lZF0gRE9NU3Ry
aW5nIHByZWZpeCk7CiB9Owo=
</data>
<flag name="review"
          id="219605"
          type_id="1"
          status="+"
          setter="mhahnenberg"
    />
          </attachment>
      

    </bug>

</bugzilla>