FOR PUBLICATION



### UNITED STATES COURT OF APPEALS FOR THE NINTH CIRCUIT

ORACLE USA, INC.; ORACLE AMERICA, INC.; ORACLE INTERNATIONAL CORPORATION,

Plaintiffs

- Appellees

, v.

RIMINI STREET, INC.,

Defendant

- Appellant

. No. 22

- 15188

D.C. No. 2:10

- cv

- 00106

- LRH

- VCF

OPINION

Appeal from the United States District Court for the District of Nevada Larry R. Hicks, District Judge, Presiding

Argued and Submitted February 6, 2023 San Francisco, California

Filed August 24, 2023

Before: Jay S. Bybee and Patrick J. Bumatay, Circuit Judges, and Richard D. Bennett, * Senior District Judge.

Opinion by Judge Bumatay

* The Honorable Richard D. Bennett, United States Senior District Judge for the District of Maryland, sitting by designation.2 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

SUMMARY **

Civil Contempt

The panel affirmed in part, reversed in part, and vacated in part the district court’s order holding Rimini Street, Inc., in civil contempt and imposing sanctions for violations of a permanent injunction in copyright infringement litigation between Rimini and Oracle USA, Inc. The permanent injunction generally prohibited Rimini from reproducing, preparing derivative works from, or distributing certain Oracle software. The district court identified ten potential violations of the permanent injunction (Issues 1

– 10), and held Rimini in contempt on five (Issues 1 -4, 8). The panel affirmed the district court’s finding of contempt on Issues 1 -4. The panel held that the district court did not abuse its discretion in holding Rimini in contempt for hosting Oracle files on its computer systems (Issue 1). The panel declined to adopt the test set in TiVo Inc. v. EchoStar Corp. , 646 F.3d 869 (Fed. Cir. 2011) (en banc) (holding that, in a patent infringement case, the district court must determine whether a company’s new devices were more than colorably different from the original infringing ones before deciding whether the company engaged in new infringing activi ty in a contempt proceeding). The panel also held that the district court did not abuse its discretion in finding Rimini in contempt for violating the injunction against the

** This summary constitutes no part of the opinion of the court. It has been prepared by court staff for the convenience of the rea der.O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 3

“cross use” of development environments (Issues 2, 3, and 4). Reversing the findi ng of contempt on Issue 8, the panel held that the district court abused its discretion in holding Rimini in contempt for creating copies of an Oracle Database file on its systems. On Issues 7 and 9, the district court concluded that Rimini did not violate the permanent injunction but ruled that Rimini was not permitted to copy even snippets or partial segments of Oracle source code. The panel vacated the district court’s order on Issues 7 and 9 to the extent it read the permanent injunction to enjoin de m inimis copying. The panel held that the district court did not abuse its discretion or impose an impermissibly punitive sanctions award for each of six willful and one non

- willful contempt findings. Given the reversal on Issue 8, however, the panel
vacate d and remanded the sanctions award for recalculation.4 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

COUNSEL

Mark A. Perry (argued), Weil Gotshal & Manges LLP, Washington, D.C.; Jeremy M. Christiansen, Gibson Dunn & Crutcher LLP, Washington, D.C.; Samuel G. Liversidge, Ilissa S. Samplin, and Casey J. McCracken , Gibson Dunn & Crutcher LLP, Los Angeles, California; Blaine H. Evanson

, Gibson Dunn & Crutcher LLP, Irvine, California; Joseph A. Gorman, Gibson Dunn & Crutcher LLP, San Francisco, California; West Allen, Howard & Howard, Las Vegas, Nevada; Eri c D. Vandevelde; United States Attorney’s Office, Los Angeles, California; for Defendant -Appellant. Raechel K. Kummer (argued) and David B. Salmons, Morgan Lewis & Bockius LLP, Washington, D.C.; Benjamin P. Smith and Sharon R. Smith, Morgan Lewis & Bockius LLP, San Francisco, California; Dorian E. Daley, Peggy Bruggman, and James C. Maroulis, Oracle Corporation, Redwood City, California; Paul D. Clement, Erin E. Murphy, and Matthew Rowen, Clement & Murphy PLLC, Alexandria, Virginia; Karen L. Dunn and Willia m A. Isaacson, Paul Weiss Rifkind Wharton & Garrison LLP, Washington, D.C.; Richard J. Pocker, Boies Schiller & Flexner LLP, Las Vegas, Nevada; Beko O. Reblitz

Richardson, Boies Schiller & Flexner LLP , San Francisco, California; for Plaintiffs

- Appellees.O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 5

OPINION

BUMATAY, Circuit Judge:

This civil contempt dispute is fallout from the protracted copyright infringement litigation between Oracle USA, Inc. and Rimini Street, Inc.

— now in its thirteenth year. In the underlying case, the district court entered a p ermanent i njunction that enjoined Rimini from various infringing practices. Years later, the district court identified ten potential violations of the permanent injunction (“ Issue s 1

– 10 ”)

, and ultimately held Rimini in contempt on five. Rimini was ordered to pay $630,000 in statutory sanctions , plus attorneys’ fees. On appeal, Rimini argues that the contempt order should be reversed and that the sanctions should be vacated.

We affirm the district court’s finding of co ntempt on Issues 1

– 4
, reverse on Issue 8 , and vacate the district court’s order on Issues 7 and 9 to the extent it reads the permanent i njunction to enjoin de minimis copying. We vacate and remand the sanctions award to Oracle for recalculat ion

