DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
The Amendment filed January 8th 2026 has been entered. Claims 9-26 are pending in the application. Applicant’s amendments to the Claims have overcome the rejections previously set forth in the Non-Final Office Action mailed October 16th 2025. A second search has been performed to address the material amended in the aforementioned claims. Newly found references Shearer (US 20080079714 A1) and Laine (US 20220230380 A1) were used for the amended limitations.
Response to Arguments
Applicant’s arguments with respect to claims 9-26 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 9, 18, and 19 are rejected under 35 U.S.C 103 as being unpatentable over Wald (US 20240355043 A1) in view of Shearer (US 20080079714 A1).
Regarding claim 9:
Wald teaches:
A method performed by an offload processing unit including a plurality of processing sub-units (Wald: FIG. 7 illustrates an example parallel processing unit (PPU) 700 suitable for use in implementing at least some embodiments of the present disclosure. In at least one embodiment, the PPU 700 is a multi-threaded processor that is implemented on one or more integrated circuit devices. [0077]), the method comprising:
receiving, from a client processing unit, a scene defining a scene geometry (Wald: a client application (e.g., on a client device) and/or other software may use the network 106 to […] provide or define one or more portions of graphical data for the scene 112 [0029]; Wald: Graphics data may be defined as a set of primitives such as points, lines, triangles, quads, triangle strips, and the like. [0134]), the scene having associated thereto a plurality of pixels (Wald: The PPU 700 may be configured to process the graphics primitives to generate a frame buffer (e.g., pixel data for each of the pixels of the display). [0134]) corresponding to a camera position in the scene (Wald: a pixel 212 of a virtual grid or screen 204 corresponding to the ray 202 cast from a virtual eye or camera 206 (world space and/or screen space pixel locations may be used for the ray tracing). [0042]);
tracing in the scene, for each set of pixels of the plurality of pixels (Wald: Ray tracing may involve generating ray-traced samples by casting rays in a virtual environment to sample lighting and/or other environmental conditions for pixels [0137]), each of a respective set of light units among a plurality of light units using the respective processing-sub unit (Wald: the compute nodes 104 use the distributed light transport simulation operation 200 to process a wavefront of rays, which may include the ray 202 [0058]) to identify, for each of one or more light units among the plurality of light units, a respective one or more intersections with the scene geometry (Wald: the compute node 104 may intersection test the ray 202 against the partitions 120 to determine whether the ray 202 interacts with any geometry and/or other graphical elements corresponding to the portion of the graphical data 110A [0041]; see Note 1A);
computing, for each of the one or more light units, in accordance with the respective one or more intersections, respective hit information (Wald: when the ray 202 is processed by the compute node 104A, the compute node 104A may update the T value to correspond to an interaction 222 and update the hit mask to indicate a hit on the compute node 104A and/or the partition 120 [0058]);
determining, in accordance with the respective hit information of each of the one or more light units (Wald: Once TraceRay( ) has completed the search for ray-scene intersections, either a miss shader 1008 or a closest hit shader 1010 may be invoked [0145]; see Note 1C), a set of scene hit information (Wald: For example, triplets of intersection shaders 1006, any hit shaders 1004, and/or closest hit shaders 1010 may be bundled into hit groups [0150]) defining rudimentary shading for the scene (Wald: The closest hit shader 1010 may perform most shading operations, such as, material evaluation, texture lookups, and so on [0145]; see Note 1B), and
sending, to the client processing unit (Wald: When rays are traced using data-parallel rendering, the rays must frequently be forwarded between compute nodes [0002]; Wald: one or more of the compute nodes 104 may be distributed across multiple computing systems […] Non-limiting examples of computing systems include, for example, […] a client device, [0032]; see Note 1D), the set of scene hit information (Wald: In at least one embodiment, forwarding a ray may include transmitting one or more values, such as a hit mask, indicating the compute nodes 104 and/or partitions where it was determined that the ray interacted with the local geometry, [0042]; see Note 1B).
Note 1A: The specification of the present application recites: “each light unit may be one of a light ray and a photon” [0013]. Therefore, the ray of Wald is interpreted to be analogous to a light unit.
Note 1B: Wald teaches that a “closest hit shader” for the scene that is invoked “once TraceRay( ) has completed the search for ray-scene intersections,” [0145]. The closest hit shader may be bundled into a “hit group”, which is interpreted to be analogous to “scene hit information”. Furthermore, the closest hit shader may perform shading operations, as cited in [0145] above. The Examiner interprets “rudimentary” as used in claim 1 to be a relative term (see MPEP 2173.05(b)). The specification of the present application does not explicitly define “rudimentary”, but does elaborate that “rudimentary shading” may include diffuse, specular, and rough specular calculations, which are common calculations in many PBR pipelines. Because Wald teaches that the closest hit shader may perform “most” shading operations, the Examiner presumes “rudimentary shading” to be within the scope of the shading operations performable by the closest hit shader of Wald.
Note 1C: In [0145] cited above, the closest hit shader is invoked once a ray has been completely traced for intersections. It is reasonable to conclude that the closest hit shader comprises or at least represents the hit information determined by the TraceRay() function. Wald supports this in paragraph [0058], reciting “An any hit program, or shader, may be used to perform alpha testing, and a closest-hit program, or shader, may be used to update the ray's T value and hit mask if a closer intersection with geometry is found.”
Note 1D: Wald teaches that rays traced by compute nodes may be “distributed across multiple computing systems,” including a client device. The Examiner interprets the distribution to include sending the traced rays.
Wald fails to explicitly teach:
assigning, to each of the plurality of processing sub-units, a respective set of pixels from among the plurality of pixels;
Shearer teaches:
receiving, from a client processing unit, a scene defining a scene geometry (Shearer: FIG. 3 is an exemplary three dimensional scene 305 to be rendered by an image processing system. Within the three dimensional scene 305 may be objects 320 [0041]), the scene having associated thereto a plurality of pixels (Shearer: most image processing systems use […] a frame 330 of thousands (if not millions) of pixels to render the final scene on the monitor 310. [0047]) corresponding to a camera position in the scene (Shearer: The rays originate from the eye(s) of a viewer sitting behind the computer screen and traverse through pixels, which make up the computer screen, towards the three-dimensional scene [0007]);
assigning, to each of the plurality of processing sub-units, a respective set of pixels from among the plurality of pixels (Shearer: the image processing system may divide a frame of pixels into different regions and assign responsibility for the regions to different workload managers in order to evenly distribute workload, Abstract);
tracing in the scene, for each set of pixels of the plurality of pixels, each of a respective set of light units among a plurality of light units using the respective processing-sub unit (Shearer: Once all regions of the frame 700 have been assigned to workload managers 2051-N, the image processing system may proceed to step 840. At step 840, the image processing system may perform other operations relating to ray tracing (e.g., trace other rays through the three dimensional scene 305) with the rays for each region assigned to workload managers [0114])
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Shearer with Wald. Assigning, to each of the plurality of processing sub-units, a respective set of pixels from among the plurality of pixels, as in Shearer, would benefit the Wald teachings by ensuring that the processing system operates at maximum performance by balancing the workload of each processing sub-system: “the techniques of distributing workload amongst processing elements described herein (i.e., spatial index partitioning or frame division) may be independently implemented or collectively implemented in an image processing system in order to evenly distribute workload amongst processing elements.” (Shearer, [0096]).
Regarding claim 18:
Wald in view of Shearer teaches:
The method of claim 9 (as shown above) wherein the offload processing unit is a server cluster (Wald: Network environments suitable for use in implementing embodiments of the disclosure may include one or more client devices, servers, network attached storage (NAS), other backend devices, and/or other device types [0184]) and each sub-processing unit is a server (Wald: In at least one embodiment, node C.R.s 1416(1)-1416(N) may include, but are not limited to, any number of central processing units (CPUs) or other processors (including […] graphics processors or graphics processing units (GPUs), etc.) […] C.R.s 1416(1)-1416(N) may correspond to a server having one or more of the above-mentioned computing resources [0175]).
Regarding claim 19:
Wald in view of Shearer teaches:
The method of claim 9 (as shown above) wherein offload processing unit includes an application-specific integrated circuit (Wald: Computing device 1300 may include an interconnect system 1302 that directly or indirectly couples the following devices: memory 1304, one or more central processing units (CPUs) 1306, one or more graphics processing units (GPUs) 1308, […] and one or more logic units 1320 [0160]; Wald: Examples of the logic unit(s) 1320 include one or more processing cores and/or components thereof, such as […] Application-Specific Integrated Circuits (ASICs) [0175]).
Claims 10, 23, 24, and 25 are rejected under 35 U.S.C 103 as being unpatentable over Wald (US 20240355043 A1) in view of Laine (US 20220230380 A1).
Regarding claim 10:
Wald teaches:
A method performed by an offload processing unit including a plurality of processing sub-units, the method comprising:
receiving, from a client processing unit, a scene defining by a plurality of mesh structures a scene geometry (Wald: a client application (e.g., on a client device) and/or other software may use the network 106 to […] provide or define one or more portions of graphical data for the scene 112 [0029]; Wald: Graphics data may be defined as a set of primitives such as points, lines, triangles, quads, triangle strips, and the like. [0134]);
tracing each of a plurality of light units in the scene to identify, for each of one or more light units among the plurality of light units, a respective one or more intersections with the scene geometry (Wald: the compute node 104 may intersection test the ray 202 against the partitions 120 to determine whether the ray 202 interacts with any geometry and/or other graphical elements corresponding to the portion of the graphical data 110A [0041]; see Note 1A);
computing, for each of the one or more light units, in accordance with the respective one or more intersections, respective hit information (Wald: when the ray 202 is processed by the compute node 104A, the compute node 104A may update the T value to correspond to an interaction 222 and update the hit mask to indicate a hit on the compute node 104A and/or the partition 120 [0058]);
determining, in accordance with the respective hit information of each of the one or more light units (Wald: Once TraceRay( ) has completed the search for ray-scene intersections, either a miss shader 1008 or a closest hit shader 1010 may be invoked [0145]; see Note 1C), a set of scene hit information (Wald: For example, triplets of intersection shaders 1006, any hit shaders 1004, and/or closest hit shaders 1010 may be bundled into hit groups [0150]) defining rudimentary shading for the scene (Wald: The closest hit shader 1010 may perform most shading operations, such as, material evaluation, texture lookups, and so on [0145]; see Note 1B), and
sending, to the client processing unit (Wald: When rays are traced using data-parallel rendering, the rays must frequently be forwarded between compute nodes [0002]; Wald: one or more of the compute nodes 104 may be distributed across multiple computing systems […] Non-limiting examples of computing systems include, for example, […] a client device, [0032]; see Note 1D), the set of scene hit information (Wald: In at least one embodiment, forwarding a ray may include transmitting one or more values, such as a hit mask, indicating the compute nodes 104 and/or partitions where it was determined that the ray interacted with the local geometry, [0042]; see Note 1B).
Wald fails to explicitly teach:
consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection;
Laine teaches:
consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection (Laine: when a ray goes through a closed mesh the TTU 700 can be configured to determine a single intersection even if the ray passes through an edge between two triangles or through a vertex shared by multiple triangles [0233]; Laine: Whether a single hit or multiple hits are returned may depend on the type of query and/or type of objects (e.g., surface type and/or geometry) being tested. In an exemplary embodiment, hardware circuitry may be configured to always report a single triangle hit upon a ray intersecting a connected mesh of triangles at an edge or vertex. [0192]);
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Laine with Wald. Consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection, as in Laine, would benefit the Wald teachings because “if the streaming processor (SM) 132 is told that each triangle sharing an edge or a vertex is intersected, further processing by the SM 132 based on multiple intersections at one location, instead of a single intersection, may generate inaccurate images of the scene” (Laine, [0186]).
Regarding claim 23:
Wald in view of Laine teaches:
The method of claim 10 (as shown above) wherein the offload processing unit is a server cluster (Wald: Network environments suitable for use in implementing embodiments of the disclosure may include one or more client devices, servers, network attached storage (NAS), other backend devices, and/or other device types [0184]) and each sub-processing unit is a server (Wald: In at least one embodiment, node C.R.s 1416(1)-1416(N) may include, but are not limited to, any number of central processing units (CPUs) or other processors (including […] graphics processors or graphics processing units (GPUs), etc.) […] C.R.s 1416(1)-1416(N) may correspond to a server having one or more of the above-mentioned computing resources [0175]).
Regarding claim 24:
Wald in view of Laine teaches:
The method of claim 10 (as shown above) wherein offload processing unit includes an application-specific integrated circuit (Wald: Computing device 1300 may include an interconnect system 1302 that directly or indirectly couples the following devices: memory 1304, one or more central processing units (CPUs) 1306, one or more graphics processing units (GPUs) 1308, […] and one or more logic units 1320 [0160]; Wald: Examples of the logic unit(s) 1320 include one or more processing cores and/or components thereof, such as […] Application-Specific Integrated Circuits (ASICs) [0175]).
Regarding claim 25:
Wald in view of Laine teaches:
The method of claim 10 wherein the offload processing unit includes a plurality of cores (Wald: Computing device 1300 may include an interconnect system 1302 that directly or indirectly couples the following devices: memory 1304, one or more central processing units (CPUs) 1306, one or more graphics processing units (GPUs) 1308, […] and one or more logic units 1320 [0160]; Wald: Examples of the logic unit(s) 1320 include one or more processing cores [0175]).
Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Wald (US 20240355043 A1) in view of Shearer (US 20080079714 A1) and Keller (US 20050264564 A1).
Wald in view of Shearer teaches:
The offload processing unit of claim 9 (as shown above), wherein each light unit is one of a light ray (see Note 1A) or a photon.
Wald in view of Shearer fails to explicitly teach:
wherein each light unit is one of a light ray and a photon.
Keller teaches:
wherein each light unit is one of a light ray and a photon (Keller: a selected ray-tracing methodology in which simulated rays are shot from the pixel into a scene, the simulated rays representing paths of simulated photons [0026]; see Note 7A)
Note 7A: Keller teaches the both a light ray and a photon because Keller teaches that the simulated rays represent simulated photons. Therefore, it is reasonable to conclude that Keller showcases light units that are light rays that are equivalent to photons. Keller is combinable with Wald because Wald teaches: Non-limiting examples of ray tracing include […] photon mapping [0136].
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Keller with Wald in view of Shearer. Having each light unit be one of a light ray and a photon, as in Keller, would benefit the Wald in view of Shearer teachings by enabling photorealistic rendering based on the movement of real life photons.
Claim 21 is rejected under 35 U.S.C. 103 as being unpatentable over Wald (US 20240355043 A1) in view of Shearer (US 20080079714 A1) and Laine (US 20220230380 A1).
Wald in view of Shearer teaches:
The method of claim 9 (as shown above) wherein:
the scene geometry is defined by a plurality of mesh structures (Wald: Graphics data may be defined as a set of primitives such as points, lines, triangles, quads, triangle strips, and the like [0134]); and
Wald in view of Shearer fails to teach:
the method further comprises:
consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection.
Laine teaches:
consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection (Laine: when a ray goes through a closed mesh the TTU 700 can be configured to determine a single intersection even if the ray passes through an edge between two triangles or through a vertex shared by multiple triangles [0233]; Laine: Whether a single hit or multiple hits are returned may depend on the type of query and/or type of objects (e.g., surface type and/or geometry) being tested. In an exemplary embodiment, hardware circuitry may be configured to always report a single triangle hit upon a ray intersecting a connected mesh of triangles at an edge or vertex. [0192]);
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Laine with Wald in view of Shearer. Consolidating, for each of the one or more light units, each set of intersections among the respective one or more intersections that occur with adjacent mesh structures among the plurality of mesh structures as a respective singular intersection, as in Laine, would benefit the Wald in view of Shearer teachings because “if the streaming processor (SM) 132 is told that each triangle sharing an edge or a vertex is intersected, further processing by the SM 132 based on multiple intersections at one location, instead of a single intersection, may generate inaccurate images of the scene” (Laine, [0186]).
Claim 26 is rejected under 35 U.S.C. 103 as being unpatentable over Wald (US 20240355043 A1) in view of Laine (US 20220230380 A1) and Keller (US 20050264564 A1).
Wald in view of Laine teaches:
The offload processing unit of claim 10 (as shown above), wherein each light unit is one of a light ray (see Note 1A) or a photon.
Wald in view of Laine fails to explicitly teach:
wherein each light unit is one of a light ray and a photon.
Keller teaches:
wherein each light unit is one of a light ray and a photon (Keller: a selected ray-tracing methodology in which simulated rays are shot from the pixel into a scene, the simulated rays representing paths of simulated photons [0026]; see Note 7A above)
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Keller with Wald in view of Laine. Having each light unit be one of a light ray and a photon, as in Keller, would benefit the Wald in view of Laine teachings by enabling photorealistic rendering based on the movement of real life photons.
Allowable Subject Matter
Claims 12, 13, 14, 15, 16, and 17 allowed.
The following is an examiner’s statement of reasons for allowance:
The following prior art references were found that relate to the present application:
Wright (US 20210049807 A1)
Gordon (US 20150172636 A1)
Pharr (NPL: Path tracing)
Wright teaches:
A method performed by an offload processing unit (Wright: one or more central processing units (CPUs) 1006 [0086]), the method comprising:
obtaining a scene geometry defining one or more surfaces of a scene, each surface being one of diffuse (Wright: The object 122 may further comprise one or more textures and/or texture portions mapped to one or more portions (e.g., faces) of the object 122 (e.g., a diffuse map, [0027]), rough specular (Wright: The ray caster 104 may determine and/or assign the cone angle based at least on the roughness of the surface [0040]), and smooth specular;
tracing a set of light units in the scene to identify a same first intersection of each light unit with one surface of the one or more surfaces of the scene (Wright: one or more primitive IDs may be returned by an intersection test of the ray 232 [0050]), each light unit having associated thereto one or more respective path vertices each having associated thereto a respective path length; and
determining, for the set of light units (Wright: The lighting determiner 106 may be configured to determine—based at least in part on the traced rays [0026]):
when the one surface is a diffuse surface, an irradiance (Wright: determine—based at least in part on the traced rays—data representative of lighting contributions (also referred to as lighting contribution data) of interactions of the ray-traced light transport paths in the virtual environment (e.g., with surfaces), such as irradiance (e.g., diffuse irradiance) [0026]);
Wright fails to teach:
obtaining a scene geometry defining one or more surfaces of a scene, each surface being one of diffuse, rough specular, and smooth specular;
tracing a set of light units in the scene to identify a same first intersection of each light unit with one surface of the one or more surfaces of the scene each light unit having associated thereto one or more respective path vertices each having associated thereto a respective path length; and
determining, for the set of light units:
when one surface is a rough specular surface, a radiance function; and
when the one surface is a smooth specular surface,
for each light unit of the respective set of light units, a respective sample path including the respective one or more path vertices,
one or more respective groups of sample paths from among the sample paths of each light unit of the respective set of light units in accordance with the respective path lengths,
a respective stochastically selected path for each of the one or more respective groups of sample paths, and
a respective path radiance for each of the stochastically selected paths
Gordon teaches:
obtaining a scene geometry defining one or more surfaces of a scene (Gordon: In order to display 3D objects, the 3D model can include information about geometry and optical properties of surfaces of the object [0016]), each surface being one of diffuse (Gordon: albedo parameter, [0019]), rough specular (Gordon: roughness parameter, [0019]), and smooth specular (Gordon: reflectivity or specularity parameter, [0019]);
determining, for the set of light units (Gordon: values of received light indicated by pixels of the image can be used as inputs to one or more lighting models to determine vector and scalar lighting parameters of the object. [0020]):
when one surface is a rough specular surface (Gordon: A roughness parameter can be used to model the roughness or smoothness (in the sense of not-roughness) of a surface [0019]), a radiance function (Gordon: Another specular lighting model that takes roughness of a surface into account is shown as Equation 4 [0062]; see Note 12A); and
Note 12A: Gordon teaches Equation 4, where LRS […] are as in Equation 3 (In Equation 3, LRS is the “reflected specular radiance of light” [0057]. Equation 4 serves an a “radiance function” as it results in the LRS radiance when given a roughness specular.
Wright in view of Gordon fails to teach:
tracing a set of light units in the scene to identify a same first intersection of each light unit with one surface of the one or more surfaces of the scene each light unit having associated thereto one or more respective path vertices each having associated thereto a respective path length; and
determining, for the set of light units:
when the one surface is a smooth specular surface,
for each light unit of the respective set of light units, a respective sample path including the respective one or more path vertices,
one or more respective groups of sample paths from among the sample paths of each light unit of the respective set of light units in accordance with the respective path lengths,
a respective stochastically selected path for each of the one or more respective groups of sample paths, and
a respective path radiance for each of the stochastically selected paths
Pharr teaches:
tracing a set of light units in the scene (Pharr: At each vertex, the BSDF is sampled to generate a new direction; the next vertex pi+1 is found by tracing a ray from pi in the sampled direction and finding the closest intersection, Pg. 4, Section 14.5.3: Incremental Path Construction, par. 1) to identify a same first intersection of each light unit (Pharr: Starting at the first intersection of the camera ray with the scene geometry, Pg. 4, Section 14.5.4: Implementation, par. 1) with one surface of the one or more surfaces of the scene each light unit having associated thereto one or more respective path vertices (Pharr: it incrementally samples path vertices by sampling from the BSDF’s sampling distribution at the current vertex and tracing a ray to the next vertex (Pg. 4, Section 14.5.4: Implementation, par. 1) each having associated thereto a respective path length (Pharr: the vertices of the previous path of length (everything except the vertex on the emitter) are reused as a starting point when constructing the path of length, Pg. 4, Section 14.5.4, par. 2); and
determining, for the set of light units:
for a given surface,
for each light unit of the respective set of light units, a respective sample path including the respective one or more path vertices (Pharr: it incrementally samples path vertices by sampling from the BSDF’s sampling distribution at the current vertex and tracing a ray to the next vertex (Pg. 4, Section 14.5.4: Implementation, par. 1),
a respective stochastically selected path for each of the one or more respective groups of sample paths (Pharr: After a few vertices have been sampled, Russian roulette is used to randomly terminate the path, Pg. 5, par. 5; see Note 12B), and
Note 12B: Pharr terminates paths randomly or “stochastically”. Terminating the paths randomly inherently requires selecting paths that should be terminated.
Wright in view of Gordon and Pharr fails to teach:
determining, for the set of light units:
when the one surface is a smooth specular surface,
one or more respective groups of sample paths from among the sample paths of each light unit of the respective set of light units in accordance with the respective path lengths,
a respective path radiance for each of the stochastically selected paths.
While Pharr teaches a specular BRDF, Pharr does not teach that path tracing should be performed “when the one surface is a smooth specular surface”. Gordon, Wright, and the other prior art cited do not remedy the deficiencies listed above. Therefore, none of the prior art searched or on the record teaches, suggests, or renders obvious the limitations of claim 12.
Claims 13, 14, 15, 16, and 17 are dependent on claim 12, and therefore are also allowed for the reasons cited above.
Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee. Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.”
Claims 11 and 22 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
The following is a statement of reasons for the indication of allowable subject matter:
Claims 11 and 22 are substantially similar to claim 12 (i.e., claims 11, 12, and 22 share a large portion of limitations). Therefore, the reasons for indicating allowability are identical to the reasons claim 12 was allowed, with regard to the limitations shared for all three claims (see reasons for allowance above).
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to VINCENT ALEXANDER PROVIDENCE whose telephone number is (571)270-5765. The examiner can normally be reached Monday-Thursday 8:30-5:00.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, King Poon can be reached at (571)270-0728. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/VINCENT ALEXANDER PROVIDENCE/Examiner, Art Unit 2617 /KING Y POON/Supervisory Patent Examiner, Art Unit 2617