<?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>25221</bug_id>
          
          <creation_ts>2009-04-15 15:13:32 -0700</creation_ts>
          <short_desc>SVG renderers should share a base class, like how CSS Box model renderers do</short_desc>
          <delta_ts>2009-04-15 15:32:29 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>117676</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-15 15:13:32 -0700</bug_when>
    <thetext>SVG renderers should share a base class, like how CSS Box model renderers do

RenderSVGModelObject (named after RenderBoxModelObject) is said new class.

This first patch will just add the basic plumbing.  Future patches will add actual logic to this class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117677</commentid>
    <comment_count>1</comment_count>
      <attachid>29518</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-15 15:14:29 -0700</bug_when>
    <thetext>Created attachment 29518
Add minimal RenderSVGModelObject

 WebCore/ChangeLog                          |   30 ++++++++++++++
 WebCore/WebCore.pro                        |    1 +
 WebCore/WebCore.scons                      |    1 +
 WebCore/WebCore.vcproj/WebCore.vcproj      |    8 ++++
 WebCore/WebCore.xcodeproj/project.pbxproj  |    8 ++++
 WebCore/rendering/RenderPath.cpp           |    3 +-
 WebCore/rendering/RenderPath.h             |    9 ++--
 WebCore/rendering/RenderSVGContainer.cpp   |    2 +-
 WebCore/rendering/RenderSVGContainer.h     |    6 +--
 WebCore/rendering/RenderSVGModelObject.cpp |   46 ++++++++++++++++++++++
 WebCore/rendering/RenderSVGModelObject.h   |   57 ++++++++++++++++++++++++++++
 WebCore/rendering/RenderTreeAsText.cpp     |    1 +
 WebCore/rendering/SVGRenderTreeAsText.cpp  |    1 +
 13 files changed, 161 insertions(+), 12 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117680</commentid>
    <comment_count>2</comment_count>
      <attachid>29518</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-04-15 15:19:38 -0700</bug_when>
    <thetext>Comment on attachment 29518
Add minimal RenderSVGModelObject

why are SVGRenderTreeAsText and RenderTreeAsText getting a new include?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117682</commentid>
    <comment_count>3</comment_count>
      <attachid>29518</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-04-15 15:26:32 -0700</bug_when>
    <thetext>Comment on attachment 29518
Add minimal RenderSVGModelObject

r=me, though you may want to use the 2-clause BDS license.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117684</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-15 15:30:30 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 29518 [review])
&gt; why are SVGRenderTreeAsText and RenderTreeAsText getting a new include?
&gt; 

They got a new include because I removed the unneeded include from RednerSVGContainer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117685</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-15 15:32:29 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/WebCore.pro
	M	WebCore/WebCore.scons
	M	WebCore/WebCore.vcproj/WebCore.vcproj
	M	WebCore/WebCore.xcodeproj/project.pbxproj
	M	WebCore/rendering/RenderPath.cpp
	M	WebCore/rendering/RenderPath.h
	M	WebCore/rendering/RenderSVGContainer.cpp
	M	WebCore/rendering/RenderSVGContainer.h
	A	WebCore/rendering/RenderSVGModelObject.cpp
	A	WebCore/rendering/RenderSVGModelObject.h
	M	WebCore/rendering/RenderTreeAsText.cpp
	M	WebCore/rendering/SVGRenderTreeAsText.cpp