. I.

Oracle owns and develops copyrighted software for large organizations

. Oracle’s enterprise software products help organizations perform various business functions

, such as human resource s , payroll, taxes, shipping, and customer relations. Businesses and organization s purchase licenses to use specific programs and the products can be customized to accommodate their needs

. At issue here are four of Oracle’s software programs: PeopleSoft, Siebel, J.D. Edwards, and Oracle Database.6 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

Oracle’s enterp rise software products require ongoing updates and technical support

. F or example, a n update may reflect changes to regulations or the tax code

. So along with a licensing fee, Oracle’s licensees may pay an additional fee for software upgrades and support. They may also outsource support services to third parties

, like Rimini

. Rimini is Oracle’s largest competitor for its software support s ervices . Rimi ni supports and maintains Oracle

licensed software products for thousands of clients. Rimini’s

c lients include many Fortune 500 companies, universities, governments, and hospita ls. Co

- defendant Seth Ravin serves as the CEO of Rimini.

A.

Process 1.0 and Rimini I In 2010, Oracle sued Rimini for copyright infringement of its PeopleSoft, J.D. Edwards , Siebel, and Oracle Database software

. Oracle alleged that Rimini’s support process for its clients, known as Process 1.0, violated Oracle’s copyrights by “local hosting” and “cross us ing ” Oracle’s products

. “Local hosting” refers to Rimini creating “generic” Oracle software development environments on Rimini’s local computer systems to develop and test software updates and fixes for clients’ Oracle products

. Once perfected, Rimini would then del iver the updates and fixes to a client’s “live” environment , run on the client’s systems. “Cross use ” refers to Rimini creating a development environment under the license of one client to support other client s

. In response to Oracle’s suit, Rimini argued that each of its client s h eld a valid Oracle license and no client receive d

a benefit it wasn’t entitled to

. But i n Oracle’s view, evenO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 7

whe n clients hold identical licenses, cross use isn’t permitted

. Generally, Oracle believed its licenses required Rimini to perform work for each client only in the development environment for that client

. In 2014, t he district court granted partial summary judgment to Oracle on aspects of the copyright claim s. See Oracle USA, Inc. v. Rimini St. , Inc ., 6 F. Supp. 3d 1086, 1107 (D. Nev. 2014). And in 2015, a jury sided with Oracle on the rest of its c opyright infringement claims against Rimini. The jury awar d ed Oracle $35.6 million in damages on a hypothetical license theory. The jury also found for Oracle
on two state

- law claims. The district court further assessed
costs , attorneys’ fees , and prejudgment interest against Rimini. And t he district court entered a permanent i njunction against Rimini based on the copyright and state

law claims , enjoining the company from infringing Oracle’s PeopleSoft, J.D. Edwards, Siebel, and Oracle Database copyright s

. The Ninth Circuit affirmed the judgment on the copyright infringement claims and the costs award

. Oracle USA, Inc. v. Rimini St. , Inc ., 879 F.3d 948, 953 ( 9th Cir. 2018) (“ Rimini I ”). We reversed the state

- law claim s , however, and vacated the injunction for r econsider ation under only the copyright claims. Id . at 964. T he Supreme Court later reversed on the meaning of “costs.” Rimini St., Inc. v. Oracle USA, Inc. , 139 S. Ct. 873 , 875

– 76 (2019).

B. The Permanent Injunction

After that appeal, the district court granted Oracle’s renewed motion for a p ermanent injunction in 2018

. Rimini appealed the issuance of the permanent injunction

. In an8 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

unpublished decision, w e affirmed the grant of the
p ermanent i njunction except as to two aspects of the order

, which we held were overbroad. See Oracle USA, Inc. v. Rimini St., Inc. , 783 F. App’x 707, 710 ( 9th Cir. 2019) (unpublished) ( “ Rimini I njunction Appeal ” )

. W e first struck the provision enjoining “local hosting” of the J

. D

. Edwards and Siebel software program s because th o se products’ licenses d id not prohibit it. Id. at 710

– 11. We also struck the provision enjoining “ access ” to Oracle’s source code because “accessing” copyright ed work is not infringing activity under the Copyright Act. Id. at 711 (citing 17 U.S.C. § 106 (2002)). Generally

, the operative p ermanent i njunction provides that “Rimini Street shall not reproduce, prepare derivative works from, or distribute PeopleSoft, J.D. Edwards, or Siebel software

. . . unless solely in connection with work for a specific customer that holds a valid, written license agreement for the particular PeopleSoft, J.D. Edwards, or Siebel software

. . . author izing Rimini Street’s specific conduct.” P ermanent Injunction ¶ 2a.

T he permanent injunction has three relevant provisions related to PeopleSoft :

• “ Rimini Street shall not reproduce, prepare derivative works from, or use a specific licensee ’ s PeopleSoft software or documentation other than to support the specific licensee ’ s own internal data processing operations [.]” Id

. ¶ 4

.

• “ Rimini Street shall not reproduce, prepare derivative works from, or use PeopleSoft software or documentationO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 9

on, with , or to any computer systems other than a specific licensee ’ s own computer systems [.]” Id

. ¶ 5

.

• “ Rimini Street shall not reproduce, prepare derivative works from, or use PeopleSoft software or documentation on one licensee ’ s compute r systems to support, troubleshoot, or perform development or testing for any other licensee, including specifically, that Rimini Street shall not use a specific licensee ’ s PeopleSoft environment to develop or test software updates or modifications for the benefit of a ny other licensee[.] ” Id

