DCT

2:25-cv-00614

S3G Technology LLC v. Pacific Sunwear Of California LLC

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 2:25-cv-00614, E.D. Tex., 10/16/2025
  • Venue Allegations: Plaintiff alleges venue is proper because Defendants maintain regular and established places of business within the Eastern District of Texas, such as a retail store in Plano, and have committed the alleged acts of infringement in the district.
  • Core Dispute: Plaintiff alleges that Defendant’s mobile applications and supporting backend systems for retail e-commerce infringe five patents related to methods for efficiently modifying software on remote devices.
  • Technical Context: The technology concerns client-server architectures where applications on remote devices are updated using small data modules, avoiding the need to transmit and reinstall entire new software applications.
  • Key Procedural History: The complaint notes that terms from the asserted patent family were previously construed by the E.D. Tex. in S3G Tech. LLC v. Unikey Techs., Inc., suggesting a pre-existing judicial interpretation of key language. The complaint also references the patents' prosecution history, noting an Examiner's finding of non-obviousness over the prior art, and mentions that Plaintiff has licensed the patent portfolio to third parties.

Case Timeline

Date Event
2009-07-23 Earliest Priority Date for all Asserted Patents
2015-07-14 U.S. Patent No. 9,081,897 Issues
2016-04-05 U.S. Patent No. 9,304,758 Issues
2018-04-10 U.S. Patent No. 9,940,124 Issues
2023-05-30 U.S. Patent No. 11,662,995 Issues
2024-09-24 U.S. Patent No. 12,099,830 Issues
2025-06-09 Accused Android App Last Updated
2025-06-11 Accused iOS App Last Updated
2025-10-16 Complaint Filing Date

II. Technology and Patent(s)-in-Suit Analysis

U.S. Patent No. 9,081,897 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

