[00:00:00] Speaker 00: cases documented for oral argument this morning. [00:00:04] Speaker 00: Our first case is Impact Engine Inc. [00:00:07] Speaker 00: versus Google LLC, document number 22-2291. [00:00:11] Speaker 00: Mr. Wilcox, you have reserved three minutes of time for rebuttal, is that right? [00:00:17] Speaker 02: That's correct, Judge Raina. [00:00:19] Speaker 00: Okay, we're ready to roll. [00:00:23] Speaker 02: Thank you, Judge Raina, and may it please the court. [00:00:25] Speaker 02: Jason Wilcox on behalf of Impact Engine. [00:00:28] Speaker 02: My client invented a better way to create, update, and distribute media rich online ads that use less bandwidth, that are easier to create and manipulate, and that are far more customizable [00:00:39] Speaker 02: and reusable than ads that were created through the other available technology at the time. [00:00:44] Speaker 02: An impact engine achieved those benefits through two technological innovations. [00:00:49] Speaker 02: A data structure that represents the ad as a series of independent layers built up from templates and separate media files, and an architecture that takes the software for creating and managing the ads off the desktop and puts it onto a server. [00:01:05] Speaker 00: Let's get to some of the substantive issues at play here. [00:01:09] Speaker 00: Talk to us about co-construction and when you think that was error. [00:01:15] Speaker 02: So if you're talking about the means plus function terms, Judge Raina, on the means plus function terms, why we think that was error is the district court identified over 300 lines of corresponding structure for the rendering function that's performed by the project viewer. [00:01:30] Speaker 02: It spans from column four, lines 27, to column nine, lines 19. [00:01:35] Speaker 02: And in those columns, you have other claimed functions that are covered. [00:01:39] Speaker 02: So for example, column four, lines 48 to 58, it talks about autoplay on and autoplay off. [00:01:46] Speaker 02: Well, those are a separate function that is claimed in one of the patents. [00:01:51] Speaker 02: It's the 6253 patent claim one, but it's not claimed in the 497 patent at all, and it's not part of the rendering function. [00:01:58] Speaker 02: It's a separate function that's performed. [00:02:00] Speaker 01: So I'm curious, why does it matter that in the original claim construction order, the district court referred to five columns or something? [00:02:14] Speaker 01: If when it came time for summary judgment, this is summary judgment? [00:02:19] Speaker 02: This is summary judgment, Judge Romper, yes. [00:02:21] Speaker 01: The district court looked at the particular function and looked kind of [00:02:29] Speaker 01: throughout this larger range, those five columns, columns four through nine, for those structures that perform that particular function and found they had not been shown. [00:02:45] Speaker 01: I don't see why, I don't see that the district court [00:02:50] Speaker 01: asked for the presence of structures that were immaterial to the particular function of the claim? [00:03:01] Speaker 02: Well, what the judicial court said at Appendix 24 was that it had identified all of the structure from Column 4, Lines 27 to Column 9, Line 19 as the structure that performs rendering, and that our expert hadn't applied that in his opinion. [00:03:18] Speaker 02: Now, that's wrong in its own terms. [00:03:19] Speaker 02: When you just look at the structure, the district court was not picking and choosing. [00:03:24] Speaker 02: Well, we think in here, this is the structure that performs rendering, and this is the structure that performs auto-play. [00:03:30] Speaker 02: And parsing it in that way, at appendix 24 to 25, the district court said that we needed to apply all of that structure. [00:03:37] Speaker 02: Now, our expert did do that. [00:03:39] Speaker 04: What was there between the claim construction order and the summary judgment motions? [00:03:44] Speaker 02: I'm sorry, Judge, you say that. [00:03:45] Speaker 04: How wrong? [00:03:46] Speaker 04: How much time was there between the claim construction order and the summary judgment? [00:03:50] Speaker 02: I don't know. [00:03:51] Speaker 02: The exact time was at least a year, if not more. [00:03:53] Speaker 04: So when you got the claim construction order and you saw that she had cited these multiple columns in the specification, and you presumably knew that some of it did not relate to project viewer rendering, why didn't you ask for clarification? [00:04:08] Speaker 02: Well, so what we did is we looked at Appendix 7, which is the claim construction. [00:04:12] Speaker 02: And what the district court said was she identified the four functions that the project viewer performed spread across all of the claims. [00:04:20] Speaker 02: And then the district court said that the structure that performs those functions, so all of those functions, was this entire range. [00:04:28] Speaker 02: So we took that to mean that she had identified that this is a means plus function term. [00:04:31] Speaker 02: And here is the structure that corresponds to the functions writ large in the left-hand corner. [00:04:36] Speaker 04: If there is that specification include decided parts of the specification includes structure that doesn't relate to those functions, right? [00:04:45] Speaker 04: That's correct. [00:04:45] Speaker 04: Well then why don't you ask for clarification and say what structure relates to the specific functions at issue? [00:04:52] Speaker 04: Because the functions is not enough to finish a means plus function. [00:04:56] Speaker 04: Client construction, you actually have to identify the corresponding structure. [00:05:00] Speaker 02: I agree, Judge Hughes, and so the way that we decided to approach that was in our expert reports and in our summary judgment briefing to say, here's what we think is the structure that corresponds within that range that you've identified. [00:05:13] Speaker 02: Here's the structure that we think corresponds to each function. [00:05:16] Speaker 00: When did you first discover that the court was contemplating or about to base means plus function on those five columns? [00:05:26] Speaker 02: at the summary judgment hearing, Your Honor. [00:05:28] Speaker 00: It was a dispute between the parties where we were saying... Did you ever choose to dispute that at summary judgment? [00:05:34] Speaker 02: Well, we did because what happened is Google teed it up as saying, we think that for rendering, it's going to be all five columns. [00:05:41] Speaker 02: And so then we pushed back and said, for example, at appendix 98, 55 to 57, we don't think that is right, and explained to the district court why we didn't think that was right. [00:05:52] Speaker 02: But then we also, after we did that, [00:05:55] Speaker 02: Laid out at appendix 98, 60 to 63. [00:05:59] Speaker 02: Why, even if you think it's all five columns, it's there. [00:06:03] Speaker 02: And that's what the district court also overlooked. [00:06:05] Speaker 02: If you look at appendix 24 to 25, she says that impact engine didn't apply her construction because it requires all of the corresponding structure across all five columns. [00:06:17] Speaker 02: And we did, as an alternative argument. [00:06:21] Speaker 01: I may be misremembering this, so correct whatever I'm about to say that you think is wrong. [00:06:29] Speaker 01: The initial claim construction order talks about the full five columns. [00:06:33] Speaker 01: Then you get to the summary judgment and the language. [00:06:37] Speaker 01: that the district court uses is all about the rendering function. [00:06:44] Speaker 01: You, in your expert report, did not show the presence of the structural support for that. [00:06:54] Speaker 01: And that's because your expert report didn't actually walk through what the structures were in the spec. [00:07:02] Speaker 01: Instead, as I understand it, and this is where you'll correct me, he created his own kind of functional categories and said, look, that's all there. [00:07:15] Speaker 01: So why wasn't your job [00:07:18] Speaker 01: to say here, the rendering structures are only these we had evidence of those particular rendering structures. [00:07:32] Speaker 01: And why, in the absence of that, does anything else matter? [00:07:36] Speaker 02: Well, I think we did make that argument, Judge Toronto. [00:07:39] Speaker 02: We point out in our brief, and you can see it summarized in the table that's at page 59 of our blue brief, what function we think corresponds to rendering. [00:07:47] Speaker 02: We think it's column four, lines 27 to 42. [00:07:51] Speaker 02: And then as far as where our expert addressed that, we addressed it in our summary judgment brief at appendix 98, 57 to 60. [00:07:58] Speaker 02: And our expert addressed those specific structures [00:08:01] Speaker 02: at 83.55 to 88, 86.47 to 60, and 88.80 to 86. [00:08:05] Speaker 02: So it was in the record below. [00:08:09] Speaker 02: We made those arguments in our brief here before the court. [00:08:12] Speaker 02: And we do think the structure is much more limited for rendering. [00:08:15] Speaker 02: And it's only supposed to be column four, lines 27 to 42, which lays out the specific algorithm for how you render the communication. [00:08:23] Speaker 00: And you made this argument at summary judgment? [00:08:27] Speaker 02: We did make this argument at summary judgment at appendix 9857 to 60 with citing support to our expert report. [00:08:33] Speaker 02: And then we went on at appendix 9860 to 63 to talk about how even if you think it requires all five columns of structure, here's where our expert identified all five columns of that structure. [00:08:45] Speaker 02: Google at page 56 of its brief points out that, for example, our experts didn't look at the core design files that are listed at column 459 through 859, but that just shows why the district court's construction is wrong. [00:09:00] Speaker 02: That's a preferred embodiment. [00:09:01] Speaker 02: All you're supposed to do for a means plus function claim is identify the necessary algorithm, if it's software, [00:09:07] Speaker 02: That's identified at 4, 27 to 42. [00:09:10] Speaker 02: If you look at them, this additional structure where you're down to specific file names and having to have this exact file name and function called structure, that's a preferred embodiment. [00:09:19] Speaker 02: You can see that because at those columns, it's consistently called in an embodiment. [00:09:23] Speaker 02: And because of column 3, line 57, or sorry, 47 to 56, it also is called a preferred embodiment or an exemplary embodiment. [00:09:33] Speaker 02: So Judge Toronto, I think we did make the exact argument that you believe that we needed to make to tee it up for this court. [00:09:40] Speaker 02: We made it here in our brief. [00:09:41] Speaker 01: On the legal point, I guess I suppose you had a clear means plus function claim computer recently. [00:09:52] Speaker 01: We're looking for a structure for means for carrying out something on a computer. [00:09:58] Speaker 01: Yes. [00:10:00] Speaker 02: Yes. [00:10:00] Speaker 01: What there is is a very specific set of code. [00:10:05] Speaker 01: Wouldn't the inquiry be [00:10:08] Speaker 01: that you'd say that very specific code is the structure, and then the claim covers that specific code and equivalence to it. [00:10:17] Speaker 01: I thought I heard you say a minute ago that you can ignore the specifics of the code and just think about a general algorithm that might be of which the specific code is an instance. [00:10:35] Speaker 02: uh... well let me know that that's what i'm confused let me be clear because i i think maybe i was a little bit confusing so we think you have to have the structure that that's a column four lines twenty seven to forty two because that lays out the algorithm and as this court has said in cases like university of pittsburgh and fish and typhoon technologies which are looking for is the algorithm but then uh... the idea that they have to get together but if it goes on [00:10:58] Speaker 01: Do you ignore the specifics that followed it? [00:11:03] Speaker 02: That's exactly what this court said in University of Pittsburgh. [00:11:06] Speaker 02: The entire argument there was there was like here we lay out the general algorithm and then there was a specific implementation that was discussed. [00:11:14] Speaker 02: And this court said, all that's required is the algorithm. [00:11:18] Speaker 02: The specific implementation that follows is just a preferred embodiment. [00:11:21] Speaker 02: That's also consistent with this court's cases, like MezaLingua, which said the same thing. [00:11:26] Speaker 02: You don't read in preferred embodiments into the means plus function. [00:11:29] Speaker 02: You look at what's the necessary structure. [00:11:31] Speaker 02: And for software, it's an algorithm. [00:11:33] Speaker 00: What's the implication for the other issues that are before us? [00:11:38] Speaker 00: with respect to how we decide this particular question. [00:11:43] Speaker 00: Let's assume that we were to vacate and remand. [00:11:45] Speaker 00: What other issues are implicated? [00:11:48] Speaker 02: If you vacate and remand, that takes care of... On the claim construction? [00:11:52] Speaker 02: On the claim construction. [00:11:53] Speaker 02: That takes care of two of the claims, or two of the patents. [00:11:57] Speaker 02: It takes care of the 497 patent claim nine, and it takes care of the 253 patent. [00:12:01] Speaker 02: You still need to address the 101 issue, and you still need to address our written description argument for claim 30 of the 898 patent. [00:12:10] Speaker 02: And for claim 30 of the 898 patent, let me address that really quickly. [00:12:13] Speaker 00: The district court, without citing any... The 101 issue that you're talking about that survives as a non-project viewer claims? [00:12:21] Speaker 02: There are some project viewer claims that were invalidated by the district court on 101. [00:12:28] Speaker 02: For example, the claims of the 832, 632, and 8253 patent, because the district court overlooked the course by the time you got to the claim construction ruling, didn't treat them as means plus function. [00:12:40] Speaker 02: At Appendix 26, you instead treated them as just generic applications without looking through the corresponding structure. [00:12:48] Speaker 02: Any questions? [00:12:49] Speaker 02: which you need to do according to ENFISH. [00:12:52] Speaker 02: When you have a means plus function term, you need to look at what's the corresponding structure and decide if that supplies an inventive concept. [00:12:58] Speaker 02: Here we think it does for the reasons we laid out in our brief. [00:13:01] Speaker 02: The district court just simply overlooked that and treated Project Viewer for at least the 832, 632, and 8253 patents as if it wasn't [00:13:10] Speaker 02: a means-plus-function term at all, despite an Appendix VII interclaiming instruction saying it was a means-plus-function term. [00:13:17] Speaker 02: So for that reason alone, at least those means-plus-function terms need to be at a minimum remanded for the district court to reevaluate 101 after treating them as means-plus-function terms with the appropriate corresponding structure. [00:13:28] Speaker 02: We think the court can go ahead and reverse. [00:13:31] Speaker 01: Can I take you back just for one minute before you sit down to the column four lines? [00:13:38] Speaker 01: What is it? [00:13:39] Speaker 01: 27 to 42. [00:13:43] Speaker 01: What about that would you describe as an algorithm? [00:13:46] Speaker 01: Well, it tells you there that you need to have... So the thing is getting an object, and it's doing what I understand, maybe incorrectly, is the definition of rendering, which is serializing it, taking something [00:14:01] Speaker 01: to simplify that sort of two-dimensional and making it one-dimensional so that you have an actual sequence of bits. [00:14:07] Speaker 01: But does it actually say how to do that? [00:14:11] Speaker 02: Well, what it says is you have to take the project object. [00:14:15] Speaker 02: It has to have the slides that make up the communication in an array. [00:14:20] Speaker 02: And then it says what it does is it loads and interprets the project object and then determines a load sequence for the communication project content. [00:14:28] Speaker 01: And then that project object has to. [00:14:31] Speaker 01: That doesn't feel to me much like what I would call an algorithm. [00:14:35] Speaker 01: It says, get an object, render it. [00:14:39] Speaker 02: Well, I think it is enough of an algorithm, at least under University of Pittsburgh. [00:14:42] Speaker 02: And I would also say Google, at least initially, at appendix 2552 to 53, thought that was the algorithm and all the structure you needed to. [00:14:50] Speaker 02: To be fair, they went down the column to line 46 in that column. [00:14:55] Speaker 02: But that was their original position, was that that was the algorithm, and that's all you needed. [00:14:59] Speaker 00: When you're saying algorithm, are you saying [00:15:01] Speaker 00: What these terms represent is an ordered steps that you follow in the practice of the claim? [00:15:10] Speaker 02: Yes, it's an ordered step that you follow. [00:15:12] Speaker 02: What you do is you get this project object that has a very specific structure, and then you load it, and then you figure out how you load all of the content beneath it that it has. [00:15:20] Speaker 02: It's built up in this layered form, and that's the algorithm. [00:15:23] Speaker 02: It gives a specific example after that, but you're not required to have that specific example under University of Pittsburgh. [00:15:28] Speaker 02: If I can just make one more point, I recognize I'm slightly over and that I'm eating into my more than eating into my rebuttal time. [00:15:36] Speaker 04: No. [00:15:36] Speaker 02: My final point is just on the non-means plus function claims for 101. [00:15:41] Speaker 02: The reason that you know that they're not ineligible is because the claims claim a communication, which at appendix 11479, the district court said has to be a collection of slides, and those slides have to be built up of a collection of layers. [00:15:56] Speaker 02: So just like in MCRO and in ENFISH, what we have here is specific data formats that take it from the realm of the abstract into the concrete. [00:16:05] Speaker 02: Thank you. [00:16:06] Speaker 00: Well, we're storing your activity by its rebuttal. [00:16:09] Speaker 00: Good morning, Your Honor. [00:16:28] Speaker 03: May I please the Court? [00:16:29] Speaker 03: Good morning, Counselor. [00:16:30] Speaker 03: Defense? [00:16:31] Speaker 03: I'd like to pick up, unless the court has other preferences, with the question Judge Hughes asked about the time between the claim construction and the summary judgment. [00:16:39] Speaker 04: The answer is that was about 15 months, and ... Well, you're not getting that free either, because I think what the district court did here was really confusing by identifying a whole bunch of material without specifically mapping the structure in that to the functions. [00:16:56] Speaker 04: And so I'm left with a hard task of determining what she thought the structure was and how to determine whether you infringe that or not. [00:17:09] Speaker 04: Because I can't, I mean, it's not my job to read these multiple spoke, part of it I know is to know, but it's still not my job to read this and figure out what the structure is in the first instance. [00:17:21] Speaker 04: So rather than you ask for clarification, [00:17:23] Speaker 03: Well, I think it's important to recognize that when Google put forth its mean plus function construction of this term, it proposed almost exactly the same structure for the rendering function that the district court ultimately adopted. [00:17:37] Speaker 03: So Google itemized the... What do you mean? [00:17:39] Speaker 04: So I don't see any where the district court actually said, here's the structure for the rendering function. [00:17:44] Speaker 04: Am I misreading that? [00:17:46] Speaker 04: I thought she just said, here's the columns in this specification that correspond to the structure. [00:17:51] Speaker 03: Well, so what I was referring to was Google's claim construction position. [00:17:55] Speaker 03: So if the court looks at appendix 7395, I'll pull that up too. [00:18:09] Speaker 03: You'll see that Google proposed structure in the table there on 7 to 395, Google proposed structure for the project viewer that is rendering. [00:18:18] Speaker 03: And it proposed 427 to 99, which is almost exactly the same as what the district court adopted in its construction of this term as surrendering. [00:18:28] Speaker 03: And if you look at the district court's claim construction opinion, [00:18:33] Speaker 01: Help me look at what you just were reading. [00:18:35] Speaker 01: That's five columns. [00:18:42] Speaker 04: Yes. [00:18:45] Speaker 04: Everything in all five of those columns is structured for the project viewer rendering function? [00:18:51] Speaker 03: Yes. [00:18:51] Speaker 03: That was the position that we put forward. [00:18:56] Speaker 03: Impact Engine never disputed that at the stage of clean construction. [00:19:02] Speaker 03: And I want to get back to Judge Taranto's question too. [00:19:05] Speaker 01: I think I found that the thing that was footnote five call is? [00:19:10] Speaker 03: Yeah, it's at 73.95 and there's a table there. [00:19:14] Speaker 01: With footnote five call, that's what you're referring to? [00:19:17] Speaker 03: Yes. [00:19:18] Speaker 03: Thank you. [00:19:18] Speaker 00: Yes. [00:19:18] Speaker 00: Yes. [00:19:19] Speaker 00: So St. [00:19:19] Speaker 00: Penner, we've already known, refuted your proposed construction, the corresponding structure that you were proposing. [00:19:26] Speaker 03: That's correct. [00:19:26] Speaker 00: So at the time when claim construction... We're talking about where are we right now, claim construction or summer judgment? [00:19:33] Speaker 03: At claim construction. [00:19:34] Speaker 03: So in May of 2021, the district court issued the claim construction order, the supplemental claim construction order, where it construed Project Viewer. [00:19:43] Speaker 03: And when the parties were briefing that, when claim construction was at issue before the court, [00:19:47] Speaker 03: Google proposed this structure for rendering that I pointed the court to on 73.95. [00:19:53] Speaker 03: Impact Ending's response to that was just to say means plus function doesn't apply. [00:19:57] Speaker 00: And you can see that brief is at... But why doesn't it apply? [00:20:02] Speaker 00: Because there's no corresponding structure or there's no identification of a specific structure that's being asserted as corresponding. [00:20:10] Speaker 03: So, impact engine's position at claim construction was that project viewer is a known familiar term that has structure in itself and doesn't require a means plus function construction. [00:20:20] Speaker 01: So, it wasn't a 126? [00:20:22] Speaker 03: That was their primary argument. [00:20:23] Speaker 03: Yes, exactly. [00:20:24] Speaker 03: And we proposed a means plus function construction, and impact engine's response to that was almost nonexistent. [00:20:30] Speaker 03: They devoted one paragraph to this in their claim construction briefing, which is at Appendix 7564. [00:20:38] Speaker 03: And there, it's the last paragraph on that page before it returns to the rendering term. [00:20:46] Speaker 03: And all that Impact Engine says is that the specification discloses additional structure elsewhere that Google had not pointed out. [00:20:55] Speaker 03: So there's no dispute about what Google said is corresponding to rendering as corresponding to rendering. [00:21:01] Speaker 03: And in fact, Impact Engine's expert under deposition agreed. [00:21:06] Speaker 01: And just to be clear, because this is going a little fast, but the additional structure is what is in flipnote 8 on 7564. [00:21:15] Speaker 01: That's in columns 13 to 14. [00:21:18] Speaker 01: Is that what we're talking about? [00:21:20] Speaker 03: So I'm looking at 7564, lines 16 to 18. [00:21:30] Speaker 01: I thought you used the phrase additional structures. [00:21:33] Speaker 01: That's lines 14 to 16 with footnote 8 attached to it. [00:21:37] Speaker 03: Yeah, so maybe start at line 14. [00:21:40] Speaker 03: Yeah. [00:21:40] Speaker 01: Okay, and footnote 8 is the citation for that additional structures point which refers to columns 13 to 14. [00:21:50] Speaker 03: Yes, and at line [00:21:52] Speaker 03: So I'll just read the quote also, this part at lines 14 to 18. [00:21:57] Speaker 03: Impact Engine said, a person would have understood that the function Google identifies can be formed by additional structures described in the specification. [00:22:04] Speaker 03: Then there's footnote eight. [00:22:06] Speaker 03: And then they go on to say, a corresponding algorithm is discussed at least in the context of figure one and the accompanying text, e.g., figure one, [00:22:15] Speaker 03: 265 to 329, 861 to 95. [00:22:18] Speaker 01: And that last bit is part of Google's. [00:22:21] Speaker 01: Yes. [00:22:22] Speaker 03: So I'm not sure why that was a dispute. [00:22:24] Speaker 01: Right. [00:22:24] Speaker 01: But you said, in fact, it was different from what you presented. [00:22:27] Speaker 01: That's what I was asking. [00:22:29] Speaker 03: I'm sorry. [00:22:30] Speaker 03: I didn't understand. [00:22:31] Speaker 03: Yeah. [00:22:31] Speaker 04: Does any of this response that you're telling us cite the part of column four you're citing to us today? [00:22:40] Speaker 03: The part of Google's proposed structure? [00:22:42] Speaker 03: Yeah. [00:22:42] Speaker 03: Yes, that was included in part of Google's proposal, which was 427 to 99, I believe, which is almost exactly the same as what the district court ultimately did. [00:22:51] Speaker 04: No, no. [00:22:51] Speaker 04: You're reading from their brief, aren't you? [00:22:54] Speaker 03: At 7564 is their brief, yeah. [00:22:55] Speaker 04: Right. [00:22:56] Speaker 04: That's what I meant. [00:22:57] Speaker 04: I see. [00:22:57] Speaker 04: Does any of their claim construction brief cite the parts of column four as the structure that they're talking about today? [00:23:06] Speaker 03: What they say during claim construction was, [00:23:10] Speaker 03: A poster would have understood that the function Google identifies can be performed by additional structure. [00:23:16] Speaker 04: You just had the whole mass of columns. [00:23:19] Speaker 04: The court agreed with you, and they're citing additional stuff. [00:23:22] Speaker 03: Yes. [00:23:22] Speaker 04: But now they're trying to say it's only these few lines in column four. [00:23:26] Speaker 03: Yes. [00:23:27] Speaker 03: And they never said that during claim construction. [00:23:29] Speaker 03: Their expert agreed that the- Did they say it later? [00:23:33] Speaker 01: They said it at summary judgment, which was- Once it was settled that this was a 112-6 claim. [00:23:39] Speaker 01: They then went back and on summary judgment said, well, we actually think that the right structure is something narrower, right? [00:23:47] Speaker 03: Yes, that's exactly right. [00:23:48] Speaker 01: And then what did the district court do with that contention? [00:23:52] Speaker 03: The district court did not treat that as a claim construction argument because it was too late. [00:23:56] Speaker 03: The claim construction was done. [00:23:57] Speaker 04: Did you respond to it? [00:23:59] Speaker 03: We said it was improper. [00:24:00] Speaker 03: It was too late. [00:24:02] Speaker 03: We said all of that. [00:24:02] Speaker 04: Did you say that these lines they cited don't show any structure? [00:24:09] Speaker 03: Yeah, we also said that's too little. [00:24:11] Speaker 03: It's not an algorithm. [00:24:12] Speaker 03: As Judge Toronto was suggesting previously, it doesn't look like an algorithm. [00:24:16] Speaker 03: It's just sort of a recapitulation of the [00:24:18] Speaker 03: Function even in the word sense that we've allowed yes Yes, so we said all that also and the district court did not treat this as a claim construction argument it treated it as a Failure to apply the construction she had already adopted for purposes of infringement so if we take the method word and [00:24:41] Speaker 04: I know they're probably still disputing this means plus function. [00:24:44] Speaker 04: Let's assume it's means plus function. [00:24:45] Speaker 04: And these lines are the only evidence they have of structure in the specification. [00:24:54] Speaker 04: What's your response as to whether that's sufficient structure? [00:24:57] Speaker 03: Are you talking about the? [00:24:59] Speaker 04: The lines on column four that they were raised today. [00:25:02] Speaker 03: That they identify now? [00:25:04] Speaker 03: Yeah. [00:25:05] Speaker 03: As a preliminary matter, I don't think they dispute that 112.6 applies anymore. [00:25:09] Speaker 03: I think they've abandoned that argument at this point. [00:25:11] Speaker 03: But if you were to consider that argument, despite the perpetuity we've raised, I think that that small speck of the specification does not constitute an algorithm. [00:25:23] Speaker 03: It's really just a summary of the function itself again. [00:25:27] Speaker 03: If that were the only structure there, I think it would be indefinite. [00:25:33] Speaker 00: Is it your position that IMPACT has waived somehow any additional argument it may make to the means plus function order? [00:25:44] Speaker 03: As far as proposing a construction, yes. [00:25:47] Speaker 00: They had every opportunity to... The way the argument was, they say, look at that. [00:25:52] Speaker 00: You have five columns of purported structure. [00:25:57] Speaker 00: And the argument is where only one column is [00:26:03] Speaker 00: Corresponding structure. [00:26:05] Speaker 03: Yeah, the way that that matter argument the way I understand that argument Yes, they I think what they're now saying is the district courts construction is wrong because it has all these columns and there's a bunch of stuff in there that is not Corresponding structure to render. [00:26:17] Speaker 00: It's a problem though. [00:26:19] Speaker 00: Well, it's a problem for the court to say I think in the means plus function analysis that [00:26:27] Speaker 00: The corresponding structure is in the five columns of the pattern that so-and-so pages. [00:26:35] Speaker 00: court, go find it, find the parts that apply, and disregard the ones that don't. [00:26:41] Speaker 00: I mean, it just seems that we're doing something here that is not part of our role. [00:26:50] Speaker 03: And I don't think you need to do that. [00:26:52] Speaker 03: Because again, during claim instruction, when this was in dispute and Google was proposing this five columns of structure, Impact Engine's expert was deposed and asked directly [00:27:04] Speaker 03: does that structure that Google identified in the five columns correspond to the rendering function? [00:27:09] Speaker 03: And the expert agreed that yes, that is corresponding structure. [00:27:13] Speaker 03: Yeah, that was the question. [00:27:14] Speaker 03: That said appendix 12466 to 67. [00:27:22] Speaker 03: So the district court was presented with this construction that Google presented. [00:27:27] Speaker 03: There was no alternative means plus function construction presented by Impact Engine. [00:27:31] Speaker 04: Well, I mean, you say that he agreed that all of it was structured, but then they say that in his report somewhere, he actually identified it in more specific ways and said project viewer rendering is just this smaller part [00:27:49] Speaker 04: the whole function and then identified narrower parts. [00:27:53] Speaker 04: So I don't see how a concession that these columns identify the structure necessarily means that he agreed that Gura's system had to perform everything in all five of those columns to infringe. [00:28:10] Speaker 03: Well, that was the point of construing that term. [00:28:12] Speaker 03: And at the time of claim construction, he never made that argument. [00:28:16] Speaker 03: He certainly did come up with a new argument and break up the structure into these nine categories at the summary judgment stage when we were already on to talking about infringement. [00:28:25] Speaker 03: But at the time of claim construction, that argument was never made. [00:28:28] Speaker 04: So your view is you proposed [00:28:31] Speaker 04: The entirety of those five columns, they didn't object to it. [00:28:35] Speaker 04: They even added more stuff in. [00:28:37] Speaker 04: And by the time of the summary judgment stage, that was the claim construction. [00:28:41] Speaker 04: They hadn't asked for a clarification. [00:28:43] Speaker 04: And you clearly don't infringe, because you don't perform everything in all five of those columns, even if today we think that's an overbroad claim construction. [00:28:55] Speaker 04: Yeah, and that's... I mean, what do you do with the fact that claim construction is de novo? [00:29:01] Speaker 04: I mean, it doesn't seem to me that it's right to say all five. [00:29:04] Speaker 04: Everything in all five of those columns is Project Viewer rendering. [00:29:10] Speaker 04: It has all this stuff about different files and all that kind of stuff. [00:29:13] Speaker 04: Maybe that's part of the subsidiary about how you render it, probably your view. [00:29:18] Speaker 04: It seems a little bit too much for me. [00:29:20] Speaker 03: Well, the way I read it, and I'm not a computer code expert either, is that it is a linear discussion of how this works, and there are these core files, and this is the way things are loaded, and it's a very detailed discussion, but corresponding structure can be detailed if that is what is put in there, and all of that is part of the structure. [00:29:39] Speaker 03: And I'll say, as far as the... Can I ask you a question? [00:29:42] Speaker 03: You may not know the answer to it. [00:29:45] Speaker 04: I didn't see where you argued that these claims about project viewer rendering were also ineligible under 101, did you? [00:29:56] Speaker 03: We did make that argument. [00:29:58] Speaker 03: The district court did not decide it, because she decided it on infringement. [00:30:03] Speaker 03: And you didn't appeal on that issue? [00:30:05] Speaker 03: Right. [00:30:06] Speaker 03: We couldn't appeal on that issue, because we did not have a counterclaim of invalidity on those claims. [00:30:11] Speaker 03: We just had an affirmative defense, and we got the judgment of no liability that we wanted. [00:30:15] Speaker 03: So we didn't have an opportunity to cross appeal. [00:30:18] Speaker 03: I wanted to get back to your point about [00:30:21] Speaker 03: the opportunity or the attempt by Impact Engine to change to the nine categories construction after claim construction during summary judgment. [00:30:30] Speaker 03: And I think that's just emblematic of the difficulties we've had litigating this case the whole time. [00:30:35] Speaker 03: The claims have always been a moving target at every point. [00:30:37] Speaker 03: At the first claim construction, at the first motion to dismiss. [00:30:41] Speaker 01: What is the point you're making? [00:30:43] Speaker 01: This kind of discussion. [00:30:44] Speaker 01: You go back to history and say, look what a mess it is. [00:30:48] Speaker 01: My mind just shuts down because I have no idea what to do with it. [00:30:51] Speaker 01: It's not an argument that I'm being asked to rule on. [00:30:54] Speaker 01: That's higher. [00:30:55] Speaker 01: And I don't get it. [00:30:56] Speaker 03: That's fair. [00:30:56] Speaker 03: So I'll make it concrete. [00:30:57] Speaker 03: Just one example. [00:30:59] Speaker 03: So counsel, before he sat down, made a point to talk about how layers and slides are a really important, inventive part of the claims here. [00:31:09] Speaker 03: And they should make the claims survive under 101. [00:31:12] Speaker 03: So they've made that argument now on appeal for purposes of 101 when invalidity is at issue. [00:31:17] Speaker 03: But during claim instruction and during summary judgment, [00:31:24] Speaker 03: they made the opposite argument that the claims did not even require layers. [00:31:29] Speaker 03: And that's not in the appendix right now. [00:31:31] Speaker 03: We were surprised that they made this argument in reply, so we didn't put it in the appendix. [00:31:35] Speaker 03: But if the court looks at ECF number 336, that's impact engines opposition to motion for summary judgment, at page 19, you'll see an argument that the claims don't require layers unless the claim actually expressly refers to layers. [00:31:51] Speaker 03: So that's directly contrary to what they're saying now. [00:31:54] Speaker 04: when we get to... Is that because your accused devices don't have layers? [00:32:01] Speaker 03: That's an argument we made for non-infringement, and they said the claims don't require layers. [00:32:04] Speaker 03: But now, when we're talking about indolentity, layers are very important and they're a critical inventive concept. [00:32:09] Speaker 01: Can I ask you, your opposite member referred to University of Pittsburgh case as teaching something about [00:32:22] Speaker 01: what exactly one looks for in the spec when the question is, is there an algorithm for 112, I guess, F purposes, or six purposes, whatever one calls it. [00:32:38] Speaker 01: Can you clarify that? [00:32:41] Speaker 03: So the way I read that case is that the issue there was there was a structure described [00:32:47] Speaker 03: And then there were additional embodiments, possible more specific embodiments that were within that more general structure. [00:32:55] Speaker 03: And the error there was requiring the more specific embodiments. [00:33:00] Speaker 03: Here the way I read the spec, and the way I think the district court did too, was that the discussion of [00:33:07] Speaker 01: the specifics of the only structure. [00:33:09] Speaker 01: That's right, that's exactly right. [00:33:12] Speaker 01: So the word linear, so I understand, correct me if I'm wrong, that the rendering here, which everybody puts little brackets, serializing, what's going on there is that there are these [00:33:28] Speaker 01: When stuff is written in object code, it doesn't have a linear structure, and in order to send it, to put it into a communication, you have to translate that into something you can send bit by bit by bit by bit. [00:33:42] Speaker 01: Is that the right picture to have in mind? [00:33:45] Speaker 03: That's generally how I understand it, too. [00:33:46] Speaker 03: The district court. [00:33:48] Speaker 01: And is it your view that everything, sort of starting at column four, line 42, after the general paragraph that just says, do rendering, do what I just said, is in fact that process of taking objects, files, but particularly objects, and translating that into something that you can communicate in a linear fashion? [00:34:11] Speaker 03: Yes, loading them sequentially in the right order, and then the way the district court construed rendering, this is at appendix three, is serializing project slides and content into a format that can be stored or transmitted. [00:34:23] Speaker 01: You might sympathize with somebody who is told that the definition of rendering is serializing and it stops there, has not quite provided an adequate definition. [00:34:37] Speaker 03: I see the point there, yes, Your Honor. [00:34:41] Speaker 00: Okay, we're out of time. [00:34:43] Speaker 00: Thank you. [00:34:43] Speaker 00: Thank you guys. [00:34:50] Speaker 00: You've got three minutes. [00:34:52] Speaker 02: Thank you, Judge Raina. [00:34:54] Speaker 02: So I think the easiest way to tell that the corresponding structure the district court identified goes beyond the function for rendering is to look at column four, lines 48 to 58. [00:35:05] Speaker 02: And in those columns, it talks about communication project playback using two states, autoplay on and autoplay off, and then describes an algorithm with specific details about how you perform that. [00:35:18] Speaker 02: That's not about how you render the communication. [00:35:21] Speaker 02: That's what you do at the, essentially, the client device after the communication has been rendered. [00:35:28] Speaker 04: Where did you tell the district court that client construction was wrong and make this argument? [00:35:33] Speaker 02: We made it in our summary judgment brief at appendix 95, sorry, 98, 55 to 57, and our expert made it in his report. [00:35:43] Speaker 02: You know, all the structure we're identifying here [00:35:45] Speaker 02: on appeal is the exact same structure that we identified in our summary judgment briefing. [00:35:49] Speaker 04: That isn't that too late. [00:35:51] Speaker 04: Well, it's not too late because... The district court's already made its claim construction order, and in the briefing that Google appointed me to now, it doesn't appear that you wanted this not to be a means plus function at all, but then when you responded to them on what structure, you didn't dispute what they said and you added even more in. [00:36:12] Speaker 04: Well, I think that this structure... And now we're back down to [00:36:15] Speaker 04: half a dozen bonds or so in one column that nobody was told about until the summary judgment briefing on infringement. [00:36:23] Speaker 02: Well, I think what we did is the district court made a claim construction at Appendix 7. [00:36:27] Speaker 02: And then we worked within the bounds of that claim construction moving forward, including on summary judgment. [00:36:32] Speaker 02: And in that claim construction, the district court didn't identify the corresponding structure. [00:36:38] Speaker 00: I don't see where you objected. [00:36:40] Speaker 00: We don't see where you disputed the claim construction that was achieved by the court. [00:36:45] Speaker 00: And even when we get to the summary judgment stage, we have to crawl around to see if this argument has been preserved. [00:36:55] Speaker 00: I sympathize with you, but on the other hand, we have to see if we have an actual issue that's controverted, that's in dispute. [00:37:07] Speaker 02: Well, it was certainly in dispute in front of the district court at summary judgment when we got to that phase and we had a long... You disputed the court using those five columns of... [00:37:18] Speaker 00: And where did you dispute? [00:37:21] Speaker 00: What can we see in the record of that? [00:37:23] Speaker 02: So let me give you the exact sites, Judge Raina. [00:37:25] Speaker 02: So in our summary judgment brief, it would have been at appendix 9855. [00:37:29] Speaker 02: Show me the record. [00:37:33] Speaker 02: Yeah, it's at appendix 9855 to 57 in our summary judgment brief. [00:37:39] Speaker 02: And then I can tell you where in our expert report that reference is after. [00:37:44] Speaker 02: uh... after you've had an opportunity to look at those. [00:37:49] Speaker 02: Ninety eight fifty five. [00:37:50] Speaker 00: Ninety sixty four. [00:37:58] Speaker 01: So this carries over from nine eight five five to five six. [00:38:02] Speaker 02: To five six and then through five seven. [00:38:05] Speaker 02: And at the end there, including talking about the University of Pittsburgh case, so [00:38:10] Speaker 02: We said that Google misstated the court's construction because we didn't think that the court had actually adopted for rendering all of those columns. [00:38:17] Speaker 02: And then we explained why that wouldn't be correct. [00:38:20] Speaker 02: And then we were citing to our expert report. [00:38:24] Speaker 00: Where are you from? [00:38:25] Speaker 00: I'm sorry. [00:38:26] Speaker 00: I'm sorry. [00:38:26] Speaker 00: If you go to 9855. [00:38:28] Speaker 00: 9855. [00:38:28] Speaker 00: Yes. [00:38:32] Speaker 02: Sorry. [00:38:33] Speaker 02: It's a big appendix, Your Honor. [00:38:35] Speaker 02: I understand. [00:38:48] Speaker 00: Okay. [00:38:54] Speaker 00: Okay, I have the page. [00:38:55] Speaker 02: Okay, so at 9855, we're talking about Google and Google's response that we're narrowing the Court's construction by pointing to the specific functions that we, or the specific structure we identify. [00:39:07] Speaker 02: We talk about how Google misstates the Court's construction. [00:39:09] Speaker 02: We offer our interpretation of what the Court did at Appendix 7. [00:39:12] Speaker 02: That's the rest of Appendix 9855. [00:39:16] Speaker 02: And then we say at 98 to 56, the court left the parties and their experts to determine which of those disclosed structures are necessary to perform each claimed function. [00:39:24] Speaker 02: And that's exactly what our expert did here. [00:39:27] Speaker 02: And we then cite to what our expert did, and I can give you the citations for that. [00:39:32] Speaker 02: And he identified which structures are necessary to perform each claimed function. [00:39:37] Speaker 02: And then we explain why taking Google's approach would be incorrect. [00:39:42] Speaker 02: And then we go on to apply our view of the structure at appendix 98, 57 through 60. [00:39:48] Speaker 02: And then in terms of where our expert identified the various structures, our expert did it at [00:40:02] Speaker 02: sorry, just give me one second. [00:40:05] Speaker 02: It's actually, here we go. [00:40:11] Speaker 02: He did it at appendix 8353 for render. [00:40:15] Speaker 04: So let me ask you this. [00:40:17] Speaker 04: This seems to suggest that the court determined that project viewer itself was means plus function and then had a bunch of different [00:40:27] Speaker 04: interpret a bunch of different sub-structures or sub-functions under that. [00:40:33] Speaker 04: But is that really what happened? [00:40:35] Speaker 04: Because in the other claims that just had project viewer, she didn't say that it was means plus function. [00:40:42] Speaker 04: She said it was ineligible. [00:40:43] Speaker 04: So it was the project viewer rendering language that was means plus function that she identified was sufficient structure. [00:40:52] Speaker 04: Otherwise, you'd have 101 problems. [00:40:55] Speaker 04: Did she really say Project Viewer is Means Plus Function for these claims and not other claims? [00:41:02] Speaker 02: So she didn't say it was Means Plus Function for some claims and not others. [00:41:05] Speaker 02: Let me unpack that just really quickly, Judge Hughes. [00:41:09] Speaker 04: Just to be clear about it, my question is, I thought for these claims, she said that the Project Viewer rendering was Means Plus Function language. [00:41:20] Speaker 02: That's not what she said at Appendix 7, which is her claim construction order. [00:41:24] Speaker 02: What she does is she says that the project viewer in these patents, and it includes patents that don't have the rendering functionality, is means plus function. [00:41:33] Speaker 02: She then goes on to identify four different functions that the project viewer performs. [00:41:38] Speaker 02: Some of them are in the patents that have rendering, and rendering is one of them. [00:41:42] Speaker 02: But some of the patents, like for example the 8253 patent, [00:41:45] Speaker 02: doesn't have rendering, does have viewing, and she identified that as one of the functions. [00:41:50] Speaker 02: And then she said the structure for these functions plural is at the range that she identified. [00:41:55] Speaker 02: Now, I agree with you. [00:41:56] Speaker 02: When she got to her summary judgment ruling later, and you look at Appendix 24, [00:42:01] Speaker 02: She then says, I'm sorry, not 24, 26, Appendix 26. [00:42:06] Speaker 02: She then says, no, those aren't means plus function. [00:42:08] Speaker 02: Those are just ordinary conventional structure. [00:42:12] Speaker 02: But that's not what she had said in her claim construction in Appendix 7. [00:42:15] Speaker 02: Neither party had argued to her that they were means plus function for some of the claims and not others. [00:42:21] Speaker 04: We think your argument on what project you're rendering and structure is too late, because you didn't, and I know you disagree, so you don't need to re-argue that. [00:42:30] Speaker 04: But if we think it's too late, and that whole adoption of these five columns as the structure is, I guess, okay plan construction, then [00:42:45] Speaker 04: Do you lose on non-infringement because Google doesn't perform everything in those five columns? [00:42:51] Speaker 02: No. [00:42:51] Speaker 02: Our expert identified where Google performs everything in those five columns. [00:42:54] Speaker 02: And we argued that to the district court at appendix 9860 to 63 with citing support to our expert. [00:43:01] Speaker 02: So you still would need to grapple with that. [00:43:03] Speaker 02: The district court didn't grapple with that at appendix 24 to 25 and overlooked it. [00:43:08] Speaker 02: And also for the 101 claims where they saw these means plus function project viewers, [00:43:13] Speaker 02: whether it's this core or the distra core, it needs to identify the corresponding structure for those other functions and then decide whether that corresponding structure takes it out of 101. [00:43:21] Speaker 02: If I could just, though, my last point, Judge Raymond, just to give those sites that I was in the middle of giving for Judge Dues, that's a very good question. [00:43:29] Speaker 02: So for render, our expert pointed to the exact structure we're arguing here at appendix 8353. [00:43:34] Speaker 02: For transmit, it was appendix 8354. [00:43:37] Speaker 02: For auto-on, auto-off, it was appendix 8393. [00:43:42] Speaker 02: And for viewing the templates and media assets, it was Appendix 8486. [00:43:46] Speaker 02: Thank you, Your Honor. [00:43:49] Speaker 00: I thank the parties for their arguments, and I take this case under advisement.