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 .
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 1, 2, 8, 9, and are 15 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 1 and 8 recite “in response to pausing the simulation”. It is unclear if this is positively recited to occur. Therefore, correction is required.
Claims 2, 9, and 15 mentions “the determined time” while there is not antecedence for “the determined time”. Therefore, correction is required.
Claim 15 mentions “the agent” while there is not antecedence for “the agent”. Therefore, correction is required.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-20 are rejected under 35 U.S.C. 102 as being unpatentable over RAYMOND et al. WO 2020205339 A1 (2020).
Regarding Claim 1, RAYMOND teaches
A method, comprising:
initializing, by a processor, an agent of a predictive subsystem of a substrate manufacturing system to select an action to perform in a simulation environment associated with the substrate manufacturing system;
“The model is initially designed and trained offline using simulated data and then trained online using real tool data for predicting wafer routing path and scheduling. The model improves accuracy of scheduler pacing and achieves highest tool/fleet utilization, shortest wait times, and fastest throughput.”. (Abstract).
“Each of the computing devices can include one or more hardware processors (e.g., CPUs). Each of the computing devices can include memory that stores instructions corresponding to the methods shown and described below with reference to FIGS.”. (0116).
“Additionally, the model 1204 includes a deep neural network that is trained using a reinforcement learning method as explained below in further detail with reference to FIG. 13. Reinforcement learning involves an agent, a set of states S and a set A of actions per state. By performing an action‘a’ from the set A, the agent transitions from state to state. Executing an action in a specific state provides the agent with a reward (a numerical score). The goal of the agent is to maximize its total (future) reward. The agent achieves the goal by adding a maximum reward attainable from future states to the reward for achieving its current state, which effectively influences its current action by the potential future reward. This potential reward is a weighted sum of the expected values of the rewards of all future steps starting from the current state.”. (0161).
“For example, the reinforcement learning method used by the model 1204 can include Q-learning. Q-learning is a reinforcement learning method used in machine learning. The goal of Q-learning is to learn a policy that informs an agent what action to take under what circumstances.”. (0162).
This shows a reinforcement learning model as an “agent” and selecting the next operation to run in its simulator set up and executed via processor and storage mediums.
initiating a simulation of the selected action in the simulation environment;
“The model 1204 processes the JSON file to select the next operation, which is returned to the discrete event simulator 1202 via the API.”. (0160).
“Using the method, a model is developed and trained initially offline using simulation and then online using the actual tool for predicting wafer routing path and scheduling to achieve highest tool/fleet utilization, shortest wait times, and fastest throughput.”. (0089).
“At 1308, the model 1204 selects the best next operation to schedule that will provide the best system performance. At 1310, the model 1204 memorizes the best next operation to schedule for this tool state. At 1312, the discrete event simulator 1202 executes the best next operation to simulate the next state.”. (0165).
This and Figure. 13 shows an initiation of an action in the simulation environment.
in response to pausing the simulation, obtaining, based on an environment state associated with the simulation, output data; and
“Executing an action in a specific state provides the agent with a reward (a numerical score).”. (0161).
“For example, the discrete event simulator 1202 receives data indicating the current state of the tool from system software running on the system controller 138 of the tool 100. For example, the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers”. (0164).
“At 1314, the discrete event simulator 1202 determines whether the final state is reached. The discrete event simulator 1202 repeats steps 1304-1312 until the final state is reached.”. (0166).
This shows an agent obtaining reward and updated tool state information from the simulator after each executed operation.
updating the agent, based on the output data, to be configured to generate one or more dispatching decisions indicative of a time to initiate processing of one or more substrates in the substrate manufacturing system.
“The model 1204 can be trained using the discrete event simulator 1200 and reinforcement learning to self-explore and memorize the best scheduling decisions for a given state of a tool.”. (0158).
“Executing an action in a specific state provides the agent with a reward (a numerical score). The goal of the agent is to maximize its total (future) reward. The agent achieves the goal by adding a maximum reward attainable from future states to the reward for achieving its current state, which effectively influences its current action by the potential future reward.”. (0161).
“At 1310, the model 1204 memorizes the best next operation to schedule for this tool state.”. (0165).
“…predict, using the model, the optimum scheduling parameters for processing the one of the semiconductor substrates in the plurality of processing chambers according to the recipe using data generated by the tool.”. (0020).
This shows based on data updating the agent to generate decisions that indicate a time to process the substrates.
Regarding Claim 2, RAYMOND teaches
The method of claim 1, further comprising:
receiving a request to initiate a set of operations to be run on a candidate set of substrates at the substrate manufacturing system, wherein the set of operations comprises one or more operations that each have one or more time constraints;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator… to predict the best scheduling parameter values to be used when processing a set of wafers according to the selected wafer-flow… automatically select the scheduling parameter values when a new wafer-flow is to be started.”. (0125).
“…with restrictions on wafer wait times … inaccurate pacing calculations can result in either abnormal wafers due to wafers drying out”. (0080).
This shows receiving operations for the substrates with corresponding time constraints.
obtaining current data relating to a current state of the substrate manufacturing system;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator. For example, the model can receive the number of PMs, recipe times, and WAC times as inputs.”. (0125).
“…data indicating the current state of the tool from system software running on the system controller 138 of the tool 100. For example, the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“In other features, the model is implemented on the tool, and the instructions are configured to adjust the model for any drift in performance of the tool.”. (0021).
This shows receiving the tools current state.
providing the current data as input to the agent to obtain one or more outputs indicating a time to process the candidate set of substrates; and
“The instructions are configured to predict, using the model on the semiconductor processing tool, an optimum time to schedule the additional semiconductor substrates for processing in the semiconductor processing tool.”. (0054).
“The model can then compute and predict the best scheduling parameter values and send them back to the system software.”. (0083).
“For example, the model can receive the number of PMs, recipe times, and WAC times as inputs.”. (0125).
This shows receiving as an input current data to output predicted scheduling.
initiating the set of operations on the candidate set of substrates at the determined time.
“In still other features, a system for optimizing throughput and wait times during processing semiconductor substrates in a semiconductor processing tool, comprises a processor and memory storing instructions for execution by the processor… The instructions are configured to process, in the semiconductor processing tool, the semiconductor substrates according to the optimum route to optimize wait times for the semiconductor substrates along the optimum route. The instructions are configured to process, in the semiconductor processing tool, the additional semiconductor substrates at the optimum time to optimize throughput of the semiconductor processing tool.”. (0054).
“The first robot is configured to schedule the additional semiconductor substrates for processing in the tool according to the predicted time to optimize the throughput of the tool.”. (0053).
This shows initiating operations on substrates to be processed at an optimum determined time.
Regarding Claim 3, RAYMOND teaches
The method of claim 1, further comprising:
receiving a request to initiate a set of operations to be run on a candidate set of substrates at the substrate manufacturing system, wherein the set of operations comprises one or more operations that each have one or more time constraints;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator… to predict the best scheduling parameter values to be used when processing a set of wafers according to the selected wafer-flow… automatically select the scheduling parameter values when a new wafer-flow is to be started.”. (0125).
“…with restrictions on wafer wait times … inaccurate pacing calculations can result in either abnormal wafers due to wafers drying out”. (0080).
This shows receiving operations for the substrates with corresponding time constraints.
obtaining current data relating to a current state of the substrate manufacturing system;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator. For example, the model can receive the number of PMs, recipe times, and WAC times as inputs.”. (0125).
“…data indicating the current state of the tool from system software running on the system controller 138 of the tool 100. For example, the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“In other features, the model is implemented on the tool, and the instructions are configured to adjust the model for any drift in performance of the tool.”. (0021).
This shows receiving the tools current state.
providing the current data as input to the agent to obtain one or more outputs indicating a subset of substrates to process from a candidate set of substrates; and
“At 516, the model receives inputs from the system software of the tool regarding processing to be performed on a set of wafers. At 518, based on the receive inputs, the model provides optimum scheduling parameter values to the system software the tool with which to process the set of wafers.”. (0135).“At 1304, the discrete event simulator 1202 generates a set of all possible next scheduled level operations that can be performed by the tool to transition to the next state.”. (0165).
“At 1310, the model 1204 memorizes the best next operation to schedule for this tool state.”. (0165).
This shows multiple wafers (candidate set) and each best next operation the models select is performed on particular wafers from that set, so the models output directly indicate which subset of the waiting substrate to process is next.
initiating the set of operations on the subset of substrates.
“At 520, based on the received scheduling parameter values, the system software of the tool schedules operations to process the set of wafers.”. (0135).
“The instructions are configured to process, in the semiconductor processing tool, the additional semiconductor substrates at the optimum time to optimize throughput of the semiconductor processing tool.”. (0054).
This shows the systems software executes the scheduled operations on the wafer’s models output selected for processing.
Regarding Claim 4, RAYMOND teaches
The method of claim 1, wherein the agent comprises a deep reinforcement learning model.
“Additionally, the model 1204 includes a deep neural network that is trained using a reinforcement learning method as explained below in further detail with reference to FIG. 13”. (0161).
“For example, the reinforcement learning method used by the model 1204 can include Q-learning. Q-learning is a reinforcement learning method used in machine learning. The goal of Q-learning is to learn a policy that informs an agent what action to take under what circumstances.”. (0162).
This shows the agent comprising a deep reinforcement learning model.
Regarding Claim 5, RAYMOND teaches
The method of claim 1, further comprising:
selecting a new action based on the output data; and initiating the simulation of the new action in the simulation environment.
“At 1314, the discrete event simulator 1202 determines whether the final state is reached. The discrete event simulator 1202 repeats steps 1304-1312 until the final state is reached.”. (0166).
“…the model 1204 memorizes the best next operation to schedule for this tool state.”. (0165).
“…the discrete event simulator 1202 executes the best next operation to simulate the next state.”. (0165).
This shows at each iteration selecting the next best operation based on the newly obtained state and reward i.e. the output data and executes it in the simulator to advance the next state.
Regarding Claim 6, RAYMOND teaches
The method of claim 1, wherein the output data comprises environment state data and reward data, wherein the environment state data comprises at least one of manufacturing equipment properties, manufacturing equipment observations, queue time observations, or capacity observations.
“Executing an action in a specific state provides the agent with a reward (a numerical score).”. (0161).
“…the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“For example, the model can receive the number of PMs, recipe times, and WAC times as inputs. The model can then compute and predict the best scheduling parameter values and send them back to the system software.”. (0125).
“…further optimizes wait times for the additional semiconductor substrates and the throughput of the tool.”. (0048).
This shows per step output of the tool state and a numerical reward. Containing the state content for example tool resources, recipe times, and etc. is at least manufacturing equipment properties, manufacturing equipment observations, queue time observations, or capacity observations.
Regarding Claim 7, RAYMOND teaches
The method of claim 1, wherein the action comprises a decision to at least one of initiate processing of one or more substrates, not initiate processing of the one or more substrates, or initiate processing of a subset of the one or more substrates.
“At 1304, the discrete event simulator 1202 generates a set of all possible next scheduled level operations that can be performed by the tool… At 1308, the model 1204 selects the best next operation to schedule that will provide the best system performance.”. (0165).
“The plurality of processing chambers includes one or more processing chambers for depositing the plurality of layers, and a preprocessing chamber and a post-processing chamber for respectively processing the semiconductor substrates before and after depositing the plurality of layers.”. (0053).
“In other features, the instructions are configured to schedule, using the model, a plurality of operations for processing the one of the semiconductor substrates in the plurality of processing chambers according to the recipe.”. (0026).
This shows an action comprising one of the recited processes.
Claims 8-14 recite sustainably the same limitations as claims 1-7 except these claims are directed to a “device”. Therefore these, claims are rejected for the same rationales as addressed above.
Regarding Claim 15, RAYMOND teaches
A method, comprising:
receiving a request to initiate a set of operations to be run one a candidate set of substrates at a substrate manufacturing system, wherein the set of operations comprises one or more operations that each have one or more time constraints;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator… to predict the best scheduling parameter values to be used when processing a set of wafers according to the selected wafer-flow… automatically select the scheduling parameter values when a new wafer-flow is to be started.”. (0125).
“…with restrictions on wafer wait times … inaccurate pacing calculations can result in either abnormal wafers due to wafers drying out”. (0080).
This shows receiving operations for the substrates with corresponding time constraints.
obtaining current data relating to a current state of the substrate manufacturing system;
“In use, the model can receive input parameters from the system software of a tool (e.g., from the system controller 138 of the tool 100) based on a wafer-flow selected by the operator. For example, the model can receive the number of PMs, recipe times, and WAC times as inputs.”. (0125).
“…data indicating the current state of the tool from system software running on the system controller 138 of the tool 100. For example, the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“In other features, the model is implemented on the tool, and the instructions are configured to adjust the model for any drift in performance of the tool.”. (0021).
This shows receiving the tools current state.
providing the current data as input to the agent to obtain one or more outputs indicating a time to process the candidate set of substrates; and
“The instructions are configured to predict, using the model on the semiconductor processing tool, an optimum time to schedule the additional semiconductor substrates for processing in the semiconductor processing tool.”. (0054).
“The model can then compute and predict the best scheduling parameter values and send them back to the system software.”. (0083).
“For example, the model can receive the number of PMs, recipe times, and WAC times as inputs.”. (0125).
This shows receiving as an input current data to output predicted scheduling.
initiating the set of operations on at least one of the candidate set of substrates at the determined time or the subset of substrates.
“In still other features, a system for optimizing throughput and wait times during processing semiconductor substrates in a semiconductor processing tool, comprises a processor and memory storing instructions for execution by the processor… The instructions are configured to process, in the semiconductor processing tool, the semiconductor substrates according to the optimum route to optimize wait times for the semiconductor substrates along the optimum route. The instructions are configured to process, in the semiconductor processing tool, the additional semiconductor substrates at the optimum time to optimize throughput of the semiconductor processing tool.”. (0054).
“The first robot is configured to schedule the additional semiconductor substrates for processing in the tool according to the predicted time to optimize the throughput of the tool.”. (0053).
This shows initiating operations on substrates to be processed at an optimum determined time.
Regarding Claim 16, RAYMOND teaches
The method of claim 15, wherein training the agent comprises:
initializing the agent to select an action to perform in a simulation environment associated with the substrate manufacturing system;
“The model is initially designed and trained offline using simulated data and then trained online using real tool data for predicting wafer routing path and scheduling. The model improves accuracy of scheduler pacing and achieves highest tool/fleet utilization, shortest wait times, and fastest throughput.”. (Abstract).
“Each of the computing devices can include one or more hardware processors (e.g., CPUs). Each of the computing devices can include memory that stores instructions corresponding to the methods shown and described below with reference to FIGS.”. (0116).
“Additionally, the model 1204 includes a deep neural network that is trained using a reinforcement learning method as explained below in further detail with reference to FIG. 13. Reinforcement learning involves an agent, a set of states S and a set A of actions per state. By performing an action‘a’ from the set A, the agent transitions from state to state. Executing an action in a specific state provides the agent with a reward (a numerical score). The goal of the agent is to maximize its total (future) reward. The agent achieves the goal by adding a maximum reward attainable from future states to the reward for achieving its current state, which effectively influences its current action by the potential future reward. This potential reward is a weighted sum of the expected values of the rewards of all future steps starting from the current state.”. (0161).
“For example, the reinforcement learning method used by the model 1204 can include Q-learning. Q-learning is a reinforcement learning method used in machine learning. The goal of Q-learning is to learn a policy that informs an agent what action to take under what circumstances.”. (0162).
This shows a reinforcement learning model as an “agent” and selecting the next operation to run in its simulator set up and executed via processor and storage mediums.
initiating a simulation of the selected action in the simulation environment;
“The model 1204 processes the JSON file to select the next operation, which is returned to the discrete event simulator 1202 via the API.”. (0160).
“Using the method, a model is developed and trained initially offline using simulation and then online using the actual tool for predicting wafer routing path and scheduling to achieve highest tool/fleet utilization, shortest wait times, and fastest throughput.”. (0089).
“At 1308, the model 1204 selects the best next operation to schedule that will provide the best system performance. At 1310, the model 1204 memorizes the best next operation to schedule for this tool state. At 1312, the discrete event simulator 1202 executes the best next operation to simulate the next state.”. (0165).
This and Figure. 13 shows an initiation of an action in the simulation environment.
in response to pausing the simulation, obtaining, based on an environment state associated with the simulation, output data; and
“Executing an action in a specific state provides the agent with a reward (a numerical score).”. (0161).
“For example, the discrete event simulator 1202 receives data indicating the current state of the tool from system software running on the system controller 138 of the tool 100. For example, the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers”. (0164).
“At 1314, the discrete event simulator 1202 determines whether the final state is reached. The discrete event simulator 1202 repeats steps 1304-1312 until the final state is reached.”. (0166).
This shows an agent obtaining reward and updated tool state information from the simulator after each executed operation.
updating the agent, based on the output data, to be configured to generate one or more dispatching decisions indicative of a time to initiate processing of one or more substrates in the substrate manufacturing system.
“The model 1204 can be trained using the discrete event simulator 1200 and reinforcement learning to self-explore and memorize the best scheduling decisions for a given state of a tool.”. (0158).
“Executing an action in a specific state provides the agent with a reward (a numerical score). The goal of the agent is to maximize its total (future) reward. The agent achieves the goal by adding a maximum reward attainable from future states to the reward for achieving its current state, which effectively influences its current action by the potential future reward.”. (0161).
“At 1310, the model 1204 memorizes the best next operation to schedule for this tool state.”. (0165).
“…predict, using the model, the optimum scheduling parameters for processing the one of the semiconductor substrates in the plurality of processing chambers according to the recipe using data generated by the tool.”. (0020).
This shows based on data updating the agent to generate decisions that indicate a time to process the substrates.
Regarding Claim 17, RAYMOND teaches
The method of claim 15, wherein the agent comprises a deep reinforcement learning model.
“Additionally, the model 1204 includes a deep neural network that is trained using a reinforcement learning method as explained below in further detail with reference to FIG. 13”. (0161).
“For example, the reinforcement learning method used by the model 1204 can include Q-learning. Q-learning is a reinforcement learning method used in machine learning. The goal of Q-learning is to learn a policy that informs an agent what action to take under what circumstances.”. (0162).
This shows the agent comprising a deep reinforcement learning model.
Regarding Claim 18, RAYMOND teaches
The method of claim 15, wherein the output data comprises environment state data and reward data.
“Executing an action in a specific state provides the agent with a reward (a numerical score).”. (0161).
“…the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“For example, the model can receive the number of PMs, recipe times, and WAC times as inputs. The model can then compute and predict the best scheduling parameter values and send them back to the system software.”. (0125).
“…further optimizes wait times for the additional semiconductor substrates and the throughput of the tool.”. (0048).
This shows per step output of the tool state and a numerical reward. Containing the state content for example tool resources, recipe times, and etc.
Regarding Claim 19, RAYMOND teaches
The method of claim 18, wherein the environment state data comprises at least one of manufacturing equipment properties, manufacturing equipment observations, queue time observations, or capacity observations.
“Executing an action in a specific state provides the agent with a reward (a numerical score).”. (0161).
“…the state information of the tool may include status of tool resources (e.g., PMs, airlocks, etc.) in the processing status of the wafers.”. (0164).
“For example, the model can receive the number of PMs, recipe times, and WAC times as inputs. The model can then compute and predict the best scheduling parameter values and send them back to the system software.”. (0125).
“…further optimizes wait times for the additional semiconductor substrates and the throughput of the tool.”. (0048).
This shows per step output of the tool state and a numerical reward. Containing the state content for example tool resources, recipe times, and etc. is at least manufacturing equipment properties, manufacturing equipment observations, queue time observations, or capacity observations.
Regarding Claim 20, RAYMOND teaches
The method of claim 15, wherein the action comprises a decision to at least one of initiate processing of one or more substrates, not initiate processing of the one or more substrates, or initiate processing of a subset of the one or more substrates.
“At 1304, the discrete event simulator 1202 generates a set of all possible next scheduled level operations that can be performed by the tool… At 1308, the model 1204 selects the best next operation to schedule that will provide the best system performance.”. (0165).
“The plurality of processing chambers includes one or more processing chambers for depositing the plurality of layers, and a preprocessing chamber and a post-processing chamber for respectively processing the semiconductor substrates before and after depositing the plurality of layers.”. (0053).
“In other features, the instructions are configured to schedule, using the model, a plurality of operations for processing the one of the semiconductor substrates in the plurality of processing chambers according to the recipe.”. (0026).
This shows an action comprising one of the recited processes.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US 20220026891 A1 teaches performing time constraint management in manufacturing system including industrial engineer, process engineer and system engineer and for manufacturing wafer and electronic device.
US 8014991 B2 teaches manufacturing semiconductor devices, and more specifically to use of first principles simulation in semiconductor manufacturing processes.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NARCISO EDUARDO MONTES whose telephone number is (571)272-5773. The examiner can normally be reached Mon-Fri 8-5.
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, REHANA PERVEEN can be reached at (571) 272-3676. 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.
/N.E.M./Examiner, Art Unit 2189
/REHANA PERVEEN/Supervisory Patent Examiner, Art Unit 2189