Oracle v.

1 What Google Wanted Sun To Do

• “[T]hrow away their standard license, because it isn’t what we’re asking for, and they needed to develop a new license that was specifically what we’re asking for.”

• “So what we’re asking them to do is basically change their business model.”

Andy Rubin Co-Founder of Android • “And we would come in and we would basically say, hey, why April 24, 2012 Trial Tr. 1606:8-17; don’t you open source your technology? Why don’t you make 1618:8-15; 1596:15-20 it available for free to the world as part of our platform? And, in return, we’ll pay you a little bit of money to do that, so you guys can go and create some derivative of your business model.”

1 Java Materials Are Copyrighted

TX 475, 450, 451, 452, 453, 454, 455, 460, 461, 462, 463, 464, 476, 509, 513, 518, 520, 521, 523, 524, 526, 598, 599, 601, 602, 603, 659 2

What Google Copied

JAVA ANDROID

Google copied Java structure, Question 1.A sequence, and organization into Android core library

Google copied Java API Question 2 documentation into Android API documentation

Google copied from Java code Question 3 into Android code

3 4 The Android APIs Have The Same Structure, Sequence, and Arrangement As The Java APIs

“For the 37 accused Q. And the Structure, THE COURT: And API packages, Sequence and then the names and Android and Java 2 Organization of the declarations SE version 5.0 have the API elements you're going to say substantially the is virtually are the same. same selection, identical across arrangement, and those 37 packages, THE WITNESS: That's structure of API correct? right. elements.” A. That's right. Google’s Admission Owen Astrachan, Ph.D. Dan Bornstein, Former Google April 23, 2012 Trial Tr. 1337:21-24 Google’s Technical Expert Android Tech Lead April 27, 2012 Trial Tr. 2214:3-9 April 25, 2012 Trial Tr. 1792:4-6

5 Google’s Expert Admits That Google Copied Java Structure, Sequence, And Organization Into Android Core Library

Q. And with respect to the packages and the structure of the packages, are there any similarities between the two platforms? A. No. The Package names, Class names, and Method names for the 37 packages are the same; otherwise, there are no – they are different. Owen Astrachan, Ph.D. Google Technical Expert Q. And do you have an opinion as to whether there are any April 27, 2012 Trial Tr. 2184:22-2185:9 reasons why those things are the same, the structure, the organization, and the names? A. As I've mentioned before, that structure of the names of the classes, packages, and methods needs to be the same so that the code will work on both platforms, be compatible, inter-operate, so that I can call the methods. Those need to be the same.

6 Android Core Library Copies Java Structure, Sequence, And Organization API CODE