. ¶ 6

.
As for J .D. Edwards, the permanent injunction states that “Rimini Street shall not copy or access J.D. Edwards software source code to carry out development and testing of software updates[.] ” Id

. ¶ 8

. As for Oracle Database , the permanent injunction provides that “ Rimini Street shall not reproduce, prepare derivative works from, or distribute Oracle Database software. ” Id

. ¶ 15.

C

. Process 2.0 and Rimini II In response to the district court’s 2014 summary judgment ruling, Rimini transitioned its client support process t o “Process 2.0

. ” The transition involved two major changes: (1) switch ing from local

- hosting to remote

- hosting, and (2) switch ing from cross

- used generic development10 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

environments to client

- specific development environments. Process 2.0 requires Rimini’s clients to host development environment s on their own system s , which Rimini can

access remotely. Moreover, under Process 2.0 , Rimini no lon ger locally ho st s any Oracle environment on its own systems. The transition to Process 2.0 was completed before the 2015 trial in Rimini I

. Rimini filed a new suit seeking a declaratory judgment that Process 2.0 was non

- infringing on Oracle’s copyrights. See Complaint for Declaratory Judgment

, Rimini St., Inc. v. Oracle Int’l Corp. , No. 2:14

- cv

- 01699 (D. Nev. Oct. 15, 2014) (“ Rimini II ”)

. Although Rimini sought to consolidate Rimini II with Rimini I , the distri ct court denied the motion and the litigation proceeded on separate track s

. Rimini II is currently on appeal in our court.

D

. Contempt Proceedings in Rimini I
In 2019, Oracle sought permission to conduct discovery to determine whether Rimini was complying with the
p ermanent i njunction. After 18 months of discovery, t he district court identified ten potential violations and ordered Rimini to show cause why it should not be held in co n tempt for violating the p ermanent i njunction

. Following a seven

- day bench trial, the district court held Rimini in contempt on five of the ten issues:

Issue 1: Rimini possessed copies of copyrighted PeopleSoft files o n Rimini’s local systems in three circumstances

.O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 11

Issues 2 , 4: Rimini developed and tested a PeopleSoft update in a development environment for its client, City of Eugene , which was later deliver ed to clients Matheson Trucking, Spherion, and Smead.

Issue 3: Rimini cross used the City of Eugene environment to solve a PeopleSoft bug related to the printing of W

- 2 forms for client Johnson Controls.

Issue 8: Rimini cop ied an Oracle Database file received f rom its client

, the Australian Bureau of Statistics.

Oracle USA, Inc. v. Rimini St. , Inc. , No. 10

- cv

- 00106, 2022 WL 112187 , at * 17

– 19, * 25

– 26 , * 29

– 30 , * 48

– 49 (D. Nev. Jan. 12, 2022 ) (“ Rimini Contempt Order ”)

. For Issue s 2, 3, 4, and 8
, the district court found that Rimini “willfully” violated the permanent injunction. Id. at *34. On Issue 1
, the district court found two willful violations and one non

willful violation

. Id

. On two more issues, Issue 7 and Issue 9 , t he district
court concluded that Rimini did not violate the p ermanent i njunction by copying “snippets” of Oracle source code from J.D. Edwards files because “ de minimis copying” isn’t prohibited by the Copyright Act

. Id. at * 29

– 30

. Even so , the district court ruled that “Rimini is not permitted to copy even snippets or partial segment s of Oracle source code ” and made clear that “[f]uture copying of this nature will result in12 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

the Court finding Rimini willfully violated the Permanent Injunction.” Id. at *30

. For the sustained contempt charges, t he district court order ed Rimini to pay Oracle $630,000 in sanctions. This represented $100,00 0 for each willful violation and $30,000 for the non

- willful violation. T he district court based these amounts on the statutory damages available under the Copyright Act. See 17 U.S.C. § 504(c)

. The district court also imposed attorneys ’ fees and costs on Rimini. Rimini now appeals the contempt finding s and the award of sanctions.

II.

We start b y reviewing the five finding s of contempt

, which we group into three categor ies

— local hosting ( Issue 1 ) , cross use ( Issue s 2

– 4 ) , and Oracle Database copying ( Issue 8 ) . We then consider whether the district court properly enjoin ed Rimini from de minimis copying , even if it did not hold Rimini in contempt for such conduct ( Issues 7 and 9 ). And finally, we examine the district court’s imposition of sanctions against Rimini.

We review these issues for abuse of discretion. United States v. Washington , 761 F.2d 1419, 1421 (9th Cir. 1985); United States v. Br ight , 596 F.3d 683, 694 (9th Cir. 2010). We accept the district court’s factual finding s unless they are clearly erroneous. Dolman v. Agee , 157 F.3d 708, 715 (9th Cir. 1998).O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 13

A. Contempt Findings

1.

Issue 1: Local Hosting

The district court did not abuse its discretion in holding Rimini in contempt for hosting Oracle files on its computer systems

— Issue 1

. The district court ’s contempt f inding turned on three instances in which Rimini possessed copyrighted P eopleSoft files on its local systems. In each
case, Rimini’s clients emailed the PeopleSoft file s to Rimini employees

. In two instances , the Rimini client sent the copyrighted file s unsolicited ; in the third case, the client did not follow instructions to place file s in a shared folder. In each case, Rimini employees did not immediately quarantine or report the files to Rimini’s security or compliance department s, as required by Rimini’s internal policies. In two cases, Rim ini employees forwarded the copyrighted material to other employees and further saved the files on shared drives on Rimini’s computers . These two instances prompted the district court’s finding of a willful violation of the permanent injunction. The dist rict court also noted three other incidents of copying of PeopleSoft files on Rimini’s local systems

