<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
	>
<channel>
	<title>Comments on: Guillaume Portes Redux</title>
	<atom:link href="http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html/feed" rel="self" type="application/rss+xml" />
	<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=guillaume-portes-redux</link>
	<description>Thinking the unthinkable, pondering the imponderable, effing the ineffable and scruting the inscrutable</description>
	<lastBuildDate>Tue, 07 Feb 2012 11:20:47 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: How to hire Guillaume Portes</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-3556</link>
		<dc:creator>How to hire Guillaume Portes</dc:creator>
		<pubDate>Wed, 03 Nov 2010 03:05:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-3556</guid>
		<description>[...] 1/14/2007 — This post was featured on Slashdot on 1/4/07 where you can go for additional comments and debate. I&#8217;ve summarized the comments and provided some additional analysis here. [...]</description>
		<content:encoded><![CDATA[<p>[...] 1/14/2007 — This post was featured on Slashdot on 1/4/07 where you can go for additional comments and debate. I&#8217;ve summarized the comments and provided some additional analysis here. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ronald</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-1127</link>
		<dc:creator>Ronald</dc:creator>
		<pubDate>Sat, 01 Sep 2007 08:09:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-1127</guid>
		<description>I have not read the OOXML nor the ODF specification, but from looking at the whole discussion Microsoft&#039;s motivation for using these tags seems quite obvious to me - anyone tell me if I&#039;m wrong:&lt;br/&gt;to keep their monopoly on accurately rendering at least the old Microsoft document types. &lt;br/&gt;&lt;br/&gt;Obviously all of them have been re-engineered to different extents, but only Microsoft is able (or rather &quot;would be able, if they really wanted&quot;) to render them in precisely the same way in every detail as it was done in the original application. Now lest anyone attempts to use Microsoft Office to convert those legacy documents into a format that would enable any odd application to display, use and print them as originally intended, they chose to not convert them in the first place but rather tag them such that only Microsoft Office can do that.&lt;br/&gt;&lt;br/&gt;In other words:&lt;br/&gt;so you&#039;ve got an MS Word (old version) document. You can (in theory) open that with the current version of MS Word to look and feel the same as it did back when it was created. If you had an open standard format, i.e. one not referring to proprietary algorithms, you could export the file from Word into that format and henceforward work with it in any other application supporting the standard, without any recognisable difference in rendering or functionality. To get around that, the exported file instead refers to the proprietary algorithms used in the original application it was created with, making it impossible for other contenders to accurately emulate its look &amp; behaviour in every detail. &lt;br/&gt;&lt;br/&gt;So instead of converting a, say, Word 95 document into a neutral format and in the process translating its quirks and attributes into a neutral format, they just tag the contents with something like &quot;render like Word 95&quot;. Which only they can do when it comes to it and takes the idea of a neutral standard ad absurdum. &lt;br/&gt;What they say is &quot;you can save this document into OOXML but if you want it rendered it exactly the same as in Word 95 then you better use our product&quot;. Which is anti-competitive behaviour in my opinion. I don&#039;t think it&#039;s a technical issue in the first place rather than a political one (and that&#039;s why they are so bullish about it), nor that they should get away with it.&lt;br/&gt;&lt;br/&gt;Sorry for the long post.</description>
		<content:encoded><![CDATA[<p>I have not read the OOXML nor the ODF specification, but from looking at the whole discussion Microsoft&#8217;s motivation for using these tags seems quite obvious to me &#8211; anyone tell me if I&#8217;m wrong:<br />to keep their monopoly on accurately rendering at least the old Microsoft document types. </p>
<p>Obviously all of them have been re-engineered to different extents, but only Microsoft is able (or rather &#8220;would be able, if they really wanted&#8221;) to render them in precisely the same way in every detail as it was done in the original application. Now lest anyone attempts to use Microsoft Office to convert those legacy documents into a format that would enable any odd application to display, use and print them as originally intended, they chose to not convert them in the first place but rather tag them such that only Microsoft Office can do that.</p>
<p>In other words:<br />so you&#8217;ve got an MS Word (old version) document. You can (in theory) open that with the current version of MS Word to look and feel the same as it did back when it was created. If you had an open standard format, i.e. one not referring to proprietary algorithms, you could export the file from Word into that format and henceforward work with it in any other application supporting the standard, without any recognisable difference in rendering or functionality. To get around that, the exported file instead refers to the proprietary algorithms used in the original application it was created with, making it impossible for other contenders to accurately emulate its look &#038; behaviour in every detail. </p>
<p>So instead of converting a, say, Word 95 document into a neutral format and in the process translating its quirks and attributes into a neutral format, they just tag the contents with something like &#8220;render like Word 95&#8243;. Which only they can do when it comes to it and takes the idea of a neutral standard ad absurdum. <br />What they say is &#8220;you can save this document into OOXML but if you want it rendered it exactly the same as in Word 95 then you better use our product&#8221;. Which is anti-competitive behaviour in my opinion. I don&#8217;t think it&#8217;s a technical issue in the first place rather than a political one (and that&#8217;s why they are so bullish about it), nor that they should get away with it.</p>
<p>Sorry for the long post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wesley Parish</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-342</link>
		<dc:creator>Wesley Parish</dc:creator>
		<pubDate>Tue, 23 Jan 2007 08:56:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-342</guid>
		<description>anonymous said: &quot;&lt;i&gt;Would you prefer that Microsoft insert its source code into the spec?&lt;/i&gt;&quot; in relation to the model suggested by Rob - flexible base, optional superstructures.&lt;br /&gt;&lt;br /&gt;Speaking as someone who has to deal with much of the Microsoft legacy code - a lot of the people I help with their computers, either bought them ages ago, or were given old computers with old software - that would not be a bad idea.&lt;br /&gt;&lt;br /&gt;Consider this - Microsoft has made its billions on the back of this software, which has lost nearly all its book value because Microsoft has stopped supporting it.  It has also lost nearly all its &quot;Intellectual Property Rights&quot; value because it has also been reverse-engineered world-wide, courtesy of books like Microsoft Press&#039; &quot;Inside Windows NT&quot; which has a very positive view of reverse engineering and gives detailed instructions on how to go about it.  Ergo, Microsoft should do the honest thing and release all this legacy source code under a suitable open-source-style license like the template Microsoft Community License - without any further additions whatsoever.&lt;br /&gt;&lt;br /&gt;I can say this, that the spam and malware problems would decrease markedly, if these old computers with their legacy software - malware&#039;s sitting ducks - , were able to be upgraded by suitable people using Microsoft&#039;s own source code without any stupid malware-friendly restrictions.</description>
		<content:encoded><![CDATA[<p>anonymous said: &#8220;<i>Would you prefer that Microsoft insert its source code into the spec?</i>&#8221; in relation to the model suggested by Rob &#8211; flexible base, optional superstructures.</p>
<p>Speaking as someone who has to deal with much of the Microsoft legacy code &#8211; a lot of the people I help with their computers, either bought them ages ago, or were given old computers with old software &#8211; that would not be a bad idea.</p>
<p>Consider this &#8211; Microsoft has made its billions on the back of this software, which has lost nearly all its book value because Microsoft has stopped supporting it.  It has also lost nearly all its &#8220;Intellectual Property Rights&#8221; value because it has also been reverse-engineered world-wide, courtesy of books like Microsoft Press&#8217; &#8220;Inside Windows NT&#8221; which has a very positive view of reverse engineering and gives detailed instructions on how to go about it.  Ergo, Microsoft should do the honest thing and release all this legacy source code under a suitable open-source-style license like the template Microsoft Community License &#8211; without any further additions whatsoever.</p>
<p>I can say this, that the spam and malware problems would decrease markedly, if these old computers with their legacy software &#8211; malware&#8217;s sitting ducks &#8211; , were able to be upgraded by suitable people using Microsoft&#8217;s own source code without any stupid malware-friendly restrictions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-309</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Wed, 17 Jan 2007 00:44:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-309</guid>
		<description>&lt;i&gt;If OpenOffice.org can import a WordPerfect 5.0 document and correctly display the top spacing, then they know how to render suppressTopSpacingWP already and don&#039;t need to be told.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;So you are saying that since competing applications over the years have struggled with, and in some cases succeeded with, reverse-engineering aspects of proprietary documents, there is no need for ISO standards to do any better than this.  &lt;br /&gt;&lt;br /&gt;Indeed, by your own logic, why have an OOXML standard at all, since OpenOffice can already read many Office legacy binary documents?</description>
		<content:encoded><![CDATA[<p><i>If OpenOffice.org can import a WordPerfect 5.0 document and correctly display the top spacing, then they know how to render suppressTopSpacingWP already and don&#8217;t need to be told.</i></p>
<p>So you are saying that since competing applications over the years have struggled with, and in some cases succeeded with, reverse-engineering aspects of proprietary documents, there is no need for ISO standards to do any better than this.  </p>
<p>Indeed, by your own logic, why have an OOXML standard at all, since OpenOffice can already read many Office legacy binary documents?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-308</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Wed, 17 Jan 2007 00:22:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-308</guid>
		<description>A number of people get hung up on the fact that I say OOXML is both too long and not informative enough. How can it be both at the same time?  I ask you, can a person be both overweight and malnourished at the same time? Certainly, if the person is not eating the right foods.  &lt;br /&gt;&lt;br /&gt;Length and information content are not two measures of the same thing.  This isn&#039;t about making the specification longer or shorter arbitrarily.  It is about specifying a set of features in an economical fashion, using time-honored engineering principles. &lt;br /&gt;&lt;br /&gt;For example, if we had a flexible line spacing model, we would not need to specify exceptions for legacy versions of Word.  If the model is flexible, we simply describe what the spacing is, in real units, just like it would be specified in a new document.  &lt;br /&gt;&lt;br /&gt;The point is you put the burden of accounting for the Word 95 bug on the convertor that converts Word 95   documents into XML, not on everyone else in the world who needs to deal with with OOXML.</description>
		<content:encoded><![CDATA[<p>A number of people get hung up on the fact that I say OOXML is both too long and not informative enough. How can it be both at the same time?  I ask you, can a person be both overweight and malnourished at the same time? Certainly, if the person is not eating the right foods.  </p>
<p>Length and information content are not two measures of the same thing.  This isn&#8217;t about making the specification longer or shorter arbitrarily.  It is about specifying a set of features in an economical fashion, using time-honored engineering principles. </p>
<p>For example, if we had a flexible line spacing model, we would not need to specify exceptions for legacy versions of Word.  If the model is flexible, we simply describe what the spacing is, in real units, just like it would be specified in a new document.  </p>
<p>The point is you put the burden of accounting for the Word 95 bug on the convertor that converts Word 95   documents into XML, not on everyone else in the world who needs to deal with with OOXML.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-307</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Tue, 16 Jan 2007 23:45:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-307</guid>
		<description>Rob, you have lamented that the standard is too long. Now you want OpenXML to have a &quot;text model... flexible enough to support even legacy versions of Word.&quot; Do you know what this means?&lt;br /&gt;&lt;br /&gt;It means adding several hundred more pages worth of details on how each version of Word: did horizontal justification, vertical line spacing, treated raised and lowered text, kerned letter pairs, condensed and expanded spacing, stretched and condensed character pitch, etc. Plus a heck of a lot more stuff for non-Western scripts.&lt;br /&gt;&lt;br /&gt;Would you prefer that Microsoft insert its source code into the spec?</description>
		<content:encoded><![CDATA[<p>Rob, you have lamented that the standard is too long. Now you want OpenXML to have a &#8220;text model&#8230; flexible enough to support even legacy versions of Word.&#8221; Do you know what this means?</p>
<p>It means adding several hundred more pages worth of details on how each version of Word: did horizontal justification, vertical line spacing, treated raised and lowered text, kerned letter pairs, condensed and expanded spacing, stretched and condensed character pitch, etc. Plus a heck of a lot more stuff for non-Western scripts.</p>
<p>Would you prefer that Microsoft insert its source code into the spec?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-306</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Tue, 16 Jan 2007 23:06:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-306</guid>
		<description>What a great comment:&lt;br /&gt;&lt;br /&gt;If OpenOffice.org can import a WordPerfect 5.0 document and correctly display the top spacing, then they know how to render suppressTopSpacingWP already and don&#039;t need to be told.&lt;br /&gt;&lt;br /&gt;If they ignore the WP5 top spacing brokenness, why wouldn&#039;t they ignore suppressTopSpacingWP as well? How are they worse off?&lt;br /&gt;&lt;br /&gt;Either they care about maintaining rendering fidelity with documents created in WordStar or whatever or they don&#039;t. If they do, they already do so for documents they import from WordStar binary formats. Didn&#039;t care enough to import WordStar? Why start caring now?&lt;br /&gt;&lt;br /&gt;Yes, MS will be the only people to implement the whole thing. But this is about interoperability. As long as they don&#039;t start setting the mwSmallCaps flag in new documents created in Office 2007, there is no interoperability issue.</description>
		<content:encoded><![CDATA[<p>What a great comment:</p>
<p>If OpenOffice.org can import a WordPerfect 5.0 document and correctly display the top spacing, then they know how to render suppressTopSpacingWP already and don&#8217;t need to be told.</p>
<p>If they ignore the WP5 top spacing brokenness, why wouldn&#8217;t they ignore suppressTopSpacingWP as well? How are they worse off?</p>
<p>Either they care about maintaining rendering fidelity with documents created in WordStar or whatever or they don&#8217;t. If they do, they already do so for documents they import from WordStar binary formats. Didn&#8217;t care enough to import WordStar? Why start caring now?</p>
<p>Yes, MS will be the only people to implement the whole thing. But this is about interoperability. As long as they don&#8217;t start setting the mwSmallCaps flag in new documents created in Office 2007, there is no interoperability issue.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Giuseppe D'Angelo</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-305</link>
		<dc:creator>Giuseppe D'Angelo</dc:creator>
		<pubDate>Tue, 16 Jan 2007 19:01:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-305</guid>
		<description>Premise: I haven&#039;t read the specs of ODF and OOXML.&lt;br /&gt;&lt;br /&gt;In my opinion, what is really important here is not if the format allows application-defined stuff. The important thing is: is this information &lt;b&gt;needed&lt;/b&gt; for proper displaying the document or not?&lt;br /&gt;&lt;br /&gt;If those sections include, for example, where was my cursor when I last saved the document, what was the zoom level, what were my printer settings, and so on, the document doesn&#039;t actually need them. This is just additional, optional information. It is perfectly safe to store that information in a good place (e.g. separate files from the main document), and applications are allowed and incouraged to do so in order to achieve a better user experience.&lt;br /&gt;&lt;br /&gt;If instead an application is using that data in order to add vendor-specific stuff that is &lt;i&gt;required&lt;/i&gt; for correctly undestanding the document, this is definitely wrong (and typical of the Embrace-Extend-Extinguish strategy).&lt;br /&gt;&lt;br /&gt;My two cents :-)</description>
		<content:encoded><![CDATA[<p>Premise: I haven&#8217;t read the specs of ODF and OOXML.</p>
<p>In my opinion, what is really important here is not if the format allows application-defined stuff. The important thing is: is this information <b>needed</b> for proper displaying the document or not?</p>
<p>If those sections include, for example, where was my cursor when I last saved the document, what was the zoom level, what were my printer settings, and so on, the document doesn&#8217;t actually need them. This is just additional, optional information. It is perfectly safe to store that information in a good place (e.g. separate files from the main document), and applications are allowed and incouraged to do so in order to achieve a better user experience.</p>
<p>If instead an application is using that data in order to add vendor-specific stuff that is <i>required</i> for correctly undestanding the document, this is definitely wrong (and typical of the Embrace-Extend-Extinguish strategy).</p>
<p>My two cents :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: C. T. Rambler</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-304</link>
		<dc:creator>C. T. Rambler</dc:creator>
		<pubDate>Mon, 15 Jan 2007 13:48:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-304</guid>
		<description>orcmid, rob:&lt;br /&gt;&lt;br /&gt;Tidier is in the eye of the beholder...&lt;br /&gt;&lt;br /&gt;I agree with orcmid that both ODF and OOXML has virtually everything &quot;optional&quot;. Perhaps Rob should had made it clear that ODF has a lot of optional things as well. Again, the question of who has more &quot;optional&quot; item is in the eye of the beholder.&lt;br /&gt;&lt;br /&gt;Both ODF and OOXML containers (zip file) permits additional files to be included and those are simply going to be unspecified in the ODF/OOXML specs.&lt;br /&gt;&lt;br /&gt;My own preference for application-specific stuff is to isolate it in less important files, not sprinkling in the main content where I have no choice to parse it in order to consume the main content. This is of course looking at the problem from the consuming application point-of-view, not how beautiful or self-containing the main content is.</description>
		<content:encoded><![CDATA[<p>orcmid, rob:</p>
<p>Tidier is in the eye of the beholder&#8230;</p>
<p>I agree with orcmid that both ODF and OOXML has virtually everything &#8220;optional&#8221;. Perhaps Rob should had made it clear that ODF has a lot of optional things as well. Again, the question of who has more &#8220;optional&#8221; item is in the eye of the beholder.</p>
<p>Both ODF and OOXML containers (zip file) permits additional files to be included and those are simply going to be unspecified in the ODF/OOXML specs.</p>
<p>My own preference for application-specific stuff is to isolate it in less important files, not sprinkling in the main content where I have no choice to parse it in order to consume the main content. This is of course looking at the problem from the consuming application point-of-view, not how beautiful or self-containing the main content is.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-303</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Sun, 14 Jan 2007 18:43:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-303</guid>
		<description>&lt;i&gt;De gustibus non disputandum&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;If you think that throwing application-specific compatibility flags into the schema of an ISO standard submission is a &quot;tidy&quot; solution, then I think we have radically different defintions of &quot;tidy&quot;.&lt;br /&gt;&lt;br /&gt;In any case, the point was to respond to those who dismiss any criticism of undefined, poorly-defined or incorrectly-defined elements in OOXML as &quot;don&#039;t worry, that part is optional&quot;. Since everything is optional in OOXML, an ocean of sins can be buried (and indeed have been buried) by that disingenuous logic. &lt;br /&gt;&lt;br /&gt;One of the criteria for evaluating a specification is whether the normative content is unambiguous. Normative content includes optional and deprecated elements as well.</description>
		<content:encoded><![CDATA[<p><i>De gustibus non disputandum</i></p>
<p>If you think that throwing application-specific compatibility flags into the schema of an ISO standard submission is a &#8220;tidy&#8221; solution, then I think we have radically different defintions of &#8220;tidy&#8221;.</p>
<p>In any case, the point was to respond to those who dismiss any criticism of undefined, poorly-defined or incorrectly-defined elements in OOXML as &#8220;don&#8217;t worry, that part is optional&#8221;. Since everything is optional in OOXML, an ocean of sins can be buried (and indeed have been buried) by that disingenuous logic. </p>
<p>One of the criteria for evaluating a specification is whether the normative content is unambiguous. Normative content includes optional and deprecated elements as well.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: orcmid</title>
		<link>http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-302</link>
		<dc:creator>orcmid</dc:creator>
		<pubDate>Sun, 14 Jan 2007 18:06:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.robweir.com/blog/2007/01/guillaume-portes-redux.html#comment-302</guid>
		<description>I don&#039;t want to detract from your main argument, which is important for us all to think about.  However, I think your analysis of conformance is incomplete in pressing this observation:&lt;br /&gt;&lt;br /&gt;In fact, everything in OOXML is optional.&quot;&lt;br /&gt;&lt;br /&gt;Indeed, nothing in OOXML is any more optional than in ODF, where everything, including tons of private (i.e., &quot;foreign&quot;) extensions, are optional.&lt;br /&gt;&lt;br /&gt;My reading of OOXML is that they are tidier about it than that.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t want to detract from your main argument, which is important for us all to think about.  However, I think your analysis of conformance is incomplete in pressing this observation:</p>
<p>In fact, everything in OOXML is optional.&#8221;</p>
<p>Indeed, nothing in OOXML is any more optional than in ODF, where everything, including tons of private (i.e., &#8220;foreign&#8221;) extensions, are optional.</p>
<p>My reading of OOXML is that they are tidier about it than that.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.529 seconds -->