Committed r42561
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29518</attachid>
            <date>2009-04-15 15:14:29 -0700</date>
            <delta_ts>2009-04-15 15:26:32 -0700</delta_ts>
            <desc>Add minimal RenderSVGModelObject</desc>
            <filename>Add-minimal-RenderSVGModelObject.patch</filename>
            <type>text/plain</type>
            <size>15251</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">NGY5OThjYmQwMzY2ZjI0YWRiOGVhMDJkOTdiN2RmY2E2OWFhNTk0MApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5ZDZhZDc0Li4wNDJkNGVl
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSw1ICsxLDM1IEBACiAyMDA5LTA0LTE1ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9y
Zz4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
bWluaW1hbCBSZW5kZXJTVkdNb2RlbE9iamVjdCBhbmQgbWFrZSBSZW5kZXJQYXRoIGFuZCBSZW5k
ZXJTVkdDb250YWluZXIgdXNlIGl0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjUyMjEKKyAgICAgICAgCisgICAgICAgIFJlbmRlclNWR01vZGVsT2Jq
ZWN0IGlzIHRoZSBiYXNlIHJlbmRlcmluZyBjbGFzcyBmb3IgdGhpbmdzIHdoaWNoIGxpdmUKKyAg
ICAgICAgaW4gdGhlIFNWRyByZW5kZXJpbmcgdHJlZS4gIE5vdCBhbGwgU1ZHIHJlbmRlcnMgYXJl
IFJlbmRlclNWR01vZGVsT2JqZWN0cyB5ZXQuCisgICAgICAgIAorICAgICAgICBNb3JlIHBhdGNo
ZXMgY29taW5nLiAgVGhpcyBpcyBqdXN0IGFkZGluZyB0aGUgY2xhc3MsIGZ1dHVyZSBwYXRjaGVz
CisgICAgICAgIHdpbGwgcHVsbCBtb3JlIGxvZ2ljIG91dCBvZiBSZW5kZXJQYXRoIGFuZCBSZW5k
ZXJTVkdDb250YWluZXIgaW50byBSZW5kZXJTVkdNb2RlbE9iamVjdC4KKworICAgICAgICAqIFdl
YkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUuc2NvbnM6CisgICAgICAgICogV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclBhdGg6OlJlbmRlclBhdGgpOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJQYXRoLmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdDb250YWluZXI6OlJlbmRlclNWR0NvbnRhaW5l
cik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5oOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJTVkdNb2RlbE9iamVjdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU1ZHTW9kZWxPYmplY3Q6OlJlbmRlclNWR01vZGVsT2JqZWN0KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHTW9kZWxPYmplY3QuaDogQWRkZWQuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTVkdNb2RlbE9iamVjdDo6cmVxdWlyZXNMYXllcik6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwOgorICAgICAgICAqIHJlbmRlcmluZy9TVkdS
ZW5kZXJUcmVlQXNUZXh0LmNwcDoKKworMjAwOS0wNC0xNSAgRXJpYyBTZWlkZWwgIDxlcmljQHdl
YmtpdC5vcmc+CisKICAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgogCiAgICAgICAg
IFJlbW92ZSBtb3JlIGRlYWQgY29kZSBmcm9tIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lci4KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4
IDhhNzU3MjkuLmUwYjY3ZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIv
V2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMTg1NSw2ICsxODU1LDcgQEAgY29udGFpbnMoREVGSU5F
UywgRU5BQkxFX1NWRz0xKSB7CiAgICAgICAgIHJlbmRlcmluZy9SZW5kZXJTVkdJbWFnZS5jcHAg
XAogICAgICAgICByZW5kZXJpbmcvUmVuZGVyU1ZHSW5saW5lLmNwcCBcCiAgICAgICAgIHJlbmRl
cmluZy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcCBcCisgICAgICAgIHJlbmRlcmluZy9SZW5kZXJT
VkdNb2RlbE9iamVjdC5jcHAgXAogICAgICAgICByZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAg
XAogICAgICAgICByZW5kZXJpbmcvUmVuZGVyU1ZHVGV4dC5jcHAgXAogICAgICAgICByZW5kZXJp
bmcvUmVuZGVyU1ZHVGV4dFBhdGguY3BwIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5z
Y29ucyBiL1dlYkNvcmUvV2ViQ29yZS5zY29ucwppbmRleCBiYjQyNDFlLi45ZGQ1ZTRlIDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuc2NvbnMKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnNjb25z
CkBAIC00ODMsNiArNDgzLDcgQEAgc291cmNlc1sncmVuZGVyaW5nJ10gPSBbCiAgICAgJ3JlbmRl
cmluZy9SZW5kZXJTVkdJbWFnZS5jcHAnLAogICAgICdyZW5kZXJpbmcvUmVuZGVyU1ZHSW5saW5l
LmNwcCcsCiAgICAgJ3JlbmRlcmluZy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcCcsCisgICAgJ3Jl
bmRlcmluZy9SZW5kZXJTVkdNb2RlbE9iamVjdC5jcHAnLAogICAgICdyZW5kZXJpbmcvUmVuZGVy
U1ZHUm9vdC5jcHAnLAogICAgICdyZW5kZXJpbmcvUmVuZGVyU1ZHVFNwYW4uY3BwJywKICAgICAn
cmVuZGVyaW5nL1JlbmRlclNWR1RleHQuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qCmluZGV4IDM5MDkyZjIuLjFkM2EzNmIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvagpAQCAtNzczNiw2ICs3NzM2LDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJ
CQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHJlbmRlcmluZ1xSZW5kZXJTVkdNb2RlbE9i
amVjdC5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxyZW5kZXJpbmdcUmVuZGVyU1ZHTW9kZWxPYmplY3QuaCINCisJCQkJPg0KKwkJCTwv
RmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHJlbmRlcmluZ1xSZW5kZXJT
VkdSb290LmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ4YzMwMWIuLmY3OTQzYTEgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yOTQ4LDYgKzI5NDgsOCBAQAogCQlB
OEY0NkI4MTBDQjIwQTlEMDAzQTk2NzAgLyogRE9NU1ZHU3RyaW5nTGlzdC5oIGluIENvcHkgR2Vu
ZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODVENzlB
RDIwQUNBMTdFQjAwRjAyRkM1IC8qIERPTVNWR1N0cmluZ0xpc3QuaCAqLzsgfTsKIAkJQThGNEZC
OTQwQzE2OUU3QjAwMkFGRUQ1IC8qIFNWR1JlbmRlclN1cHBvcnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4RjRGQjkzMEMxNjlFN0IwMDJBRkVENSAv
KiBTVkdSZW5kZXJTdXBwb3J0LmggKi87IH07CiAJCUE4RjRGQjk2MEMxNjlFODUwMDJBRkVENSAv
KiBTVkdSZW5kZXJTdXBwb3J0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE4RjRGQjk1MEMxNjlFODUwMDJBRkVENSAvKiBTVkdSZW5kZXJTdXBwb3J0
LmNwcCAqLzsgfTsKKwkJQThGNUMwQjgwRjkyODVBQzAwOThFMDZCIC8qIFJlbmRlclNWR01vZGVs
T2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
OEY1QzBCNjBGOTI4NUFDMDA5OEUwNkIgLyogUmVuZGVyU1ZHTW9kZWxPYmplY3QuaCAqLzsgfTsK
KwkJQThGNUMwQjkwRjkyODVBQzAwOThFMDZCIC8qIFJlbmRlclNWR01vZGVsT2JqZWN0LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4RjVDMEI3MEY5
Mjg1QUMwMDk4RTA2QiAvKiBSZW5kZXJTVkdNb2RlbE9iamVjdC5jcHAgKi87IH07CiAJCUE4RkE2
RTVEMEU0Q0ZERUQwMEQ1Q0Y0OSAvKiBQYXR0ZXJuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEZBNkU1QjBFNENGREVEMDBENUNGNDkgLyogUGF0dGVy
bi5oICovOyB9OwogCQlBOEZBNkU1RTBFNENGREVEMDBENUNGNDkgLyogUGF0dGVybi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEZBNkU1QzBFNENG
REVEMDBENUNGNDkgLyogUGF0dGVybi5jcHAgKi87IH07CiAJCUE5QzZFNEUzMEQ3NDVFMDUwMDY0
NDJFOSAvKiBNaW1lVHlwZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBOUM2RTRFMTBENzQ1RTA1MDA2NDQyRTkgLyogTWltZVR5cGUuY3BwICovOyB9
OwpAQCAtNzU3MCw2ICs3NTcyLDggQEAKIAkJQThFQTgwMDYwQTE5NTE2RTAwQThFRjVGIC8qIE1l
ZGlhTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFMaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4RjRGQjkzMEMxNjlFN0IwMDJBRkVENSAv
KiBTVkdSZW5kZXJTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNW
R1JlbmRlclN1cHBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThGNEZCOTUw
QzE2OUU4NTAwMkFGRUQ1IC8qIFNWR1JlbmRlclN1cHBvcnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUmVuZGVyU3VwcG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4RjVDMEI2MEY5Mjg1QUMwMDk4RTA2QiAvKiBSZW5kZXJTVkdNb2Rl
bE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdNb2Rl
bE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEY1QzBCNzBGOTI4NUFD
MDA5OEUwNkIgLyogUmVuZGVyU1ZHTW9kZWxPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHTW9kZWxPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlBOEZBNkU1QjBFNENGREVEMDBENUNGNDkgLyogUGF0dGVybi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXR0ZXJuLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUE4RkE2RTVDMEU0Q0ZERUQwMEQ1Q0Y0OSAvKiBQYXR0ZXJuLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhdHRlcm4uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlBOUM2RTRFMTBENzQ1RTA1MDA2NDQyRTkgLyogTWltZVR5
cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pbWVUeXBlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE0MzM3LDYgKzE0MzQxLDggQEAKIAkJ
CQlCQ0VBNDgxNDA5N0Q5MzAyMDA5NEM5RTQgLyogYmlkaS5oICovLAogCQkJCUJDRUE0ODE1MDk3
RDkzMDIwMDk0QzlFNCAvKiBicmVha19saW5lcy5jcHAgKi8sCiAJCQkJQkNFQTQ4MTYwOTdEOTMw
MjAwOTRDOUU0IC8qIGJyZWFrX2xpbmVzLmggKi8sCisJCQkJQThGNUMwQjYwRjkyODVBQzAwOThF
MDZCIC8qIFJlbmRlclNWR01vZGVsT2JqZWN0LmggKi8sCisJCQkJQThGNUMwQjcwRjkyODVBQzAw
OThFMDZCIC8qIFJlbmRlclNWR01vZGVsT2JqZWN0LmNwcCAqLywKIAkJCSk7CiAJCQlwYXRoID0g
cmVuZGVyaW5nOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTE2ODI2LDYgKzE2ODMy
LDcgQEAKIAkJCQk5MzgxOTIwNTBGODdFMUVDMDBENTM1MkEgLyogQmluYXJ5UHJvcGVydHlMaXN0
LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzYzQjYyRDBGOEU4RkUwMDA4MDM4MTAgLyogSGlzdG9y
eVByb3BlcnR5TGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE1RTNFRjYwRjhENjdGRTAwN0VF
QjUwIC8qIE1lc3NhZ2VQb3J0UHJveHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RjVDMEI4MEY5
Mjg1QUMwMDk4RTA2QiAvKiBSZW5kZXJTVkdNb2RlbE9iamVjdC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBA
IC0xODgzNyw2ICsxODg0NCw3IEBACiAJCQkJOTM4MTkyMDMwRjg3RTFFNjAwRDUzNTJBIC8qIEJp
bmFyeVByb3BlcnR5TGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzYzQjYyQzBGOEU4RkUw
MDA4MDM4MTAgLyogSGlzdG9yeVByb3BlcnR5TGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlG
RTcwMEREMTBGOTJEODFBMDA4RTJCRkUgLyogSlNDb29yZGluYXRlc0N1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlBOEY1QzBCOTBGOTI4NUFDMDA5OEUwNkIgLyogUmVuZGVyU1ZHTW9kZWxP
YmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQ
b3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJQYXRoLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCmluZGV4IDEz
NDA2OTQuLjQyYjczNWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGgu
Y3BwCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCkBAIC02NCw5ICs2NCw4
IEBAIHByaXZhdGU6CiAgICAgUmVuZGVyU3R5bGUqIG1fc3R5bGU7CiB9OwogCi0vLyBSZW5kZXJQ
YXRoCiBSZW5kZXJQYXRoOjpSZW5kZXJQYXRoKFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50
KiBub2RlKQotICAgIDogUmVuZGVyT2JqZWN0KG5vZGUpCisgICAgOiBSZW5kZXJTVkdNb2RlbE9i
amVjdChub2RlKQogewogfQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQ
YXRoLmggYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmgKaW5kZXggNjE1NzE3MS4uMWFk
YThhOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUGF0aC5oCisrKyBiL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguaApAQCAtMjcsMTAgKzI3LDkgQEAKIAogI2lmIEVO
QUJMRShTVkcpCiAKLSNpbmNsdWRlICJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIgogI2luY2x1ZGUg
IkZsb2F0UmVjdC5oIgotCi0jaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiUmVu
ZGVyU1ZHTW9kZWxPYmplY3QuaCIKKyNpbmNsdWRlICJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTM4LDcgKzM3LDcgQEAgY2xhc3MgRmxvYXRQb2lu
dDsKIGNsYXNzIFJlbmRlclNWR0NvbnRhaW5lcjsKIGNsYXNzIFNWR1N0eWxlZFRyYW5zZm9ybWFi
bGVFbGVtZW50OwogCi1jbGFzcyBSZW5kZXJQYXRoIDogcHVibGljIFJlbmRlck9iamVjdCB7Citj
bGFzcyBSZW5kZXJQYXRoIDogcHVibGljIFJlbmRlclNWR01vZGVsT2JqZWN0IHsKIHB1YmxpYzoK
ICAgICBSZW5kZXJQYXRoKFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50Kik7CiAKQEAgLTUw
LDcgKzQ5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgRmxvYXRSZWN0IHJlbGF0aXZlQkJveChi
b29sIGluY2x1ZGVTdHJva2UgPSB0cnVlKSBjb25zdDsKIAogICAgIGNvbnN0IFBhdGgmIHBhdGgo
KSBjb25zdDsKLSAgICB2b2lkIHNldFBhdGgoY29uc3QgUGF0aCYgbmV3UGF0aCk7CisgICAgdm9p
ZCBzZXRQYXRoKGNvbnN0IFBhdGgmKTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc1JlbmRlclBhdGgo
KSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCBjb25zdCBjaGFyKiByZW5kZXJO
YW1lKCkgY29uc3QgeyByZXR1cm4gIlJlbmRlclBhdGgiOyB9CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyU1ZHQ29udGFpbmVyLmNwcAppbmRleCAwYWRkYmMwLi5lYmJkMWEwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwCisrKyBiL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogUmVuZGVyU1ZHQ29udGFpbmVyOjpSZW5kZXJTVkdDb250YWluZXIoU1ZH
U3R5bGVkRWxlbWVudCogbm9kZSkKLSAgICA6IFJlbmRlck9iamVjdChub2RlKQorICAgIDogUmVu
ZGVyU1ZHTW9kZWxPYmplY3Qobm9kZSkKICAgICAsIG1fZHJhd3NDb250ZW50cyh0cnVlKQogewog
fQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHQ29udGFpbmVyLmggYi9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuaAppbmRleCA5YThhOTllLi4xNmIw
ZTc0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuaAor
KysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuaApAQCAtMjQsMTQgKzI0
LDE0IEBACiAKICNpZiBFTkFCTEUoU1ZHKQogCi0jaW5jbHVkZSAiUmVuZGVyUGF0aC5oIgorI2lu
Y2x1ZGUgIlJlbmRlclNWR01vZGVsT2JqZWN0LmgiCiAjaW5jbHVkZSAiU1ZHUHJlc2VydmVBc3Bl
Y3RSYXRpby5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNWR0VsZW1lbnQ7CiAK
LWNsYXNzIFJlbmRlclNWR0NvbnRhaW5lciA6IHB1YmxpYyBSZW5kZXJPYmplY3QgeworY2xhc3Mg
UmVuZGVyU1ZHQ29udGFpbmVyIDogcHVibGljIFJlbmRlclNWR01vZGVsT2JqZWN0IHsKIHB1Ymxp
YzoKICAgICBSZW5kZXJTVkdDb250YWluZXIoU1ZHU3R5bGVkRWxlbWVudCopOwogICAgIH5SZW5k
ZXJTVkdDb250YWluZXIoKTsKQEAgLTUwLDggKzUwLDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
Ym9vbCBpc1NWR0NvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KICAgICB2aXJ0dWFs
IGNvbnN0IGNoYXIqIHJlbmRlck5hbWUoKSBjb25zdCB7IHJldHVybiAiUmVuZGVyU1ZHQ29udGFp
bmVyIjsgfQogCi0gICAgdmlydHVhbCBib29sIHJlcXVpcmVzTGF5ZXIoKSBjb25zdCB7IHJldHVy
biBmYWxzZTsgfQotCiAgICAgdmlydHVhbCB2b2lkIGxheW91dCgpOwogICAgIHZpcnR1YWwgdm9p
ZCBwYWludChQYWludEluZm8mLCBpbnQgcGFyZW50WCwgaW50IHBhcmVudFkpOwogCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdNb2RlbE9iamVjdC5jcHAgYi9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJTVkdNb2RlbE9iamVjdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uOTgwY2EwZQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclNWR01vZGVsT2JqZWN0LmNwcApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29w
eXJpZ2h0IChjKSAyMDA5LCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqIAorICogICAgICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3Ry
aWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICogCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisg
KiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpZiBFTkFCTEUoU1ZHKQorI2luY2x1ZGUgIlJlbmRlclNWR01vZGVsT2Jq
ZWN0LmgiCisKKyNpbmNsdWRlICJTVkdTdHlsZWRFbGVtZW50LmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworUmVuZGVyU1ZHTW9kZWxPYmplY3Q6OlJlbmRlclNWR01vZGVsT2JqZWN0KFNWR1N0
eWxlZEVsZW1lbnQqIG5vZGUpCisgICAgOiBSZW5kZXJPYmplY3Qobm9kZSkKK3sKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFNWRykKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR01vZGVsT2JqZWN0LmggYi9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJTVkdNb2RlbE9iamVjdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmJjY2JkNDYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJTVkdNb2RlbE9iamVjdC5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKGMp
IDIwMDksIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiAKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICogCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgor
ICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9m
IGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKiAKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBSZW5kZXJTVkdN
b2RlbE9iamVjdF9oCisjZGVmaW5lIFJlbmRlclNWR01vZGVsT2JqZWN0X2gKKworI2lmIEVOQUJM
RShTVkcpCisKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCisvLyBNb3N0IHJlbmRlcmVycyBpbiB0aGUgU1ZHIHJlbmRlcmluZyB0cmVlIHdpbGwgaW5o
ZXJpdCBmcm9tIHRoaXMgY2xhc3MKKy8vIGJ1dCBub3QgYWxsLiAoZS5nLiBSZW5kZXJTVkdGb3Jl
aWduT2JqZWN0LCBSZW5kZXJTVkdCbG9jaykgdGh1cyBtZXRob2RzCisvLyByZXF1aXJlZCBieSBT
VkcgcmVuZGVycyBuZWVkIHRvIGJlIGRlY2xhcmVkIG9uIFJlbmRlck9iamVjdCwgYnV0IHNvbWUg
c2hhcmVkCisvLyBsb2dpYyBjYW4gZ28gaW4gdGhpcyBjbGFzcy4KKworY2xhc3MgU1ZHU3R5bGVk
RWxlbWVudDsKKworY2xhc3MgUmVuZGVyU1ZHTW9kZWxPYmplY3QgOiBwdWJsaWMgUmVuZGVyT2Jq
ZWN0IHsKK3B1YmxpYzoKKyAgICBSZW5kZXJTVkdNb2RlbE9iamVjdChTVkdTdHlsZWRFbGVtZW50
Kik7CisKKyAgICB2aXJ0dWFsIGJvb2wgcmVxdWlyZXNMYXllcigpIGNvbnN0IHsgcmV0dXJuIGZh
bHNlOyB9Cit9OworCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoU1ZHKQorI2VuZGlmCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVlQXNUZXh0LmNwcCBiL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCmluZGV4IDIzNTA0OTEuLmJjMzgxMzYgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCisrKyBiL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCkBAIC00NCw2ICs0NCw3IEBACiAjaW5j
bHVkZSA8d3RmL1ZlY3Rvci5oPgogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJQ
YXRoLmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHUm9vdC5oIgogI2luY2x1ZGUgIlJlbmRlclNWR0Nv
bnRhaW5lci5oIgogI2luY2x1ZGUgIlJlbmRlclNWR0lubGluZVRleHQuaCIKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclRyZWVBc1RleHQuY3BwIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvU1ZHUmVuZGVyVHJlZUFzVGV4dC5jcHAKaW5kZXggMWY5N2M0Ny4uMzBjOTIxZSAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvU1ZHUmVuZGVyVHJlZUFzVGV4dC5jcHAKKysrIGIv
V2ViQ29yZS9yZW5kZXJpbmcvU1ZHUmVuZGVyVHJlZUFzVGV4dC5jcHAKQEAgLTMzLDYgKzMzLDcg
QEAKICNpbmNsdWRlICJHcmFwaGljc1R5cGVzLmgiCiAjaW5jbHVkZSAiSW5saW5lVGV4dEJveC5o
IgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIlJlbmRlclBhdGguaCIKICNpbmNs
dWRlICJSZW5kZXJTVkdDb250YWluZXIuaCIKICNpbmNsdWRlICJSZW5kZXJTVkdJbmxpbmVUZXh0
LmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHVGV4dC5oIgo=
</data>
<flag name="review"
          id="14719"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>