, but did not find them to be independent violations. The plain language of the permanent injunction prohibits Rimini from locally hosting PeopleSoft software on its systems. Paragraph 5 of the permanent injunction provides that “ Rimini Street shall not reproduce, prepare derivative works from, or use PeopleSoft software or documentation on, with, or to any computer systems other than a spec ific licensee ’ s own computer systems [.]” The district court14 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

found that Rimini violated this part of the permanent injunction by “reproduc ing ” PeopleSoft files on its local computer systems in th e s e three circumstances

. Rimini does not contest that it hosted PeopleSoft’s software on its computer systems, but asks this court to adopt the test set in TiVo Inc. v. EchoStar Corp. , 646 F.3d 869 (Fed. Cir. 2011) (en banc)

, to reverse the contempt finding. There , the Federal Circuit held that , in a patent infringement
case, the district court must determine whether a company’s “new devices [were] more than colorably different from the original [infringing] ones ” before deciding whether a company engaged in new infringing activity in a contempt proceeding. Id . at 884. If there were “more than colorable difference s between the two devices,” the Federal Circuit concluded that any challenge to the company’s new infringing product must be in a “new infringement proceeding”

— not contempt proceedings. Id

. Rimini argues that we should follow this out

- of

- circuit case and apply it to copyright law. Thus, Rimini contends that we should require the district court to determine whe ther Rimini’s Process 2.0 was “more than colorably different” from its prior Process 1.0 before holding Rimini in contempt

. N otwithstanding the “historic kinship between patent law and copyright law

, ” Sony Corp. of Am. v. Universal City Studios, Inc.

, 464 U.S. 417, 439 (1984)

, we see no reason to apply TiVo to the facts presented here

. As we understand it, the Federal Circuit’s motivat ion in adopting the Tivo test wa s to protect against the overuse of the “severe remedy” of contempt and ensure that it is not “ resorted to where there is a fair ground of doubt as to the wrongfulness of the defendant’s conduct.” Tivo , 646 F.3d at 881

– 82 (quoting Cal. Artificial Stone Paving Co. v. Molitor , 113 U.S. 609, 618 (1885 ) )

. But o ur caselaw on contempt already providesO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 15

robust safeguards for those accused of violating a copyright injunction

. We forbid contempt sanctions when the contested action was “based on a good faith and reasonable interpretation ” of the court ’ s order

, when the contested action was in “substantial compliance” with the order , or when there w as only a “technical violation ” of the order. United States v. DAS Corp ., 18 F.4th 1032, 1039 (9th Cir. 2021) (simplified)

. Moreover, the Federal Circuit adopted the TiVo test for the design of products

, which th at court h e ld are subject to the “policy that legitimate design

- around efforts should always be encouraged as a path t o spur further innovation.” TiVo , 646 F.3d at 883. Here, it’s Rimini’s conduct that is subject to the district court’s permanent injunction. S uch an injunction is proper i f it r estrains “acts which are of the same type or class as unlawful acts which the court has found to have been committed .” Orantes

- Hernandez v. Thornburgh

, 919 F.2d 549, 564 (9th Cir. 1990) (quoting NLRB v. Express Publ’g Co ., 312 U.S. 426, 435 (1941))

. Rimini contends that the type of local hosting here is different from the local hosting that compelled the permanent injunction

— which involved cop ying “ thousands of PeopleSoft files” onto Rimini’s systems as part of the standard support process for its clients. While the volume of copying at issue here is far l ess egregious than the original offending activity, we do not think the district court abused i ts discretion in finding a lack of substantial compliance with Paragraph 5 given the pattern of local

- hosting incidents, the internal forwarding of copyrighted material, the lack of internal training , the failure to adequately warn its clients of the copying prohibition

, the delays in quarantining the copyrighted software, and the g eneral failure to follow its16 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

own internal policies. W e thus affirm the contempt finding

on Issue 1

. 2.

Issues 2

– 4: Cross Use The district court did not abuse its discretion in finding Rimini in contempt for violating the injunction against the “cross use” of development environments

— Issue s 2, 3, and 4

. For Issues 2 and 4 , the district court found that Rimini employees had modified and tested a PeopleSoft tax form update known as “rsi940a.sqr” in the development environment for its client

, the City of Eugene

, even thoug h the update was only sent to three other clients

— Spherion, S mead, and Matheson Trucking. At the time Spherion and Smead reported problem s with the tax program, Rimini could not access their development environments. Instead, a Rimini employee used the City of Eugene’s environment to modify and fix “rsi940a.sqr” despite nothing show ing that the City had reported a problem with the program or that it otherwise needed the update. Rimini later sent the update to another client, Matheson Trucking , with no evidence showing that it was developed or tested in Matheson’s specific environment.

F or Issue 3
, Rimini sought to fix a bug in its PeopleSoft W

- 2 tax software reported by its client, Johnson Control s

. Rather than using Johnson Control s ’ development environment, Rimini again used the City of Eugene’s environment to find a solution to the bug. According to the district court, Rimini then sent the W

- 2 fix only to Johnson Control s that year

— not to any other client at the time

, including the City of Eugene.O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 17

