237 F. Supp. 2d 639 | D. Maryland | 2002
In re MICROSOFT CORPORATION ANTITRUST LITIGATION.
This Document relates to:
Sun Microsystems, Inc.
v.
Microsoft Corporation.
United States District Court, D. Maryland.
*640 Lloyd R. Day, Jr., Cooley Godward LLP, Palo Alto, CA, for Sun Microsystems, Inc.
OPINION
MOTZ, District Judge.
Sun Microsystems, Inc. instituted this action against Microsoft Corporation for antitrust violations and copyright infringement in the Northern District of California. The Judicial Panel on Multidistrict Litigation transferred the action to the District of Maryland for resolution of pretrial issues. Presently pending before me is a motion for preliminary injunction filed by Sun. A three-day evidentiary hearing on the motion was held on December 3, 4, and 5. For the reasons discussed below, I will grant the injunction requested by Sun.
I.
A.
Microsoft's Previously Adjudicated Anticompetitive Conduct
The facts from which Sun's claims in this action arise have been extensively litigated in two prior lawsuits resolved against Microsoft: the antitrust enforcement action instituted by the United States Department of Justice in the District of Columbia and an earlier action pursued by Sun in the Northern District of California for breach of contract, trademark infringement, copyright infringement, and unfair competition.[1] I will merely provide a brief summary of those facts here.
In 1995 Sun introduced a series of new technologies known as the Java platform. Consisting of various component parts, including *641 what are called the "Java virtual machine" and "class libraries," the Java platform creates a "runtime environment" in which software applications, written in the Java programming language, can be run on different devices. Java has been characterized as "middleware," sitting on top of a computer's operating system and providing a common set of application programming interfaces that can be used by software developers. From the very beginning, Sun has widely licensed the source code for the Java platform to encourage its widespread adoption. As a result, implementations of the Java platform are available not only from Sun but from many other vendors as well, including some of the largest companies in the industry, such as IBM, Hewlett-Packard, and Oracle. Likewise, Sun no longer exclusively controls changes made to the Java platform; that control has been turned over to an organization comprised of licensees and developers known as the Java Community Process.
As soon as the Java platform was introduced, Microsoft appreciated its importance. On March 12, 1996, Microsoft entered into an agreement with Sun to license, make, and distribute products based on the Java technologies. Microsoft soon began to distribute its implementation of the Java platform with every copy of Windows and Internet Explorer. However, senior Microsoft executives also became deeply concerned that Java had "the potential ... to diminish the applications barrier to entry" protecting Microsoft's PC operating system monopoly. United States v. Microsoft Corp., 84 F.Supp.2d 9, 29 (D.D.C.1999) (Finding of Fact 75) (hereinafter cited as "FOF ___, 84 F.Supp.2d at ___"). Bill Gates, Microsoft's chairman and CEO, wrote that the Java platform "scares the hell out of me" because "[i]t's still very unclear to me what our OS will offer to Java client applications code that will make them unique enough to preserve our market position." (Day Decl. Ex. 1 [9/30/96 Gates email to Contorer]; see also Day Decl. Ex. 2 [Ludwig email to Silverberg et al. at MSS 00731213 (senior Microsoft executive expressing concern that "[J]ava is the next big industry-transforming idea") (emphasis in original)].)
Because of the competitive threat Java presented, Microsoft devised and implemented a strategy to "wrest control of Java away from Sun" and to "turn Java into just the latest, best way to write Windows applications." (Pl.'s Ex. 21, 4/14/97 Slivka email to Gates.) In order to preserve Java's cross-platform functionality, Sun required in all of its license and distribution agreements (including the one with Microsoft) that a licensee's implementation of the Java platform meet a test suite demonstrating that the implementation was compatible with the core Java platform. Though pretending to embrace the goal of compatibility, Microsoft intentionally took various steps to defeat that goal.
First, Microsoft made unauthorized modifications to the core Java class libraries. Sun Microsystems, Inc. v. Microsoft Corp., 999 F.Supp. 1301, 1309-10 (N.D.Cal. 1998). Second, in its implementation Microsoft failed to include support for what is known as Java Native Interface, a technology designed to permit programs written in Java to draw upon the native code of an underlying operating system. FOF 388-390, 84 F.Supp.2d at 105-06; Sun Microsystems, Inc. v. Microsoft Corp., 21 F.Supp.2d 1109, 1119-22 (N.D.Cal.1998), vacated, 188 F.3d 1115 (9th Cir.1999). Third, Microsoft altered its developer tools and virtual machine to recognize Microsoft-specific keywords and compiler directives that would run only on Microsoft's implementations. FOF 394, 84 F.Supp.2d *642 at 106-07; Sun Microsystems, 21 F.Supp.2d at 1122-25. This had the effect (as Sun correctly characterizes it) of changing the Java language to create a dialect only Microsoft products could understand. Fourth, Microsoft prevented developers from having ready access to a set of class libraries, useful for creating distributed computing applications, known as RMI (remote method invocation). FOF 391-393, 84 F.Supp.2d at 106. Instead, as found by Judge Jackson, "it buried the link in an obscure location and neglected to include an entry for it in the site's index. Referring to RMI and any Java developers who might access Microsoft's site looking for it, a Microsoft employee wrote to his approving manager, `They'll have to stumble across it to know it's there.... I'd say it's pretty buried.'" FOF 392, 84 F.Supp.2d at 106. Fifth, Microsoft intentionally deceived developers into believing the software products they were developing with Microsoft tools were cross-platform. United States v. Microsoft Corp., 253 F.3d 34, 76-77 (D.C.Cir.2001); see also FOF 395-403, 84 F.Supp.2d at 107-09 (explaining how Microsoft induced developers to use the Microsoft implementation rather than the Sun-compliant implementation).
The purpose of the strategy devised and implemented by Microsoft was described in its internal documents. A November 1996 email stated: "[W]e should just quietly grow j + + [Microsoft's incompatible developer tools] share and assume that people will take more advantage of our classes without ever realizing they are building win32-only java apps." FOF 394, 84 F.Supp.2d at 107. Another document was even more succinct: "Kill cross-platform Java by grow[ing] the polluted Java market." Microsoft, 253 F.3d at 76-77 (quoting Government Ex. 259).
While thus deliberately fragmenting the Java platform to make it less attractive for developers and users, Microsoft also successfully embarked upon a campaign to destroy Sun's channels of distribution for Java. In May 1995, Netscape Corporation "agreed ... to include a copy of Sun's Java runtime environment with every copy of Navigator [Netscape's web browser], and Navigator quickly became the principal vehicle by which Sun placed copies of its Java runtime environment on the PC systems of Windows users." FOF 76, 84 F.Supp.2d at 30. In order to curtail this line of distribution, Microsoft "undertook a number of anticompetitive actions that seriously impeded distribution of Navigator." Microsoft, 253 F.3d at 75. Microsoft also entered into "First Wave Agreements" with dozens of independent software vendors that "conditioned receipt of Windows technical information upon the ISVs' agreement to promote Microsoft's JVM [Java Virtual Machine] exclusively." Id. Finally, Microsoft successfully stopped Intel Corporation from cooperating with Sun and Netscape in the development of a cross-platform Java runtime environment by threatening not to distribute Intel technologies bundled with Windows and to support one of Intel's competitors in connection with one of its products unless Intel ceased its support for Java. Id. at 77.
B.
The Litigation in California Between Sun and Microsoft
As a result of Microsoft's development and distribution of an incompatible Java runtime, Sun instituted suit against Microsoft in the United States District Court for the Northern District of California. On March 24, 1998, the district court entered a preliminary injunction in favor of Sun on a trademark claim, prohibiting Microsoft from using Sun's "Java Compatible" mark with the Java runtime (often referred to as Microsoft Java Virtual Machine or MSJVM) that Microsoft had developed and was distributing. Sun Microsystems, 999 *643 F.Supp. at 1311-12. On November 17, 1998, the district court entered a second preliminary injunction on Sun's copyright infringement and unfair competition claims, prohibiting Microsoft from distributing any Java product unless certain incompatibilities were cured. Sun Microsystems, 21 F.Supp.2d at 1127-28. The Ninth Circuit Court of Appeals reversed the entry of the second preliminary injunction on legal grounds and remanded the case for further consideration.[2]Sun Microsystems, Inc. v. Microsoft Corp., 188 F.3d 1115 (9th Cir.1999). The Court of Appeals did not, however, disturb the district court's factual findings concerning the incompatibility of MSJVM. On remand, the district court did not reinstate the injunction on the copyright infringement claim (finding that the compatibility provisions of the agreement were independent covenants, not limitations on the license) but did reinstate the injunction on the unfair competition claim. Sun Microsystems, Inc. v. Microsoft Corp., 87 F.Supp.2d 992 (N.D.Cal.2000); Sun Microsystems, Inc. v. Microsoft Corp., 81 F.Supp.2d 1026 (N.D.Cal.2000).[3]
During the years the California litigation was pending, Microsoft had not yet developed a platform that offered the benefits to software developer and users provided by the Java platform. Faced with the reality that the market was demanding a Java product, Microsoft continued to distribute MSJVM. However, because Microsoft was not developing Java products to meet the Java platform's compatibility requirements, Sun suspended delivery to Microsoft of upgrades to the platform Sun was developing. Therefore, the MSJVM distributed by Microsoft was not based upon the most current Java technology.
On January 23, 2001, Sun and Microsoft entered into an agreement settling the California action. Under the agreement: (1) the original license and distribution agreement was terminated, (2) Microsoft was given the right, but not the obligation, to continue distribution of MSJVM incorporated in products (and their successors) with which it had been distributed under the original agreement, (3) Microsoft's distribution of MSJVM was required to be phased out over time, (4) the MSJVM could be based only on the older Java technology, (5) Microsoft paid $20 million to Sun, and (6) Sun released all of its claims, except its antitrust claims, arising out of the facts involved in the California litigation. (See Pl.'s Ex. 3; Def.'s Ex. 5, Settlement Agreement and Mutual Limited Release.)
C.
The Introduction of .NET and the Emerging Competition
Sometime after Java was introduced and enthusiastically received by the market, *644 Microsoft began to develop its own proprietary alternative known as the .NET framework. The .NET framework, like the Java platform, is middleware sitting on top of the Windows operating system. Its component parts are very similar to the Java technologies, but it uses a different programming language. On February 13, 2002, Microsoft began commercial distribution of the first product (Visual Studio .NET) containing the .NET framework. Microsoft has announced that it is engaging in a $200 million advertising campaign for .NET and that it intends to "bet the company" on the new framework by bundling it with various products, including Windows operating systems, its Office Suite applications program, and software developer tools. (Day Decl. Ex. 17 [1/21/01 Microsoft press release at 1]; Day Decl. Ex. 4 [2/13/02 Ballmer Speech at 6-7].)
Sun defines the market in which .NET and Java will be competing as one for general purpose, Internet-enabled distributed computing platforms. This is an emerging market in which, at least presently, the .NET and Java platforms are the only competitors. (See Garcia Decl. Ex. 2 [11/1/02 Treadwell Depo. at 137:1 138:10]; Garcia Decl. Ex. 3 [7/31/02 Allchin Depo. at 25:6-14]; Lin Decl. Ex. 25 at MSSunII 106122 ("Java is the competing platform. There are two developer platforms that can deliver a global web service platform: Java and .NET.").)[4] As now envisioned, the platforms will enable their respective users not only to communicate information to one another but also to execute application programs from a common source.[5] It is also envisioned that the platforms will enable application programs to be executable across a wide range of devices, including PCs, servers, and various handheld devices (such as personal digital assistants, cell phones, and smart cards).
II.
Sun's Requested "Must-Carry Injunction"
Sun's first request for preliminary injunctive relief is, in essence, that Microsoft be required to set up Sun's most current Java runtime environment to be installed by default on any product containing .NET, including Windows XP (the most recent iteration of the Windows operating system) and Internet Explorer. Under the proposed injunction, the Java runtime *645 environment is to be provided by Sun to Microsoft at no cost, and it must pass the relevant Java compatibility tests available from the Java Community Process.[6]
The theory underlying Sun's requested injunction is that Microsoft, having unlawfully fragmented the Java platform and having destroyed Sun's channels of distribution for that platform, is now taking advantage of its past antitrust violations to leverage its monopoly in the Intel-compatible PC market into the market for general purpose, Internet-enabled distributed computing platforms.
Microsoft and Sun are now competing for the "mindshare" of software developers, seeking to have the developers target the applications programs to them. The extent to which a platform is distributed on PCs will be a critical factor in determining the outcome of this competition because PCs, in light of their universal usage, provide a limitless market for software application programs.[7] According to *646 Sun, if Microsoft had not committed its anticompetitive acts directed toward thwarting the implementation of Java, current and compatible Java runtime environments would now be ubiquitous on PCs. This ubiquity would provide an incentive for software developers to target their products to the Java platform. Instead, Microsoft has succeeded, through its antitrust violations, in creating an environment in which the distribution of Java on PCs is chaotic and the Java runtimes on PCs are incompatible. This environment deprives Sun of the advantage that ubiquitous distribution of compatible Java would have bestowed. It also confers a positive benefit upon Microsoft by enabling it to tell developers during the course of competition for their business that the ubiquitous distribution of .NET on PCs is assured (because it will be bundled with Microsoft products) while the distribution of Java on PCs will remain haphazard.
The "must-carry" remedy Sun proposes is designed to prevent Microsoft from obtaining future advantage from its past wrongs and to correct the distortion in the marketplace that its violations of the antitrust laws have caused.
III.
For the reasons I will state later in this opinion, I find Sun's theory is sound and its proposed remedy appropriate. First, however, I must address a critical predicate for Sun's request for preliminary injunctive relief: that unless the injunction is granted, there is a substantial risk that the market for general purpose, Internet-enabled distributed computing platforms will "tip" irretrievably in favor of .NET and drive Java into near extinction.
A.
Feedback Effects
As has been demonstrated beyond dispute in the Department of Justice action, what are known as feedback effects have played a role in Microsoft's dominance of the PC operating system market. Feedback effects are "a phenomenon by which the attractiveness of a product increases with the number of people using it." FOF 39, 84 F.Supp.2d at 20 (referring to feedback effects as "positive network effects"). A telephone system is an obvious example. Windows itself has become another. As more consumers have chosen it as their operating system, more developers have written more applications programs for it, and as more applications programs have been written for it, it has become increasingly attractive for consumers. One Microsoft executive once accurately described this self-enforcing cycle as "virtuous" for Microsoft. (Lin Decl. Ex. 47 [Memorandum of Eric D. Rudder, MSSunII at 23290]; see also Lin Decl. Ex. 28 [Commonwood Strategy Document, MSSunII at 24503].) Just as accurately, Judge Jackson characterized it as "vicious" for Microsoft's competitors. FOF 39, 84 F.Supp.2d at 20. Moreover, as noted by the D.C. Circuit, the cycle's viciousness is increased by the fact that in an industry where feedback effects are strong, "one product or standard tends towards dominance." 253 F.3d at 49. "Competition in such industries is `for the field' rather than `within the field.'" Id. (quoting Harold Demsetz, Why Regulate Utilities?, 11 J.L. & ECON. 55, 57 & n.7 (1968)).
The parties disagree about whether feedback effects will also have a substantial impact in the market for Internet-enabled distributed computing platforms the market in which .NET and Java are beginning to compete. Citing the testimony of Kevin Murphy, its expert economist, Microsoft points out that "consumers do *647 not choose a single runtime environment that is capable of running the greatest number of applications [but] instead, they acquire and use multiple runtime environments at very low or no cost." (Microsoft's Supp. Mem. at 12 (citing Murphy Decl. ¶¶ 44, 111, 137-39).) This fact distinguishes the distributed computing platform market from the PC operating system market where a consumer is likely to purchase and use a single operating system. Microsoft also notes that Terry Stepien, a software developer whose testimony Sun has presented, did not during his deposition include a platform's ubiquity among the factors he would consider in choosing what platform to target. (See Stepien Reply Decl. ¶ 13; Rewinski Supp. Decl. Ex. 174 [Stepien Depo. at 59:10-63:4].)
There is other evidence, however, that feedback effects will be of great importance in the forthcoming competition between .NET and Java.[8] David Treadwell, *648 designated by Microsoft as its Rule 30(b)(6) witness in the areas of .NET adoption and distribution, testified that "a large install[ed] base represents a smaller barrier, but it's not an incentive by itself," that "[t]he amount of installed base is always a secondary or tertiary factor," and that "[t]he most important factor for developers in my mind is the quality of the platform." (Garcia Decl. Ex. 2 [11/1/02 Treadwell Depo. at 139:4-12].) However, he then answered, "You just described Microsoft's business funnel," when asked the follow-up question, "Do you see there being any kind of cycle involving developers writing applications to a technology like .NET, and then the large install[ed] base of applications leading consumers to buy more of it, which in turn increases the economic incentives of developers to write to it, so that it's a self-reinforcing cycle?" (Id. at 139:13-19.) He went on to say, "Absolutely," when asked, "Is that a cycle that Microsoft is endeavoring to trigger in connection with .NET?" (Id. at 139:23-25.)
Jim Allchin, Microsoft's Group Vice President for Platforms, likewise testified on deposition about the importance of persuading software developers to write programs for a platform by "evangeliz[ing]" the platform. According to Allchin, powerful applications will, in turn, "incent more sales of the platform itself." (Garcia Decl. Ex. 3 [7/31/02 Allchin Depo. at 68:24-69:4].) Further, an internal Microsoft memorandum circulated in April 2001 recognized that "Web service platforms benefit from a network effect because interaction among web services requires a common programming model." (Lin Decl. Ex. 1 [MSSunII at 152784].)
Of course, a platform's share of the market is not the only factor that will influence a software developer to write applications for it. The platform must be of high quality (just as the Windows operating system needed to be of high quality in order to take advantage of the feedback effects in the PC operating system market). However, as testified to by Brian Behlendorf, an independent software developer, although a platform's distribution is not the only factor he considers in choosing whether to target it for his applications, "the comparative market potential provided by different platforms is commonly the most influential and important consideration among commercial software developers in their selection of platforms for commercial application development." (Behlendorf Reply Decl. ¶ 12.)
B.
Market Tipping
On this evidence I find there will be a substantial feedback effect in the market for general purpose, Internet-enabled distributed computing platforms as the competition between .NET and Java unfolds. I also find that, in accordance with the general economic principles cited by the D.C. Circuit in the Department of Justice case, .NET and Java will compete for the field rather than within the field. Microsoft, 253 F.3d at 49. I do not suggest, however, it is inevitable that the market will tip in favor of .NET. Dennis Carlton, Sun's expert economist, has candidly acknowledged that he cannot determine whether tipping away from Java is more likely than not. (See 12/4/02 Tr. at 23-24, *649 35, 115-16; Rewinski Decl. ¶ 9, Ex. 157 [Carlton Depo. at 214:21-215:9, 163:11-14]; see also 12/3/02 Tr. at 348-51 (Ross).) It is possible that .NET and Java will both survive as competing platforms and that the new market will be a heterogeneous one.[9]
Indeed, if one took a snapshot picture of the existing market for general purpose, Internet-enabled distributed computing platforms, it is Java that would appear dominant. Having just been commercially introduced, .NET has virtually no present share of the market. On the other hand, Java, despite the absence of Sun's most current platform on PCs caused by the events I have previously described, is presently in a strong position. For many years it has been the platform of choice for software on large servers and handheld devices. Moreover, Sun's own documents show there are presently approximately 3 million developers who use Java today. (See Def.'s Ex. 33 at 1; 12/3/02 Tr. at 183 (Green).) When speaking to developers, both Scott McNealy, Sun's chairman and chief executive officer, and Richard Green, one of its senior executives responsible for promotion of the Java platform, emphasize Java's strength in the marketplace and its growing market share. For example, at a speech given at the SunNetwork 2002 Conference on September 18, 2002, McNealy stated:
In the platform arena, it's kind of a two-horse race here. If you look at the ... there's only two really large developer communities left on the planet. There are lots of nichy ones. There's SunOne and .NET, that's it. There are no other multi-million developer platforms out there. Both of those are gaining share, everybody else is losing share. We happen to be gaining share faster. We have millions and millions of SunOne/Solaris/Linux/Java developers out there. Up from a hundred thousand seven or eight years ago..NET and the whole Windows environment is still millions and millions of developers, they were that way years ago. That's growing a little bit, but not gaining much share. Everything else is shrinking. It's kind of a two-horse race.
(Def.'s Ex. 39A [Transcript of McNealy Speech at 1].)
A snapshot picture, however, is misleading and incomplete. The results of a recent survey conducted by Evans Data Corporation are reflected in the following graph:
*650
(Sun's Supp. Mem. at 18 (based on Garcia Decl. Ex. 25 [Evans Data Corp., North American Developer Survey, Volume 2 101-105 (2002)]).) Although the survey results confirm that presently more developers target Java than .NET (approximately 50% to 40%), they demonstrate two additional, highly pertinent facts. First, it is remarkable that as many as 40 percent of the developers are now targeting .NET because commercial distribution of the .NET framework is just starting. Second, within just one year, more developers say they will be targeting .NET than Java.
The graph also gives meaning to the phrase "graphically display" and shows why a snapshot view of the existing market is insufficient when considering the issue of market tipping. The market is not static but is characterized by movement and the synergism of changing expectations. Sun and Microsoft both recognize that they are competing for "mindshare" among developers. (See, e.g., Pl.'s Ex. 29 at MS98 0103658 [8/10/95 Email from Jones to Slivka et al.] ("We are so dominant in all other aspects of the market that we can never be displaced by a full frontal assault.... The real threat to our business is solutions like Java, which present a different programming model than Windows and take developer and content provider mindshare.") (emphasis added).) If developers begin to anticipate that one platform will become dominant over the other, it is likely that their loyalties will quickly shift to that platform, not only because they anticipate it will provide them with a broader market for their products but also because it is within the environment of that platform where intellectual ferment will be the greatest.
"Evangelizing" (as Microsoft's Jim Allchin aptly puts it) and seeking to capture developers' mindshare is what the competition between Java and .NET is all about. But in that dynamic environment, it is impossible to identify the moment when the competition has been won. Waiting for the score to appear in market share data is too late because by that time the critical events will have already occurred. (See 12/4/02 Tr. at 36 (Carlton); Ross Decl. ¶ 26.) Therefore, the genuine threat that market tipping presents cannot be dismissed on the ground that at the moment, before the competition has begun, a large number of software developers are still Java-oriented. Microsoft, Sun, and the developer community are all looking toward the future, and in order to determine whether a must-carry injunction is necessary and appropriate, a court must do so as well.
*651 IV.
The framework for deciding a preliminary injunction motion in the Fourth Circuit was established in Blackwelder Furniture Co. v. Seilig Mfg. Co., 550 F.2d 189 (4th Cir.1977). "In reaching this decision, the district court must balance the hardships likely to befall the parties if the injunction is, or is not, granted." Hoechst Diafoil Co. v. Nan Ya Plastics Corp., 174 F.3d 411, 416-17 (4th Cir.1999) (citing Blackwelder, 550 F.2d at 196). Specifically, the court must consider four factors: "(1) the likelihood of irreparable harm to the plaintiff if the preliminary injunction is denied; (2) the likelihood of harm to the defendant if the requested relief is granted; (3) the likelihood that the plaintiff will succeed on the merits; and (4) the public interest." Id. at 417 (citations omitted); see also Direx Israel, Ltd. v. Breakthrough Med. Corp., 952 F.2d 802, 812 (4th Cir. 1991).
A.
Harm to Sun if Injunction Not Entered
As I have just indicated, I do not find that at this precise moment there is an imminent threat that the market for general purpose, Internet-enabled distributed computing platforms will tip in favor of .NET. I do find, however, that unless Sun is given a fair opportunity to compete in a market untainted by the effects of Microsoft's past antitrust violations, there is a serious risk that in the near future the market will tip in favor of .NET, that it is impossible to ascertain when such tipping might occur in time to prevent it from happening, and that if the market does tip in favor of .NET, Sun could not be adequately compensated in damages. I further find it is an absolute certainty that unless a preliminary injunction is entered, Sun will have lost forever its right to compete, and the opportunity to prevail, in a market undistorted by its competitor's antitrust violations. Taken together, these facts are more than sufficient to constitute irreparable harm. See Multi-Channel TV Cable Co. v. Charlottesville Quality Cable Operating Co., 22 F.3d 546, 551-52 (4th Cir.1994) ("[I]rreparable injury is suffered when monetary damages are difficult to ascertain or are inadequate.... [W]hen the failure to grant preliminary relief creates the possibility of permanent loss of customers to a competitor or the loss of goodwill, the irreparable injury prong is satisfied." (internal quotation marks and citation omitted)).
Microsoft argues, however, that this harm is not cognizable because Sun could avoid it by investing time and money to develop a distribution network through which it could achieve widespread distribution of its Java runtime environment on PCs. The legal principle upon which Microsoft relies is sound. The Supreme Court has clearly stated that "[m]ere injuries, however substantial, in terms of money, time and energy necessarily expended in the absence of a stay, are not enough" to establish irreparable harm. Sampson v. Murray, 415 U.S. 61, 90, 94 S.Ct. 937, 39 L.Ed.2d 166 (1974). However, Microsoft's argument relies upon an implicit factual premise that is faulty: that widespread distribution of Sun's Java runtime would be sufficient to eliminate the serious risk of market tipping.
The evidence undermines this premise. In a market susceptible to feedback effects where the distribution of one of the competing products is ubiquitous, what is critical to the tipping question is not whether distribution of a competitor's product is widespread but whether there is approximate parity in the distribution of the two competing products. Otherwise, the ubiquitous product (provided it is of sound quality) will dominate. Richard Green testified that "the concept of having a significant share or a widespread share is not the *652 valid concept. The concept of having a prevalent share or an equivalent share is really the valid concept and that's what we seek." (12/3/02 Tr. at 128.) Green used cell phones as an example: "if I'm looking to purchase a cell phone and I had a chance of purchasing a cell phone that can talk [to] a hundred percent of all the other cell phones or another cell phone that could talk to 70% of all the cell phones ... [assuming equivalence in functionality and price], I'll probably choose the cell phone that's 100%." (Id. at 129.) Green said that in his experience software developers view competing platforms in the same way. (Id. at 130.)
Green's testimony was confirmed by Rick Ross, an independent software developer. According to Ross, "if there's a significant disparity [in the distribution of competing platforms], then developers have a strong economic incentive to go with the more widely-distributed technology, particularly if their qualities in many other respects are similar." (12/3/02 Tr. at 332.) Ross was later asked, "[W]hy is it that nearly widespread distribution of one platform isn't enough to attract many developers to target that platform if the competing platform contains ubiquity?" He responded:
Well, you can't do everything. It takes a lot of time and energy to learn about these APIs. These are very complicated sets of programming interfaces. You have to gain expertise and the tools and developers like everybody else only have 24 hours in a day. So you can't be a master of all technologies. And if there is one which is clearly dominant and one which is clearly driving the largest sort of profit-oriented incentives to adopt that technology in favor of another, even if there's another that has and I'm not exactly sure what widespread means. But if one is ubiquitous and truly dominant and there's a future for future parity or a large degree of parity between the platforms, most developers aren't going to support both. The vast majority of developers will just pick the dominant leader, go with the market leader. It's the safe thing to do, especially in a downturn economy like this.
(Id. at 334-35.)
Steven Banfield, the Vice President of Strategic Relations of RealNetworks, Inc., has submitted an affidavit to the same effect: "Even if a competitor could achieve distribution parity with a competing Microsoft product at a given point in time such as a certain day or even for a year, this would be insufficient to compete successfully.... Given a choice between guaranteed availability of a platform and merely possible availability on end users' PCs, in my experience ICPs and ISVs have significant incentives to write to the platform with guaranteed availability." (Banfield Reply Decl. ¶ 16.)
This evidence makes clear that Sun could not eliminate the risk of market tipping by investing heavily to develop distribution channels if its investment achieved only widespread, rather than near equal, distribution of Java. Microsoft does not (as it could not) deny that there will be virtually ubiquitous distribution of .NET on PCs through Microsoft's existing distribution network. Nor does Microsoft deny Sun's contention that, even by the expenditure of significant sums, it would be unsuccessful in obtaining distribution of its Java runtime approximating that of ubiquity.[10] Equity certainly does *653 not require that as a condition to obtaining injunctive relief, a party incur costs that would not protect it against the harm for which it seeks a remedy. Therefore, Sun's request for a must-carry remedy is not barred by its decision not to spend millions of dollars in establishing its own distribution network.
B.
Harm to Microsoft if Injunction Entered
At the preliminary injunction hearing, Christopher Jones, Microsoft's Vice President for the Windows Client Division, testified that Microsoft will suffer five different types of harm if Sun's requested must-carry injunction is granted. First, the injunction would put Windows shipping dates in jeopardy. Second, it would expose Microsoft to risk of intellectual property litigation. Third, it would not place any bounds on what Sun could put into the Java runtime environment. Fourth, it would impact on the quality and security of Windows Operating System releases. Fifth, it would cause a support burden for Microsoft and support issues for its customers and partners. (12/4/02 Tr. at 200-01.)[11]
The problems identified by Jones are either ephemeral or easily remediable. The must-carry remedy provision of Sun's proposed injunction does not become effective for 90 days. That period of time appears fully sufficient to cure any shipping problems Microsoft envisions. If Microsoft believes that is not so, it can bring its concerns and proposed solutions to Sun's attention (and if discussions with Sun fail, to my attention) when the parties discuss the final form of the preliminary injunction order.[12]
Sun has offered to include in the injunction a provision indemnifying Microsoft in the event that any intellectual property litigation is instituted against Microsoft as a result of its installation and distribution of the Java runtime. Such provisions are standard in the industry and would fully remedy the second problem Jones has identified.
The injunction proposed by Sun requires that the runtime environment delivered by Sun to Microsoft for installation "passes the relevant Java compatibility tests available from the Java Community Process." Sun does not control the JCP and therefore, contrary to Jones's assertion, there is a restriction upon what Sun can deliver to *654 Microsoft for installation and distribution. There is no reason to believe that the JCP would act irresponsibly in testing Sun's Java products and, were it to do so, Microsoft could seek judicial relief because the court will retain continuing jurisdiction until the conclusion of these proceedings.
The concerns that Jones expressed about potential quality and security problems are only generalized in nature. The Java platform has been in existence since 1995, and Microsoft has come forward with no evidence to suggest it is unstable. Moreover, during the course of the negotiations that led to the settlement of the California litigation, Microsoft offered to ship Sun's Java runtime environment with Windows. (12/4/02 Tr. at 248-49 (Parthasarathy); Def.'s Ex. 6 [Maritz Letter to Sueltz at 1-2].) Sun rejected the offer because it found unacceptable other conditions attached to it by Microsoft. For present purposes, however, the material fact is that Microsoft made the offer; if it had genuine quality and security concerns about installing the Java runtime on Windows, it would not have done so. Likewise, in March 2002, Microsoft was internally considering "options for integrating another VM (IBM probably) with IE." (Pl.'s Ex. 37 at MSSunII 21458-59 [3/25/02 Email from Murman to Miller et al.].) During his testimony the only reason Jones could give for installing an IBM, but not a Sun, Java virtual machine on Microsoft products was that Microsoft has a "positive relationship, [at least] in theory, with IBM." (12/4/02 Tr. at 239.) In light of the strong evidence demonstrating that it is Microsoft's misconduct that has poisoned its relationship with Sun, this justification for resisting the must-carry injunction is unappealing.
The fifth problem identified by Jones that the must-carry injunction will impose a support burden for Microsoft and its customers and partners is of the same insubstantial nature. The evidence demonstrates that Microsoft already installs third-party software on its products and that when it receives complaints about the performance of such software, it refers the person making the complaint to the third-party. There is no reason to infer that Sun's Java runtime would generate any greater volume of complaints than the software of other third parties or that any complaints received by Microsoft could not similarly be redirected to Sun.
C.
Sun's Likelihood of Success on the Merits
Sun's potential harm is great if the injunction is not granted. Microsoft's potential harm is slight if the injunction is granted. Therefore, under a strict reading of Blackwelder "it is enough that grave or serious questions are presented; and plaintiff need not show a likelihood of success." 550 F.2d at 196. Subsequent Fourth Circuit cases, however, suggest some backing away from this approach. See, e.g., Hoechst Diafoil, 174 F.3d at 417 ("Nevertheless, where it is legally impossible for a plaintiff to succeed on the merits of its underlying claim, the district court may not grant the requested injunction, no matter how severe or irreparable an injury the plaintiff may otherwise suffer.") In any event, because of the mandatory nature of the injunction Sun is seeking, I would be reluctant to enter it were I not persuaded that Sun's likelihood of success is substantial.
1. The Effect of the Rulings in the Department of Justice Action
I begin with the proposition that Microsoft's anticompetitive conduct has already been extensively litigated and that Microsoft is collaterally estopped from challenging the findings made against it in the Department of Justice action. Microsoft *655 does not contest this proposition. Instead, it asserts that in three respects the rulings made in the Department of Justice action argue against the must-carry injunction.
First, it points out that Judge Jackson, the D.C. Circuit, and Judge Kollar-Kotelly all found that the evidence before them was insufficient to support a finding that Microsoft would not have acquired and maintained its monopoly in the operating system market but for its anticompetitive actions. Microsoft, 253 F.3d at 107; New York, 224 F.Supp.2d at 262; FOF 411, 84 F.Supp.2d at 112. While true, that is irrelevant. In this action, Sun's focus is upon Microsoft's use of its power to destroy Java's compatibility and ubiquity, not Microsoft's use of its power to maintain its own monopoly in the operating system market. Thus, Sun does not attempt to prove, at least at this preliminary stage of the proceedings, anything different from what the courts in the Department of Justice action found on the "but for" issue. The causation question relevant here is whether Microsoft's actions "seriously impeded distribution of Sun's JVM" and "foreclosed a substantial portion of the field for JVM distribution." In affirming Judge Jackson, the D.C. Circuit expressly found that they did. Microsoft, 253 F.3d at 76.
Second, Microsoft relies heavily upon the fact that the D.C. Circuit found that Microsoft's development and distribution of its incompatible JVM was procompetitive because it enabled Java to run more swiftly on Windows.[13] Therefore, the court found that these acts did not constitute a ground for imposition of antitrust liability. Id. at 74-75. At the same time, however, the D.C. Circuit found that other acts taken by Microsoft against the Java platform, including deceiving developers about the compatibility of its JVM, entering into de facto exclusive First Wave Agreements with independent software developers, threatening Intel and coercing it not to support the Java platform, and destroying Netscape as a channel of distribution for Java were antitrust violations. The court further found that these actions substantially limited the spread of Java onto PCs. Id. at 75-78. Moreover, the D.C. Circuit addressed only Microsoft's development and promotion of its own customized Java, not its exclusion of compatible Java on Windows.[14]
*656 In any event, different perspectives sometimes yield different, but equally accurate, views of the same landscape. That is one of the reasons the Supreme Court has made clear that "the United States government, the governments of each State, and any individual threatened with injury by an antitrust violation may all sue for injunctive relief against violations of the antitrust laws[.]" Hawaii v. Standard Oil Co. of California, 405 U.S. 251, 261, 92 S.Ct. 885, 31 L.Ed.2d 184 (1972). The D.C. Circuit undoubtedly was correct in finding that in some respects some of the modifications Microsoft made to its JVM were procompetitive. They enhanced the performance of Windows and, as an internal Sun document produced in these proceedings reflects, were a spur for Sun to improve its Java products. (See Def.'s Ex. 1 at Sun2-42-000040 [2/6/2002 Java Desktop Client Strategy].) In other respects, however, Microsoft's fragmentation of the Java platform was profoundly anticompetitive. Confronted with an innovative product for which it had no substitute (even on the drawing board) and which threatened its monopoly in the operating system market, Microsoft devised and implemented a strategy to deprive Sun of the benefits of Sun's ingenuity and to deprive the consuming public of the full benefits of Sun's invention. Microsoft embraced Java for the purpose of destroying it. At the least, Microsoft bought time (seven years, as it turned out) to develop its own competitive product, and it is now bringing that product to a market its own antitrust violations have substantially distorted. This conduct may well not have justified breaking up Microsoft, as the government was seeking to do at the time of the D.C. Circuit's decision. But it fully justifies denying Microsoft a competitive advantage obtained by its antitrust violations.
The third aspect of the Department of Justice action upon which Microsoft focuses is Judge Kollar-Kotelly's refusal to grant, at the request of States objecting to the Department of Justice settlement, a remedy similar to the must-carry remedy Sun proposes here. New York, 224 F.Supp.2d at 188-90, 260-62. What I just said about the importance of perspective applies equally here. Indeed, I would have made the same decision as did Judge Kollar-Kotelly were I called upon to consider the propriety of a must-carry remedy in the context of determining whether to approve the proposed consent decree in the Department of Justice action. However, I, unlike Judge Kollar-Kotelly, am not being asked to fashion a remedy tailored to the revised liability findings of the D.C. Circuit under the "mandate rule." The record in this case is also different; additional witnesses and exhibits have been presented.
Most importantly, here the must-carry injunction is a means to correct a private wrong done to Sun and the other members of the Java community, rather than as an external governmental mandate. When thus viewed, it appears as an elegantly simple remedy, precisely tailored to prevent Microsoft's past wrongs from giving it an advantage in the forthcoming competition in the market for general purpose, Internet-enabled distributed computer platforms.[15] I do not find in this context *657 that the injunction would constitute "market engineering." Rather, I find it corrects a distortion in the market that Microsoft itself has unlawfully "engineered."[16]
2. The Nature of the Remedy
As Microsoft accurately posits, the antitrust laws are not intended to be a means to "conscript your competitor's sales force." Olympia Equip. Leasing Co. v. Western Union Tel. Co., 797 F.2d 370, 379 (7th Cir.1986). Here, however, Sun is attempting to conscript no one. During the course of its competition with .NET in the coming years, it will have to sell the Java platform through its own promotion efforts and through the quality of its product. All Sun requests is that a compatible Java platform be made available on PCs, as it would have been but for Microsoft's antitrust violations, so that the platform can be judged on its merits.
Microsoft does not, as it cannot, deny that a must-carry remedy is appropriate where necessary to restore the competitive structure of a market distorted by antitrust violations. See Aspen Skiing Co. v. Aspen Highlands Skiing Corp., 472 U.S. 585, 601-05, 105 S.Ct. 2847, 86 L.Ed.2d 467 (1985); Lorain Journal Co. v. United States, 342 U.S. 143, 155-56, 72 S.Ct. 181, 96 L.Ed. 162 (1951). Rather, it argues that such a remedy has never been granted as a preliminary injunction. Sun cites no case where such an injunction has been entered, and I will assume Microsoft's assertion is true. However, though the lack of precedent counsels caution, it does not close the inquiry. As Aspen Skiing and Lorain Journal make clear, in an appropriate case injunctive relief of this kind is proper. I have the benefit of a full record on which the issues have been thoroughly explored,[17] and the mere fact that a trial has not yet been held does not mean that an injunction should not be issued. If, as Microsoft asserts, the granting of preliminary relief is extraordinary, the short answer is that extraordinary circumstances require extraordinary remedies.
*658 3. Sun's Alleged Delay in Filing Suit
Microsoft argues that Sun is precluded from seeking injunctive relief because it allegedly delayed in filing this action. According to Microsoft, Sun should have instituted suit years ago when Microsoft fragmented the Java platform and destroyed Sun's channels of distribution.
Microsoft's argument is somewhat ironic in that it simultaneously contends that Sun's request for a preliminary injunction is premature because of the lack of evidence of any present tipping in the market. The irony aside, Sun clearly filed suit in a timely manner because Microsoft's distribution of .NET is an essential component of its claim for a must-carry injunction, and this action was filed within ten days of the commencement of the commercial distribution of .NET.
4. The "Two Market" Issue
Microsoft contends that Sun has not suffered "antitrust injury" because the damage inflicted upon it has been incurred in a market other than the Intel-compatible PC operating system market in which Microsoft has its monopoly. Similarly, Microsoft contends that Sun may not obtain injunctive relief in a market different from the one in which Microsoft has its monopoly.
Neither contention is meritorious. Antitrust injury is "injury of the type the antitrust laws were intended to prevent and that flows from that which makes defendants' acts unlawful." Brunswick Corp. v. Pueblo Bowl-O-Mat, Inc., 429 U.S. 477, 489, 97 S.Ct. 690, 50 L.Ed.2d 701 (1977). The D.C. Circuit specifically held that Microsoft's anticompetitive acts against Java as a potential substitute for Windows were prohibited by § 2 of the Sherman Act even though middleware had been properly excluded by Judge Jackson in defining the relevant market in which Microsoft had its monopoly. 253 F.3d at 54. Sun was a direct victim of the "forbidden practices" in which Microsoft engaged and falls well within the protection of the "comprehensive ... terms and coverage" of the Clayton Act. Blue Shield of Virginia v. McCready, 457 U.S. 465, 472, 102 S.Ct. 2540, 73 L.Ed.2d 149 (1982).
Likewise, there is nothing in the Clayton Act limiting injunctive relief to the remedying of harm suffered in the market where the defendant's antitrust violations were committed. Rather, the Act broadly provides that "[a]ny person ... shall be entitled to sue for and have injunctive relief ... against threatened loss or damage by a violation of the antitrust laws ...." 15 U.S.C. § 26. Although a relevant market must be defined for the purpose of determining whether an antitrust violation has occurred, once the violation has been established, injunctive relief to protect a person against any resulting threatened loss or damage to its business or property, including that suffered in any adjacent market, is appropriate. United States v. United States Gypsum Co., 340 U.S. 76, 88-89, 71 S.Ct. 160, 95 L.Ed. 89 (1951) (stating that injunctive relief "is not limited to prohibition of the proven means by which the evil was accomplished, but may range broadly through practices connected with acts actually found to be illegal"); Int'l Boxing Club of New York v. United States, 358 U.S. 242, 262, 79 S.Ct. 245, 3 L.Ed.2d 270 (1959) ("[S]ometimes relief, to be effective, must go beyond the narrow limits of the proven violation.").
5. The Allegedly Minimal Impact of Microsoft's Unlawful Acts of Fragmentation
Microsoft argues that most of the actions it took to fragment the Java platform did not constitute breaches of its Technology License and Distribution Agreement with Sun ("TLDA") and that, in any event, *659 its actions had insignificant impact.[18] There are several fallacies in this argument.
First, in issuing his initial preliminary injunction on March 24, 1998, Judge Whyte found that it was reasonably likely that Sun would succeed in proving that Microsoft had breached the compatibility provisions of the TLDA in making modifications to the core Java libraries. Sun Microsystems, 999 F.Supp. at 1309-10. Microsoft now concedes that it did so. (See 12/12/02 Microsoft Supp. Mem. at 7.) In issuing his second preliminary injunction on November 17, 1998, Judge Whyte likewise found it was reasonably likely that Sun would succeed in proving that Microsoft had further breached the compatibility provisions of the TLDA by failing to support JNI and making extensions of the Java language and corresponding changes in its developer tools that would run only *660 on Microsoft's implementations. Sun Microsystems, 21 F.Supp.2d at 1119-25.[19] It is true, as Microsoft contends, that on October 12, 2000, Judge Whyte issued what he called a "Tentative Order," (see 12/12/02 Microsoft Supp. Mem., Ex. C), in which he denied cross-motions for partial summary judgment and found that jury questions were presented in connection with contract interpretation issues. However, Judge Whyte did not retract his conclusions concerning Sun's reasonable likelihood of success expressed in his earlier opinions. Those opinions were thorough and detailed, and I agree with Judge Whyte that it is reasonably likely that Microsoft breached the TLDA in several critical respects.
Second, although Microsoft's actions taken to undermine the compatibility provisions of the TLDA are important because they evidence Microsoft's plan to fragment the Java platform, Sun's claim for preliminary injunctive relief does not depend upon whether those actions constituted breaches of the TLDA. Indeed, Sun released pure breach of contract claims in the January 23, 2001 agreement settling the California litigation. What is material is whether the actions taken by Microsoft to fragment the Java platform constituted unlawful anticompetitive conduct. As I noted earlier in this opinion, in the Department of Justice action findings were made (which the doctrine of collateral estoppel bars Microsoft from challenging) that Microsoft's deception of developers about surreptitious language and development tool modifications were antitrust violations. As I also noted earlier, the D.C. Circuit further found that these violations, combined with Microsoft's misconduct toward Netscape, its unlawful "First Wave Agreements" with independent software developers, and its threats to Intel to stop it from supporting Java, "seriously impeded distribution of Sun's JVM" and "foreclosed a substantial portion of the field for JVM distribution." Microsoft, 253 F.3d at 76. My additional ruling that Microsoft's development and distribution of an incompatible JVM was also anticompetitive only strengthens this causation finding.
Third, Microsoft is incorrect in contending that its acts of fragmenting the Java platform were only minimal in their effect. To the contrary, they achieved their intended purpose of destroying software developers' confidence and expectation that Java would become prevalent on PCs. (See 12/3/02 Tr. at 296-97 (Ross) ("One of the key attractive qualities of the Java platform to a developer is that you can reduce porting and switching costs because you can count on your application to run successfully anywhere that the core class libraries have been implemented in a compatible way.... [I]f you don't have that expectation of compatibility, then it dramatically reduces Java's utility and attractiveness.").)[20] Moreover, Microsoft poisoned *661 its relationship with Sun almost as soon as it began by developing an incompatible MSJVM.[21] This gave rise to the chain of events that resulted in incompatible Java now being present on the vast majority of PCs: the situation which Microsoft plans to exploit for its own advantage.
6. The Effects of the Settlement Agreement in the California Litigation
Although Microsoft has not filed a motion to dismiss and did not raise the issue until its closing argument at the preliminary injunction hearing, it now appears to suggest that Sun's claims are barred by the settlement agreement in the California litigation. If Microsoft is so contending, its position is without merit. Although section 17(a) of the agreement contains a mutual release of claims, section 17(c) expressly provides that "Sun reserves and does not release or dismiss any claims arising under antitrust laws it may have against Microsoft, including such claims as may be based in whole or in part on some or all of the facts underlying any of the claims released and dismissed in paragraph 17(a) ...." (Pl.'s Ex. 3; Def.'s Ex. 5, Settlement Agreement and Mutual Limited Release at 10.)
More broadly, Microsoft argues that Sun itself is responsible for much of the fragmentation of the Java platform about which it complains by virtue of its decisions not to provide Microsoft with upgrades under the TLDA and not to permit Microsoft to distribute current Java under the settlement agreement.[22] On the surface it may seem paradoxical that Sun is now seeking a "must carry" injunction against Microsoft whereas in the past it has complained about Microsoft's distribution of an implementation of the Java platform. However, the paradox is apparent, not real. What Sun has sought to stop in *662 the past is Microsoft's distribution of Microsoft's incompatible MSJVM; what it now seeks to require Microsoft to distribute is Sun's own Java runtime that has passed the compatibility tests of the Java Community Process. The latter was precisely what Sun sought when it entered into the TLDA with Microsoft in 1996. Moreover, although it is true that Sun's decision to deny Microsoft access to upgrades may have decreased the ubiquity of up-to-date Java on PCs, it was forced to make a selection between ubiquity and compatibility because it accurately perceived that Microsoft was (in the words of Bill Gates) attempting to "wrest control of Java" from it. Microsoft cannot now properly benefit from the fact it presented Sun with a Hobson's choice.
D.
The Public Interest
The final factor to be considered under the Blackwelder test is the public interest. In contending that the public interest weighs against the issuance of a must-carry injunction, Microsoft relies upon the fact that the Department of Justice rejected such a remedy. The Department stated, in its response in New York v. Microsoft, that there were "at least two reasons" for its decision: "(1) it is not the proper role of the government to bless one competitor over others, or one potential middleware platform over others, nor is the government in the best position to do so; and (2) mandatory distribution of a particular product likely would lead to a decrease in innovation and improvement in that product because its developer will have no incentive to make it better." (Rewinski Decl. Ex. 14 (Response of the United States to Public Comments in the Revised Proposed Final Judgment ¶ 431).)
These concerns are weighty, and I do not question that they properly led the Department of Justice to reject a must-carry remedy in the government case. However, this is a private antitrust action, and the executive branch of government is not being asked "to bless one competitor over others" or "one potential middleware platform over others." Rather, a court is being asked to exercise its traditional equitable powers to prevent an antitrust violator from being advantaged by its misconduct and to restore the market to approximately what it would have been but for the commission of the unlawful acts: a market in which compatible implementations of the Java platform would have been ubiquitous on PCs when the distribution of .NET commenced.
I also find no basis for inferring from the record that granting the must-carry injunction will "lead to a decrease in innovation and improvement" in Sun's implementation of the Java platform. The evidence is overwhelming that within the coming years there will be intense competition between the Java platform and the .NET framework for dominance in the market of general purpose, Internet-enabled distributed computing platforms. To win that competition, indeed to survive, Sun will have to be innovative and improve its product to meet or exceed every innovation and improvement made by Microsoft.
That said, the interests of third parties must also be weighed in considering the public interest. The fact that Sun is seeking a must-carry injunction in this case has been well-publicized and presumably is well-known to its competitors. None of them have come forward to lodge any objections to it. Their silence speaks volumes. As part of the Java community, they apparently share Sun's interest in preventing Microsoft from benefitting from its illegal conduct. They also apparently expect to compete vigorously with Sun, once the competition between .NET *663 and Java begins in earnest, for the mindshare of software developers and the business of original equipment manufacturers and large network customers.[23] In any case, if, as events unfold, it should become apparent that the injunction being entered against Microsoft is having an adverse impact upon the rights or interests of any third party, that party is free to intervene in these proceedings and seek a dissolution of the injunction.
In the final analysis, the public interest in this case rests in assuring that free enterprise be genuinely free, untainted by the effects of antitrust violations. Competition is not only about winning the prize; its deeper value lies in giving all those who choose to compete an opportunity to demonstrate their worth. In the economic realm, consumers, as well as the competitors themselves, ultimately benefit from the contest. If .NET proves itself to be a better product than Java, it should and will predominate in the market for general purpose, Internet-enabled distributed computing platforms. But if that occurs, it should be because of .NET's superior qualities, not because Microsoft leveraged its PC monopoly to create market conditions in which it is unfairly advantaged.
V.
Sun's Copyright Infringement Claim
I will conclude by briefly addressing Sun's request for a preliminary injunction on its copyright infringement claim.
Section 6(c) of the January 23, 2001 agreement settling the California litigation grants Microsoft a limited license "to incorporate ... [the MSJVM] ... in successor versions" of various Microsoft products listed on an exhibit to the agreement. Windows and Internet Explorer are two of the listed products. Microsoft asserts that under the agreement it is entitled: (1) to delegate to OEMs the choice to install MSJVM in Windows and Internet Explorer, (2) to distribute MSJVM as part of a compilation of bug fixes for Windows XP known as Windows XP Service Pack 1, and (3) to enable purchasers of licenses to Windows and Internet Explorer to download MSJVM from the Internet for use with those products.[24]
Microsoft's first two contentions can be resolved with relative ease. The settlement agreement authorizes only Microsoft to incorporate MSJVM in one of its products and does not authorize Microsoft to delegate to a third party, such as an OEM, the power to make that decision. Likewise, the agreement authorizes the incorporation of MSJVM only in a "successor product." A "service pack" does not fall within that category.
The third contention raises a more difficult issue, one that is almost theological in nature. When does "incorporation," the term used in the settlement agreement, occur: when MSJVM is designed into the system or when a consumer downloads it to make the installation complete? Although casuists could debate this question *664 forever, common sense (with which an agreement must be construed) would suggest that the downloading is a necessary step in the incorporation. That construction blends comfortably with the background against which the agreement was negotiated. Sun was extremely concerned about the fragmentation of the Java platform caused by Microsoft's unlicensed actions, and the granting of permission to consumers to make Internet downloads would have increased that fragmentation.
For these reasons, I find that Microsoft does not have the right under the settlement agreement to take any of the actions about which Sun complains. Further, because the agreement expressly provides that the restrictions imposed upon Microsoft are limitations of its license, Sun is entitled to the presumption of irreparable harm and the protection against that harm which a preliminary injunction affords. See Sun Microsystems, 188 F.3d at 1122.
I will enter a preliminary injunction after conferring with counsel about its form.
NOTES
[1] In 1998, the United States, 19 States, and the District of Columbia filed suit against Microsoft in the United States District Court for the District of Columbia, alleging violations of federal and state antitrust laws. After a 78-day trial, Judge Jackson issued 412 detailed findings of fact and conclusions of law regarding the alleged antitrust violations of Microsoft. United States v. Microsoft Corp., 84 F.Supp.2d 9 (D.D.C.1999) ("Findings of Fact"); United States v. Microsoft Corp., 87 F.Supp.2d 30 (D.D.C.2000) ("Conclusions of Law"). In his conclusions of law, Judge Jackson held Microsoft liable for violations of § 1 and § 2 of the Sherman Act and the corresponding state statutes. On June 7, 2000, Judge Jackson issued a Final Judgment, imposing a remedy breaking up Microsoft into separate operating system and applications businesses. United States v. Microsoft Corp., 97 F.Supp.2d 59 (D.D.C.2000).
On June 28, 2001, the D.C. Circuit, sitting en banc, unanimously affirmed in part, reversed in part, and remanded in part the district court's final judgment. United States v. Microsoft Corp., 253 F.3d 34 (D.C.Cir. 2001). The D.C. Circuit reversed many of Judge Jackson's liability holdings; however, the court upheld the finding that Microsoft had monopoly power in the market for Intelcompatible PC operating systems and the holding that Microsoft violated § 2 of the Sherman Act by illegally maintaining a monopoly in that market through a series of anticompetitive acts. The court also reversed the remedy portion of Judge Jackson's final judgment and remanded to the district court for determination of a proper remedy.
Following remand, the United States and nine States agreed to a settlement of their claims against Microsoft and proposed a Revised Proposed Final Judgment ("RPFJ") to the district court. Nine other States and the District of Columbia opposed the settlement and sought more extensive remedies, including one similar to the relief sought in this motion. On November 1, 2002, Judge Kollar-Kotelly of the district court issued several rulings. Judge Kollar-Kotelly conditionally approved the RPFJ. United States v. Microsoft Corp., 231 F.Supp.2d 144 (D.D.C.2002). Additionally, Judge Kollar-Kotelly denied the requests of the so-called "dissenting" States for more extensive remedies than those sought in the RPFJ. New York v. Microsoft Corp., 224 F.Supp.2d 76 (D.D.C.2002).
A series of five published opinions was issued in the California litigation. These are briefly summarized in section I.B. of this opinion.
[2] Specifically, the Ninth Circuit held that: (1) in connection with Sun's copyright infringement claim, the district court had found a presumption of irreparable harm without deciding whether Microsoft's distribution of incompatible Java products constituted a violation of a limitation on the scope of the license (in which case the presumption was appropriate) or the breach of an independent covenant (in which case it was not), see Sun Microsystems, 188 F.3d at 1122-23; and (2) in connection with Sun's unfair competition claim, the district court had improperly placed the burden on Microsoft to prove that its misconduct would not recur because under California law the burden is on the party seeking the injunction to prove the probability of recurrence. Id. at 1123.
[3] On October 12, 2000, Judge Whyte issued what he called a "Tentative Order" in which he denied cross-motions for partial summary judgment. (See 12/12/02 Microsoft Supp. Mem., Ex. C). Although he tentatively ruled in this order that jury questions were presented on certain contract interpretation issues, he did not modify the rulings he had previously made.
[4] Articles in the trade press also recognize that Java and .NET will be competing head-to-head. See, e.g., D. Chappell, Understanding .NET. A Tutorial and Analysis 120 (Addison-Wesley ed., 2002) ("The battle lines are clear: It's .NET versus the Java World.") (quoted in Carlton Reply Decl. at 6).
[5] It is likely that the development of interoperability standards will allow cross-platform communication of data and other information. (12/4/02 Tr. at 150-53, 164 (Layman).) However, because the two platforms support only their own executable code, it is not (at least presently) contemplated that there will be cross-platform execution of applications programs. (12/4/02 Tr. at 172-73 (Layman).) There is also evidence that while promoting what it calls "interoperability," Microsoft really intends to provide an alternative to what developers and users see as the "value proposition of Java, based around portability." (12/4/02 Tr. at 168 (Layman); Pl.'s Ex. 23 [Email from Fitzgerald to Layman et al. at MSSunII 10804]; Lin. Decl. Ex. 2 [8/17/01 Developer Division Planning Memo at MSSun II XXXXXXXXXXXX ("Wherever Internet standards or protocols exist, we will provide enhanced `better together' features and performance when Microsoft components are being used at both ends of the protocol. `Better together' enables us to add value by leveraging the breadth of Microsoft's product line.")]; Lin Decl. Ex. 65 [9/17/01 Email from Gates to Fitzgerald et al. (discussing Microsoft executives' plan to make web service interoperability proposals "technically unpalatable to Sun")].)
[6] The relevant portion of the proposed injunction reads as follows:
Beginning 90 days after entry of this Order and until final adjudication of this matter, Microsoft and its officers, directors, employees, agents, representatives, publicists, subsidiaries, distributors, dealers and all others in active concert or participation with them, and all other persons and entities having actual knowledge of the Order shall be enjoined from:
1. distributing Microsoft's Windows PC Operating System or Web Browser unless
a. Microsoft distributes the most current, unmodified binary implementation of the Java Runtime Environment for Windows (currently known as the Java Plug-in for Windows XP) provided by Sun to Microsoft, and ensures it is installed and enabled as the default Java Runtime Environment for any and all configurations of such products;
b. Microsoft notifies customers of the availability of Sun's implementation via any and all Microsoft update services for the Windows PC Operating System or Web Browser on the commercial release date for such products;
c. Microsoft publicly announces the commercial release of its Windows PC Operating System or Web Browser (including any upgrades or service packs) at least 120 days in advance of such release;
d. Microsoft refrains from disabling, uninstalling, substituting, or diminishing any functionality of the most current, unmodified binary implementation of the Java Runtime for Windows, either automatically or by directly prompting the user to perform such acts;
subject to the following conditions:
i. Sun's implementation of the Java Runtime Environment for Windows passes the relevant Java compatibility tests available from the Java Community Process;
ii. Sun makes its implementation available to Microsoft on a royalty-free basis;
iii. Sun provides Microsoft with the most current, unmodified binary implementation of the Java Runtime Environment for Windows at least 90 days before the commercial release of the Windows PC Operating System or Web Browser (including any upgrade or service packs)....
During the course of the preliminary injunction hearing, counsel for Sun explained the "install and enable by default" language of section 1(a) to mean: "It [product shipped by Microsoft] would come to the OEM, set up to be installed by default. The OEM could elect not to install it. In Microsoft's distribution channels ... [direct rather than through third parties], third parties are unrestrained by ... [the proposed] order and they are free to do what they wish." (12/4/02 Tr. at 38(Day).)
[7] A secondary, but significant, reason that the extent of a platform's distribution on PCs is important in the competition for the mindshare of software developers is that developers are accustomed to writing their programs on PCs. (12/3/02 Tr. at 370 (Ross); Id. at 266-67 (Green) ("So the volume of developers in the world today write desktop applications and work at a desktop. They don't program servers or they don't program smart cards and so this is the big bubble in the developer population is for desktop computers and desktop computing platforms.").)
[8] Recognizing that my impressions of the witnesses who appeared at the preliminary injunction hearing are based only on a few hours of testimony, I will nevertheless state these impressions because they may bring life to an otherwise cold record.
Dr. Carlton, Sun's expert economist, impressed me as a person of probity, whose judgments are well considered and thoughtfully expressed. As reflected by his acknowledgment that he cannot say when, how, or whether the market for general purpose, Internet-enabled distributed computing platforms will necessarily tip in favor of .NET, he is not willing to stretch his opinions to serve the interests of his client. His counterpart, Dr. Murphy Microsoft's expert economist is blessed with an expansive and energetic intelligence, but at times his responses to questions seemed overly quick and result-oriented. While Judge Kollar-Kotelly accepted Dr. Murphy's characterization of a must-carry remedy as "market engineering," New York, 224 F.Supp.2d at 261-62, she found some of his conclusions unsupported by the record. Id. at 151.
Judge Kollar-Kotelly likewise was unpersuaded by the testimony of Richard Green, a Sun executive who also was a witness at the preliminary injunction hearing, finding that his testimony was "somewhat problematic in that it presented a number of complaints which are irrelevant to this proceeding." Id. at 260. Green's testimony in the hearing before me did not suffer from the same defect, being entirely relevant to Sun's private antitrust claims. Green is subject to the criticism that in court proceedings (both before Judge Kollar-Kotelly and here) he has testified about the imminent harm facing Sun because of market tipping while simultaneously emphasizing to software developers the wide acceptance of the Java platform and its glorious future. However, I find from evidence independent of Green's testimony that there is a serious risk that the market may tip in .NET's favor, and I do not fault Green for not increasing that risk by painting a gloom and doom scenario to software developers.
The testimony of Chris Jones and Andrew Layman gives me some pause. Both of them seem to see the world according to Microsoft, and internal memoranda they have written suggest they share what some might characterize as their employer's imperialist inclinations. See supra note 5 and infra note 11. Microsoft's fourth witness, Sanjay Parthasarathy, testified only about the negotiations leading to the January 23, 2001 settlement agreement, which I find can be interpreted without parol evidence.
Rick Ross, who appeared as Sun's final witness, is refreshingly independent and entirely credible. In addition to being an award-winning software developer, Ross is the founder and president of JavaLobby.org, "an [in]dependent group of men and women who share an interest in standards and in the advancement of tools and technology for the job of programming language and platform." (12/3/02 Tr. at 276.) Although an enthusiastic supporter of the Java platform, Ross owns no Sun stock and was not paid by Sun for the time he spent in preparing a declaration, being deposed, or testifying at the preliminary injunction hearing. (Id. at 335.) He succinctly stated the reasons he came forward as a witness:
I'm here because I believe that the remedy that Sun is seeking is crucially important to the tens of thousands of members of the organization I represent, to the millions of Java developers and to countless Internet and technology consumers that would like to see this battle between .Net and Java won or los[t] on the merit of the technology, on the comparative merits of the technology rather than on a distribution disadvantage that has been at least in part earned by the bad acts of the adjudicated, monopolistic acts of Microsoft. It may be that in the end .Net will be more attractive and will be adopted by more developers. But so far, we've never had a chance to have a fair crack of having Java technology truly fulfill its potential.
(Id. at 335-37.)
[9] It is also possible, of course, that because Java is being given a fair opportunity to compete in an undistorted market by virtue of the granting of the must-carry remedy, Java will become the dominant platform. As Rick Ross testified in explaining why he cannot predict with certainty the outcome of the .NET/Java battle, "from the moment I heard [about Sun's motion requesting a must-carry injunction] ... I thought that it was a significant action on Sun's behalf and felt that it would potentially have an important bearing on the outcome of the matter." (12/3/02 Tr. at 359.)
[10] It is only an incidental matter, but during the course of its written and oral presentations, Microsoft has overestimated the extent of distribution of the Java runtime Sun could achieve by entering into agreements with OEMs. Microsoft cites an internal Sun report proposing a marketing strategy for Sun's Java runtime which recites that 70% of new PCs are distributed through seven OEMs. (Def.'s Ex. 18 at Sun2-27-000916 [Pataky Java Plugin Distribution Plan].) On the basis of that report, Microsoft has argued that by entering into distribution agreements with these seven OEMs, Sun could achieve distribution of its Java product to 70% of PCs. However, Chris Jones, one of Microsoft's witnesses, testified that OEMs account for only 70% to 80% of the distribution of Windows licenses. (12/4/02 Tr. at 231.) Therefore, even were it to succeed in obtaining distribution agreements from the major OEMs, Sun's penetration of the PC market would be substantially less than 70%. I also note that the record reveals that Sun has been unsuccessful in its efforts to enter into a distribution agreement with AOL, another channel of distribution suggested in the report relied upon by Microsoft. (12/3/02 Tr. at 272 (Green).)
[11] I view Jones' testimony with some skepticism because, in 1995, he urged a strategy of fragmenting Java. "We should consider support for Java as a platform. As a company, we have two options for embracing and extending Java: (1) we take control of it and add Windows specific classes, or (2) we `sandbox' it, slow it down, and restrict it to a particular domain, betting that we can bring our technology to bear quickly enough to minimize the impact." (Pl.'s Ex. 30 at MSS 0065387 [9/4/94 Email from Jones to Store et al.].)
[12] A similar issue was addressed and resolved in the agreement settling the California litigation. (Pl.'s Ex. 3; Def.'s Ex. 5, Settlement Agreement and Mutual Limited Release § 6(a).)
[13] There is also evidence that "Microsoft's Java development tools and MSJVM were the fastest and best-performing in the industry when it came to developing and running ... applications" on different implementations of the Java platform. (Miller Decl. ¶¶ 3, 12.) This evidence suggests that Microsoft would have become a valuable member of the Java Community Process if it had complied with the license agreement's compatibility requirements. However, MSJVM's high performance in running other Java implementations did not diminish its effect of fragmenting the Java platform because it was designed to run only with Microsoft products. It is that effect which is relevant here. And it is that effect which was deliberately intended by Microsoft.
[14] Also open to debate is whether the D.C. Circuit found that all of the steps taken by Microsoft to make its JVM incompatible, specifically its refusal to include RMI as a standard component of the class libraries, enhanced the performance of Java on Windows. In reaching the conclusion that "the JVM developed by Microsoft allows Java to run faster on Windows than does Sun's JVM," the D.C. Circuit relied on Judge Jackson's findings of fact 389 and 390. 253 F.3d at 74. Judge Jackson discussed Microsoft's failure to include RMI as a standard component in the class libraries in finding of fact 391, and he did not find (as he did in connection with the "calls to `native' code" modification) that its exclusion from the core class libraries increased the speed of Java on Windows at all.
Moreover, although RMI is a difficult concept for those who, like me, are technologically challenged, its exclusion from the core class libraries was an important act of fragmentation. Rick Ross testified that RMI is "a very useful piece of the Java core platform for creating distributed solutions and those are the kinds of solutions that are most important as Internet enterprise applications I would say." (12/3/02 Tr. at 297.) He went on to say, when asked whether developers cared about the fact that Microsoft did not include RMI in the core distribution, that "[i]t's a very, very significant thing to them, any pieces of the core platform because developers have the expectation that [if] the word, Java, is there, then the core platform is there in its entirety in a compatible form. Compatibility is key. I just can't overstate the importance of compatibility at this level." (Id. at 298-99.)
[15] The must-carry remedy is attractive in another respect as well. By obtaining a must-carry injunction now, Sun is foreclosing (or, at least, substantially restricting) the monetary relief it would be able to seek for any future damages it might suffer if its Java runtime loses the competition with .NET. The policies of the antitrust laws are better served by the issuance of an injunction that assures fair and open competition than by an after-the-fact trial in which an aggrieved competitor tries to prove what it says it would have achieved if an opportunity to compete had been afforded. Likewise, from an economic point of view, it makes far more sense to invest resources in actual competition which will enhance the performance of the competing products and bestow benefits upon consumers than in compensating economic experts and lawyers for constructing and arguing about hypothetical scenarios.
[16] Even though one of the purposes of Microsoft's anticompetitive conduct was to neutralize Java until Microsoft could develop a competitive product, Sun has not requested (and I would not grant) an injunction against Microsoft's distribution of .NET until compatible Java has been ubiquitously distributed on PCs. Such an injunction clearly would constitute market engineering and would be inappropriate.
[17] Microsoft stresses that the evidentiary hearing before me lasted only three days. However, prior to the hearing the parties submitted a total of five memoranda and countless declarations and exhibits. Each of them has also submitted a post-hearing supplemental memorandum, accompanied by even more exhibits. Moreover, the three day hearing was highly productive because the evidence and issues have now been distilled to their essence. I am indebted to Judge Jackson, the D.C. Circuit, Judge Kollar-Kotelly, Judge Whyte, and the Ninth Circuit for their thorough and analytically keen opinions. I have built only a small addition to their edifice, and I view my own rulings as merely complementary to theirs.
[18] Microsoft also seeks to minimize the impact of its anticompetitive conduct by suggesting that even if it had not fragmented the Java platform, Java would not have been broadly distributed on PCs because under § 8.2 of the TLDA it had the right but not the obligation to distribute Sun's Java. Sun disagrees with Microsoft on this point, arguing that under § 2.6(a)(vi) of the TLDA Microsoft was obligated to include an upgraded, compatible implementation with any successor to a product in which Microsoft had once decided to install Java. In my view Microsoft has the better of the argument concerning this contract interpretation issue. Section 2.6(a)(vi) provides that "any new version of a Product that Licensee makes commercially available to the public after the most recent Compatibility Date shall only include the corresponding Compatible Implementation ...." (Pl.'s Ex. 56 [3/11/96 TLDA].) Sun contends the word "shall" meant that inclusion of an upgraded, compatible implementation was mandatory, not optional. Sun further argues that the word "only" meant that such products could not include any implementation of the Java platform other than an upgraded, "Compatible Implementation." Sun's argument would be stronger (although not necessarily victorious) if the word "only" appeared after, rather than before, the word "includes." In that event the use of "shall" rather than "may" might be deemed significant. However, even then the clear language of § 8.2 relieving Microsoft of any obligation to distribute Sun's Java would present a substantial obstacle to Sun's interpretation. Likewise, another provision of § 8.2 authorizes Microsoft to distribute technology similar to Sun's technology "in lieu of" Sun's technology.
But interesting (or perhaps not so interesting) as this issue of contract interpretation may be, it is ultimately immaterial. That is so because regardless of whether Microsoft was contractually obligated to do so, market conditions required it to distribute a Java implementation. In September 1995, Chris Jones of Microsoft wrote:
Our browser must support Java. Java is already here. Netscape will add Java support in their Win95 version before the end of the year, and sites (like StarWave) will begin positioning Java content shortly thereafter. I believe there will be a proliferation of these objects regardless of what kind of competitor we introduce, and therefore Java will become a de facto standard we have to support. We must move quickly here to decide exactly how to do this, in terms of technology, distribution and licensing.
(Pl.'s Ex. 30 at MSS 0065387 [9/4/95 Email from Jones to Stone et al.].) Likewise, Ben Slivka, the head of Microsoft's Java team, wrote:
What if we ignore Java?
♦ Someone else will execute on the above strategy (Sun)
♦ JavaOS comes along (on low-end devices?), runs these Java apps (which are easier/faster to write!)
♦ Windows becomes irrelevant in bigger and bigger sections of the market
♦ Microsoft has no choice, we must seize control [of] the Java platform!
(Lin Decl. Ex. 10 at MSS 0168302 [1/24/97 Microsoft document entitled "Microsoft API Strategy: Java is our Destiny"]; see also Miller Decl. ¶ 6 ("[W]e had to be sure that our Windows customers had the Java support they wanted. If the Java language became popular for writing Web applets or applications generally, our customers would want the ability to view these applets and run those programs.").)
[19] In his January 24, 2000 opinion in which (after remand from the Ninth Circuit) he reinstated his injunction in part, Judge Whyte found that it was reasonably likely that Sun would prove that Microsoft's failure to support JNI constituted unfair competition under California law. Sun Microsystems, 87 F.Supp.2d at 1000-01. Although Judge Whyte further found that Microsoft's distribution of products containing its language extensions did not itself constitute unfair competition, in Judge Whyte's view Microsoft made misrepresentations in connection with that distribution which did require injunctive relief. Id. at 1001-04.
[20] However it might now seek to downplay the impact of its development of noncompatible Java, Microsoft is fully aware of the effect of a platform's fragmentation upon software developers' expectations. In his direct testimony in the Department of Justice action (presented by affidavit), Bill Gates stated: "In short, if the Windows platform were to fragment, the primary value it provides the ability to provide compatibility across a wide range of software and hardware would be lost. Windows would no longer offer an efficient platform to ISVs because Windows would not consist of any single platform on which ISVs could rely in developing applications." (Pl.'s Ex. 1 ¶ 69 [Direct Testimony of Bill Gates in New York, et al. v. Microsoft].)
[21] Although Microsoft suggests that Sun was somehow responsible for the poisoned relationship between the parties, that suggestion simply cannot stand in light of the evidence of Microsoft's extensive anticompetitive conduct reflected in all of the opinions issued in both the Department of Justice action and the California litigation. Moreover, the record is clear that Sun's business plan is based upon cooperation with other companies and organizations. It has broadly licensed the source code for Java and relinquished control over platform modifications to the Java Community Process. Thus, there is no reason to infer that if Microsoft had not embarked upon its strategy to develop incompatible Java, the Sun/Microsoft relationship would have been poisoned at all.
[22] Microsoft also places blame upon Sun for the incompatibility of the Java platform because the platform allegedly lacks "backward" and "forward" compatibility, i.e., new programs allegedly do not run on older versions of Java and old programs allegedly do not run on newer versions of Java. (Miller Decl. ¶¶ 34-37; Murphy Decl. ¶ 37, n. 13; 12/4/02 Tr. at 303-05 (Murphy); 12/5/02 Tr. at 3-5, 143-44 (Murphy).) If .NET develops backward and forward capability, Microsoft's assertion may be part of an effective advertising campaign. However, any backward and forward incompatibility does not lie at the heart of the issues in this case. As Microsoft points out in arguing that there allegedly will be no feedback effects in the market for general purpose, Internet-enabled distributed computing platforms, "consumers ... acquire and use multiple runtime environments at very low or no cost." (Microsoft's Supp. Mem. at 12 (citing Murphy Decl. ¶¶ 44, 111, 137-139.)) If up-to-date ubiquitous Java were now distributed on PCs, the fact that there might be some backward and forward incompatibility would be immaterial in the competition for developer mindshare if that were the only incompatibility. Developers and users alike would be accustomed to Java and would run different programs on different iterations of the platform.
[23] Sun points out that although the must-carry injunction requires Microsoft to set up Sun's Java runtime as a default, nothing in the order prevents OEMs, enterprise customers (businesses and other organizations with their own networks), or anyone else from deleting it. Sun anticipates that it will have to compensate OEMs for carrying its runtime, and it obviously will have to compete with other Java manufacturers for the business of enterprise customers.
[24] Without admitting that the settlement agreement requires it to do so, Microsoft has agreed to cease permitting the Internet download of MSJVM by Windows XP and IE 6.0 purchasers. It appears from the record, however, that Microsoft has not taken all the steps necessary to assure that such downloading cannot occur.