DETAILED ACTION
This is in response to the application filed on August 13, 2024 in which claims 1 – 3, 8 – 10, 12, 14, 16, 17, 19, 20, 23 – 27, 29, 30, 32, and 33 are presented for examination (after preliminary amendment of March 24, 2025).
Status of Claims
Claims 1 – 3, 8 – 10, 12, 14, 16, 17, 19, 20, 23 – 27, 29, 30, 32, and 33 are pending, of which claims 1, 27, 29, 30, 32, and 33 are in independent form.
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 .
Priority
Receipt is acknowledged of certified copies of papers required by 37 CFR 1.55.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 8/13/2024 is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 9 – 10 and 12 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 9 states “A method according to claim 1, wherein the method includes obtaining a node by: a) selecting one of a number of defined nodes; and, b) creating a node.” It is unclear how “obtaining a (single) node” is accomplished by both selecting defined nodes and creating a node. Applicant’s PGPub 2025/0139804 at [0085] states “The nodes are typically obtained by selecting one of a number of existing defined nodes, but alternatively a node could be obtained by creating a node.” This appears to be what Applicant is intending to claim. The examiner recommends amending claim 9 to state “A method according to claim 1, wherein the method includes obtaining a node by at least one of: a) selecting one of a number of defined nodes; and, b) creating a node.” Claims 10 and 12 inherit this rejection based on their dependencies.
Claims 19 and 24 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claims 19 and 24 recite the limitations "e) generating the configuration file" and “wherein the data is transferred,” respectively. There is insufficient antecedent basis for these limitations in the claims. Claim 19 does not introduce a configuration file and claim 1, from which it depends, also does not introduce a configuration file before the limitation of “e) generating the configuration file.” The examiner recommends amending claim 19 to state “e) generating a configuration file.” Claim 24 refers to “the data” when claim 1, from which it depends, refers to ‘agent data,’ ‘input data,’ and ‘output data.’ It is unclear which form of data is referred to by the limitation “the data.”
Claim Objections
Claim 12 is objected to because of the following informalities: claim 12 states “each software modules being” in the last limitation of the claim. Appropriate correction is required. The examiner recommends amending the last limitation of claim 12 to state “each software module being” or “each of the software modules being.”
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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 1 – 3, 8 – 10, 12, 14, 16, 17, 24 – 27, 29, 30, 32, and 33 are rejected under 35 U.S.C. 103 as being unpatentable over Yerli, U.S. Patent Application 2021/0199460 (hereinafter referred to as Yerli) (from Applicant’s IDS) in view of Kadowaki et al., U.S. Patent Application 2019/0347106 (hereinafter referred to as Kadowaki) (from Applicant’s IDS).
Referring to claim 1, Yerli discloses “A method for processing agent data received from one or more agents traversing an environment for use in a simultaneous localisation and mapping process” ([0002] Use of imaging devices and simultaneous localization and mapping (SLAM) techniques in order to allow a robot or other device to build a map of an unknown environment while simultaneously keeping track of its current location in said environment. [0052] proceeds to initiate a simultaneous location and mapping (SLAM) process of a first coordinate space. [0074] a SLAM pipeline 310 comprising a plurality of modules running computing processes (e.g., commands, program runs, tasks, threads, procedures, etc.), such as a new features extraction module 312, a features pose inference module 314, a new map generation module 316, and a map comparison and merger module 318. [0075] image data captured by one or more imaging devices), “the method including:” utilizing “a pipeline including a number of nodes, each node relating to a respective data processing task implemented using a respective software module, wherein the nodes are interconnected so as to define a node sequence representing a sequence of data processing tasks” ([0074] a SLAM pipeline 310 comprising a plurality of modules running computing processes (e.g., commands, program runs, tasks, threads, procedures, etc.), such as a new features extraction module 312, a features pose inference module 314, a new map generation module 316, and a map comparison and merger module 318); “data processing tasks are tasks related to processing agent data for use in the simultaneous localisation and mapping process” ([0076] – [0077] features extraction module 312, feature pose inference module 314, new map generation module 316, map comparison and merger module 318); “d) executing the software modules by: i) providing input data to at least one software module based on the agent data” ([0075] – [0076] image data captured by one or more imaging devices and send to new features extraction module 312), “wherein at least some of the agent data includes at least one of: (1) range data captured by a range sensor indicative of a distance between a sensor and part of the environment; (2) point cloud data of at least part of the environment; (3) trajectory data indicative of movement of the agent when traversing at least part of the environment” ([0051] LIDAR Light Detection and Ranging and [0055] features including points descriptive of objects in the environment); “ii) transferring output data from a software module to a next software module in accordance with the node sequence, so that the output data from the software module becomes input data for the next software module; and, iii) providing output data from at least one software module as processed agent data, wherein the processed agent data is used in the simultaneous localisation and mapping process” ([0052] proceeds to initiate a simultaneous location and mapping (SLAM) process of a first coordinate space. [0074] a SLAM pipeline 310 comprising a plurality of modules running computing processes (e.g., commands, program runs, tasks, threads, procedures, etc.), such as a new features extraction module 312, a features pose inference module 314, a new map generation module 316, and a map comparison and merger module 318. [0076] – [0077] features extraction module 312, feature pose inference module 314, new map generation module 316, map comparison and merger module 318. Fig. 7 obtain a pose 710, create a map 718, merge to create a fused 3D map 720).
Yerli does not appear to explicitly disclose “a) determining a pipeline including a number of nodes, each node relating to a respective data processing task implemented using a respective software module, wherein the nodes are interconnected so as to define a node sequence representing a sequence of data processing tasks” “wherein the method includes determining a pipeline by; i) determining processing requirements for the agent data; and, ii) using the processing requirements to at least one of: (1) retrieve one of a number of defined pipelines; and, (2) create a pipeline by: (a) obtaining a number of nodes; and, (b) interconnecting the nodes to define the node sequence in accordance with the processing requirements; b) determining a node configuration for at least some of the nodes, the node configuration being indicative of one or more configuration options associated with the respective software module; c) using the node configuration and pipeline to: i) load software modules corresponding to the nodes in the pipeline; and, ii) configure at least some of the software modules in accordance with the node configuration.”
However, Kadowaki discloses another pipeline method utilizing a sequence of nodes and software modules (Fig. 1 DTs 150a-c). Kadowaki discloses “a) determining a pipeline including a number of nodes, each node relating to a respective data processing task implemented using a respective software module, wherein the nodes are interconnected so as to define a node sequence representing a sequence of data processing tasks” ([0002] A data pipeline can be used to define a sequential process divided into a number of tasks or operations, each of which can be completed by a separate processing module or data transformer (DT). [0005] receiving a request to activate a first pipeline based on a first pipeline definition, and generating the first pipeline based on the first pipeline definition. Generating the first pipeline comprises generating a reusable processing module at a first position within the first pipeline, and generating a downstream processing module at a second position within the first pipeline) “wherein the method includes determining a pipeline by; i) determining processing requirements for the” “data; and, ii) using the processing requirements to at least one of: (1) retrieve one of a number of defined pipelines; and, (2) create a pipeline by: (a) obtaining a number of nodes; and, (b) interconnecting the nodes to define the node sequence in accordance with the processing requirements” ([0005] receiving a request to activate a first pipeline based on a first pipeline definition, and generating the first pipeline based on the first pipeline definition. Generating the first pipeline comprises generating a reusable processing module at a first position within the first pipeline, and generating a downstream processing module at a second position within the first pipeline. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. Fig. 3 and [0026] At block 305, the Pipeline System 100 receives a request for a new pipeline to be instantiated. For example, the Pipeline System 100 may receive a pipeline definition that comprises a list of DTs 150, as well as the logical links (e.g., Pipes 145) between them.); “b) determining a node configuration for at least some of the nodes, the node configuration being indicative of one or more configuration options associated with the respective software module; c) using the node configuration and pipeline to: i) load software modules corresponding to the nodes in the pipeline; and, ii) configure at least some of the software modules in accordance with the node configuration” ([0040] and [0042] DTs transform data based on the configuration of the DT. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0021] instantiating DTs).
Yerli and Kadowaki are analogous art because they are from the same field of endeavor, which is pipelined computing.
Before the effective filing date of the claimed invention, it would have been obvious to one of ordinary skill in the art, having the teachings of Yerli and Kadowaki before him or her, to modify the teachings of Yerli to include the teachings of Kadowaki so that the method includes determining pipeline requirements, retrieving or creating a pipeline, and configuring the nodes of the pipeline.
The motivation for doing so would have been to provide a level of extendibility and flexibility/reconfigurability to the processing of data (as described by Kadowaki at [0002] and [0034]) in order to identify an “appropriate pipeline” (as described by Kadowaki at [0018]).
Therefore, it would have been obvious to combine Kadowaki with Yerli to obtain the invention as specified in the instant claim.
As per claim 2, Yerli discloses “wherein the agent data includes at least one of:
a) sensor data from one or more sensors associated with the agent” ([0070] sensors); “and, b) a map of at least part of the environment” ([0002] a map of an unknown environment and [0007] creating a new map).
As per claim 3, Yerli discloses “each node includes an interface representing the data processing task, the interface acting as an input configured to receive input data and an output configured to provide output data” ([0074] a SLAM pipeline 310 comprising a plurality of modules running computing processes (e.g., commands, program runs, tasks, threads, procedures, etc.), such as a new features extraction module 312, a features pose inference module 314, a new map generation module 316, and a map comparison and merger module 318. [0075] – [0076] image data captured by one or more imaging devices and send to new features extraction module 312. Fig. 7 obtain a pose 710, create a map 718, merge to create a fused 3D map 720). Each module of Yerli’s pipeline includes “i) an input data format; and, ii) input data content” and “i) an output data format; and, ii) output data content” (Fig. 7 obtain a pose 710, create a map 718, merge to create a fused 3D map 720).
Yerli does not appear to explicitly disclose “wherein: a) the configuration options include at least one of: i) an input configuration; ii) an output configuration; and, iii) a processor configuration; b) the input configuration is indicative of: i) an input data format; and, ii) input data content; and, c) the output configuration is indicative of: i) an output data format; and, ii) output data content.”
However, Kadowaki discloses “wherein: a) the configuration options include at least one of: i) an input configuration; ii) an output configuration; and, iii) a processor configuration” ([0002] A data pipeline can be used to define a sequential process divided into a number of tasks or operations, each of which can be completed by a separate processing module or data transformer (DT). [0005] receiving a request to activate a first pipeline based on a first pipeline definition, and generating the first pipeline based on the first pipeline definition. Generating the first pipeline comprises generating a reusable processing module at a first position within the first pipeline, and generating a downstream processing module at a second position within the first pipeline. [0040] and [0042] DTs transform data based on the configuration of the DT. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0021] instantiating DTs).
As above, Yerli teaches modules of a pipeline with input data format, input data content, output data format, and output data content. Also, as above, Kadowaki teaches configuring of pipelines with sequential modules.
It would have been obvious to one of ordinary skill in the art at the time of Applicant’s filing to combine Kadowaki with Yerli so that “b) the input configuration is indicative of: i) an input data format; and, ii) input data content; and, c) the output configuration is indicative of: i) an output data format; and, ii) output data content.”
Yerli and Kadowaki are analogous art because they are from the same field of endeavor, which is pipelined computing.
Before the effective filing date of the claimed invention, it would have been obvious to one of ordinary skill in the art, having the teachings of Yerli and Kadowaki before him or her, to modify the teachings of Yerli to include the teachings of Kadowaki so that the method includes determining pipeline requirements, retrieving or creating a pipeline, and configuring the nodes of the pipeline.
The motivation for doing so would have been to provide a level of extendibility and flexibility/reconfigurability to the processing of data (as described by Kadowaki at [0002] and [0034]) in order to identify an “appropriate pipeline” (as described by Kadowaki at [0018]).
Therefore, it would have been obvious to combine Kadowaki with Yerli to obtain the invention as specified in the instant claim.
As per claim 8, Kadowaki discloses “the pipeline includes branches in which one node is connected to at least two other nodes so that output data from a software module is provided as input data to at least two other software modules” (Fig. 6B DT_c outputs data that is input to DT_e and DT_g).
As per claim 9, Kadowaki discloses “the method includes obtaining a node by [at least one of]: a) selecting one of a number of defined nodes; and, b) creating a node” ([0015] select from predefined pipeline definitions, rather than define their own, [0020] shareable DT can be shared by multiple pipelines).
As per claim 10, Kadowaki discloses “the method includes creating the node by:
a) selecting one of a number of available interfaces, each interface representing a data
processing task; and, b) generating a software module in accordance with requirements associated with the interface” ([0002] A data pipeline can be used to define a sequential process divided into a number of tasks or operations, each of which can be completed by a separate processing module or data transformer (DT). [0005] generating a processing module, [0018] instantiate and configure data pipelines, [0021] instantiating DTs. [0047] entirely software or module of hardware and software).
As per claim 12, Kadowaki discloses “the method includes selecting a node by:
a) selecting one of a number of available interfaces, each interface representing a respective data processing task; and, b) selecting one of a number of available software modules associated with the selected interface, each software modules being a respective implementation of the data processing task” ([0002] A data pipeline can be used to define a sequential process divided into a number of tasks or operations, each of which can be completed by a separate processing module or data transformer (DT). [0005] generating a processing module, [0018] instantiate and configure data pipelines, [0021] instantiating DTs. [0047] entirely software or module of hardware and software. Further, [0015] select from predefined pipeline definitions, rather than define their own. [0020] shareable DTs).
As per claim 14, Kadowaki discloses “the method includes: a) retrieving one or more of a number of defined workflows, each workflow being indicative of a sequence of one or more data processing tasks” (Fig. 1 sequence of DTs 150a-c), “wherein each workflow includes a number of interfaces and the method includes selecting one of a number of available software modules associated each interface; and, b) creating the pipeline using the one or more of the workflows” ([0015] select from predefined pipeline definitions, rather than define their own, [0020] shareable DTs).
As per claim 16, Yerli discloses “the method includes: a) determining an agent state for the one or more agents, the agent state being indicative of one or more of: i) sensors associated with the agent; ii) a sensor transformation representing a physical geometry of the sensors associated with the agent; and, iii) one or more trajectory types associated with the agent” ([0118] obtaining the pose of a device from sensor data); “and, b) using the state to” process data via the SLAM pipeline ([0118] "performing a SLAM process of a first coordinate space, wherein the SLAM process uses image data from at least one imaging device of the first client device and the pose of the first client device to determine the pose of a first plurality of features within the first coordinate space").
Yerli does not appear to explicitly disclose “b) using the state to at least one of: i) select one or more nodes; ii) retrieve one or more of a number of defined workflows; and, iii) retrieve one of a number of defined pipelines.”
However, Kadowaki discloses “b) using the state to at least one of: i) select one or more nodes; ii) retrieve one or more of a number of defined workflows; and, iii) retrieve one of a number of defined pipelines” ([0015] select from predefined pipeline definitions, rather than define their own, [0020] shareable DTs).
Yerli and Kadowaki are analogous art because they are from the same field of endeavor, which is pipelined computing.
Before the effective filing date of the claimed invention, it would have been obvious to one of ordinary skill in the art, having the teachings of Yerli and Kadowaki before him or her, to modify the teachings of Yerli to include the teachings of Kadowaki so that the method includes determining pipeline requirements, retrieving or creating a pipeline, and configuring the nodes of the pipeline.
The motivation for doing so would have been to provide a level of extendibility and flexibility/reconfigurability to the processing of data (as described by Kadowaki at [0002] and [0034]) in order to identify an “appropriate pipeline” (as described by Kadowaki at [0018]).
Therefore, it would have been obvious to combine Kadowaki with Yerli to obtain the invention as specified in the instant claim.
As per claim 17, Kadowaki discloses “the method includes: a) determining additional data requirements including at least one of: i) input files; and, ii) calibration files” ([0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. Fig. 3 and [0026] At block 305, the Pipeline System 100 receives a request for a new pipeline to be instantiated. For example, the Pipeline System 100 may receive a pipeline definition that comprises a list of DTs 150, as well as the logical links (e.g., Pipes 145) between them); “and, b) using the additional data requirements to at least one of: i) select one or more nodes; ii) retrieve one or more of a number of defined workflows; and, iii) retrieve one of a number of defined pipelines” ([0015] select from predefined pipeline definitions, rather than define their own, [0020] shareable DTs).
As per claim 24, Kadowaki discloses “the data is transferred between software modules using messages including: a) a header including pipeline data indicative of at least one of: i) a capture time of sensor data; ii) an agent that captured the sensor data; and, iii) a frame; and, b) a payload including at least one of: i) sensor data; ii) processed sensor data; and, iii) output data from a previous software module” ([0030] data packet used by the pipeline, [0039] address of the DT, each DT can transmit the data to the appropriate DT).
As per claim 25, Yerli discloses “the nodes are configured to at least one of:
a) perform calibration; b) process sensor data; c) generate a point cloud; d) generate a map; e) generate a sensor trajectory within an environment; f) translate data between different reference frames; g) convert data between different formats; h) perform filtering; i) perform a simultaneous mapping and localisation process; and, j) generate a simultaneous mapping and localisation process output” ([0076] – [0077] features extraction module 312, feature pose inference module 314, new map generation module 316, map comparison and merger module 318. [0051] LIDAR Light Detection and Ranging and [0055] features including points descriptive of objects in the environment. Fig. 7 perform SLAM 712 and output a fused 3D map).
As per claim 26, Kadowaki discloses “the method includes: a) in a configuration phase, generating a configuration file based on the pipeline and node configurations; and, b) in an execution phase, using the configuration file to: i) load software modules corresponding to the nodes in the pipeline; and, ii) configure at least some of the software modules in accordance with the node configuration” ([0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0026] At block 305, the Pipeline System 100 receives a request for a new pipeline to be instantiated. For example, the Pipeline System 100 may receive a pipeline definition that comprises a list of DTs 150, as well as the logical links (e.g., Pipes 145) between them. [0040] and [0042] DTs transform data based on the configuration of the DT. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0021] instantiating DTs).
Referring to claim 27, claim 1 recites the corresponding limitations as that of claim 27. Therefore, the rejection of claim 1 applies to claim 27.
Further, Kadowaki discloses “the system including one or more suitably programmed processing devices configured to” carry out the method of claim 1 (Fig. 2 processor 210 and [0023] Processor 210 is representative of a single CPU, multiple CPUs, a single CPU having multiple processing cores, and the like).
Referring to claim 29, claim 1 recites the corresponding limitations as that of claim 29, with claim 29 being broader than claim 1. Therefore, the rejection of claim 1 applies to claim 29.
Further, Kadowaki discloses “a) acquiring a configuration file” ([0005] receiving a request to activate a first pipeline based on a first pipeline definition, and generating the first pipeline based on the first pipeline definition. [0040] and [0042] DTs transform data based on the configuration of the DT. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0021] instantiating DTs).
Referring to claim 30, claim 29 recites the corresponding limitations as that of claim 30. Therefore, the rejection of claim 29 applies to claim 30.
Further, Kadowaki discloses “the system including one or more processing devices configured to” carry out the method of claim 1 (Fig. 2 processor 210 and [0023] Processor 210 is representative of a single CPU, multiple CPUs, a single CPU having multiple processing cores, and the like).
Referring to claim 31, claim 1 recites the corresponding limitations as that of claim 32, with claim 32 being broader than claim 1. Therefore, the rejection of claim 1 applies to claim 32.
Further, Kadowaki discloses “c) generating a configuration file based on defining the pipeline and the node configurations, wherein the configuration file is usable to configure software modules to perform processing of agent data” ([0005] receiving a request to activate a first pipeline based on a first pipeline definition, and generating the first pipeline based on the first pipeline definition. [0040] and [0042] DTs transform data based on the configuration of the DT. [0018] the DPM instantiates and configures data pipelines based on user-provided definitions or based on metadata associated with the data. [0021] instantiating DTs).
Referring to claim 33, claim 32 recites the corresponding limitations as that of claim 33. Therefore, the rejection of claim 32 applies to claim 33.
Further, Kadowaki discloses “the system including one or more processing devices configured to” carry out the method of claim 1 (Fig. 2 processor 210 and [0023] Processor 210 is representative of a single CPU, multiple CPUs, a single CPU having multiple processing cores, and the like).
Allowable Subject Matter
Claims 19, 20, and 23 are 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. Also, claim 19 must be amended to overcome the above rejection under 35 USC 112.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
U.S. Patent Application 20210042996 and Patent 11670047 teach SLAM pipelines with modules.
U.S. Patent Application 20250336151 teaches interface elements from which pipeline components are instantiated.
U.S. Patent Application 20250342398 teaches the creation, deployment, and reuse of AI-based streaming pipelines using a declarative configuration format that includes nodes and edges that define the data flow between those nodes.
U.S. Patent Application 20210163021 teaches localization methods and choosing/selecting a pipeline route.
U.S. Patent 9959671 teaches SLAM methods wherein a pipeline will choose which workers, modules, channels, and ring buffers to use.
U.S. Patent 11670047 teaches SLAM pipelines with modules.
Machine Translation of Chinese Patent Application CN 111583093 A teaches SLAM methods and pipeline structure design, and designing the data flow transmission mode between the modules.
Machine Translation of Chinese Patent Application CN 111397521 A teaches selecting a pipeline node and generating a pipeline model parameter.
‘Modelling Software Architecture for Visual Simultaneous Localization and Mapping’ by Mishra et al. teaches an ad hoc nature of interfacing different modules of VSLAM pipelines and shows different connections between modules of the pipeline.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to STEVEN G SNYDER whose telephone number is (571)270-1971. The examiner can normally be reached on M-F 8:00am-4:30pm (flexible).
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, Henry Tsai can be reached on 571-272-4176. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/STEVEN G SNYDER/Primary Examiner, Art Unit 2184