The permanent injunction prohibits the “ cross use ” of the PeopleSoft program . Paragraph 4 requires that Rimini “ not reproduce, prepare derivative works from, or use a specific licensee ’ s PeopleSoft software or documentation other than to support the specific licensee ’ s own internal data processing operations .” Paragraph 6 likewise pro hibits Rimini from using the “ PeopleSoft software or documentation on one licensee’s computer systems to

s upport, troubleshoot, or perform development or testing for
any other licensee .” It specifically establishes that “ Rimini Street shall not use a specific licensee’s PeopleSoft environment to develop or test software updates or modifications for the benefi t of any other licensee.”

Rimini makes three arguments for why its conduct did not violate these provision s of the permanent injunction

. None succeed. First, Rimini claims the use of the City of Eugene’s development environment to develop the two PeopleSoft updates d id not constitute “cross use” as litigated in Rimini I

. Rimini asserts that “cross use” in Rimini I involved Rimini’s use of a generic develop ment environment hosted in its computer systems to support multiple clients . In contrast, the “cros s use” in Issues 2

– 4 refers to using a
remote

- hosted, client

- specific environment to support multiple other clients.

But even if Rimini’s characterization of Rimini I is accurate, we had already broadly criticized “[a]ny work that Rimini performs under color of a license held by a customer for o t her ex i st i ng customers.” Rimini I
, 879 F.3d at 957

. In such case s , we said that such work “cannot be considered work in support of that particular customer.” Id . And we said t hat prohibit ion would apply prospectively

— “ [ t ] he18 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

same logic applies to work Rimini performs for unknown, future customers.” Id

. Indeed, we did not define “cross use” as myopically as Rimini in the first appeal to our court ; we said that “cross use” is “the creation of development environments, under color of a license of one customer, to support other customers.” Id . at 956. Thus, it makes no difference whether the development environment was generic and locally hosted as in Rimini I or client

- specific and remotely accessed as here

. As the Supreme Court has instructed, a party cannot escape “civil contempt because the plan

. . . which they adopted was not specifically enjoined

. ” McComb v. Jacksonville Paper Co. , 336 U.S. 187, 192 (1949)

. Under our prior definition of “cross use” and the plain terms of the permanent injunction, Rimini violated the prohibition against the cross use of development environment s. Second, Rimini argues that its conduct was covered by the licenses of each individual client. Take the City of Eugene. According to Rimini, the City has a license with Oracle that allows the City to provide access to and use of the PeopleSoft program to third parties. Rimini also claims it s contract with the City requires it to provide regular PeopleSoft updates

. From this, Rimini asserts it can use the City’s development environment for any client as long as it also uses it for the benefit of the City. Whatever the m erit o f this argument, t here’s a problem with its application here: T he district court found no evidence that Rimini create d the
two software updates for the City’s benefit

. Indeed, it ’ s uncontested that the City never complained of the problems reported in Issue s 2

– 4

. While Rimini claims that it believed that the City would need the “rsi940a.sqr” update and that it was only an “accident of history” that the City didn’t ultimately need either update, the district court disbelievedO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 19

that explanation

. The district court found that , by the time Rimini created the “rsi940a.sqr” update in the City’ s development environment, the company knew that the update w as only required for clients operating in the U.S. Virgin Island s

— not its clients nationwide like the City. Rimini Contempt Order

, 2022 WL 112187, at *16. And the district court concluded that the record did not support t hat Rimini believed that the City would need the W

- 2 f ix it developed for Johnson Control s

. Id. at *18. Without any finding that Rimini used the City’s development environment for the benefit of the City, the Ci ty’s license doesn’t protect Rimini’s cross use. Finally, Rimini asserts that the district court’s contempt finding s d on’t meet the “clear and convincing” standard. See Ahearn ex rel. NLRB v. Int’l Longshore & Warehouse Union, Locs. 21 & 4 , 721 F.3d 1122, 1129 (9th Cir. 2013) ( holding that a contempt finding must be supported by “clear and convincing evidence” ). But we don’t reverse a district court’s finding of contempt “unless [we have] a definite and firm conviction that the district court committ ed a clear error of judgment after weighing the relevant factors.” Peterson v. Highland Music, Inc ., 140 F.3d 1313, 1323 (9th Cir. 1998) (simplified). Here
, the record doesn’t show that the district court’s view of the facts was clearly erroneous. Inste ad

, the record shows that Rimini repeatedly chose to access the City of Eugene’s development environment to modify PeopleSoft when other clients reported problems with the program.

So we affirm the district court ’s finding of contempt on Issues 2

– 4

.20 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

3.

Issue 8: Oracle Database Copying

On Issue 8 , we do find an abuse of discretion. The district court held Rimini in contempt for creating copies of the Oracle Database file known as “prvtsidx.pbl” on its systems. This time

, one of Rimini’s clients, the Australian Bureau of Statistics, sent the file to Rimini for help troubleshooting a technical problem. The Bureau uploaded the file to the SalesForce system, which created a copy of the file on Rim ini’s system. A Rimini employee then clicked on the .zip file and opened the “prvtsidx.pbl” file, which then created additional copies of the Database file on Rimini’s systems. Rimini then used the file to diagnose the Bureau’s problem. The permanent injunction does not clearly prohibit Rimini’s copying of the Oracle Database file under the circumstances here. Paragraph 15 of the permanent injunction provides that “Rimini Street shall not reproduce, prepare derivative works from, or dist ribute Oracle Database software.” But, as the district court noted, “Paragraph 15

