This copyright dispute involves 37 packages of computer source code. The parties have often referred to these groups of computer programs, individually or collectively, as “application programming interfaces,” or API packages, but it is their content, not their name, that matters. The predecessor of Oracle America, Inc. (“Oracle”) wrote these and other API packages in the Java programming language, and Oracle licenses them on various terms for others to use. Many software developers use the Java language, as well as Oracle’s API packages, to write applications (commonly referred to as “apps”) for desktop and laptop computers, tablets, smartphones, and other devices.
Oracle filed suit against Google Inc. (“Google”) in the United States District Court for the Northern District of California, alleging that Google’s Android mobile operating system infringed Oracle’s patents and copyrights. The jury found no patent infringement, and the patent claims are not at issue in this appeal. As to the copyright claims, the parties agreed that the jury would decide infringement, fair use, and whether any copying was de minimis, while the district judge would decide copyrightability and Google’s equitable defenses. The jury found that Google infringed Oracle’s copyrights in the 37 Java packages and a specific computer routine called “rangeCheck,” but returned a noninfringement verdict as to eight decompiled security files. The jury deadlocked on Google’s fair use defense.
After the jury verdict, the district court denied Oracle’s motion for judgment as a matter of law (“JMOL”) regarding fair use as well as Google’s motion for JMOL with respect to the rangeCheck files. Order on Motions for Judgment as a Matter of Law, Oracle Am., Inc. v. Google Inc., No. 3:10-cv-3561 (N.D. Cal. May 10, 2012), ECF No. 1119. Oracle also moved for JMOL of infringeIn granting that motion, the court found that: (1) Google admitted to copying the eight files; and (2) no reasonable jury could find that the copying was de minimis. Oracle Am., Inc. v. Google Inc., No. C 10-3561, 2012 U.S. Dist. LEXIS 66417 (N.D. Cal. May 11, 2012) (“Order Granting JMOL on Decompiled Files”).
Shortly thereafter, the district court issued its decision on copyrightability, finding that the replicated elements of the 37 API packages—including the declaring code and the structure, sequence, and organization—were not subject to copyright protection. Oracle Am., Inc. v. Google Inc., 872 F. Supp. 2d 974 (N.D. Cal. 2012) (“Copyrightability Decision”). Accordingly, the district court entered final judgment in favor of Google on Oracle’s copyright infringement claims, except with respect to the rangeCheck code and the eight decompiled files. Final Judgment, Oracle Am., Inc. v. Google Inc., No. 3:10-cv- 3561 (N.D. Cal. June 20, 2012), ECF No. 1211. Oracle appeals from the portion of the final judgment entered against it, and Google cross-appeals from the portion of that same judgment entered in favor of Oracle as to the rangeCheck code and eight decompiled files.
Because we conclude that the declaring code and the structure, sequence, and organization of the API packages are entitled to copyright protection, we reverse the district court’s copyrightability determination with instructions to reinstate the jury’s infringement finding as to the 37 Java packages. Because the jury deadlocked on fair use, we remand for further consideration of Google’s fair use defense in light of this decision. With respect to Google’s cross-appeal, we affirm the district court’s decisions: (1) granting Oracle’s motion for JMOL as to the eight decompiled Java files that Google copied into Android; and (2) denying Google’s motion for JMOL with respect to the rangeCheck function. Accordingly, we affirm-in-part, reverse-in-part, and remand for further proceedings.