The Invention Explained

  • Problem Addressed: The patent family addresses the technical challenge of updating software applications distributed across a network of remote hardware devices. Distributing large, newly compiled software applications, particularly over wireless networks, can be slow, consume excessive bandwidth, and be difficult to manage across different device versions (Compl. ¶¶33-35; ’124 Patent, col. 2:12-64).
  • The Patented Solution: The invention proposes a three-entity system comprising a "terminal machine" (e.g., a user's device), a "service provider machine" (e.g., a backend server), and an "update server machine" (Compl. ¶36; ’124 Patent, Fig. 1). Instead of sending a full application, the update server sends small "dialogue modules" to the other machines. These modules modify only a specific portion of the application—the "code," which is defined as information that must be translated before it can be executed—without altering the underlying, directly executable instructions of the application (Compl. ¶¶37-38; ’124 Patent, col. 4:30-40). This allows for efficient changes to application functionality, such as the sequence of prompts in a user dialogue.
  • Technical Importance: This architectural approach is intended to reduce network bandwidth usage, enabling efficient modification and customization of remote applications over networks with limited data transfer capacity (Compl. ¶45; ’124 Patent, col. 6:61-63).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1 (Compl. ¶53).
  • Claim 1 of the ’897 Patent requires:
    • An update server machine operable for sending a terminal dialogue module and a provider dialogue module.
    • A terminal machine running a terminal application, which comprises a first set of computer-executable instructions and a first set of code that cannot execute directly on the terminal processor.
    • A service provider machine running a provider application, which comprises a second set of computer-executable instructions and a second set of code that cannot execute directly on the provider processor.
    • The terminal dialogue module modifies the first set of code to produce updated code, adapting the terminal application to use a modified dialogue sequence.
    • The provider dialogue module modifies the second set of code to produce updated code, adapting the provider application for the modified dialogue.
    • The dialogue modules do not modify the sets of computer-executable instructions.
  • The complaint does not explicitly reserve the right to assert dependent claims for this patent.

U.S. Patent No. 9,940,124 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

The Invention Explained

  • Problem Addressed: As with its parent, the ’897 Patent, this patent addresses the inefficiency of distributing full software updates to remote devices over networks, especially those with limited bandwidth (Compl. ¶¶33-35; ’124 Patent, col. 2:29-56).
  • The Patented Solution: The ’124 Patent claims a method for conducting and modifying a dialogue between a terminal machine and a service provider machine. The method includes displaying a prompt, accepting and communicating user data, and then receiving a "terminal dialogue module." This module updates a portion of the application's "first code" to create "first updated code," which in turn adapts the application to display a second prompt or conduct a modified dialogue sequence. The patent specifies that at least one of these code sets comprises "intermediate code," reinforcing the concept of code that requires translation before execution (’124 Patent, col. 19:1-35; Compl. ¶¶73-77).
  • Technical Importance: The claimed method provides a specific process for dynamically altering software behavior on a remote device in response to user interaction or server-side logic, without requiring a complete application reinstall (Compl. ¶45; ’124 Patent, col. 14:66-15:6).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1 (Compl. ¶71).
  • Claim 1 of the ’124 Patent requires a method comprising the steps of:
    • Displaying a first prompt on a terminal machine via a terminal application comprising first computer-executable instructions and first code.
    • Accepting a first data entry at the terminal machine.
    • Communicating information associated with the data entry to a service provider machine running a provider application.
    • Storing at least a portion of this information in memory for analysis.
    • Receiving, at the terminal machine, a terminal dialogue module that updates at least a portion of the first code to produce first updated code.
    • The first updated code adapts the terminal application to display a second prompt for a modified dialogue sequence.
    • At least one of the first code, second code, and first updated code comprises intermediate code.
  • The complaint does not explicitly reserve the right to assert dependent claims for this patent.

U.S. Patent No. 9,304,758 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

  • Technology Synopsis: This patent claims a method similar to the ’124 Patent but adds a specific technical limitation. It requires that a received terminal dialogue module replaces (rather than generally updates) a portion of the application's code, and specifies that at least one of the code sets involved comprises "Java Byte code" (Compl. ¶95).
  • Asserted Claims: Independent claim 1 (Compl. ¶90).
  • Accused Features: The complaint alleges that information sent from Defendant's server, such as in JSON format, replaces a portion of the Android app's bytecode (which is alleged to be Java Byte code) to update features like "My Lists" (Compl. ¶¶95, 97).

U.S. Patent No. 11,662,995 - "Network Efficient Location-Based Dialogue Sequence Using Virtual Processor"

  • Technology Synopsis: This patent claims a method for conducting a dialogue between at least two separate user devices, facilitated by one or more provider applications. A key step involves a provider application receiving "second code" from a first user device, which supplements existing "first code" to produce "first updated code." This updated code then facilitates the dialogue sequence between the first device and a second user device (Compl. ¶¶109, 112).
  • Asserted Claims: Independent claim 1 (Compl. ¶108).
  • Accused Features: The accused functionality involves a user on one device placing an order, which sends code for a new "My Lists" item to Defendant's server. This is alleged to supplement the server's code, which then facilitates the dialogue with a second user device where the updated list appears (Compl. ¶¶110-116).

U.S. Patent No. 12,099,830 - "Network Efficient And User Experience Optimized Dialogue Sequence Between User Devices"

  • Technology Synopsis: This patent claims a method focused on a single user device where an application receives an authorization signal and subsequently receives "second code" (e.g., an update). This second code allows the application to conduct an updated portion of its dialogue sequence. A central element is the requirement that the application "continues to operate when the second code is received," emphasizing a live, non-disruptive update process (Compl. ¶¶131, 134).
  • Asserted Claims: Independent claim 1 (Compl. ¶129).
  • Accused Features: The accused method involves a user logging into the Total Wine app (authorization) and the app then receiving new data (e.g., for a "My List" item) that updates its functionality without the app needing to shut down or restart (Compl. ¶¶133-134).

III. The Accused Instrumentality

Product Identification

  • The accused instrumentalities are Defendants' mobile applications for Android and iOS, branded as "Total Wine & More," along with the supporting backend systems, servers, and software that facilitate their use (collectively, the "Accused System") (Compl. ¶7).

Functionality and Market Context

  • The Accused System provides an e-commerce platform allowing customers to search product selections, place orders for in-store pickup or delivery, track orders, and manage personalized lists (Compl. ¶¶23, 55). The complaint provides a screenshot from an app store listing that describes features such as "EASY ORDERING," "IN-STORE PICKUP," and "ORDER TRACKING" (Compl. p. 9). The complaint frames this technology as a key part of Defendants' "omni-channel retailer" strategy, intended to create a "better customer-facing experience" and make shopping more convenient (Compl. ¶¶22-23). The "My Lists" feature is specifically identified as an infringing functionality (Compl. ¶55, fn 10).

IV. Analysis of Infringement Allegations

U.S. Patent No. 9,081,897 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
an update server machine ... operable for sending a terminal dialogue module to a respective terminal machine and a provider dialogue module to a respective service provider machine... A user's device or Defendant's server sends portions of a "My Lists" item, alleged to be dialogue modules, to the app and the server respectively (Compl. ¶55). ¶55 col. 6:25-30
a terminal machine ... configured to run a terminal application ... wherein the terminal application comprises a first set of computer-executable instructions and a first set of code ... not able to execute directly on the terminal processor... A user's smartphone running the Total Wine app. The app is alleged to comprise the Android Runtime (ART) as the "computer-executable instructions" and the app's bytecode as the "code" that cannot be directly executed (Compl. ¶56). ¶56 col. 7:56-61
a service provider machine ... configured to run a provider application ... wherein the provider application comprises a second set of computer-executable instructions and a second set of code ... not able to execute directly on the provider processor... Defendant's server running its backend application. The application is alleged to comprise the .NET Common Language Runtime (CLR) as "computer-executable instructions" and the .NET program as the "code" (Compl. ¶57). ¶57 col. 7:27-32
the terminal dialogue module modifies the first set of code to produce a first set of updated code, wherein the first set of updated code adapts the terminal application to use a modified dialogue sequence... Information for a "My Lists" item (the alleged terminal dialogue module) is communicated to the app, modifying its bytecode to produce updated code that adapts the app to show a modified list or sequence of prompts (Compl. ¶58). ¶58 col. 8:63-9:3
wherein the terminal dialogue module does not modify the first set of computer-executable instructions... The Android Runtime (ART) is alleged to be the first set of computer-executable instructions and is not modified by the terminal dialogue module (Compl. ¶58, referencing ¶25). ¶58 col. 8:14-16

U.S. Patent No. 9,940,124 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
displaying a first prompt on a terminal display of a terminal machine by running a terminal application, the terminal application comprising first computer-executable instructions and first code... The Total Wine app prompts a user to create or review a "My Lists" item. The application is alleged to comprise the Android Runtime (executable instructions) and the app's bytecode (code) (Compl. ¶73). ¶73 col. 19:1-5
accepting a first data entry at the terminal machine... A user interacts with the prompt to create, order, edit, or delete a "My Lists" item (Compl. ¶73). ¶74 col. 19:6-7
communicating information associated with the first data entry from the terminal machine to... a service provider machine... The user's interactions (e.g., creating a new list item) are communicated from the app to Defendant's server (Compl. ¶75). ¶75 col. 19:10-15
receiving, at the terminal machine, a terminal dialogue module that updates at least a portion of the first code to produce first updated code... The app on the user's device receives information from the server (e.g., in JSON format) which updates the app's bytecode (the "first code") to produce "first updated code" that reflects the new state of the "My Lists" item (Compl. ¶77). ¶77 col. 19:21-25
wherein the first updated code adapts the terminal application to display a second prompt for the terminal machine's portion of a modified dialogue sequence... The updated bytecode causes the app to display a new or modified list, which constitutes a second prompt or modified dialogue sequence (e.g., the ability to access a new list item) (Compl. ¶77). ¶77 col. 19:25-29
wherein at least one of the first code, the second code, and the first updated code comprise intermediate code. The app's bytecode is identified as the "first code" and "first updated code," which the complaint alleges comprises intermediate code (Compl. ¶77). ¶77 col. 19:30-32

Identified Points of Contention

  • Scope Questions: A central question may be whether the data exchanged between the app and server (e.g., JSON objects representing list items) constitutes a "dialogue module" that "modifies...code" as contemplated by the patents. The dispute may focus on whether this is a structural modification of the application's instruction set or merely data being processed by an unmodified application.
  • Technical Questions: The complaint's mapping of the accused system to the claims raises technical questions. For instance, does the Android Runtime (ART) function as the claimed "first set of computer-executable instructions" separate from the app's bytecode (the "first set of code") in the specific manner required by the claims? The actual software architecture and operation of the accused app and backend will be critical to determining if they align with the patent's specific two-part (instructions and code) software structure.

V. Key Claim Terms for Construction

The Term: "code"

  • Context and Importance: The infringement theory hinges on this term. The patents define "code" as "information that must be translated by the software application before it can be implemented on the machine processor" (Compl. ¶37; ’124 Patent, col. 4:30-40). Plaintiff alleges that both the mobile app's bytecode and data payloads like JSON meet this definition (Compl. ¶¶56, 77). The scope of this term will be dispositive.
  • Intrinsic Evidence for Interpretation:
    • Evidence for a Broader Interpretation: The specification discloses that a "dialogue module" can contain "code or other data" (as noted in a prior court construction, Compl. ¶41), which may support an argument that "code" can encompass data structures that are interpreted by an application to alter its behavior.
    • Evidence for a Narrower Interpretation: The patent's explicit definition requiring translation before implementation, coupled with examples like "Java Byte Code" (’124 Patent, col. 8:13), may support a narrower construction limited to instructions for a virtual machine, as distinct from application-level data.

The Term: "dialogue module"

  • Context and Importance: Plaintiff alleges that data representing a "My Lists" item is a "terminal dialogue module" (Compl. ¶55). Whether a data object like a JSON payload qualifies as the claimed "module" is a key issue.
  • Intrinsic Evidence for Interpretation:
    • Evidence for a Broader Interpretation: The specification states a dialogue module is sent to "adapt[] the terminal application to perform a modified dialogue protocol" (’124 Patent, col. 9:2-4). If the JSON data causes the app to change its sequence of prompts, it could be argued to fit this functional description.
    • Evidence for a Narrower Interpretation: The complaint cites a prior court construction holding that "module" refers to "a particular type of structure rather than to any structure for performing a function" (Compl. ¶41). This suggests that a "dialogue module" must have a specific, claimed structure, which may not be met by a simple data object.

VI. Other Allegations

  • Indirect Infringement: The complaint alleges Defendants induce infringement by marketing and instructing customers to download and use the accused apps in a manner that practices the claimed methods (Compl. ¶¶64, 83). Contributory infringement is alleged on the basis that the Accused System is not a staple article of commerce and is especially made to be used in an infringing manner (Compl. ¶¶65, 84).
  • Willful Infringement: Willfulness is alleged based on Defendants' knowledge of the asserted patents "at least since the filing of the original complaint" (Compl. ¶¶52, 70).

VII. Analyst’s Conclusion: Key Questions for the Case

  • A core issue will be one of definitional scope: can the term "code," which the patents define as information requiring translation before execution, be construed to encompass application-level data like a JSON object, or is its meaning restricted to virtual machine instructions such as bytecode? The outcome of this construction will significantly impact the infringement analysis.
  • A second key question will be one of technical operation: does the accused app's process of receiving data from a server and updating a user-facing list constitute "modifying" the application's "code" as required by the claims? The case may turn on whether this is found to be a structural alteration of the application's logic or simply the routine processing of new data by an existing, unmodified program.
  • A third issue will be one of architectural mapping: a central evidentiary question will be whether the accused Android app/ART and .NET/CLR backend architecture aligns with the patents' specific software model, which requires both the terminal and service provider applications to be composed of two distinct parts: a set of directly executable instructions and a separate set of modifiable "code."