. . . does not prohibit all copying of Oracle Database, specifically, when copying of Oracle Database is necessarily done while Rimini is making permitted copies of other Oracle Enterprise Software.” Rimini Contempt Order

, 2022 WL 112187, at * 30

. Thus, if Rimini’s actions were authorized by one of Oracle’s software licenses, it cannot be held in contempt. In this case, the Bureau holds an Oracle Database license, which was governed by the Oracle License and Service Agreement (“OLSA”). The OLSA permits the Bureau to allow its agent s and contractors “ to use ” the
program in “ the furtherance of [its] internal businessO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 21

operations .” Another section of the OLSA permits the Bureau to make “copies” of the program, but it does not expressly allow the Bureau’s agents and contractors to make copies. Although t he district court found that Rimini only used the “prvtsidx.pbl” file to “support ” the Bureau’s “sole internal data processing operations,” it still held that Rimini acted outside the plain meaning of the OLSA. Rimini Contempt Order

, 2022 WL 112187, at * 31

. The district court reasoned that

, while the OLSA allowed the Bureau’s “ third

party support providers, ” like Rimini, to use the Database file, the agreement only allowed the Burea u to m a k e cop ies of the software

. Thus, the district court concluded that Rimini violated the OLSA by obtaining a copy of the “prvtsidx.pbl” file. We disagree. Rimini reasonably explains that the distinction between using the software and copying the software makes little sense in this context. Simply, one cannot “use” the Database software without also “copying” it , Rimini says

. That’s because the very act of running an Oracle program necessarily creates a copy of the program. Evidence supports this view

. A s Oracle’s expert testified in

a related context

, Each time Rimini use[s] a[n]

. . . environment, this use result[s] in the creation of ephemeral copies of Oracle software in the computer’s RAM. Such copies are necessarily created when software is used, because a computer

- readable version of the software is loaded into the computer’s22 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

memor y so that its instructions can be interpreted and acted upon by the computer

. Rimini St., Inc. v. Oracle Int’l Corp ., 473 F. Supp. 3d 1158, 1203 (D. Nev. 2020) ; see also id. at 1217 (“[I]t is impossible
to use the software or create and test Rimini’s updat es without making RAM copies of Oracle’s software.”)

. In contrast, Oracle offers no clear and convincing evidence that Rimini is wrong about how third

- party software support works . And w hile Orac l e now suggests that Rimini “ could ‘use ’ the software on its clients’ systems

, ” it is not apparent from the OLSA ’s plain language that this location restriction was intended. Indeed, Oracle points to

no location restriction in the OLSA

. And a “ restriction on the location of copies

, ” or “use ” of “the software on its clients’ systems” does not avoid the creation of copies inherent with any “ use. ” Thus, we are not confident that the district court’s interpretation of the OLSA satisfies the standard for finding contempt. See DAS Corp
., 18 F.4th at 1039 (no contempt “based on a good faith and reasonable interpretation” of the court’s order ) ( simplified )

. Oracle’s waive r argument similarly fails. Oracle contends that Rimini should be precluded from raising the OLSA defense to the contempt charge because it waive d this point on appeal of the district court’s summary judgment ruling . Once again, we disagree. Previously, the district court granted Oracle summary judgment on its copyright infringement claim that “ Rimini copied Oracle ’ s copyright protected software when it built development

. . . environments for a number of Rimini customers using Oracle Databas e.” Rimini I
, 879 F. 3 d at 960. On appeal, we held that Rimini waived the defense that the OLSA authorized Rimini’s actions. Id . But the contemptO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 23

holding at issue is based on a different situation

— here, Rimini’s client sen t Rimini a copy of the Database for help in troubleshooting the program. As the district court acknowledged

, this “ situation

. . . [was] strikingly different from that held unlawful on summary judgment.” Rimini Contempt Order

, 2022 WL 112187, at *31

. The district court also didn’t consider the OLSA defense argument precluded ; the district court instead analyzed the OLSA iss ue anew. Under these facts, we see no waiver or preclusion of the OLSA defense. We thus reverse the district court’s finding of contempt

on Issue 8

. B. Interpretation of the Injunction

Issue s 7 and 9: De Minimis Copying

We next address the district court’s resolution of Issues 7 and 9 even though the district court ultimately found no violation of the permanent injunction

. For Issue s 7 and 9 , the district court analyzed Rimini’s copying of J

. D

. Edwards source code when it provide d its clients tax and regulatory updates. For example, t o provid e client support for one J

. D

. Edwards update

, Rimini created a “Technical Design Specification” document that contain ed “snippets ” of Oracle source code

. These “snippets” served as a “reference ” to show where in the Oracle product Rimini developers should insert Rimini

- created code when working for a particular client

. In other words , the snippets of Oracle

source code were marker s used to identify where to place Rimini code. Often t hese markers contain ed elided portion s

— i.e. , “...... ”

— to avoid reproducing Oracle code. So in the end, the source code copied by Rimini was no more24 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

than a handful of letters, numbers, and symbols , as show n in bold below:

VArpt_mnOrigRoth457b

............ TH0=”0”

Math N

.......... c To String

. . . ** Add code lines before the “ If $CT3 <> $T3 OR” conditional block **

. . . ** Add code before the “ Write F06767 RECRCU code line **

A ll parties agree that th ese snippets of source code cannot be used to run the J

. D

. Edwards program and are not functional

. All also agree that this source

- code copying was “de minimis.”