package java.security package java.security ProtectionDomain(CodeSource codesource, PermissionCollection ClassLoader getClassLoader () permissions) public Returns class ProtectionDomainthe ClassLoader { of this public class ProtectionDomain { Creates a new ProtectionDomain domain with the given CodeSource and publicPermissions. ProtectionDomain (CodeSource codesource, public ProtectionDomain(CodeSource cs, PermissionCollection permissions) { PermissionCollection permissions) {

public final ClassLoader getClassLoader() { public final ClassLoader getClassLoader() {

TX 623 TX 46.20 7 Google’s Copying Was Extensive

Google copied 37 packages with approximately:

CLASS 400 classes

METHOD 4,500 methods

DECLARATION 7,000 declarations

11,000 printed pages of specifications

TX 46

8 Google’s Example Downplays Its Copying

TX 3452 9 Copied Java APIs And Class Libraries

* * * * *

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * TX 1028 (poster only) 10 Java Structure, Sequence, And Organization Are Complex

ByteBuffer Methods: static ByteBuffer allocate(int capacity) static ByteBuffer allocateDirect(int capacity) byte[] array() int arrayOffset() abstract CharBuffer asCharBuffer() abstract DoubleBuffer asDoubleBuffer() Methods inheritedabstract from FloatBuffer asFloatBuffer() abstract IntBuffer asIntBuffer() class java.nio.Buffer:abstract LongBuffer asLongBuffer() capacity abstract ByteBuffer asReadOnlyBuffer() abstract ShortBuffer asShortBuffer() clear abstract ByteBuffer compact() int compareTo(ByteBuffer that) flip abstract ByteBuffer duplicate() boolean equals(Object ob) hasRemaining abstract byte get() isReadOnly ByteBuffer get(byte[] dst) ByteBuffer get(byte[] dst, int offset, int length) limit abstract byte get(int index) abstract char getChar() limit abstract char getChar(int index) abstract double getDouble() mark abstract double getDouble(int index) position abstract float getFloat() abstract float getFloat(int index) position abstract int getInt() abstract int getInt(int index) remaining abstract long getLong() abstract long getLong(int index) reset abstract short getShort() rewind abstract short getShort(int index) boolean hasArray() int hashCode() abstract boolean isDirect() ByteOrder order() ByteBuffer order(ByteOrder bo) abstract ByteBuffer put(byte b)

11 Google’s Copying Is Substantial

Q. Now, you said that the -- I think you were talking about 7,000 lines of code as just a small piece of Android. Do you recall that testimony? A. Yes, I do.

Q. And this is the 7,000 lines of code that word-for-word, symbol-for-symbol, is identical in the Android core libraries Owen Astrachan, Ph.D. as compared with the Java core libraries, correct? Google Technical Expert A. Yes. Those are the Method signatures that are the same in April 27, 2012 both platforms. Trial Tr. 2212:3-19

Q. As to the 37 packages? A. That's correct.

Q. What would happen if you ripped those lines out of Android? A. Well, for the purposes of the Android core libraries, those are part of it, so they need to be there for Android to work as it's been designed.

12 Google’s Expert Admits Google Could Have Chosen Not To Infringe

Q. Couldn't the Android developers have written their own Application Programming Interfaces for the overwhelming majority of the 37 packages that are in dispute? A. If you're asking is it possible to write a different API, then it would be possible to write a different API. Q. And couldn't you write a different API that would provide the same basic functionality in terms of what services it provided? Owen Astrachan, Ph.D. A. Yeah, I think it would be possible to provide an API that Google Technical Expert performed similar functionality; not maybe exactly the same but April 27, 2012 Trial Tr. 2212:25-2213:10, similar. 2213:17-19 Q. Well, they wrote most of their own core libraries, according to you; right, sir? A. Yes, that's correct.

13 Fair Use

1

14 Google’s Copying Is Not Fair Use

Instruction 28: “For example, fair use may include use for criticism, comment, news reporting, teaching (including multiple copies for classroom use), scholarship, or research.”

Fair Use Google’s Use Criticism NO Comment NO News Reporting NO Teaching NO Scholarship NO Research NO

15 Fair Use Factor 1

16 Google’s Launched Android To Make Money

“The vast majority of Google's revenue at the time and today comes from search revenue. And so the primary reason to have something like Android is that people will do more searches, and then we'll get more money Eric Schmidt Google Chairman and as a result. And that's how we, essentially, pay Former CEO for the strategy of Android.” April 24, 2012 Trial Tr. 1458:12-16

17 Android Is Hugely Profitable For Google

Q. And, in fact, I think you -- you said that the revenue that you received as a result of the additional search revenue generated by Android paid for Android and, I think you said, Eric Schmidt and a whole bunch more. Do you recall that? Google Chairman and Former CEO A. Yes. April 24, 2012 Trial Tr. 1456:15-19

Q. Would you agree with the statement that Android is hugely profitable? A. Yes.

Aditya Agarwal Google’s Representative on Android Revenues April 27, 2012 Trial Tr. 2225:18-2226:24 (by videotape) 18 Fair Use Factor 1

19 Google Did Not Transform The 37 Java API Packages

Google copied the 37 APIs from Java core libraries into Android core libraries

37 APIs 37 APIs

20 Java Had Been Used For

Google’s counsel: “No one before Google had been able to use Java to build a successful smart phone. Nobody.” (Tr. 247:7-9)

Danger’s Sidekick BlackBerry Nokia Series 60

Google employees admitted: built a Java based . Rubin Bornstein Swetland

21 Fair Use Factor 2

22 API Design Requires Significant Expertise And Time

API design is done by Oracle’s most “experienced and talented software engineers.”

Larry Ellison, Oracle CEO, April 17, 2012 Trial Tr. 291:11-16

It took Dr. Reinhold and a team of engineers two years to develop just one package – java.nio.

Mark Reinhold, Oracle Chief Java Architect, April 18, 2012 Trial Tr. 623:17-624:1

23 Designing APIs Requires Creativity And Skill

Designing APIs “is a very creative process” and “[c]ompared to other programming tasks, I would say it is the most creative”

Edward Screven, Oracle Chief Corporate Architect, April 18, 2012 Trial Tr. 513:14-18

“In anything except the most trivial API design, there are so many choices to be made I wouldn't know how to start counting them.”

Mark Reinhold, Ph.D., Oracle Chief Architect Of The Java Platform Group, April 18, 2012 Trial Tr. 627:21-628:1

“Just as it’s hard to find people that are really good at anything that’s hard, whether it be, you know, being an artist, a football player, a concert violinist. Those things are hard. This is something that’s hard in the same way.”

Owen Astrachan, Ph.D., Google’s Copyright Expert, Sept. 9, 2011, Dep. 128:9-13 played April 27, 2012 Trial Tr. 2209:9-22

24 Designing APIs Requires Creativity And Skill

“API design is a noble and rewarding craft” “API design is tough” TX 624 at p. 47, Javapolis Presentation, Antwerp Belgium, 2005

Q. There are aesthetic matters in API design; correct, sir? Josh Bloch A. Yes, there are. Google’s Chief Java Architect Q. And it's -- it's not being prissy to think about aesthetic matters. Former Sun The aesthetics of an API design are part of this noble and Distinguished Engineer rewarding craft. Correct? A. Yes. Generally, an API that displays good aesthetics will be easy to use. It's like a car's dashboard. Making it pretty isn't just about making it nice to look at. The car will be actually easier to drive if you can see the speedometer. Josh Bloch, Google Chief Java Architect, April 19, 2012, Trial Tr. 752:5-14 Q. But that person who came up to you, had obviously left a vivid impression in your mind, was saying to you: API design is a noble and rewarding craft. You changed my life with the quality of your craftmanship. Correct? A. Yes. Josh Bloch, Google Chief Java Architect, April 19, 2012 Trial Tr. 751:5-9 25 Fair Use Factor 3

26 Google and Oracle’s Experts Agree That These 37 APIs Are Important

Q. What is the significance of the decision in Android to copy the 37 API packages into the Android platform? A. Oh, so, that's huge. These 37 packages are highly useful. They're important to developers and programmers. And to have the same API as the Oracle Java library has a very high significance to any potential John Mitchell, Ph.D. Oracle Technical Expert developers. April 23, 2012 Trial Tr. 1331:10-15

Q. What would happen if you ripped those lines out of Android? A. Well, for the purposes of the Android core libraries, those are part of it, so they need to be there for Android to work as it's been designed. Owen Astrachan, Ph.D. Google Technical Expert April 27, 2012 Trial Tr. 2212:14-19

27 Google Specifically Chose These 37 APIs

Q. Did your determination of what packages would be implemented in the core library have anything to do with what you thought were expectations of Java language programmers? A. Yes, absolutely.

Dan Bornstein “as a Java programmer, as, say, a typical Java programmer, there's Former Google Android Tech Lead certain of these APIs which you just sort of, like, fundamentally April 25, 2012 think of as kind of part of -- part of the system that you can just use Trial Tr. 1782:6-9; without really having to think too much about it” 1782:10-1783:5 “And my job was sort of to kind of sift through all of that and come up with a nice and consistent set of APIs that we have would then implement and provide to developers.”

Q. Would you agree that the Java APIs that Android supports are good stuff from Java? THE WITNESS: Yes.

Bob Lee Former Google Core Library Lead for Android TX 1067; April 25, 2012 Trial Tr. 981:22-982:21 28 Fair Use Factor 4

29 Google is Harming Oracle’s Java Licensing Business

30 Java Compatibility Crucial To Java’s Write Once, Run Anywhere

JVM JVM JVM Application Developer

Java’s Consistency Is Critical

31 Android Fragmented Java Anyway

From: Rich Miner To: Dave Burke Sent: November 6, 2007

“Q48. Does Android support existing Java apps? A. No. Q49. Is Android Java compatible? A. No.”

TX 383 at p. 8 32 Android Fragmented Java Application Developer Community

Android Application Developers

JVM JVM JVM Android Java Application Developers

33 Google Understood That It Should Avoid Fragmenting Java

From: Andy Rubin To: Sent: October 11, 2005

“My proposal is that we take a license that specifically grants the right for us to Open Source our product. We’ll pay Sun for the license and the TCK. Before we release our product to the open source community we'll make sure our JVM passes all TCK certification tests so that we don't create fragmentation.”

TX 7 at p. 1 34 Google Knew Java Fragmentation Would Get Them Into Trouble With Sun

From: Tim Lindholm To: Andy Rubin Sent: October 26, 2005

“If we don’t show strong efforts toward avoiding fragmentation we are also going to have much more trouble with Sun.”

TX 125 at p. 1 35 Google Knew Its Failure To Avoid Fragmentation Would Get Them Into Trouble With Sun

From: Andy Rubin To: Barry Schnitt Sent: November 14, 2007

Sun’s Comment to CNet: “We’re reaching out to Google and assuming they’ll be reaching out to us to ensure these platforms and APIs will be compatible” Rubin: “This is a touchy subject.”

TX 180 at pp. 1-2 36 Android Blocks Oracle’s Java Opportunities

Q. And what were the reasons for your decision not to go forward with a Java-based smart phone?

A. Well, you know, when you enter a market, especially a competitive market like smart phone platforms, it's important to be first with a compelling advantage.

Edward Screven Our compelling advantage would have been Java. But Oracle Chief Corporate Android had already been released. Android was already out on Architect April 18, 2012 Trial Tr. millions of devices. So Google's Android-Java clone had 533:7-15 basically foreclosed the market from us.

37 It’s Hard To Compete With Free

Q. But you do know that, upon Oracle's acquisition, Oracle sought to assert rights in APIs; is that right? A. We talked about our intellectual property to the different parts of Java, yes.

Q. And that happened after Oracle thought about and decided

Safra Catz not to pursue a Java Phone, right? Oracle President A. It's after we looked at a Java Phone idea. April 27, 2012 Trial Tr. 2322:2-12 Q. Right. And Oracle never pursued that, correct? A. No, we did not.

Q. Did not pursue it; is that right? A. It's pretty hard to compete with free.

38 Google’s Copying Is Not Fair Use

Fair Use Factor Fact Fair Use?

1. Purpose and Google used Java APIs to make money character of the use. from advertising on mobile phones. NO Java was already on mobile phones. Android is NOT transformative. 2. Nature of the Java APIs are complex, creative, even NO copyrighted work. aesthetic works.

3. The quantity and 37 Java API packages that Google quality of what Google copied in every detail are “highly NO copied. useful,” are “necessary,” and are expected by Java developers.

4. The effect on the Android: potential market for or Displaces licensed Java NO value of the Causes fragmentation copyrighted work. Blocks Java opportunities.

39 40 Google “Paraphrased” The Java Documentation

Q. So when writing the comments, the comment writers on the Android team were looking at the comments in the Java documentation, correct? A. Yes. Q. And what instructions were they given about how Bob Lee to avoid copyright infringement comment to Former Google Core comment? Library Lead for Android April 23, 2012 A. Uhm, I guess this would be equivalent to Trial Tr. 991:20-992:5 paraphrasing a book or an article, or something like that. So, obviously, you don't copy it word for word. Q. And you don't paraphrase either; correct, sir? A. Uhm, well, I believe they did paraphrase.

41 Google’s Copying Of Java API Documentation Results In Virtual Identity

TX 610.2 TX 767 42 Google’s Copying Of Java API Documentation Results In Virtual Identity

v This class wraps an InputStream and a A CipherInputStream is composed of an cipher so that read() methods return data that InputStream and a Cipher so that read() are read from the underlying methods return data that are read in from InputStream and processed by the cipher. the underlying InputStream but have been additionally processed by the Cipher. The cipher must be initialized for the The Cipher must be fully initialized requested operation before being used by a before being used by a CipherInputStream. CipherInputStream. For example, if a cipher initialized for decryption is used with For example, if the Cipher is initialized a CipherInputStream, the CipherInputStream for decryption, the CipherInputStream tries to read the data an decrypt them before will attempt to read in data and decrypt returning. them, before returning the decrypted data.

TX 610.2 TX 767 43 Google Copied The Java Documentation Across The Board

Q. So you would expect the same level of similarity that the jury has seen in these examples so far across the documentation for the 37 packages, sir? Bob Lee Former Google Core Library Lead for Android A. Generally, yes. April 23, 2012 Trial Tr. 1175:25-1176:3

44 Google Copied The Java Documentation Across The Board

API API Documentation Documentation

TX 610.2 TX 767 45 Google “Paraphrased” The Java Documentation

Q. What, if any, similarities would you expect to find in any two descriptions of the same method or class within the Java API libraries? A. So these, especially the specification parts, are a contract. These are specific rules. You know, I actually wasn't even a big fan of including these. I would have Bob Lee preferred that we just point people to Sun's site for this Former Google Core specific documentation because you shouldn't really be Library Lead for Android April 23, 2012 rewriting a contract. And in doing so they are going to be Trial Tr. 1191:3-17 substantially similar. You're talking about a very specific thing and very specific rules about technologies that have very specific terminology, so there's only so many ways that you can phrase things.

46 Fair Use

2

47 48 Google Literally Copied Java Code

TX 1072 49 Google Decompiled And Copied Java Code

TX 896.1 TX 1031 50 Google Copied Java Comments Into Android Code

TX 623.9 TX 1039

51 Google Literally Copied Java Code

CODE CODE

rangeCheck() from Oracle java.util.Arrays.java rangeCheck() from Android TimSort.java

private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) { private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) { if (fromIndex > toIndex) if (fromIndex > toIndex)

throw new IllegalArgumentException("fromIndex(" + fromIndex + throw new IllegalArgumentException("fromIndex(" + fromIndex + ") > toIndex(" + toIndex+")"); ") > toIndex(" + toIndex+")");

if (fromIndex < 0) if (fromIndex < 0) throw new ArrayIndexOutOfBoundsException(fromIndex); throw new ArrayIndexOutOfBoundsException(fromIndex);

if (toIndex > arrayLen) if (toIndex > arrayLen) throw new ArrayIndexOutOfBoundsException(toIndex); throw new ArrayIndexOutOfBoundsException(toIndex); } }

TX 794

52 rangeCheck Is Significant

Q. Did you conduct an analysis of the significance of rangeCheck to other code in the same class file? A. Yes. Q. What did you conclude? A. I found a number of other source code in other files John Mitchell, Ph.D., that called that function. And, also, I did an Oracle Technical Expert April 23, 2012 experiment with the phone source code instrumented, Trial Tr. 1329:9-21 and counted the number of times that rangeCheck was called in starting up the phone. And I found that it's called 2600 times just in powering on the device or starting the emulator. So 2600 seems like a pretty big number for the number of calls to this function.

53 Google Still Makes Copied Files Available

THE COURT: Isn’t it true that within recent months you could still go on the Google website and find these very files with the same code in there? True or not?

THE WITNESS: You can look at the history and see those Dan Bornstein files. Former Google Android Tech Lead April 25, 1012 THE COURT: So it’s there, available to the public. True? Tr. 1832:3-10 THE WITNESS: Fair enough.

54 Other Issues Raised By Google

1. Whether APIs are part of the language

2. Whether Google uses the Java brand

3. Whether Google’s development was “clean”

4. Whether Google was seeking a Sun partnership

55 The 37 Java APIs Are Separate From And Not Required By The Java Programming Language

Google’s counsel: “APIs are necessary to use the language.” (Tr. 244:1-2.)

Q. Was the choice to pick 37 packages to implement Android, was that a requirement of the Java programming language or a commercial objective of the Google developer, sir? A. I can only tell you that it was not a requirement Owen Astrachan, Ph.D. Google Technical Expert of the Java programming language. I can't tell you - April 27, 2012 Trial Tr. 2220:1-7 - I was not conversant with the Android developers -- as to why they chose it.

56 Sun’s Specification License Applies Regardless of Whether A Company Uses The Java Brand

Sun’s specification license:

• Excludes trademark

• Applies regardless of whether you call implementation “Java”

Only “somewhat” familiar with license. (Tr. 2013:22-2014:6.) “I'm not there to write our contracts.” (Tr. 2015:2-7.)

TX 610.1 57 Google Knew Java APIs Were Copyrighted And Licensed

From: Andy Rubin To: Greg Stein Sent: March 24, 2006

“Ha, wish them luck. Java.lang api’s are copyrighted. And Sun gets to say who they license the tck to, and forces you to take the ‘shared part’ which taints any clean room implementation.”

TX 18 at p. 1 58 Google’s Android Is Not A “Clean Room” Implementation

Copied Decompiled “Super Shady” “Conflicted” Code Code Contractors Engineers

Joshua Bloch TX 281

Core Android engineers came from Danger

Dan Bornstein Andy Rubin Brian Swetland

59 Google Knew It Needed A License If It Did Not Partner With Sun For Android

From: Andy Rubin To: Tim Lindholm Sent: February 20, 2005

“either (a) we’ll partner with Sun as contemplated in our recent discussions or (b) we’ll take a license.”

TX 12 at p. 1 60 61 Sun Posted Its Copyright Notice And License

TX 610.2

62 Sun Posted Its Copyright Notice And License

Q. You consulted the Java API specifications to make sure that the Android code for the corresponding core libraries would be consistent with those specifications, correct? A. Yes.

Bob Lee Q. The Java API specifications that you consulted were Former Google Core Library Lead for Android available on Sun's website, correct? Trial Tr. 982:25-983:12 A. Yes.

Q. And you consulted those Java API specifications while you were doing work for Google on Android, correct? A. Yes.

Q. You saw that there were copyright notices on the Java API specifications when you consulted them, correct? A. Yes.

63 Sun Refused To Modify Its Licenses For Harmony

April 10, 2007 Open Letter to Sun Microsystems

“This test kit, called the ‘Java Compatibility Kit’ or ‘JCK’, is needed by the Apache Harmony project to demonstrate its compatibility with the Java SE specification, as required by Sun’s specification license.”

TX 917 at p.1 64 Sun Refused To Modify Its Licenses For Harmony

Q. Apache Harmony did not have a TCK license, correct? A. That is correct.

Josh Bloch, Ph.D., Former Sun Distinguished Engineer And Now Google Chief Java Architect April 19, 2012 Trial Tr. 829:9-10

Q. And Apache concluded that a license was required from the spec lead under whatever terms the spec lead chooses; did they not, sir? A. That's the unfortunate reality, yes. Bob Lee Former Google Core Library Lead for Android Trial Tr. 1209:17-20 65 Schwartz’s Blog Post Is Not A License Blog License

TX 2260 at p. 1 TX 610.1 at p. 1 66 Schwartz Blogged With “Gritted Teeth”

“We could pound on the table and say ‘Stop’ and try to sue somebody, which would have made it more successful, or we could grit our teeth, make the best of an uncomfortable situation and embrace it, and then try to get our products to Jonathan Schwartz Former Sun Microsystems support it so anyone who wanted to use it would Chief Executive Officer (2006-2010) come to us and see us as a part of that value April 26, 2012 chain.” Trial Tr. 1991:9-14

67 Sun Publicly Expressed Concern Regarding Android

Seven days after Schwartz posted his blog, Google released the Android SDK, and Sun then publicly expressed concern.

November 15, 2007 ZDNet Report Sun Concerned Google’s Android Will Fracture Java

“We’re really interested in working with Google to make sure we don’t end up in a fractured environment.”

TX 1048 http://www.zdnetasia.com/sun-concerned-googles-androidwill-fracture-java-62034418.htm 68 Sun Had Ongoing Negotiations With Google

From: Vineet Gupta To: Jonathan Swartz Sent: October 23, 2008

“Android discussion”

“proposal more than likely is going to be about buying out Java.”

TX 2070 at p. 1 69 Sun Told Google It Needed A License For Android

“April of 2009, I had a discussion where the person from Google wanted to discuss Java Standard Edition. But I brought up the subject of Android, and we discussed that, as well.”

Leo Cizek Oracle Account Manager April 20, 2012 “I said that there would be something that would Tr. 1071:25-1072:3, Tr. 1073:5-9 have to be fixed, first, which is the fact that regarding Android there was no commercial use license; and, as we understood it, Android was shipping an incompatible version of Java, commercially.”

70 Sun Warned Oracle About Battle With Google/Android

From: Jonathan Schwartz To: Larry Ellison Sent: April 20, 2009

“There’s obviously a lot we didn’t focus on during the past (whirlwind) week… from the instrumentation we’re building into our open source assets (so they auto-generate data about the millions of customers downloading them), to the battles with Adobe Flash/Google Android, ’s distribution dependencies, etc.”

TX 2362 at p. 1 71 Sun/Oracle Had Continuing Negotiations With Google

Q. Were you one of the people that participated in deciding to break off efforts to reach agreement with Sun? A. I definitely participated in that, from my memory. But I also say I’m not sure they’ve Larry Page Google CEO ever broken off. Continue to have discussions April 18, 2012 to this day. Trial Tr. 492:18-21

72 73 No pre-lawsuit document saying Google relied in any way on positive comments ? about Android.

74 Google Chose To Make “Enemies” Early On

From: Andy Rubin To: Larry Page Sent: October 11, 2005

“If Sun doesn’t want to work with us, we have two options: 1) Abandon our work and adopt MSFT CLR VM and C# language -or - 2) Do Java anyway and defend our decision, perhaps making enemies along the way”

TX 7 at p. 2 75 Google Could Not Have Relied Because Google’s Copying Was Complete Before November 2007

Q. Did you decide to include the 37 packages of Java APIs in Android after you read that blog announcement? A. No.

Dan Bornstein Q. You decided that back here in 2005-2006; correct, Former Google sir? Android Tech Lead April 25, 2012 A. Uhm, it would have been 2006, mid-2006, I guess. Trial Tr. 1850:8-1851:2 Something like that. Q. And, in fact -- A. Actually -- wait, wait. Actually, I think that would -- would have been more like early 2007.

76 Google Knew Sun Expressed Concerns About Android

From: Andy Rubin To: Barry Schnitt Sent: November 14, 2007

Sun: “We’re really interested in working with Google to make sure developers don’t end up with a fractured environment.”

Rubin: “This is a touchy subject.”

TX 180 at pp. 1-2 77 Google Tried To Conceal Its Use Of Java From Sun

From: Andy Rubin To: Dick Wall Sent: March 24, 2008

“1) Are we able to answer direct developer questions about Android at the booth? Yes. One-on-one only, please.”

“2) Can we demonstrate the tooling, emulator, developer environment, etc? Yes, one-on-one only please, where you know exactly who you are talking to. Please don’t demonstrate to any sun employees or lawyers.”

TX 29 at p. 1 78 Google Knew Harmony Was Not Licensed

From: Bob Lee To: Eric Schmidt Sent: May 30, 2008

“Sun puts field-of-use restrictions in the Java SE TCK licenses which prohibit Java SE implementations from running on anything but a desktop or server. These restrictions prevent Apache Harmony from independently implementing Java SE (Harmony can’t put those restrictions on their own users and still Apache license the code) not to mention Android (though that’s water under the bridge at this point).”

Schmidt responded: “I’m not surprised by Sun’s position….”

TX 405 at p. 1 79 Google Saw Litigation Coming Because Of Its Use Of Java

From: Dave Sobota To: Tim Lindholm, Bob Lee Sent: February 19, 2009

> Proposal: > - Google buys the rights to Java from Sun (patents, copyrights, etc) > … > Good for Google: > - Our Java lawsuits go away

TX 326 at p. 2 80 Google Knew It Faced Java Lawsuits

Q. Now, there came a time when Google was sufficiently worried about being sued that it thought about buying all the rights to Java; correct, sir? A. Yes.

Eric Schmidt Google Chairman and Former CEO April 24, 2012 Trial Tr. 1559:20-23

81 Google Tried To Avoid Discussions With Sun

From: Tim Lindholm To: Dan Bornstein Sent: Apr. 29, 2009

“We really don’t want to inadvertently stir anything up for Android”

“I suspect we should step away, and only respond further if Sun chases after us.”

TX 1029 at p. 1 82 Google Knew Sun Never Approved Its Copying

May 2008 November 2008 Google employees Additional license “Remove j-word from negotiations with Sun. everywhere.” TX 1002 TX 104 February 2009 March 2008 Buy Java -“Java Rubin writes don’t lawsuits go away.” “demonstrate to any sun TX 326 employees or lawyers” April 2009 TX 29 November 2007 Discuss Android After SDK, Rubin “if Sun chases writes Sun situation after us.” “very touchy.” TX 1029 TX 180

2007 2008 2009

83 Google Never Said In Discussions With Oracle That It Did Not Need A License

Q. Did Mr. Eustace express in any of your communications, if at all, that Google did not need a license for Java because someone else at Sun or Oracle had approved of Java and Safra Catz Oracle President and Android? Chief Financial Officer April 27, 2012 A. No, he never said that. Trial Tr. 2316:5-9 Q. Q. Yes. In your discussions with Google representatives, to what extent, if any, did anyone ever say that Google did not need a license for Java because Mr. Schwartz had Hasan Rizvi Oracle Senior Vice indicated that Sun had no objections? President of Development April 26, 2012 A. Nobody said that. Tr. 1942:22-1943:1 84 Google Still Needs A License

August 6, 2010 From: Tim Lindholm To: Andy Rubin

“What we’ve actually been asked to do (by Larry and Sergei) is to investigate what technical alternatives exist to Java for Android and Chrome. We’ve been over a bunch of these, and think they all suck. We conclude that we need to negotiate a license for Java under the terms we need.”

TX 10 85 Google Still Needs A License

August 6, 2010 From: Tim Lindholm "Q. To:Were Andy you Rubin aware in or about August of 2010 that Larry and Sergey had asked Mr. Lindholm “What we’ve actually beento doasked this? to do (by Larry and Sergei) is to investigate what technical alternatives Eric Schmidt A. I was aware at the time that existGoogle Chairmanto Java for Androidwe and were Chrome. thinking We’ve aboutbeen what to overand Former a bunch CEO of these, and think they all suck. We April 24, 2012 do." Trialconclude Tr. 1465:21 -that24 we need to negotiate a license for Java under the terms we need.”

TX 10 86