The district court concluded that this de minimis copying of J.D. Edwards source code implicated Paragraph 8 of the permanent injunction which instructs that “Rimini Street shall not copy J.D. Edwards software source code to carry out development and testing of software updates[.]” Although the district court found that Rimini violated the permanent injunction, it ultimately did not hold the company in contempt for Issues 7 and 9 because of the de minimis nature of the copying

. It held that , because the Copyright Act does not prohibit de minimis copying, Rimini “ could have had a good faith and reasonable belief that copying such a small amount of source code was permitted .” Rimini Contempt Order

, 2022 WL 112187, at *30

. Yet the district court then went further and warned Rimini that it could noO RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 25

longer copy de min imis portions of J.D. Edwards’ source code:

The Court now makes clear that Rimini is not permitted to copy even snippets or partial segments of Oracle source code into a Technical Design Specification document. Future copying of this nature will result i n the Court finding Rimini willfully violated the Permanent Injunction and sanctions of the highest order.

Id. Rimini now challenges the district court’s reading of the permanent injunction to preclude de minimis copying of Oracle source code.

1. Before turning to the merits of this issue, we first address Oracle ’s jurisdictional arguments. To begin, Oracle contends that Rimini c annot appeal the district court’s order on this issue because the court did not hold Rimini in contempt on Issues 7 and 9 and thus Rimini prevailed below. At first blush, Oracle makes a good point. We rarely review

a n appeal brought by the prevailing party. See United States

v. Good Samaritan Church , 29 F.3d 487, 488 (1994) (“ A party may not appeal from a judgment or decree in his favor, for the purpose of obtaining a review of findings he deems erroneous which are not necessary to support the decree

. ” ). But that general rule has no force when an “adverse ruling can serve as th e basis for collateral estoppel in subsequent litigation,” Ruvalcaba v. City of Los Angeles , 167 F.3d 514, 520 (9th Cir. 1999), or when the district court’s order may26 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

“bind [the appellant] in subsequent litigation

, ” Good Samaritan Church , 29 F.3d at 489. Here, the district court’s ruling would bind Rimini in future litigation and opens it up to sanctions if left unchallenged now. So the lack of a contempt finding does not preclude our review.

Oracle also assert s that we lack appellate jurisdiction b ecause the denial of contempt means there was no “ final decision ” under 28 U.S.C. § 1291. That is incorre ct. As we have noted, “ [m] ost post- judgment orders are final decisions within the ambit of 28 U.S.C. § 1291 as long as the district court has completely disposed of the [underlying] matter.” United States v. Ray , 375 F.3d 980, 987 (9th Cir. 2004) (quoting Sportmart, Inc. v. Wolverine World Wide, Inc ., 601 F.2d 313, 316 (7th Cir. 1979)). Thus, “[i]f a motion for civil contempt is denied after the entry of the judgment which was the subject of the contempt, the denial is final and reviewable because no further district court action is necessary to give life to the denial.” DAS Corp

. , 18 F.4th at 1039 (quoting Sanders v. Monsanto Co ., 574 F.2d 198, 199 (5th Cir. 1978) ). And because the contempt order disposed of the only matter left before th e district court, it is “ final ” under § 1291— even if it denied a finding of contempt on Issue s 7 and 9

. Because § 1291 confers our jurisdiction, we do not address the parties ’ arguments under 28 U.S.C. § 1292(a)(1).

2.

On the merits, we agree with R imini that the district court’s interpretation of the permanent injunction was improper because Rimini’s de minimis copying here is not prohibited by the Copyright Act. As we’ve said, “[a]n overbroad injunction is an abuse of discretion.” Boardman v. Pac. Seafood Grp ., 822 F.3d 1011, 1024 (9th Cir. 2016) ( simplified ). On direct appeal of the permanent injunction,O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 27

we had struck a provision of the order enjoin ing actions that were not “an infringing activity under the Copyright Act.” Rimini Injunction Appeal , 783 F. App’x at 711 (striking a provision enjoining accessing source code because the Copyright Right permits “access”); see also 17 U.S.C. § 502(a) (injunc tions may be granted “to prevent or restrain infringement of a copyright”). We follow the same path here. In this case, de minimis copying does not violate the Copyright Act. See, e.g., Bell v. Wilmott Storage Serv s

. , LLC , 12 F.4th 1065, 1074 (9th Cir. 2021) (“ [I] f the degree of copying is merely de minimis, then it is non

- actionable” under the Copyright Act

. ); see also 4 Nimmer on Copyright § 13.03[A] (“[E]ven where the fact of copying is conceded, no legal consequences will follow from that fact unless the copying is substantial.” (quoting Newton v. Diamond , 388 F.3d 1189, 1193 (9th Cir. 2004) ) ). Because the district court read the permanent injunction to pro hibit Rimini from prospectively copying any de minimis portions of Oracle’s source code (which would not offend the Copyright Act), we vacate that part of the district court’s order.

Oracle responds that injunctions may prohibit otherwise

legal conduct. See United States v. U.S. Gypsum Co. , 340 U.S. 76, 88

– 89 (1950) (injunctions may cover acts “entirely proper when viewed alone” if doing so will prevent future violations). That may be true, b ut “ ‘ [i]njunctive relief should be no more burdensome to the defendant than necessary to provide complete relief to the plaintiffs’ before the court.” Columbia Pictures Indus

., Inc. v. Fung , 710 F.3d 1020, 1049 (9th Cir. 2013) ( simplified )

. Here, it is hard to

see the ne cessity in preventing Rimini from using non

functional snippets of source code solely as markers to identify where Rimini employees should work

. Enjoining28 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

that conduct would be overly burdensome

, hamstring ing Rimini’s ability to perform its authorized third

- party support services. Prohibiting de minimis copying like this would be like asking lawyers to conduct legal research without using pincites

. Indeed, Oracle hasn’t argued that this type of de minimis copying is t he harm that was previously adjudicated illegal, and it hasn’t provide d clear and convincing evidence that using snippets of source code in this way will lead to future copyright violations. We thus vacate the portions of the district court’s order enjoini ng de minimis copying of the J.D. Edwards source code in Rimini’s “Technical Design Specification” documents.

C

. Sanctions Having affirmed four of five contempt findings, we now turn to the district court ’s award of $630,000 in sanctions to Oracle. Recall the district court imposed the sanction o f $100,000 for each of the six willful contempt finding s and $30,000 for the one non

- willful finding. Rimini argues that the sanctions award was impermissibly punitive and ask s for it to be vacated. Under controlling case law, the district court didn’t abuse its discretion. “A court’s contempt powers are broadly divided into two categories: civil contempt and criminal contempt.” Shell Offshore Inc. v. Greenpeace, Inc ., 815 F .3d 623, 628 (9th Cir. 2016). The main distinction between the two categories is their “character and purpose. ” Id

. at 629 (quoting Int ’ l Union, United Mine Workers v. Bagwell , 512 U.S. 821, 827 (1994))

. Criminal contempt sanctions are “ punitive ”

— meant to punish prior offenses

. Id

. ( simplified). Generally,O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 29

t hese punitive sanctions may not be imposed without the constitutional protections afforded ordinary criminal proceedings. See Int ’ l Union , 512 U.S. at 826

– 27 (listing “right s to notice of charges,” “assistance of counsel,” and in cases involving lengthy incarceration, “right to jury trial”).
In contrast, the purpose of c ivil sanctions is to “ coerce ” compliance with a court order or to “ co mp ensate ” the aggrieved party for sustained losses. Shell Offshore Inc

., 815 F.3d at 629 (quoting United States v. United Mine Workers

, 330 U.S. 258, 303

– 04 (1947) ) ; see also Ahearn ex rel. NLRB
, 721 F.3d at 1128 (“[C] ivil contempt proceedings serve two purposes: (1) coercing compliance with a court order; and (2) compensating the prevailing party. ”). Unlike criminal contempt sanctions, generally “civil contempt sanctions are viewed as nonpunitive and avoidable, [ and ] fewe r procedural protections for such sanctions have been required.” Int’l Union , 512 U.S. at 831.

We find no abuse of discretion in the district court’s sanction s award. Th e district court expressly observed that the purpose of the $630,000 fine was “ compensatory ” and

was “ appropriate ” to “ sufficiently compensate Oracle for Rimini’s contemptuous conduct.” Rimini Contempt Order

, 2022 WL 112187, at * 34. So the district court’s findings track civil sanction s ’ compensatory purpose. See Shell Offshore Inc ., 815 F.3d at 629. The district court then based the sanction s amount on the statutory damages available under the Copyright Act, 17 U.S.C. § 504. We have already approved of the award of statutory damages in copyright contempt pro ceedings. See BMG Music v. Perez , 952 F.2d 318, 320 (9th Cir. 1991) (affirming a contempt sanction based on the statutory damages provision of § 504, noting the district court’s “wide discretion ” in setting the amount of damages within the statutory range ). The district court then30 O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

.

correctly observed that § 504 permits statutory damages of not “more than $30,000” for a non

- willful infringement and “not more than $150,000” for an infringement “committed willfully.” 17 U.S.C. § 504(c)(1)

– (2). Thus, the $100,000 sanction for each willful violation and the $30,000 sanction for the non

- willful violation fit acceptable statutory damages.

Rimini ar gues the $630,000 award cannot be considered

a civil contempt sanction because the district court did not give it a chance to “purge” the sanctions through compliance

. Rimini fails to appreciate the two purposes of civil contempt sanctions

— compensation and coercion . It is
true that for sanction s meant solely to cajole compliance with a district court’s order, the sanctions may be “purged” once the contemnor has come into compliance. Shell Offshore Inc ., 815 F.3d at 629. But c ivil compensatory sanction s are different; they are “remedial”

— “typically tak[ing] the form of unconditional monetary sanctions” paid to the aggrieved party. Id. So the mere fact that the sanction s award here cannot be purged doesn’t make it punitive. And

w hile the district court noted that the “sizable statutory sanction” along with the attorneys’ fees and cost would also compel Rimini’s compliance with its orders, the district court made it clear that the primary purpose of the sanction s was to compensate Oracle fo r its losses from Rimini’s infringing activity. Rimini Contempt Order , 2022 WL 112187, at *34. Under these facts, we find no abuse of discretion in the award and calculation of sanctions

. We vacate and remand the sanctions award, however, given our reversal o n Issue 8

. We decline to address Rimini’s arguments related to attorneys ’ fee s and costs as they are premature.O RACLE USA, I NC

. V

. R IMINI S TREET , I NC

. 31

I II

. The contempt findings for Issues 1

– 4 are AFFIRMED

. The contempt finding for Issue 8 is REVERSED

. The district court’s order regarding Issue s 7 and 9 is VACATED to the extent it enjoins de minimis copying not prohibited by the Copyright Act

. The imposition of sanctions is VACATED and REMANDED for recalcul ation consistent with this opinion

.